WeeChat commands

alias [alias_name [command [arguments]]]

create an alias for a command

alias_name: name of alias
   command: command name (WeeChat or IRC command, many commands can be separated by semicolons)
 arguments: arguments for command

is replaced by all arguments.

Variables $nick, $channel and $server are replaced by current nick/channel/server.

buffer [action [args] | number | [[server] [channel]]]

manage buffers

 action: action to do:
   move: move buffer in the list (may be relative, for example -1)
  close: close buffer (optional arg is part message, for a channel)
   list: list open buffers (no parameter implies this list)
 notify: set notify level for buffer (0=never, 1=highlight, 2=1+msg, 3=2+join/part)
         (when executed on server buffer, this sets default notify level for whole server)
 scroll: scroll in history (may be relative, and may end by a letter: s=sec, m=min, h=hour, d=day, M=month, y=year); if there is only letter, then scroll to beginning of this item

 number: jump to buffer by number
server,
channel: jump to buffer by server and/or channel name

Examples:
        move buffer: /buffer move 5
       close buffer: /buffer close this is part msg
         set notify: /buffer notify 2
    scroll 1 day up: /buffer scroll 1d  ==  /buffer scroll -1d  ==  /buffer scroll -24h
scroll to beginning
        of this day: /buffer scroll d
 scroll 15 min down: /buffer scroll +15m
  scroll 20 msgs up: /buffer scroll -20
   jump to #weechat: /buffer #weechat

builtin command

launch WeeChat/IRC builtin command (do not look at plugins handlers or aliases)

command: command to execute (a '/' is automatically added if not found at beginning of command)


clear [-all | number [number ...]]

clear window(s)

  -all: clear all buffers
number: clear buffer by number

connect [-all [-nojoin] | servername [servername ...] [-nojoin] | hostname [-port port] [-ipv6] [-ssl]]

connect to server(s)

      -all: connect to all servers
servername: internal server name to connect
   -nojoin: do not join any channel (even if autojoin is enabled on server)
  hostname: hostname to connect, creating temporary server
      port: port for server (integer, default is 6667)
      ipv6: use IPv6 protocol
       ssl: use SSL protocol

disconnect [-all | servername [servername ...]]

disconnect from server(s)

      -all: disconnect from all servers
servername: server name to disconnect

dcc action [nickname [file]]

starts DCC (file or chat) or close chat

  action: 'send' (file) or 'chat' or 'close' (chat)
nickname: nickname to send file or chat
    file: filename (on local host)

debug dump | buffer | windows

print debug messages

   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

help [command]

display help about commands

command: name of a WeeChat or IRC command

history [clear | value]

show buffer command history

clear: clear history
value: number of history entries to show

ignore [mask [[type | command] [channel [server]]]]

ignore IRC messages and/or hosts

   mask: nick or host mask to ignore
   type: type of message to ignore (action, ctcp, dcc, pv)
command: IRC command
channel: name of channel for ignore
 server: name of server for ignore

For each argument, '*' means all.
Without argument, /ignore command lists all defined ignore.

key [key [function/command]] [unbind key] [functions] [call function ["args"]] [reset -yes]

bind/unbind keys

      key: display or bind this key to an internal function or a command (beginning by "/")
   unbind: unbind a key
functions: list internal functions for key bindings
     call: call a function by name (with optional arguments)
    reset: restore bindings to the default values and delete ALL personal bindings (use carefully!)

plugin [list [name]] | [listfull [name]] | [load filename] | [autoload] | [reload [name]] | [unload [name]]

list/load/unload plugins

    list: list loaded plugins
listfull: list loaded plugins with detailed info for each plugin
    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, /plugin command lists loaded plugins.

reconnect [-all [-nojoin] | servername [servername ...] [-nojoin]]

reconnect to server(s)

      -all: reconnect to all servers
servername: server name to reconnect
   -nojoin: do not join any channel (even if autojoin is enabled on server)

save [file]

save config to disk

file: filename for writing config

server [list [servername]] | [listfull [servername]] | [add servername hostname [-port port] [-temp] [-auto | -noauto] [-ipv6] [-ssl] [-pwd password] [-nicks nick1 nick2 nick3] [-username username] [-realname realname] [-command command] [-autojoin channel[,channel]] ] | [copy servername newservername] | [rename servername newservername] | [keep servername] | [del servername]

list, add or remove servers

      list: list servers (no parameter implies this list)
  listfull: list servers with detailed info for each server
       add: create a new server
servername: server name, for internal and display use
  hostname: name or IP address of server
      port: port for server (integer, default is 6667)
      temp: create temporary server (not saved in config file)
      auto: automatically connect to server when WeeChat starts
    noauto: do not connect to server when WeeChat starts (default)
      ipv6: use IPv6 protocol
       ssl: use SSL protocol
  password: password for server
     nick1: first nick for server
     nick2: alternate nick for server
     nick3: second alternate nick for server
  username: user name
  realname: real name of user
      copy: duplicate a server
    rename: rename a server
      keep: keep server in config file (for temporary servers only)
       del: delete a server
   deloutq: delete messages out queue for all servers (all messages WeeChat is currently sending)

set [option [ = value]]

set config options

option: name of an option (if name is full and no value is given, then help is displayed on option)
 value: value for option

Option may be: servername.server_xxx where "servername" is an internal server name and "xxx" an option for this server.

setp [option [ = value]]

set plugin config options

option: name of a plugin option
 value: value for option

Option is format: plugin.option, example: perl.myscript.item1

unalias alias_name

remove an alias

alias_name: name of alias to remove

unignore [number | [mask [[type | command] [channel [server]]]]]

unignore IRC messages and/or hosts

 number: # of ignore to unignore (number is displayed by list of ignore)
   mask: nick or host mask to unignore
   type: type of message to unignore (action, ctcp, dcc, pv)
command: IRC command
channel: name of channel for unignore
 server: name of server for unignore

For each argument, '*' means all.
Without argument, /unignore command lists all defined ignore.

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.

uptime [-o]

show WeeChat uptime

-o: send uptime on current channel as an IRC message

window [list | -1 | +1 | b# | up | down | left | right | splith [pct] | splitv [pct] | resize pct | merge [all]]

manage windows

  list: list open windows (no parameter implies this list)
    -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 <pct> pourcentage of parent window
 merge: merge window with another (all = keep only one window)

For splith and splitv, pct is a pourcentage 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