Usage This chapter explains how to run WeeChat, the default key bindings used, internal and IRC commands, setup file, and FIFO pipe use.
Running WeeChat Command line arguments: Parameter Description -a, --no-connect Disable auto-connect to servers at startup -c, --config Display config help (list of options) -d, --dir <path> Set path as home for WeeChat (used for configuration files, logs, user plugins and scripts). Default value is "~/.weechat". Please note that directory is created if not found by WeeChat. -f, --key-functions Display WeeChat internal functions for keys -h, --help Display help -i, --irc-commands Display IRC commands list -k, --keys Display WeeChat default keys -l, --license Display WeeChat license -p, --no-plugin Disable plugins auto-load -v, --version Display WeeChat version -w, --weechat-commands Display WeeChat commands list It is also possible to give URL for one or many IRC servers, as follow: irc[6][s]://[pseudo[:mot_passe]@]irc.example.org[:port][/channel][,channel[...] Example to join #weechat and #toto on "irc.freenode.net" server, default port (6667), with "nono" nick: $ weechat-curses irc://nono@irc.freenode.net/#weechat,#toto To start WeeChat, issue this command: for Curses GUI: weechat-curses for Gtk GUI: weechat-gtk for wxWidgets GUI: weechat-wxwidgets for Qt GUI: weechat-qt When you run WeeChat for the first time, a default configuration file is created, with default options. The default configuration file is: "~/.weechat/weechat.rc" You can edit this file at your convenience to configure WeeChat (ONLY if WeeChat is not running), or you can set parameters with "/set" command in WeeChat (see )
Key bindings Key Action Left arrow / Ctrl + B Go to previous char in command line Right arrow / Ctrl + F Go to next char in command line Ctrl + left arrow Go to previous word in command line Ctrl + right arrow Go to next word in command line Home / Ctrl + A Go to the beginning of command line Ctrl + C then B Insert code for bold text. Ctrl + C then C Insert code for colored text. Ctrl + C then O Insert code for color reset. Ctrl + C then R Insert code for reverse color. Ctrl + C then U Insert code for underlined text. End / Ctrl + E Go to the end of command line Ctrl + K Delete from cursor until end of command line Ctrl + L Redraw whole window Ctrl + R Search for text in buffer history (two times: search exact text) Ctrl + S then Ctrl + U Set unread marker on all buffers Ctrl + T Transpose chars Ctrl + U Delete from cursor until beginning of command line Ctrl + W Delete previous word of command line Ctrl + Y Paste clipboard content Backspace / Ctrl + H Delete previous char in command line Delete / Ctrl + D Delete next char in command line Tab / Shift + Tab Complete command or nick (Tab again: find next completion) Any char Insert char at cursor position in command line Enter / Ctrl + J / Ctrl + M Execute command or send message (in search mode: stop search) Up arrow / Down arrow Call again last commands/messages (in search mode: search up/down) Ctrl + up arrow / Ctrl + down arrow Call again last commands/messages in global history (common for all buffers) PageUp / PageDown Scroll up / down one page in buffer history Alt + PageUp / Alt + PageDown Scroll up / down a few lines in buffer history Alt + Home / Alt + End Scroll to top / bottom of buffer F5 / Alt + left arrow Switch to previous buffer F6 / Alt + right arrow Switch to next buffer F7 Switch to previous window F8 Switch to next window F9 / F10 Scroll topic F11 / F12 Scroll nicklist Alt + F11 / Alt + F12 Go to the beginning / the end of nicklist Alt + A Switch to next buffer with activity (with priority: highlight, message, other) Alt + B Go to previous word in command line Alt + D Delete next word in command line Alt + F Go to next word in command line Alt + H Clear hotlist (activity notification on other buffers) Alt + I Remove last infobar message Alt + J then Alt + D Display DCC buffer Alt + J then Alt + L Switch to last buffer Alt + J then Alt + P Switch to buffer previously displayed Alt + J then Alt + R Switch to raw IRC data buffer Alt + J then Alt + S Switch to server buffer Alt + J then Alt + X Switch to first channel of next server (or server buffer if no channel is opened) Alt + digit (0-9) Switch to buffer by number (0 = 10) Alt + J then number (01-99) Switch to buffer by number Alt + K Grab a key and insert its code in command line Alt + N Scroll to next highlight Alt + P Scroll to previous highlight Alt + R Delete entire command line Alt + S Switch servers on servers buffer (if option "look_one_server_buffer" is enabled) Alt + U Scroll to first unread line in buffer Alt + W then Alt + arrow Switch to window with direction
Command line WeeChat command line (at the bottom of window) lets you send text on channels and execute WeeChat or IRC commands (see ). Commands begin with "/" char, followed by name of command. For example, to initiate a private chat with "toto": /query toto Text sent to a channel is any text that does not begin with "/" char. For example, to send text "hello" on current channel: hello However, it is possible to start with "/" char, by adding another. For example, to send text "/query toto" on current channel: //query toto If option for sending IRC colors ("irc_colors_send") is enabled, you can use color codes and attributes, as follow (press Ctrl-C then following letter, with optional value): Code Description ^Cb bold text ^Ccxx text color "xx" (see colors table below) ^Ccxx,yy text color "xx" and background "yy" (see colors table below) ^Co disable color and attributes ^Cr reverse video (revert text color with background) ^Cu underlined text Note: the same code (without number for ^Cc) may be used to stop the attribute. Color codes for ^Cc are: Code Color 00 white 01 black 02 dark blue 03 dark green 04 light red 05 dark red 06 magenta 07 orange 08 yellow 09 light green 10 cyan 11 light cyan 12 light blue 13 light magenta 14 gray 15 light gray (white) Example: display of "hello everybody!" with "hello" in light blue bold, and "everybody" in light red underlined: ^Cc12^Cbhello^Cb^Cc04^Cu everybody^Cu^Cc!
WeeChat / IRC commands This chapter lists all WeeChat and IRC commands.
WeeChat commands &weechat_commands.xml;
Key functions Function Description &key_functions.xml;
IRC commands &irc_commands.xml;
Configuration file List of options for config file: Option Type Values Default Description &config.xml; Colors for Curses GUI are: Keyword Color default default color (transparent for background) black black red dark red lightred light red green dark green lightgreen light green brown brown yellow yellow blue dark blue lightblue light blue magenta dark magenta lightmagenta light magenta cyan dark cyan lightcyan light cyan white white
FIFO pipe You can remote control WeeChat, by sending commands or text to a FIFO pipe (you have to enable option "irc_fifo_pipe", it is disabled by default). The FIFO pipe is located in "~/.weechat/" and is called "weechat_fifo_xxxxx" (where xxxxx is the process ID (PID) of running WeeChat). So if many WeeChat are running, you have many FIFO pipes, one for each session. The syntax for the FIFO pipe commands/text is: server,channel *text or command here where server and channel are optional, but if channel is here, server should be too. Some examples: nick change on freenode to "mynick|out" : $ echo 'freenode */nick mynick|out' >~/.weechat/weechat_fifo_12345 display text on #weechat channel: $ echo 'freenode,#weechat *hello everybody!' >~/.weechat/weechat_fifo_12345 display text on current channel (buffer displayed by WeeChat): $ echo '*hello!' >~/.weechat/weechat_fifo_12345 Warning: this is dangerous and you should not do that except if you know what you do! send two commands to unload/reload Perl scripts (you have to separate them with "\n"): $ echo -e "freenode */perl unload\nfreenode */perl autoload" >~/.weechat/weechat_fifo_12345 You can write a script to send command to all running WeeChat at same time, for example: #!/bin/sh if [ $# -eq 1 ]; then for fifo in ~/.weechat/weechat_fifo_* do echo -e "$1" >$fifo done fi If the script is called "auto_weechat_command", you can run it with: $ ./auto_weechat_command "freenode,#weechat *hello"