1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" |
1 <!DOCTYPE html> |
2 "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> |
2 <html lang="en"> |
3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> |
|
4 <head> |
3 <head> |
5 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> |
4 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
6 <meta name="generator" content="AsciiDoc 8.5.2" /> |
5 <meta name="generator" content="AsciiDoc 8.6.9"> |
7 <title>MCABBER(1)</title> |
6 <title>MCABBER(1)</title> |
8 <style type="text/css"> |
7 <style type="text/css"> |
9 /* Debug borders */ |
8 /* Shared CSS for AsciiDoc xhtml11 and html5 backends */ |
10 p, li, dt, dd, div, pre, h1, h2, h3, h4, h5, h6 { |
9 |
11 /* |
10 /* Default font. */ |
12 border: 1px solid red; |
11 body { |
13 */ |
12 font-family: Georgia,serif; |
|
13 } |
|
14 |
|
15 /* Title font. */ |
|
16 h1, h2, h3, h4, h5, h6, |
|
17 div.title, caption.title, |
|
18 thead, p.table.header, |
|
19 #toctitle, |
|
20 #author, #revnumber, #revdate, #revremark, |
|
21 #footer { |
|
22 font-family: Arial,Helvetica,sans-serif; |
14 } |
23 } |
15 |
24 |
16 body { |
25 body { |
17 margin: 1em 5% 1em 5%; |
26 margin: 1em 5% 1em 5%; |
18 } |
27 } |
75 } |
81 } |
76 |
82 |
77 ul, ol, li > p { |
83 ul, ol, li > p { |
78 margin-top: 0; |
84 margin-top: 0; |
79 } |
85 } |
80 |
86 ul > li { color: #aaa; } |
81 pre { |
87 ul > li > * { color: black; } |
|
88 |
|
89 .monospaced, code, pre { |
|
90 font-family: "Courier New", Courier, monospace; |
|
91 font-size: inherit; |
|
92 color: navy; |
82 padding: 0; |
93 padding: 0; |
83 margin: 0; |
94 margin: 0; |
84 } |
95 } |
85 |
96 pre { |
86 span#author { |
97 white-space: pre-wrap; |
|
98 } |
|
99 |
|
100 #author { |
87 color: #527bbd; |
101 color: #527bbd; |
88 font-family: sans-serif; |
|
89 font-weight: bold; |
102 font-weight: bold; |
90 font-size: 1.1em; |
103 font-size: 1.1em; |
91 } |
104 } |
92 span#email { |
105 #email { |
93 } |
106 } |
94 span#revnumber, span#revdate, span#revremark { |
107 #revnumber, #revdate, #revremark { |
95 font-family: sans-serif; |
108 } |
96 } |
109 |
97 |
110 #footer { |
98 div#footer { |
|
99 font-family: sans-serif; |
|
100 font-size: small; |
111 font-size: small; |
101 border-top: 2px solid silver; |
112 border-top: 2px solid silver; |
102 padding-top: 0.5em; |
113 padding-top: 0.5em; |
103 margin-top: 4.0em; |
114 margin-top: 4.0em; |
104 } |
115 } |
105 div#footer-text { |
116 #footer-text { |
106 float: left; |
117 float: left; |
107 padding-bottom: 0.5em; |
118 padding-bottom: 0.5em; |
108 } |
119 } |
109 div#footer-badges { |
120 #footer-badges { |
110 float: right; |
121 float: right; |
111 padding-bottom: 0.5em; |
122 padding-bottom: 0.5em; |
112 } |
123 } |
113 |
124 |
114 div#preamble { |
125 #preamble { |
115 margin-top: 1.5em; |
126 margin-top: 1.5em; |
116 margin-bottom: 1.5em; |
127 margin-bottom: 1.5em; |
117 } |
128 } |
118 div.tableblock, div.imageblock, div.exampleblock, div.verseblock, |
129 div.imageblock, div.exampleblock, div.verseblock, |
119 div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock, |
130 div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock, |
120 div.admonitionblock { |
131 div.admonitionblock { |
121 margin-top: 1.0em; |
132 margin-top: 1.0em; |
122 margin-bottom: 1.5em; |
133 margin-bottom: 1.5em; |
123 } |
134 } |
371 } |
368 } |
372 div.toclevel4 { |
369 div.toclevel4 { |
373 margin-left: 6em; |
370 margin-left: 6em; |
374 font-size: 0.9em; |
371 font-size: 0.9em; |
375 } |
372 } |
376 /* Overrides for manpage documents */ |
373 |
377 h1 { |
374 span.aqua { color: aqua; } |
|
375 span.black { color: black; } |
|
376 span.blue { color: blue; } |
|
377 span.fuchsia { color: fuchsia; } |
|
378 span.gray { color: gray; } |
|
379 span.green { color: green; } |
|
380 span.lime { color: lime; } |
|
381 span.maroon { color: maroon; } |
|
382 span.navy { color: navy; } |
|
383 span.olive { color: olive; } |
|
384 span.purple { color: purple; } |
|
385 span.red { color: red; } |
|
386 span.silver { color: silver; } |
|
387 span.teal { color: teal; } |
|
388 span.white { color: white; } |
|
389 span.yellow { color: yellow; } |
|
390 |
|
391 span.aqua-background { background: aqua; } |
|
392 span.black-background { background: black; } |
|
393 span.blue-background { background: blue; } |
|
394 span.fuchsia-background { background: fuchsia; } |
|
395 span.gray-background { background: gray; } |
|
396 span.green-background { background: green; } |
|
397 span.lime-background { background: lime; } |
|
398 span.maroon-background { background: maroon; } |
|
399 span.navy-background { background: navy; } |
|
400 span.olive-background { background: olive; } |
|
401 span.purple-background { background: purple; } |
|
402 span.red-background { background: red; } |
|
403 span.silver-background { background: silver; } |
|
404 span.teal-background { background: teal; } |
|
405 span.white-background { background: white; } |
|
406 span.yellow-background { background: yellow; } |
|
407 |
|
408 span.big { font-size: 2em; } |
|
409 span.small { font-size: 0.6em; } |
|
410 |
|
411 span.underline { text-decoration: underline; } |
|
412 span.overline { text-decoration: overline; } |
|
413 span.line-through { text-decoration: line-through; } |
|
414 |
|
415 div.unbreakable { page-break-inside: avoid; } |
|
416 |
|
417 |
|
418 /* |
|
419 * xhtml11 specific |
|
420 * |
|
421 * */ |
|
422 |
|
423 div.tableblock { |
|
424 margin-top: 1.0em; |
|
425 margin-bottom: 1.5em; |
|
426 } |
|
427 div.tableblock > table { |
|
428 border: 3px solid #527bbd; |
|
429 } |
|
430 thead, p.table.header { |
|
431 font-weight: bold; |
|
432 color: #527bbd; |
|
433 } |
|
434 p.table { |
|
435 margin-top: 0; |
|
436 } |
|
437 /* Because the table frame attribute is overriden by CSS in most browsers. */ |
|
438 div.tableblock > table[frame="void"] { |
|
439 border-style: none; |
|
440 } |
|
441 div.tableblock > table[frame="hsides"] { |
|
442 border-left-style: none; |
|
443 border-right-style: none; |
|
444 } |
|
445 div.tableblock > table[frame="vsides"] { |
|
446 border-top-style: none; |
|
447 border-bottom-style: none; |
|
448 } |
|
449 |
|
450 |
|
451 /* |
|
452 * html5 specific |
|
453 * |
|
454 * */ |
|
455 |
|
456 table.tableblock { |
|
457 margin-top: 1.0em; |
|
458 margin-bottom: 1.5em; |
|
459 } |
|
460 thead, p.tableblock.header { |
|
461 font-weight: bold; |
|
462 color: #527bbd; |
|
463 } |
|
464 p.tableblock { |
|
465 margin-top: 0; |
|
466 } |
|
467 table.tableblock { |
|
468 border-width: 3px; |
|
469 border-spacing: 0px; |
|
470 border-style: solid; |
|
471 border-color: #527bbd; |
|
472 border-collapse: collapse; |
|
473 } |
|
474 th.tableblock, td.tableblock { |
|
475 border-width: 1px; |
|
476 padding: 4px; |
|
477 border-style: solid; |
|
478 border-color: #527bbd; |
|
479 } |
|
480 |
|
481 table.tableblock.frame-topbot { |
|
482 border-left-style: hidden; |
|
483 border-right-style: hidden; |
|
484 } |
|
485 table.tableblock.frame-sides { |
|
486 border-top-style: hidden; |
|
487 border-bottom-style: hidden; |
|
488 } |
|
489 table.tableblock.frame-none { |
|
490 border-style: hidden; |
|
491 } |
|
492 |
|
493 th.tableblock.halign-left, td.tableblock.halign-left { |
|
494 text-align: left; |
|
495 } |
|
496 th.tableblock.halign-center, td.tableblock.halign-center { |
|
497 text-align: center; |
|
498 } |
|
499 th.tableblock.halign-right, td.tableblock.halign-right { |
|
500 text-align: right; |
|
501 } |
|
502 |
|
503 th.tableblock.valign-top, td.tableblock.valign-top { |
|
504 vertical-align: top; |
|
505 } |
|
506 th.tableblock.valign-middle, td.tableblock.valign-middle { |
|
507 vertical-align: middle; |
|
508 } |
|
509 th.tableblock.valign-bottom, td.tableblock.valign-bottom { |
|
510 vertical-align: bottom; |
|
511 } |
|
512 |
|
513 |
|
514 /* |
|
515 * manpage specific |
|
516 * |
|
517 * */ |
|
518 |
|
519 body.manpage h1 { |
378 padding-top: 0.5em; |
520 padding-top: 0.5em; |
379 padding-bottom: 0.5em; |
521 padding-bottom: 0.5em; |
380 border-top: 2px solid silver; |
522 border-top: 2px solid silver; |
381 border-bottom: 2px solid silver; |
523 border-bottom: 2px solid silver; |
382 } |
524 } |
383 h2 { |
525 body.manpage h2 { |
384 border-style: none; |
526 border-style: none; |
385 } |
527 } |
386 div.sectionbody { |
528 body.manpage div.sectionbody { |
387 margin-left: 5%; |
529 margin-left: 3em; |
388 } |
530 } |
389 |
531 |
390 @media print { |
532 @media print { |
391 div#toc { display: none; } |
533 body.manpage div#toc { display: none; } |
392 } |
534 } |
393 |
535 |
394 /* Workarounds for IE6's broken and incomplete CSS2. */ |
536 |
395 |
|
396 div.sidebar-content { |
|
397 background: #ffffee; |
|
398 border: 1px solid silver; |
|
399 padding: 0.5em; |
|
400 } |
|
401 div.sidebar-title, div.image-title { |
|
402 color: #527bbd; |
|
403 font-family: sans-serif; |
|
404 font-weight: bold; |
|
405 margin-top: 0.0em; |
|
406 margin-bottom: 0.5em; |
|
407 } |
|
408 |
|
409 div.listingblock div.content { |
|
410 border: 1px solid silver; |
|
411 background: #f4f4f4; |
|
412 padding: 0.5em; |
|
413 } |
|
414 |
|
415 div.quoteblock-attribution { |
|
416 padding-top: 0.5em; |
|
417 text-align: right; |
|
418 } |
|
419 |
|
420 div.verseblock-content { |
|
421 white-space: pre; |
|
422 } |
|
423 div.verseblock-attribution { |
|
424 padding-top: 0.75em; |
|
425 text-align: left; |
|
426 } |
|
427 |
|
428 div.exampleblock-content { |
|
429 border-left: 3px solid #dddddd; |
|
430 padding-left: 0.5em; |
|
431 } |
|
432 |
|
433 /* IE6 sets dynamically generated links as visited. */ |
|
434 div#toc a:visited { color: blue; } |
|
435 </style> |
537 </style> |
436 <script type="text/javascript"> |
538 <script type="text/javascript"> |
437 /*<![CDATA[*/ |
539 /*<![CDATA[*/ |
438 window.onload = function(){asciidoc.footnotes();} |
|
439 var asciidoc = { // Namespace. |
540 var asciidoc = { // Namespace. |
440 |
541 |
441 ///////////////////////////////////////////////////////////////////// |
542 ///////////////////////////////////////////////////////////////////// |
442 // Table Of Contents generator |
543 // Table Of Contents generator |
443 ///////////////////////////////////////////////////////////////////// |
544 ///////////////////////////////////////////////////////////////////// |
495 iterate(el); |
596 iterate(el); |
496 return result; |
597 return result; |
497 } |
598 } |
498 |
599 |
499 var toc = document.getElementById("toc"); |
600 var toc = document.getElementById("toc"); |
|
601 if (!toc) { |
|
602 return; |
|
603 } |
|
604 |
|
605 // Delete existing TOC entries in case we're reloading the TOC. |
|
606 var tocEntriesToRemove = []; |
|
607 var i; |
|
608 for (i = 0; i < toc.childNodes.length; i++) { |
|
609 var entry = toc.childNodes[i]; |
|
610 if (entry.nodeName.toLowerCase() == 'div' |
|
611 && entry.getAttribute("class") |
|
612 && entry.getAttribute("class").match(/^toclevel/)) |
|
613 tocEntriesToRemove.push(entry); |
|
614 } |
|
615 for (i = 0; i < tocEntriesToRemove.length; i++) { |
|
616 toc.removeChild(tocEntriesToRemove[i]); |
|
617 } |
|
618 |
|
619 // Rebuild TOC entries. |
500 var entries = tocEntries(document.getElementById("content"), toclevels); |
620 var entries = tocEntries(document.getElementById("content"), toclevels); |
501 for (var i = 0; i < entries.length; ++i) { |
621 for (var i = 0; i < entries.length; ++i) { |
502 var entry = entries[i]; |
622 var entry = entries[i]; |
503 if (entry.element.id == "") |
623 if (entry.element.id == "") |
504 entry.element.id = "_toc_" + i; |
624 entry.element.id = "_toc_" + i; |
522 /* Based on footnote generation code from: |
642 /* Based on footnote generation code from: |
523 * http://www.brandspankingnew.net/archive/2005/07/format_footnote.html |
643 * http://www.brandspankingnew.net/archive/2005/07/format_footnote.html |
524 */ |
644 */ |
525 |
645 |
526 footnotes: function () { |
646 footnotes: function () { |
|
647 // Delete existing footnote entries in case we're reloading the footnodes. |
|
648 var i; |
|
649 var noteholder = document.getElementById("footnotes"); |
|
650 if (!noteholder) { |
|
651 return; |
|
652 } |
|
653 var entriesToRemove = []; |
|
654 for (i = 0; i < noteholder.childNodes.length; i++) { |
|
655 var entry = noteholder.childNodes[i]; |
|
656 if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote") |
|
657 entriesToRemove.push(entry); |
|
658 } |
|
659 for (i = 0; i < entriesToRemove.length; i++) { |
|
660 noteholder.removeChild(entriesToRemove[i]); |
|
661 } |
|
662 |
|
663 // Rebuild footnote entries. |
527 var cont = document.getElementById("content"); |
664 var cont = document.getElementById("content"); |
528 var noteholder = document.getElementById("footnotes"); |
|
529 var spans = cont.getElementsByTagName("span"); |
665 var spans = cont.getElementsByTagName("span"); |
530 var refs = {}; |
666 var refs = {}; |
531 var n = 0; |
667 var n = 0; |
532 for (i=0; i<spans.length; i++) { |
668 for (i=0; i<spans.length; i++) { |
533 if (spans[i].className == "footnote") { |
669 if (spans[i].className == "footnote") { |
534 n++; |
670 n++; |
535 // Use [\s\S] in place of . so multi-line matches work. |
671 var note = spans[i].getAttribute("data-note"); |
536 // Because JavaScript has no s (dotall) regex flag. |
672 if (!note) { |
537 note = spans[i].innerHTML.match(/\s*\[([\s\S]*)]\s*/)[1]; |
673 // Use [\s\S] in place of . so multi-line matches work. |
|
674 // Because JavaScript has no s (dotall) regex flag. |
|
675 note = spans[i].innerHTML.match(/\s*\[([\s\S]*)]\s*/)[1]; |
|
676 spans[i].innerHTML = |
|
677 "[<a id='_footnoteref_" + n + "' href='#_footnote_" + n + |
|
678 "' title='View footnote' class='footnote'>" + n + "</a>]"; |
|
679 spans[i].setAttribute("data-note", note); |
|
680 } |
538 noteholder.innerHTML += |
681 noteholder.innerHTML += |
539 "<div class='footnote' id='_footnote_" + n + "'>" + |
682 "<div class='footnote' id='_footnote_" + n + "'>" + |
540 "<a href='#_footnoteref_" + n + "' title='Return to text'>" + |
683 "<a href='#_footnoteref_" + n + "' title='Return to text'>" + |
541 n + "</a>. " + note + "</div>"; |
684 n + "</a>. " + note + "</div>"; |
542 spans[i].innerHTML = |
|
543 "[<a id='_footnoteref_" + n + "' href='#_footnote_" + n + |
|
544 "' title='View footnote' class='footnote'>" + n + "</a>]"; |
|
545 var id =spans[i].getAttribute("id"); |
685 var id =spans[i].getAttribute("id"); |
546 if (id != null) refs["#"+id] = n; |
686 if (id != null) refs["#"+id] = n; |
547 } |
687 } |
548 } |
688 } |
549 if (n == 0) |
689 if (n == 0) |
578 a simple Jabber (XMPP) console client |
741 a simple Jabber (XMPP) console client |
579 </p> |
742 </p> |
580 </div> |
743 </div> |
581 </div> |
744 </div> |
582 <div id="content"> |
745 <div id="content"> |
|
746 <div class="sect1"> |
583 <h2 id="_synopsis">SYNOPSIS</h2> |
747 <h2 id="_synopsis">SYNOPSIS</h2> |
584 <div class="sectionbody"> |
748 <div class="sectionbody"> |
585 <div class="paragraph"><p><em>mcabber</em> [ -h | -V | -f configfile ]</p></div> |
749 <div class="paragraph"><p><em>mcabber</em> [ -h | -V | -f configfile ]</p></div> |
586 </div> |
750 </div> |
|
751 </div> |
|
752 <div class="sect1"> |
587 <h2 id="_description">DESCRIPTION</h2> |
753 <h2 id="_description">DESCRIPTION</h2> |
588 <div class="sectionbody"> |
754 <div class="sectionbody"> |
589 <div class="paragraph"><p><tt>mcabber(1)</tt> is a small Jabber (XMPP) console client.<br /> |
755 <div class="paragraph"><p><span class="monospaced">mcabber(1)</span> is a small Jabber (XMPP) console client.<br> |
590 For now it needs a configuration file to start, so please copy the sample |
756 For now it needs a configuration file to start, so please copy the sample |
591 mcabberrc file and adapt your connection settings.</p></div> |
757 mcabberrc file and adapt your connection settings.</p></div> |
592 <div class="paragraph"><p>You also need to have an existing Jabber account to use this software, as |
758 <div class="paragraph"><p>You also need to have an existing Jabber account to use this software, as |
593 it cannot (un)register accounts yet.</p></div> |
759 it cannot (un)register accounts yet.</p></div> |
594 <div class="paragraph"><p>Here are some of the features of <tt>mcabber</tt>:</p></div> |
760 <div class="paragraph"><p>Here are some of the features of <span class="monospaced">mcabber</span>:</p></div> |
595 <div class="ulist"><ul> |
761 <div class="ulist"><ul> |
596 <li> |
762 <li> |
597 <p> |
763 <p> |
598 <em>SASL/SSL/TLS support</em>. |
764 <em>SASL/SSL/TLS support</em>. |
599 </p> |
765 </p> |
674 Use configuration file <em>configfile</em> |
842 Use configuration file <em>configfile</em> |
675 </p> |
843 </p> |
676 </dd> |
844 </dd> |
677 </dl></div> |
845 </dl></div> |
678 </div> |
846 </div> |
|
847 </div> |
|
848 <div class="sect1"> |
679 <h2 id="_windows_panes">WINDOWS/PANES</h2> |
849 <h2 id="_windows_panes">WINDOWS/PANES</h2> |
680 <div class="sectionbody"> |
850 <div class="sectionbody"> |
681 <div class="paragraph"><p>The <tt>mcabber(1)</tt> screen is divided into 4 regions. |
851 <div class="paragraph"><p>The <span class="monospaced">mcabber(1)</span> screen is divided into 4 regions. |
682 The <em>roster</em>, alias <em>buddylist</em>, is on the left. The <em>chat window</em>, or chat |
852 The <em>roster</em>, alias <em>buddylist</em>, is on the left. The <em>chat window</em>, or chat |
683 buffer, is on the right. The <em>input line</em> lies at the bottom of the screen, |
853 buffer, is on the right. The <em>input line</em> lies at the bottom of the screen, |
684 under a small <em>log window</em>.</p></div> |
854 under a small <em>log window</em>.</p></div> |
685 <div class="paragraph"><p>Two status lines surround the log window. The bottom status line is the |
855 <div class="paragraph"><p>Two status lines surround the log window. The bottom status line is the |
686 "main status line" and reflects mcabber general status. The other line |
856 "main status line" and reflects mcabber general status. The other line |
687 is the "chat status line" and shows the status of the currently selected |
857 is the "chat status line" and shows the status of the currently selected |
688 buddy.</p></div> |
858 buddy.</p></div> |
689 <div class="paragraph"><p>To display buddies chat buffers, you will have to enter <em>chat mode</em>. |
859 <div class="paragraph"><p>To display buddies chat buffers, you will have to enter <em>chat mode</em>. |
690 You can enter chat mode by pressing enter, and leave chat mode with the ESC |
860 You can enter chat mode by pressing enter (unless <em>vi mode</em> is enabled), and |
691 key. Simply sending a message will also enable chat mode.</p></div> |
861 leave chat mode with the ESC key. Simply sending a message will also enable |
|
862 chat mode (unless <em>vi mode</em> is enabled).</p></div> |
692 <div class="paragraph"><p>There are several advantages to the two-mode implementation: first, it allows |
863 <div class="paragraph"><p>There are several advantages to the two-mode implementation: first, it allows |
693 accurate "unread" message functionality, as described in the next section; |
864 accurate "unread" message functionality, as described in the next section; |
694 without this, merely scrolling to a specific buddy will "read" the new |
865 without this, merely scrolling to a specific buddy will "read" the new |
695 messages of all buddies in-between. Second, it allows quickly hiding the |
866 messages of all buddies in-between. Second, it allows quickly hiding the |
696 conversation with a single keystroke. Third, it allows jumping between |
867 conversation with a single keystroke. Third, it allows jumping between |
697 the few buddies with whom you are conversing with the <em>/roster alternate</em> |
868 the few buddies with whom you are conversing with the <em>/roster alternate</em> |
698 command described in another section, without having to manually scroll |
869 command described in another section, without having to manually scroll |
699 back and forth.</p></div> |
870 back and forth.</p></div> |
700 </div> |
871 </div> |
|
872 </div> |
|
873 <div class="sect1"> |
701 <h2 id="_keys">KEYS</h2> |
874 <h2 id="_keys">KEYS</h2> |
702 <div class="sectionbody"> |
875 <div class="sectionbody"> |
703 <div class="paragraph"><p>Text typing occurs in the <em>input line</em>; basic operations are supported |
876 <div class="paragraph"><p>Text typing occurs in the <em>input line</em>; basic operations are supported |
704 (left arrow, right arrow, home/end keys, insert, delete, backspace…).</p></div> |
877 (left arrow, right arrow, home/end keys, insert, delete, backspace…).</p></div> |
705 <div class="paragraph"><p>PageUp and PageDown keys are used to move in the roster.</p></div> |
878 <div class="paragraph"><p>PageUp and PageDown keys are used to move in the roster.</p></div> |
858 </dd> |
1031 </dd> |
859 </dl></div> |
1032 </dl></div> |
860 <div class="paragraph"><p>Additional key bindings may be specified using the <em>/bind</em> command described |
1033 <div class="paragraph"><p>Additional key bindings may be specified using the <em>/bind</em> command described |
861 in the COMMANDS section.</p></div> |
1034 in the COMMANDS section.</p></div> |
862 </div> |
1035 </div> |
|
1036 </div> |
|
1037 <div class="sect1"> |
|
1038 <h2 id="_vi_mode">VI MODE</h2> |
|
1039 <div class="sectionbody"> |
|
1040 <div class="paragraph"><p>If the "vi_mode" option is set to 1, <span class="monospaced">mcabber(1)</span> accepts a few commands |
|
1041 loosely based on those available in <span class="monospaced">vi(1)</span>'s normal mode. In this case, chat |
|
1042 mode is not entered by pressing enter, and messages cannot be composed outside |
|
1043 of the chat mode. The following commands are accepted:</p></div> |
|
1044 <div class="dlist"><dl> |
|
1045 <dt class="hdlist1"> |
|
1046 A |
|
1047 </dt> |
|
1048 <dd> |
|
1049 <p> |
|
1050 Call "/roster unread_first". |
|
1051 </p> |
|
1052 </dd> |
|
1053 <dt class="hdlist1"> |
|
1054 a |
|
1055 </dt> |
|
1056 <dd> |
|
1057 <p> |
|
1058 Call "/roster unread_next". |
|
1059 </p> |
|
1060 </dd> |
|
1061 <dt class="hdlist1"> |
|
1062 F |
|
1063 </dt> |
|
1064 <dd> |
|
1065 <p> |
|
1066 Call "/roster group_prev". |
|
1067 </p> |
|
1068 </dd> |
|
1069 <dt class="hdlist1"> |
|
1070 f |
|
1071 </dt> |
|
1072 <dd> |
|
1073 <p> |
|
1074 Call "/roster group_next". |
|
1075 </p> |
|
1076 </dd> |
|
1077 <dt class="hdlist1"> |
|
1078 G |
|
1079 </dt> |
|
1080 <dd> |
|
1081 <p> |
|
1082 Call "/roster bottom". |
|
1083 </p> |
|
1084 </dd> |
|
1085 <dt class="hdlist1"> |
|
1086 gg |
|
1087 </dt> |
|
1088 <dd> |
|
1089 <p> |
|
1090 Call "/roster top". |
|
1091 </p> |
|
1092 </dd> |
|
1093 <dt class="hdlist1"> |
|
1094 i |
|
1095 </dt> |
|
1096 <dd> |
|
1097 <p> |
|
1098 Enter chat mode. |
|
1099 </p> |
|
1100 </dd> |
|
1101 <dt class="hdlist1"> |
|
1102 [N]j |
|
1103 </dt> |
|
1104 <dd> |
|
1105 <p> |
|
1106 Call "/roster down [N]". |
|
1107 </p> |
|
1108 </dd> |
|
1109 <dt class="hdlist1"> |
|
1110 [N]k |
|
1111 </dt> |
|
1112 <dd> |
|
1113 <p> |
|
1114 Call "/roster up [N]". |
|
1115 </p> |
|
1116 </dd> |
|
1117 <dt class="hdlist1"> |
|
1118 n |
|
1119 </dt> |
|
1120 <dd> |
|
1121 <p> |
|
1122 Repeat the previous search (if any). |
|
1123 </p> |
|
1124 </dd> |
|
1125 <dt class="hdlist1"> |
|
1126 O |
|
1127 </dt> |
|
1128 <dd> |
|
1129 <p> |
|
1130 Call "/roster unread_first" and open chat window. |
|
1131 </p> |
|
1132 </dd> |
|
1133 <dt class="hdlist1"> |
|
1134 o |
|
1135 </dt> |
|
1136 <dd> |
|
1137 <p> |
|
1138 Call "/roster unread_next" and open chat window. |
|
1139 </p> |
|
1140 </dd> |
|
1141 <dt class="hdlist1"> |
|
1142 ZZ |
|
1143 </dt> |
|
1144 <dd> |
|
1145 <p> |
|
1146 Call "/quit". |
|
1147 </p> |
|
1148 </dd> |
|
1149 <dt class="hdlist1"> |
|
1150 zM |
|
1151 </dt> |
|
1152 <dd> |
|
1153 <p> |
|
1154 Call "/group fold" for all groups. |
|
1155 </p> |
|
1156 </dd> |
|
1157 <dt class="hdlist1"> |
|
1158 zR |
|
1159 </dt> |
|
1160 <dd> |
|
1161 <p> |
|
1162 Call "/group unfold" for all groups. |
|
1163 </p> |
|
1164 </dd> |
|
1165 <dt class="hdlist1"> |
|
1166 '' |
|
1167 </dt> |
|
1168 <dd> |
|
1169 <p> |
|
1170 Call "/roster alternate". |
|
1171 </p> |
|
1172 </dd> |
|
1173 <dt class="hdlist1"> |
|
1174 ! |
|
1175 </dt> |
|
1176 <dd> |
|
1177 <p> |
|
1178 Toggle attention flag for current buddy. |
|
1179 </p> |
|
1180 </dd> |
|
1181 <dt class="hdlist1"> |
|
1182 # |
|
1183 </dt> |
|
1184 <dd> |
|
1185 <p> |
|
1186 Toggle unread messages flag for current buddy. |
|
1187 </p> |
|
1188 </dd> |
|
1189 <dt class="hdlist1"> |
|
1190 <Space> |
|
1191 </dt> |
|
1192 <dd> |
|
1193 <p> |
|
1194 Call "/group toggle" for the current group. |
|
1195 </p> |
|
1196 </dd> |
|
1197 </dl></div> |
|
1198 <div class="paragraph"><p>A leading slash enables search mode:</p></div> |
|
1199 <div class="dlist"><dl> |
|
1200 <dt class="hdlist1"> |
|
1201 /string |
|
1202 </dt> |
|
1203 <dd> |
|
1204 <p> |
|
1205 Call "/roster search string". |
|
1206 </p> |
|
1207 </dd> |
|
1208 </dl></div> |
|
1209 <div class="paragraph"><p>A leading colon enabled command-line mode:</p></div> |
|
1210 <div class="literalblock"> |
|
1211 <div class="content monospaced"> |
|
1212 <pre>above commands).</pre> |
|
1213 </div></div> |
|
1214 <div class="paragraph"><p>Commands entered with a leading colon and searches are either submitted by |
|
1215 pressing enter or aborted by hitting escape. In either case, <span class="monospaced">mcabber(1)</span> |
|
1216 returns to the normal (non-chat) mode. History editing is supported in |
|
1217 command-line mode and in search mode. In command-line mode, tab completion is |
|
1218 supported as well.</p></div> |
|
1219 </div> |
|
1220 </div> |
|
1221 <div class="sect1"> |
863 <h2 id="_mcabber_8217_s_roster">MCABBER’S ROSTER</h2> |
1222 <h2 id="_mcabber_8217_s_roster">MCABBER’S ROSTER</h2> |
864 <div class="sectionbody"> |
1223 <div class="sectionbody"> |
865 <div class="paragraph"><p>The first listed item on the roster is <em>[status]</em>, which keeps a log of |
1224 <div class="paragraph"><p>The first listed item on the roster is <em>[status]</em>, which keeps a log of |
866 everything that appears in the short log window below the main chat area. |
1225 everything that appears in the short log window below the main chat area. |
867 While the log window was designed for showing the latest few elements, the |
1226 While the log window was designed for showing the latest few elements, the |
1001 You are participating in x@y.c conference room, and there are unread messages |
1360 You are participating in x@y.c conference room, and there are unread messages |
1002 </p> |
1361 </p> |
1003 </dd> |
1362 </dd> |
1004 </dl></div> |
1363 </dl></div> |
1005 </div> |
1364 </div> |
|
1365 </div> |
|
1366 <div class="sect1"> |
1006 <h2 id="_commands">COMMANDS</h2> |
1367 <h2 id="_commands">COMMANDS</h2> |
1007 <div class="sectionbody"> |
1368 <div class="sectionbody"> |
1008 <div class="paragraph"><p>Please refer to the online help (command /help), it is probably more up-to-date than this manpage. Furthermore, help files have been translated into several languages.<br /> |
1369 <div class="paragraph"><p>Please refer to the online help (command /help), it is probably more up-to-date than this manpage. Furthermore, help files have been translated into several languages.<br> |
1009 You will find an overview of the <tt>mcabber</tt> commands in this manual.</p></div> |
1370 You will find an overview of the <span class="monospaced">mcabber</span> commands in this manual.</p></div> |
1010 </div> |
1371 </div> |
|
1372 </div> |
|
1373 <div class="sect1"> |
1011 <h2 id="_commands_related_to_mcabber">COMMANDS RELATED TO MCABBER</h2> |
1374 <h2 id="_commands_related_to_mcabber">COMMANDS RELATED TO MCABBER</h2> |
1012 <div class="sectionbody"> |
1375 <div class="sectionbody"> |
1013 <div class="dlist"><dl> |
1376 <div class="dlist"><dl> |
1014 <dt class="hdlist1"> |
1377 <dt class="hdlist1"> |
1015 /add [jid [nickname]] |
1378 /add [jid [nickname]] |
1072 <dd> |
1435 <dd> |
1073 <p> |
1436 <p> |
1074 Set alias called "name" with value "command line" |
1437 Set alias called "name" with value "command line" |
1075 </p> |
1438 </p> |
1076 <div class="literalblock"> |
1439 <div class="literalblock"> |
1077 <div class="content"> |
1440 <div class="content monospaced"> |
1078 <pre><tt>Example: "/alias away = status away"</tt></pre> |
1441 <pre>Example: "/alias away = status away"</pre> |
1079 </div></div> |
1442 </div></div> |
1080 </dd> |
1443 </dd> |
1081 </dl></div> |
1444 </dl></div> |
1082 </dd> |
1445 </dd> |
1083 <dt class="hdlist1"> |
1446 <dt class="hdlist1"> |
1084 /authorization allow|cancel|request|request_unsubscribe [jid] |
1447 /authorization allow|cancel|request|request_unsubscribe [jid] |
1085 </dt> |
1448 </dt> |
1086 <dd> |
1449 <dd> |
1087 <p> |
1450 <p> |
1088 This command manages presence subscriptions: it allows you to request presence subscriptions from others on your roster, and allows you to control who receives your presence notifications.<br /> |
1451 This command manages presence subscriptions: it allows you to request presence subscriptions from others on your roster, and allows you to control who receives your presence notifications.<br> |
1089 If no JID is provided, the currently-selected buddy is used. |
1452 If no JID is provided, the currently-selected buddy is used. |
1090 </p> |
1453 </p> |
1091 <div class="dlist"><dl> |
1454 <div class="dlist"><dl> |
1092 <dt class="hdlist1"> |
1455 <dt class="hdlist1"> |
1093 <em>allow</em> |
1456 <em>allow</em> |
1808 <dt class="hdlist1"> |
2171 <dt class="hdlist1"> |
1809 /move [groupname] |
2172 /move [groupname] |
1810 </dt> |
2173 </dt> |
1811 <dd> |
2174 <dd> |
1812 <p> |
2175 <p> |
1813 Move the current buddy to the requested group. If no group is specified, then the buddy is moved to the default group. If the group "groupname" doesn’t exist, it is created.<br /> |
2176 Move the current buddy to the requested group. If no group is specified, then the buddy is moved to the default group. If the group "groupname" doesn’t exist, it is created.<br> |
1814 Tip: if the chatmode is enabled, you can use "/roster alternate" to jump to the moved buddy. |
2177 Tip: if the chatmode is enabled, you can use "/roster alternate" to jump to the moved buddy. |
1815 </p> |
2178 </p> |
1816 </dd> |
2179 </dd> |
1817 <dt class="hdlist1"> |
2180 <dt class="hdlist1"> |
1818 /msay begin|verbatim|send|send_to|toggle|toggle_verbatim|abort |
2181 /msay begin|verbatim|send|send_to|toggle|toggle_verbatim|abort |
1819 </dt> |
2182 </dt> |
1820 <dd> |
2183 <dd> |
1821 <p> |
2184 <p> |
1822 Send a multi-line message. To write a single message with several lines, the <em>multi-line mode</em> should be used.<br /> |
2185 Send a multi-line message. To write a single message with several lines, the <em>multi-line mode</em> should be used.<br> |
1823 In multi-line mode, each line (except command lines) typed in the input line will be added to the multi-line message. Once the message is finished, it can be sent to the current selected buddy with the "/msay send" command.<br /> |
2186 In multi-line mode, each line (except command lines) typed in the input line will be added to the multi-line message. Once the message is finished, it can be sent to the current selected buddy with the "/msay send" command.<br> |
1824 The <em>begin</em> subcommand enables multi-line mode. Note that it allows a message subject to be specified.<br /> |
2187 The <em>begin</em> subcommand enables multi-line mode. Note that it allows a message subject to be specified.<br> |
1825 The <em>verbatim</em> multi-line mode disables commands, so that it is possible to enter lines starting with a slash. Only the "/msay" command (with send or abort parameters) can be used to exit verbatim mode.<br /> |
2188 The <em>verbatim</em> multi-line mode disables commands, so that it is possible to enter lines starting with a slash. Only the "/msay" command (with send or abort parameters) can be used to exit verbatim mode.<br> |
1826 The <em>toggle</em> subcommand can be bound to a key to use the multi-line mode quickly (for example, "bind M13 = msay toggle" to switch using the Meta-Enter combination). |
2189 The <em>toggle</em> subcommand can be bound to a key to use the multi-line mode quickly (for example, "bind M13 = msay toggle" to switch using the Meta-Enter combination). |
1827 </p> |
2190 </p> |
1828 <div class="dlist"><dl> |
2191 <div class="dlist"><dl> |
1829 <dt class="hdlist1"> |
2192 <dt class="hdlist1"> |
1830 <em>begin</em> [subject] |
2193 <em>begin</em> [subject] |
2490 <dt class="hdlist1"> |
2853 <dt class="hdlist1"> |
2491 /say [-n|-h|--] text |
2854 /say [-n|-h|--] text |
2492 </dt> |
2855 </dt> |
2493 <dd> |
2856 <dd> |
2494 <p> |
2857 <p> |
2495 Send the "text" message to the currently selected buddy. It can be useful if you want to send a message beginning with a slash, for example.<br /> |
2858 Send the "text" message to the currently selected buddy. It can be useful if you want to send a message beginning with a slash, for example.<br> |
2496 The "-n" flag turns the message to "normal" type, "-h" to "headline". "--" can be used to send chat message beginning with -n or -h. |
2859 The "-n" flag turns the message to "normal" type, "-h" to "headline". "--" can be used to send chat message beginning with -n or -h. |
2497 </p> |
2860 </p> |
2498 </dd> |
2861 </dd> |
2499 <dt class="hdlist1"> |
2862 <dt class="hdlist1"> |
2500 /say_to [-n|-h] [-q] [-f file] jid text |
2863 /say_to [-n|-h] [-q] [-f file] jid text |
2501 </dt> |
2864 </dt> |
2502 <dd> |
2865 <dd> |
2503 <p> |
2866 <p> |
2504 Send the "text" message to the specified jid.<br /> |
2867 Send the "text" message to the specified jid.<br> |
2505 Please note that this command doesn’t set the default resource for a contact, so if you want to send several messages to a specific resource you will have to use "/say_to" for each message.<br /> |
2868 Please note that this command doesn’t set the default resource for a contact, so if you want to send several messages to a specific resource you will have to use "/say_to" for each message.<br> |
2506 You can send a message to a specific resource of the currently selected contact by using /say_to ./resourcename message.<br /> |
2869 You can send a message to a specific resource of the currently selected contact by using /say_to ./resourcename message.<br> |
2507 The "-n" flag turns the message to "normal" type, "-h" to "headline". "--" can be used to send chat messages beginning with -n or -h.<br /> |
2870 The "-n" flag turns the message to "normal" type, "-h" to "headline". "--" can be used to send chat messages beginning with -n or -h.<br> |
2508 When "-q" is used, the message will be sent in the background and will not change the current active window.<br /> |
2871 When "-q" is used, the message will be sent in the background and will not change the current active window.<br> |
2509 A text file can be provided with the "-f" switch (in which case there’s no need to pass a text argument after the jid, of course). |
2872 A text file can be provided with the "-f" switch (in which case there’s no need to pass a text argument after the jid, of course). |
2510 </p> |
2873 </p> |
2511 </dd> |
2874 </dd> |
2512 <dt class="hdlist1"> |
2875 <dt class="hdlist1"> |
2513 /screen_refresh |
2876 /screen_refresh |
2540 <dt class="hdlist1"> |
2903 <dt class="hdlist1"> |
2541 /status message -|statusmessage |
2904 /status message -|statusmessage |
2542 </dt> |
2905 </dt> |
2543 <dd> |
2906 <dd> |
2544 <p> |
2907 <p> |
2545 Show or set the current status.<br /> |
2908 Show or set the current status.<br> |
2546 If no status is specified, display the current status.<br /> |
2909 If no status is specified, display the current status.<br> |
2547 If a status message is specified, it will overrride the message* variables (these variables can be set in the configuration file).<br /> |
2910 If a status message is specified, it will overrride the message* variables (these variables can be set in the configuration file).<br> |
2548 If no relevant message* variable is set and no status message provided, the current status message is kept.<br /> |
2911 If no relevant message* variable is set and no status message provided, the current status message is kept.<br> |
2549 If StatusMessage is "-", the current status message is cleared.<br /> |
2912 If StatusMessage is "-", the current status message is cleared.<br> |
2550 With the "/status message" command, mcabber will update the message while preserving the status. |
2913 With the "/status message" command, mcabber will update the message while preserving the status. |
2551 </p> |
2914 </p> |
2552 </dd> |
2915 </dd> |
2553 <dt class="hdlist1"> |
2916 <dt class="hdlist1"> |
2554 /status_to jid online|avail|free|dnd|notavail|away [statusmessage] |
2917 /status_to jid online|avail|free|dnd|notavail|away [statusmessage] |
2572 Display current version of mcabber. |
2935 Display current version of mcabber. |
2573 </p> |
2936 </p> |
2574 </dd> |
2937 </dd> |
2575 </dl></div> |
2938 </dl></div> |
2576 </div> |
2939 </div> |
|
2940 </div> |
|
2941 <div class="sect1"> |
2577 <h2 id="_configuration_file">CONFIGURATION FILE</h2> |
2942 <h2 id="_configuration_file">CONFIGURATION FILE</h2> |
2578 <div class="sectionbody"> |
2943 <div class="sectionbody"> |
2579 <div class="paragraph"><p>See the provided sample configuration file, which should be self-documenting.</p></div> |
2944 <div class="paragraph"><p>See the provided sample configuration file, which should be self-documenting.</p></div> |
2580 </div> |
2945 </div> |
|
2946 </div> |
|
2947 <div class="sect1"> |
2581 <h2 id="_files">FILES</h2> |
2948 <h2 id="_files">FILES</h2> |
2582 <div class="sectionbody"> |
2949 <div class="sectionbody"> |
2583 <div class="paragraph"><p>The following files can be used by <tt>mcabber(1)</tt>:</p></div> |
2950 <div class="paragraph"><p>The following files can be used by <span class="monospaced">mcabber(1)</span>:</p></div> |
2584 <div class="literalblock"> |
2951 <div class="literalblock"> |
2585 <div class="content"> |
2952 <div class="content monospaced"> |
2586 <pre><tt>$HOME/.mcabber/mcabberrc Default configuration file |
2953 <pre>$HOME/.mcabber/mcabberrc Default configuration file |
|
2954 $HOME/.config/mcabber/mcabberrc Alternate location (can use XDG_CONFIG_HOME) |
2587 $HOME/.mcabberrc Configuration file used if no other has been found |
2955 $HOME/.mcabberrc Configuration file used if no other has been found |
2588 $HOME/.mcabber/histo/ Default directory for storing chat history files, if enabled |
2956 $HOME/.mcabber/histo/ Default directory for storing chat history files, if enabled |
2589 /usr/share/mcabber/help/ Default directory for online help files |
2957 /usr/share/mcabber/help/ Default directory for online help files |
2590 /usr/lib/mcabber/ Default directory for modules</tt></pre> |
2958 /usr/lib/mcabber/ Default directory for modules</pre> |
2591 </div></div> |
2959 </div></div> |
2592 </div> |
2960 </div> |
|
2961 </div> |
|
2962 <div class="sect1"> |
2593 <h2 id="_bugs">BUGS</h2> |
2963 <h2 id="_bugs">BUGS</h2> |
2594 <div class="sectionbody"> |
2964 <div class="sectionbody"> |
2595 <div class="paragraph"><p>Certainly. Please tell me if you find one! :-)<br /> |
2965 <div class="paragraph"><p>Certainly. Please tell me if you find one! :-)<br> |
2596 Please visit our website to find out about the MUC room and the bug tracker.</p></div> |
2966 Please visit our website to find out about the MUC room and the bug tracker.</p></div> |
2597 </div> |
2967 </div> |
|
2968 </div> |
|
2969 <div class="sect1"> |
2598 <h2 id="_author">AUTHOR</h2> |
2970 <h2 id="_author">AUTHOR</h2> |
2599 <div class="sectionbody"> |
2971 <div class="sectionbody"> |
2600 <div class="paragraph"><p>Written by <a href="mailto:mikael@lilotux.net">Mikael BERTHE</a> and others |
2972 <div class="paragraph"><p>Written by <a href="mailto:mikael@lilotux.net">Mikael BERTHE</a> and others |
2601 (see AUTHORS file).<br /></p></div> |
2973 (see AUTHORS file).<br></p></div> |
2602 </div> |
2974 </div> |
|
2975 </div> |
|
2976 <div class="sect1"> |
2603 <h2 id="_resources">RESOURCES</h2> |
2977 <h2 id="_resources">RESOURCES</h2> |
2604 <div class="sectionbody"> |
2978 <div class="sectionbody"> |
2605 <div class="paragraph"><p><a href="http://mcabber.com/">Main web site</a><br /> |
2979 <div class="paragraph"><p><a href="http://mcabber.com/">Main web site</a><br> |
2606 <a href="http://wiki.mcabber.com/">Official wiki</a><br /> |
2980 <a href="http://wiki.mcabber.com/">Official wiki</a><br> |
2607 <a href="xmpp:mcabber@conf.lilotux.net">MCabber MUC room</a></p></div> |
2981 xmpp://mcabber@conf.lilotux.net[MCabber MUC room]</p></div> |
2608 </div> |
2982 </div> |
|
2983 </div> |
|
2984 <div class="sect1"> |
2609 <h2 id="_copying">COPYING</h2> |
2985 <h2 id="_copying">COPYING</h2> |
2610 <div class="sectionbody"> |
2986 <div class="sectionbody"> |
2611 <div class="paragraph"><p>Copyright (C) 2005-2017 Mikael Berthe and others.<br /></p></div> |
2987 <div class="paragraph"><p>Copyright (C) 2005-2017 Mikael Berthe and others.<br></p></div> |
2612 <div class="paragraph"><p>Free use of this software is granted under the terms of the GNU General Public |
2988 <div class="paragraph"><p>Free use of this software is granted under the terms of the GNU General Public |
2613 License (GPL).</p></div> |
2989 License (GPL).</p></div> |
2614 </div> |
2990 </div> |
2615 </div> |
2991 </div> |
2616 <div id="footnotes"><hr /></div> |
2992 </div> |
|
2993 <div id="footnotes"><hr></div> |
2617 <div id="footer"> |
2994 <div id="footer"> |
2618 <div id="footer-text"> |
2995 <div id="footer-text"> |
2619 Version 1.0.6-dev<br /> |
2996 Version 1.0.6-dev<br> |
2620 Last updated 2016-09-17 20:57:35 CEST |
2997 Last updated |
|
2998 2017-05-11 14:20:41 CEST |
2621 </div> |
2999 </div> |
2622 </div> |
3000 </div> |
2623 </body> |
3001 </body> |
2624 </html> |
3002 </html> |