1MCABBER(1)                                                          MCABBER(1)
2
3
4

NAME

6       mcabber - a simple Jabber console client
7

SYNOPSIS

9       mcabber [ -h | -V | -f configfile ]
10
11

DESCRIPTION

13       mcabber(1) is a small Jabber console client. For now it needs a
14       configuration file to start, so please copy the sample mcabberrc file
15       and adapt your connection settings.
16
17       You also need to have an existing Jabber account to use this software,
18       as it cannot (un)register accounts yet.
19
20       Here are some of the features of mcabber:
21
22
23       ·    SSL support.
24
25       ·    MUC support (Multi-User Chat).
26
27       ·    PGP support
28
29       ·    Chat States support (typing notifications)
30
31       ·    History logging: If enabled (see the CONFIGURATION FILE section),
32           mcabber can save discussions to history log files.
33
34       ·    Commands completion: If possible, mcabber will try to complete
35           your command line if you hit the Tab key.
36
37       ·    Input line history: Any message or command entered is in the input
38           line history and can be reused easily.
39
40       ·    External actions: Some events (like receiving a message) can
41           trigger an external action such as a shell script if you enable it
42           in your configuration file. A sample events script ("eventcmd") is
43           provided with mcabber source code, in the contrib directory.
44

OPTIONS

46       --help, -h
47           Quick help usage message
48
49       -f configfile
50           Use configuration file configfile
51

WINDOWS/PANES

53       The mcabber(1) screen is divided into 4 regions. The roster, alias
54       buddylist, is on the left. The chat window, or chat buffer, is on the
55       right. The input line lies at the bottom of the screen, under a small
56       log window.
57
58       Two status lines surround the log window. The bottom status line is the
59       "main status line" and reflects mcabber general status. The other line
60       is the "chat status line" and shows the status of the currently
61       selected buddy.
62
63       To display buddies chat buffers, you will have to enter chat mode. You
64       can enter chat mode by pressing enter, and leave chat mode with the ESC
65       key. Simply sending a message will also enable chat mode.
66
67       There are several advantages to the two-mode implementation: first, it
68       allows accurate "unread" message functionality, as described in the
69       next section; without this, merely scrolling to a specific buddy will
70       "read" the new messages of all buddies in-between. Second, it allows
71       quickly hiding the conversation with a single keystroke. Third, it
72       allows jumping between the few buddies with whom you are conversing
73       with the /roster alternate command described in another section,
74       without having to manually scroll back and forth.
75
76

KEYS

78       Text typing occurs in the input line; basic operations are supported
79       (left arrow, right arrow, home/end keys, insert, delete, backspace...).
80
81       PageUp and PageDown keys are used to move in the roster.
82
83       Up and Down arrow keys can be used to move in the input line history;
84       they jump to the previous/next line from the history beginning with the
85       same string (from first column to the cursor column).
86
87       To send a message, move to the choosen buddy in the buddylist, type
88       your message and hit enter. If the line begins with a slash, this will
89       be interpreted as a command (see the COMMAND section below). Hit escape
90       to leave the chat mode.
91
92       Here is a quick description of the key bindings:
93
94
95       Esc             Disable chat mode
96
97       Ctrl-d          Send/terminate a
98                       multi-line message
99
100       Ctrl-p/Ctrl-n   Scroll up/down half a
101                       screen in the buffer
102                       window (chat mode)
103
104       Ctrl-Left       Move the cursor back to
105                       the start of the current
106                       or previous word
107
108       Ctrl-Right      Move the cursor forward to
109                       the end of the current or
110                       next word
111
112       Ctrl-u          Delete from beginning of
113                       the line to the cursor
114
115       Ctrl-k          Delete from the cursor to
116                       the end of line
117
118       Ctrl-w          Backward kill word
119
120       Ctrl-t          Transpose chars
121
122       Ctrl-o          Accept line and put the
123                       next history line in the
124                       input line
125                       (accept-line-and-down-history)
126
127       Ctrl-a          Go to the beginning of the
128                       input line
129
130
131
132
133       Ctrl-e          Go to the end of the input
134                       line
135
136       Ctrl-l          Force a refresh
137
138       Up/Down         Move in the input line history
139
140       PgUp/PgDown     Move inside the roster
141                       (buddylist)
142
143       Tab             Complete current word, in the
144                       input line
145
146       Ctrl-g          Cancel completion
147
148       Ctrl-c          Abort multi-line messages and
149                       completions
150
151
152       Additional key bindings may be specified using the /bind command
153       described in the COMMANDS section.
154
155

MCABBER'S ROSTER

157       The first listed resource on the roster is [status], which keeps a log
158       of everything that appears in the short log window below the main chat
159       area. While the log window was designed for showing the latest few
160       elements, the dedicated [status] buffer allows more comfortable viewing
161       of the log, as well as scrolling it in a standard manner.
162
163       Group names are displayed above the resources that are within them, and
164       are indicated by --- to the left of the name.
165
166       For every real Jabber resource, the roster displays four pieces of
167       information: the resource's name or alias, its online status, its
168       authorization status, and whether there are unread messages from the
169       resource waiting for you.
170
171       The online status is one of the following:
172
173
174       o   online
175
176       C   a conference room in which
177           you are participating
178
179       f   free for chat
180
181       a   away
182
183       n   not available (labeled
184           extended away in some
185           clients)
186
187       d   do not disturb
188
189       i   invisible (displayed only
190           for your resource)
191
192       _   offline (or invisible to
193           you)
194
195
196
197
198
199       ?   unknown, usually meaning
200           you are not authorized to
201           see this resource's status
202
203       x   a conference room in which
204           you are not participating
205
206
207       The authorization status indicates whether a resource is authorized to
208       receive your online status updates, and is displayed by the brackets
209       surrounding the resource's online status. Square brackets, like [o],
210       indicate that this resource is authorized to receive your status. Curly
211       braces, like {o}, indicate that they are not authorized to receive your
212       status.
213
214       When there are unread messages from the resource which you have not
215       looked at, a hash mark (#) appears in the leftmost section of the
216       roster for that resource. The hash mark disappears once you view that
217       resource's message log.
218
219       Examples:
220
221
222        --- Buds    This is a group named Buds
223
224       #[o] John    John is online, can see
225                    your status, and sent you
226                    a message that you did not
227                    read yet
228
229        {?} Sally   Neither you nor Sally have
230                    authorized each other to
231                    see your online status
232
233        {a} Jane    Jane is away, but she
234                    cannot see your online
235                    status
236
237       #[C] x@y.c   You are participating in
238                    x@y.c conference room, and
239                    there are unread messages
240
241
242

COMMANDS

244       Please refer to the online help (command /help), it is probably more
245       up-to-date than this manpage. Furthermore, help files have been
246       translated into several languages. You will find an overview of the
247       mcabber commands in this manual.
248
249
251       /alias [name [= command line]]
252           Add "name" as an alias for "command line".  Aliases are expanded
253           only once, thus they can not be chained.  "/alias name" displays
254           the value associated with the "name" alias; "/alias name =" unsets
255           the "name" alias.  "/alias" displays a list of the existing
256           aliases. Example: "/alias away = status away".
257
258       /bind [keycode [= command line]]
259           Bind a command line to the key with the "keycode" code number.
260           Keycodes of unused keys are displayed by mcabber in the log window
261           when pressing the key, for example "Unknown key=265".  "/bind
262           keycode" displays the command line bound to the given keycode;
263           "/bind keycode =" unbinds the given keycode.  "/bind" displays a
264           list of the bound keycodes.  Note: aliases can be used in key
265           bindings.  Example: "/bind 265 = status online" (265 is F1 for me,
266           but it may depend on your ncurses installation).
267
268       /buffer clear|close|close_all|purge, /buffer
269       top|bottom|date|%|search_backward|search_forward, /buffer
270       scroll_lock|scroll_unlock|scroll_toggle
271           The buffer command manipulates the current buddy's buffer (chat
272           window).
273
274           clear                  clear the current buddy
275                                  chat window
276           close                  empty all contents of the
277                                  buffer and close the
278                                  current buddy chat window
279           close_all              empty all contents of the
280                                  chat buffers and close the
281                                  chat windows
282           purge                  clear the current buddy
283                                  chat window and empty all
284                                  contents of the chat
285                                  buffer
286           top                    jump to the top of the
287                                  current buddy chat buffer
288           bottom                 jump to the bottom of the
289                                  current buddy chat buffer
290           up [n]                 scroll the buffer up n
291                                  lines (default: half a
292                                  screen)
293           down [n]               scroll the buffer down n
294                                  lines (default: half a
295                                  screen)
296           date date              jump to the first line
297                                  after the specified date
298                                  in the chat buffer (date
299                                  format:
300                                  "YYYY-mm-dd[THH:MM:SS]",
301                                  "-" and ":" are optional)
302           % n                    jump to position %n of the
303                                  buddy chat buffer
304           search_backward text   search for "text" in the
305                                  current buddy chat buffer
306           search_forward text    search for "text" in the
307                                  current buddy chat buffer
308           scroll_lock            lock buffer scrolling
309           scroll_unlock          unlock buffer scrolling
310           scroll_toggle          toggle buffer scrolling
311                                  (lock/unlock)
312
313
314       /clear
315           The clear command is actually an alias for "/buffer clear".
316
317       /help [command]
318           Display generic help or help about a specific mcabber command.
319
320       /quit
321           Disconnect and leave mcabber(1).
322
323       /set option[=value]
324           Display or set an option value.
325
326       /source [file]
327           Read a configuration file.
328
329       /version
330           Display mcabber version
331
333       /connect
334           Establish connection to the Jabber server.
335
336       /disconnect
337           Terminate connection to the Jabber server. Note: the roster is only
338           available when the connection to the server is active, so the
339           buddylist is empty when disconnected.
340
341       /event #n|* accept|ignore|reject, /event list
342           Tell mcabber what to do about a pending event. If the first
343           parameter is "*", the command will apply to all queued events.
344
345           accept   accept the event #n
346           ignore   remove the event #n from
347                    the list
348           reject   reject the event #n
349           list     list all pending events
350
351
352       /rawxml send string
353
354           send string: send string (raw XML format) to the Jabber server. No
355           check is done on the string provided. BEWARE! Use this only if you
356           know what you are doing, or you could terminate the connection.
357
359       /add [jid [nickname]]
360           Add the "jid" Jabber user to our roster (default group), and send a
361           notification request to this buddy. If no nickname is specified,
362           the jid is used. If no jid (or an empty string "") is provided or
363           if jid is ".", the current buddy is used.
364
365       /authorization allow|cancel|request|request_unsubscribe [jid]
366           Manage the presence subscriptions. If no jid is provided, the
367           current buddy is used.
368
369           allow                 allow the buddy to receive
370                                 your presence updates
371           cancel                cancel the buddy'
372                                 subscription to your
373                                 presence updates
374           request               request a subscription to
375                                 the buddy's presence
376                                 updates
377           request_unsubscribe   request unsubscription
378                                 from the buddy's presence
379                                 updates
380
381
382       /del
383           Delete the current buddy from our roster, unsubscribe from its
384           presence notification and unsubscribe it from ours.
385
386       /group fold|unfold|toggle
387           The group command changes the current group display.
388
389           fold     fold (shrink) the current
390                    group tree in the roster
391           unfold   unfold (expand) the
392                    current group tree in the
393                    roster
394
395
396
397           toggle   toggle the state
398                    (fold/unfold) of the
399                    current tree
400
401
402       /info
403           Display info on the selected entry (user, agent, group...). For
404           users, resources are displayed with the status, priority and status
405           message (if available) of each resource.
406
407       /move [groupname]
408           Move the current buddy to the requested group. If no group is
409           specified, then the buddy is moved to the default group. If the
410           group groupname doesn't exist, it is created. Tip: if the chatmode
411           is enabled, you can use "/roster alternate" to jump to the moved
412           buddy.
413
414       /msay begin|verbatim|send|send_to|toggle|toggle_verbatim|abort
415           Send a multi-line message. To write a single message with several
416           lines, the multi-line mode should be used. In multi-line mode, each
417           line (except command lines) typed in the input line will be added
418           to the multi-line message. Once the message is finished, it can be
419           sent to the current selected buddy with the "/msay send" command
420           (or Ctrl-d). The begin subcommand enables multi-line mode. Note
421           that it allows a message subject to be specified. The verbatim
422           multi-line mode disables commands, so that it is possible to enter
423           lines starting with a slash. Only the "/msay" command (with send or
424           abort parameters) can be used to exit verbatim mode. The toggle and
425           toggle_verbatim subcommands can be bound to a key to use the
426           multi-line mode quickly (for example, "bind M109 = msay toggle" to
427           switch using the Meta-m combination).
428
429           begin [subject]   enter multi-line mode
430           verbatim          enter verbatim multi-line
431                             mode
432           send              send the current
433                             multi-line message to the
434                             currently selected buddy
435           send_to jid       send the current
436                             multi-line message to
437                             "jid"
438           toggle            switch to/from multi-line
439                             mode (begin/send)
440           toggle_verbatim   same with verbatim
441                             multi-line mode
442           abort             leave multi-line mode
443                             without sending the
444                             message
445
446
447       /pgp disable|enable|force|info [jid], /pgp setkey [jid [key]]
448           Manipulate PGP settings for the specified jid (by default the
449           currently selected contact). Please note that PGP encryption won't
450           be used if no remote PGP support is detected, even if PGP is
451           enabled with this command.
452
453           disable [jid]        disable PGP encryption for
454                                jid (or the currently
455                                selected contact)
456           enable [jid]         enable PGP encryption for
457                                jid (or the currently
458                                selected contact)
459
460
461
462
463           force [jid]          enforce PGP encryption,
464                                even for offline messages,
465                                and always assume the
466                                recipient has PGP support
467           info [jid]           show current PGP settings
468                                for the contact
469           setkey [jid [key]]   set the PGP key to be used
470                                to encrypt message for
471                                this contact. If no key is
472                                provided, the current key
473                                is erased. You can use the
474                                shortcut-jid "." for the
475                                currently selected
476                                contact.
477
478
479       /rename name
480           Rename current buddy or group to the given name. Please note that a
481           group name change is only done when the server's acknowledgment is
482           received, so a slight delay can be noticed.
483
484       /request last|time|vcard|version [jid]
485           Send a "IQ" query to the current buddy, or to the specified Jabber
486           user. If the resource is not provided with the jid, mcabber will
487           send the query to all known resources for this user.
488
489       /room join|leave|names|nick|privmsg|remove|topic|unlock|destroy, /room
490       invite|kick|ban|role|affil, /room bookmark [add|del]
491       [-autojoin|+autojoin]
492           The room command handles Multi-User Chat room actions.
493
494           join [room [nick [pass]]]    join "room", using "nick"
495                                        as nickname. If no
496                                        nickname is provided (or
497                                        if it is an empty string),
498                                        the "nickname" option
499                                        value is used (see sample
500                                        configuration file). If
501                                        the currently selected
502                                        entry is correctly
503                                        recognized as a room by
504                                        mcabber, the shortcut "."
505                                        can be used instead of the
506                                        full room id. A password
507                                        can be provided to enter
508                                        protected rooms. If your
509                                        nickname contains space
510                                        characters, use quotes.
511           whois nick                   display MUC information
512                                        about "nick"
513           ban jid [reason]             ban jid from the current
514                                        room
515           invite jid [reason]          invite jid to the current
516                                        room
517           kick nick [reason]           kick "nick" from the
518                                        current room
519           role jid role [reason]       change jid's role (role
520                                        can be "none", "visitor",
521                                        "participant",
522                                        "moderator")
523
524
525
526
527
528
529           affil jid affil [reason]     change jid's affiliation
530                                        (affil can be "none",
531                                        "member", "admin",
532                                        "owner") bookmark
533                                        add/update/remove a room
534                                        bookmark, set/unset
535                                        autojoin
536           leave [message]              leave the current room
537           names                        display the members of the
538           [--detail|--short|--quiet]   current room
539           nick nick                    change your nickname in
540                                        the current room
541           privmsg nick msg             send private message "msg"
542                                        to "nick"
543           remove                       remove the current room
544                                        from the roster (you must
545                                        have left this room
546                                        before)
547           topic                        set topic for current room
548           unlock                       unlock current room (if
549                                        you are the owner)
550           destroy [reason]             destroy the current room
551                                        (use with care!)
552
553
554       /roster bottom|top|up|down|group_prev|group_next, /roster
555       alternate|unread_first|unread_next, /roster search bud, /roster
556       hide_offline|show_offline|toggle_offline, /roster
557       item_lock|item_unlock, /roster hide|show|toggle, /roster note [-|text]
558           The roster command manipulates the roster/buddylist. Here are the
559           available parameters:
560
561           bottom            jump to the bottom of the
562                             roster
563           search bud        search for a buddy with a
564                             name or jid containing
565                             "bud" (only in the
566                             displayed buddylist)
567           hide_offline      hide offline buddies
568           show_offline      show offline buddies
569           toggle_offline    toggle display of offline
570                             buddies
571           item_lock jid     lock the roster item so it
572                             remains visible regardless
573                             of its status
574           item_unlock jid   undo the effects of
575                             item_lock
576           hide              hide roster (full-width
577                             chat window)
578           show              show roster
579           toggle            toggle roster visibility
580           note [text]       display or set an
581                             annotation (if text is
582                             "-", the annotation is
583                             deleted). In the "status"
584                             buffer, it will display
585                             all annotations.
586           top               jump to the top of the
587                             roster
588           up                move up in the roster
589           down              move down in the roster
590           group_prev        jump to the previous group
591                             in the roster
592           group_next        jump to the next group in
593                             the roster
594
595           alternate         jump to alternate buddy.
596                             The "alternate" buddy is
597                             the last buddy left while
598                             being in chat mode (this
599                             command is thus especially
600                             useful after commands like
601                             "/roster unread_first")
602           unread_first      jump to the first unread
603                             message
604           unread_next       jump to the next unread
605                             message
606
607
608       /say text
609           Send the "text" message to the currently selected buddy. Can be
610           useful if you want to send a message beginning with a slash, for
611           example.
612
613       /say_to jid text
614           Send the "text" message to the specified jid. Please note that this
615           command doesn't set the default resource for a contact, so if you
616           want to send several messages to a specific resource you will have
617           to use "/say_to" for each message.
618
619       /status [online|avail|invisible|free|dnd|notavail|away
620       [-|StatusMessage]]
621           Show or set the current status.  If no status is specified, display
622           the current status.  If a status message is specified, it will
623           overrride the message* variables (these variables can be set in the
624           configuration file). If no relevant message* variable is set and no
625           status message provided, the current status message is kept. If
626           StatusMessage is "-", the current status message is cleared.
627
628       /status_to jid online|avail|invisible|free|dnd|notavail|away
629       [StatusMessage]
630           Send the requested status to the specified Jabber user.  If the
631           specified jid is ".", the current buddy is used.  Note: this status
632           will be overridden by subsequent "/status" commands. If you are
633           using the auto-away feature, the status will overridden too. Note:
634           The jid can include a resource (i.e. user@server/resource).
635

CONFIGURATION FILE

637       See the provided sample configuration file, which should be
638       self-documenting.
639
640

FILES

642       The following files can be used by mcabber(1):
643
644
645           $HOME/.mcabber/mcabberrc    Default configuration file
646           $HOME/.mcabberrc            Configuration file used if no other has been found
647           $HOME/.mcabber/histo/       Default directory for storing chat history files, if enabled
648

BUGS

650       Certainly. Please tell me if you find one! :-)
651
652

AUTHOR

654       Written by Mikael BERTHE[1]. Originally based on Cabber[2], please
655       consult the AUTHORS file for details.
656
657

RESOURCES

659       Main web site[3]
660
661

COPYING

663       Copyright (C) 2005, 2006, 2007, 2008 Mikael Berthe. Some portions are
664       Copyright (C) 2002-2004 cabber@ajmacias.com[4].
665
666       Free use of this software is granted under the terms of the GNU General
667       Public License (GPL).
668
669

REFERENCES

671        1. Mikael BERTHE
672           mailto:mcabber@lilotux.net
673
674        2. Cabber
675           http://cabber.sourceforge.net
676
677        3. Main web site
678           http://www.lilotux.net/~mikael/mcabber/
679
680        4. cabber@ajmacias.com
681           mailto:cabber@ajmacias.com
682
683
684
685                                  11/03/2007                        MCABBER(1)
Impressum