[svn-upgrade] Integrating new upstream version, bti (017)
[debian/bti.git] / bti.1
1 .\"     Title: bti
2 .\"    Author: [see the "AUTHOR" section]
3 .\" Generator: DocBook XSL Stylesheets v1.74.0 <http://docbook.sf.net/>
4 .\"      Date: May 2008
5 .\"    Manual: bti
6 .\"    Source: bti
7 .\"  Language: English
8 .\"
9 .TH "BTI" "1" "May 2008" "bti" "bti"
10 .\" -----------------------------------------------------------------
11 .\" * (re)Define some macros
12 .\" -----------------------------------------------------------------
13 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
14 .\" toupper - uppercase a string (locale-aware)
15 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
16 .de toupper
17 .tr aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ
18 \\$*
19 .tr aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz
20 ..
21 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
22 .\" SH-xref - format a cross-reference to an SH section
23 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
24 .de SH-xref
25 .ie n \{\
26 .\}
27 .toupper \\$*
28 .el \{\
29 \\$*
30 .\}
31 ..
32 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
33 .\" SH - level-one heading that works better for non-TTY output
34 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
35 .de1 SH
36 .\" put an extra blank line of space above the head in non-TTY output
37 .if t \{\
38 .sp 1
39 .\}
40 .sp \\n[PD]u
41 .nr an-level 1
42 .set-an-margin
43 .nr an-prevailing-indent \\n[IN]
44 .fi
45 .in \\n[an-margin]u
46 .ti 0
47 .HTML-TAG ".NH \\n[an-level]"
48 .it 1 an-trap
49 .nr an-no-space-flag 1
50 .nr an-break-flag 1
51 \." make the size of the head bigger
52 .ps +3
53 .ft B
54 .ne (2v + 1u)
55 .ie n \{\
56 .\" if n (TTY output), use uppercase
57 .toupper \\$*
58 .\}
59 .el \{\
60 .nr an-break-flag 0
61 .\" if not n (not TTY), use normal case (not uppercase)
62 \\$1
63 .in \\n[an-margin]u
64 .ti 0
65 .\" if not n (not TTY), put a border/line under subheading
66 .sp -.6
67 \l'\n(.lu'
68 .\}
69 ..
70 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
71 .\" SS - level-two heading that works better for non-TTY output
72 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
73 .de1 SS
74 .sp \\n[PD]u
75 .nr an-level 1
76 .set-an-margin
77 .nr an-prevailing-indent \\n[IN]
78 .fi
79 .in \\n[IN]u
80 .ti \\n[SN]u
81 .it 1 an-trap
82 .nr an-no-space-flag 1
83 .nr an-break-flag 1
84 .ps \\n[PS-SS]u
85 \." make the size of the head bigger
86 .ps +2
87 .ft B
88 .ne (2v + 1u)
89 .if \\n[.$] \&\\$*
90 ..
91 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
92 .\" BB/BE - put background/screen (filled box) around block of text
93 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
94 .de BB
95 .if t \{\
96 .sp -.5
97 .br
98 .in +2n
99 .ll -2n
100 .gcolor red
101 .di BX
102 .\}
103 ..
104 .de EB
105 .if t \{\
106 .if "\\$2"adjust-for-leading-newline" \{\
107 .sp -1
108 .\}
109 .br
110 .di
111 .in
112 .ll
113 .gcolor
114 .nr BW \\n(.lu-\\n(.i
115 .nr BH \\n(dn+.5v
116 .ne \\n(BHu+.5v
117 .ie "\\$2"adjust-for-leading-newline" \{\
118 \M[\\$1]\h'1n'\v'+.5v'\D'P \\n(BWu 0 0 \\n(BHu -\\n(BWu 0 0 -\\n(BHu'\M[]
119 .\}
120 .el \{\
121 \M[\\$1]\h'1n'\v'-.5v'\D'P \\n(BWu 0 0 \\n(BHu -\\n(BWu 0 0 -\\n(BHu'\M[]
122 .\}
123 .in 0
124 .sp -.5v
125 .nf
126 .BX
127 .in
128 .sp .5v
129 .fi
130 .\}
131 ..
132 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
133 .\" BM/EM - put colored marker in margin next to block of text
134 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
135 .de BM
136 .if t \{\
137 .br
138 .ll -2n
139 .gcolor red
140 .di BX
141 .\}
142 ..
143 .de EM
144 .if t \{\
145 .br
146 .di
147 .ll
148 .gcolor
149 .nr BH \\n(dn
150 .ne \\n(BHu
151 \M[\\$1]\D'P -.75n 0 0 \\n(BHu -(\\n[.i]u - \\n(INu - .75n) 0 0 -\\n(BHu'\M[]
152 .in 0
153 .nf
154 .BX
155 .in
156 .fi
157 .\}
158 ..
159 .\" -----------------------------------------------------------------
160 .\" * set default formatting
161 .\" -----------------------------------------------------------------
162 .\" disable hyphenation
163 .nh
164 .\" disable justification (adjust text to left margin only)
165 .ad l
166 .\" -----------------------------------------------------------------
167 .\" * MAIN CONTENT STARTS HERE *
168 .\" -----------------------------------------------------------------
169 .SH "Name"
170 bti \- send a tweet to twitter\&.com or identi\&.ca from the command line
171 .SH "Synopsis"
172 .fam C
173 .HP \w'\fBbti\fR\ 'u
174 \fBbti\fR [\fB\-\-account\ account\fR] [\fB\-\-password\ password\fR] [\fB\-\-action\ action\fR] [\fB\-\-user\ screenname\fR] [\fB\-\-host\ HOST_NAME\fR] [\fB\-\-proxy\ PROXY:PORT\fR] [\fB\-\-logfile\ LOGFILE\fR] [\fB\-\-page\ PAGENUMBER\fR] [\fB\-\-bash\fR] [\fB\-\-shrink\-urls\fR] [\fB\-\-debug\fR] [\fB\-\-dry\-run\fR] [\fB\-\-version\fR] [\fB\-\-help\fR]
175 .fam
176 .SH "DESCRIPTION"
177 .PP
178 bti sends a tweet message to twitter\&.com or identi\&.ca\&.
179 .SH "OPTIONS"
180 .PP
181 \fB\-\-account account\fR
182 .RS 4
183 Specify the twitter\&.com or identi\&.ca account name\&.
184 .RE
185 .PP
186 \fB\-\-password password\fR
187 .RS 4
188 Specify the password of your twitter\&.com or identi\&.ca account\&.
189 .RE
190 .PP
191 \fB\-\-action action\fR
192 .RS 4
193 Specify the action which you want to perform\&. Valid options are "update" to send a message, "friends" to see your friends timeline, "public" to track public timeline, "replies" to see replies to your messages and "user" to see a specific user\'s timeline\&.
194 .RE
195 .PP
196 \fB\-\-user screenname\fR
197 .RS 4
198 Specify the user you want to see his/her messages while the action is "user"\&.
199 .RE
200 .PP
201 \fB\-\-host HOST_NAME\fR
202 .RS 4
203 Specify the host which you want to send your message to\&. Valid options are "twitter" to send to twitter\&.com and "identica" to send to identi\&.ca\&.
204 .sp
205 If no host is specified, the default is to send to twitter\&.com\&.
206 .RE
207 .PP
208 \fB\-\-proxy PROXY:PORT\fR
209 .RS 4
210 Specify a http proxy value\&. This is not a required option, and only needed by systems that are behind a http proxy\&.
211 .sp
212 If \-\-proxy is not specified but the environment variable \'http_proxy\' is set the latter will be used\&.
213 .RE
214 .PP
215 \fB\-\-logfile LOGFILE\fR
216 .RS 4
217 Specify a logfile for bti to write status messages to\&. LOGFILE is in relation to the user\'s home directory, not an absolute path to a file\&.
218 .RE
219 .PP
220 \fB\-\-shrink\-urls\fR
221 .RS 4
222 Scans the tweet text for valid URL patterns and passes each through the supplied bti\-shrink\-urls script\&. The script will pass the URL to a web service that shrinks the URLs, making it more suitable for micro\-blogging\&.
223 .sp
224 Currently, only http://2tu\&.us/ is used as a URL shrinking service\&.
225 .RE
226 .PP
227 \fB\-\-debug\fR
228 .RS 4
229 Print a whole bunch of debugging messages to stdout\&.
230 .RE
231 .PP
232 \fB\-\-page PAGENUMBER\fR
233 .RS 4
234 When the action is to retrieve updates, it usually retrieves only one page\&. If this option is used, the page number can be specified\&.
235 .RE
236 .PP
237 \fB\-\-dry\-run\fR
238 .RS 4
239 Performs all steps that would normally be done for a given action, but will not connect to the service to post or retrieve data\&.
240 .RE
241 .PP
242 \fB\-\-bash\fR
243 .RS 4
244 Add the working directory and a \'$\' in the tweet message to help specify it is coming from a command line\&. Don\'t put the working directory and the \'$\' in the tweet message\&.
245 .sp
246 This mode also does not report back any errors that might have happened when sending the message, and it sends it in the background, returning immediately, allowing the process to continue on\&.
247 .RE
248 .PP
249 \fB\-\-version\fR
250 .RS 4
251 Print version number\&.
252 .RE
253 .PP
254 \fB\-\-help\fR
255 .RS 4
256 Print help text\&.
257 .RE
258 .SH "DESCRIPTION"
259 .PP
260 bti provides an easy way to send tweet messages direct from the command line or any script\&. It reads the message on standard input and uses the account and password settings either from the command line options, or from a config file, to send the message out\&.
261 .PP
262 It\'s primary focus is to allow you to log everything that you type into a bash shell, in a crazy, "this is what I\'m doing right now!" type of way, letting the world follow along with you constant moving between directories and refreshing your email queue to see if there\'s anything interesting going on\&.
263 .PP
264 To hook bti up to your bash shell, export the following variable:
265 .PP
266
267 \FC PROMPT_COMMAND=\'history 1 | sed \-e "s/^\es*[0\-9]*\es*//" | bti \-\-bash\'\F[]
268 .PP
269 This example assumes that you have the
270 \FC~/\&.bti\F[]
271 set up with your account and password information already in it, otherwise you can specify them as an option\&.
272 .SH "CONFIGURATION"
273 .PP
274 The account and password can be stored in a configuration file in the users home directory in a file named
275 \FC\&.bti\F[]
276 The structure of this file is as follows:
277 .PP
278 \fBaccount\fR
279 .RS 4
280 The twitter\&.com or identi\&.ca account name you wish to use to send this message with\&.
281 .RE
282 .PP
283 \fBpassword\fR
284 .RS 4
285 The twitter\&.com or identi\&.ca password for the account you wish to use to send this message with\&.
286 .RE
287 .PP
288 \fB\-\-action action\fR
289 .RS 4
290 Specify the action which you want to perform\&. Valid options are "update" to send a message, "friends" to see your friends timeline, "public" to track public timeline, "replies" to see replies to your messages and "user" to see a specific user\'s timeline\&.
291 .RE
292 .PP
293 \fB\-\-user screenname\fR
294 .RS 4
295 Specify the user you want to see his/her messages while the action is "user"\&.
296 .RE
297 .PP
298 \fBhost\fR
299 .RS 4
300 The host you want to use to send the message to\&. Valid options are either "twitter" or "identica" to send to twitter\&.com or identi\&.ca respectively\&.
301 .RE
302 .PP
303 \fBproxy\fR
304 .RS 4
305 The http proxy needed to send data out to the Internet\&.
306 .RE
307 .PP
308 \fBlogfile\fR
309 .RS 4
310 The logfile name for bti to write what happened to\&. This file is relative to the user\'s home directory\&. If this file is not specified here or on the command line, no logging will be written to the disk\&.
311 .RE
312 .PP
313 \fBshrink\-urls\fR
314 .RS 4
315 Setting this variable to \'true\' or \'yes\' will enable the URL shrinking feature\&. This is equivalent to using the \-\-shrink\-urls option\&.
316 .RE
317 .PP
318 There is an example config file called
319 \FCbti\&.example\F[]
320 in the source tree that shows the structure of the file if you need an example to work off of\&.
321 .PP
322 Configuration options have the following priority:
323 .PP
324 .RS 4
325 command line option
326 .RE
327 .PP
328 .RS 4
329 config file option
330 .RE
331 .PP
332 .RS 4
333 environment variables
334 .RE
335 .PP
336 For example, command line options always override any config file option, or any environment variables\&.
337 .SH "AUTHOR"
338 .PP
339 Written by Greg Kroah\-Hartman
340 \FCgreg@kroah\&.com\F[]\&.