diff --git a/src/command/cmd_defs.c b/src/command/cmd_defs.c
index d78e6578..1d2bb588 100644
--- a/src/command/cmd_defs.c
+++ b/src/command/cmd_defs.c
@@ -123,2331 +123,2426 @@ static gboolean _cmd_has_tag(Command* pcmd, const char* const tag);
/*
* Command list
*/
+
+// clang-format off
static struct cmd_t command_defs[] = {
{ "/help",
parse_args_with_freetext, 0, 2, NULL,
CMD_NOSUBFUNCS
- CMD_MAINFUNC(cmd_help)
- CMD_NOTAGS
- CMD_SYN(
- "/help [||search_all|search_any] []")
- CMD_DESC(
- "Help on using Profanity. Passing no arguments list help areas. "
- "For command help, optional arguments are shown using square brackets, "
- "arguments representing variables rather than a literal name are surrounded by angle brackets. "
- "Arguments that may be one of a number of values are separated by a pipe "
- "e.g. val1|val2|val3.")
- CMD_ARGS(
- { "", "Summary help for commands in a certain area of functionality." },
- { "", "Full help for a specific command, for example '/help connect'." },
- { "search_all ", "Search commands for returning matches that contain all of the search terms." },
- { "search_any ", "Search commands for returning matches that contain any of the search terms." })
- CMD_EXAMPLES(
- "/help search_all presence online",
- "/help commands",
- "/help presence",
- "/help who") },
+ CMD_MAINFUNC(cmd_help)
+ CMD_NOTAGS
+ CMD_SYN(
+ "/help [||search_all|search_any] []")
+ CMD_DESC(
+ "Help on using Profanity. Passing no arguments list help areas. "
+ "For command help, optional arguments are shown using square brackets, "
+ "arguments representing variables rather than a literal name are surrounded by angle brackets. "
+ "Arguments that may be one of a number of values are separated by a pipe "
+ "e.g. val1|val2|val3.")
+ CMD_ARGS(
+ { "", "Summary help for commands in a certain area of functionality." },
+ { "", "Full help for a specific command, for example '/help connect'." },
+ { "search_all ", "Search commands for returning matches that contain all of the search terms." },
+ { "search_any ", "Search commands for returning matches that contain any of the search terms." })
+ CMD_EXAMPLES(
+ "/help search_all presence online",
+ "/help commands",
+ "/help presence",
+ "/help who")
+ },
{ "/about",
parse_args, 0, 0, NULL,
CMD_NOSUBFUNCS
- CMD_MAINFUNC(cmd_about)
- CMD_NOTAGS
- CMD_SYN(
- "/about")
- CMD_DESC(
- "Show version and license information.")
- CMD_NOARGS
- CMD_NOEXAMPLES },
+ CMD_MAINFUNC(cmd_about)
+ CMD_NOTAGS
+ CMD_SYN(
+ "/about")
+ CMD_DESC(
+ "Show version and license information.")
+ CMD_NOARGS
+ CMD_NOEXAMPLES
+ },
{ "/connect",
parse_args, 0, 7, NULL,
CMD_NOSUBFUNCS
- CMD_MAINFUNC(cmd_connect)
- CMD_TAGS(
- CMD_TAG_CONNECTION)
- CMD_SYN(
- "/connect []",
- "/connect [server ] [port ] [tls force|allow|trust|legacy|disable] [auth default|legacy]")
- CMD_DESC(
- "Login to a chat service. "
- "If no account is specified, the default is used if one is configured. "
- "A local account is created with the JID as it's name if it doesn't already exist.")
- CMD_ARGS(
- { "", "The local account you wish to connect with, or a JID if connecting for the first time." },
- { "server ", "Supply a server if it is different to the domain part of your JID." },
- { "port ", "The port to use if different to the default (5222, or 5223 for SSL)." },
- { "tls force", "Force TLS connection, and fail if one cannot be established, this is default behaviour." },
- { "tls allow", "Use TLS for the connection if it is available." },
- { "tls trust", "Force TLS connection and trust server's certificate." },
- { "tls legacy", "Use legacy TLS for the connection. It means server doesn't support STARTTLS and TLS is forced just after TCP connection is established." },
- { "tls disable", "Disable TLS for the connection." },
- { "auth default", "Default authentication process." },
- { "auth legacy", "Allow legacy authentication." })
- CMD_EXAMPLES(
- "/connect",
- "/connect odin@valhalla.edda",
- "/connect odin@valhalla.edda server talk.google.com",
- "/connect freyr@vanaheimr.edda port 5678",
- "/connect me@localhost.test.org server 127.0.0.1 tls disable",
- "/connect me@chatty server chatty.com port 5443") },
+ CMD_MAINFUNC(cmd_connect)
+ CMD_TAGS(
+ CMD_TAG_CONNECTION)
+ CMD_SYN(
+ "/connect []",
+ "/connect [server ] [port ] [tls force|allow|trust|legacy|disable] [auth default|legacy]")
+ CMD_DESC(
+ "Login to a chat service. "
+ "If no account is specified, the default is used if one is configured. "
+ "A local account is created with the JID as it's name if it doesn't already exist.")
+ CMD_ARGS(
+ { "", "The local account you wish to connect with, or a JID if connecting for the first time." },
+ { "server ", "Supply a server if it is different to the domain part of your JID." },
+ { "port ", "The port to use if different to the default (5222, or 5223 for SSL)." },
+ { "tls force", "Force TLS connection, and fail if one cannot be established, this is default behaviour." },
+ { "tls allow", "Use TLS for the connection if it is available." },
+ { "tls trust", "Force TLS connection and trust server's certificate." },
+ { "tls legacy", "Use legacy TLS for the connection. It means server doesn't support STARTTLS and TLS is forced just after TCP connection is established." },
+ { "tls disable", "Disable TLS for the connection." },
+ { "auth default", "Default authentication process." },
+ { "auth legacy", "Allow legacy authentication." })
+ CMD_EXAMPLES(
+ "/connect",
+ "/connect odin@valhalla.edda",
+ "/connect odin@valhalla.edda server talk.google.com",
+ "/connect freyr@vanaheimr.edda port 5678",
+ "/connect me@localhost.test.org server 127.0.0.1 tls disable",
+ "/connect me@chatty server chatty.com port 5443")
+ },
{ "/tls",
parse_args, 1, 3, NULL,
CMD_SUBFUNCS(
- { "certpath", cmd_tls_certpath },
- { "trust", cmd_tls_trust },
- { "trusted", cmd_tls_trusted },
- { "revoke", cmd_tls_revoke },
- { "cert", cmd_tls_cert })
- CMD_NOMAINFUNC
- CMD_TAGS(
+ { "certpath", cmd_tls_certpath },
+ { "trust", cmd_tls_trust },
+ { "trusted", cmd_tls_trusted },
+ { "revoke", cmd_tls_revoke },
+ { "cert", cmd_tls_cert })
+ CMD_NOMAINFUNC
+ CMD_TAGS(
CMD_TAG_CONNECTION,
CMD_TAG_UI)
- CMD_SYN(
- "/tls allow",
- "/tls always",
- "/tls deny",
- "/tls cert []",
- "/tls trust",
- "/tls trusted",
- "/tls revoke ",
- "/tls certpath",
- "/tls certpath set ",
- "/tls certpath clear",
- "/tls certpath default")
- CMD_DESC(
- "Handle TLS certificates. ")
- CMD_ARGS(
- { "allow", "Allow connection to continue with TLS certificate." },
- { "always", "Always allow connections with TLS certificate." },
- { "deny", "Abort connection." },
- { "cert", "Show the current TLS certificate." },
- { "cert ", "Show details of trusted certificate." },
- { "trust", "Add the current TLS certificate to manually trusted certificates." },
- { "trusted", "List summary of manually trusted certificates (with '/tls always' or '/tls trust')." },
- { "revoke ", "Remove a manually trusted certificate." },
- { "certpath", "Show the trusted certificate path." },
- { "certpath set ", "Specify filesystem path containing trusted certificates." },
- { "certpath clear", "Clear the trusted certificate path." },
- { "certpath default", "Use default system certificate path, if it can be found." })
- CMD_NOEXAMPLES },
+ CMD_SYN(
+ "/tls allow",
+ "/tls always",
+ "/tls deny",
+ "/tls cert []",
+ "/tls trust",
+ "/tls trusted",
+ "/tls revoke ",
+ "/tls certpath",
+ "/tls certpath set ",
+ "/tls certpath clear",
+ "/tls certpath default")
+ CMD_DESC(
+ "Handle TLS certificates. ")
+ CMD_ARGS(
+ { "allow", "Allow connection to continue with TLS certificate." },
+ { "always", "Always allow connections with TLS certificate." },
+ { "deny", "Abort connection." },
+ { "cert", "Show the current TLS certificate." },
+ { "cert ", "Show details of trusted certificate." },
+ { "trust", "Add the current TLS certificate to manually trusted certificates." },
+ { "trusted", "List summary of manually trusted certificates (with '/tls always' or '/tls trust')." },
+ { "revoke ", "Remove a manually trusted certificate." },
+ { "certpath", "Show the trusted certificate path." },
+ { "certpath set ", "Specify filesystem path containing trusted certificates." },
+ { "certpath clear", "Clear the trusted certificate path." },
+ { "certpath default", "Use default system certificate path, if it can be found." })
+ CMD_NOEXAMPLES
+ },
{ "/disconnect",
parse_args, 0, 0, NULL,
CMD_NOSUBFUNCS
- CMD_MAINFUNC(cmd_disconnect)
- CMD_TAGS(
- CMD_TAG_CONNECTION)
- CMD_SYN(
- "/disconnect")
- CMD_DESC(
- "Disconnect from the current chat service.")
- CMD_NOARGS
- CMD_NOEXAMPLES },
+ CMD_MAINFUNC(cmd_disconnect)
+ CMD_TAGS(
+ CMD_TAG_CONNECTION)
+ CMD_SYN(
+ "/disconnect")
+ CMD_DESC(
+ "Disconnect from the current chat service.")
+ CMD_NOARGS
+ CMD_NOEXAMPLES
+ },
{ "/msg",
parse_args_with_freetext, 1, 2, NULL,
CMD_NOSUBFUNCS
- CMD_MAINFUNC(cmd_msg)
- CMD_TAGS(
- CMD_TAG_CHAT)
- CMD_SYN(
- "/msg []",
- "/msg []")
- CMD_DESC(
- "Send a one to one chat message, or a private message to a chat room occupant. "
- "If the message is omitted, a new chat window will be opened without sending a message. "
- "Use quotes if the nickname includes spaces.")
- CMD_ARGS(
- { "", "Open chat window with contact, by JID or nickname." },
- { " []", "Send message to contact, by JID or nickname." },
- { "", "Open private chat window with chat room occupant." },
- { " []", "Send a private message to a chat room occupant." })
- CMD_EXAMPLES(
- "/msg thor@valhalla.edda Hey, here's a message!",
- "/msg heimdall@valhalla.edda",
- "/msg Thor Here is a private message",
- "/msg \"My Friend\" Hi, how are you?") },
+ CMD_MAINFUNC(cmd_msg)
+ CMD_TAGS(
+ CMD_TAG_CHAT)
+ CMD_SYN(
+ "/msg []",
+ "/msg []")
+ CMD_DESC(
+ "Send a one to one chat message, or a private message to a chat room occupant. "
+ "If the message is omitted, a new chat window will be opened without sending a message. "
+ "Use quotes if the nickname includes spaces.")
+ CMD_ARGS(
+ { "", "Open chat window with contact, by JID or nickname." },
+ { " []", "Send message to contact, by JID or nickname." },
+ { "", "Open private chat window with chat room occupant." },
+ { " []", "Send a private message to a chat room occupant." })
+ CMD_EXAMPLES(
+ "/msg thor@valhalla.edda Hey, here's a message!",
+ "/msg heimdall@valhalla.edda",
+ "/msg Thor Here is a private message",
+ "/msg \"My Friend\" Hi, how are you?")
+ },
{ "/roster",
parse_args_with_freetext, 0, 4, NULL,
CMD_SUBFUNCS(
- { "group", cmd_group })
- CMD_MAINFUNC(cmd_roster)
- CMD_TAGS(
- CMD_TAG_ROSTER,
- CMD_TAG_UI)
- CMD_SYN(
- "/roster",
- "/roster online",
- "/roster show [offline|resource|presence|status|empty|priority|contacts|rooms]",
- "/roster hide [offline|resource|presence|status|empty|priority|contacts|rooms]",
- "/roster by group|presence|none",
- "/roster count unread|items|off",
- "/roster count zero on|off",
- "/roster color on|off",
- "/roster order name|presence",
- "/roster unread before|after|off",
- "/roster room char |none",
- "/roster room private char |none",
- "/roster room position first|last",
- "/roster room by service|none",
- "/roster room order name|unread",
- "/roster room unread before|after|off",
- "/roster room show server",
- "/roster room hide server",
- "/roster room use name|jid",
- "/roster private room|group|off",
- "/roster private char |none",
- "/roster header char |none",
- "/roster presence indent ",
- "/roster contact char |none",
- "/roster contact indent ",
- "/roster resource char |none",
- "/roster resource indent ",
- "/roster resource join on|off",
- "/roster size ",
- "/roster wrap on|off",
- "/roster add []",
- "/roster remove ",
- "/roster remove_all contacts",
- "/roster nick ",
- "/roster clearnick ",
- "/roster group",
- "/roster group show ",
- "/roster group add ",
- "/roster group remove ")
- CMD_DESC(
- "Manage your roster, and roster display settings. "
- "Passing no arguments lists all contacts in your roster.")
- CMD_ARGS(
- { "online", "Show all online contacts in console." },
- { "show", "Show the roster panel." },
- { "show offline", "Show offline contacts in roster panel." },
- { "show resource", "Show contact's connected resources in roster panel." },
- { "show presence", "Show contact's presence in roster panel." },
- { "show status", "Show contact's status message in roster panel." },
- { "show empty", "Show empty groups in roster panel." },
- { "show priority", "Show resource priority in roster panel." },
- { "show contacts", "Show contacts in roster panel." },
- { "show rooms", "Show chat rooms in roster panel." },
- { "hide", "Hide the roster panel." },
- { "hide offline", "Hide offline contacts in roster panel." },
- { "hide resource", "Hide contact's connected resources in roster panel." },
- { "hide presence", "Hide contact's presence in roster panel." },
- { "hide status", "Hide contact's status message in roster panel." },
- { "hide empty", "Hide empty groups in roster panel." },
- { "hide priority", "Hide resource priority in roster panel." },
- { "hide contacts", "Hide contacts in roster panel." },
- { "hide rooms", "Hide chat rooms in roster panel." },
- { "by group", "Group contacts in roster panel by roster group." },
- { "by presence", "Group contacts in roster panel by presence." },
- { "by none", "No grouping in roster panel." },
- { "count unread", "Show unread message count with roster headers." },
- { "count items", "Show item count with roster headers." },
- { "count off", "Do not show any count with roster headers." },
- { "count zero on", "Show roster header count when 0." },
- { "count zero off", "Hide roster header count when 0." },
- { "color on", "Enable generated color names (XEP-0392)" },
- { "color off", "Disable generated color names (XEP-0392)" },
- { "order name", "Order roster contacts by name only." },
- { "order presence", "Order roster contacts by presence, and then by name." },
- { "unread before", "Show unread message count before contact." },
- { "unread after", "Show unread message count after contact." },
- { "unread off", "Do not show unread message count for contacts." },
- { "room char ", "Prefix rooms with specified character." },
- { "room char none", "Remove room character prefix." },
- { "room private char ", "Prefix private room chat with specified character when displayed with room." },
- { "room private char none", "Remove private room chat character prefix when displayed with room." },
- { "room position first", "Show rooms first in roster." },
- { "room position last", "Show rooms last in roster." },
- { "room by service", "Group rooms by chat service." },
- { "room by none", "Do not group rooms." },
- { "room order name", "Order rooms by name." },
- { "room order unread", "Order rooms by unread messages, and then by name." },
- { "room unread before", "Show unread message count before room." },
- { "room unread after", "Show unread message count after room." },
- { "room unread off", "Do not show unread message count for rooms." },
- { "room show server", "Show the conference server with room JIDs." },
- { "room hide server", "Do not show the conference server with room JIDs." },
- { "room use name", "Use the MUC name as room name." },
- { "room use jid", "Use the JID as room name." },
- { "private room", "Show room private chats with the room." },
- { "private group", "Show room private chats as a separate roster group." },
- { "private off", "Do not show room private chats." },
- { "private char ", "Prefix private room chats with specified character when displayed in separate group." },
- { "private char none", "Remove private room chat character prefix." },
- { "header char ", "Prefix roster headers with specified character." },
- { "header char none", "Remove roster header character prefix." },
- { "contact char ", "Prefix roster contacts with specified character." },
- { "contact char none", "Remove roster contact character prefix." },
- { "contact indent ", "Indent contact line by spaces (0 to 10)." },
- { "resource char ", "Prefix roster resources with specified character." },
- { "resource char none", "Remove roster resource character prefix." },
- { "resource indent ", "Indent resource line by spaces (0 to 10)." },
- { "resource join on|off", "Join resource with previous line when only one available resource." },
- { "presence indent ", "Indent presence line by spaces (-1 to 10), a value of -1 will show presence on the previous line." },
- { "size ", "Percentage of the screen taken up by the roster (1-99)." },
- { "wrap on|off", "Enable or disable line wrapping in roster panel." },
- { "add []", "Add a new item to the roster." },
- { "remove ", "Removes an item from the roster." },
- { "remove_all contacts", "Remove all items from roster." },
- { "nick ", "Change a contacts nickname." },
- { "clearnick ", "Removes the current nickname." },
- { "group show ", "List all roster items in a group." },
- { "group add ", "Add a contact to a group." },
- { "group remove ", "Remove a contact from a group." })
- CMD_EXAMPLES(
- "/roster",
- "/roster add odin@valhalla.edda",
- "/roster add odin@valhalla.edda Allfather",
- "/roster remove loki@ownserver.org",
- "/roster nick odin@valhalla.edda \"All Father\"",
- "/roster clearnick thor@valhalla.edda",
- "/roster size 15",
- "/roster group",
- "/roster group show friends",
- "/roster group add friends fenris@ownserver.org",
- "/roster group add family Brother",
- "/roster group remove colleagues boss@work.com") },
+ { "group", cmd_group })
+ CMD_MAINFUNC(cmd_roster)
+ CMD_TAGS(
+ CMD_TAG_ROSTER,
+ CMD_TAG_UI)
+ CMD_SYN(
+ "/roster",
+ "/roster online",
+ "/roster show [offline|resource|presence|status|empty|priority|contacts|rooms]",
+ "/roster hide [offline|resource|presence|status|empty|priority|contacts|rooms]",
+ "/roster by group|presence|none",
+ "/roster count unread|items|off",
+ "/roster count zero on|off",
+ "/roster color on|off",
+ "/roster order name|presence",
+ "/roster unread before|after|off",
+ "/roster room char |none",
+ "/roster room private char |none",
+ "/roster room position first|last",
+ "/roster room by service|none",
+ "/roster room order name|unread",
+ "/roster room unread before|after|off",
+ "/roster room show server",
+ "/roster room hide server",
+ "/roster room use name|jid",
+ "/roster private room|group|off",
+ "/roster private char |none",
+ "/roster header char |none",
+ "/roster presence indent ",
+ "/roster contact char |none",
+ "/roster contact indent ",
+ "/roster resource char |none",
+ "/roster resource indent ",
+ "/roster resource join on|off",
+ "/roster size ",
+ "/roster wrap on|off",
+ "/roster add []",
+ "/roster remove ",
+ "/roster remove_all contacts",
+ "/roster nick ",
+ "/roster clearnick ",
+ "/roster group",
+ "/roster group show ",
+ "/roster group add ",
+ "/roster group remove ")
+ CMD_DESC(
+ "Manage your roster, and roster display settings. "
+ "Passing no arguments lists all contacts in your roster.")
+ CMD_ARGS(
+ { "online", "Show all online contacts in console." },
+ { "show", "Show the roster panel." },
+ { "show offline", "Show offline contacts in roster panel." },
+ { "show resource", "Show contact's connected resources in roster panel." },
+ { "show presence", "Show contact's presence in roster panel." },
+ { "show status", "Show contact's status message in roster panel." },
+ { "show empty", "Show empty groups in roster panel." },
+ { "show priority", "Show resource priority in roster panel." },
+ { "show contacts", "Show contacts in roster panel." },
+ { "show rooms", "Show chat rooms in roster panel." },
+ { "hide", "Hide the roster panel." },
+ { "hide offline", "Hide offline contacts in roster panel." },
+ { "hide resource", "Hide contact's connected resources in roster panel." },
+ { "hide presence", "Hide contact's presence in roster panel." },
+ { "hide status", "Hide contact's status message in roster panel." },
+ { "hide empty", "Hide empty groups in roster panel." },
+ { "hide priority", "Hide resource priority in roster panel." },
+ { "hide contacts", "Hide contacts in roster panel." },
+ { "hide rooms", "Hide chat rooms in roster panel." },
+ { "by group", "Group contacts in roster panel by roster group." },
+ { "by presence", "Group contacts in roster panel by presence." },
+ { "by none", "No grouping in roster panel." },
+ { "count unread", "Show unread message count with roster headers." },
+ { "count items", "Show item count with roster headers." },
+ { "count off", "Do not show any count with roster headers." },
+ { "count zero on", "Show roster header count when 0." },
+ { "count zero off", "Hide roster header count when 0." },
+ { "color on", "Enable generated color names (XEP-0392)" },
+ { "color off", "Disable generated color names (XEP-0392)" },
+ { "order name", "Order roster contacts by name only." },
+ { "order presence", "Order roster contacts by presence, and then by name." },
+ { "unread before", "Show unread message count before contact." },
+ { "unread after", "Show unread message count after contact." },
+ { "unread off", "Do not show unread message count for contacts." },
+ { "room char ", "Prefix rooms with specified character." },
+ { "room char none", "Remove room character prefix." },
+ { "room private char ", "Prefix private room chat with specified character when displayed with room." },
+ { "room private char none", "Remove private room chat character prefix when displayed with room." },
+ { "room position first", "Show rooms first in roster." },
+ { "room position last", "Show rooms last in roster." },
+ { "room by service", "Group rooms by chat service." },
+ { "room by none", "Do not group rooms." },
+ { "room order name", "Order rooms by name." },
+ { "room order unread", "Order rooms by unread messages, and then by name." },
+ { "room unread before", "Show unread message count before room." },
+ { "room unread after", "Show unread message count after room." },
+ { "room unread off", "Do not show unread message count for rooms." },
+ { "room show server", "Show the conference server with room JIDs." },
+ { "room hide server", "Do not show the conference server with room JIDs." },
+ { "room use name", "Use the MUC name as room name." },
+ { "room use jid", "Use the JID as room name." },
+ { "private room", "Show room private chats with the room." },
+ { "private group", "Show room private chats as a separate roster group." },
+ { "private off", "Do not show room private chats." },
+ { "private char ", "Prefix private room chats with specified character when displayed in separate group." },
+ { "private char none", "Remove private room chat character prefix." },
+ { "header char ", "Prefix roster headers with specified character." },
+ { "header char none", "Remove roster header character prefix." },
+ { "contact char ", "Prefix roster contacts with specified character." },
+ { "contact char none", "Remove roster contact character prefix." },
+ { "contact indent ", "Indent contact line by spaces (0 to 10)." },
+ { "resource char ", "Prefix roster resources with specified character." },
+ { "resource char none", "Remove roster resource character prefix." },
+ { "resource indent ", "Indent resource line by spaces (0 to 10)." },
+ { "resource join on|off", "Join resource with previous line when only one available resource." },
+ { "presence indent ", "Indent presence line by spaces (-1 to 10), a value of -1 will show presence on the previous line." },
+ { "size ", "Percentage of the screen taken up by the roster (1-99)." },
+ { "wrap on|off", "Enable or disable line wrapping in roster panel." },
+ { "add []", "Add a new item to the roster." },
+ { "remove ", "Removes an item from the roster." },
+ { "remove_all contacts", "Remove all items from roster." },
+ { "nick ", "Change a contacts nickname." },
+ { "clearnick ", "Removes the current nickname." },
+ { "group show ", "List all roster items in a group." },
+ { "group add ", "Add a contact to a group." },
+ { "group remove ", "Remove a contact from a group." })
+ CMD_EXAMPLES(
+ "/roster",
+ "/roster add odin@valhalla.edda",
+ "/roster add odin@valhalla.edda Allfather",
+ "/roster remove loki@ownserver.org",
+ "/roster nick odin@valhalla.edda \"All Father\"",
+ "/roster clearnick thor@valhalla.edda",
+ "/roster size 15",
+ "/roster group",
+ "/roster group show friends",
+ "/roster group add friends fenris@ownserver.org",
+ "/roster group add family Brother",
+ "/roster group remove colleagues boss@work.com")
+ },
{ "/blocked",
parse_args, 0, 2, NULL,
CMD_NOSUBFUNCS
- CMD_MAINFUNC(cmd_blocked)
- CMD_TAGS(
- CMD_TAG_ROSTER,
- CMD_TAG_CHAT)
- CMD_SYN(
- "/blocked",
- "/blocked add []",
- "/blocked remove ")
- CMD_DESC(
- "Manage blocked users (XEP-0191), calling with no arguments shows the current list of blocked users. "
- "To blog a certain user in a MUC use the following as jid: room@conference.example.org/spammy-user")
- CMD_ARGS(
- { "add []", "Block the specified Jabber ID. If in a chat window and no jid is specified, the current recipient will be blocked." },
- { "remove ", "Remove the specified Jabber ID from the blocked list." })
- CMD_EXAMPLES(
- "/blocked add hel@helheim.edda",
- "/blocked add profanity@rooms.dismail.de/spammy-user") },
+ CMD_MAINFUNC(cmd_blocked)
+ CMD_TAGS(
+ CMD_TAG_ROSTER,
+ CMD_TAG_CHAT)
+ CMD_SYN(
+ "/blocked",
+ "/blocked add []",
+ "/blocked remove ")
+ CMD_DESC(
+ "Manage blocked users (XEP-0191), calling with no arguments shows the current list of blocked users. "
+ "To blog a certain user in a MUC use the following as jid: room@conference.example.org/spammy-user")
+ CMD_ARGS(
+ { "add []", "Block the specified Jabber ID. If in a chat window and no jid is specified, the current recipient will be blocked." },
+ { "remove ", "Remove the specified Jabber ID from the blocked list." })
+ CMD_EXAMPLES(
+ "/blocked add hel@helheim.edda",
+ "/blocked add profanity@rooms.dismail.de/spammy-user")
+ },
{ "/info",
parse_args, 0, 1, NULL,
CMD_NOSUBFUNCS
- CMD_MAINFUNC(cmd_info)
- CMD_TAGS(
- CMD_TAG_ROSTER,
- CMD_TAG_CHAT,
- CMD_TAG_GROUPCHAT)
- CMD_SYN(
- "/info",
- "/info |")
- CMD_DESC(
- "Show information about a contact, room, or room member. "
- "Passing no argument in a chat window will use the current recipient. "
- "Passing no argument in a chat room will display information about the room.")
- CMD_ARGS(
- { "", "The contact you wish to view information about." },
- { "", "When in a chat room, the occupant you wish to view information about." })
- CMD_EXAMPLES(
- "/info thor@aasgard.server.org",
- "/info heimdall") },
+ CMD_MAINFUNC(cmd_info)
+ CMD_TAGS(
+ CMD_TAG_ROSTER,
+ CMD_TAG_CHAT,
+ CMD_TAG_GROUPCHAT)
+ CMD_SYN(
+ "/info",
+ "/info |")
+ CMD_DESC(
+ "Show information about a contact, room, or room member. "
+ "Passing no argument in a chat window will use the current recipient. "
+ "Passing no argument in a chat room will display information about the room.")
+ CMD_ARGS(
+ { "", "The contact you wish to view information about." },
+ { "", "When in a chat room, the occupant you wish to view information about." })
+ CMD_EXAMPLES(
+ "/info thor@aasgard.server.org",
+ "/info heimdall")
+ },
{ "/caps",
parse_args, 0, 1, NULL,
CMD_NOSUBFUNCS
- CMD_MAINFUNC(cmd_caps)
- CMD_TAGS(
- CMD_TAG_DISCOVERY,
- CMD_TAG_CHAT,
- CMD_TAG_GROUPCHAT)
- CMD_SYN(
- "/caps",
- "/caps |")
- CMD_DESC(
- "Find out a contacts, or room members client software capabilities. "
- "If in private chat initiated from a chat room, no parameter is required.")
- CMD_ARGS(
- { "", "If in the console or a chat window, the full JID for which you wish to see capabilities." },
- { "", "If in a chat room, nickname for which you wish to see capabilities." })
- CMD_EXAMPLES(
- "/caps ran@cold.sea.org/laptop",
- "/caps ran@cold.sea.org/phone",
- "/caps aegir") },
+ CMD_MAINFUNC(cmd_caps)
+ CMD_TAGS(
+ CMD_TAG_DISCOVERY,
+ CMD_TAG_CHAT,
+ CMD_TAG_GROUPCHAT)
+ CMD_SYN(
+ "/caps",
+ "/caps |")
+ CMD_DESC(
+ "Find out a contacts, or room members client software capabilities. "
+ "If in private chat initiated from a chat room, no parameter is required.")
+ CMD_ARGS(
+ { "", "If in the console or a chat window, the full JID for which you wish to see capabilities." },
+ { "", "If in a chat room, nickname for which you wish to see capabilities." })
+ CMD_EXAMPLES(
+ "/caps ran@cold.sea.org/laptop",
+ "/caps ran@cold.sea.org/phone",
+ "/caps aegir")
+ },
{ "/software",
parse_args, 0, 1, NULL,
CMD_NOSUBFUNCS
- CMD_MAINFUNC(cmd_software)
- CMD_TAGS(
- CMD_TAG_DISCOVERY,
- CMD_TAG_CHAT,
- CMD_TAG_GROUPCHAT)
- CMD_SYN(
- "/software",
- "/software |")
- CMD_DESC(
- "Find out a contact, or room members software version information. "
- "If in private chat initiated from a chat room, no parameter is required. "
- "If the contact's software does not support software version requests, nothing will be displayed.")
- CMD_ARGS(
- { "", "If in the console or a chat window, the full JID for which you wish to see software information." },
- { "", "If in a chat room, nickname for which you wish to see software information." })
- CMD_EXAMPLES(
- "/software odin@valhalla.edda/laptop",
- "/software odin@valhalla.edda/phone",
- "/software thor") },
+ CMD_MAINFUNC(cmd_software)
+ CMD_TAGS(
+ CMD_TAG_DISCOVERY,
+ CMD_TAG_CHAT,
+ CMD_TAG_GROUPCHAT)
+ CMD_SYN(
+ "/software",
+ "/software |")
+ CMD_DESC(
+ "Find out a contact, or room members software version information. "
+ "If in private chat initiated from a chat room, no parameter is required. "
+ "If the contact's software does not support software version requests, nothing will be displayed.")
+ CMD_ARGS(
+ { "", "If in the console or a chat window, the full JID for which you wish to see software information." },
+ { "", "If in a chat room, nickname for which you wish to see software information." })
+ CMD_EXAMPLES(
+ "/software odin@valhalla.edda/laptop",
+ "/software odin@valhalla.edda/phone",
+ "/software thor")
+ },
{ "/status",
parse_args, 2, 3, NULL,
CMD_SUBFUNCS(
- { "get", cmd_status_get },
- { "set", cmd_status_set })
- CMD_NOMAINFUNC
- CMD_TAGS(
- CMD_TAG_CHAT,
- CMD_TAG_GROUPCHAT)
- CMD_SYN(
- "/status set [\"\"]",
- "/status get |")
- CMD_DESC(
- "/status get: Find out a contact, or room members presence information. "
- "/status set: set own status.")
- CMD_ARGS(
- { "", "Own status. Possible values: chat, online, away, dnd, xa" },
- { "", "Optional message to use with the status. Needs quotation marks if it's more than one word." },
- { "", "The contact who's presence you which to see." },
- { "", "If in a chat room, the occupant who's presence you wish to see." })
- CMD_EXAMPLES(
- "/status get odin@valhalla.edda",
- "/status get jon",
- "/status set online") },
+ { "get", cmd_status_get },
+ { "set", cmd_status_set })
+ CMD_NOMAINFUNC
+ CMD_TAGS(
+ CMD_TAG_CHAT,
+ CMD_TAG_GROUPCHAT)
+ CMD_SYN(
+ "/status set [\"\"]",
+ "/status get |")
+ CMD_DESC(
+ "/status get: Find out a contact, or room members presence information. "
+ "/status set: set own status.")
+ CMD_ARGS(
+ { "", "Own status. Possible values: chat, online, away, dnd, xa" },
+ { "", "Optional message to use with the status. Needs quotation marks if it's more than one word." },
+ { "", "The contact who's presence you which to see." },
+ { "", "If in a chat room, the occupant who's presence you wish to see." })
+ CMD_EXAMPLES(
+ "/status get odin@valhalla.edda",
+ "/status get jon",
+ "/status set online")
+ },
{ "/resource",
parse_args, 1, 2, &cons_resource_setting,
CMD_NOSUBFUNCS
- CMD_MAINFUNC(cmd_resource)
- CMD_TAGS(
- CMD_TAG_CHAT,
- CMD_TAG_UI)
- CMD_SYN(
- "/resource set ",
- "/resource off",
- "/resource title on|off",
- "/resource message on|off")
- CMD_DESC(
- "Override chat session resource, and manage resource display settings.")
- CMD_ARGS(
- { "set ", "Set the resource to which messages will be sent." },
- { "off", "Let the server choose which resource to route messages to." },
- { "title on|off", "Show or hide the current resource in the titlebar." },
- { "message on|off", "Show or hide the resource when showing an incoming message." })
- CMD_NOEXAMPLES },
+ CMD_MAINFUNC(cmd_resource)
+ CMD_TAGS(
+ CMD_TAG_CHAT,
+ CMD_TAG_UI)
+ CMD_SYN(
+ "/resource set ",
+ "/resource off",
+ "/resource title on|off",
+ "/resource message on|off")
+ CMD_DESC(
+ "Override chat session resource, and manage resource display settings.")
+ CMD_ARGS(
+ { "set ", "Set the resource to which messages will be sent." },
+ { "off", "Let the server choose which resource to route messages to." },
+ { "title on|off", "Show or hide the current resource in the titlebar." },
+ { "message on|off", "Show or hide the resource when showing an incoming message." })
+ CMD_NOEXAMPLES
+ },
{ "/join",
parse_args, 0, 5, NULL,
CMD_NOSUBFUNCS
- CMD_MAINFUNC(cmd_join)
- CMD_TAGS(
- CMD_TAG_GROUPCHAT)
- CMD_SYN(
- "/join",
- "/join [nick ] [password ]")
- CMD_DESC(
- "Join a chat room at the conference server. "
- "If no room is supplied, a generated name will be used with the format private-chat-[UUID]. "
- "If the domain part is not included in the room name, the account preference 'muc.service' will be used. "
- "If no nickname is specified the account preference 'muc.nick' will be used which by default is the localpart of your JID. "
- "If the room doesn't exist, and the server allows it, a new one will be created.")
- CMD_ARGS(
- { "", "The chat room to join." },
- { "nick ", "Nickname to use in the room." },
- { "password ", "Password if the room requires one." })
- CMD_EXAMPLES(
- "/join",
- "/join profanity@rooms.dismail.de",
- "/join profanity@rooms.dismail.de nick mynick",
- "/join private@conference.jabber.org nick mynick password mypassword",
- "/join mychannel") },
+ CMD_MAINFUNC(cmd_join)
+ CMD_TAGS(
+ CMD_TAG_GROUPCHAT)
+ CMD_SYN(
+ "/join",
+ "/join [nick ] [password ]")
+ CMD_DESC(
+ "Join a chat room at the conference server. "
+ "If no room is supplied, a generated name will be used with the format private-chat-[UUID]. "
+ "If the domain part is not included in the room name, the account preference 'muc.service' will be used. "
+ "If no nickname is specified the account preference 'muc.nick' will be used which by default is the localpart of your JID. "
+ "If the room doesn't exist, and the server allows it, a new one will be created.")
+ CMD_ARGS(
+ { "", "The chat room to join." },
+ { "nick ", "Nickname to use in the room." },
+ { "password ", "Password if the room requires one." })
+ CMD_EXAMPLES(
+ "/join",
+ "/join profanity@rooms.dismail.de",
+ "/join profanity@rooms.dismail.de nick mynick",
+ "/join private@conference.jabber.org nick mynick password mypassword",
+ "/join mychannel")
+ },
{ "/invite",
parse_args_with_freetext, 1, 3, NULL,
CMD_NOSUBFUNCS
- CMD_MAINFUNC(cmd_invite)
- CMD_TAGS(
- CMD_TAG_GROUPCHAT)
- CMD_SYN(
- "/invite send []",
- "/invite list",
- "/invite decline")
- CMD_DESC(
- "Manage room invites. "
- "Send an invite to a contact for the current chat room. "
- "List received invites. "
- "Decline them using /invite decline and accept them using /join.")
- CMD_ARGS(
- { "send []", "The contact you wish to invite. And an optional message." },
- { "list", "Show all rooms that you have been invited to, and not accepted or declined." },
- { "decline ", "Decline a chat room invitation." })
- CMD_EXAMPLES(
- "/invite send gustavo@pollos.tx",
- "/invite decline profanity@rooms.dismail.de",
- "/invite list") },
+ CMD_MAINFUNC(cmd_invite)
+ CMD_TAGS(
+ CMD_TAG_GROUPCHAT)
+ CMD_SYN(
+ "/invite send []",
+ "/invite list",
+ "/invite decline")
+ CMD_DESC(
+ "Manage room invites. "
+ "Send an invite to a contact for the current chat room. "
+ "List received invites. "
+ "Decline them using /invite decline and accept them using /join.")
+ CMD_ARGS(
+ { "send []", "The contact you wish to invite. And an optional message." },
+ { "list", "Show all rooms that you have been invited to, and not accepted or declined." },
+ { "decline ", "Decline a chat room invitation." })
+ CMD_EXAMPLES(
+ "/invite send gustavo@pollos.tx",
+ "/invite decline profanity@rooms.dismail.de",
+ "/invite list")
+ },
{ "/room",
parse_args, 1, 1, NULL,
CMD_NOSUBFUNCS
- CMD_MAINFUNC(cmd_room)
- CMD_TAGS(
- CMD_TAG_GROUPCHAT)
- CMD_SYN(
- "/room accept|destroy|config")
- CMD_DESC(
- "Chat room configuration.")
- CMD_ARGS(
- { "accept", "Accept default room configuration." },
- { "destroy", "Reject default room configuration, and destroy the room." },
- { "config", "Edit room configuration." })
- CMD_NOEXAMPLES },
+ CMD_MAINFUNC(cmd_room)
+ CMD_TAGS(
+ CMD_TAG_GROUPCHAT)
+ CMD_SYN(
+ "/room accept|destroy|config")
+ CMD_DESC(
+ "Chat room configuration.")
+ CMD_ARGS(
+ { "accept", "Accept default room configuration." },
+ { "destroy", "Reject default room configuration, and destroy the room." },
+ { "config", "Edit room configuration." })
+ CMD_NOEXAMPLES
+ },
{ "/kick",
parse_args_with_freetext, 1, 2, NULL,
CMD_NOSUBFUNCS
- CMD_MAINFUNC(cmd_kick)
- CMD_TAGS(
- CMD_TAG_GROUPCHAT)
- CMD_SYN(
- "/kick []")
- CMD_DESC(
- "Kick occupant from chat room.")
- CMD_ARGS(
- { "", "Nickname of the occupant to kick from the room." },
- { "", "Optional reason for kicking the occupant." })
- CMD_NOEXAMPLES },
+ CMD_MAINFUNC(cmd_kick)
+ CMD_TAGS(
+ CMD_TAG_GROUPCHAT)
+ CMD_SYN(
+ "/kick []")
+ CMD_DESC(
+ "Kick occupant from chat room.")
+ CMD_ARGS(
+ { "", "Nickname of the occupant to kick from the room." },
+ { "", "Optional reason for kicking the occupant." })
+ CMD_NOEXAMPLES },
{ "/ban",
parse_args_with_freetext, 1, 2, NULL,
CMD_NOSUBFUNCS
- CMD_MAINFUNC(cmd_ban)
- CMD_TAGS(
- CMD_TAG_GROUPCHAT)
- CMD_SYN(
- "/ban []")
- CMD_DESC(
- "Ban user from chat room.")
- CMD_ARGS(
- { "", "Bare JID of the user to ban from the room." },
- { "", "Optional reason for banning the user." })
- CMD_NOEXAMPLES },
+ CMD_MAINFUNC(cmd_ban)
+ CMD_TAGS(
+ CMD_TAG_GROUPCHAT)
+ CMD_SYN(
+ "/ban []")
+ CMD_DESC(
+ "Ban user from chat room.")
+ CMD_ARGS(
+ { "", "Bare JID of the user to ban from the room." },
+ { "", "Optional reason for banning the user." })
+ CMD_NOEXAMPLES
+ },
{ "/subject",
parse_args_with_freetext, 0, 2, NULL,
CMD_NOSUBFUNCS
- CMD_MAINFUNC(cmd_subject)
- CMD_TAGS(
- CMD_TAG_GROUPCHAT)
- CMD_SYN(
- "/subject set ",
- "/subject edit ",
- "/subject prepend ",
- "/subject append ",
- "/subject clear")
- CMD_DESC(
- "Set, modify, or clear room subject.")
- CMD_ARGS(
- { "set ", "Set the room subject." },
- { "edit ", "Edit the current room subject, tab autocompletion will display the subject to edit." },
- { "prepend ", "Prepend text to the current room subject, use double quotes if a trailing space is needed." },
- { "append ", "Append text to the current room subject, use double quotes if a preceding space is needed." },
- { "clear", "Clear the room subject." })
- CMD_NOEXAMPLES },
+ CMD_MAINFUNC(cmd_subject)
+ CMD_TAGS(
+ CMD_TAG_GROUPCHAT)
+ CMD_SYN(
+ "/subject set ",
+ "/subject edit ",
+ "/subject prepend ",
+ "/subject append ",
+ "/subject clear")
+ CMD_DESC(
+ "Set, modify, or clear room subject.")
+ CMD_ARGS(
+ { "set ", "Set the room subject." },
+ { "edit ", "Edit the current room subject, tab autocompletion will display the subject to edit." },
+ { "prepend ", "Prepend text to the current room subject, use double quotes if a trailing space is needed." },
+ { "append ", "Append text to the current room subject, use double quotes if a preceding space is needed." },
+ { "clear", "Clear the room subject." })
+ CMD_NOEXAMPLES
+ },
{ "/affiliation",
parse_args_with_freetext, 1, 4, NULL,
CMD_NOSUBFUNCS
- CMD_MAINFUNC(cmd_affiliation)
- CMD_TAGS(
- CMD_TAG_GROUPCHAT)
- CMD_SYN(
- "/affiliation set [