diff options
author | Sadie Powell <sadie@witchery.services> | 2025-04-22 18:14:46 +0100 |
---|---|---|
committer | Sadie Powell <sadie@witchery.services> | 2025-04-22 18:56:26 +0100 |
commit | f3743cd37dd1efb2d31f2d8aa3d489df68909c84 (patch) | |
tree | 64066a4b7f4aea205a3f8bf4811e0235646f4870 | |
parent | 0c155e0c056235720e258edc4be8c48244e73033 (diff) |
Remove hardcoded command names from most messages.
-rw-r--r-- | language/anope.en_US.po | 115 | ||||
-rw-r--r-- | modules/botserv/bs_bot.cpp | 39 | ||||
-rw-r--r-- | modules/chanserv/cs_access.cpp | 74 | ||||
-rw-r--r-- | modules/chanserv/cs_akick.cpp | 29 | ||||
-rw-r--r-- | modules/chanserv/cs_entrymsg.cpp | 46 | ||||
-rw-r--r-- | modules/chanserv/cs_mode.cpp | 10 | ||||
-rw-r--r-- | modules/global/gl_queue.cpp | 27 | ||||
-rw-r--r-- | modules/nickserv/ns_cert.cpp | 41 | ||||
-rw-r--r-- | modules/operserv/os_akill.cpp | 87 | ||||
-rw-r--r-- | modules/operserv/os_session.cpp | 99 |
10 files changed, 315 insertions, 252 deletions
diff --git a/language/anope.en_US.po b/language/anope.en_US.po index 4644bcbce..15d5dc6e3 100644 --- a/language/anope.en_US.po +++ b/language/anope.en_US.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Anope\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-04-19 16:53+0100\n" +"POT-Creation-Date: 2025-04-22 18:32+0100\n" "PO-Revision-Date: 2025-04-16 02:59+0100\n" "Last-Translator: Sadie Powell <sadie@witchery.services>\n" "Language-Team: English\n" @@ -1501,14 +1501,15 @@ msgstr "" msgid "Allows Services Operators to change modes for any user. Parameters are the same as for the standard /MODE command." msgstr "" +#, c-format msgid "" "Allows Services Operators to create, modify, and delete bots that users will be able to use on their own channels.\n" "\n" -"BOTADD adds a bot with the given nickname, username, hostname and realname. Since no integrity checks are done for these settings, be really careful.\n" +"%sADD adds a bot with the given nickname, username, hostname and realname. Since no integrity checks are done for these settings, be really careful.\n" "\n" -"BOTCHANGE allows you to change the nickname, username, hostname or realname of a bot without deleting it (and all the data associated with it).\n" +"%sCHANGE allows you to change the nickname, username, hostname or realname of a bot without deleting it (and all the data associated with it).\n" "\n" -"BOTDEL removes the given bot from the bot list.\n" +"%sDEL removes the given bot from the bot list.\n" "\n" "Note: You cannot create a bot with a nick that is currently registered. If an unregistered user is currently using the nick, they will be killed." msgstr "" @@ -1519,10 +1520,11 @@ msgid "" "Ignores will not be enforced on IRC Operators." msgstr "" +#, c-format msgid "" "Allows Services Operators to manipulate the AKILL list. If a user matching an AKILL mask attempts to connect, services will issue a KILL for that user and, on supported server types, will instruct all servers to add a ban for the mask which the user matched.\n" "\n" -"AKILLADD adds the given mask to the AKILL list for the given reason, which must be given. Mask should be in the format of nick!user@host#realname, though all that is required is user@host. If a real name is specified, the reason must be prepended with a :. expiry is specified as an integer followed by one of d (days), h (hours), or m (minutes). Combinations (such as 1h30m) are not permitted. If a unit specifier is not included, the default is days (so +30 by itself means 30 days). To add an AKILL which does not expire, use +0. If the usermask to be added starts with a +, an expiry time must be given, even if it is the same as the default. The current AKILL default expiry time can be found with the STATSAKILL command." +"%sADD adds the given mask to the AKILL list for the given reason, which must be given. Mask should be in the format of nick!user@host#realname, though all that is required is user@host. If a real name is specified, the reason must be prepended with a :. expiry is specified as an integer followed by one of d (days), h (hours), or m (minutes). Combinations (such as 1h30m) are not permitted. If a unit specifier is not included, the default is days (so +30 by itself means 30 days). To add an AKILL which does not expire, use +0. If the usermask to be added starts with a +, an expiry time must be given, even if it is the same as the default. The current AKILL default expiry time can be found with the STATSAKILL command." msgstr "" msgid "" @@ -1539,24 +1541,26 @@ msgid "" "SQLINEADD adds the given (nick/channel) mask to the SQLINE list for the given reason (which must be given). expiry is specified as an integer followed by one of d (days), h (hours), or m (minutes). Combinations (such as 1h30m) are not permitted. If a unit specifier is not included, the default is days (so +30 by itself means 30 days). To add an SQLINE which does not expire, use +0. If the mask to be added starts with a +, an expiry time must be given, even if it is the same as the default. The current SQLINE default expiry time can be found with the STATSAKILL command." msgstr "" +#, c-format msgid "" "Allows Services Operators to manipulate the list of hosts that have specific session limits - allowing certain machines, such as shell servers, to carry more than the default number of clients at a time. Once a host reaches its session limit, all clients attempting to connect from that host will be killed. Before the user is killed, they are notified, of a source of help regarding session limiting. The content of this notice is a config setting.\n" "\n" -"EXCEPTIONADD adds the given host mask to the exception list. Note that nick!user@host and user@host masks are invalid! Only real host masks, such as box.host.dom and *.host.dom, are allowed because sessions limiting does not take nick or user names into account. limit must be a number greater than or equal to zero. This determines how many sessions this host may carry at a time. A value of zero means the host has an unlimited session limit. See the AKILL help for details about the format of the optional expiry parameter. \n" +"%sADD adds the given host mask to the exception list. Note that nick!user@host and user@host masks are invalid! Only real host masks, such as box.host.dom and *.host.dom, are allowed because sessions limiting does not take nick or user names into account. limit must be a number greater than or equal to zero. This determines how many sessions this host may carry at a time. A value of zero means the host has an unlimited session limit. See the AKILL help for details about the format of the optional expiry parameter. \n" "\n" -"EXCEPTIONDEL removes the given mask from the exception list.\n" +"%sDEL removes the given mask from the exception list.\n" "\n" -"EXCEPTIONLIST and EXCEPTIONVIEW show all current sessions if the optional mask is given, the list is limited to those sessions matching the mask. The difference is that EXCEPTIONVIEW is more verbose, displaying the name of the person who added the exception, its session limit, reason, host mask and the expiry date and time. \n" +"%sLIST and %sVIEW show all current sessions if the optional mask is given, the list is limited to those sessions matching the mask. The difference is that %sVIEW is more verbose, displaying the name of the person who added the exception, its session limit, reason, host mask and the expiry date and time. \n" "\n" "Note that a connecting client will \"use\" the first exception their host matches." msgstr "" +#, c-format msgid "" "Allows Services Operators to view the session list.\n" "\n" -"SESSIONLIST lists hosts with at least threshold sessions. The threshold must be a number greater than 1. This is to prevent accidental listing of the large number of single session hosts.\n" +"%sLIST lists hosts with at least threshold sessions. The threshold must be a number greater than 1. This is to prevent accidental listing of the large number of single session hosts.\n" "\n" -"SESSIONVIEW displays detailed information about a specific host - including the current session count and session limit. The host value may not include wildcards. \n" +"%sVIEW displays detailed information about a specific host - including the current session count and session limit. The host value may not include wildcards. \n" "\n" "See the EXCEPTION help for more information about session limiting and how to set session limits specific to certain hosts and groups thereof." msgstr "" @@ -1567,16 +1571,17 @@ msgid "" "LOCK and UNLOCK may be used to enable and disable topic lock. When topic lock is set, the channel topic will be unchangeable by users who do not have the TOPIC privilege." msgstr "" +#, c-format msgid "" "Allows queueing messages to send to users on the network.\n" "\n" -"The QUEUEADD command adds the given message to the message queue.\n" +"The %sADD command adds the given message to the message queue.\n" "\n" -"The QUEUECLEAR command clears the message queue.\n" +"The %sCLEAR command clears the message queue.\n" "\n" -"The QUEUEDEL command removes the specified message from the message queue. The message number can be obtained from the output of the QUEUELIST command.\n" +"The %sDEL command removes the specified message from the message queue. The message number can be obtained from the output of the %sLIST command.\n" "\n" -"The QUEUELIST command lists all messages that are currently in the message queue." +"The %sLIST command lists all messages that are currently in the message queue." msgstr "" #, c-format @@ -2214,16 +2219,17 @@ msgstr "" msgid "Control modes and mode locks on a channel" msgstr "" +#, c-format msgid "" "Controls what messages will be sent to users when they join the channel.\n" "\n" -"The ENTRYMSGADD command adds the given message to the list of messages shown to users when they join the channel.\n" +"The %sADD command adds the given message to the list of messages shown to users when they join the channel.\n" "\n" -"The ENTRYMSGDEL command removes the specified message from the list of messages shown to users when they join the channel. You can remove a message by specifying its number which you can get by listing the messages as explained below.\n" +"The %sDEL command removes the specified message from the list of messages shown to users when they join the channel. You can remove a message by specifying its number which you can get by listing the messages as explained below.\n" "\n" -"The ENTRYMSGLIST command displays a listing of messages shown to users when they join the channel.\n" +"The %sLIST command displays a listing of messages shown to users when they join the channel.\n" "\n" -"The ENTRYMSGCLEAR command clears all entries from the list of messages shown to users when they join the channel, effectively disabling entry messages.\n" +"The %sCLEAR command clears all entries from the list of messages shown to users when they join the channel, effectively disabling entry messages.\n" "\n" "Adding, deleting, or clearing entry messages requires the SET permission." msgstr "" @@ -3334,16 +3340,16 @@ msgid "" "The %sLOCK command allows you to add, delete, and view mode locks on a channel. If a mode is locked on or off, services will not allow that mode to be changed. The SET command will clear all existing mode locks and set the new one given, while ADD and DEL modify the existing mode lock.\n" "\n" "Example:\n" -" MODE#channelLOCKADD+bmnt*!*@*aol*\n" +" %s#channel%sADD+bmnt*!*@*aol*\n" "\n" "\n" "The %sSET command allows you to set modes through services. Wildcards * and ? may be given as parameters for list and status modes.\n" "\n" "Example:\n" -" MODE#channelSET+v*\n" +" %s#channelSET+v*\n" " Sets voice status to all users in the channel.\n" "\n" -" MODE#channelSET-b~c:*\n" +" %s#channelSET-b~c:*\n" " Clears all extended bans that start with ~c:\n" "\n" "The %sCLEAR command is an easy way to clear modes on a channel. what may be any mode name. Examples include bans, excepts, inviteoverrides, ops, halfops, and voices. If what is not given then all basic modes are removed." @@ -3363,24 +3369,24 @@ msgstr "" msgid "" "Maintains the AutoKick list for a channel. If a user on the AutoKick list attempts to join the channel, %s will ban that user from the channel, then kick the user.\n" "\n" -"The AKICKADD command adds the given nick or usermask to the AutoKick list. If a reason is given with the command, that reason will be used when the user is kicked; if not, the default reason is \"User has been banned from the channel\". When akicking a registered nick the %s account will be added to the akick list instead of the mask. All users within that nickgroup will then be akicked. \n" +"The %sADD command adds the given nick or usermask to the AutoKick list. If a reason is given with the command, that reason will be used when the user is kicked; if not, the default reason is \"User has been banned from the channel\". When akicking a registered nick the %s account will be added to the akick list instead of the mask. All users within that nickgroup will then be akicked. \n" "\n" -"The AKICKDEL command removes the given nick or mask from the AutoKick list. It does not, however, remove any bans placed by an AutoKick; those must be removed manually.\n" +"The %sDEL command removes the given nick or mask from the AutoKick list. It does not, however, remove any bans placed by an AutoKick; those must be removed manually.\n" "\n" -"The AKICKLIST command displays the AutoKick list, or optionally only those AutoKick entries which match the given mask.\n" +"The %sLIST command displays the AutoKick list, or optionally only those AutoKick entries which match the given mask.\n" "\n" -"The AKICKVIEW command is a more verbose version of the AKICKLIST command.\n" +"The %sVIEW command is a more verbose version of the %sLIST command.\n" "\n" -"The AKICKENFORCE command causes %s to enforce the current AKICK list by removing those users who match an AKICK mask.\n" +"The %sENFORCE command causes %s to enforce the current akick list by removing those users who match an akick mask.\n" "\n" -"The AKICKCLEAR command clears all entries of the akick list." +"The %sCLEAR command clears all entries of the akick list." msgstr "" #, c-format msgid "" "Maintains the access list for a channel. The access list specifies which users are allowed chanop status or access to %s commands on the channel. Different user levels allow for access to different subsets of privileges. Any registered user not on the access list has a user level of 0, and any unregistered user has a user level of -1.\n" "\n" -"The ACCESSADD command adds the given mask to the access list with the given user level; if the mask is already present on the list, its access level is changed to the level specified in the command. The level specified may be a numerical level or the name of a privilege (eg AUTOOP). When a user joins the channel the access they receive is from the highest level entry in the access list." +"The %sADD command adds the given mask to the access list with the given user level; if the mask is already present on the list, its access level is changed to the level specified in the command. The level specified may be a numerical level or the name of a privilege (eg AUTOOP). When a user joins the channel the access they receive is from the highest level entry in the access list." msgstr "" #, c-format @@ -3548,20 +3554,21 @@ msgstr "" msgid "Modes cleared on %s and the channel destroyed." msgstr "" +#, c-format msgid "" "Modifies or displays the certificate list for your nick. If you connect to IRC and provide a client certificate with a matching fingerprint in the cert list, you will be automatically identified to services. Services Operators may provide a nick to modify other users' certificate lists.\n" "\n" "Examples:\n" "\n" -" CERTADD\n" +" %sADD\n" " Adds your current fingerprint to the certificate list and\n" " automatically identifies you when you connect to IRC\n" " using this fingerprint.\n" "\n" -" CERTDEL<fingerprint>\n" +" %sDEL<fingerprint>\n" " Removes the fingerprint <fingerprint> from your certificate list.\n" "\n" -" CERTLIST\n" +" %sLIST\n" " Displays the current certificate list." msgstr "" @@ -5033,6 +5040,17 @@ msgstr "" #, c-format msgid "" +"The %s command allows fine control over the meaning of the numeric access levels used for channels. With this command, you can define the access level required for most of %s's functions. (The SETFOUNDER and this command are always restricted to the channel founder).\n" +"\n" +"%sSET allows the access level for a function or group of functions to be changed. %sDISABLE (or DIS for short) disables an automatic feature or disallows access to a function by anyone, INCLUDING the founder (although, the founder can always re-enable it). Use %sSET founder to make a level founder only.\n" +"\n" +"%sLIST shows the current levels for each function or group of functions. %sRESET resets the levels to the default levels of a newly-created channel.\n" +"\n" +"For a list of the features and functions whose levels can be set, see HELP%sDESC." +msgstr "" + +#, c-format +msgid "" "The %sADD command adds the given nickname to the %s list.\n" "\n" "The %sDEL command removes the given nick from the %s list. If a list of entry numbers is given, those entries are deleted. (See the example for LIST below.)\n" @@ -5045,41 +5063,32 @@ msgid "" "The %sCLEAR command clears all entries of the %s list." msgstr "" +#, c-format msgid "" -"The ACCESSDEL command removes the given nick from the access list. If a list of entry numbers is given, those entries are deleted. (See the example for LIST below.) You may remove yourself from an access list, even if you do not have access to modify that list otherwise.\n" -"\n" -"The ACCESSLIST command displays the access list. If a wildcard mask is given, only those entries matching the mask are displayed. If a list of entry numbers is given, only those entries are shown; for example:\n" -" ACCESS#channelLIST2-5,7-9\n" -" Lists access entries numbered 2 through 5 and\n" -" 7 through 9.\n" -"\n" -"The ACCESSVIEW command displays the access list similar to ACCESSLIST but shows the creator and last used time.\n" -"\n" -"The ACCESSCLEAR command clears all entries of the access list." -msgstr "" - -msgid "" -"The AKILLDEL command removes the given mask from the AKILL list if it is present. If a list of entry numbers is given, those entries are deleted. (See the example for LIST below.)\n" +"The %sDEL command removes the given mask from the AKILL list if it is present. If a list of entry numbers is given, those entries are deleted. (See the example for LIST below.)\n" "\n" -"The AKILLLIST command displays the AKILL list. If a wildcard mask is given, only those entries matching the mask are displayed. If a list of entry numbers is given, only those entries are shown; for example:\n" -" AKILLLIST2-5,7-9\n" +"The %sLIST command displays the AKILL list. If a wildcard mask is given, only those entries matching the mask are displayed. If a list of entry numbers is given, only those entries are shown; for example:\n" +" %sLIST2-5,7-9\n" " Lists AKILL entries numbered 2 through 5 and 7\n" " through 9.\n" "\n" -"AKILLVIEW is a more verbose version of AKILLLIST, and will show who added an AKILL, the date it was added, and when it expires, as well as the user@host/ip mask and reason.\n" +"%sVIEW is a more verbose version of %sLIST, and will show who added an AKILL, the date it was added, and when it expires, as well as the user@host/ip mask and reason.\n" "\n" -"AKILLCLEAR clears all entries of the AKILL list." +"%sCLEAR clears all entries of the AKILL list." msgstr "" #, c-format msgid "" -"The LEVELS command allows fine control over the meaning of the numeric access levels used for channels. With this command, you can define the access level required for most of %s's functions. (The SETFOUNDER and this command are always restricted to the channel founder).\n" +"The %sDEL command removes the given nick from the access list. If a list of entry numbers is given, those entries are deleted. (See the example for LIST below.) You may remove yourself from an access list, even if you do not have access to modify that list otherwise.\n" "\n" -"LEVELSSET allows the access level for a function or group of functions to be changed. LEVELSDISABLE (or DIS for short) disables an automatic feature or disallows access to a function by anyone, INCLUDING the founder (although, the founder can always re-enable it). Use LEVELSSET founder to make a level founder only.\n" +"The %sLIST command displays the access list. If a wildcard mask is given, only those entries matching the mask are displayed. If a list of entry numbers is given, only those entries are shown; for example:\n" +" %s#channelLIST2-5,7-9\n" +" Lists access entries numbered 2 through 5 and\n" +" 7 through 9.\n" "\n" -"LEVELSLIST shows the current levels for each function or group of functions. LEVELSRESET resets the levels to the default levels of a newly-created channel.\n" +"The %sVIEW command displays the access list similar to %sLIST but shows the creator and last used time.\n" "\n" -"For a list of the features and functions whose levels can be set, see HELPLEVELSDESC." +"The %sCLEAR command clears all entries of the access list." msgstr "" msgid "" diff --git a/modules/botserv/bs_bot.cpp b/modules/botserv/bs_bot.cpp index cd39f73b0..79092ca99 100644 --- a/modules/botserv/bs_bot.cpp +++ b/modules/botserv/bs_bot.cpp @@ -348,24 +348,27 @@ public: this->SendSyntax(source); source.Reply(" "); source.Reply(_( - "Allows Services Operators to create, modify, and delete " - "bots that users will be able to use on their own " - "channels." - "\n\n" - "\002BOT\032ADD\002 adds a bot with the given nickname, username, " - "hostname and realname. Since no integrity checks are done " - "for these settings, be really careful." - "\n\n" - "\002BOT\032CHANGE\002 allows you to change the nickname, username, hostname " - "or realname of a bot without deleting it (and " - "all the data associated with it)." - "\n\n" - "\002BOT\032DEL\002 removes the given bot from the bot list." - "\n\n" - "\002Note\002: You cannot create a bot with a nick that is " - "currently registered. If an unregistered user is currently " - "using the nick, they will be killed." - )); + "Allows Services Operators to create, modify, and delete " + "bots that users will be able to use on their own " + "channels." + "\n\n" + "\002%s\032ADD\002 adds a bot with the given nickname, username, " + "hostname and realname. Since no integrity checks are done " + "for these settings, be really careful." + "\n\n" + "\002%s\032CHANGE\002 allows you to change the nickname, username, hostname " + "or realname of a bot without deleting it (and " + "all the data associated with it)." + "\n\n" + "\002%s\032DEL\002 removes the given bot from the bot list." + "\n\n" + "\002Note\002: You cannot create a bot with a nick that is " + "currently registered. If an unregistered user is currently " + "using the nick, they will be killed." + ), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str()); return true; } }; diff --git a/modules/chanserv/cs_access.cpp b/modules/chanserv/cs_access.cpp index c7754b2ad..43082ee02 100644 --- a/modules/chanserv/cs_access.cpp +++ b/modules/chanserv/cs_access.cpp @@ -591,7 +591,7 @@ public: "a user level of 0, and any unregistered user has a user level " "of -1." "\n\n" - "The \002ACCESS\032ADD\002 command adds the given mask to the " + "The \002%s\032ADD\002 command adds the given mask to the " "access list with the given user level; if the mask is " "already present on the list, its access level is changed to " "the level specified in the command. The \037level\037 specified " @@ -599,7 +599,8 @@ public: "When a user joins the channel the access they receive is from the " "highest level entry in the access list." ), - source.service->nick.c_str()); + source.service->nick.c_str(), + source.command.nobreak().c_str()); if (!Config->GetModule("chanserv").Get<bool>("disallow_channel_access")) { @@ -611,26 +612,32 @@ public: source.Reply(" "); source.Reply(_( - "The \002ACCESS\032DEL\002 command removes the given nick from the " - "access list. If a list of entry numbers is given, those " - "entries are deleted. (See the example for LIST below.) " - "You may remove yourself from an access list, even if you " - "do not have access to modify that list otherwise." - "\n\n" - "The \002ACCESS\032LIST\002 command displays the access list. If " - "a wildcard mask is given, only those entries matching the " - "mask are displayed. If a list of entry numbers is given, " - "only those entries are shown; for example:\n" - " \002ACCESS\032#channel\032LIST\0322-5,7-9\002\n" - " Lists access entries numbered 2 through 5 and\n" - " 7 through 9." - "\n\n" - "The \002ACCESS\032VIEW\002 command displays the access list similar " - "to \002ACCESS\032LIST\002 but shows the creator and last used time." - "\n\n" - "The \002ACCESS\032CLEAR\002 command clears all entries of the " - "access list." - )); + "The \002%s\032DEL\002 command removes the given nick from the " + "access list. If a list of entry numbers is given, those " + "entries are deleted. (See the example for LIST below.) " + "You may remove yourself from an access list, even if you " + "do not have access to modify that list otherwise." + "\n\n" + "The \002%s\032LIST\002 command displays the access list. If " + "a wildcard mask is given, only those entries matching the " + "mask are displayed. If a list of entry numbers is given, " + "only those entries are shown; for example:\n" + " \002%s\032#channel\032LIST\0322-5,7-9\002\n" + " Lists access entries numbered 2 through 5 and\n" + " 7 through 9." + "\n\n" + "The \002%s\032VIEW\002 command displays the access list similar " + "to \002%s\032LIST\002 but shows the creator and last used time." + "\n\n" + "The \002%s\032CLEAR\002 command clears all entries of the " + "access list." + ), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str()); BotInfo *bi; Anope::string cmd; @@ -853,27 +860,34 @@ public: this->SendSyntax(source); source.Reply(" "); source.Reply(_( - "The \002LEVELS\002 command allows fine control over the meaning of " + "The \002%s\002 command allows fine control over the meaning of " "the numeric access levels used for channels. With this " "command, you can define the access level required for most " "of %s's functions. (The \002SET\032FOUNDER\002 and this command " "are always restricted to the channel founder)." "\n\n" - "\002LEVELS\032SET\002 allows the access level for a function or group of " - "functions to be changed. \002LEVELS\032DISABLE\002 (or \002DIS\002 for short) " + "\002%s\032SET\002 allows the access level for a function or group of " + "functions to be changed. \002%s\032DISABLE\002 (or \002DIS\002 for short) " "disables an automatic feature or disallows access to a " "function by anyone, INCLUDING the founder (although, the founder " - "can always re-enable it). Use \002LEVELS\032SET founder\002 to make a level " + "can always re-enable it). Use \002%s\032SET founder\002 to make a level " "founder only." "\n\n" - "\002LEVELS\032LIST\002 shows the current levels for each function or " - "group of functions. \002LEVELS\032RESET\002 resets the levels to the " + "\002%s\032LIST\002 shows the current levels for each function or " + "group of functions. \002%s\032RESET\002 resets the levels to the " "default levels of a newly-created channel." "\n\n" "For a list of the features and functions whose levels can be " - "set, see \002HELP\032LEVELS\032DESC\002." + "set, see \002HELP\032%s\032DESC\002." ), - source.service->nick.c_str()); + source.service->nick.c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str()); } return true; } diff --git a/modules/chanserv/cs_akick.cpp b/modules/chanserv/cs_akick.cpp index b242fed4a..ef63c4d3f 100644 --- a/modules/chanserv/cs_akick.cpp +++ b/modules/chanserv/cs_akick.cpp @@ -494,7 +494,7 @@ public: "%s will ban that user from the channel, then kick " "the user." "\n\n" - "The \002AKICK\032ADD\002 command adds the given nick or usermask " + "The \002%s\032ADD\002 command adds the given nick or usermask " "to the AutoKick list. If a \037reason\037 is given with " "the command, that reason will be used when the user is " "kicked; if not, the default reason is \"User has been " @@ -503,28 +503,35 @@ public: "will be added to the akick list instead of the mask. " "All users within that nickgroup will then be akicked. " "\n\n" - "The \002AKICK\032DEL\002 command removes the given nick or mask " + "The \002%s\032DEL\002 command removes the given nick or mask " "from the AutoKick list. It does not, however, remove any " "bans placed by an AutoKick; those must be removed " "manually." "\n\n" - "The \002AKICK\032LIST\002 command displays the AutoKick list, or " + "The \002%s\032LIST\002 command displays the AutoKick list, or " "optionally only those AutoKick entries which match the " "given mask." "\n\n" - "The \002AKICK\032VIEW\002 command is a more verbose version of the " - "\002AKICK\032LIST\002 command." + "The \002%s\032VIEW\002 command is a more verbose version of the " + "\002%s\032LIST\002 command." "\n\n" - "The \002AKICK\032ENFORCE\002 command causes %s to enforce the " - "current AKICK list by removing those users who match an " - "AKICK mask." + "The \002%s\032ENFORCE\002 command causes %s to enforce the " + "current akick list by removing those users who match an " + "akick mask." "\n\n" - "The \002AKICK\032CLEAR\002 command clears all entries of the " + "The \002%s\032CLEAR\002 command clears all entries of the " "akick list." ), source.service->nick.c_str(), - source.service->nick.c_str(), - bi ? bi->nick.c_str() : "NickServ"); + source.command.nobreak().c_str(), + bi ? bi->nick.c_str() : "NickServ", + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str()); return true; } diff --git a/modules/chanserv/cs_entrymsg.cpp b/modules/chanserv/cs_entrymsg.cpp index fa3c59c84..ac83e45f1 100644 --- a/modules/chanserv/cs_entrymsg.cpp +++ b/modules/chanserv/cs_entrymsg.cpp @@ -246,27 +246,31 @@ public: this->SendSyntax(source); source.Reply(" "); source.Reply(_( - "Controls what messages will be sent to users when they join the channel." - "\n\n" - "The \002ENTRYMSG\032ADD\002 command adds the given message to " - "the list of messages shown to users when they join " - "the channel." - "\n\n" - "The \002ENTRYMSG\032DEL\002 command removes the specified message from " - "the list of messages shown to users when they join " - "the channel. You can remove a message by specifying its number " - "which you can get by listing the messages as explained below." - "\n\n" - "The \002ENTRYMSG\032LIST\002 command displays a listing of messages " - "shown to users when they join the channel." - "\n\n" - "The \002ENTRYMSG\032CLEAR\002 command clears all entries from " - "the list of messages shown to users when they join " - "the channel, effectively disabling entry messages." - "\n\n" - "Adding, deleting, or clearing entry messages requires the " - "SET permission." - )); + "Controls what messages will be sent to users when they join the channel." + "\n\n" + "The \002%s\032ADD\002 command adds the given message to " + "the list of messages shown to users when they join " + "the channel." + "\n\n" + "The \002%s\032DEL\002 command removes the specified message from " + "the list of messages shown to users when they join " + "the channel. You can remove a message by specifying its number " + "which you can get by listing the messages as explained below." + "\n\n" + "The \002%s\032LIST\002 command displays a listing of messages " + "shown to users when they join the channel." + "\n\n" + "The \002%s\032CLEAR\002 command clears all entries from " + "the list of messages shown to users when they join " + "the channel, effectively disabling entry messages." + "\n\n" + "Adding, deleting, or clearing entry messages requires the " + "SET permission." + ), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str()); return true; } }; diff --git a/modules/chanserv/cs_mode.cpp b/modules/chanserv/cs_mode.cpp index f7f417d28..26741654f 100644 --- a/modules/chanserv/cs_mode.cpp +++ b/modules/chanserv/cs_mode.cpp @@ -784,16 +784,16 @@ public: "modify the existing mode lock." "\n\n" "Example:\n" - " \002MODE\032#channel\032LOCK\032ADD\032+bmnt\032*!*@*aol*\002\n" + " \002%s\032#channel\032%s\032ADD\032+bmnt\032*!*@*aol*\002\n" "\n\n" "The \002%s\032SET\002 command allows you to set modes through services. Wildcards * and ? may " "be given as parameters for list and status modes." "\n\n" "Example:\n" - " \002MODE\032#channel\032SET\032+v\032*\002\n" + " \002%s\032#channel\032SET\032+v\032*\002\n" " Sets voice status to all users in the channel." "\n\n" - " \002MODE\032#channel\032SET\032-b\032~c:*\n" + " \002%s\032#channel\032SET\032-b\032~c:*\n" " Clears all extended bans that start with ~c:" "\n\n" "The \002%s\032CLEAR\002 command is an easy way to clear modes on a channel. \037what\037 may be " @@ -802,6 +802,10 @@ public: ), source.command.nobreak().c_str(), source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), source.command.nobreak().c_str()); return true; } diff --git a/modules/global/gl_queue.cpp b/modules/global/gl_queue.cpp index a66fb6b4b..6ad164b30 100644 --- a/modules/global/gl_queue.cpp +++ b/modules/global/gl_queue.cpp @@ -167,17 +167,22 @@ public: this->SendSyntax(source); source.Reply(""); source.Reply(_( - "Allows queueing messages to send to users on the network." - "\n\n" - "The \002QUEUE\032ADD\002 command adds the given message to the message queue." - "\n\n" - "The \002QUEUE\032CLEAR\002 command clears the message queue." - "\n\n" - "The \002QUEUE\032DEL\002 command removes the specified message from the message queue. The " - "message number can be obtained from the output of the \002QUEUE\032LIST\002 command." - "\n\n" - "The \002QUEUE\032LIST\002 command lists all messages that are currently in the message queue." - )); + "Allows queueing messages to send to users on the network." + "\n\n" + "The \002%s\032ADD\002 command adds the given message to the message queue." + "\n\n" + "The \002%s\032CLEAR\002 command clears the message queue." + "\n\n" + "The \002%s\032DEL\002 command removes the specified message from the message queue. The " + "message number can be obtained from the output of the \002%s\032LIST\002 command." + "\n\n" + "The \002%s\032LIST\002 command lists all messages that are currently in the message queue." + ), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str()); return true; } }; diff --git a/modules/nickserv/ns_cert.cpp b/modules/nickserv/ns_cert.cpp index 869f236fa..e3806dcbb 100644 --- a/modules/nickserv/ns_cert.cpp +++ b/modules/nickserv/ns_cert.cpp @@ -355,25 +355,28 @@ public: this->SendSyntax(source); source.Reply(" "); source.Reply(_( - "Modifies or displays the certificate list for your nick. " - "If you connect to IRC and provide a client certificate with a " - "matching fingerprint in the cert list, you will be " - "automatically identified to services. Services Operators " - "may provide a nick to modify other users' certificate lists." - "\n\n" - "Examples:" - "\n\n" - " \002CERT\032ADD\002\n" - " Adds your current fingerprint to the certificate list and\n" - " automatically identifies you when you connect to IRC\n" - " using this fingerprint." - "\n\n" - " \002CERT\032DEL\032<fingerprint>\002\n" - " Removes the fingerprint <fingerprint> from your certificate list." - "\n\n" - " \002CERT\032LIST\002\n" - " Displays the current certificate list." - )); + "Modifies or displays the certificate list for your nick. " + "If you connect to IRC and provide a client certificate with a " + "matching fingerprint in the cert list, you will be " + "automatically identified to services. Services Operators " + "may provide a nick to modify other users' certificate lists." + "\n\n" + "Examples:" + "\n\n" + " \002%s\032ADD\002\n" + " Adds your current fingerprint to the certificate list and\n" + " automatically identifies you when you connect to IRC\n" + " using this fingerprint." + "\n\n" + " \002%s\032DEL\032<fingerprint>\002\n" + " Removes the fingerprint <fingerprint> from your certificate list." + "\n\n" + " \002%s\032LIST\002\n" + " Displays the current certificate list." + ), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str()); return true; } }; diff --git a/modules/operserv/os_akill.cpp b/modules/operserv/os_akill.cpp index 0cb2f51d3..b31f5404d 100644 --- a/modules/operserv/os_akill.cpp +++ b/modules/operserv/os_akill.cpp @@ -422,27 +422,28 @@ public: this->SendSyntax(source); source.Reply(" "); source.Reply(_( - "Allows Services Operators to manipulate the AKILL list. If " - "a user matching an AKILL mask attempts to connect, services " - "will issue a KILL for that user and, on supported server " - "types, will instruct all servers to add a ban for the mask " - "which the user matched." - "\n\n" - "\002AKILL\032ADD\002 adds the given mask to the AKILL " - "list for the given reason, which \002must\002 be given. " - "Mask should be in the format of nick!user@host#real\032name, " - "though all that is required is user@host. If a real name is specified, " - "the reason must be prepended with a :. " - "\037expiry\037 is specified as an integer followed by one of \037d\037 " - "(days), \037h\037 (hours), or \037m\037 (minutes). Combinations (such as " - "\0371h30m\037) are not permitted. If a unit specifier is not " - "included, the default is days (so \037+30\037 by itself means 30 " - "days). To add an AKILL which does not expire, use \037+0\037. If the " - "usermask to be added starts with a \037+\037, an expiry time must " - "be given, even if it is the same as the default. The " - "current AKILL default expiry time can be found with the " - "\002STATS\032AKILL\002 command." - )); + "Allows Services Operators to manipulate the AKILL list. If " + "a user matching an AKILL mask attempts to connect, services " + "will issue a KILL for that user and, on supported server " + "types, will instruct all servers to add a ban for the mask " + "which the user matched." + "\n\n" + "\002%s\032ADD\002 adds the given mask to the AKILL " + "list for the given reason, which \002must\002 be given. " + "Mask should be in the format of nick!user@host#real\032name, " + "though all that is required is user@host. If a real name is specified, " + "the reason must be prepended with a :. " + "\037expiry\037 is specified as an integer followed by one of \037d\037 " + "(days), \037h\037 (hours), or \037m\037 (minutes). Combinations (such as " + "\0371h30m\037) are not permitted. If a unit specifier is not " + "included, the default is days (so \037+30\037 by itself means 30 " + "days). To add an AKILL which does not expire, use \037+0\037. If the " + "usermask to be added starts with a \037+\037, an expiry time must " + "be given, even if it is the same as the default. The " + "current AKILL default expiry time can be found with the " + "\002STATS\032AKILL\002 command." + ), + source.command.nobreak().c_str()); const Anope::string ®exengine = Config->GetBlock("options").Get<const Anope::string>("regexengine"); if (!regexengine.empty()) @@ -457,25 +458,31 @@ public: source.Reply(" "); source.Reply(_( - "The \002AKILL\032DEL\002 command removes the given mask from the " - "AKILL list if it is present. If a list of entry numbers is " - "given, those entries are deleted. (See the example for LIST " - "below.)" - "\n\n" - "The \002AKILL\032LIST\002 command displays the AKILL list. " - "If a wildcard mask is given, only those entries matching the " - "mask are displayed. If a list of entry numbers is given, " - "only those entries are shown; for example:\n" - " \002AKILL\032LIST\0322-5,7-9\002\n" - " Lists AKILL entries numbered 2 through 5 and 7\n" - " through 9." - "\n\n" - "\002AKILL\032VIEW\002 is a more verbose version of \002AKILL\032LIST\002, and " - "will show who added an AKILL, the date it was added, and when " - "it expires, as well as the user@host/ip mask and reason." - "\n\n" - "\002AKILL\032CLEAR\002 clears all entries of the AKILL list." - )); + "The \002%s\032DEL\002 command removes the given mask from the " + "AKILL list if it is present. If a list of entry numbers is " + "given, those entries are deleted. (See the example for LIST " + "below.)" + "\n\n" + "The \002%s\032LIST\002 command displays the AKILL list. " + "If a wildcard mask is given, only those entries matching the " + "mask are displayed. If a list of entry numbers is given, " + "only those entries are shown; for example:\n" + " \002%s\032LIST\0322-5,7-9\002\n" + " Lists AKILL entries numbered 2 through 5 and 7\n" + " through 9." + "\n\n" + "\002%s\032VIEW\002 is a more verbose version of \002%s\032LIST\002, and " + "will show who added an AKILL, the date it was added, and when " + "it expires, as well as the user@host/ip mask and reason." + "\n\n" + "\002%s\032CLEAR\002 clears all entries of the AKILL list." + ), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str()); return true; } }; diff --git a/modules/operserv/os_session.cpp b/modules/operserv/os_session.cpp index 34e9e7ed0..de554140b 100644 --- a/modules/operserv/os_session.cpp +++ b/modules/operserv/os_session.cpp @@ -300,21 +300,23 @@ public: this->SendSyntax(source); source.Reply(" "); source.Reply(_( - "Allows Services Operators to view the session list." - "\n\n" - "\002SESSION\032LIST\002 lists hosts with at least \037threshold\037 sessions. " - "The threshold must be a number greater than 1. This is to " - "prevent accidental listing of the large number of single " - "session hosts." - "\n\n" - "\002SESSION\032VIEW\002 displays detailed information about a specific " - "host - including the current session count and session limit. " - "The \037host\037 value may not include wildcards. " - "\n\n" - "See the \002EXCEPTION\002 help for more information about session " - "limiting and how to set session limits specific to certain " - "hosts and groups thereof." - )); + "Allows Services Operators to view the session list." + "\n\n" + "\002%s\032LIST\002 lists hosts with at least \037threshold\037 sessions. " + "The threshold must be a number greater than 1. This is to " + "prevent accidental listing of the large number of single " + "session hosts." + "\n\n" + "\002%s\032VIEW\002 displays detailed information about a specific " + "host - including the current session count and session limit. " + "The \037host\037 value may not include wildcards. " + "\n\n" + "See the \002EXCEPTION\002 help for more information about session " + "limiting and how to set session limits specific to certain " + "hosts and groups thereof." + ), + source.command.nobreak().c_str(), + source.command.nobreak().c_str()); return true; } }; @@ -578,37 +580,42 @@ public: this->SendSyntax(source); source.Reply(" "); source.Reply(_( - "Allows Services Operators to manipulate the list of hosts that " - "have specific session limits - allowing certain machines, " - "such as shell servers, to carry more than the default number " - "of clients at a time. Once a host reaches its session limit, " - "all clients attempting to connect from that host will be " - "killed. Before the user is killed, they are notified, of a " - "source of help regarding session limiting. The content of " - "this notice is a config setting." - "\n\n" - "\002EXCEPTION\032ADD\002 adds the given host mask to the exception list. " - "Note that \002nick!user@host\002 and \002user@host\002 masks are invalid! " - "Only real host masks, such as \002box.host.dom\002 and \002*.host.dom\002, " - "are allowed because sessions limiting does not take nick or " - "user names into account. \037limit\037 must be a number greater than " - "or equal to zero. This determines how many sessions this host " - "may carry at a time. A value of zero means the host has an " - "unlimited session limit. See the \002AKILL\002 help for details about " - "the format of the optional \037expiry\037 parameter. " - "\n\n" - "\002EXCEPTION\032DEL\002 removes the given mask from the exception list." - "\n\n" - "\002EXCEPTION\032LIST\002 and \002EXCEPTION\032VIEW\002 show all current " - "sessions if the optional mask is given, the list is limited " - "to those sessions matching the mask. The difference is that " - "\002EXCEPTION\032VIEW\002 is more verbose, displaying the name of the " - "person who added the exception, its session limit, reason, " - "host mask and the expiry date and time. " - "\n\n" - "Note that a connecting client will \"use\" the first exception " - "their host matches." - )); + "Allows Services Operators to manipulate the list of hosts that " + "have specific session limits - allowing certain machines, " + "such as shell servers, to carry more than the default number " + "of clients at a time. Once a host reaches its session limit, " + "all clients attempting to connect from that host will be " + "killed. Before the user is killed, they are notified, of a " + "source of help regarding session limiting. The content of " + "this notice is a config setting." + "\n\n" + "\002%s\032ADD\002 adds the given host mask to the exception list. " + "Note that \002nick!user@host\002 and \002user@host\002 masks are invalid! " + "Only real host masks, such as \002box.host.dom\002 and \002*.host.dom\002, " + "are allowed because sessions limiting does not take nick or " + "user names into account. \037limit\037 must be a number greater than " + "or equal to zero. This determines how many sessions this host " + "may carry at a time. A value of zero means the host has an " + "unlimited session limit. See the \002AKILL\002 help for details about " + "the format of the optional \037expiry\037 parameter. " + "\n\n" + "\002%s\032DEL\002 removes the given mask from the exception list." + "\n\n" + "\002%s\032LIST\002 and \002%s\032VIEW\002 show all current " + "sessions if the optional mask is given, the list is limited " + "to those sessions matching the mask. The difference is that " + "\002%s\032VIEW\002 is more verbose, displaying the name of the " + "person who added the exception, its session limit, reason, " + "host mask and the expiry date and time. " + "\n\n" + "Note that a connecting client will \"use\" the first exception " + "their host matches." + ), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str(), + source.command.nobreak().c_str()); return true; } }; |