del
[rainbowstream.git] / README.rst
1 Rainbow Stream
2 --------------
3
4 .. image:: http://img.shields.io/pypi/dm/rainbowstream.svg?style=flat
5 :target: https://pypi.python.org/pypi/rainbowstream
6
7 .. image:: http://img.shields.io/pypi/v/rainbowstream.svg?style=flat
8 :target: https://pypi.python.org/pypi/rainbowstream
9
10 Terminal-based Twitter Client. Realtime tweetstream, compose, search ,
11 favorite … and much more fun directly from terminal.
12
13 This package is built on the top of `Python Twitter Tool`_ and `Twitter API`_.
14
15 Showcase
16 ----------
17 Screencast: https://www.youtube.com/watch?v=tykCvPMJq8s
18
19 Screenshot:
20
21 .. figure:: https://raw.githubusercontent.com/DTVD/rainbowstream/master/screenshot/RainbowStream.png
22 :alt: rainbowstream
23
24 .. figure:: https://raw.githubusercontent.com/DTVD/rainbowstream/master/screenshot/RainbowStreamIOT.png
25 :alt: rainbowstreamIOT
26
27 Install
28 -------
29
30 You will need Python 2.7+ and pip.
31
32 .. code:: bash
33
34 sudo pip install rainbowstream
35
36 or try with a virtualenv
37
38 .. code:: bash
39
40 sudo pip install virtualenv # skip if you already have virtualenv
41 virtualenv venv
42 source venv/bin/activate # use the brand new virtualenv.
43 pip install rainbowstream
44
45 Usage
46 -----
47
48 The stream
49 ^^^^^^^^^^
50
51 Just type
52
53 .. code:: bash
54
55 rainbow
56
57 and see your stream.
58
59 I shipped a feature which can display **tweet's images directly on terminal**.
60 You can try it with:
61
62 .. code:: bash
63
64 rainbow -iot # Or rainbow --image-on-term
65
66 In the first time you will be asked for authorization of Rainbow Stream
67 app at Twitter. Just click the “Authorize access” button and paste PIN
68 number to the terminal, the rainbow will start.
69
70 The interactive mode
71 ^^^^^^^^^^^^^^^^^^^^
72
73 While your personal stream is continued, you are also ready to tweet,
74 search, reply, retweet… directly from console. Simply type “h” and hit
75 the Enter key to see the help.
76
77 Input is in interactive mode. It means that you can use arrow key to
78 move up and down history, tab-autocomplete or 2 tab to view available
79 suggestion. Input history from previous run is available as well.
80
81 Here is full list of supported command:
82
83 **Explore Commands**
84
85 - ``trend`` will show global trending topics. ``trend US`` will show
86 trends in United States while ``trend JP Tokyo`` will show trends in
87 Tokyo/Japan.
88
89 - ``home`` will show your timeline. ``home 10`` will print exactly 10
90 tweets.
91
92 - ``mentions`` will show mentions timeline. ``mentions 7`` will show 7
93 mention tweets.
94
95 - ``whois @dtvd88`` will show profile of @dtvd88.
96
97 - ``view @mdo`` will show @mdo ’s timeline. ``view @dmo 9`` will print
98 exactly 9 tweets.
99
100 - ``s #noah`` will search the word *‘noah’*. Result will come back with
101 highlight.
102
103 **Tweet Commands**
104
105 - ``t the rainbow is god's promise to noah`` will tweet exactly *‘the
106 rainbow is god’s promise to noah’*.
107
108 - ``rt 12`` will retweet the tweet with *[id=12]*. You can see id of
109 each tweet beside the time.
110
111 - ``allrt 12 20`` will list 20 newest retweets of the tweet with *[id=12]*. If the number of retweets is not specified, 5 newest retweets will be listed instead.
112
113 - ``rep 12 Really`` will reply *‘Really’* to the tweet with *[id=12]*.
114
115 - ``fav 12`` will favorite the tweet with *[id=12]*.
116
117 - ``ufav 12`` will unfavorite tweet with *[id=12]*.
118
119 - ``del 12`` will delete tweet with *[id=12]*.
120
121 - ``show image 12`` will show the image in tweet with *[id=12]* in your
122 OS’s image viewer.
123
124 **Direct Messages Commands**
125
126 - ``inbox`` will show inbox messages. ``inbox 7`` will show newest 7
127 messages.
128
129 - ``sent`` will show sent messages. ``sent 7`` will show newest 7
130 messages.
131
132 - ``mes @dtvd88 hi`` will send a ``hi`` message to @dtvd88.
133
134 - ``trash 5`` will remove message with *[message\_id=5]*
135
136 **Friends and followers Commands**
137
138 - ``ls fl`` will list all your followers (people who are following
139 you).
140
141 - ``ls fr`` will list all your friends (people who you are following).
142
143 - ``fl @dtvd88`` will follow @dtvd88.
144
145 - ``ufl @dtvd88`` will unfollow @dtvd88.
146
147 - ``mute @dtvd88`` will mute @dtvd88.
148
149 - ``unmute @dtvd88`` will unmute @dtvd88.
150
151 - ``muting`` will list muting users.
152
153 - ``block @dtvd88`` will block @dtvd88.
154
155 - ``unblock @dtvd88`` will unblock @dtvd88.
156
157 - ``report @dtvd88`` will report @dtvd88 as a spam account.
158
159 **Switching Stream Commands**
160
161 - ``switch public #AKB48`` will switch current stream to public stream
162 and track keyword ``AKB48``
163
164 - ``switch public #AKB48 -f`` will do exactly as above but will ask you
165 to provide 2 list:
166
167 ``Only nicks`` decide what nicks will be include only.
168
169 ``Ignore nicks``\ decide what nicks will be exclude.
170
171 - ``switch public #AKB48 -d`` will apply filter to *ONLY\_LIST* and
172 *IGNORE\_LIST*. You can setup 2 list above at ``config.py``
173
174 - ``switch mine`` will switch current stream to personal stream. ``-f``
175 and ``-d`` will work as well.
176
177 **Smart shell**
178
179 - Put anything to terminal, the app will try to eval and display result as a python interactive shell.
180
181 + ``142857*2`` or ``101**3`` like a calculator.
182 + Even ``cal`` will show the calendar for current month.
183 + Put ``order_rainbow('anything')`` or ``random_rainbow('wahahaha')`` will make more fun :)
184
185 **Screening Commands**
186
187 - ``h`` will show the help.
188
189 - ``c`` will clear the screen.
190
191 - ``q`` will quit.
192
193
194 For example see the screenshot above.
195
196 Bug and feature requests
197 ------------------------
198
199 Found a bug or a feature request ?
200 Please `create an issue`_ or contact me at `@dtvd88`_
201
202 Contributing
203 ------------
204 I appreciate any help and support. Feel free to `fork`_ and `create a pull request`_.
205 You will be listed as contributor.
206
207 License
208 -------
209
210 Rainbow Stream are released under an MIT License. See LICENSE.txt for
211 details
212
213
214 .. _Python Twitter Tool: http://mike.verdone.ca/twitter/
215 .. _Twitter API: https://dev.twitter.com/docs/api/1.1
216 .. _create an issue: https://github.com/DTVD/rainbowstream/issues/new
217 .. _@dtvd88: https://twitter.com/dtvd88
218 .. _fork: https://github.com/DTVD/rainbowstream/fork
219 .. _create a pull request: https://github.com/DTVD/rainbowstream/compare/