diff options
86 files changed, 562 insertions, 519 deletions
diff --git a/data/botserv.example.conf b/data/botserv.example.conf index 93d9a9d16..9f13850cb 100644 --- a/data/botserv.example.conf +++ b/data/botserv.example.conf @@ -9,7 +9,7 @@ service { /* - * The name of the BotServ client + * The name of the BotServ client. */ nick = "BotServ" @@ -149,7 +149,7 @@ botserv * Sane defaults are provided below that do not need to be edited unless you wish to change the default behavior. */ -/* Give it a help command */ +/* Give it a help command. */ command { service = "BotServ"; name = "HELP"; command = "generic/help"; } /* diff --git a/data/chanserv.example.conf b/data/chanserv.example.conf index e885fd8fe..aec506c8e 100644 --- a/data/chanserv.example.conf +++ b/data/chanserv.example.conf @@ -9,7 +9,7 @@ service { /* - * The name of the ChanServ client + * The name of the ChanServ client. */ nick = "ChanServ" @@ -873,7 +873,7 @@ command_group description = "Services Operator commands" } -/* Give it a help command */ +/* Give it a help command. */ command { service = "ChanServ"; name = "HELP"; command = "generic/help"; } /* diff --git a/data/chanstats.example.conf b/data/chanstats.example.conf index 3244ce751..0f131a85a 100644 --- a/data/chanstats.example.conf +++ b/data/chanstats.example.conf @@ -1,5 +1,5 @@ /* - * Example configuration file for chanstats + * Example configuration file for Chanstats. * Make sure BotServ, ChanServ and NickServ are running. */ diff --git a/data/example.conf b/data/example.conf index ae6ead694..88a2fb21e 100644 --- a/data/example.conf +++ b/data/example.conf @@ -778,9 +778,9 @@ log * global/global * * operserv/news operserv/stats operserv/kick operserv/exception operserv/seen - * operserv/mode operserv/session operserv/modinfo operserv/ignore - * operserv/chankill operserv/akill operserv/sqline operserv/snline - * operserv/global operserv/oper operserv/config operserv/umode + * operserv/mode operserv/session operserv/modinfo operserv/ignore operserv/chanlist + * operserv/chankill operserv/akill operserv/sqline operserv/snline operserv/userlist + * operserv/global operserv/oper operserv/config operserv/umode operserv/logsearch * operserv/modload operserv/jupe operserv/set operserv/noop * operserv/quit operserv/update operserv/reload operserv/restart * operserv/shutdown operserv/svs operserv/oline operserv/kill @@ -1178,7 +1178,8 @@ module { name = "enc_sha256" } */ #module { name = "enc_old" } -/* Extra (optional) modules */ + +/* Extra (optional) modules. */ include { type = "file" @@ -1186,10 +1187,9 @@ include } /* - * Chanstats Modules - * Requires a MySQL Database + * Chanstats module. + * Requires a MySQL Database. */ - #include #{ # type = "file" diff --git a/data/global.example.conf b/data/global.example.conf index dfc7ad163..2ae7cdc99 100644 --- a/data/global.example.conf +++ b/data/global.example.conf @@ -9,7 +9,7 @@ service { /* - * The name of the Global client + * The name of the Global client. */ nick = "Global" @@ -109,7 +109,7 @@ global * Sane defaults are provided below that do not need to be edited unless you wish to change the default behavior. */ -/* Give it a help command */ +/* Give it a help command. */ command { service = "Global"; name = "HELP"; command = "generic/help"; } /* diff --git a/data/hostserv.example.conf b/data/hostserv.example.conf index 6b1b471c4..1d406ef5b 100644 --- a/data/hostserv.example.conf +++ b/data/hostserv.example.conf @@ -9,7 +9,7 @@ service { /* - * The name of the HostServ client + * The name of the HostServ client. */ nick = "HostServ" @@ -108,7 +108,7 @@ hostserv * Sane defaults are provided below that do not need to be edited unless you wish to change the default behavior. */ -/* Give it a help command */ +/* Give it a help command. */ command { service = "HostServ"; name = "HELP"; command = "generic/help"; } /* diff --git a/data/memoserv.example.conf b/data/memoserv.example.conf index 84ad32f06..40678bf53 100644 --- a/data/memoserv.example.conf +++ b/data/memoserv.example.conf @@ -9,7 +9,7 @@ service { /* - * The name of the MemoServ client + * The name of the MemoServ client. */ nick = "MemoServ" @@ -111,7 +111,7 @@ memoserv * Sane defaults are provided below that do not need to be edited unless you wish to change the default behavior. */ -/* Give it a help command */ +/* Give it a help command. */ command { service = "MemoServ"; name = "HELP"; command = "generic/help"; } /* diff --git a/data/modules.example.conf b/data/modules.example.conf index 350c85193..fea868c02 100644 --- a/data/modules.example.conf +++ b/data/modules.example.conf @@ -9,7 +9,7 @@ /* * help * - * Provides commands generic/help + * Provides the command generic/help. * * This is a generic help command that can be used with any client. */ @@ -153,16 +153,16 @@ m_helpchan #module { name = "m_httpd" } httpd { - /* Name of this service */ + /* Name of this service. */ name = "httpd/main" - /* IP to listen on */ + /* IP to listen on. */ ip = "0.0.0.0" - /* Port to listen on */ + /* Port to listen on. */ port = 8080 - /* Time before connections to this server are timed out */ + /* Time before connections to this server are timed out. */ timeout = 30 /* Listen using SSL. Requires m_ssl. */ @@ -242,12 +242,12 @@ m_ldap_authentication password_attribute = "userPassword" /* - * Enable to have this module disable /nickserv register. + * Enable this to have this module disable "/msg NickServ REGISTER". */ disable_ns_register = false /* - * The reason to give the users who try to /ns register if + * The reason to give the users who try to "/msg NickServ REGISTER" if * disable_ns_register is enabled. */ #disable_reason = "To register on this network, visit http://some.misconfigured.site/register" @@ -301,7 +301,7 @@ m_ldap_oper #module { name = "m_mysql" } mysql { - /* The name of this service */ + /* The name of this service. */ name = "mysql/main" database = "anope" server = "127.0.0.1" @@ -377,13 +377,13 @@ m_proxyscan */ proxyscan { - /* The type of proxy to check for. A comma separated list is allowed */ + /* The type of proxy to check for. A comma separated list is allowed. */ type = "HTTP" - /* The ports to check */ + /* The ports to check. */ port = "80,8080" - /* How long to set the ban for */ + /* How long to set the ban for. */ time = 4h /* @@ -433,12 +433,12 @@ m_sql_authentication query = "SELECT `email_addr` AS `email` FROM `my_users` WHERE `username` = @a@ AND `password` = MD5(CONCAT('salt', @p@))" /* - * Enable to have this module disable /nickserv register. + * Enable this to have this module disable "/msg NickServ REGISTER". */ disable_ns_register = false /* - * The reason to give the users who try to /ns register if + * The reason to give the users who try to "/msg NickServ REGISTER" if * disable_ns_register is enabled. */ #disable_reason = "To register on this network visit http://some.misconfigured.site/register" @@ -477,7 +477,7 @@ m_sql_oper #module { name = "m_sqlite" } sqlite { - /* The name of this service */ + /* The name of this service. */ name = "sqlite/main" /* The database name, it will be created if it does not exist. */ @@ -516,7 +516,7 @@ module { name = "m_rewrite" } #{ # service = "ChanServ"; name = "CLEAR"; command = "rewrite" # -# /* Enable m_rewrite */ +# /* Enable m_rewrite. */ # rewrite = true # # /* Source message to match. A $ can be used to match anything. */ @@ -589,15 +589,15 @@ m_xmlrpc #module { name = "webcpanel" } webcpanel { - /* Web server to use */ + /* Web server to use. */ server = "httpd/main"; - /* Template to use */ + /* Template to use. */ template = "default"; - /* Page title */ + /* Page title. */ title = "Anope IRC Services"; - /* Whether or not to use https on redirecting URLS */ + /* Whether or not to use https on redirecting URLs. */ ssl = no } diff --git a/data/nickserv.example.conf b/data/nickserv.example.conf index 1030f08f5..be36e0e4a 100644 --- a/data/nickserv.example.conf +++ b/data/nickserv.example.conf @@ -9,7 +9,7 @@ service { /* - * The name of the NickServ client + * The name of the NickServ client. */ nick = "NickServ" @@ -317,7 +317,7 @@ command_group description = "Services Operator commands" } -/* Give it a help command */ +/* Give it a help command. */ command { service = "NickServ"; name = "HELP"; command = "generic/help"; } /* diff --git a/data/operserv.example.conf b/data/operserv.example.conf index 5ffc015a4..8e2afbc0a 100644 --- a/data/operserv.example.conf +++ b/data/operserv.example.conf @@ -9,7 +9,7 @@ service { /* - * The name of the OperServ client + * The name of the OperServ client. */ nick = "OperServ" @@ -185,7 +185,7 @@ operserv /* * Sets the CIDR value used to determine which IP addresses represent the same person. - * By default this would limit 3 connections per IPv4 IP and 3 conenctions per IPv6 IP. + * By default this would limit 3 connections per IPv4 IP and 3 connections per IPv6 IP. */ session_ipv4_cidr = 32 session_ipv6_cidr = 128 @@ -223,7 +223,7 @@ operserv * Sane defaults are provided below that do not need to be edited unless you wish to change the default behavior. */ -/* Give it a help command */ +/* Give it a help command. */ command { service = "OperServ"; name = "HELP"; command = "generic/help"; } /* @@ -350,7 +350,7 @@ defcon * Defines the reason to use when clients are KILLed or AKILLed from the network while the proper * DefCon operation is in effect. */ - #akillreason = "This network is currently not accepting connections, please try again later" + #akillreason = "This network is currently not accepting connections, please try again later." } /* @@ -481,8 +481,8 @@ command { service = "OperServ"; name = "KILL"; command = "operserv/kill"; permis * Used to list and search the channels and users currently on the network. */ module { name = "os_list" } -command { service = "OperServ"; name = "CHANLIST"; command = "operserv/chanlist"; } -command { service = "OperServ"; name = "USERLIST"; command = "operserv/userlist"; } +command { service = "OperServ"; name = "CHANLIST"; command = "operserv/chanlist"; permission = "operserv/chanlist"; } +command { service = "OperServ"; name = "USERLIST"; command = "operserv/userlist"; permission = "operserv/userlist"; } /* * os_login @@ -503,7 +503,7 @@ command { service = "OperServ"; name = "LOGOUT"; command = "operserv/logout"; } * Used to search services log files. */ module { name = "os_logsearch" } -command { service = "OperServ"; name = "LOGSEARCH"; command = "operserv/logsearch"; } +command { service = "OperServ"; name = "LOGSEARCH"; command = "operserv/logsearch"; permission = "operserv/logsearch"; } logsearch { /* The log file name to search. There should be a log{} block configured to log diff --git a/modules/commands/bs_badwords.cpp b/modules/commands/bs_badwords.cpp index 65977cf04..147b23b95 100644 --- a/modules/commands/bs_badwords.cpp +++ b/modules/commands/bs_badwords.cpp @@ -110,18 +110,18 @@ class CommandBSBadwords : public Command } if (list.IsEmpty()) - source.Reply(_("No matching entries on %s badword list."), ci->name.c_str()); + source.Reply(_("No matching entries on %s bad words list."), ci->name.c_str()); else { std::vector<Anope::string> replies; list.Process(replies); - source.Reply(_("Badword list for %s:"), ci->name.c_str()); + source.Reply(_("Bad words list for %s:"), ci->name.c_str()); for (unsigned i = 0; i < replies.size(); ++i) source.Reply(replies[i]); - source.Reply(_("End of badword list.")); + source.Reply(_("End of bad words list.")); } } @@ -222,7 +222,7 @@ class CommandBSBadwords : public Command public: CommandBSBadwords(Module *creator) : Command(creator, "botserv/badwords", 2, 3) { - this->SetDesc(_("Maintains bad words list")); + this->SetDesc(_("Maintains the bad words list")); this->SetSyntax(_("\037channel\037 ADD \037word\037 [\037SINGLE\037 | \037START\037 | \037END\037]")); this->SetSyntax(_("\037channel\037 DEL {\037word\037 | \037entry-num\037 | \037list\037}")); this->SetSyntax(_("\037channel\037 LIST [\037mask\037 | \037list\037]")); @@ -282,8 +282,8 @@ class CommandBSBadwords : public Command "type \002%s%s HELP KICK %s\002.\n" " \n" "The \002ADD\002 command adds the given word to the\n" - "badword list. If SINGLE is specified, a kick will be\n" - "done only if a user says the entire word. If START is \n" + "bad words list. If SINGLE is specified, a kick will be\n" + "done only if a user says the entire word. If START is\n" "specified, a kick will be done if a user says a word\n" "that starts with \037word\037. If END is specified, a kick\n" "will be done if a user says a word that ends with\n" diff --git a/modules/commands/bs_bot.cpp b/modules/commands/bs_bot.cpp index 793d739c8..f46d61ef9 100644 --- a/modules/commands/bs_bot.cpp +++ b/modules/commands/bs_bot.cpp @@ -31,38 +31,37 @@ class CommandBSBot : public Command if (nick.length() > Config->NickLen) { - source.Reply(_("Bot Nicks may only contain valid nick characters.")); + source.Reply(_("Bot nicks may only be %d characters long."), Config->NickLen); return; } if (user.length() > Config->UserLen) { - source.Reply(_("Bot Idents may only contain %d characters."), Config->UserLen); + source.Reply(_("Bot idents may only be %d characters long."), Config->UserLen); return; } if (host.length() > Config->HostLen) { - source.Reply(_("Bot Hosts may only contain %d characters."), Config->HostLen); + source.Reply(_("Bot hosts may only be %d characters long."), Config->HostLen); return; } if (!IRCD->IsNickValid(nick)) { - source.Reply(_("Bot Nicks may only contain valid nick characters.")); + source.Reply(_("Bot nicks may only contain valid nick characters.")); return; } - /* Check the host is valid */ - if (!IRCD->IsHostValid(host)) + if (!IRCD->IsIdentValid(user)) { - source.Reply(_("Bot Hosts may only contain valid host characters.")); + source.Reply(_("Bot idents may only contain valid ident characters.")); return; } - if (!IRCD->IsIdentValid(user)) + if (!IRCD->IsHostValid(host)) { - source.Reply(_("Bot Idents may only contain valid characters.")); + source.Reply(_("Bot hosts may only contain valid host characters.")); return; } @@ -109,25 +108,25 @@ class CommandBSBot : public Command if (bi->conf) { - source.Reply(_("Bot %s is not changable."), bi->nick.c_str()); + source.Reply(_("Bot %s is not changeable."), bi->nick.c_str()); return; } if (nick.length() > Config->NickLen) { - source.Reply(_("Bot Nicks may only contain valid nick characters.")); + source.Reply(_("Bot nicks may only be %d characters long."), Config->NickLen); return; } if (!user.empty() && user.length() > Config->UserLen) { - source.Reply(_("Bot Idents may only contain %d characters."), Config->UserLen); + source.Reply(_("Bot idents may only be %d characters long."), Config->UserLen); return; } if (!host.empty() && host.length() > Config->HostLen) { - source.Reply(_("Bot Hosts may only contain %d characters."), Config->HostLen); + source.Reply(_("Bot hosts may only be %d characters long."), Config->HostLen); return; } @@ -144,19 +143,19 @@ class CommandBSBot : public Command if (!IRCD->IsNickValid(nick)) { - source.Reply(_("Bot Nicks may only contain valid nick characters.")); + source.Reply(_("Bot nicks may only contain valid nick characters.")); return; } - if (!host.empty() && !IRCD->IsHostValid(host)) + if (!user.empty() && !IRCD->IsIdentValid(user)) { - source.Reply(_("Bot Hosts may only contain valid host characters.")); + source.Reply(_("Bot idents may only contain valid ident characters.")); return; } - if (!user.empty() && !IRCD->IsIdentValid(user)) + if (!host.empty() && !IRCD->IsHostValid(host)) { - source.Reply(_("Bot Idents may only contain valid characters."), Config->UserLen); + source.Reply(_("Bot hosts may only contain valid host characters.")); return; } @@ -208,7 +207,7 @@ class CommandBSBot : public Command bi->RejoinAll(); } - source.Reply(_("Bot \002%s\002 has been changed to %s!%s@%s (%s)"), oldnick.c_str(), bi->nick.c_str(), bi->GetIdent().c_str(), bi->host.c_str(), bi->realname.c_str()); + source.Reply(_("Bot \002%s\002 has been changed to %s!%s@%s (%s)."), oldnick.c_str(), bi->nick.c_str(), bi->GetIdent().c_str(), bi->host.c_str(), bi->realname.c_str()); Log(LOG_ADMIN, source, this) << "CHANGE " << oldnick << " to " << bi->GetMask() << " " << bi->realname; FOREACH_MOD(I_OnBotChange, OnBotChange(bi)); @@ -337,12 +336,12 @@ class CommandBSBot : public Command "channels.\n" " \n" "\002BOT ADD\002 adds a bot with the given nickname, username,\n" - "hostname and realname. Since no integrity checks are done \n" + "hostname and realname. Since no integrity checks are done\n" "for these settings, be really careful.\n" "\002BOT CHANGE\002 allows to change nickname, username, hostname\n" "or realname of a bot without actually delete it (and all\n" "the data associated with it).\n" - "\002BOT DEL\002 removes the given bot from the bot list. \n" + "\002BOT DEL\002 removes the given bot from the bot list.\n" " \n" "\002Note\002: you cannot create a bot that has a nick that is\n" "currently registered. If an unregistered user is currently\n" diff --git a/modules/commands/bs_botlist.cpp b/modules/commands/bs_botlist.cpp index dcaa691d9..cacfce903 100644 --- a/modules/commands/bs_botlist.cpp +++ b/modules/commands/bs_botlist.cpp @@ -65,7 +65,7 @@ class CommandBSBotList : public Command this->SendSyntax(source); source.Reply(" "); source.Reply(_("Lists all available bots on this network.\n" - "Bots prefixed by a * are reserved for IRC operators.")); + "Bots prefixed by a * are reserved for IRC Operators.")); return true; } }; diff --git a/modules/commands/bs_info.cpp b/modules/commands/bs_info.cpp index bc92b6fe3..b1e05bb17 100644 --- a/modules/commands/bs_info.cpp +++ b/modules/commands/bs_info.cpp @@ -52,7 +52,7 @@ class CommandBSInfo : public Command CommandBSInfo(Module *creator) : Command(creator, "botserv/info", 1, 1) { this->SetDesc(_("Allows you to see BotServ information about a channel or a bot")); - this->SetSyntax(_("\002INFO {\037chan\037 | \037nick\037}\002")); + this->SetSyntax(_("{\037chan\037|\037nick\037}")); } void Execute(CommandSource &source, const std::vector<Anope::string> ¶ms) anope_override diff --git a/modules/commands/bs_kick.cpp b/modules/commands/bs_kick.cpp index 499f21464..d351d29b2 100644 --- a/modules/commands/bs_kick.cpp +++ b/modules/commands/bs_kick.cpp @@ -74,17 +74,17 @@ class CommandBSKick : public Command ci->ExtendMetadata("BS_KICK_BADWORDS"); if (ci->ttb[TTB_BADWORDS]) - source.Reply(_("Bot will now kick \002bad words\002, and will place a ban after \n" - "%d kicks for the same user. Use the BADWORDS command\n" - "to add or remove a bad word."), ci->ttb[TTB_BADWORDS]); + source.Reply(_("Bot will now kick for \002bad words\002, and will place a ban\n" + "after %d kicks for the same user. Use the BADWORDS command\n" + "to add or remove a bad word."), ci->ttb[TTB_BADWORDS]); else - source.Reply(_("Bot will now kick \002bad words\002. Use the BADWORDS command\n" + source.Reply(_("Bot will now kick for \002bad words\002. Use the BADWORDS command\n" "to add or remove a bad word.")); } else { ci->Shrink("BS_KICK_BADWORDS"); - source.Reply(_("Bot won't kick \002bad words\002 anymore.")); + source.Reply(_("Bot won't kick for \002bad words\002 anymore.")); } } else if (option.equals_ci("BOLDS")) @@ -110,14 +110,15 @@ class CommandBSKick : public Command ci->ttb[TTB_BOLDS] = 0; ci->ExtendMetadata("BS_KICK_BOLDS"); if (ci->ttb[TTB_BOLDS]) - source.Reply(_("Bot will now kick \002bolds\002, and will place a ban after\n%d kicks to the same user."), ci->ttb[TTB_BOLDS]); + source.Reply(_("Bot will now kick for \002bolds\002, and will place a ban\n" + "after %d kicks for the same user."), ci->ttb[TTB_BOLDS]); else - source.Reply(_("Bot will now kick \002bolds\002.")); + source.Reply(_("Bot will now kick for \002bolds\002.")); } else { ci->Shrink("BS_KICK_BOLDS"); - source.Reply(_("Bot won't kick \002bolds\002 anymore.")); + source.Reply(_("Bot won't kick for \002bolds\002 anymore.")); } } else if (option.equals_ci("CAPS")) @@ -165,17 +166,17 @@ class CommandBSKick : public Command ci->ExtendMetadata("BS_KICK_CAPS"); if (ci->ttb[TTB_CAPS]) - source.Reply(_("Bot will now kick \002caps\002 (they must constitute at least\n" - "%d characters and %d%% of the entire message), and will \n" + source.Reply(_("Bot will now kick for \002caps\002 (they must constitute at least\n" + "%d characters and %d%% of the entire message), and will\n" "place a ban after %d kicks for the same user."), ci->capsmin, ci->capspercent, ci->ttb[TTB_CAPS]); else - source.Reply(_("Bot will now kick \002caps\002 (they must constitute at least\n" + source.Reply(_("Bot will now kick for \002caps\002 (they must constitute at least\n" "%d characters and %d%% of the entire message)."), ci->capsmin, ci->capspercent); } else { ci->Shrink("BS_KICK_CAPS"); - source.Reply(_("Bot won't kick \002caps\002 anymore.")); + source.Reply(_("Bot won't kick for \002caps\002 anymore.")); } } else if (option.equals_ci("COLORS")) @@ -202,14 +203,15 @@ class CommandBSKick : public Command ci->ExtendMetadata("BS_KICK_COLORS"); if (ci->ttb[TTB_COLORS]) - source.Reply(_("Bot will now kick \002colors\002, and will place a ban after %d\nkicks for the same user."), ci->ttb[TTB_COLORS]); + source.Reply(_("Bot will now kick for \002colors\002, and will place a ban\n" + "after %d kicks for the same user."), ci->ttb[TTB_COLORS]); else - source.Reply(_("Bot will now kick \002colors\002.")); + source.Reply(_("Bot will now kick for \002colors\002.")); } else { ci->Shrink("BS_KICK_COLORS"); - source.Reply(_("Bot won't kick \002colors\002 anymore.")); + source.Reply(_("Bot won't kick for \002colors\002 anymore.")); } } else if (option.equals_ci("FLOOD")) @@ -259,14 +261,15 @@ class CommandBSKick : public Command ci->ExtendMetadata("BS_KICK_FLOOD"); if (ci->ttb[TTB_FLOOD]) - source.Reply(_("Bot will now kick \002flood\002 (%d lines in %d seconds and\nwill place a ban after %d kicks for the same user."), ci->floodlines, ci->floodsecs, ci->ttb[TTB_FLOOD]); + source.Reply(_("Bot will now kick for \002flood\002 (%d lines in %d seconds\n" + "and will place a ban after %d kicks for the same user."), ci->floodlines, ci->floodsecs, ci->ttb[TTB_FLOOD]); else - source.Reply(_("Bot will now kick \002flood\002 (%d lines in %d seconds)."), ci->floodlines, ci->floodsecs); + source.Reply(_("Bot will now kick for \002flood\002 (%d lines in %d seconds)."), ci->floodlines, ci->floodsecs); } else { ci->Shrink("BS_KICK_FLOOD"); - source.Reply(_("Bot won't kick \002flood\002 anymore.")); + source.Reply(_("Bot won't kick for \002flood\002 anymore.")); } } else if (option.equals_ci("REPEAT")) @@ -304,17 +307,17 @@ class CommandBSKick : public Command ci->ExtendMetadata("BS_KICK_REPEAT"); if (ci->ttb[TTB_REPEAT]) - source.Reply(_("Bot will now kick \002repeats\002 (users that say the\n" - "same thing %d times), and will place a ban after %d \n" + source.Reply(_("Bot will now kick for \002repeats\002 (users that say the\n" + "same thing %d times), and will place a ban after %d\n" "kicks for the same user."), ci->repeattimes, ci->ttb[TTB_REPEAT]); else - source.Reply(_("Bot will now kick \002repeats\002 (users that say the\n" + source.Reply(_("Bot will now kick for \002repeats\002 (users that say the\n" "same thing %d times)."), ci->repeattimes); } else { ci->Shrink("BS_KICK_REPEAT"); - source.Reply(_("Bot won't kick \002repeats\002 anymore.")); + source.Reply(_("Bot won't kick for \002repeats\002 anymore.")); } } else if (option.equals_ci("REVERSES")) @@ -340,14 +343,15 @@ class CommandBSKick : public Command ci->ttb[TTB_REVERSES] = 0; ci->ExtendMetadata("BS_KICK_REVERSES"); if (ci->ttb[TTB_REVERSES]) - source.Reply(_("Bot will now kick \002reverses\002, and will place a ban after %d\nkicks for the same user."), ci->ttb[TTB_REVERSES]); + source.Reply(_("Bot will now kick for \002reverses\002, and will place a ban\n" + "after %d kicks for the same user."), ci->ttb[TTB_REVERSES]); else - source.Reply(_("Bot will now kick \002reverses\002.")); + source.Reply(_("Bot will now kick for \002reverses\002.")); } else { ci->Shrink("BS_KICK_REVERSES"); - source.Reply(_("Bot won't kick \002reverses\002 anymore.")); + source.Reply(_("Bot won't kick for \002reverses\002 anymore.")); } } else if (option.equals_ci("UNDERLINES")) @@ -374,14 +378,15 @@ class CommandBSKick : public Command ci->ExtendMetadata("BS_KICK_UNDERLINES"); if (ci->ttb[TTB_UNDERLINES]) - source.Reply(_("Bot will now kick \002underlines\002, and will place a ban after %d\nkicks for the same user."), ci->ttb[TTB_UNDERLINES]); + source.Reply(_("Bot will now kick for \002underlines\002, and will place a ban\n" + "after %d kicks for the same user."), ci->ttb[TTB_UNDERLINES]); else - source.Reply(_("Bot will now kick \002underlines\002.")); + source.Reply(_("Bot will now kick for \002underlines\002.")); } else { ci->Shrink("BS_KICK_UNDERLINES"); - source.Reply(_("Bot won't kick \002underlines\002 anymore.")); + source.Reply(_("Bot won't kick for \002underlines\002 anymore.")); } } else if (option.equals_ci("ITALICS")) @@ -408,14 +413,15 @@ class CommandBSKick : public Command ci->ExtendMetadata("BS_KICK_ITALICS"); if (ci->ttb[TTB_ITALICS]) - source.Reply(_("Bot will now kick \002italics\002, and will place a ban after\n%d kicks for the same user."), ci->ttb[TTB_ITALICS]); + source.Reply(_("Bot will now kick for \002italics\002, and will place a ban\n" + "after %d kicks for the same user."), ci->ttb[TTB_ITALICS]); else - source.Reply(_("Bot will now kick \002italics\002.")); + source.Reply(_("Bot will now kick for \002italics\002.")); } else { ci->Shrink("BS_KICK_ITALICS"); - source.Reply(_("Bot won't kick \002italics\002 anymore.")); + source.Reply(_("Bot won't kick for \002italics\002 anymore.")); } } else if (option.equals_ci("AMSGS")) @@ -442,7 +448,8 @@ class CommandBSKick : public Command ci->ExtendMetadata("BS_KICK_AMSGS"); if (ci->ttb[TTB_AMSGS]) - source.Reply(_("Bot will now kick for \002amsgs\002, and will place a ban after %d\nkicks for the same user."), ci->ttb[TTB_AMSGS]); + source.Reply(_("Bot will now kick for \002amsgs\002, and will place a ban\n" + "after %d kicks for the same user."), ci->ttb[TTB_AMSGS]); else source.Reply(_("Bot will now kick for \002amsgs\002")); } @@ -485,7 +492,7 @@ class CommandBSKick : public Command "level SET."), Config->UseStrictPrivMsgString.c_str(), source.service->nick.c_str()); } else if (subcommand.equals_ci("BADWORDS")) - source.Reply(_("Syntax: \002\037#channel\037 BADWORDS {\037ON|OFF\037} [\037ttb\037]\002\n" + source.Reply(_("Syntax: \002\037channel\037 BADWORDS {\037ON|OFF\037} [\037ttb\037]\002\n" "Sets the bad words kicker on or off. When enabled, this\n" "option tells the bot to kick users who say certain words\n" "on the channels.\n" @@ -508,7 +515,7 @@ class CommandBSKick : public Command "option tells the bot to kick users who are talking in\n" "CAPS.\n" "The bot kicks only if there are at least \002min\002 caps\n" - "and they constitute at least \002percent\002%% of the total \n" + "and they constitute at least \002percent\002%% of the total\n" "text line (if not given, it defaults to 10 characters\n" "and 25%%).\n" "ttb is the number of times a user can be kicked\n" diff --git a/modules/commands/bs_set.cpp b/modules/commands/bs_set.cpp index 1bb0992b3..123120289 100644 --- a/modules/commands/bs_set.cpp +++ b/modules/commands/bs_set.cpp @@ -242,7 +242,7 @@ class CommandBSSetFantasy : public Command "Note that users wanting to use fantaisist\n" "commands MUST have enough level for both\n" "the FANTASIA and another level depending\n" - "of the command if required (for example, to use \n" + "of the command if required (for example, to use\n" "!op, user must have enough access for the OPDEOP\n" "level)."), Config->ChanServ.c_str(), Config->BSFantasyCharacter.c_str()); return true; @@ -341,7 +341,7 @@ class CommandBSSetNoBot : public Command ci->ExtendMetadata("BS_NOBOT"); if (ci->bi) ci->bi->UnAssign(source.GetUser(), ci); - source.Reply(_("No Bot mode is now \002on\002 on channel %s."), ci->name.c_str()); + source.Reply(_("No-bot mode is now \002on\002 on channel %s."), ci->name.c_str()); } else if (value.equals_ci("OFF")) { @@ -349,7 +349,7 @@ class CommandBSSetNoBot : public Command Log(override ? LOG_ADMIN : LOG_COMMAND, source, this, ci) << "to disable nobot"; ci->Shrink("BS_NOBOT"); - source.Reply(_("No Bot mode is now \002off\002 on channel %s."), ci->name.c_str()); + source.Reply(_("No-bot mode is now \002off\002 on channel %s."), ci->name.c_str()); } else this->OnSyntaxError(source, source.command); @@ -359,7 +359,7 @@ class CommandBSSetNoBot : public Command { this->SendSyntax(source); source.Reply(_(" \n" - "This option makes a channel be unassignable. If a bot \n" + "This option makes a channel be unassignable. If a bot\n" "is already assigned to the channel, it is unassigned\n" "automatically when you enable the option.")); return true; @@ -405,7 +405,7 @@ class CommandBSSetPrivate : public Command this->SendSyntax(source); source.Reply(_(" \n" "This option prevents a bot from being assigned to a\n" - "channel by users that aren't IRC operators.")); + "channel by users that aren't IRC Operators.")); return true; } }; diff --git a/modules/commands/cs_access.cpp b/modules/commands/cs_access.cpp index fbec13303..5cbe3024e 100644 --- a/modules/commands/cs_access.cpp +++ b/modules/commands/cs_access.cpp @@ -604,7 +604,7 @@ class CommandCSLevels : public Command { Privilege *p = PrivilegeManager::FindPrivilege(what); if (p == NULL) - source.Reply(_("Setting \002%s\002 not known. Type \002%s%s HELP LEVELS \002 for a list of valid settings."), what.c_str(), Config->UseStrictPrivMsgString.c_str(), source.service->nick.c_str()); + source.Reply(_("Setting \002%s\002 not known. Type \002%s%s HELP LEVELS\002 for a list of valid settings."), what.c_str(), Config->UseStrictPrivMsgString.c_str(), source.service->nick.c_str()); else { ci->SetLevel(p->name, level); @@ -642,7 +642,7 @@ class CommandCSLevels : public Command } } - source.Reply(_("Setting \002%s\002 not known. Type \002%s%s HELP LEVELS \002 for a list of valid settings."), what.c_str(), Config->UseStrictPrivMsgString.c_str(), source.service->nick.c_str()); + source.Reply(_("Setting \002%s\002 not known. Type \002%s%s HELP LEVELS\002 for a list of valid settings."), what.c_str(), Config->UseStrictPrivMsgString.c_str(), source.service->nick.c_str()); return; } @@ -741,7 +741,7 @@ class CommandCSLevels : public Command { if (subcommand.equals_ci("DESC")) { - source.Reply(_("The following feature/function names are understood.")); + source.Reply(_("The following feature/function names are available:")); ListFormatter list; list.AddColumn("Name").AddColumn("Description"); diff --git a/modules/commands/cs_akick.cpp b/modules/commands/cs_akick.cpp index 1559113b8..3eea49097 100644 --- a/modules/commands/cs_akick.cpp +++ b/modules/commands/cs_akick.cpp @@ -479,7 +479,7 @@ class CommandCSAKick : public Command "optionally only those AutoKick entries which match the\n" "given mask.\n" " \n" - "The \002AKICK VIEW\002 command is a more verbose version of\n" + "The \002AKICK VIEW\002 command is a more verbose version of the\n" "\002AKICK LIST\002 command.\n" " \n" "The \002AKICK ENFORCE\002 command causes %s to enforce the\n" diff --git a/modules/commands/cs_ban.cpp b/modules/commands/cs_ban.cpp index 2ec40582d..2da17bb98 100644 --- a/modules/commands/cs_ban.cpp +++ b/modules/commands/cs_ban.cpp @@ -119,7 +119,7 @@ class CommandCSBan : public Command if (ban_time) { new TempBan(ban_time, c, mask); - source.Reply(_("Ban on \2%s\2 expires in %s."), mask.c_str(), Anope::Duration(ban_time, source.GetAccount()).c_str()); + source.Reply(_("Ban on \002%s\002 expires in %s."), mask.c_str(), Anope::Duration(ban_time, source.GetAccount()).c_str()); } } @@ -143,7 +143,7 @@ class CommandCSBan : public Command if (ban_time) { new TempBan(ban_time, c, target); - source.Reply(_("Ban on \2%s\2 expires in %s."), target.c_str(), Anope::Duration(ban_time, source.GetAccount()).c_str()); + source.Reply(_("Ban on \002%s\002 expires in %s."), target.c_str(), Anope::Duration(ban_time, source.GetAccount()).c_str()); } } diff --git a/modules/commands/cs_clone.cpp b/modules/commands/cs_clone.cpp index 631f69ec9..94e7c424f 100644 --- a/modules/commands/cs_clone.cpp +++ b/modules/commands/cs_clone.cpp @@ -102,7 +102,7 @@ public: FOREACH_MOD(I_OnChanRegistered, OnChanRegistered(target_ci)); - source.Reply(_("All settings from \002%s\002 have been cloned to \002%s\002"), channel.c_str(), target.c_str()); + source.Reply(_("All settings from \002%s\002 have been cloned to \002%s\002."), channel.c_str(), target.c_str()); } else if (what.equals_ci("ACCESS")) { @@ -122,7 +122,7 @@ public: target_ci->AddAccess(newaccess); } - source.Reply(_("All access entries from \002%s\002 have been cloned to \002%s\002"), channel.c_str(), target.c_str()); + source.Reply(_("All access entries from \002%s\002 have been cloned to \002%s\002."), channel.c_str(), target.c_str()); } else if (what.equals_ci("AKICK")) { @@ -136,7 +136,7 @@ public: target_ci->AddAkick(akick->creator, akick->mask, akick->reason, akick->addtime, akick->last_used); } - source.Reply(_("All akick entries from \002%s\002 have been cloned to \002%s\002"), channel.c_str(), target.c_str()); + source.Reply(_("All akick entries from \002%s\002 have been cloned to \002%s\002."), channel.c_str(), target.c_str()); } else if (what.equals_ci("BADWORDS")) { @@ -147,7 +147,7 @@ public: target_ci->AddBadWord(bw->word, bw->type); } - source.Reply(_("All badword entries from \002%s\002 have been cloned to \002%s\002"), channel.c_str(), target.c_str()); + source.Reply(_("All badword entries from \002%s\002 have been cloned to \002%s\002."), channel.c_str(), target.c_str()); } else { diff --git a/modules/commands/cs_drop.cpp b/modules/commands/cs_drop.cpp index 36912527f..b51add79c 100644 --- a/modules/commands/cs_drop.cpp +++ b/modules/commands/cs_drop.cpp @@ -73,10 +73,10 @@ class CommandCSDrop : public Command source.Reply(" "); if (source.IsServicesOper()) source.Reply(_("Unregisters the named channel. Only \002Services Operators\002\n" - "can drop a channel for which they have not identified.")); + "can drop a channel of which they are not the founder.")); else source.Reply(_("Unregisters the named channel. Can only be used by\n" - "\002channel founder\002.")); + "the \002channel founder\002.")); return true; } diff --git a/modules/commands/cs_enforce.cpp b/modules/commands/cs_enforce.cpp index cf080f1cc..e9ddb2943 100644 --- a/modules/commands/cs_enforce.cpp +++ b/modules/commands/cs_enforce.cpp @@ -253,15 +253,15 @@ class CommandCSEnforce : public Command source.Reply(_("Enforce various channel modes and set options. The \037channel\037\n" "option indicates what channel to enforce the modes and options\n" "on. The \037what\037 option indicates what modes and options to\n" - "enforce, and can be any of SECUREOPS, RESTRICTED, REGONLY, SSLONLY,\n" - "BANS, or LIMIT.\n" + "enforce, and can be any of \002SECUREOPS\002, \002RESTRICTED\002, \002REGONLY\002, \002SSLONLY\002,\n" + "\002BANS\002, or \002LIMIT\002.\n" " \n" - "Use SECUREOPS to enforce the SECUREOPS option, even if it is not\n" - "enabled. Use RESTRICTED to enfore the RESTRICTED option, also\n" - "if it's not enabled. Use REGONLY to kick all unregistered users\n" - "from the channel. Use SSLONLY to kick all users not using a secure\n" - "connection from the channel. BANS will enforce bans on the channel by\n" - "kicking users affected by them, and LIMIT will kick users until the\n" + "Use \002SECUREOPS\002 to enforce the SECUREOPS option, even if it is not\n" + "enabled. Use \002RESTRICTED\002 to enfore the RESTRICTED option, also\n" + "if it's not enabled. Use \002REGONLY\002 to kick all unregistered users\n" + "from the channel. Use \002SSLONLY\002 to kick all users not using a secure\n" + "connection from the channel. \002BANS\002 will enforce bans on the channel by\n" + "kicking users affected by them, and \002LIMIT\002 will kick users until the\n" "user count drops below the channel limit, if one is set.")); return true; } diff --git a/modules/commands/cs_fantasy_stats.cpp b/modules/commands/cs_fantasy_stats.cpp index 10222cb41..580307441 100644 --- a/modules/commands/cs_fantasy_stats.cpp +++ b/modules/commands/cs_fantasy_stats.cpp @@ -140,7 +140,7 @@ class CSStats : public Module res.Get(0, "actions").c_str()); } else - source.Reply(_("No stats for %s"), display.c_str()); + source.Reply(_("No stats for %s."), display.c_str()); } catch (const SQL::Exception &ex) { diff --git a/modules/commands/cs_fantasy_top.cpp b/modules/commands/cs_fantasy_top.cpp index 2af5cd0dd..16d65dd05 100644 --- a/modules/commands/cs_fantasy_top.cpp +++ b/modules/commands/cs_fantasy_top.cpp @@ -170,7 +170,7 @@ class CSTop : public Module } } else - source.Reply(_("No stats for %s"), is_global ? "Network" : channel.c_str()); + source.Reply(_("No stats for %s."), is_global ? "Network" : channel.c_str()); } catch (const SQL::Exception &ex) { diff --git a/modules/commands/cs_flags.cpp b/modules/commands/cs_flags.cpp index 7820d298f..9824ab22f 100644 --- a/modules/commands/cs_flags.cpp +++ b/modules/commands/cs_flags.cpp @@ -186,7 +186,7 @@ class CommandCSFlags : public Command } else { - source.Reply(_("Insufficient flags given")); + source.Reply(_("Insufficient flags given.")); } return; } @@ -348,19 +348,19 @@ class CommandCSFlags : public Command source.Reply(_("%s is another way to modify the channel access list, similar to\n" "the XOP and ACCESS methods."), source.command.c_str()); source.Reply(" "); - source.Reply(_("The MODIFY command allows you to modify the access list. If mask is\n" + source.Reply(_("The \002MODIFY\002 command allows you to modify the access list. If mask is\n" "not already on the access list is it added, then the changes are applied.\n" "If the mask has no more flags, then the mask is removed from the access list.\n" "Additionally, you may use +* or -* to add or remove all flags, respectively. You are\n" "only able to modify the access list if you have the proper permission on the channel,\n" "and even then you can only give other people access to up what you already have.")); source.Reply(" "); - source.Reply(_("The LIST command allows you to list existing entries on the channel access list.\n" + source.Reply(_("The \002LIST\002 command allows you to list existing entries on the channel access list.\n" "If a mask is given, the mask is wildcard matched against all existing entries on the\n" "access list, and only those entries are returned. If a set of flags is given, only those\n" "on the access list with the specified flags are returned.")); source.Reply(" "); - source.Reply(_("The CLEAR command clears the channel access list, which requires channel founder.")); + source.Reply(_("The \002CLEAR\002 command clears the channel access list, which requires channel founder.")); source.Reply(" "); source.Reply(_("The available flags are:")); diff --git a/modules/commands/cs_kick.cpp b/modules/commands/cs_kick.cpp index cfc8908c4..062c8f04d 100644 --- a/modules/commands/cs_kick.cpp +++ b/modules/commands/cs_kick.cpp @@ -18,7 +18,7 @@ class CommandCSKick : public Command public: CommandCSKick(Module *creator) : Command(creator, "chanserv/kick", 2, 3) { - this->SetDesc(_("Kicks a selected nick from a channel")); + this->SetDesc(_("Kicks a specified nick from a channel")); this->SetSyntax(_("\037channel\037 \037nick\037 [\037reason\037]")); this->SetSyntax(_("\037channel\037 \037mask\037 [\037reason\037]")); } @@ -112,7 +112,7 @@ class CommandCSKick : public Command { this->SendSyntax(source); source.Reply(" "); - source.Reply(_("Kicks a selected nick on a channel.\n" + source.Reply(_("Kicks a specified nick from a channel.\n" " \n" "By default, limited to AOPs or those with level 5 access\n" "and above on the channel. Channel founders may use masks too.")); diff --git a/modules/commands/cs_list.cpp b/modules/commands/cs_list.cpp index 09e89c219..d762a54ba 100644 --- a/modules/commands/cs_list.cpp +++ b/modules/commands/cs_list.cpp @@ -144,11 +144,15 @@ class CommandCSList : public Command " Lists all registered channels which have been set to not expire.\n" " \n" " \002LIST #51-100\002\n" - " Lists all registered channels within the given range (51-100).\n")); + " Lists all registered channels within the given range (51-100).")); + if (!Config->RegexEngine.empty()) - source.Reply(" \n" - "Regex matches are also supported using the %s engine.\n" - "Enclose your pattern in // if this desired.", Config->RegexEngine.c_str()); + { + source.Reply(" "); + source.Reply(_("Regex matches are also supported using the %s engine.\n" + "Enclose your pattern in // if this is desired."), Config->RegexEngine.c_str()); + } + return true; } }; diff --git a/modules/commands/cs_seen.cpp b/modules/commands/cs_seen.cpp index 76cfe1eb9..95194a3e7 100644 --- a/modules/commands/cs_seen.cpp +++ b/modules/commands/cs_seen.cpp @@ -113,8 +113,8 @@ class CommandOSSeen : public Command CommandOSSeen(Module *creator) : Command(creator, "operserv/seen", 1, 2) { this->SetDesc(_("Statistics and maintenance for seen data")); - this->SetSyntax(_("\037STATS\037")); - this->SetSyntax(_("\037CLEAR\037 \037time\037")); + this->SetSyntax(_("STATS")); + this->SetSyntax(_("CLEAR \037time\037")); } void Execute(CommandSource &source, const std::vector<Anope::string> ¶ms) anope_override @@ -132,7 +132,7 @@ class CommandOSSeen : public Command mem_counter += it->second->channel.capacity(); mem_counter += it->second->message.capacity(); } - source.Reply(_("%lu nicks are stored in the database, using %.2Lf kB of memory"), database.size(), static_cast<long double>(mem_counter) / 1024); + source.Reply(_("%lu nicks are stored in the database, using %.2Lf kB of memory."), database.size(), static_cast<long double>(mem_counter) / 1024); } else if (params[0].equals_ci("CLEAR")) { @@ -158,7 +158,7 @@ class CommandOSSeen : public Command } } Log(LOG_ADMIN, source, this) << "CLEAR and removed " << counter << " nicks that were added after " << Anope::strftime(time, NULL, true); - source.Reply(_("Database cleared, removed %lu nicks that were added after %s"), counter, Anope::strftime(time, source.nc, true).c_str()); + source.Reply(_("Database cleared, removed %lu nicks that were added after %s."), counter, Anope::strftime(time, source.nc, true).c_str()); } else this->SendSyntax(source); @@ -173,8 +173,8 @@ class CommandOSSeen : public Command "entries from the database that were added within \037time\037.\n" " \n" "Example:\n" - "%s CLEAR 30m\n" - "will remove all entries that were added within the last 30 minutes."), source.command.c_str()); + " %s CLEAR 30m\n" + " Will remove all entries that were added within the last 30 minutes."), source.command.c_str()); return true; } }; @@ -194,7 +194,7 @@ class CommandSeen : public Command if (target.length() > Config->NickLen) { - source.Reply(_("Nick too long, max length is %u chars"), Config->NickLen); + source.Reply(_("Nick too long, max length is %u characters."), Config->NickLen); return; } @@ -238,7 +238,7 @@ class CommandSeen : public Command if (u2) onlinestatus = Anope::printf( _(". %s is still online."), u2->nick.c_str()); else - onlinestatus = Anope::printf(_(", but %s mysteriously dematerialized"), info->nick2.c_str()); + onlinestatus = Anope::printf(_(", but %s mysteriously dematerialized."), info->nick2.c_str()); source.Reply(_("%s (%s) was last seen changing nick to %s %s ago%s"), target.c_str(), info->vhost.c_str(), info->nick2.c_str(), timebuf.c_str(), onlinestatus.c_str()); @@ -308,12 +308,12 @@ class DataBasePurger : public CallBack if ((Anope::CurTime - cur->second->last) > purgetime) { - Log(LOG_DEBUG) << cur->first << " was last seen " << Anope::strftime(cur->second->last) << ", purging entry"; + Log(LOG_DEBUG) << cur->first << " was last seen " << Anope::strftime(cur->second->last) << ", purging entries"; cur->second->Destroy(); database.erase(cur); } } - Log(LOG_DEBUG) << "cs_seen: Purged Database, checked " << previous_size << " nicks and removed " << (previous_size - database.size()) << " old entries."; + Log(LOG_DEBUG) << "cs_seen: Purged database, checked " << previous_size << " nicks and removed " << (previous_size - database.size()) << " old entries."; } }; diff --git a/modules/commands/cs_set.cpp b/modules/commands/cs_set.cpp index 49ad2acf3..8c6aa48c1 100644 --- a/modules/commands/cs_set.cpp +++ b/modules/commands/cs_set.cpp @@ -131,12 +131,12 @@ class CommandCSSetAutoOp : public Command if (params[1].equals_ci("ON")) { ci->Shrink("NOAUTOOP"); - source.Reply(_("Services will now automatically give modes to users in \2%s\2"), ci->name.c_str()); + source.Reply(_("Services will now automatically give modes to users in \002%s\002."), ci->name.c_str()); } else if (params[1].equals_ci("OFF")) { ci->ExtendMetadata("NOAUTOOP"); - source.Reply(_("Services will no longer automatically give modes to users in \2%s\2"), ci->name.c_str()); + source.Reply(_("Services will no longer automatically give modes to users in \002%s\002."), ci->name.c_str()); } else this->OnSyntaxError(source, "AUTOOP"); @@ -148,7 +148,7 @@ class CommandCSSetAutoOp : public Command source.Reply(" "); source.Reply(_("Enables or disables %s's autoop feature for a\n" "channel. When disabled, users who join the channel will\n" - "not automatically gain any status from %s"), Config->ChanServ.c_str(), + "not automatically gain any status from %s."), Config->ChanServ.c_str(), Config->ChanServ.c_str(), this->name.c_str()); return true; } @@ -206,7 +206,7 @@ class CommandCSSetBanType : public Command source.Reply(_("Sets the ban type that will be used by services whenever\n" "they need to ban someone from your channel.\n" " \n" - "bantype is a number between 0 and 3 that means:\n" + "Bantype is a number between 0 and 3 that means:\n" " \n" "0: ban in the form *!user@host\n" "1: ban in the form *!*user@host\n" @@ -248,12 +248,12 @@ class CommandCSSetChanstats : public Command if (params[1].equals_ci("ON")) { ci->ExtendMetadata("STATS"); - source.Reply(_("Chanstats statistics are now enabled for this channel")); + source.Reply(_("Chanstats statistics are now enabled for this channel.")); } else if (params[1].equals_ci("OFF")) { ci->Shrink("STATS"); - source.Reply(_("Chanstats statistics are now disabled for this channel")); + source.Reply(_("Chanstats statistics are now disabled for this channel.")); } else this->OnSyntaxError(source, ""); @@ -264,7 +264,7 @@ class CommandCSSetChanstats : public Command { this->SendSyntax(source); source.Reply(" "); - source.Reply("Turn Chanstats channel statistics ON or OFF"); + source.Reply("Turn Chanstats channel statistics ON or OFF."); return true; } }; @@ -650,7 +650,7 @@ class CommandCSSetPrivate : public Command public: CommandCSSetPrivate(Module *creator, const Anope::string &cname = "chanserv/set/private") : Command(creator, cname, 2, 2) { - this->SetDesc(_("Hide channel from LIST command")); + this->SetDesc(_("Hide channel from the LIST command")); this->SetSyntax(_("\037channel\037 {ON | OFF}")); } @@ -935,7 +935,7 @@ class CommandCSSetSignKick : public Command public: CommandCSSetSignKick(Module *creator, const Anope::string &cname = "chanserv/set/signkick") : Command(creator, cname, 2, 2) { - this->SetDesc(_("Sign kicks that are done with KICK command")); + this->SetDesc(_("Sign kicks that are done with the KICK command")); this->SetSyntax(_("\037channel\037 SIGNKICK {ON | LEVEL | OFF}")); } @@ -969,7 +969,7 @@ class CommandCSSetSignKick : public Command { ci->ExtendMetadata("SIGNKICK_LEVEL"); ci->Shrink("SIGNKICK"); - source.Reply(_("Signed kick option for %s is now \002ON\002, but depends of the\n" + source.Reply(_("Signed kick option for %s is now \002on\002, but depends of the\n" "level of the user that is using the command."), ci->name.c_str()); } else if (params[1].equals_ci("OFF")) diff --git a/modules/commands/cs_status.cpp b/modules/commands/cs_status.cpp index 078de28e0..1d1aa619c 100644 --- a/modules/commands/cs_status.cpp +++ b/modules/commands/cs_status.cpp @@ -50,20 +50,20 @@ public: } if (ag.super_admin) - source.Reply(_("\2%s\2 is a super administrator."), nick.c_str()); + source.Reply(_("\002%s\002 is a super administrator."), nick.c_str()); else if (ag.founder) - source.Reply(_("\2%s\2 is the channel founder."), nick.c_str()); + source.Reply(_("\002%s\002 is the channel founder."), nick.c_str()); else if (ag.empty()) - source.Reply(_("\2%s\2 has no access on \2%s\2."), nick.c_str(), ci->name.c_str()); + source.Reply(_("\002%s\002 has no access on \002%s\002."), nick.c_str(), ci->name.c_str()); else { - source.Reply(_("Access for \2%s\2 on \2%s\2"), nick.c_str(), ci->name.c_str()); + source.Reply(_("Access for \002%s\002 on \002%s\002:"), nick.c_str(), ci->name.c_str()); for (unsigned i = 0; i < ag.size(); ++i) { ChanAccess *acc = ag[i]; - source.Reply(_("\2%s\2 matches access entry %s, which has privilege %s."), nick.c_str(), acc->mask.c_str(), acc->AccessSerialize().c_str()); + source.Reply(_("\002%s\002 matches access entry %s, which has privilege %s."), nick.c_str(), acc->mask.c_str(), acc->AccessSerialize().c_str()); } } @@ -74,13 +74,13 @@ public: if (autokick->nc) { if (na && *autokick->nc == na->nc) - source.Reply(_("\2%s\2 is on the auto kick list (%s)."), na->nc->display.c_str(), autokick->reason.c_str()); + source.Reply(_("\002%s\002 is on the auto kick list (%s)."), na->nc->display.c_str(), autokick->reason.c_str()); } else if (u != NULL) { Entry akick_mask("", autokick->mask); if (akick_mask.Matches(u)) - source.Reply(_("\2%s\2 matches auto kick entry %s (%s)."), u->nick.c_str(), autokick->mask.c_str(), autokick->reason.c_str()); + source.Reply(_("\002%s\002 matches auto kick entry %s (%s)."), u->nick.c_str(), autokick->mask.c_str(), autokick->reason.c_str()); } } } diff --git a/modules/commands/cs_suspend.cpp b/modules/commands/cs_suspend.cpp index 594d72772..fdfd2d55a 100644 --- a/modules/commands/cs_suspend.cpp +++ b/modules/commands/cs_suspend.cpp @@ -92,7 +92,7 @@ class CommandCSSuspend : public Command this->SendSyntax(source); source.Reply(" "); source.Reply(_("Disallows anyone from using the given channel.\n" - "May be cancelled by using the UNSUSPEND\n" + "May be cancelled by using the \002UNSUSPEND\002\n" "command to preserve all previous channel data/settings.\n" "If an expiry is given the channel will be unsuspended after\n" "that period of time, else the default expiry from the" @@ -128,7 +128,7 @@ class CommandCSUnSuspend : public Command /* Only UNSUSPEND already suspended channels */ if (!ci->HasExt("SUSPENDED")) { - source.Reply(_("Channel \2%s\2 isn't suspended."), ci->name.c_str()); + source.Reply(_("Channel \002%s\002 isn't suspended."), ci->name.c_str()); return; } diff --git a/modules/commands/cs_topic.cpp b/modules/commands/cs_topic.cpp index 6518b0959..8b55a2da4 100644 --- a/modules/commands/cs_topic.cpp +++ b/modules/commands/cs_topic.cpp @@ -97,12 +97,12 @@ class CommandCSTopic : public Command this->SendSyntax(source); source.Reply(" "); source.Reply(_("Allows manipulating the topic of the specified channel.\n" - "The \2SET\2 command changes the topic of the channel to the given topic\n" - "or unsets the topic if no topic is given. The \2APPEND\2 command appends\n" + "The \002SET\002 command changes the topic of the channel to the given topic\n" + "or unsets the topic if no topic is given. The \002APPEND\002 command appends\n" "the given topic to the existing topic.\n" " \n" - "\2LOCK\2 and \2UNLOCK\2 may be used to enable and disable topic lock. When\n" - "topic lock is set, the channel topic will be unchangable except via this command.")); + "\002LOCK\002 and \002UNLOCK\002 may be used to enable and disable topic lock. When\n" + "topic lock is set, the channel topic will be unchangeable except via this command.")); return true; } }; diff --git a/modules/commands/cs_updown.cpp b/modules/commands/cs_updown.cpp index bfd9574a9..196fce2e2 100644 --- a/modules/commands/cs_updown.cpp +++ b/modules/commands/cs_updown.cpp @@ -108,7 +108,7 @@ class CommandCSDown : public Command this->SendSyntax(source); source.Reply(" "); source.Reply(_("Removes your status modes on a channel. If \037channel\037 is ommited\n" - "your channel status is remove on every channel you are in.")); + "your channel status is removed on every channel you are in.")); return true; } }; diff --git a/modules/commands/cs_xop.cpp b/modules/commands/cs_xop.cpp index 82ceab604..72197aeec 100644 --- a/modules/commands/cs_xop.cpp +++ b/modules/commands/cs_xop.cpp @@ -622,11 +622,11 @@ class CommandCSQOP : public XOPBase " 7 through 9.\n" " \n" "The \002QOP CLEAR\002 command clears all entries of the\n" - "QOP list.\n")); + "QOP list.")); source.Reply(_(" \n" "The \002QOP\002 commands are limited to founders\n" "(unless SECUREOPS is off). However, any user on the\n" - "VOP list may use the \002QOP LIST\002 command.\n" + "VOP list or above may use the \002QOP LIST\002 command.\n" " \n")); source.Reply(_("Alternative methods of modifying channel access lists are\n" "available. See \002%s%s HELP ACCESS\002 for information\n" @@ -676,12 +676,12 @@ class CommandCSAOP : public XOPBase " 7 through 9.\n" " \n" "The \002AOP CLEAR\002 command clears all entries of the\n" - "AOP list.\n")); + "AOP list.")); source.Reply(_(" \n" "The \002AOP ADD\002 and \002AOP DEL\002 commands are limited to\n" "SOPs or above, while the \002AOP CLEAR\002 command can only\n" "be used by the channel founder. However, any user on the\n" - "VOP list may use the \002AOP LIST\002 command.\n" + "VOP list or above may use the \002AOP LIST\002 command.\n" " \n")); source.Reply(_("Alternative methods of modifying channel access lists are\n" "available. See \002%s%s HELP ACCESS\002 for information\n" @@ -730,7 +730,7 @@ class CommandCSHOP : public XOPBase " 7 through 9.\n" " \n" "The \002HOP CLEAR\002 command clears all entries of the\n" - "HOP list.\n")); + "HOP list.")); source.Reply(_(" \n" "The \002HOP ADD\002 and \002HOP DEL\002 commands are limited\n" "to SOPs or above, while \002HOP LIST\002 is available to VOPs\n" @@ -785,11 +785,11 @@ class CommandCSSOP : public XOPBase " 7 through 9.\n" " \n" "The \002SOP CLEAR\002 command clears all entries of the\n" - "SOP list.\n")); + "SOP list.")); source.Reply(_(" \n" "The \002SOP ADD\002, \002SOP DEL\002 and \002SOP CLEAR\002 commands are\n" "limited to the channel founder. However, any user on the\n" - "VOP list may use the \002SOP LIST\002 command.\n" + "VOP list or above may use the \002SOP LIST\002 command.\n" " \n")); source.Reply(_("Alternative methods of modifying channel access lists are\n" "available. See \002%s%s HELP ACCESS\002 for information\n" @@ -838,7 +838,7 @@ class CommandCSVOP : public XOPBase " 7 through 9.\n" " \n" "The \002VOP CLEAR\002 command clears all entries of the\n" - "VOP list.\n")); + "VOP list.")); source.Reply(_(" \n" "The \002VOP ADD\002 and \002VOP DEL\002 commands are limited\n" "to SOPs or above, while \002VOP LIST\002 is available to VOPs\n" diff --git a/modules/commands/gl_global.cpp b/modules/commands/gl_global.cpp index 77360075d..7cc4dbdc8 100644 --- a/modules/commands/gl_global.cpp +++ b/modules/commands/gl_global.cpp @@ -42,7 +42,7 @@ class CommandGLGlobal : public Command { this->SendSyntax(source); source.Reply(" "); - source.Reply(_("Allows Administrators to send messages to all users on the \n" + source.Reply(_("Allows Administrators to send messages to all users on the\n" "network. The message will be sent from the nick \002%s\002."), source.service->nick.c_str()); return true; } diff --git a/modules/commands/help.cpp b/modules/commands/help.cpp index 890964fc9..fcac6863c 100644 --- a/modules/commands/help.cpp +++ b/modules/commands/help.cpp @@ -54,7 +54,7 @@ class CommandHelp : public Command GroupInfo groups; if (all) - source.Reply(_("All available commands for \2%s\2:"), source.service->nick.c_str()); + source.Reply(_("All available commands for \002%s\002:"), source.service->nick.c_str()); for (CommandInfo::map::const_iterator it = map.begin(), it_end = map.end(); it != it_end; ++it) { @@ -124,7 +124,7 @@ class CommandHelp : public Command if (!groups.empty()) { source.Reply(" "); - source.Reply(_("Use the \2%s ALL\2 command to list all command descriptions."), source_command.c_str()); + source.Reply(_("Use the \002%s ALL\002 command to list all commands and their descriptions."), source_command.c_str()); } } else diff --git a/modules/commands/hs_group.cpp b/modules/commands/hs_group.cpp index 5263f55b8..9027fddac 100644 --- a/modules/commands/hs_group.cpp +++ b/modules/commands/hs_group.cpp @@ -42,9 +42,9 @@ class CommandHSGroup : public Command { this->Sync(na); if (!na->GetVhostIdent().empty()) - source.Reply(_("All vhost's in the group \002%s\002 have been set to \002%s\002@\002%s\002"), source.nc->display.c_str(), na->GetVhostIdent().c_str(), na->GetVhostHost().c_str()); + source.Reply(_("All vhost's in the group \002%s\002 have been set to \002%s\002@\002%s\002."), source.nc->display.c_str(), na->GetVhostIdent().c_str(), na->GetVhostHost().c_str()); else - source.Reply(_("All vhost's in the group \002%s\002 have been set to \002%s\002"), source.nc->display.c_str(), na->GetVhostHost().c_str()); + source.Reply(_("All vhost's in the group \002%s\002 have been set to \002%s\002."), source.nc->display.c_str(), na->GetVhostHost().c_str()); } else source.Reply(HOST_NOT_ASSIGNED); diff --git a/modules/commands/hs_list.cpp b/modules/commands/hs_list.cpp index 371f664bd..96e6866f0 100644 --- a/modules/commands/hs_list.cpp +++ b/modules/commands/hs_list.cpp @@ -18,8 +18,8 @@ class CommandHSList : public Command public: CommandHSList(Module *creator) : Command(creator, "hostserv/list", 0, 1) { - this->SetDesc(_("Displays one or more vhost entries.")); - this->SetSyntax(_("\002[<key>|<#X-Y>]")); + this->SetDesc(_("Displays one or more vhost entries")); + this->SetSyntax(_("[\037key\037|\037#X-Y\037]")); } void Execute(CommandSource &source, const std::vector<Anope::string> ¶ms) anope_override @@ -115,13 +115,13 @@ class CommandHSList : public Command } if (!key.empty()) - source.Reply(_("Displayed records matching key \002%s\002 (Count: \002%d\002)"), key.c_str(), display_counter); + source.Reply(_("Displayed records matching key \002%s\002 (count: \002%d\002)."), key.c_str(), display_counter); else { if (from) - source.Reply(_("Displayed records from \002%d\002 to \002%d\002"), from, to); + source.Reply(_("Displayed records from \002%d\002 to \002%d\002."), from, to); else - source.Reply(_("Displayed all records (Count: \002%d\002)"), display_counter); + source.Reply(_("Displayed all records (count: \002%d\002)."), display_counter); } std::vector<Anope::string> replies; @@ -136,14 +136,14 @@ class CommandHSList : public Command this->SendSyntax(source); source.Reply(" "); source.Reply(_("This command lists registered vhosts to the operator\n" - "if a Key is specified, only entries whos nick or vhost match\n" - "the pattern given in <key> are displayed e.g. Rob* for all\n" + "if a \037key\037 is specified, only entries whos nick or vhost match\n" + "the pattern given in \037key\037 are displayed e.g. Rob* for all\n" "entries beginning with \"Rob\"\n" - "If a #X-Y style is used, only entries between the range of X\n" - "and Y will be displayed, e.g. #1-3 will display the first 3\n" + "If a \037#X-Y\037 style is used, only entries between the range of \002X\002\n" + "and \002Y\002 will be displayed, e.g. \002#1-3\002 will display the first 3\n" "nick/vhost entries.\n" "The list uses the value of NSListMax as a hard limit for the\n" - "number of items to display to a operator at any 1 time.")); + "number of items to display to a operator at any one time.")); return true; } }; diff --git a/modules/commands/hs_off.cpp b/modules/commands/hs_off.cpp index a8066b24a..3db3c1adf 100644 --- a/modules/commands/hs_off.cpp +++ b/modules/commands/hs_off.cpp @@ -46,7 +46,7 @@ class CommandHSOff : public Command source.Reply(" "); source.Reply(_("Deactivates the vhost currently assigned to the nick in use.\n" "When you use this command any user who performs a /whois\n" - "on you will see your real IP address.")); + "on you will see your real host/IP address.")); return true; } }; diff --git a/modules/commands/hs_on.cpp b/modules/commands/hs_on.cpp index 135b96f9a..e19482c9a 100644 --- a/modules/commands/hs_on.cpp +++ b/modules/commands/hs_on.cpp @@ -55,7 +55,7 @@ class CommandHSOn : public Command source.Reply(" "); source.Reply(_("Activates the vhost currently assigned to the nick in use.\n" "When you use this command any user who performs a /whois\n" - "on you will see the vhost instead of your real IP address.")); + "on you will see the vhost instead of your real host/IP address.")); return true; } }; diff --git a/modules/commands/hs_request.cpp b/modules/commands/hs_request.cpp index a2623eeec..a09718621 100644 --- a/modules/commands/hs_request.cpp +++ b/modules/commands/hs_request.cpp @@ -146,7 +146,7 @@ class CommandHSRequest : public Command if (HSRequestMemoOper && Config->MSSendDelay > 0 && u && u->lastmemosend + Config->MSSendDelay > Anope::CurTime) { - source.Reply(_("Please wait %d seconds before requesting a new vHost"), Config->MSSendDelay); + source.Reply(_("Please wait %d seconds before requesting a new vHost."), Config->MSSendDelay); u->lastmemosend = Anope::CurTime; return; } @@ -159,7 +159,7 @@ class CommandHSRequest : public Command req->time = Anope::CurTime; na->Extend("hs_request", req); - source.Reply(_("Your vHost has been requested")); + source.Reply(_("Your vHost has been requested.")); req_send_memos(source, user, host); Log(LOG_COMMAND, source, this) << "to request new vhost " << (!user.empty() ? user + "@" : "") << host; @@ -201,7 +201,7 @@ class CommandHSActivate : public Command if (HSRequestMemoUser && MemoServService) MemoServService->Send(Config->HostServ, na->nick, _("[auto memo] Your requested vHost has been approved."), true); - source.Reply(_("vHost for %s has been activated"), na->nick.c_str()); + source.Reply(_("vHost for %s has been activated."), na->nick.c_str()); Log(LOG_COMMAND, source, this) << "for " << na->nick << " for vhost " << (!req->ident.empty() ? req->ident + "@" : "") << req->host; na->Shrink("hs_request"); } @@ -252,7 +252,7 @@ class CommandHSReject : public Command MemoServService->Send(Config->HostServ, nick, message, true); } - source.Reply(_("vHost for %s has been rejected"), nick.c_str()); + source.Reply(_("vHost for %s has been rejected."), nick.c_str()); Log(LOG_COMMAND, source, this, NULL) << "to reject vhost for " << nick << " (" << (!reason.empty() ? reason : "") << ")"; } else @@ -307,7 +307,7 @@ class CommandHSWaiting : public Command } ++counter; } - source.Reply(_("Displayed all records (Count: \002%d\002)"), display_counter); + source.Reply(_("Displayed all records (count: \002%d\002)."), display_counter); std::vector<Anope::string> replies; list.Process(replies); @@ -332,7 +332,7 @@ class CommandHSWaiting : public Command { this->SendSyntax(source); source.Reply(" "); - source.Reply(_("This command retrieves the vhost requests")); + source.Reply(_("This command retrieves the vhost requests.")); return true; } diff --git a/modules/commands/hs_set.cpp b/modules/commands/hs_set.cpp index d234112e2..cfad860a3 100644 --- a/modules/commands/hs_set.cpp +++ b/modules/commands/hs_set.cpp @@ -95,7 +95,7 @@ class CommandHSSet : public Command source.Reply(" "); source.Reply(_("Sets the vhost for the given nick to that of the given\n" "hostmask. If your IRCD supports vIdents, then using\n" - "SET <nick> <ident>@<hostmask> set idents for users as \n" + "SET <nick> <ident>@<hostmask> set idents for users as\n" "well as vhosts.")); return true; } diff --git a/modules/commands/ms_check.cpp b/modules/commands/ms_check.cpp index 98191a073..984126ee6 100644 --- a/modules/commands/ms_check.cpp +++ b/modules/commands/ms_check.cpp @@ -66,7 +66,7 @@ class CommandMSCheck : public Command this->SendSyntax(source); source.Reply(" "); source.Reply(_("Checks whether the _last_ memo you sent to \037nick\037 has been read\n" - "or not. Note that this does only work with nicks, not with chans.")); + "or not. Note that this does only work with nicks, not with channels.")); return true; } }; diff --git a/modules/commands/ms_ignore.cpp b/modules/commands/ms_ignore.cpp index 7caa30f88..41e139eff 100644 --- a/modules/commands/ms_ignore.cpp +++ b/modules/commands/ms_ignore.cpp @@ -22,8 +22,10 @@ class CommandMSIgnore : public Command public: CommandMSIgnore(Module *creator) : Command(creator, "memoserv/ignore", 1, 3) { - this->SetDesc(_("Manage your memo ignore list")); - this->SetSyntax(_("[\037channel\037] {\002ADD|DEL|LIST\002} [\037entry\037]")); + this->SetDesc(_("Manage the memo ignore list")); + this->SetSyntax(_("[\037channel\037] ADD \037entry\037")); + this->SetSyntax(_("[\037channel\037] DEL \037entry\037")); + this->SetSyntax(_("[\037channel\037] LIST")); } void Execute(CommandSource &source, const std::vector<Anope::string> ¶ms) anope_override @@ -55,10 +57,10 @@ class CommandMSIgnore : public Command if (std::find(mi->ignores.begin(), mi->ignores.end(), param.ci_str()) == mi->ignores.end()) { mi->ignores.push_back(param.ci_str()); - source.Reply(_("\002%s\002 added to your ignore list."), param.c_str()); + source.Reply(_("\002%s\002 added to ignore list."), param.c_str()); } else - source.Reply(_("\002%s\002 is already on your ignore list."), param.c_str()); + source.Reply(_("\002%s\002 is already on the ignore list."), param.c_str()); } else if (command.equals_ci("DEL") && !param.empty()) { @@ -67,15 +69,15 @@ class CommandMSIgnore : public Command if (it != mi->ignores.end()) { mi->ignores.erase(it); - source.Reply(_("\002%s\002 removed from your ignore list."), param.c_str()); + source.Reply(_("\002%s\002 removed from the ignore list."), param.c_str()); } else - source.Reply(_("\002%s\002 is not on your ignore list."), param.c_str()); + source.Reply(_("\002%s\002 is not on the ignore list."), param.c_str()); } else if (command.equals_ci("LIST")) { if (mi->ignores.empty()) - source.Reply(_("Your memo ignore list is empty.")); + source.Reply(_("Memo ignore list is empty.")); else { ListFormatter list; @@ -106,8 +108,10 @@ class CommandMSIgnore : public Command { this->SendSyntax(source); source.Reply(" "); - source.Reply(_("Allows you to ignore users by nick or host from memoing you. If someone on your\n" - "memo ignore list tries to memo you, they will not be told that you have them ignored.")); + source.Reply(_("Allows you to ignore users by nick or host from memoing\n" + "you or a channel. If someone on the memo ignore list tries\n" + "to memo you or a channel, they will not be told that you have\n" + "them ignored.")); return true; } }; diff --git a/modules/commands/ms_info.cpp b/modules/commands/ms_info.cpp index 437245f16..21ec9ba13 100644 --- a/modules/commands/ms_info.cpp +++ b/modules/commands/ms_info.cpp @@ -195,8 +195,8 @@ class CommandMSInfo : public Command "the given channel.\n" " \n" "With a nickname parameter, displays the same information\n" - "for the given nickname. This use limited to \002Services\n" - "Operators\002.")); + "for the given nickname. This is limited to \002Services\002\n" + "\002Operators\002.")); return true; } diff --git a/modules/commands/ms_rsend.cpp b/modules/commands/ms_rsend.cpp index fafcf5eff..e5c345c75 100644 --- a/modules/commands/ms_rsend.cpp +++ b/modules/commands/ms_rsend.cpp @@ -46,7 +46,7 @@ class CommandMSRSend : public Command source.Reply(ACCESS_DENIED); else if (Config->MSMemoReceipt > 2 || Config->MSMemoReceipt == 0) { - Log(this->owner) << "MSMemoReceipt is set misconfigured to " << Config->MSMemoReceipt; + Log(this->owner) << "MSMemoReceipt is misconfigured to " << Config->MSMemoReceipt; source.Reply(_("Sorry, RSEND has been disabled on this network.")); } else @@ -57,7 +57,7 @@ class CommandMSRSend : public Command else if (result == MemoServService::MEMO_TOO_FAST) source.Reply(_("Please wait %d seconds before using the SEND command again."), Config->MSSendDelay); else if (result == MemoServService::MEMO_TARGET_FULL) - source.Reply(_("%s currently has too many memos and cannot receive more."), nick.c_str()); + source.Reply(_("Sorry, %s currently has too many memos and cannot receive more."), nick.c_str()); else { source.Reply(_("Memo sent to \002%s\002."), name.c_str()); diff --git a/modules/commands/ms_send.cpp b/modules/commands/ms_send.cpp index 171bd8e60..f92955dcf 100644 --- a/modules/commands/ms_send.cpp +++ b/modules/commands/ms_send.cpp @@ -41,7 +41,7 @@ class CommandMSSend : public Command else if (result == MemoServService::MEMO_TOO_FAST) source.Reply(_("Please wait %d seconds before using the SEND command again."), Config->MSSendDelay); else if (result == MemoServService::MEMO_TARGET_FULL) - source.Reply(_("%s currently has too many memos and cannot receive more."), nick.c_str()); + source.Reply(_("Sorry, %s currently has too many memos and cannot receive more."), nick.c_str()); return; } diff --git a/modules/commands/ms_set.cpp b/modules/commands/ms_set.cpp index 99cb8f28e..f2fc15c09 100644 --- a/modules/commands/ms_set.cpp +++ b/modules/commands/ms_set.cpp @@ -275,7 +275,7 @@ class CommandMSSet : public Command "change the limit (even if a previous limit was set with\n" "\002HARD\002).\n" "This use of the \002SET LIMIT\002 command is limited to \002Services\002\n" - "\002admins\002. Other users may only enter a limit for themselves\n" + "\002Admins\002. Other users may only enter a limit for themselves\n" "or a channel on which they have such privileges, may not\n" "remove their limit, may not set a limit above %d, and may\n" "not set a hard limit."), Config->MSMaxMemos); diff --git a/modules/commands/ns_access.cpp b/modules/commands/ns_access.cpp index c37f17926..bd26dbb2c 100644 --- a/modules/commands/ns_access.cpp +++ b/modules/commands/ns_access.cpp @@ -121,7 +121,7 @@ class CommandNSAccess : public Command } else if (Config->NSSecureAdmins && source.GetAccount() != na->nc && na->nc->IsServicesOper() && !cmd.equals_ci("LIST")) { - source.Reply(_("You may view but not modify the access list of other services operators.")); + source.Reply(_("You may view but not modify the access list of other Services Operators.")); return; } @@ -158,7 +158,7 @@ class CommandNSAccess : public Command "recognized by %s as allowed to use the nick. If\n" "you want to use the nick from a different address, you\n" "need to send an \002IDENTIFY\002 command to make %s\n" - "recognize you. Services operators may provide a nick\n" + "recognize you. Services Operators may provide a nick\n" "to modify other users' access lists.\n" " \n" "Examples:\n" diff --git a/modules/commands/ns_ajoin.cpp b/modules/commands/ns_ajoin.cpp index efb4c7b9f..11eaecd84 100644 --- a/modules/commands/ns_ajoin.cpp +++ b/modules/commands/ns_ajoin.cpp @@ -171,7 +171,9 @@ class CommandNSAJoin : public Command CommandNSAJoin(Module *creator) : Command(creator, "nickserv/ajoin", 1, 3) { this->SetDesc(_("Manage your auto join list")); - this->SetSyntax(_("{ADD | DEL | LIST} \037[user]\037 [\037channel\037] [\037key\037]")); + this->SetSyntax(_("ADD [\037user\037] \037channel\037 [\037key\037]")); + this->SetSyntax(_("DEL [\037user\037] \037channel\037")); + this->SetSyntax(_("LIST [\037user\037]")); } void Execute(CommandSource &source, const std::vector<Anope::string> ¶ms) anope_override @@ -216,7 +218,7 @@ class CommandNSAJoin : public Command source.Reply(" "); source.Reply(_("This command manages your auto join list. When you identify\n" "you will automatically join the channels on your auto join list.\n" - "Services operators may provide a nick to modify other users'\n" + "Services Operators may provide a nick to modify other users'\n" "auto join lists.")); return true; } diff --git a/modules/commands/ns_drop.cpp b/modules/commands/ns_drop.cpp index 60f03d803..310efa1b2 100644 --- a/modules/commands/ns_drop.cpp +++ b/modules/commands/ns_drop.cpp @@ -46,7 +46,7 @@ class CommandNSDrop : public Command if (!is_mine && !source.HasPriv("nickserv/drop")) source.Reply(ACCESS_DENIED); else if (Config->NSSecureAdmins && !is_mine && na->nc->IsServicesOper()) - source.Reply(_("You may not drop other services operators nicknames.")); + source.Reply(_("You may not drop other Services Operators' nicknames.")); else { if (Anope::ReadOnly) @@ -81,13 +81,13 @@ class CommandNSDrop : public Command "Without a parameter, deletes your nickname.\n" " \n" "With a parameter, drops the named nick from the database.\n" - "You may drop any nick within your group without any \n" - "special privileges. Dropping any nick is limited to \n" + "You may drop any nick within your group without any\n" + "special privileges. Dropping any nick is limited to\n" "\002Services Operators\002."), source.command.c_str()); else source.Reply(_("Syntax: \002%s [\037nickname\037 | \037password\037]\002\n" " \n" - "Deltes your nickname. A nick\n" + "Deletes your nickname. A nick\n" "that has been dropped is free for anyone to re-register.\n" " \n" "You may drop a nick within your group by passing it\n" diff --git a/modules/commands/ns_getemail.cpp b/modules/commands/ns_getemail.cpp index 323fa33a8..7728f3178 100644 --- a/modules/commands/ns_getemail.cpp +++ b/modules/commands/ns_getemail.cpp @@ -23,7 +23,7 @@ class CommandNSGetEMail : public Command CommandNSGetEMail(Module *creator) : Command(creator, "nickserv/getemail", 1, 1) { this->SetDesc(_("Matches and returns all users that registered using given email")); - this->SetSyntax(_("\037user@email-host\037")); + this->SetSyntax(_("\037email\037")); } void Execute(CommandSource &source, const std::vector<Anope::string> ¶ms) anope_override @@ -40,13 +40,13 @@ class CommandNSGetEMail : public Command if (!nc->email.empty() && nc->email.equals_ci(email)) { ++j; - source.Reply(_("Emails Match \002%s\002 to \002%s\002."), nc->display.c_str(), email.c_str()); + source.Reply(_("Email matched: \002%s\002 to \002%s\002."), nc->display.c_str(), email.c_str()); } } if (j <= 0) { - source.Reply(_("No Emails listed for \002%s\002."), email.c_str()); + source.Reply(_("No nick registrations matching \002%s\002 found."), email.c_str()); return; } @@ -58,9 +58,9 @@ class CommandNSGetEMail : public Command this->SendSyntax(source); source.Reply(" "); source.Reply(_("Returns the matching nicks that used given email. \002Note\002 that\n" - "you can not use wildcards for either user or emailhost. Whenever\n" - "this command is used, a message including the person who issued\n" - "the command and the email it was used on will be logged.")); + "you can not use wildcards. Whenever this command is used, a message\n" + "including the person who issued the command and the email it was used\n" + "on will be logged.")); return true; } }; diff --git a/modules/commands/ns_getpass.cpp b/modules/commands/ns_getpass.cpp index ae99bd2ab..987e98827 100644 --- a/modules/commands/ns_getpass.cpp +++ b/modules/commands/ns_getpass.cpp @@ -31,7 +31,7 @@ class CommandNSGetPass : public Command if (!(na = NickAlias::Find(nick))) source.Reply(NICK_X_NOT_REGISTERED, nick.c_str()); else if (Config->NSSecureAdmins && na->nc->IsServicesOper()) - source.Reply(_("You may not get the password of other services operators.")); + source.Reply(_("You may not get the password of other Services Operators.")); else { if (Anope::Decrypt(na->nc->pass, tmp_pass) == 1) diff --git a/modules/commands/ns_group.cpp b/modules/commands/ns_group.cpp index 9ce8ebc95..f94fe2d86 100644 --- a/modules/commands/ns_group.cpp +++ b/modules/commands/ns_group.cpp @@ -168,7 +168,7 @@ class CommandNSGroup : public Command { this->SendSyntax(source); source.Reply(" "); - source.Reply(_("This command makes your nickname join the \037target\037 nickname's \n" + source.Reply(_("This command makes your nickname join the \037target\037 nickname's\n" "group. \037password\037 is the password of the target nickname.\n" " \n" "Joining a group will allow you to share your configuration,\n" @@ -185,9 +185,9 @@ class CommandNSGroup : public Command "need to identify yourself before using this command.\n" " \n" "It is recommended to use this command with a non-registered\n" - "nick because it will be registered automatically when \n" - "using this command. You may use it with a registered nick (to \n" - "change your group) only if your network administrators allowed \n" + "nick because it will be registered automatically when\n" + "using this command. You may use it with a registered nick (to\n" + "change your group) only if your network administrators allowed\n" "it.\n" " \n" "You can only be in one group at a time. Group merging is\n" @@ -219,7 +219,7 @@ class CommandNSUngroup : public Command else if (!na) source.Reply(NICK_X_NOT_REGISTERED, !nick.empty() ? nick.c_str() : u->nick.c_str()); else if (na->nc != u->Account()) - source.Reply(_("The nick %s is not in your group."), na->nick.c_str()); + source.Reply(_("Nick %s is not in your group."), na->nick.c_str()); else { NickCore *oldcore = na->nc; @@ -259,9 +259,9 @@ class CommandNSUngroup : public Command source.Reply(" "); source.Reply(_("This command ungroups your nick, or if given, the specificed nick,\n" "from the group it is in. The ungrouped nick keeps its registration\n" - "time, password, email, greet, language, url, and icq. Everything\n" - "else is reset. You may not ungroup yourself if there is only one\n" - "nick in your group.")); + "time, password, email, greet, language, and url. Everything else\n" + "is reset. You may not ungroup yourself if there is only one nick in\n" + "your group.")); return true; } }; @@ -332,7 +332,7 @@ class CommandNSGList : public Command " \n" "With a parameter, lists all nicknames that are in the\n" "group of the given nick.\n" - "This use limited to \002Services Operators\002."), + "Specifying a nick is limited to \002Services Operators\002."), source.command.c_str()); else source.Reply(_("Syntax: \002%s\002\n" diff --git a/modules/commands/ns_info.cpp b/modules/commands/ns_info.cpp index 56dbd47f8..fddb9c5ad 100644 --- a/modules/commands/ns_info.cpp +++ b/modules/commands/ns_info.cpp @@ -63,10 +63,10 @@ class CommandNSInfo : public Command source.Reply(_("%s is %s"), na->nick.c_str(), na->last_realname.c_str()); if (na->nc->HasExt("UNCONFIRMED")) - source.Reply(_("%s nickname is unconfirmed."), na->nick.c_str()); + source.Reply(_("%s is an unconfirmed nickname."), na->nick.c_str()); if (na->nc->IsServicesOper() && (show_hidden || !na->nc->HasExt("HIDE_STATUS"))) - source.Reply(_("%s is a services operator of type %s."), na->nick.c_str(), na->nc->o->ot->GetName().c_str()); + source.Reply(_("%s is a Services Operator of type %s."), na->nick.c_str(), na->nc->o->ot->GetName().c_str()); InfoFormatter info(source.nc); diff --git a/modules/commands/ns_list.cpp b/modules/commands/ns_list.cpp index 4d59c5b0f..7cbfc5b97 100644 --- a/modules/commands/ns_list.cpp +++ b/modules/commands/ns_list.cpp @@ -160,11 +160,14 @@ class CommandNSList : public Command " Lists all registered nicks which have been set to not expire.\n" " \n" " \002LIST #51-100\002\n" - " Lists all registered nicks within the given range (51-100).\n")); + " Lists all registered nicks within the given range (51-100).")); + if (!Config->RegexEngine.empty()) - source.Reply(" \n" - "Regex matches are also supported using the %s engine.\n" - "Enclose your pattern in // if this desired.", Config->RegexEngine.c_str()); + { + source.Reply(" "); + source.Reply(_("Regex matches are also supported using the %s engine.\n" + "Enclose your pattern in // if this is desired."), Config->RegexEngine.c_str()); + } return true; } diff --git a/modules/commands/ns_logout.cpp b/modules/commands/ns_logout.cpp index 018d34128..1147b390f 100644 --- a/modules/commands/ns_logout.cpp +++ b/modules/commands/ns_logout.cpp @@ -37,7 +37,7 @@ class CommandNSLogout : public Command else if (!(u2 = (!nick.empty() ? User::Find(nick, true) : source.GetUser()))) source.Reply(NICK_X_NOT_IN_USE, !nick.empty() ? nick.c_str() : source.GetNick().c_str()); else if (!nick.empty() && u2->IsServicesOper()) - source.Reply(_("You can't logout %s because they are a Services Operator."), nick.c_str()); + source.Reply(_("You can't logout %s, they are a Services Operator."), nick.c_str()); else { if (!nick.empty() && !param.empty() && param.equals_ci("REVALIDATE") && NickServService) @@ -66,14 +66,14 @@ class CommandNSLogout : public Command { this->SendSyntax(source); source.Reply(" "); - source.Reply(_("Without a parameter, reverses the effect of the \002IDENTIFY\002 \n" + source.Reply(_("Without a parameter, reverses the effect of the \002IDENTIFY\002\n" "command, i.e. make you not recognized as the real owner of the nick\n" "anymore. Note, however, that you won't be asked to reidentify\n" "yourself.\n" " \n" - "With a parameter, does the same for the given nick. If you \n" - "specify REVALIDATE as well, Services will ask the given nick\n" - "to re-identify. This use limited to \002Services Operators\002.")); + "With a parameter, does the same for the given nick. If you\n" + "specify \002REVALIDATE\002 as well, Services will ask the given nick\n" + "to re-identify. This is limited to \002Services Operators\002.")); return true; } diff --git a/modules/commands/ns_register.cpp b/modules/commands/ns_register.cpp index 852f0110d..c224f8acf 100644 --- a/modules/commands/ns_register.cpp +++ b/modules/commands/ns_register.cpp @@ -20,7 +20,7 @@ class CommandNSConfirm : public Command public: CommandNSConfirm(Module *creator) : Command(creator, "nickserv/confirm", 1, 2) { - this->SetDesc(_("Confirm an auth code")); + this->SetDesc(_("Confirm a passcode")); this->SetSyntax(_("\037passcode\037")); this->AllowUnregistered(true); } @@ -201,7 +201,7 @@ class CommandNSRegister : public Command FOREACH_MOD(I_OnNickRegister, OnNickRegister(na)); if (Config->NSAddAccessOnReg) - source.Reply(_("Nickname \002%s\002 registered under your account: %s"), u_nick.c_str(), na->nc->GetAccess(0).c_str()); + source.Reply(_("Nickname \002%s\002 registered under your user@host-mask: %s"), u_nick.c_str(), na->nc->GetAccess(0).c_str()); else source.Reply(_("Nickname \002%s\002 registered."), u_nick.c_str()); @@ -219,7 +219,7 @@ class CommandNSRegister : public Command nc->ExtendMetadata("UNCONFIRMED"); if (SendRegmail(u, na, source.service)) { - source.Reply(_("A passcode has been sent to %s, please type %s%s confirm <passcode> to confirm your email address."), email.c_str(), Config->UseStrictPrivMsgString.c_str(), Config->NickServ.c_str()); + source.Reply(_("A passcode has been sent to %s, please type \002%s%s CONFIRM <passcode>\002 to confirm your email address."), email.c_str(), Config->UseStrictPrivMsgString.c_str(), Config->NickServ.c_str()); source.Reply(_("If you do not confirm your email address within %s your account will expire."), Anope::Duration(Config->NSUnconfirmedExpire).c_str()); } } @@ -241,13 +241,13 @@ class CommandNSRegister : public Command bool OnHelp(CommandSource &source, const Anope::string &subcommand) anope_override { this->SendSyntax(source); - source.Reply("\n"); + source.Reply(" "); source.Reply(_("Registers your nickname in the %s database. Once\n" "your nick is registered, you can use the \002SET\002 and \002ACCESS\002\n" "commands to configure your nick's settings as you like\n" "them. Make sure you remember the password you use when\n" "registering - you'll need it to make changes to your nick\n" - "later. (Note that \002case matters!\002 \037ANOPE\037, \037Anope\037, and \n" + "later. (Note that \002case matters!\002 \037ANOPE\037, \037Anope\037, and\n" "\037anope\037 are all different passwords!)\n" " \n" "Guidelines on choosing passwords:\n" @@ -258,17 +258,20 @@ class CommandNSRegister : public Command "in fact, %s will not allow it. Also, short\n" "passwords are vulnerable to trial-and-error searches, so\n" "you should choose a password at least 5 characters long.\n" - "Finally, the space character cannot be used in passwords.\n"), + "Finally, the space character cannot be used in passwords."), Config->NickServ.c_str(), Config->NickServ.c_str()); if (!Config->NSForceEmail) - source.Reply(_(" \n" - "The parameter \037email\037 is optional and will set the email\n" + { + source.Reply(" "); + source.Reply(_("The \037email\037 parameter is optional and will set the email\n" "for your nick immediately.\n" "Your privacy is respected; this e-mail won't be given to\n" - "any third-party person.\n" - " \n")); + "any third-party person. You may also wish to \002SET HIDE\002 it\n" + "after registering if it isn't the default setting already.")); + } + source.Reply(" "); source.Reply(_("This command also creates a new group for your nickname,\n" "that will allow you to register other nicks later sharing\n" "the same configuration, the same set of memos and the\n" @@ -321,7 +324,7 @@ class CommandNSResend : public Command this->SendSyntax(source); source.Reply(" "); source.Reply(_("This command will re-send the auth code (also called passcode)\n" - "to the e-mail address of the user whom is performing it.")); + "to the e-mail address of the nickname in the database.")); return true; } diff --git a/modules/commands/ns_resetpass.cpp b/modules/commands/ns_resetpass.cpp index 03f3186e3..e57261a9f 100644 --- a/modules/commands/ns_resetpass.cpp +++ b/modules/commands/ns_resetpass.cpp @@ -49,7 +49,7 @@ class CommandNSResetPass : public Command { this->SendSyntax(source); source.Reply(" "); - source.Reply(_("Sends a code key to the nickname with instructions on how to\n" + source.Reply(_("Sends a passcode to the nickname with instructions on how to\n" "reset their password.")); return true; } @@ -104,7 +104,7 @@ class NSResetPass : public Module { nc->Shrink("ns_resetpass"); - Log(LOG_COMMAND, source, &commandnsresetpass) << "confirmed RESETPASS to forcefully identify to " << na->nick; + Log(LOG_COMMAND, source, &commandnsresetpass) << "confirmed RESETPASS to forcefully identify as " << na->nick; nc->Shrink("UNCONFIRMED"); diff --git a/modules/commands/ns_set.cpp b/modules/commands/ns_set.cpp index e3a6162db..61573980e 100644 --- a/modules/commands/ns_set.cpp +++ b/modules/commands/ns_set.cpp @@ -164,7 +164,7 @@ class CommandNSSASetPassword : public Command if (Config->NSSecureAdmins && source.nc != nc && nc->IsServicesOper()) { - source.Reply(_("You may not change the password of other services operators.")); + source.Reply(_("You may not change the password of other Services Operators.")); return; } else if (nc->display.equals_ci(params[1]) || (Config->StrictPasswords && len < 5)) @@ -202,53 +202,55 @@ class CommandNSSetAutoOp : public Command public: CommandNSSetAutoOp(Module *creator, const Anope::string &sname = "nickserv/set/autoop", size_t min = 1) : Command(creator, sname, min, min + 1) { - this->SetDesc(_("Should services op you automatically.")); - this->SetSyntax(_("{ON | OFF}")); + this->SetDesc(_("Sets whether services should set channel status modes on you automatically.")); + this->SetSyntax(_("{ON | OFF}")); } void Run(CommandSource &source, const Anope::string &user, const Anope::string ¶m) { - const NickAlias *na = NickAlias::Find(user); - if (na == NULL) - { - source.Reply(NICK_X_NOT_REGISTERED, user.c_str()); - return; - } - NickCore *nc = na->nc; - - EventReturn MOD_RESULT; - FOREACH_RESULT(I_OnSetNickOption, OnSetNickOption(source, this, nc, param)); - if (MOD_RESULT == EVENT_STOP) - return; - - if (param.equals_ci("ON")) - { - nc->ExtendMetadata("AUTOOP"); - source.Reply(_("Services will now autoop %s in channels."), nc->display.c_str()); - } - else if (param.equals_ci("OFF")) - { - nc->Shrink("AUTOOP"); - source.Reply(_("Services will no longer autoop %s in channels."), nc->display.c_str()); - } - else - this->OnSyntaxError(source, "AUTOOP"); - - return; + const NickAlias *na = NickAlias::Find(user); + if (na == NULL) + { + source.Reply(NICK_X_NOT_REGISTERED, user.c_str()); + return; + } + NickCore *nc = na->nc; + + EventReturn MOD_RESULT; + FOREACH_RESULT(I_OnSetNickOption, OnSetNickOption(source, this, nc, param)); + if (MOD_RESULT == EVENT_STOP) + return; + + if (param.equals_ci("ON")) + { + nc->ExtendMetadata("AUTOOP"); + source.Reply(_("Services will from now on set status modes on %s in channels."), nc->display.c_str()); + } + else if (param.equals_ci("OFF")) + { + nc->Shrink("AUTOOP"); + source.Reply(_("Services will no longer set status modes on %s in channels."), nc->display.c_str()); + } + else + this->OnSyntaxError(source, "AUTOOP"); + + return; } void Execute(CommandSource &source, const std::vector<Anope::string> ¶ms) anope_override { - this->Run(source, source.nc->display, params[0]); + this->Run(source, source.nc->display, params[0]); } bool OnHelp(CommandSource &source, const Anope::string &) anope_override { - this->SendSyntax(source); - source.Reply(" "); - source.Reply(_("Sets whether you will be opped automatically. Set to ON to \n" - "allow ChanServ to op you automatically when entering channels.")); - return true; + this->SendSyntax(source); + source.Reply(" "); + source.Reply(_("Sets whether you will be given your channel status modes automatically.\n" + "Set to \002ON\002 to allow ChanServ to set status modes on you automatically\n" + "when entering channels. Note that depending on channel settings some modes\n" + "may not get set automatically.")); + return true; } }; @@ -270,9 +272,11 @@ class CommandNSSASetAutoOp : public CommandNSSetAutoOp { this->SendSyntax(source); source.Reply(" "); - source.Reply(_("Sets whether the given nickname will be opped automatically.\n" - "Set to \002ON\002 to allow ChanServ to op the given nickname \n" - "omatically when joining channels.")); + source.Reply(_("Sets whether the given nickname will be given its status modes\n" + "in channels automatically. Set to \002ON\002 to allow ChanServ\n" + "to set status modes on the given nickname automatically when it\n" + "is entering channels. Note that depending on channel settings\n" + "some modes may not get set automatically.")); return true; } }; @@ -302,12 +306,12 @@ class CommandNSSetChanstats : public Command if (param.equals_ci("ON")) { na->nc->ExtendMetadata("STATS"); - source.Reply(_("Chanstat statistics are now enabled for your nick")); + source.Reply(_("Chanstat statistics are now enabled for your nick.")); } else if (param.equals_ci("OFF")) { na->nc->Shrink("STATS"); - source.Reply(_("Chanstat statistics are now disabled for your nick")); + source.Reply(_("Chanstat statistics are now disabled for your nick.")); } else this->OnSyntaxError(source, "CHANSTATS"); @@ -324,7 +328,7 @@ class CommandNSSetChanstats : public Command { this->SendSyntax(source); source.Reply(" "); - source.Reply(_("Turns Chanstats statistics ON or OFF")); + source.Reply(_("Turns Chanstats statistics ON or OFF.")); return true; } }; @@ -347,7 +351,7 @@ class CommandNSSASetChanstats : public CommandNSSetChanstats { this->SendSyntax(source); source.Reply(" "); - source.Reply(_("Turns chanstats channel statistics ON or OFF for this user")); + source.Reply(_("Turns chanstats channel statistics ON or OFF for this user.")); return true; } }; @@ -377,7 +381,7 @@ class CommandNSSetDisplay : public Command } else if (!na || *na->nc != *user_na->nc) { - source.Reply(_("The new display MUST be a nickname of the nickname group %s"), user_na->nc->display.c_str()); + source.Reply(_("The new display MUST be a nickname of the nickname group %s."), user_na->nc->display.c_str()); return; } @@ -399,7 +403,7 @@ class CommandNSSetDisplay : public Command { this->SendSyntax(source); source.Reply(" "); - source.Reply(_("Changes the display used to refer to your nickname group in \n" + source.Reply(_("Changes the display used to refer to your nickname group in\n" "Services. The new display MUST be a nick of your group.")); return true; } @@ -423,7 +427,7 @@ class CommandNSSASetDisplay : public CommandNSSetDisplay { this->SendSyntax(source); source.Reply(" "); - source.Reply(_("Changes the display used to refer to the nickname group in \n" + source.Reply(_("Changes the display used to refer to the nickname group in\n" "Services. The new display MUST be a nick of the group.")); return true; } @@ -485,7 +489,7 @@ class CommandNSSetEmail : public Command } else if (Config->NSSecureAdmins && source.nc != nc && nc->IsServicesOper()) { - source.Reply(_("You may not change the email of other services operators.")); + source.Reply(_("You may not change the e-mail of other Services Operators.")); return; } else if (!param.empty() && !Mail::Validate(param)) @@ -505,7 +509,7 @@ class CommandNSSetEmail : public Command Anope::string old = source.nc->email; source.nc->email = param; if (SendConfirmMail(source.GetUser(), source.service)) - source.Reply(_("A confirmation email has been sent to \002%s\002. Follow the instructions in it to change your email address."), param.c_str()); + source.Reply(_("A confirmation e-mail has been sent to \002%s\002. Follow the instructions in it to change your e-mail address."), param.c_str()); source.nc->email = old; } else @@ -613,7 +617,7 @@ class CommandNSSetGreet : public Command source.Reply(" "); source.Reply(_("Makes the given message the greet of your nickname, that\n" "will be displayed when joining a channel that has GREET\n" - "option enabled, provided that you have the necessary \n" + "option enabled, provided that you have the necessary\n" "access on it.")); return true; } @@ -639,7 +643,7 @@ class CommandNSSASetGreet : public CommandNSSetGreet source.Reply(" "); source.Reply(_("Makes the given message the greet of the nickname, that\n" "will be displayed when joining a channel that has GREET\n" - "option enabled, provided that the user has the necessary \n" + "option enabled, provided that the user has the necessary\n" "access on it.")); return true; } @@ -1051,8 +1055,8 @@ class CommandNSSetMessage : public Command { this->SendSyntax(source); source.Reply(" "); - source.Reply(_("Allows you to choose the way Services are communicating with \n" - "you. With \002MSG\002 set, Services will use messages, else they'll \n" + source.Reply(_("Allows you to choose the way Services are communicating with\n" + "you. With \002MSG\002 set, Services will use messages, else they'll\n" "use notices.")); return true; } @@ -1077,7 +1081,7 @@ class CommandNSSASetMessage : public CommandNSSetMessage { this->SendSyntax(source); source.Reply(" "); - source.Reply(_("Allows you to choose the way Services are communicating with \n" + source.Reply(_("Allows you to choose the way Services are communicating with\n" "the given user. With \002MSG\002 set, Services will use messages,\n" "else they'll use notices.")); return true; diff --git a/modules/commands/ns_status.cpp b/modules/commands/ns_status.cpp index 1d1637177..8fc803896 100644 --- a/modules/commands/ns_status.cpp +++ b/modules/commands/ns_status.cpp @@ -19,7 +19,7 @@ class CommandNSStatus : public Command CommandNSStatus(Module *creator) : Command(creator, "nickserv/status", 0, 16) { this->SetDesc(_("Returns the owner status of the given nickname")); - this->SetSyntax(_("\037nickname\037...")); + this->SetSyntax(_("\037nickname\037")); this->AllowUnregistered(true); } @@ -67,11 +67,7 @@ class CommandNSStatus : public Command " 0 - no such user online \002or\002 nickname not registered\n" " 1 - user not recognized as nickname's owner\n" " 2 - user recognized as owner via access list only\n" - " 3 - user recognized as owner via password identification\n" - " \n" - "Up to sixteen nicknames may be sent with each command; the\n" - "rest will be ignored. If no nickname is given, your status\n" - "will be returned.")); + " 3 - user recognized as owner via password identification")); return true; } }; diff --git a/modules/commands/ns_suspend.cpp b/modules/commands/ns_suspend.cpp index 5cf1a223a..675db1330 100644 --- a/modules/commands/ns_suspend.cpp +++ b/modules/commands/ns_suspend.cpp @@ -54,7 +54,7 @@ class CommandNSSuspend : public Command if (Config->NSSecureAdmins && na->nc->IsServicesOper()) { - source.Reply(_("You may not suspend other services operators nicknames.")); + source.Reply(_("You may not suspend other Services Operators' nicknames.")); return; } @@ -102,7 +102,7 @@ class CommandNSSuspend : public Command { this->SendSyntax(source); source.Reply(" "); - source.Reply(_("Suspends a registered nickname, which prevents from being used\n" + source.Reply(_("Suspends a registered nickname, which prevents it from being used\n" "while keeping all the data for that nick. If an expiry is given\n" "the nick will be unsuspended after that period of time, else the\n" "default expiry from the configuration is used.")); diff --git a/modules/commands/os_akill.cpp b/modules/commands/os_akill.cpp index fa0771e03..96734c059 100644 --- a/modules/commands/os_akill.cpp +++ b/modules/commands/os_akill.cpp @@ -130,7 +130,7 @@ class CommandOSAKill : public Command ServiceReference<RegexProvider> provider("Regex", Config->RegexEngine); if (!provider) { - source.Reply(_("Unable to find regex engine %s"), Config->RegexEngine.c_str()); + source.Reply(_("Unable to find regex engine %s."), Config->RegexEngine.c_str()); return; } @@ -304,7 +304,7 @@ class CommandOSAKill : public Command source.Reply(_("No matching entries on the AKILL list.")); else { - source.Reply(_("Current akill list:")); + source.Reply(_("Current AKILL list:")); std::vector<Anope::string> replies; list.Process(replies); @@ -312,7 +312,7 @@ class CommandOSAKill : public Command for (unsigned i = 0; i < replies.size(); ++i) source.Reply(replies[i]); - source.Reply(_("End of \2akill\2 list.")); + source.Reply(_("End of AKILL list.")); } } @@ -394,7 +394,7 @@ class CommandOSAKill : public Command { this->SendSyntax(source); source.Reply(" "); - source.Reply(_("Allows Services operators to manipulate the AKILL list. If\n" + source.Reply(_("Allows Services Operators to manipulate the AKILL list. If\n" "a user matching an AKILL mask attempts to connect, Services\n" "will issue a KILL for that user and, on supported server\n" "types, will instruct all servers to add a ban for the mask\n" @@ -405,36 +405,38 @@ class CommandOSAKill : public Command "Mask should be in the format of nick!user@host#real name,\n" "though all that is required is user@host. If a real name is specified,\n" "the reason must be prepended with a :.\n" - "\037expiry\037 is specified as an integer followed by one of \037d\037 \n" - "(days), \037h\037 (hours), or \037m\037 (minutes). Combinations (such as \n" - "\0371h30m\037) are not permitted. If a unit specifier is not \n" - "included, the default is days (so \037+30\037 by itself means 30 \n" + "\037expiry\037 is specified as an integer followed by one of \037d\037\n" + "(days), \037h\037 (hours), or \037m\037 (minutes). Combinations (such as\n" + "\0371h30m\037) are not permitted. If a unit specifier is not\n" + "included, the default is days (so \037+30\037 by itself means 30\n" "days). To add an AKILL which does not expire, use \037+0\037. If the\n" "usermask to be added starts with a \037+\037, an expiry time must\n" "be given, even if it is the same as the default. The\n" "current AKILL default expiry time can be found with the\n" - "\002STATS AKILL\002 command.\n")); + "\002STATS AKILL\002 command.")); if (!Config->RegexEngine.empty()) - source.Reply(" \n" - "Regex matches are also supported using the %s engine.\n" - "Enclose your mask in // if this desired.", Config->RegexEngine.c_str()); + { + source.Reply(" "); + source.Reply(_("Regex matches are also supported using the %s engine.\n" + "Enclose your mask in // if this is desired."), Config->RegexEngine.c_str()); + } source.Reply(_( " \n" "The \002AKILL DEL\002 command removes the given mask from the\n" - "AKILL list if it is present. If a list of entry numbers is \n" - "given, those entries are deleted. (See the example for LIST \n" + "AKILL list if it is present. If a list of entry numbers is\n" + "given, those entries are deleted. (See the example for LIST\n" "below.)\n" " \n" - "The \002AKILL LIST\002 command displays the AKILL list. \n" + "The \002AKILL LIST\002 command displays the AKILL list.\n" "If a wildcard mask is given, only those entries matching the\n" "mask are displayed. If a list of entry numbers is given,\n" "only those entries are shown; for example:\n" " \002AKILL LIST 2-5,7-9\002\n" - " Lists AKILL entries numbered 2 through 5 and 7 \n" + " Lists AKILL entries numbered 2 through 5 and 7\n" " through 9.\n" " \n" - "\002AKILL VIEW\002 is a more verbose version of \002AKILL LIST\002, and \n" - "will show who added an AKILL, the date it was added, and when \n" + "\002AKILL VIEW\002 is a more verbose version of \002AKILL LIST\002, and\n" + "will show who added an AKILL, the date it was added, and when\n" "it expires, as well as the user@host/ip mask and reason.\n" " \n" "\002AKILL CLEAR\002 clears all entries of the AKILL list.")); diff --git a/modules/commands/os_defcon.cpp b/modules/commands/os_defcon.cpp index e2aa43c0b..fe2ecc99f 100644 --- a/modules/commands/os_defcon.cpp +++ b/modules/commands/os_defcon.cpp @@ -182,7 +182,7 @@ class CommandOSDefcon : public Command if (lvl.empty()) { - source.Reply(_("Services are now at DEFCON \002%d\002"), DConfig.defaultlevel); + source.Reply(_("Services are now at DEFCON \002%d\002."), DConfig.defaultlevel); this->SendLevels(source); return; } @@ -209,7 +209,7 @@ class CommandOSDefcon : public Command if (DConfig.timeout) timeout = new DefConTimeout(this->module, 5); - source.Reply(_("Services are now at DEFCON \002%d\002"), DConfig.defaultlevel); + source.Reply(_("Services are now at DEFCON \002%d\002."), DConfig.defaultlevel); this->SendLevels(source); Log(LOG_ADMIN, source, this) << "to change defcon level to " << newLevel; @@ -451,7 +451,7 @@ class OSDefcon : public Module { if (DConfig.Check(DEFCON_NO_NEW_NICKS)) { - source.Reply(_("Services are in Defcon mode, Please try again later.")); + source.Reply(_("Services are in DefCon mode, please try again later.")); return EVENT_STOP; } } @@ -459,7 +459,7 @@ class OSDefcon : public Module { if (DConfig.Check(DEFCON_NO_MLOCK_CHANGE)) { - source.Reply(_("Services are in Defcon mode, Please try again later.")); + source.Reply(_("Services are in DefCon mode, please try again later.")); return EVENT_STOP; } } @@ -467,7 +467,7 @@ class OSDefcon : public Module { if (DConfig.Check(DEFCON_NO_NEW_CHANNELS)) { - source.Reply(_("Services are in Defcon mode, Please try again later.")); + source.Reply(_("Services are in DefCon mode, please try again later.")); return EVENT_STOP; } } @@ -475,7 +475,7 @@ class OSDefcon : public Module { if (DConfig.Check(DEFCON_NO_NEW_MEMOS)) { - source.Reply(_("Services are in Defcon mode, Please try again later.")); + source.Reply(_("Services are in DefCon mode, please try again later.")); return EVENT_STOP; } } @@ -535,7 +535,7 @@ class OSDefcon : public Module { XLine x("*@" + u->host, Config->OperServ, Anope::CurTime + Config->SessionAutoKillExpiry, "Defcon session limit exceeded", XLineManager::GenerateUID()); akills->Send(NULL, &x); - Log(OperServ, "akill/defcon") << "[DEFCON] Added a temporary AKILL for \2*@" << u->host << "\2 due to excessive connections"; + Log(OperServ, "akill/defcon") << "[DEFCON] Added a temporary AKILL for \002*@" << u->host << "\002 due to excessive connections"; } else { diff --git a/modules/commands/os_dns.cpp b/modules/commands/os_dns.cpp index 86110ca3f..183ab83e4 100644 --- a/modules/commands/os_dns.cpp +++ b/modules/commands/os_dns.cpp @@ -531,7 +531,7 @@ class CommandOSDNS : public Command } } else - source.Reply(_("Unknown SET option")); + source.Reply(_("Unknown SET option.")); } void OnPool(CommandSource &source, const std::vector<Anope::string> ¶ms) @@ -597,7 +597,7 @@ class CommandOSDNS : public Command this->SetSyntax(_("DELSERVER \037server.name\037 [\037zone.name\037]")); this->SetSyntax(_("ADDIP \037server.name\037 \037ip\037")); this->SetSyntax(_("DELIP \037server.name\037 \037ip\037")); - this->SetSyntax(_("SET \037server.name\037 \37option\37 \037value\037")); + this->SetSyntax(_("SET \037server.name\037 \037option\037 \037value\037")); this->SetSyntax(_("POOL \037server.name\037")); this->SetSyntax(_("DEPOOL \037server.name\037")); } @@ -636,16 +636,16 @@ class CommandOSDNS : public Command "are directed to when connecting. Omitting all parameters prints out the status of\n" "the DNS zone.\n" " \n" - "\2ADDZONE\2 adds a zone, eg us.yournetwork.tld. Servers can then be added to this\n" - "zone with the \2ADDSERVER\2 command.\n" + "\002ADDZONE\002 adds a zone, eg us.yournetwork.tld. Servers can then be added to this\n" + "zone with the \002ADDSERVER\002 command.\n" " \n" - "The \2ADDSERVER\2 command adds a server to the given zone. When a query is done, the\n" + "The \002ADDSERVER\002 command adds a server to the given zone. When a query is done, the\n" "zone in question is served if it exists, else all servers in all zones are served.\n" "A server may be in more than one zone.\n" " \n" - "The \2ADDIP\2 command associates an IP with a server.\n" + "The \002ADDIP\002 command associates an IP with a server.\n" " \n" - "The \2POOL\2 and \2DEPOOL\2 commands actually add and remove servers to their given zones.")); + "The \002POOL\002 and \002DEPOOL\002 commands actually add and remove servers to their given zones.")); return true; } }; diff --git a/modules/commands/os_forbid.cpp b/modules/commands/os_forbid.cpp index 4b807ab1a..a50b8d802 100644 --- a/modules/commands/os_forbid.cpp +++ b/modules/commands/os_forbid.cpp @@ -154,7 +154,7 @@ class CommandOSForbid : public Command this->fs->AddForbid(d); Log(LOG_ADMIN, source, this) << "to add a forbid on " << entry << " of type " << subcommand; - source.Reply(_("Added a forbid on %s to expire on %s"), entry.c_str(), d->expires ? Anope::strftime(d->expires).c_str() : "never"); + source.Reply(_("Added a forbid on %s to expire on %s."), entry.c_str(), d->expires ? Anope::strftime(d->expires).c_str() : "never"); } else if (command.equals_ci("DEL") && params.size() > 2 && ftype != FT_NONE) { @@ -228,10 +228,14 @@ class CommandOSForbid : public Command source.Reply(" "); source.Reply(_("Forbid allows you to forbid usage of certain nicknames, channels,\n" "and email addresses. Wildcards are accepted for all entries.")); + if (!Config->RegexEngine.empty()) - source.Reply(" \n" - "Regex matches are also supported using the %s engine.\n" - "Enclose your pattern in // if this desired.", Config->RegexEngine.c_str()); + { + source.Reply(" "); + source.Reply(_("Regex matches are also supported using the %s engine.\n" + "Enclose your pattern in // if this is desired."), Config->RegexEngine.c_str()); + } + return true; } }; @@ -319,9 +323,9 @@ class OSForbid : public Module if (d != NULL) { if (source.IsOper()) - source.Reply(_("Nick \2%s\2 is forbidden by %s: %s"), params[0].c_str(), d->creator.c_str(), d->reason.c_str()); + source.Reply(_("Nick \002%s\002 is forbidden by %s: %s"), params[0].c_str(), d->creator.c_str(), d->reason.c_str()); else - source.Reply(_("Nick \2%s\2 is forbidden."), params[0].c_str()); + source.Reply(_("Nick \002%s\002 is forbidden."), params[0].c_str()); return EVENT_STOP; } } @@ -331,9 +335,9 @@ class OSForbid : public Module if (d != NULL) { if (source.IsOper()) - source.Reply(_("Channel \2%s\2 is forbidden by %s: %s"), params[0].c_str(), d->creator.c_str(), d->reason.c_str()); + source.Reply(_("Channel \002%s\002 is forbidden by %s: %s"), params[0].c_str(), d->creator.c_str(), d->reason.c_str()); else - source.Reply(_("Channel \2%s\2 is forbidden."), params[0].c_str()); + source.Reply(_("Channel \002%s\002 is forbidden."), params[0].c_str()); return EVENT_STOP; } } diff --git a/modules/commands/os_ignore.cpp b/modules/commands/os_ignore.cpp index 6e2eb0f83..3d30237fa 100644 --- a/modules/commands/os_ignore.cpp +++ b/modules/commands/os_ignore.cpp @@ -259,8 +259,8 @@ class CommandOSIgnore : public Command CommandOSIgnore(Module *creator) : Command(creator, "operserv/ignore", 1, 4) { this->SetDesc(_("Modify the Services ignore list")); - this->SetSyntax(_("ADD \037time\037 \037nick\037 \037reason\037")); - this->SetSyntax(_("DEL \037nick\037")); + this->SetSyntax(_("ADD \037time\037 {\037nick\037|\037mask\037} [\037reason\037]")); + this->SetSyntax(_("DEL {\037nick\037|\037mask\037}")); this->SetSyntax(_("LIST")); this->SetSyntax(_("CLEAR")); } @@ -290,19 +290,22 @@ class CommandOSIgnore : public Command source.Reply(_("Allows Services Operators to make Services ignore a nick or mask\n" "for a certain time or until the next restart. The default\n" "time format is seconds. You can specify it by using units.\n" - "Valid units are: \037s\037 for seconds, \037m\037 for minutes, \n" - "\037h\037 for hours and \037d\037 for days. \n" + "Valid units are: \037s\037 for seconds, \037m\037 for minutes,\n" + "\037h\037 for hours and \037d\037 for days.\n" "Combinations of these units are not permitted.\n" "To make Services permanently ignore the user, type 0 as time.\n" - "When adding a \037mask\037, it should be in the format user@host\n" - "or nick!user@host, everything else will be considered a nick.\n" - "Wildcards are permitted.\n" + "When adding a \037mask\037, it should be in the format nick!user@host,\n" + "everything else will be considered a nick. Wildcards are permitted.\n" " \n" "Ignores will not be enforced on IRC Operators.")); + if (!Config->RegexEngine.empty()) - source.Reply(" \n" - "Regex matches are also supported using the %s engine.\n" - "Enclose your pattern in // if this desired.", Config->RegexEngine.c_str()); + { + source.Reply(" "); + source.Reply(_("Regex matches are also supported using the %s engine.\n" + "Enclose your pattern in // if this is desired."), Config->RegexEngine.c_str()); + } + return true; } }; diff --git a/modules/commands/os_jupe.cpp b/modules/commands/os_jupe.cpp index f329d0db5..fa79c9098 100644 --- a/modules/commands/os_jupe.cpp +++ b/modules/commands/os_jupe.cpp @@ -29,9 +29,9 @@ class CommandOSJupe : public Command Server *server = Server::Find(jserver); if (!IRCD->IsHostValid(jserver) || jserver.find('.') == Anope::string::npos) - source.Reply(_("Please use a valid server name when juping")); + source.Reply(_("Please use a valid server name when juping.")); else if (server && (server == Me || server == Me->GetLinks().front())) - source.Reply(_("You can not jupe your services server or your uplink server.")); + source.Reply(_("You can not jupe your Services' pseudoserver or your uplink server.")); else { Anope::string rbuf = "Juped by " + source.GetNick() + (!reason.empty() ? ": " + reason : ""); diff --git a/modules/commands/os_list.cpp b/modules/commands/os_list.cpp index 7178618b6..f4de45203 100644 --- a/modules/commands/os_list.cpp +++ b/modules/commands/os_list.cpp @@ -102,10 +102,14 @@ class CommandOSChanList : public Command "is given, lists only the channels the user using it is on. If SECRET is\n" "specified, lists only channels matching \002pattern\002 that have the +s or\n" "+p mode.")); + if (!Config->RegexEngine.empty()) - source.Reply(" \n" - "Regex matches are also supported using the %s engine.\n" - "Enclose your pattern in // if this desired.", Config->RegexEngine.c_str()); + { + source.Reply(" "); + source.Reply(_("Regex matches are also supported using the %s engine.\n" + "Enclose your pattern in // if this is desired."), Config->RegexEngine.c_str()); + } + return true; } }; @@ -203,10 +207,14 @@ class CommandOSUserList : public Command "the format nick!user@host). If \002channel\002 is given, lists only users\n" "that are on the given channel. If INVISIBLE is specified, only users\n" "with the +i flag will be listed.")); + if (!Config->RegexEngine.empty()) - source.Reply(" \n" - "Regex matches are also supported using the %s engine.\n" - "Enclose your pattern in // if this desired.", Config->RegexEngine.c_str()); + { + source.Reply(" "); + source.Reply(_("Regex matches are also supported using the %s engine.\n" + "Enclose your pattern in // if this is desired."), Config->RegexEngine.c_str()); + } + return true; } }; diff --git a/modules/commands/os_logsearch.cpp b/modules/commands/os_logsearch.cpp index 52f060ed0..6eec4ba74 100644 --- a/modules/commands/os_logsearch.cpp +++ b/modules/commands/os_logsearch.cpp @@ -54,7 +54,7 @@ class CommandOSLogSearch : public Command } catch (const ConvertException &) { - source.Reply(_("Invalid duration %s, using %d days"), dur.c_str(), days); + source.Reply(_("Invalid duration %s, using %d days."), dur.c_str(), days); } } break; @@ -70,12 +70,12 @@ class CommandOSLogSearch : public Command } catch (const ConvertException &) { - source.Reply(_("Invalid limit %s, using %d"), dur.c_str(), replies); + source.Reply(_("Invalid limit %s, using %d."), dur.c_str(), replies); } } break; default: - source.Reply(_("Unknown parameter %s"), params[i].c_str()); + source.Reply(_("Unknown parameter: %s"), params[i].c_str()); } } @@ -110,18 +110,18 @@ class CommandOSLogSearch : public Command unsigned found = matches.size(); if (!found) { - source.Reply(_("No matches for \2%s\2 found."), search_string.c_str()); + source.Reply(_("No matches for \002%s\002 found."), search_string.c_str()); return; } while (matches.size() > static_cast<unsigned>(replies)) matches.pop_front(); - source.Reply(_("Matches for \2%s\2:"), search_string.c_str()); + source.Reply(_("Matches for \002%s\002:"), search_string.c_str()); unsigned count = 0; for (std::list<Anope::string>::iterator it = matches.begin(), it_end = matches.end(); it != it_end; ++it) source.Reply("#%d: %s", ++count, it->c_str()); - source.Reply(_("Showed %d/%d matches for \2%s\2"), matches.size(), found, search_string.c_str()); + source.Reply(_("Showed %d/%d matches for \002%s\002."), matches.size(), found, search_string.c_str()); } bool OnHelp(CommandSource &source, const Anope::string &subcommand) anope_override @@ -134,11 +134,11 @@ class CommandOSLogSearch : public Command "and the number of replies to limit to. By default this\n" "command searches one week of logs, and limits replies\n" "to 50.\n" - "\n" + " \n" "For example:\n" - " \2LOGSEARCH +21d +500l Anope\2\n" + " \002LOGSEARCH +21d +500l Anope\002\n" " Searches the last 21 days worth of logs for messages\n" - " containing Anope and lists the most recent 500 of them.\n")); + " containing Anope and lists the most recent 500 of them.")); return true; } }; diff --git a/modules/commands/os_mode.cpp b/modules/commands/os_mode.cpp index 36ece9b23..cc779bed2 100644 --- a/modules/commands/os_mode.cpp +++ b/modules/commands/os_mode.cpp @@ -97,7 +97,7 @@ class CommandOSMode : public Command { this->SendSyntax(source); source.Reply(" "); - source.Reply(_("Allows Services operators to change modes for any channel.\n" + source.Reply(_("Allows Services Operators to change modes for any channel.\n" "Parameters are the same as for the standard /MODE command.")); return true; } @@ -135,7 +135,7 @@ class CommandOSUMode : public Command { this->SendSyntax(source); source.Reply(" "); - source.Reply(_("Allows Services operators to change modes for any user.\n" + source.Reply(_("Allows Services Operators to change modes for any user.\n" "Parameters are the same as for the standard /MODE command.")); return true; } diff --git a/modules/commands/os_modinfo.cpp b/modules/commands/os_modinfo.cpp index 09e66a2be..014418e6e 100644 --- a/modules/commands/os_modinfo.cpp +++ b/modules/commands/os_modinfo.cpp @@ -56,7 +56,7 @@ class CommandOSModInfo : public Command } } else - source.Reply(_("No information about module \002%s\002 is available"), file.c_str()); + source.Reply(_("No information about module \002%s\002 is available."), file.c_str()); return; } @@ -65,7 +65,7 @@ class CommandOSModInfo : public Command { this->SendSyntax(source); source.Reply(" "); - source.Reply(_("This command lists information about the specified loaded module")); + source.Reply(_("This command lists information about the specified loaded module.")); return true; } }; @@ -158,7 +158,7 @@ class CommandOSModList : public Command Module *protocol = ModuleManager::FindFirstOf(PROTOCOL); - source.Reply(_("Current Module list:")); + source.Reply(_("Current module list:")); for (std::list<Module *>::iterator it = ModuleManager::Modules.begin(), it_end = ModuleManager::Modules.end(); it != it_end; ++it) { @@ -215,9 +215,9 @@ class CommandOSModList : public Command } } if (!count) - source.Reply(_("No modules currently loaded")); + source.Reply(_("No modules currently loaded.")); else - source.Reply(_("%d Modules loaded."), count); + source.Reply(_("%d modules loaded."), count); return; } diff --git a/modules/commands/os_module.cpp b/modules/commands/os_module.cpp index eaacb5054..aa9673019 100644 --- a/modules/commands/os_module.cpp +++ b/modules/commands/os_module.cpp @@ -30,12 +30,12 @@ class CommandOSModLoad : public Command if (status == MOD_ERR_OK) { Log(LOG_ADMIN, source, this) << "to load module " << mname; - source.Reply(_("Module \002%s\002 loaded"), mname.c_str()); + source.Reply(_("Module \002%s\002 loaded."), mname.c_str()); } else if (status == MOD_ERR_EXISTS) source.Reply(_("Module \002%s\002 is already loaded."), mname.c_str()); else - source.Reply(_("Unable to load module \002%s\002"), mname.c_str()); + source.Reply(_("Unable to load module \002%s\002."), mname.c_str()); return; } @@ -44,7 +44,7 @@ class CommandOSModLoad : public Command { this->SendSyntax(source); source.Reply(" "); - source.Reply(_("This command loads the module named FileName from the modules\n" + source.Reply(_("This command loads the module named \037modname\037 from the modules\n" "directory.")); return true; } @@ -72,14 +72,14 @@ class CommandOSModReLoad : public Command if (!m->handle || m->GetPermanent()) { - source.Reply(_("Unable to remove module \002%s\002"), m->name.c_str()); + source.Reply(_("Unable to remove module \002%s\002."), m->name.c_str()); return; } Module *protocol = ModuleManager::FindFirstOf(PROTOCOL); if (m->type == PROTOCOL && m != protocol) { - source.Reply(_("You may not reload this module directly, instead reload %s."), protocol ? protocol->name.c_str() : "(unknown)"); + source.Reply(_("You can not reload this module directly, instead reload %s."), protocol ? protocol->name.c_str() : "(unknown)"); return; } @@ -89,7 +89,7 @@ class CommandOSModReLoad : public Command if (status != MOD_ERR_OK) { - source.Reply(_("Unable to remove module \002%s\002"), mname.c_str()); + source.Reply(_("Unable to remove module \002%s\002."), mname.c_str()); return; } @@ -97,7 +97,7 @@ class CommandOSModReLoad : public Command if (status == MOD_ERR_OK) { Log(LOG_ADMIN, source, this) << "to reload module " << mname; - source.Reply(_("Module \002%s\002 reloaded"), mname.c_str()); + source.Reply(_("Module \002%s\002 reloaded."), mname.c_str()); } else { @@ -107,7 +107,7 @@ class CommandOSModReLoad : public Command Anope::Quitting = true; } else - source.Reply(_("Unable to load module \002%s\002"), mname.c_str()); + source.Reply(_("Unable to load module \002%s\002."), mname.c_str()); } return; @@ -117,7 +117,7 @@ class CommandOSModReLoad : public Command { this->SendSyntax(source); source.Reply(" "); - source.Reply(_("This command reloads the module named FileName.")); + source.Reply(_("This command reloads the module named \037modname\037.")); return true; } }; @@ -144,7 +144,7 @@ class CommandOSModUnLoad : public Command if (!m->handle || m->GetPermanent() || m->type == PROTOCOL) { - source.Reply(_("Unable to remove module \002%s\002"), m->name.c_str()); + source.Reply(_("Unable to remove module \002%s\002."), m->name.c_str()); return; } @@ -155,10 +155,10 @@ class CommandOSModUnLoad : public Command if (status == MOD_ERR_OK) { Log(LOG_ADMIN, source, this) << "to unload module " << mname; - source.Reply(_("Module \002%s\002 unloaded"), mname.c_str()); + source.Reply(_("Module \002%s\002 unloaded."), mname.c_str()); } else - source.Reply(_("Unable to remove module \002%s\002"), mname.c_str()); + source.Reply(_("Unable to remove module \002%s\002."), mname.c_str()); return; } @@ -167,7 +167,7 @@ class CommandOSModUnLoad : public Command { this->SendSyntax(source); source.Reply(" "); - source.Reply(_("This command unloads the module named FileName from the modules\n" + source.Reply(_("This command unloads the module named \037modname\037 from the modules\n" "directory.")); return true; } diff --git a/modules/commands/os_news.cpp b/modules/commands/os_news.cpp index 9ec3a2479..283c302af 100644 --- a/modules/commands/os_news.cpp +++ b/modules/commands/os_news.cpp @@ -137,7 +137,7 @@ class NewsBase : public Command for (unsigned i = 0; i < replies.size(); ++i) source.Reply(replies[i]); - source.Reply(_("End of \2news\2 list.")); + source.Reply(_("End of news list.")); } return; diff --git a/modules/commands/os_noop.cpp b/modules/commands/os_noop.cpp index 92c9db668..91a8dbfd9 100644 --- a/modules/commands/os_noop.cpp +++ b/modules/commands/os_noop.cpp @@ -32,7 +32,7 @@ class CommandOSNOOP : public Command if (s == NULL) source.Reply(_("Server %s does not exist."), server.c_str()); else if (s == Me || s->IsJuped()) - source.Reply(_("You may not NOOP services.")); + source.Reply(_("You can not NOOP Services.")); else if (cmd.equals_ci("SET")) { /* Remove the O:lines */ diff --git a/modules/commands/os_oline.cpp b/modules/commands/os_oline.cpp index e067a07a6..ba6d3f54c 100644 --- a/modules/commands/os_oline.cpp +++ b/modules/commands/os_oline.cpp @@ -42,7 +42,7 @@ class CommandOSOLine : public Command else if (u2 && flag[0] == '-') { IRCD->SendSVSO(source.service, nick, flag); - source.Reply(_("Operflags \002%s\002 have been added for \002%s\002."), flag.c_str(), nick.c_str()); + source.Reply(_("Operflags \002%s\002 have been removed from \002%s\002."), flag.c_str(), nick.c_str()); Log(LOG_ADMIN, source, this) << "for " << nick; } else @@ -55,7 +55,7 @@ class CommandOSOLine : public Command { this->SendSyntax(source); source.Reply(" "); - source.Reply(_("Allows Services Opers to give Operflags to any user.\n" + source.Reply(_("Allows Services Operators to give Operflags to any user.\n" "Flags have to be prefixed with a \"+\" or a \"-\". To\n" "remove all flags simply type a \"-\" instead of any flags.")); return true; diff --git a/modules/commands/os_oper.cpp b/modules/commands/os_oper.cpp index b3a6ac456..91efcf575 100644 --- a/modules/commands/os_oper.cpp +++ b/modules/commands/os_oper.cpp @@ -53,10 +53,10 @@ class CommandOSOper : public Command public: CommandOSOper(Module *creator) : Command(creator, "operserv/oper", 1, 3) { - this->SetDesc(_("View and change services operators")); + this->SetDesc(_("View and change Services Operators")); this->SetSyntax(_("ADD \037oper\037 \037type\037")); - this->SetSyntax(_("DEL [\037oper\037]")); - this->SetSyntax(_("INFO [\037type\037]")); + this->SetSyntax(_("DEL \037oper\037")); + this->SetSyntax(_("INFO \037type\037")); this->SetSyntax(_("LIST")); } @@ -73,18 +73,18 @@ class CommandOSOper : public Command if (na == NULL) source.Reply(NICK_X_NOT_REGISTERED, oper.c_str()); else if (na->nc->o) - source.Reply(_("Nick \2%s\2 is already an operator."), na->nick.c_str()); + source.Reply(_("Nick \002%s\002 is already an operator."), na->nick.c_str()); else { OperType *ot = OperType::Find(otype); if (ot == NULL) - source.Reply(_("Oper type \2%s\2 has not been configured."), otype.c_str()); + source.Reply(_("Oper type \002%s\002 has not been configured."), otype.c_str()); else { na->nc->o = new MyOper(na->nc->display, ot); Log(LOG_ADMIN, source, this) << "ADD " << na->nick << " as type " << ot->GetName(); - source.Reply("%s (%s) added to the \2%s\2 list.", na->nick.c_str(), na->nc->display.c_str(), ot->GetName().c_str()); + source.Reply("%s (%s) added to the \002%s\002 list.", na->nick.c_str(), na->nc->display.c_str(), ot->GetName().c_str()); } } } @@ -96,7 +96,7 @@ class CommandOSOper : public Command if (na == NULL) source.Reply(NICK_X_NOT_REGISTERED, oper.c_str()); else if (!na->nc || !na->nc->o) - source.Reply(_("Nick \2%s\2 is not a services operator."), oper.c_str()); + source.Reply(_("Nick \002%s\002 is not a Services Operator."), oper.c_str()); else { delete na->nc->o; @@ -133,14 +133,14 @@ class CommandOSOper : public Command fulltype += " " + params[2]; OperType *ot = OperType::Find(fulltype); if (ot == NULL) - source.Reply(_("Oper type \2%s\2 has not been configured."), fulltype.c_str()); + source.Reply(_("Oper type \002%s\002 has not been configured."), fulltype.c_str()); else { if (ot->GetCommands().empty()) - source.Reply(_("Opertype \2%s\2 has no allowed commands."), ot->GetName().c_str()); + source.Reply(_("Opertype \002%s\002 has no allowed commands."), ot->GetName().c_str()); else { - source.Reply(_("Available commands for \2%s\2:"), ot->GetName().c_str()); + source.Reply(_("Available commands for \002%s\002:"), ot->GetName().c_str()); Anope::string buf; std::list<Anope::string> cmds = ot->GetCommands(); for (std::list<Anope::string>::const_iterator it = cmds.begin(), it_end = cmds.end(); it != it_end; ++it) @@ -159,10 +159,10 @@ class CommandOSOper : public Command } } if (ot->GetPrivs().empty()) - source.Reply(_("Opertype \2%s\2 has no allowed privileges."), ot->GetName().c_str()); + source.Reply(_("Opertype \002%s\002 has no allowed privileges."), ot->GetName().c_str()); else { - source.Reply(_("Available privileges for \2%s\2:"), ot->GetName().c_str()); + source.Reply(_("Available privileges for \002%s\002:"), ot->GetName().c_str()); Anope::string buf; std::list<Anope::string> privs = ot->GetPrivs(); for (std::list<Anope::string>::const_iterator it = privs.begin(), it_end = privs.end(); it != it_end; ++it) @@ -181,7 +181,7 @@ class CommandOSOper : public Command } } if (!ot->modes.empty()) - source.Reply(_("Opertype \2%s\2 receives modes \2%s\2 once identifying."), ot->GetName().c_str(), ot->modes.c_str()); + source.Reply(_("Opertype \002%s\002 receives modes \002%s\002 once identified."), ot->GetName().c_str(), ot->modes.c_str()); } } else @@ -194,7 +194,7 @@ class CommandOSOper : public Command { this->SendSyntax(source); source.Reply(" "); - source.Reply(_("Allows you to change and view services operators.\n" + source.Reply(_("Allows you to change and view Services Operators.\n" "Note that operators removed by this command but are still set in\n" "the configuration file are not permanently affected by this.")); return true; diff --git a/modules/commands/os_reload.cpp b/modules/commands/os_reload.cpp index 0c979c57f..0370bcd2e 100644 --- a/modules/commands/os_reload.cpp +++ b/modules/commands/os_reload.cpp @@ -49,7 +49,7 @@ class CommandOSReload : public Command source.Reply(" "); source.Reply(_("Causes Services to reload the configuration file. Note that\n" "some directives still need the restart of the Services to\n" - "take effect (such as Services' nicknames, activation of the \n" + "take effect (such as Services' nicknames, activation of the\n" "session limitation, etc.)")); return true; } diff --git a/modules/commands/os_session.cpp b/modules/commands/os_session.cpp index f0e3df783..5a4cf279d 100644 --- a/modules/commands/os_session.cpp +++ b/modules/commands/os_session.cpp @@ -250,8 +250,8 @@ class CommandOSSession : public Command source.Reply(" "); source.Reply(_("Allows Services Operators to view the session list.\n" "\002SESSION LIST\002 lists hosts with at least \037threshold\037 sessions.\n" - "The threshold must be a number greater than 1. This is to \n" - "prevent accidental listing of the large number of single \n" + "The threshold must be a number greater than 1. This is to\n" + "prevent accidental listing of the large number of single\n" "session hosts.\n" "\002SESSION VIEW\002 displays detailed information about a specific\n" "host - including the current session count and session limit.\n" @@ -568,7 +568,7 @@ class CommandOSException : public Command this->SendSyntax(source); source.Reply(" "); source.Reply(_("Allows Services Operators to manipulate the list of hosts that\n" - "have specific session limits - allowing certain machines, \n" + "have specific session limits - allowing certain machines,\n" "such as shell servers, to carry more than the default number\n" "of clients at a time. Once a host reaches its session limit,\n" "all clients attempting to connect from that host will be\n" @@ -593,7 +593,7 @@ class CommandOSException : public Command "sessions if the optional mask is given, the list is limited\n" "to those sessions matching the mask. The difference is that\n" "\002EXCEPTION VIEW\002 is more verbose, displaying the name of the\n" - "person who added the exception, its session limit, reason, \n" + "person who added the exception, its session limit, reason,\n" "host mask and the expiry date and time.\n" " \n" "Note that a connecting client will \"use\" the first exception\n" @@ -664,7 +664,7 @@ class OSSession : public Module XLine *x = new XLine(akillmask, Config->OperServ, Anope::CurTime + Config->SessionAutoKillExpiry, "Session limit exceeded", XLineManager::GenerateUID()); akills->AddXLine(x); akills->Send(NULL, x); - Log(OperServ, "akill/session") << "Added a temporary AKILL for \2" << akillmask << "\2 due to excessive connections"; + Log(OperServ, "akill/session") << "Added a temporary AKILL for \002" << akillmask << "\002 due to excessive connections"; } else { diff --git a/modules/commands/os_set.cpp b/modules/commands/os_set.cpp index acfe5ea61..90d4f70d9 100644 --- a/modules/commands/os_set.cpp +++ b/modules/commands/os_set.cpp @@ -55,7 +55,7 @@ class CommandOSSet : public Command source.Reply(_("Services are now in \002read-write\002 mode.")); } else - source.Reply(_("Setting for READONLY must be \002on\002 or \002off\002.")); + source.Reply(_("Setting for READONLY must be \002ON\002 or \002OFF\002.")); return; } @@ -79,21 +79,21 @@ class CommandOSSet : public Command * Rob **/ if (!Config->SuperAdmin) - source.Reply(_("Superadmin can not be set because it is not enabled in the configuration")); + source.Reply(_("SuperAdmin can not be set because it is not enabled in the configuration.")); else if (setting.equals_ci("ON")) { source.GetUser()->super_admin = true; - source.Reply(_("You are now a SuperAdmin")); + source.Reply(_("You are now a SuperAdmin.")); Log(LOG_ADMIN, source, this) << "SUPERADMIN ON"; } else if (setting.equals_ci("OFF")) { source.GetUser()->super_admin = false; - source.Reply(_("You are no longer a SuperAdmin")); + source.Reply(_("You are no longer a SuperAdmin.")); Log(LOG_ADMIN, source, this) << "SUPERADMIN OFF"; } else - source.Reply(_("Setting for SuperAdmin must be \002on\002 or \002off\002.")); + source.Reply(_("Setting for SuperAdmin must be \002ON\002 or \002OFF\002.")); return; } @@ -112,13 +112,13 @@ class CommandOSSet : public Command { Anope::Debug = 1; Log(LOG_ADMIN, source, this) << "DEBUG ON"; - source.Reply(_("Services are now in debug mode.")); + source.Reply(_("Services are now in \002debug\002 mode.")); } else if (setting.equals_ci("OFF") || setting == "0") { Log(LOG_ADMIN, source, this) << "DEBUG OFF"; Anope::Debug = 0; - source.Reply(_("Services are now in non-debug mode.")); + source.Reply(_("Services are now in \002non-debug\002 mode.")); } else { @@ -126,7 +126,7 @@ class CommandOSSet : public Command { Anope::Debug = convertTo<int>(setting); Log(LOG_ADMIN, source, this) << "DEBUG " << Anope::Debug; - source.Reply(_("Services are now in debug mode (level %d)."), Anope::Debug); + source.Reply(_("Services are now in \002debug\002 mode (level %d)."), Anope::Debug); return; } catch (const ConvertException &) { } @@ -160,7 +160,7 @@ class CommandOSSet : public Command source.Reply(_("Services are now in \002expire\002 mode.")); } else - source.Reply(_("Setting for NOEXPIRE must be \002on\002 or \002off\002.")); + source.Reply(_("Setting for NOEXPIRE must be \002ON\002 or \002OFF\002.")); return; } @@ -202,7 +202,7 @@ class CommandOSSet : public Command " READONLY Set read-only or read-write mode\n" " DEBUG Activate or deactivate debug mode\n" " NOEXPIRE Activate or deactivate no expire mode\n" - " SUPERADMIN Activate or deactivate super-admin mode\n" + " SUPERADMIN Activate or deactivate SuperAdmin mode\n" " LIST List the options")); } else if (subcommand.equals_ci("LIST")) diff --git a/modules/commands/os_stats.cpp b/modules/commands/os_stats.cpp index 9026eb2a3..779b8bbf5 100644 --- a/modules/commands/os_stats.cpp +++ b/modules/commands/os_stats.cpp @@ -133,7 +133,7 @@ class CommandOSStats : public Command time_t uptime = Anope::CurTime - Anope::StartTime; source.Reply(_("Current users: \002%d\002 (\002%d\002 ops)"), UserListByNick.size(), OperCount); source.Reply(_("Maximum users: \002%d\002 (%s)"), MaxUserCount, Anope::strftime(MaxUserTime).c_str()); - source.Reply(_("Services up %s"), Anope::Duration(uptime).c_str()); + source.Reply(_("Services up %s."), Anope::Duration(uptime).c_str()); return; } @@ -197,7 +197,7 @@ class CommandOSStats : public Command akills("XLineManager", "xlinemanager/sgline"), snlines("XLineManager", "xlinemanager/snline"), sqlines("XLineManager", "xlinemanager/sqline") { this->SetDesc(_("Show status of Services and network")); - this->SetSyntax(_("[AKILL | ALL | HASH | RESET | UPLINK]")); + this->SetSyntax(_("[AKILL | HASH | UPLINK | UPTIME | ALL | RESET]")); } void Execute(CommandSource &source, const std::vector<Anope::string> ¶ms) anope_override @@ -210,17 +210,17 @@ class CommandOSStats : public Command if (extra.equals_ci("ALL") || extra.equals_ci("AKILL")) this->DoStatsAkill(source); - if (extra.empty() || extra.equals_ci("ALL") || extra.equals_ci("UPTIME")) - this->DoStatsUptime(source); + if (extra.equals_ci("ALL") || extra.equals_ci("HASH")) + this->DoStatsHash(source); if (extra.equals_ci("ALL") || extra.equals_ci("UPLINK")) this->DoStatsUplink(source); - if (extra.equals_ci("ALL") || extra.equals_ci("HASH")) - this->DoStatsHash(source); + if (extra.empty() || extra.equals_ci("ALL") || extra.equals_ci("UPTIME")) + this->DoStatsUptime(source); - if (!extra.empty() && !extra.equals_ci("ALL") && !extra.equals_ci("AKILL") && !extra.equals_ci("UPLINK") && !extra.equals_ci("HASH")) - source.Reply(_("Unknown STATS option \002%s\002."), extra.c_str()); + if (!extra.empty() && !extra.equals_ci("ALL") && !extra.equals_ci("AKILL") && !extra.equals_ci("HASH") && !extra.equals_ci("UPLINK") && !extra.equals_ci("UPTIME")) + source.Reply(_("Unknown STATS option: \002%s\002"), extra.c_str()); } bool OnHelp(CommandSource &source, const Anope::string &subcommand) anope_override diff --git a/modules/commands/os_svs.cpp b/modules/commands/os_svs.cpp index 91dc15657..0a0ae9638 100644 --- a/modules/commands/os_svs.cpp +++ b/modules/commands/os_svs.cpp @@ -66,7 +66,7 @@ class CommandOSSVSNick : public Command { this->SendSyntax(source); source.Reply(" "); - source.Reply(_("Forcefully changes a user's nickname from nick to newnick.")); + source.Reply(_("Forcefully changes a user's nickname from \037nick\037 to \037newnick\037.")); return true; } }; @@ -84,7 +84,7 @@ class CommandOSSVSJoin : public Command { if (!IRCD->CanSVSJoin) { - source.Reply(_("Your IRCd does not support SVSJOIN")); + source.Reply(_("Your IRCd does not support SVSJOIN.")); return; } @@ -97,12 +97,12 @@ class CommandOSSVSJoin : public Command else if (!IRCD->IsChannelValid(params[1])) source.Reply(CHAN_X_INVALID, params[1].c_str()); else if (c && c->FindUser(target)) - source.Reply(_("\2%s\2 is already in \2%s\2."), target->nick.c_str(), c->name.c_str()); + source.Reply(_("\002%s\002 is already in \002%s\002."), target->nick.c_str(), c->name.c_str()); else { IRCD->SendSVSJoin(OperServ, target, params[1], ""); Log(LOG_ADMIN, source, this) << "to force " << target->nick << " to join " << params[1]; - source.Reply(_("\2%s\2 has been joined to \2%s\2."), target->nick.c_str(), params[1].c_str()); + source.Reply(_("\002%s\002 has been joined to \002%s\002."), target->nick.c_str(), params[1].c_str()); } } @@ -128,7 +128,7 @@ class CommandOSSVSPart : public Command { if (!IRCD->CanSVSJoin) { - source.Reply(_("Your IRCd does not support SVSPART")); + source.Reply(_("Your IRCd does not support SVSPART.")); return; } @@ -141,12 +141,12 @@ class CommandOSSVSPart : public Command else if (!c) source.Reply(CHAN_X_NOT_IN_USE, params[1].c_str()); else if (!c->FindUser(target)) - source.Reply(_("\2%s\2 is not in \2%s\2."), target->nick.c_str(), c->name.c_str()); + source.Reply(_("\002%s\002 is not in \002%s\002."), target->nick.c_str(), c->name.c_str()); else { IRCD->SendSVSPart(OperServ, target, params[1], ""); Log(LOG_ADMIN, source, this) << "to force " << target->nick << " to part " << c->name; - source.Reply(_("\2%s\2 has been parted from \2%s\2."), target->nick.c_str(), c->name.c_str()); + source.Reply(_("\002%s\002 has been parted from \002%s\002."), target->nick.c_str(), c->name.c_str()); } } diff --git a/modules/commands/os_sxline.cpp b/modules/commands/os_sxline.cpp index cd617181a..75a31c7df 100644 --- a/modules/commands/os_sxline.cpp +++ b/modules/commands/os_sxline.cpp @@ -252,7 +252,7 @@ class CommandOSSNLine : public CommandOSSXLineBase { if (!this->xlm() || !IRCD->CanSNLine) { - source.Reply(_("Your IRCd does not support SNLINE")); + source.Reply(_("Your IRCd does not support SNLINE.")); return; } @@ -321,7 +321,7 @@ class CommandOSSNLine : public CommandOSSXLineBase ServiceReference<RegexProvider> provider("Regex", Config->RegexEngine); if (!provider) { - source.Reply(_("Unable to find regex engine %s"), Config->RegexEngine.c_str()); + source.Reply(_("Unable to find regex engine %s."), Config->RegexEngine.c_str()); return; } @@ -417,44 +417,46 @@ class CommandOSSNLine : public CommandOSSXLineBase { this->SendSyntax(source); source.Reply(" "); - source.Reply(_("Allows Services operators to manipulate the SNLINE list. If\n" - "a user with a realname matching an SNLINE mask attempts to \n" + source.Reply(_("Allows Services Operators to manipulate the SNLINE list. If\n" + "a user with a realname matching an SNLINE mask attempts to\n" "connect, Services will not allow it to pursue his IRC\n" - "session.\n")); + "session.")); source.Reply(_(" \n" "\002SNLINE ADD\002 adds the given realname mask to the SNLINE\n" "list for the given reason (which \002must\002 be given).\n" - "\037expiry\037 is specified as an integer followed by one of \037d\037 \n" - "(days), \037h\037 (hours), or \037m\037 (minutes). Combinations (such as \n" - "\0371h30m\037) are not permitted. If a unit specifier is not \n" - "included, the default is days (so \037+30\037 by itself means 30 \n" + "\037expiry\037 is specified as an integer followed by one of \037d\037\n" + "(days), \037h\037 (hours), or \037m\037 (minutes). Combinations (such as\n" + "\0371h30m\037) are not permitted. If a unit specifier is not\n" + "included, the default is days (so \037+30\037 by itself means 30\n" "days). To add an SNLINE which does not expire, use \037+0\037. If the\n" "realname mask to be added starts with a \037+\037, an expiry time must\n" "be given, even if it is the same as the default. The\n" "current SNLINE default expiry time can be found with the\n" "\002STATS AKILL\002 command.\n" "Note: because the realname mask may contain spaces, the\n" - "separator between it and the reason is a colon.\n")); + "separator between it and the reason is a colon.")); if (!Config->RegexEngine.empty()) - source.Reply(" \n" - "Regex matches are also supported using the %s engine.\n" - "Enclose your mask in // if this desired.", Config->RegexEngine.c_str()); + { + source.Reply(" "); + source.Reply(_("Regex matches are also supported using the %s engine.\n" + "Enclose your mask in // if this is desired."), Config->RegexEngine.c_str()); + } source.Reply(_(" \n" "The \002SNLINE DEL\002 command removes the given mask from the\n" - "SNLINE list if it is present. If a list of entry numbers is \n" - "given, those entries are deleted. (See the example for LIST \n" + "SNLINE list if it is present. If a list of entry numbers is\n" + "given, those entries are deleted. (See the example for LIST\n" "below.)\n" " \n" - "The \002SNLINE LIST\002 command displays the SNLINE list. \n" + "The \002SNLINE LIST\002 command displays the SNLINE list.\n" "If a wildcard mask is given, only those entries matching the\n" "mask are displayed. If a list of entry numbers is given,\n" "only those entries are shown; for example:\n" " \002SNLINE LIST 2-5,7-9\002\n" - " Lists SNLINE entries numbered 2 through 5 and 7 \n" + " Lists SNLINE entries numbered 2 through 5 and 7\n" " through 9.\n" " \n" - "\002SNLINE VIEW\002 is a more verbose version of \002SNLINE LIST\002, and \n" - "will show who added an SNLINE, the date it was added, and when \n" + "\002SNLINE VIEW\002 is a more verbose version of \002SNLINE LIST\002, and\n" + "will show who added an SNLINE, the date it was added, and when\n" "it expires, as well as the realname mask and reason.\n" " \n" "\002SNLINE CLEAR\002 clears all entries of the SNLINE list.")); @@ -473,7 +475,7 @@ class CommandOSSQLine : public CommandOSSXLineBase { if (!this->xlm() || !IRCD->CanSQLine) { - source.Reply(_("Your IRCd does not support SQLINE")); + source.Reply(_("Your IRCd does not support SQLINE.")); return; } @@ -531,7 +533,7 @@ class CommandOSSQLine : public CommandOSSXLineBase ServiceReference<RegexProvider> provider("Regex", Config->RegexEngine); if (!provider) { - source.Reply(_("Unable to find regex engine %s"), Config->RegexEngine.c_str()); + source.Reply(_("Unable to find regex engine %s."), Config->RegexEngine.c_str()); return; } @@ -646,44 +648,46 @@ class CommandOSSQLine : public CommandOSSXLineBase { this->SendSyntax(source); source.Reply(" "); - source.Reply(_("Allows Services operators to manipulate the SQLINE list. If\n" - "a user with a nick matching an SQLINE mask attempts to \n" + source.Reply(_("Allows Services Operators to manipulate the SQLINE list. If\n" + "a user with a nick matching an SQLINE mask attempts to\n" "connect, Services will not allow it to pursue his IRC\n" "session.\n" - "If the first character of the mask is #, services will \n" + "If the first character of the mask is #, services will\n" "prevent the use of matching channels.")); source.Reply(_(" \n" "\002SQLINE ADD\002 adds the given (nick's) mask to the SQLINE\n" "list for the given reason (which \002must\002 be given).\n" - "\037expiry\037 is specified as an integer followed by one of \037d\037 \n" - "(days), \037h\037 (hours), or \037m\037 (minutes). Combinations (such as \n" - "\0371h30m\037) are not permitted. If a unit specifier is not \n" - "included, the default is days (so \037+30\037 by itself means 30 \n" - "days). To add an SQLINE which does not expire, use \037+0\037. \n" - "If the mask to be added starts with a \037+\037, an expiry time \n" + "\037expiry\037 is specified as an integer followed by one of \037d\037\n" + "(days), \037h\037 (hours), or \037m\037 (minutes). Combinations (such as\n" + "\0371h30m\037) are not permitted. If a unit specifier is not\n" + "included, the default is days (so \037+30\037 by itself means 30\n" + "days). To add an SQLINE which does not expire, use \037+0\037.\n" + "If the mask to be added starts with a \037+\037, an expiry time\n" "must be given, even if it is the same as the default. The\n" "current SQLINE default expiry time can be found with the\n" - "\002STATS AKILL\002 command.\n")); + "\002STATS AKILL\002 command.")); if (!Config->RegexEngine.empty()) - source.Reply(" \n" - "Regex matches are also supported using the %s engine.\n" - "Enclose your mask in // if this desired.", Config->RegexEngine.c_str()); + { + source.Reply(" "); + source.Reply(_("Regex matches are also supported using the %s engine.\n" + "Enclose your mask in // if this is desired."), Config->RegexEngine.c_str()); + } source.Reply(_(" \n" "The \002SQLINE DEL\002 command removes the given mask from the\n" - "SQLINE list if it is present. If a list of entry numbers is \n" - "given, those entries are deleted. (See the example for LIST \n" + "SQLINE list if it is present. If a list of entry numbers is\n" + "given, those entries are deleted. (See the example for LIST\n" "below.)\n" " \n" - "The \002SQLINE LIST\002 command displays the SQLINE list. \n" + "The \002SQLINE LIST\002 command displays the SQLINE list.\n" "If a wildcard mask is given, only those entries matching the\n" "mask are displayed. If a list of entry numbers is given,\n" "only those entries are shown; for example:\n" " \002SQLINE LIST 2-5,7-9\002\n" - " Lists SQLINE entries numbered 2 through 5 and 7 \n" + " Lists SQLINE entries numbered 2 through 5 and 7\n" " through 9.\n" " \n" - "\002SQLINE VIEW\002 is a more verbose version of \002SQLINE LIST\002, and \n" - "will show who added an SQLINE, the date it was added, and when \n" + "\002SQLINE VIEW\002 is a more verbose version of \002SQLINE LIST\002, and\n" + "will show who added an SQLINE, the date it was added, and when\n" "it expires, as well as the mask and reason.\n" " \n" "\002SQLINE CLEAR\002 clears all entries of the SQLINE list.")); diff --git a/modules/protocol/inspircd12.cpp b/modules/protocol/inspircd12.cpp index b8c4d88d8..d00284640 100644 --- a/modules/protocol/inspircd12.cpp +++ b/modules/protocol/inspircd12.cpp @@ -936,7 +936,7 @@ struct IRCDMessageMetadata : IRCDMessage * their server isn't syncing) and then we receive this.. so tell them about it. */ if (u->server->IsSynced() && NickServ) - u->SendMessage(NickServ, _("You have been logged in as \2%s\2."), nc->display.c_str()); + u->SendMessage(NickServ, _("You have been logged in as \002%s\002."), nc->display.c_str()); } } diff --git a/modules/pseudoclients/botserv.cpp b/modules/pseudoclients/botserv.cpp index 40b0d502c..fd7f0380e 100644 --- a/modules/pseudoclients/botserv.cpp +++ b/modules/pseudoclients/botserv.cpp @@ -214,8 +214,8 @@ class BotServCore : public Module if (source.c) { - source.Reply(_("\2%s\2 allows you to execute \"fantasy\" commands in the channel.\n" - "Fantasy commands are tied to existing commands, usually on \2%s\2,\n" + source.Reply(_("\002%s\002 allows you to execute \"fantasy\" commands in the channel.\n" + "Fantasy commands are tied to existing commands, usually on \002%s\002,\n" "and provide a more convenient way to execute commands. Commands that\n" "require a channel as a parameter will automatically have that parameter\n" "given.\n"), source.service->nick.c_str(), Config->ChanServ.c_str()); diff --git a/modules/pseudoclients/operserv.cpp b/modules/pseudoclients/operserv.cpp index 7596ee9d6..10908ef03 100644 --- a/modules/pseudoclients/operserv.cpp +++ b/modules/pseudoclients/operserv.cpp @@ -25,7 +25,7 @@ class SGLineManager : public XLineManager void OnExpire(const XLine *x) anope_override { - Log(OperServ, "expire/akill") << "AKILL on \2" << x->mask << "\2 has expired"; + Log(OperServ, "expire/akill") << "AKILL on \002" << x->mask << "\002 has expired"; } void Send(User *u, XLine *x) anope_override @@ -101,7 +101,7 @@ class SQLineManager : public XLineManager void OnExpire(const XLine *x) anope_override { - Log(OperServ, "expire/sqline") << "SQLINE on \2" << x->mask << "\2 has expired"; + Log(OperServ, "expire/sqline") << "SQLINE on \002" << x->mask << "\002 has expired"; } void Send(User *u, XLine *x) anope_override @@ -142,7 +142,7 @@ class SNLineManager : public XLineManager void OnExpire(const XLine *x) anope_override { - Log(OperServ, "expire/snline") << "SNLINE on \2" << x->mask << "\2 has expired"; + Log(OperServ, "expire/snline") << "SNLINE on \002" << x->mask << "\002 has expired"; } void Send(User *u, XLine *x) anope_override |