• *`/away`* `[-all] [message]`:: ........................................ toggle away status -all: toggle away status on all connected servers message: message for away (if no message is given, away status is removed) ........................................ • *`/bar`* `[add barname type[,cond1,cond2,...] position size separator item1,item2,...] | [default] | [del barname|-all] | [set barname option value] | [hide|show|toggle barname] | [scroll barname buffer scroll_value] | [list] | [listfull] | [listitems]`:: ........................................ manage bars add: add a new bar barname: name of bar (must be unique) type: root: outside windows, window: inside windows, with optional conditions (see below) cond1,...: condition(s) for displaying bar (only for type "window"): active: on active window inactive: on inactive windows nicklist: on windows with nicklist without condition, bar is always displayed position: bottom, top, left or right size: size of bar (in chars) separator: 1 for using separator (line), 0 or nothing means no separator item1,...: items for this bar (items can be separated by comma (space between items) or "+" (glued items)) default: create default bars del: delete a bar (or all bars with -all) set: set a value for a bar property option: option to change (for options list, look at /set weechat.bar..*) value: new value for option hide: hide a bar show: show an hidden bar toggle: hide/show a bar scroll: scroll bar up/down buffer: name of buffer to scroll ('*' means current buffer, you should use '*' for root bars) scroll_value: value for scroll: 'x' or 'y', followed by '+', '-', 'b' (beginning) or 'e' (end), value (for +/-), and optional %% (to scroll by %% of width/height, otherwise value is number of chars) list: list all bars listfull: list all bars (verbose) listitems: list all bar items Examples: create a bar with time, buffer number + name, and completion: /bar add mybar root bottom 1 0 [time],buffer_number+:+buffer_name,completion hide a bar: /bar hide mybar scroll nicklist 10 lines down on current buffer: /bar scroll nicklist * y+10 scroll nicklist one page up on #weechat buffer: /bar scroll nicklist #weechat y-100% scroll to end of nicklist on current buffer: /bar scroll nicklist * ye ........................................ • *`/buffer`* `[clear [number | -merged | -all] | move number | merge number | unmerge [number] | close [n1[-n2]] | list | notify level | localvar | set property value | get property | number | name]`:: ........................................ manage buffers clear: clear buffer content (number for a buffer, -merged for merged buffers, -all for all buffers, or nothing for current buffer) move: move buffer in the list (may be relative, for example -1) merge: merge current buffer to another buffer (chat area will be mix of both buffers) (by default ctrl-x switches between merged buffers) unmerge: unmerge buffer from other buffers which have same number close: close buffer (number/range is optional) list: list buffers (without argument, this list is displayed) notify: set notify level for current buffer: this level determines whether buffer will be added to hotlist or not: none: never highlight: for highlights only message: for messages from users + highlights all: all messages reset: reset to default value (all) localvar: display local variables for current buffer set: set a property for current buffer get: display a property of current buffer number: jump to buffer by number, possible prefix: '+': relative jump, add number to current '-': relative jump, sub number to current '*': jump to number, using option "weechat.look.jump_current_to_previous_buffer" name: jump to buffer by (partial) name Examples: clear current buffer: /buffer clear move buffer to number 5: /buffer move 5 merge with core buffer: /buffer merge 1 unmerge buffer: /buffer unmerge close current buffer: /buffer close close buffers 5 to 7: /buffer close 5-7 jump to #weechat: /buffer #weechat jump to next buffer: /buffer +1 ........................................ • *`/command`* `plugin command`:: ........................................ launch explicit WeeChat or plugin command plugin: plugin name ('weechat' for WeeChat internal command) command: command to execute (a '/' is automatically added if not found at beginning of command) ........................................ • *`/debug`* `[list | set plugin level | dump [plugin] | buffer | windows | term]`:: ........................................ control debug for core/plugins set: set log level for plugin plugin: name of plugin ("core" for WeeChat core) level: debug level for plugin (0 = disable debug) dump: save memory dump in WeeChat log file (same dump is written when WeeChat crashes) buffer: dump buffer content with hexadecimal values in log file windows: display windows tree term: display infos about terminal and available colors ........................................ • *`/filter`* `[list] | [enable|disable|toggle [name]] | [add name plugin.buffer tags regex] | [del name|-all]`:: ........................................ filter messages in buffers, to hide/show them according to tags or regex list: list all filters enable: enable filters (filters are enabled by default) disable: disable filters toggle: toggle filters name: filter name add: add a filter del: delete a filter -all: delete all filters plugin.buffer: plugin and buffer where filter is active ("*" for all buffers) tags: comma separated list of tags, for example: "irc_join,irc_part,irc_quit" regex: regular expression to search in line - use '\t' to separate prefix from message, special chars like '|' must be escaped: '\|' - if regex starts with '!', then matching result is reversed (use '\!' to start with '!') note: two regex are created: one for prefix and one for message The default key alt+'=' toggles filtering on/off. Tags most commonly used: no_filter, no_highlight, no_log, log0..log9 (log level), notify_message, notify_private, notify_highlight, nick_xxx (xxx is nick in message), irc_xxx (xxx is command name or number, see /server raw), irc_numeric, irc_error, irc_action, irc_ctcp, irc_ctcp_reply, irc_smart_filter, away_info. Examples: use IRC smart filter for join/part/quit messages: /filter add irc_smart * irc_smart_filter * filter all IRC join/part/quit messages: /filter add joinquit * irc_join,irc_part,irc_quit * filter nicks displayed when joining channels or with /names: /filter add nicks * irc_366 * filter nick "toto" on IRC channel #weechat: /filter add toto irc.freenode.#weechat * toto\t keep only nick "titi" on IRC channel #test: /filter add titi irc.freenode.#test * !titi\t filter lines containing word "spam": /filter add filterspam * * spam filter lines containing "weechat sucks" on IRC channel #weechat: /filter add sucks irc.freenode.#weechat * weechat sucks ........................................ • *`/help`* `[command | option]`:: ........................................ display help about commands and options command: a command name option: an option name (use /set to see list) ........................................ • *`/history`* `[clear | value]`:: ........................................ show buffer command history clear: clear history value: number of history entries to show ........................................ • *`/input`* `return | complete_next | complete_previous | search_next | delete_previous_char | delete_next_char | delete_previous_word | delete_next_word | delete_beginning_of_line | delete_end_of_line | delete_line | clipboard_paste | transpose_chars | undo | redo | move_beginning_of_line | move_end_of_line | move_previous_char | move_next_char | move_previous_word | move_next_word | history_previous | history_next | history_global_previous | history_global_next | jump_smart | jump_last_buffer | jump_previously_visited_buffer | jump_next_visited_buffer | hotlist_clear | grab_key | grab_key_command | scroll_unread | set_unread | set_unread_current_buffer | switch_active_buffer | switch_active_buffer_previous | insert [args]`:: ........................................ functions for command line This command is used by key bindings or plugins. ........................................ • *`/key`* `[list | listdefault | listdiff] | [bind key [command [args]]] | [unbind key] | [reset key] | [resetall -yes] | [missing]`:: ........................................ bind/unbind keys list: list all current keys (without argument, this list is displayed) listdefault: list default keys listdiff: list differences between current and default keys (keys added, redefined or deleted) bind: bind a command to a key or display command bound to key unbind: remove a key binding reset: reset a key to default binding resetall: restore bindings to the default values and delete ALL personal bindings (use carefully!) missing: add missing keys (using default bindings), useful after installing new WeeChat version When binding a command to a key, it is recommended to use key alt+k (or Esc then k), and then press the key to bind: this will insert key code in command line. Examples: key alt-x to toggle nicklist bar: /key bind meta-x /bar toggle nicklist key alt-r to jump to #weechat IRC channel: /key bind meta-r /buffer #weechat restore default binding for key alt-r: /key reset meta-r ........................................ • *`/layout`* `[[save | apply | reset] [buffers | windows]]`:: ........................................ save/apply/reset layout for buffers and windows save: save current layout apply: apply saved layout reset: remove saved layout buffers: save/apply only buffers (order of buffers) windows: save/apply only windows (buffer displayed by each window) Without argument, this command displays saved layout. ........................................ • *`/mute`* `[-current | -buffer name | -all] command`:: ........................................ execute a command silently -current: no output on curent buffer -buffer: no output on specified buffer name: full buffer name (examples: "irc.server.freenode", "irc.freenode.#weechat") -all: no output on ALL buffers command: command to execute silently (a '/' is automatically added if not found at beginning of command) If no target is specified (-current, -buffer or -all), then default is to mute WeeChat core buffer only. Examples: config save: /mute save message to current IRC channel: /mute -current msg * hi! message to #weechat channel: /mute -buffer irc.freenode.#weechat msg #weechat hi! ........................................ • *`/plugin`* `[list [name]] | [listfull [name]] | [load filename] | [autoload] | [reload [name]] | [unload [name]]`:: ........................................ list/load/unload plugins list: list loaded plugins listfull: list loaded plugins (verbose) load: load a plugin autoload: autoload plugins in system or user directory reload: reload one plugin (if no name given, unload all plugins, then autoload plugins) unload: unload one or all plugins Without argument, this command lists loaded plugins. ........................................ • *`/proxy`* `[add proxyname type address port [username [password]]] | [del proxyname|-all] | [set proxyname option value] | [list]`:: ........................................ manage proxies add: add a new proxy proxyname: name of proxy (must be unique) type: http, socks4 or socks5 address: IP or hostname port: port username: username (optional) password: password (optional) del: delete a proxy (or all proxies with -all) set: set a value for a proxy property option: option to change (for options list, look at /set weechat.proxy..*) value: new value for option list: list all proxies Examples: create a http proxy, running on local host, port 8888: /proxy add local http 127.0.0.1 8888 create a http proxy using IPv6 protocol: /proxy add local http 127.0.0.1 8888 /proxy set local ipv6 on create a socks5 proxy with username/password: /proxy add myproxy socks5 sample.host.org 3128 myuser mypass delete a proxy: /proxy del myproxy ........................................ • *`/quit`* `[-yes] [arguments]`:: ........................................ quit WeeChat -yes: required if option weechat.look.confirm_quit is enabled arguments: text sent with signal "quit" (for example irc plugin uses this text to send quit message to server) ........................................ • *`/reload`* `[file [file...]]`:: ........................................ reload configuration files from disk file: configuration file to reload Without argument, all files (WeeChat and plugins) are reloaded. ........................................ • *`/save`* `[file [file...]]`:: ........................................ save configuration files to disk file: configuration file to save Without argument, all files (WeeChat and plugins) are saved. ........................................ • *`/set`* `[option [value]]`:: ........................................ set config options option: name of an option value: new value for option New value can be, according to variable type: boolean: on, off or toggle integer: number, ++number or --number string : any string ("" for empty string) color : color name, ++number or --number For all types, you can use null to remove option value (undefined value). This works only for some special plugin variables. ........................................ • *`/unset`* `[option]`:: ........................................ unset/reset config options option: name of an option (may begin or end with "*" to mass-reset options, use carefully!) According to option, it's reset (for standard options) or removed (for optional settings, like server values). ........................................ • *`/upgrade`* `[path_to_binary]`:: ........................................ upgrade WeeChat without disconnecting from servers path_to_binary: path to WeeChat binary (default is current binary) This command run again a WeeChat binary, so it should have been compiled or installed with a package manager before running this command. Upgrade process has 4 steps: 1. save session into files for core and plugins (buffers, history, ..) 2. unload all plugins (configs *.conf are saved) 3. save WeeChat config (weechat.conf) 4. exec new WeeChat binary. ........................................ • *`/uptime`* `[-o | -ol]`:: ........................................ show WeeChat uptime -o: send uptime to current buffer as input (english string) -ol: send uptime to current buffer as input (translated string) ........................................ • *`/version`* `[-o | -ol]`:: ........................................ show WeeChat version and compilation date -o: send version to current buffer as input (english string) -ol: send version to current buffer as input (translated string) ........................................ • *`/wait`* `number[unit] command`:: ........................................ schedule a command execution in future number: amount of time to wait (integer number) unit: optional, values are: ms: milliseconds s: seconds (default) m: minutes h: hours command: command to execute (or text to send to buffer if command does not start with '/') Note: command is executed on buffer where /wait was executed (if buffer is not found (for example if it has been closed before execution of command), then command is executed on WeeChat core buffer). Examples: join channel in 10 sec: /wait 10 /join #test set away in 15 min: /wait 15m /away -all I'm away say 'hello' in 2 min: /wait 2m hello ........................................ • *`/window`* `[list | -1 | +1 | b# | up | down | left | right | splith [pct] | splitv [pct] | resize pct | merge [all] | page_up | page_down | refresh | scroll | scroll_up | scroll_down | scroll_top | scroll_bottom | scroll_previous_highlight | scroll_next_highlight | zoom]`:: ........................................ manage windows list: list opened windows (without argument, this list is displayed) -1: jump to previous window +1: jump to next window b#: jump to next window displaying buffer number # up: switch to window above current one down: switch to window below current one left: switch to window on the left right: switch to window on the right splith: split current window horizontally splitv: split current window vertically resize: resize window size, new size is percentage of parent window merge: merge window with another (all = keep only one window) page_up: scroll one page up page_down: scroll one page down refresh: refresh screen scroll: scroll number of lines (+/-N) or with time: s=seconds, m=minutes, h=hours, d=days, M=months, y=years scroll_up: scroll a few lines up scroll_down: scroll a few lines down scroll_top: scroll to top of buffer scroll_bottom: scroll to bottom of buffer scroll_previous_highlight: scroll to previous highlight scroll_next_highlight: scroll to next highlight zoom: zoom on window For splith and splitv, pct is a percentage which represents size of new window, computed with current window as size reference. For example 25 means create a new window with size = current_size / 4 Examples: jump to window displaying buffer #1: /window b1 scroll 2 lines up: /window scroll -2 scroll 2 days up: /window scroll -2d scroll to beginning of current day: /window scroll -d ........................................