1019 lines
39 KiB
Plaintext
1019 lines
39 KiB
Plaintext
//
|
|
// This file is auto-generated by script docgen.py.
|
|
// DO NOT EDIT BY HAND!
|
|
//
|
|
[[command_weechat_away]]
|
|
* `+away+`: set or remove away status
|
|
|
|
----
|
|
/away [-all] [<message>]
|
|
|
|
-all: set or remove away status on all connected servers
|
|
message: message for away (if no message is given, away status is removed)
|
|
----
|
|
|
|
[[command_weechat_bar]]
|
|
* `+bar+`: manage bars
|
|
|
|
----
|
|
/bar list|listfull|listitems
|
|
add <name> <type>[,<conditions>] <position> <size> <separator> <item1>[,<item2>...]
|
|
default [input|title|status|nicklist]
|
|
del <name>|-all
|
|
set <name> <option> <value>
|
|
hide|show|toggle <name>
|
|
scroll <name> <window> <scroll_value>
|
|
|
|
list: list all bars
|
|
listfull: list all bars (verbose)
|
|
listitems: list all bar items
|
|
add: add a new bar
|
|
name: name of bar (must be unique)
|
|
type: root: outside windows,
|
|
window: inside windows, with optional conditions (see below)
|
|
conditions: the conditions to display the bar:
|
|
active: on active window
|
|
inactive: on inactive windows
|
|
nicklist: on windows with nicklist
|
|
other condition: see /help weechat.bar.xxx.conditions and /help eval
|
|
without conditions, the 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 a default bar (all default bars if no bar name is given)
|
|
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.<barname>.*)
|
|
value: new value for option
|
|
hide: hide a bar
|
|
show: show an hidden bar
|
|
toggle: hide/show a bar
|
|
scroll: scroll bar
|
|
window: window number (use '*' for current window or for root bars)
|
|
scroll_value: value for scroll: 'x' or 'y' (optional), followed by '+', '-', 'b' (beginning) or 'e' (end), value (for +/-), and optional % (to scroll by % of width/height, otherwise value is number of chars)
|
|
|
|
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 to end of nicklist on current buffer:
|
|
/bar scroll nicklist * ye
|
|
----
|
|
|
|
[[command_weechat_buffer]]
|
|
* `+buffer+`: manage buffers
|
|
|
|
----
|
|
/buffer list
|
|
clear [<number>|<name>|-merged|-all [<number>|<name>...]]
|
|
move <number>|-|+
|
|
swap <number1>|<name1> [<number2>|<name2>]
|
|
cycle <number>|<name> [<number>|<name>...]
|
|
merge <number>
|
|
unmerge [<number>|-all]
|
|
hide [<number>|<name>|-all [<number>|<name>...]]
|
|
unhide [<number>|<name>|-all [<number>|<name>...]]
|
|
renumber [<number1> [<number2> [<start>]]]
|
|
close [<n1>[-<n2>]|<name>]
|
|
notify <level>
|
|
localvar
|
|
set <property> <value>
|
|
get <property>
|
|
<number>|-|+|<name>
|
|
|
|
list: list buffers (without argument, this list is displayed)
|
|
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); "-" = move to first buffer number, "+" = move to last buffer number + 1
|
|
swap: swap two buffers (swap with current buffer if only one number/name given)
|
|
cycle: jump loop between a list of buffers
|
|
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
|
|
hide: hide the buffer
|
|
unhide: unhide the buffer
|
|
renumber: renumber buffers (works only if option weechat.look.buffer_auto_renumber is off)
|
|
close: close buffer (number/range or name is optional)
|
|
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"
|
|
-: jump to first buffer number
|
|
+: jump to last buffer number
|
|
name: jump to buffer by (partial) name
|
|
|
|
Examples:
|
|
clear current buffer:
|
|
/buffer clear
|
|
move buffer to number 5:
|
|
/buffer move 5
|
|
swap buffer 1 with 3:
|
|
/buffer swap 1 3
|
|
swap buffer #weechat with current buffer:
|
|
/buffer swap #weechat
|
|
jump on #chan1, #chan2, #chan3 and loop:
|
|
/buffer cycle #chan1 #chan2 #chan3
|
|
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
|
|
jump to last buffer number:
|
|
/buffer +
|
|
----
|
|
|
|
[[command_weechat_color]]
|
|
* `+color+`: define color aliases and display palette of colors
|
|
|
|
----
|
|
/color alias <color> <name>
|
|
unalias <color>
|
|
reset
|
|
term2rgb <color>
|
|
rgb2term <rgb> [<limit>]
|
|
-o
|
|
|
|
alias: add an alias for a color
|
|
unalias: delete an alias
|
|
color: color number (greater than or equal to 0, max depends on terminal, commonly 63 or 255)
|
|
name: alias name for color (for example: "orange")
|
|
reset: reset all color pairs (required when no more color pairs are available if automatic reset is disabled, see option "weechat.look.color_pairs_auto_reset")
|
|
term2rgb: convert a terminal color (0-255) to RGB color
|
|
rgb2term: convert a RGB color to terminal color (0-255)
|
|
limit: number of colors to use in terminal table (starting from 0); default is 256
|
|
-o: send terminal/colors info to current buffer as input
|
|
|
|
Without argument, this command displays colors in a new buffer.
|
|
|
|
Examples:
|
|
add alias "orange" for color 214:
|
|
/color alias 214 orange
|
|
delete color 214:
|
|
/color unalias 214
|
|
----
|
|
|
|
[[command_weechat_command]]
|
|
* `+command+`: launch explicit WeeChat or plugin command
|
|
|
|
----
|
|
/command [-buffer <name>] <plugin> <command>
|
|
|
|
-buffer: execute the command on this buffer
|
|
plugin: execute the command from this plugin; 'core' for a WeeChat command, '*' for automatic plugin (it depends on the buffer where the command is executed)
|
|
command: command to execute (a '/' is automatically added if not found at beginning of command)
|
|
----
|
|
|
|
[[command_weechat_cursor]]
|
|
* `+cursor+`: free movement of cursor on screen to execute actions on specific areas of screen
|
|
|
|
----
|
|
/cursor go chat|<bar>|<x>,<y>
|
|
move up|down|left|right|area_up|area_down|area_left|area_right
|
|
stop
|
|
|
|
go: move cursor to chat area, a bar (using bar name) or coordinates "x,y"
|
|
move: move cursor with direction
|
|
stop: stop cursor mode
|
|
|
|
Without argument, this command toggles cursor mode.
|
|
|
|
When mouse is enabled (see /help mouse), by default a middle click will start cursor mode at this point.
|
|
|
|
Default keys in cursor mode on chat messages:
|
|
m quote message
|
|
q quote prefix + message
|
|
Q quote time + prefix + message
|
|
|
|
Default keys in cursor mode on nicklist:
|
|
b ban nick (/ban)
|
|
k kick nick (/kick)
|
|
K kick and ban nick (/kickban)
|
|
q open query with nick (/query)
|
|
w query information about user (/whois)
|
|
|
|
Examples:
|
|
go to nicklist:
|
|
/cursor go nicklist
|
|
go to coordinates x=10, y=5:
|
|
/cursor go 10,5
|
|
----
|
|
|
|
[[command_weechat_debug]]
|
|
* `+debug+`: debug functions
|
|
|
|
----
|
|
/debug list
|
|
set <plugin> <level>
|
|
dump [<plugin>]
|
|
buffer|color|infolists|memory|tags|term|windows
|
|
mouse|cursor [verbose]
|
|
hdata [free]
|
|
time <command>
|
|
|
|
list: list plugins with debug levels
|
|
set: set debug 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
|
|
color: display infos about current color pairs
|
|
cursor: toggle debug for cursor mode
|
|
dirs: display directories
|
|
hdata: display infos about hdata (with free: remove all hdata in memory)
|
|
hooks: display infos about hooks
|
|
infolists: display infos about infolists
|
|
libs: display infos about external libraries used
|
|
memory: display infos about memory usage
|
|
mouse: toggle debug for mouse
|
|
tags: display tags for lines
|
|
term: display infos about terminal
|
|
windows: display windows tree
|
|
time: measure time to execute a command or to send text to the current buffer
|
|
----
|
|
|
|
[[command_weechat_eval]]
|
|
* `+eval+`: evaluate expression
|
|
|
|
----
|
|
/eval [-n|-s] <expression>
|
|
[-n] -c <expression1> <operator> <expression2>
|
|
|
|
-n: display result without sending it to buffer (debug mode)
|
|
-s: split expression before evaluating it (many commands can be separated by semicolons)
|
|
-c: evaluate as condition: use operators and parentheses, return a boolean value ("0" or "1")
|
|
expression: expression to evaluate, variables with format ${variable} are replaced (see below); many commands can be separated by semicolons
|
|
operator: a logical or comparison operator:
|
|
- logical operators:
|
|
&& boolean "and"
|
|
|| boolean "or"
|
|
- comparison operators:
|
|
== equal
|
|
!= not equal
|
|
<= less or equal
|
|
< less
|
|
>= greater or equal
|
|
> greater
|
|
=~ is matching POSIX extended regex
|
|
!~ is NOT matching POSIX extended regex
|
|
=* is matching mask (wildcard "*" is allowed)
|
|
!* is NOT matching mask (wildcard "*" is allowed)
|
|
|
|
An expression is considered as "true" if it is not NULL, not empty, and different from "0".
|
|
The comparison is made using integers if the two expressions are valid integers.
|
|
To force a string comparison, add double quotes around each expression, for example:
|
|
50 > 100 ==> 0
|
|
"50" > "100" ==> 1
|
|
|
|
Some variables are replaced in expression, using the format ${variable}, variable can be, by order of priority:
|
|
1. an evaluated sub-string (format: "eval:xxx")
|
|
2. a string with escaped chars (format: "esc:xxx" or "\xxx")
|
|
3. a string with chars to hide (format: "hide:char,string")
|
|
4. a string with max chars (format: "cut:max,suffix,string" or "cut:+max,suffix,string")
|
|
or max chars displayed on screen (format: "cutscr:max,suffix,string" or "cutscr:+max,suffix,string")
|
|
5. a color (format: "color:xxx", see "Plugin API reference", function "color")
|
|
6. an info (format: "info:name,arguments", arguments are optional)
|
|
7. current date/time (format: "date" or "date:format")
|
|
8. an environment variable (format: "env:XXX")
|
|
9. a ternary operator (format: "if:condition?value_if_true:value_if_false")
|
|
10. an option (format: "file.section.option")
|
|
11. a local variable in buffer
|
|
12. a hdata name/variable (the value is automatically converted to string), by default "window" and "buffer" point to current window/buffer.
|
|
Format for hdata can be one of following:
|
|
hdata.var1.var2...: start with a hdata (pointer must be known), and ask variables one after one (other hdata can be followed)
|
|
hdata[list].var1.var2...: start with a hdata using a list, for example:
|
|
${buffer[gui_buffers].full_name}: full name of first buffer in linked list of buffers
|
|
${plugin[weechat_plugins].name}: name of first plugin in linked list of plugins
|
|
hdata[pointer].var1.var2...: start with a hdata using a pointer, for example:
|
|
${buffer[0x1234abcd].full_name}: full name of the buffer with this pointer (can be used in triggers)
|
|
For name of hdata and variables, please look at "Plugin API reference", function "weechat_hdata_get".
|
|
|
|
Examples (simple strings):
|
|
/eval -n ${info:version} ==> 0.4.3
|
|
/eval -n ${env:HOME} ==> /home/user
|
|
/eval -n ${weechat.look.scroll_amount} ==> 3
|
|
/eval -n ${window} ==> 0x2549aa0
|
|
/eval -n ${window.buffer} ==> 0x2549320
|
|
/eval -n ${window.buffer.full_name} ==> core.weechat
|
|
/eval -n ${window.buffer.number} ==> 1
|
|
/eval -n ${\t} ==> <tab>
|
|
/eval -n ${hide:-,${relay.network.password}} ==> --------
|
|
/eval -n ${cut:3,+,test} ==> tes+
|
|
/eval -n ${cut:+3,+,test} ==> te+
|
|
/eval -n ${date:%H:%M:%S} ==> 07:46:40
|
|
/eval -n ${if:${info:term_width}>80?big:small} ==> big
|
|
|
|
Examples (conditions):
|
|
/eval -n -c ${window.buffer.number} > 2 ==> 0
|
|
/eval -n -c ${window.win_width} > 100 ==> 1
|
|
/eval -n -c (8 > 12) || (5 > 2) ==> 1
|
|
/eval -n -c (8 > 12) && (5 > 2) ==> 0
|
|
/eval -n -c abcd =~ ^ABC ==> 1
|
|
/eval -n -c abcd =~ (?-i)^ABC ==> 0
|
|
/eval -n -c abcd =~ (?-i)^abc ==> 1
|
|
/eval -n -c abcd !~ abc ==> 0
|
|
/eval -n -c abcd =* a*d ==> 1
|
|
----
|
|
|
|
[[command_weechat_filter]]
|
|
* `+filter+`: filter messages in buffers, to hide/show them according to tags or regex
|
|
|
|
----
|
|
/filter list
|
|
enable|disable|toggle [<name>|@]
|
|
add <name> <buffer>[,<buffer>...] <tags> <regex>
|
|
rename <name> <new_name>
|
|
del <name>|-all
|
|
|
|
list: list all filters
|
|
enable: enable filters (filters are enabled by default)
|
|
disable: disable filters
|
|
toggle: toggle filters
|
|
name: filter name ("@" = enable/disable all filters in current buffer)
|
|
add: add a filter
|
|
rename: rename a filter
|
|
del: delete a filter
|
|
-all: delete all filters
|
|
buffer: comma separated list of buffers where filter is active:
|
|
- this is full name including plugin (example: "irc.freenode.#weechat" or "irc.server.freenode")
|
|
- "*" means all buffers
|
|
- a name starting with '!' is excluded
|
|
- wildcard "*" is allowed
|
|
tags: comma separated list of tags, for example "irc_join,irc_part,irc_quit"
|
|
- logical "and": use "+" between tags (for example: "nick_toto+irc_action")
|
|
- wildcard "*" is allowed
|
|
- if tag starts with '!', then it is excluded and must NOT be in message
|
|
regex: POSIX extended 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 '!')
|
|
- two regular expressions are created: one for prefix and one for message
|
|
- regex are case insensitive, they can start by "(?-i)" to become case sensitive
|
|
|
|
The default key alt+'=' toggles filtering on/off.
|
|
|
|
Tags most commonly used:
|
|
no_filter, no_highlight, no_log, log0..log9 (log level),
|
|
notify_none, notify_message, notify_private, notify_highlight,
|
|
self_msg, nick_xxx (xxx is nick in message), prefix_nick_ccc (ccc is color of nick),
|
|
host_xxx (xxx is username + host in message),
|
|
irc_xxx (xxx is command name or number, see /server raw or /debug tags),
|
|
irc_numeric, irc_error, irc_action, irc_ctcp, irc_ctcp_reply, irc_smart_filter, away_info.
|
|
To see tags for lines in buffers: /debug tags
|
|
|
|
Examples:
|
|
use IRC smart filter on all buffers:
|
|
/filter add irc_smart * irc_smart_filter *
|
|
use IRC smart filter on all buffers except those with "#weechat" in name:
|
|
/filter add irc_smart *,!*#weechat* 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 nick_toto *
|
|
filter IRC join/action messages from nick "toto":
|
|
/filter add toto * nick_toto+irc_join,nick_toto+irc_action *
|
|
filter lines containing "weechat sucks" on IRC channel #weechat:
|
|
/filter add sucks irc.freenode.#weechat * weechat sucks
|
|
filter lines that are strictly equal to "WeeChat sucks" on all buffers:
|
|
/filter add sucks2 * * (?-i)^WeeChat sucks$
|
|
----
|
|
|
|
[[command_weechat_help]]
|
|
* `+help+`: display help about commands and options
|
|
|
|
----
|
|
/help -list|-listfull [<plugin> [<plugin>...]]
|
|
<command>
|
|
<option>
|
|
|
|
-list: list commands, by plugin (without argument, this list is displayed)
|
|
-listfull: list commands with description, by plugin
|
|
plugin: list commands for this plugin
|
|
command: a command name
|
|
option: an option name (use /set to see list)
|
|
----
|
|
|
|
[[command_weechat_history]]
|
|
* `+history+`: show buffer command history
|
|
|
|
----
|
|
/history clear
|
|
<value>
|
|
|
|
clear: clear history
|
|
value: number of history entries to show
|
|
----
|
|
|
|
[[command_weechat_input]]
|
|
* `+input+`: functions for command line
|
|
|
|
----
|
|
/input <action> [<arguments>]
|
|
|
|
list of actions:
|
|
return: simulate key "enter"
|
|
complete_next: complete word with next completion
|
|
complete_previous: complete word with previous completion
|
|
search_text_here: search text in buffer at current position
|
|
search_text: search text in buffer
|
|
search_switch_case: switch exact case for search
|
|
search_switch_regex: switch search type: string/regular expression
|
|
search_switch_where: switch search in messages/prefixes
|
|
search_previous: search previous line
|
|
search_next: search next line
|
|
search_stop_here: stop search at current position
|
|
search_stop: stop search
|
|
delete_previous_char: delete previous char
|
|
delete_next_char: delete next char
|
|
delete_previous_word: delete previous word
|
|
delete_next_word: delete next word
|
|
delete_beginning_of_line: delete from beginning of line until cursor
|
|
delete_end_of_line: delete from cursor until end of line
|
|
delete_line: delete entire line
|
|
clipboard_paste: paste from the internal clipboard
|
|
transpose_chars: transpose two chars
|
|
undo: undo last command line action
|
|
redo: redo last command line action
|
|
move_beginning_of_line: move cursor to beginning of line
|
|
move_end_of_line: move cursor to end of line
|
|
move_previous_char: move cursor to previous char
|
|
move_next_char: move cursor to next char
|
|
move_previous_word: move cursor to previous word
|
|
move_next_word: move cursor to next word
|
|
history_previous: recall previous command in current buffer history
|
|
history_next: recall next command in current buffer history
|
|
history_global_previous: recall previous command in global history
|
|
history_global_next: recall next command in global history
|
|
jump_smart: jump to next buffer with activity
|
|
jump_last_buffer_displayed: jump to last buffer displayed (before last jump to a buffer)
|
|
jump_previously_visited_buffer: jump to previously visited buffer
|
|
jump_next_visited_buffer: jump to next visited buffer
|
|
hotlist_clear: clear hotlist (optional argument: "lowest" to clear only lowest level in hotlist, "highest" to clear only highest level in hotlist, or level mask: integer which is a combination of 1=join/part, 2=message, 4=private, 8=highlight)
|
|
grab_key: grab a key (optional argument: delay for end of grab, default is 500 milliseconds)
|
|
grab_key_command: grab a key with its associated command (optional argument: delay for end of grab, default is 500 milliseconds)
|
|
grab_mouse: grab mouse event code
|
|
grab_mouse_area: grab mouse event code with area
|
|
set_unread: set unread marker for all buffers
|
|
set_unread_current_buffer: set unread marker for current buffer
|
|
switch_active_buffer: switch to next merged buffer
|
|
switch_active_buffer_previous: switch to previous merged buffer
|
|
zoom_merged_buffer: zoom on merged buffer
|
|
insert: insert text in command line (escaped chars are allowed, see /help print)
|
|
send: send text to the buffer
|
|
paste_start: start paste (bracketed paste mode)
|
|
paste_stop: stop paste (bracketed paste mode)
|
|
|
|
This command is used by key bindings or plugins.
|
|
----
|
|
|
|
[[command_weechat_key]]
|
|
* `+key+`: bind/unbind keys
|
|
|
|
----
|
|
/key list|listdefault|listdiff [<context>]
|
|
bind <key> [<command> [<args>]]
|
|
bindctxt <context> <key> [<command> [<args>]]
|
|
unbind <key>
|
|
unbindctxt <context> <key>
|
|
reset <key>
|
|
resetctxt <context> <key>
|
|
resetall -yes [<context>]
|
|
missing [<context>]
|
|
|
|
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)
|
|
context: name of context ("default" or "search")
|
|
bind: bind a command to a key or display command bound to key (for context "default")
|
|
bindctxt: bind a command to a key or display command bound to key, for given context
|
|
command: command (many commands can be separated by semicolons)
|
|
unbind: remove a key binding (for context "default")
|
|
unbindctxt: remove a key binding for given context
|
|
reset: reset a key to default binding (for context "default")
|
|
resetctxt: reset a key to default binding, for given context
|
|
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.
|
|
|
|
For context "mouse" (possible in context "cursor" too), key has format: "@area:key" or "@area1>area2:key" where area can be:
|
|
*: any area on screen
|
|
chat: chat area (any buffer)
|
|
chat(xxx): char area for buffer with name "xxx" (full name including plugin)
|
|
bar(*): any bar
|
|
bar(xxx): bar "xxx"
|
|
item(*): any bar item
|
|
item(xxx): bar item "xxx"
|
|
Wildcard "*" is allowed in key to match many mouse events.
|
|
A special value for command with format "hsignal:name" can be used for context mouse, this will send the hsignal "name" with the focus hashtable as argument.
|
|
Another special value "-" can be used to disable key (it will be ignored when looking for keys).
|
|
|
|
Examples:
|
|
key alt-t to toggle nicklist bar:
|
|
/key bind meta-t /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
|
|
key "tab" to stop search in buffer:
|
|
/key bindctxt search ctrl-I /input search_stop
|
|
middle button of mouse on a nick to retrieve info on nick:
|
|
/key bindctxt mouse @item(buffer_nicklist):button3 /msg nickserv info ${nick}
|
|
----
|
|
|
|
[[command_weechat_layout]]
|
|
* `+layout+`: manage buffers/windows layouts
|
|
|
|
----
|
|
/layout store [<name>] [buffers|windows]
|
|
apply [<name>] [buffers|windows]
|
|
leave
|
|
del [<name>] [buffers|windows]
|
|
rename <name> <new_name>
|
|
|
|
store: store current buffers/windows in a layout
|
|
apply: apply stored layout
|
|
leave: leave current layout (does not update any layout)
|
|
del: delete buffers and/or windows in a stored layout
|
|
(if neither "buffers" nor "windows" is given after the name, the layout is deleted)
|
|
rename: rename a layout
|
|
name: name for stored layout (default is "default")
|
|
buffers: store/apply only buffers (order of buffers)
|
|
windows: store/apply only windows (buffer displayed by each window)
|
|
|
|
Without argument, this command displays stored layouts.
|
|
|
|
The current layout can be saved on /quit command with the option "weechat.look.save_layout_on_exit".
|
|
----
|
|
|
|
[[command_weechat_mouse]]
|
|
* `+mouse+`: mouse control
|
|
|
|
----
|
|
/mouse enable|disable|toggle [<delay>]
|
|
|
|
enable: enable mouse
|
|
disable: disable mouse
|
|
toggle: toggle mouse
|
|
delay: delay (in seconds) after which initial mouse state is restored (useful to temporarily disable mouse)
|
|
|
|
The mouse state is saved in option "weechat.look.mouse".
|
|
|
|
Examples:
|
|
enable mouse:
|
|
/mouse enable
|
|
toggle mouse for 5 seconds:
|
|
/mouse toggle 5
|
|
----
|
|
|
|
[[command_weechat_mute]]
|
|
* `+mute+`: execute a command silently
|
|
|
|
----
|
|
/mute [-core | -current | -buffer <name>] <command>
|
|
|
|
-core: no output on WeeChat core buffer
|
|
-current: no output on current buffer
|
|
-buffer: no output on specified buffer
|
|
name: full buffer name (examples: "irc.server.freenode", "irc.freenode.#weechat")
|
|
command: command to execute silently (a '/' is automatically added if not found at beginning of command)
|
|
|
|
If no target is specified (-core, -current or -buffer), then default is to mute all buffers.
|
|
|
|
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!
|
|
----
|
|
|
|
[[command_weechat_plugin]]
|
|
* `+plugin+`: list/load/unload plugins
|
|
|
|
----
|
|
/plugin list|listfull [<name>]
|
|
load <filename> [<arguments>]
|
|
autoload [<arguments>]
|
|
reload [<name>|* [<arguments>]]
|
|
unload [<name>]
|
|
|
|
list: list loaded plugins
|
|
listfull: list loaded plugins (verbose)
|
|
load: load a plugin
|
|
autoload: autoload plugins in system or user directory
|
|
reload: reload a plugin (if no name given, unload all plugins, then autoload plugins)
|
|
unload: unload a plugin (if no name given, unload all plugins)
|
|
filename: plugin (file) to load
|
|
name: a plugin name
|
|
arguments: arguments given to plugin on load
|
|
|
|
Without argument, this command lists loaded plugins.
|
|
----
|
|
|
|
[[command_weechat_print]]
|
|
* `+print+`: display text on a buffer
|
|
|
|
----
|
|
/print [-buffer <number>|<name>] [-core] [-escape] [-date <date>] [-tags <tags>] [-action|-error|-join|-network|-quit] [<text>]
|
|
-stdout|-stderr [<text>]
|
|
-beep
|
|
|
|
-buffer: display text in this buffer (default: buffer where command is executed)
|
|
-core: alias of "-buffer core.weechat"
|
|
-current: display text on current buffer
|
|
-escape: interpret escaped chars (for example \a, \07, \x07)
|
|
-date: message date, format can be:
|
|
-n: 'n' seconds before now
|
|
+n: 'n' seconds in the future
|
|
n: 'n' seconds since the Epoch (see man time)
|
|
date/time (ISO 8601): yyyy-mm-ddThh:mm:ss, example: 2014-01-19T04:32:55
|
|
time: hh:mm:ss (example: 04:32:55)
|
|
-tags: comma-separated list of tags (see /help filter for a list of tags most commonly used)
|
|
text: text to display (prefix and message must be separated by "\t", if text starts with "-", then add a "\" before)
|
|
-stdout: display text on stdout (escaped chars are interpreted)
|
|
-stderr: display text on stderr (escaped chars are interpreted)
|
|
-beep: alias of "-stderr \a"
|
|
|
|
The options -action ... -quit use the prefix defined in options "weechat.look.prefix_*".
|
|
|
|
Following escaped chars are supported:
|
|
\" \\ \a \b \e \f \n \r \t \v \0ooo \xhh \uhhhh \Uhhhhhhhh
|
|
|
|
Examples:
|
|
display a reminder on core buffer with a highlight:
|
|
/print -core -tags notify_highlight Reminder: buy milk
|
|
display an error on core buffer:
|
|
/print -core -error Some error here
|
|
display message on core buffer with prefix "abc":
|
|
/print -core abc\tThe message
|
|
display a message on channel #weechat:
|
|
/print -buffer irc.freenode.#weechat Message on #weechat
|
|
display a snowman (U+2603):
|
|
/print -escape \u2603
|
|
send alert (BEL):
|
|
/print -beep
|
|
----
|
|
|
|
[[command_weechat_proxy]]
|
|
* `+proxy+`: manage proxies
|
|
|
|
----
|
|
/proxy list
|
|
add <name> <type> <address> <port> [<username> [<password>]]
|
|
del <name>|-all
|
|
set <name> <option> <value>
|
|
|
|
list: list all proxies
|
|
add: add a new proxy
|
|
name: 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.<proxyname>.*)
|
|
value: new value for option
|
|
|
|
Examples:
|
|
add a http proxy, running on local host, port 8888:
|
|
/proxy add local http 127.0.0.1 8888
|
|
add a http proxy using IPv6 protocol:
|
|
/proxy add local http ::1 8888
|
|
/proxy set local ipv6 on
|
|
add a socks5 proxy with username/password:
|
|
/proxy add myproxy socks5 sample.host.org 3128 myuser mypass
|
|
delete a proxy:
|
|
/proxy del myproxy
|
|
----
|
|
|
|
[[command_weechat_quit]]
|
|
* `+quit+`: quit WeeChat
|
|
|
|
----
|
|
/quit [-yes] [<arguments>]
|
|
|
|
-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)
|
|
|
|
By default when quitting the configuration files are saved (see option "weechat.look.save_config_on_exit") and the current layout can be saved (see option "weechat.look.save_layout_on_exit").
|
|
----
|
|
|
|
[[command_weechat_reload]]
|
|
* `+reload+`: reload configuration files from disk
|
|
|
|
----
|
|
/reload [<file> [<file>...]]
|
|
|
|
file: configuration file to reload (without extension ".conf")
|
|
|
|
Without argument, all files (WeeChat and plugins) are reloaded.
|
|
----
|
|
|
|
[[command_weechat_repeat]]
|
|
* `+repeat+`: execute a command several times
|
|
|
|
----
|
|
/repeat [-interval <delay>] <count> <command>
|
|
|
|
delay: delay between execution of commands (in milliseconds)
|
|
count: number of times to execute command
|
|
command: command to execute (a '/' is automatically added if not found at beginning of command)
|
|
|
|
All commands are executed on buffer where this command was issued.
|
|
|
|
Example:
|
|
scroll 2 pages up:
|
|
/repeat 2 /window page_up
|
|
----
|
|
|
|
[[command_weechat_save]]
|
|
* `+save+`: save configuration files to disk
|
|
|
|
----
|
|
/save [<file> [<file>...]]
|
|
|
|
file: configuration file to save (without extension ".conf")
|
|
|
|
Without argument, all files (WeeChat and plugins) are saved.
|
|
|
|
By default all configuration files are saved to disk on /quit command (see option "weechat.look.save_config_on_exit").
|
|
----
|
|
|
|
[[command_weechat_secure]]
|
|
* `+secure+`: manage secured data (passwords or private data encrypted in file sec.conf)
|
|
|
|
----
|
|
/secure passphrase <passphrase>|-delete
|
|
decrypt <passphrase>|-discard
|
|
set <name> <value>
|
|
del <name>
|
|
|
|
passphrase: change the passphrase (without passphrase, data is stored as plain text in file sec.conf)
|
|
-delete: delete passphrase
|
|
decrypt: decrypt data still encrypted (it happens only if passphrase was not given on startup)
|
|
-discard: discard all data still encrypted
|
|
set: add or change secured data
|
|
del: delete secured data
|
|
|
|
Without argument, this command displays secured data in a new buffer.
|
|
|
|
Keys on secure buffer:
|
|
alt+v toggle values
|
|
|
|
When a passphrase is used (data encrypted), it is asked by WeeChat on startup.
|
|
It is possible to set environment variable "WEECHAT_PASSPHRASE" to prevent the prompt (this same variable is used by WeeChat on /upgrade).
|
|
|
|
Secured data with format ${sec.data.xxx} can be used in:
|
|
- command /eval
|
|
- command line argument "--run-command"
|
|
- options weechat.startup.command_{before|after}_plugins
|
|
- other options that may contain a password or sensitive data (for example proxy, irc server and relay); see /help on the options to check if they are evaluated.
|
|
|
|
Examples:
|
|
set a passphrase:
|
|
/secure passphrase this is my passphrase
|
|
encrypt freenode SASL password:
|
|
/secure set freenode mypassword
|
|
/set irc.server.freenode.sasl_password "${sec.data.freenode}"
|
|
encrypt oftc password for nickserv:
|
|
/secure set oftc mypassword
|
|
/set irc.server.oftc.command "/msg nickserv identify ${sec.data.oftc}"
|
|
alias to ghost the nick "mynick":
|
|
/alias add ghost /eval /msg -server freenode nickserv ghost mynick ${sec.data.freenode}
|
|
----
|
|
|
|
[[command_weechat_set]]
|
|
* `+set+`: set config options and environment variables
|
|
|
|
----
|
|
/set [<option> [<value>]]
|
|
diff [<option> [<option>...]]
|
|
env [<variable> [<value>]]
|
|
|
|
option: name of an option (wildcard "*" is allowed)
|
|
value: new value for option, according to type:
|
|
boolean: on, off or toggle
|
|
integer: number, ++number or --number
|
|
string: any string ("" for empty string)
|
|
color: color name, ++number or --number
|
|
Note: for all types, you can use null to remove option value (undefined value). This works only for some special plugin variables.
|
|
diff: display only changed options
|
|
env: display or set an environment variable (use value "" to unset a variable)
|
|
|
|
Examples:
|
|
display options about highlight:
|
|
/set *highlight*
|
|
add a word to highlight:
|
|
/set weechat.look.highlight "word"
|
|
display changed options:
|
|
/set diff
|
|
display changed options in irc plugin:
|
|
/set diff irc.*
|
|
display value of environment variable LANG:
|
|
/set env LANG
|
|
set environment variable LANG and use it:
|
|
/set env LANG fr_FR.UTF-8
|
|
/upgrade
|
|
unset environment variable ABC:
|
|
/set env ABC ""
|
|
----
|
|
|
|
[[command_weechat_unset]]
|
|
* `+unset+`: unset/reset config options
|
|
|
|
----
|
|
/unset <option>
|
|
-mask <option>
|
|
|
|
option: name of an option
|
|
-mask: use a mask in option (wildcard "*" is allowed to mass-reset options, use carefully!)
|
|
|
|
According to option, it's reset (for standard options) or removed (for optional settings, like server values).
|
|
|
|
Examples:
|
|
reset one option:
|
|
/unset weechat.look.item_time_format
|
|
reset all color options:
|
|
/unset -mask weechat.color.*
|
|
----
|
|
|
|
[[command_weechat_upgrade]]
|
|
* `+upgrade+`: upgrade WeeChat without disconnecting from servers
|
|
|
|
----
|
|
/upgrade [-yes] [<path_to_binary>|-quit]
|
|
|
|
-yes: required if option "weechat.look.confirm_upgrade" is enabled
|
|
path_to_binary: path to WeeChat binary (default is current binary)
|
|
-dummy: do nothing (option used to prevent accidental completion with "-quit")
|
|
-quit: close *ALL* connections, save session and quit WeeChat, which makes possible a delayed restoration (see below)
|
|
|
|
This command upgrades and reloads a running WeeChat session. The new WeeChat binary must have been compiled or installed with a package manager before running this command.
|
|
|
|
Note: SSL connections are lost during upgrade, because reload of SSL sessions is currently not possible with GnuTLS. There is automatic reconnection after upgrade.
|
|
|
|
Upgrade process has 4 steps:
|
|
1. save session into files for core and plugins (buffers, history, ..)
|
|
2. unload all plugins (configuration files (*.conf) are written on disk)
|
|
3. save WeeChat configuration (weechat.conf)
|
|
4. execute new WeeChat binary and reload session.
|
|
|
|
With option "-quit", the process is slightly different:
|
|
1. close *ALL* connections (irc, xfer, relay, ...)
|
|
2. save session into files (*.upgrade)
|
|
3. unload all plugins
|
|
4. save WeeChat configuration
|
|
5. quit WeeChat
|
|
Then later you can restore session with command: weechat --upgrade
|
|
IMPORTANT: you must restore the session with exactly same configuration (files *.conf).
|
|
It is possible to restore WeeChat session on another machine if you copy the content of directory "~/.weechat".
|
|
----
|
|
|
|
[[command_weechat_uptime]]
|
|
* `+uptime+`: show WeeChat uptime
|
|
|
|
----
|
|
/uptime [-o | -ol]
|
|
|
|
-o: send uptime to current buffer as input (English string)
|
|
-ol: send uptime to current buffer as input (translated string)
|
|
----
|
|
|
|
[[command_weechat_version]]
|
|
* `+version+`: show WeeChat version and compilation date
|
|
|
|
----
|
|
/version [-o | -ol]
|
|
|
|
-o: send version to current buffer as input (English string)
|
|
-ol: send version to current buffer as input (translated string)
|
|
|
|
The default alias /v can be used to execute this command on all buffers (otherwise the irc command /version is used on irc buffers).
|
|
----
|
|
|
|
[[command_weechat_wait]]
|
|
* `+wait+`: schedule a command execution in future
|
|
|
|
----
|
|
/wait <number>[<unit>] <command>
|
|
|
|
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 seconds:
|
|
/wait 10 /join #test
|
|
set away in 15 minutes:
|
|
/wait 15m /away -all I'm away
|
|
say 'hello' in 2 minutes:
|
|
/wait 2m hello
|
|
----
|
|
|
|
[[command_weechat_window]]
|
|
* `+window+`: manage windows
|
|
|
|
----
|
|
/window list
|
|
-1|+1|b#|up|down|left|right [-window <number>]
|
|
<number>
|
|
splith|splitv [-window <number>] [<pct>]
|
|
resize [-window <number>] [h|v][+|-]<pct>
|
|
balance
|
|
merge [-window <number>] [all]
|
|
page_up|page_down [-window <number>]
|
|
refresh
|
|
scroll [-window <number>] [+|-]<value>[s|m|h|d|M|y]
|
|
scroll_horiz [-window <number>] [+|-]<value>[%]
|
|
scroll_up|scroll_down|scroll_top|scroll_bottom|scroll_beyond_end|scroll_previous_highlight|scroll_next_highlight|scroll_unread [-window <number>]
|
|
swap [-window <number>] [up|down|left|right]
|
|
zoom [-window <number>]
|
|
bare [<delay>]
|
|
|
|
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
|
|
number: window number (see /window list)
|
|
splith: split current window horizontally (to undo: /window merge)
|
|
splitv: split current window vertically (to undo: /window merge)
|
|
resize: resize window size, new size is <pct> percentage of parent window
|
|
if "h" or "v" is specified, the resize affects the nearest parent window with a split of this type (horizontal/vertical)
|
|
balance: balance the sizes of all windows
|
|
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 a number of lines (+/-N) or with time: s=seconds, m=minutes, h=hours, d=days, M=months, y=years
|
|
scroll_horiz: scroll horizontally a number of columns (+/-N) or percentage of window size (this scrolling is possible only on buffers with free content)
|
|
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_beyond_end: scroll beyond the end of buffer
|
|
scroll_previous_highlight: scroll to previous highlight
|
|
scroll_next_highlight: scroll to next highlight
|
|
scroll_unread: scroll to unread marker
|
|
swap: swap buffers of two windows (with optional direction for target window)
|
|
zoom: zoom on window
|
|
bare: toggle bare display (with optional delay in seconds for automatic return to standard display mode)
|
|
|
|
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
|
|
zoom on window #2:
|
|
/window zoom -window 2
|
|
split window horizontally using 30% of space for the window on top:
|
|
/window splith 30
|
|
resize window to 75% of the parent window size:
|
|
/window resize 75
|
|
resize vertical split, add 10% in size:
|
|
/window resize v+10
|
|
remove the split:
|
|
/window merge
|
|
enable bare display for 2 seconds:
|
|
/window bare 2
|
|
----
|