weechat/doc/en/autogen/user/irc_commands.txt

795 lines
25 KiB
Plaintext

[[command_irc_admin]]
[command]*`admin`* find information about the administrator of the server::
........................................
/admin [<target>]
target: server
........................................
[[command_irc_allchan]]
[command]*`allchan`* execute a command on all channels of all connected servers::
........................................
/allchan [-current] [-exclude=<channel>[,<channel>...]] <command> [<arguments>]
-current: execute command for channels of current server only
-exclude: exclude some channels ('*' is allowed at beginning or end of channel name, to exclude many channels)
command: command to execute
arguments: arguments for command (special variables $nick, $channel and $server are replaced by their value)
Examples:
execute '/me is testing' on all channels:
/allchan me is testing
say 'hello' everywhere but not on #weechat:
/allchan -exclude=#weechat msg * hello
say 'hello' everywhere but not on #weechat and channels beginning with #linux:
/allchan -exclude=#weechat,#linux* msg * hello
........................................
[[command_irc_allserv]]
[command]*`allserv`* execute a command on all connected servers::
........................................
/allserv [-exclude=<server>[,<server>...]] <command> [<arguments>]
-exclude: exclude some servers ('*' is allowed at beginning or end of server name, to exclude many servers)
command: command to execute
arguments: arguments for command (special variables $nick, $channel and $server are replaced by their value)
Examples:
change nick on all servers:
/allserv nick newnick
set away on all servers:
/allserv away I'm away
do a whois on my nick on all servers:
/allserv whois $nick
........................................
[[command_irc_ban]]
[command]*`ban`* ban nicks or hosts::
........................................
/ban [<channel>] [<nick> [<nick>...]]
channel: channel for ban
nick: user or host to ban
Without argument, this command display ban list for current channel.
........................................
[[command_irc_connect]]
[command]*`connect`* connect to IRC server(s)::
........................................
/connect <server> [<server>...] [-<option>[=<value>]] [-no<option>] [-nojoin] [-switch]
-all|-auto|-open [-nojoin] [-switch]
server: server name, which can be:
- internal server name (created by /server add, recommended usage)
- hostname/port or IP/port (this will create a TEMPORARY server), port is 6667 by default
- URL with format: irc[6][s]://[nickname[:password]@]irc.example.org[:port][/#channel1][,#channel2[...]]
option: set option for server (for boolean option, value can be omitted)
nooption: set boolean option to 'off' (for example: -nossl)
-all: connect to all servers defined in configuration
-auto: connect to servers with autoconnect enabled
-open: connect to all opened servers that are not currently connected
-nojoin: do not join any channel (even if autojoin is enabled on server)
-switch: switch to next server address
Examples:
/connect freenode
/connect irc.oftc.net/6667
/connect irc6.oftc.net/6667 -ipv6
/connect irc6.oftc.net/6697 -ipv6 -ssl
/connect my.server.org/6697 -ssl -password=test
/connect irc://nick@irc.oftc.net/#channel
/connect -switch
........................................
[[command_irc_ctcp]]
[command]*`ctcp`* send a CTCP message (Client-To-Client Protocol)::
........................................
/ctcp <target> <type> [<arguments>]
target: nick or channel to send CTCP to
type: CTCP type (examples: "version", "ping", ..)
arguments: arguments for CTCP
........................................
[[command_irc_cycle]]
[command]*`cycle`* leave and rejoin a channel::
........................................
/cycle [<channel>[,<channel>...]] [<message>]
channel: channel name for cycle
message: part message (displayed to other users)
........................................
[[command_irc_dcc]]
[command]*`dcc`* start a DCC (file transfer or direct chat)::
........................................
/dcc chat <nick>
send <nick> <file>
nick: nick for chat or file
file: filename (on local host)
Examples:
chat with nick "toto":
/dcc chat toto
send file "/home/foo/bar.txt" to nick "toto":
/dcc send toto /home/foo/bar.txt
........................................
[[command_irc_dehalfop]]
[command]*`dehalfop`* remove channel half-operator status from nick(s)::
........................................
/dehalfop <nick> [<nick>...]
nick: nick or mask (can start or end with "*" as wildcard)
*: remove channel half-operator status from everybody on channel except yourself
........................................
[[command_irc_deop]]
[command]*`deop`* remove channel operator status from nick(s)::
........................................
/deop <nick> [<nick>...]
* -yes
nick: nick or mask (can start or end with "*" as wildcard)
*: remove channel operator status from everybody on channel except yourself
........................................
[[command_irc_devoice]]
[command]*`devoice`* remove voice from nick(s)::
........................................
/devoice <nick> [<nick>...]
* -yes
nick: nick or mask (can start or end with "*" as wildcard)
*: remove voice from everybody on channel
........................................
[[command_irc_die]]
[command]*`die`* shutdown the server::
........................................
/die [<target>]
target: server name
........................................
[[command_irc_disconnect]]
[command]*`disconnect`* disconnect from one or all IRC servers::
........................................
/disconnect [<server>|-all|-pending [<reason>]]
server: server name to disconnect
-all: disconnect from all servers
-pending: cancel auto-reconnection on servers currently reconnecting
reason: reason for quit
........................................
[[command_irc_halfop]]
[command]*`halfop`* give channel half-operator status to nick(s)::
........................................
/halfop <nick> [<nick>...]
* -yes
nick: nick or mask (can start or end with "*" as wildcard)
*: give channel half-operator status to everybody on channel
........................................
[[command_irc_ignore]]
[command]*`ignore`* ignore nicks/hosts from servers or channels::
........................................
/ignore list
add [re:]<nick> [<server> [<channel>]]
del <number>|-all
list: list all ignores
add: add an ignore
nick: nick or hostname (can be regular expression if "re:" is given or a mask using "*" to replace one or more chars)
del: delete an ignore
number: number of ignore to delete (look at list to find it)
-all: delete all ignores
server: internal server name where ignore is working
channel: channel name where ignore is working
Note: the regular expression can start with "(?-i)" to become case sensitive.
Examples:
ignore nick "toto" everywhere:
/ignore add toto
ignore host "toto@domain.com" on freenode server:
/ignore add toto@domain.com freenode
ignore host "toto*@*.domain.com" on freenode/#weechat:
/ignore add toto*@*.domain.com freenode #weechat
........................................
[[command_irc_info]]
[command]*`info`* get information describing the server::
........................................
/info [<target>]
target: server name
........................................
[[command_irc_invite]]
[command]*`invite`* invite a nick on a channel::
........................................
/invite <nick> [<nick>...] [<channel>]
nick: nick to invite
channel: channel to invite
........................................
[[command_irc_ison]]
[command]*`ison`* check if a nick is currently on IRC::
........................................
/ison <nick> [<nick>...]
nick: nick
........................................
[[command_irc_join]]
[command]*`join`* join a channel::
........................................
/join [-noswitch] [-server <server>] [<channel1>[,<channel2>...]] [<key1>[,<key2>...]]
-noswitch: do not switch to new buffer
server: send to this server (internal name)
channel: channel name to join
key: key to join the channel (channels with a key must be the first in list)
Examples:
/join #weechat
/join #protectedchan,#weechat key
/join -server freenode #weechat
/join -noswitch #weechat
........................................
[[command_irc_kick]]
[command]*`kick`* forcibly remove a user from a channel::
........................................
/kick [<channel>] <nick> [<reason>]
channel: channel where user is
nick: nick to kick
reason: reason for kick
........................................
[[command_irc_kickban]]
[command]*`kickban`* kicks and bans a nick from a channel::
........................................
/kickban [<channel>] <nick> [<reason>]
channel: channel where user is
nick: nick to kick and ban
reason: reason for kick
It is possible to kick/ban with a mask, nick will be extracted from mask and replaced by "*".
Example:
ban "*!*@host.com" and then kick "toto":
/kickban toto!*@host.com
........................................
[[command_irc_kill]]
[command]*`kill`* close client-server connection::
........................................
/kill <nick> <reason>
nick: nick to kill
reason: reason for kill
........................................
[[command_irc_links]]
[command]*`links`* list all servernames which are known by the server answering the query::
........................................
/links [[<server>] <server_mask>]
server: this server should answer the query
server_mask: list of servers must match this mask
........................................
[[command_irc_list]]
[command]*`list`* list channels and their topic::
........................................
/list [<channel>[,<channel>...]] [<server>] [-re <regex>]
channel: channel to list
server: server name
regex: regular expression used to filter results (case insensitive, can start by "(?-i)" to become case sensitive)
Examples:
list all channels on server (can be very slow on large networks):
/list
list channel #weechat:
/list #weechat
list all channels beginning with "#weechat" (can be very slow on large networks):
/list -re #weechat.*
........................................
[[command_irc_lusers]]
[command]*`lusers`* get statistics about the size of the IRC network::
........................................
/lusers [<mask> [<target>]]
mask: servers matching the mask only
target: server for forwarding request
........................................
[[command_irc_map]]
[command]*`map`* show a graphical map of the IRC network::
........................................
........................................
[[command_irc_me]]
[command]*`me`* send a CTCP action to the current channel::
........................................
/me <message>
message: message to send
........................................
[[command_irc_mode]]
[command]*`mode`* change channel or user mode::
........................................
/mode [<channel>] [+|-]o|p|s|i|t|n|m|l|b|e|v|k [<arguments>]
<nick> [+|-]i|s|w|o
channel modes:
channel: channel name to modify (default is current one)
o: give/take channel operator privileges
p: private channel flag
s: secret channel flag
i: invite-only channel flag
t: topic settable by channel operator only flag
n: no messages to channel from clients on the outside
m: moderated channel
l: set the user limit to channel
b: set a ban mask to keep users out
e: set exception mask
v: give/take the ability to speak on a moderated channel
k: set a channel key (password)
user modes:
nick: nick to modify
i: mark a user as invisible
s: mark a user for receive server notices
w: user receives wallops
o: operator flag
List of modes is not comprehensive, you should read documentation about your server to see all possible modes.
Examples:
protect topic on channel #weechat:
/mode #weechat +t
become invisible on server:
/mode nick +i
........................................
[[command_irc_motd]]
[command]*`motd`* get the "Message Of The Day"::
........................................
/motd [<target>]
target: server name
........................................
[[command_irc_msg]]
[command]*`msg`* send message to a nick or channel::
........................................
/msg [-server <server>] <target>[,<target>...] <text>
server: send to this server (internal name)
target: nick or channel (may be mask, '*' = current channel)
text: text to send
........................................
[[command_irc_names]]
[command]*`names`* list nicks on channels::
........................................
/names [<channel>[,<channel>...]]
channel: channel name
........................................
[[command_irc_nick]]
[command]*`nick`* change current nick::
........................................
/nick [-all] <nick>
-all: set new nick for all connected servers
nick: new nick
........................................
[[command_irc_notice]]
[command]*`notice`* send notice message to user::
........................................
/notice [-server <server>] <target> <text>
server: send to this server (internal name)
target: nick or channel
text: text to send
........................................
[[command_irc_notify]]
[command]*`notify`* add a notification for presence or away status of nicks on servers::
........................................
/notify add <nick> [<server> [-away]]
del <nick>|-all [<server>]
add: add a notification
nick: nick
server: internal server name (by default current server)
-away: notify when away message is changed (by doing whois on nick)
del: delete a notification
-all: delete all notifications
Without argument, this command displays notifications for current server (or all servers if command is issued on core buffer).
Examples:
notify when "toto" joins/quits current server:
/notify add toto
notify when "toto" joins/quits freenode server:
/notify add toto freenode
notify when "toto" is away or back on freenode server:
/notify add toto freenode -away
........................................
[[command_irc_op]]
[command]*`op`* give channel operator status to nick(s)::
........................................
/op <nick> [<nick>...]
* -yes
nick: nick or mask (can start or end with "*" as wildcard)
*: give channel operator status to everybody on channel
........................................
[[command_irc_oper]]
[command]*`oper`* get operator privileges::
........................................
/oper <user> <password>
user: user
password: password
........................................
[[command_irc_part]]
[command]*`part`* leave a channel::
........................................
/part [<channel>[,<channel>...]] [<message>]
channel: channel name to leave
message: part message (displayed to other users)
........................................
[[command_irc_ping]]
[command]*`ping`* send a ping to server::
........................................
/ping <server1> [<server2>]
server1: server
server2: forward ping to this server
........................................
[[command_irc_pong]]
[command]*`pong`* answer to a ping message::
........................................
/pong <daemon> [<daemon2>]
daemon: daemon who has responded to Ping message
daemon2: forward message to this daemon
........................................
[[command_irc_query]]
[command]*`query`* send a private message to a nick::
........................................
/query [-server <server>] <nick>[,<nick>...] [<text>]
server: send to this server (internal name)
nick: nick for private conversation
text: text to send
........................................
[[command_irc_quiet]]
[command]*`quiet`* quiet nicks or hosts::
........................................
/quiet [<channel>] [<nick> [<nick>...]]
channel: channel for quiet
nick: user or host to quiet
Without argument, this command display quiet list for current channel.
........................................
[[command_irc_quote]]
[command]*`quote`* send raw data to server without parsing::
........................................
/quote [-server <server>] <data>
server: send to this server (internal name)
data: raw data to send
........................................
[[command_irc_reconnect]]
[command]*`reconnect`* reconnect to server(s)::
........................................
/reconnect <server> [<server>...] [-nojoin] [-switch]
-all [-nojoin] [-switch]
server: server name to reconnect
-all: reconnect to all servers
-nojoin: do not join any channel (even if autojoin is enabled on server)
-switch: switch to next server address
........................................
[[command_irc_rehash]]
[command]*`rehash`* tell the server to reload its config file::
........................................
/rehash [<option>]
option: extra option, for some servers
........................................
[[command_irc_restart]]
[command]*`restart`* tell the server to restart itself::
........................................
/restart [<target>]
target: server name
........................................
[[command_irc_sajoin]]
[command]*`sajoin`* force a user to join channel(s)::
........................................
/sajoin <nick> <channel>[,<channel>...]
nick: nick
channel: channel name
........................................
[[command_irc_samode]]
[command]*`samode`* change mode on channel, without having operator status::
........................................
/samode <channel> <mode>
channel: channel name
mode: mode for channel
........................................
[[command_irc_sanick]]
[command]*`sanick`* force a user to use another nick::
........................................
/sanick <nick> <new_nick>
nick: nick
new_nick: new nick
........................................
[[command_irc_sapart]]
[command]*`sapart`* force a user to leave channel(s)::
........................................
/sapart <nick> <channel>[,<channel>...]
nick: nick
channel: channel name
........................................
[[command_irc_saquit]]
[command]*`saquit`* force a user to quit server with a reason::
........................................
/saquit <nick> <reason>
nick: nick
reason: reason
........................................
[[command_irc_server]]
[command]*`server`* list, add or remove IRC servers::
........................................
/server list|listfull [<server>]
add <server> <hostname>[/<port>] [-temp] [-<option>[=<value>]] [-no<option>]
copy|rename <server> <new_name>
del|keep <server>
deloutq|jump|raw
list: list servers (without argument, this list is displayed)
listfull: list servers with detailed info for each server
add: create a new server
server: server name, for internal and display use
hostname: name or IP address of server, with optional port (default: 6667), many addresses can be separated by a comma
temp: create temporary server (not saved)
option: set option for server (for boolean option, value can be omitted)
nooption: set boolean option to 'off' (for example: -nossl)
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)
jump: jump to server buffer
raw: open buffer with raw IRC data
Examples:
/server listfull
/server add oftc irc.oftc.net/6697 -ssl -autoconnect
/server add oftc6 irc6.oftc.net/6697 -ipv6 -ssl
/server add freenode2 chat.eu.freenode.net/6667,chat.us.freenode.net/6667
/server add freenode3 irc.freenode.net -password=mypass
/server copy oftc oftcbis
/server rename oftc newoftc
/server del freenode
/server deloutq
........................................
[[command_irc_service]]
[command]*`service`* register a new service::
........................................
/service <nick> <reserved> <distribution> <type> <reserved> <info>
distribution: visibility of service
type: reserved for future usage
........................................
[[command_irc_servlist]]
[command]*`servlist`* list services currently connected to the network::
........................................
/servlist [<mask> [<type>]]
mask: list only services matching this mask
type: list only services of this type
........................................
[[command_irc_squery]]
[command]*`squery`* deliver a message to a service::
........................................
/squery <service> <text>
service: name of service
text: text to send
........................................
[[command_irc_squit]]
[command]*`squit`* disconnect server links::
........................................
/squit <server> <comment>
server: server name
comment: comment for quit
........................................
[[command_irc_stats]]
[command]*`stats`* query statistics about server::
........................................
/stats [<query> [<server>]]
query: c/h/i/k/l/m/o/y/u (see RFC1459)
server: server name
........................................
[[command_irc_summon]]
[command]*`summon`* give users who are on a host running an IRC server a message asking them to please join IRC::
........................................
/summon <user> [<target> [<channel>]]
user: username
target: server name
channel: channel name
........................................
[[command_irc_time]]
[command]*`time`* query local time from server::
........................................
/time [<target>]
target: query time from specified server
........................................
[[command_irc_topic]]
[command]*`topic`* get/set channel topic::
........................................
/topic [<channel>] [<topic>|-delete]
channel: channel name
topic: new topic for channel
-delete: delete channel topic
........................................
[[command_irc_trace]]
[command]*`trace`* find the route to specific server::
........................................
/trace [<target>]
target: server
........................................
[[command_irc_unban]]
[command]*`unban`* unban nicks or hosts::
........................................
/unban [<channel>] <nick> [<nick>...]
channel: channel for unban
nick: user or host to unban
........................................
[[command_irc_userhost]]
[command]*`userhost`* return a list of information about nicks::
........................................
/userhost <nick> [<nick>...]
nick: nick
........................................
[[command_irc_users]]
[command]*`users`* list of users logged into the server::
........................................
/users [<target>]
target: server
........................................
[[command_irc_version]]
[command]*`version`* give the version info of nick or server (current or specified)::
........................................
/version [<server>|<nick>]
server: server name
nick: nick
........................................
[[command_irc_voice]]
[command]*`voice`* give voice to nick(s)::
........................................
/voice <nick> [<nick>...]
nick: nick or mask (can start or end with "*" as wildcard)
*: give voice to everybody on channel
........................................
[[command_irc_wallchops]]
[command]*`wallchops`* send a notice to channel ops::
........................................
/wallchops [<channel>] <text>
channel: channel name
text: text to send
........................................
[[command_irc_wallops]]
[command]*`wallops`* send a message to all currently connected users who have set the 'w' user mode for themselves::
........................................
/wallops <text>
text: text to send
........................................
[[command_irc_who]]
[command]*`who`* generate a query which returns a list of information::
........................................
/who [<mask> [o]]
mask: only information which match this mask
o: only operators are returned according to the mask supplied
........................................
[[command_irc_whois]]
[command]*`whois`* query information about user(s)::
........................................
/whois [<server>] [<nick>[,<nick>...]]
server: server name
nick: nick (may be a mask)
Without argument, this command will do a whois on:
- your own nick if buffer is a server/channel
- remote nick if buffer is a private.
........................................
[[command_irc_whowas]]
[command]*`whowas`* ask for information about a nick which no longer exists::
........................................
/whowas <nick>[,<nick>...] [<count> [<target>]]
nick: nick to search
count: number of replies to return (full search if negative number)
target: reply should match this mask
........................................