Pārlūkot izejas kodu

update strings

tags/v2.5.0-rc1
Shivaram Lingamneni 3 gadus atpakaļ
vecāks
revīzija
7eb21df50a

+ 4
- 3
languages/example/chanserv.lang.json Parādīt failu

@@ -4,14 +4,15 @@
4 4
   "$bDEOP$b removes the given user (or yourself) from a channel admin.": "$bDEOP$b removes the given user (or yourself) from a channel admin.",
5 5
   "$bGET$b queries the current values of a channel's settings": "$bGET$b queries the current values of a channel's settings",
6 6
   "$bHISTORY$b\n'history' lets you control how channel history is stored. Your options are:\n1. 'off'        [no history]\n2. 'ephemeral'  [a limited amount of temporary history, not stored on disk]\n3. 'on'         [history stored in a permanent database, if available]\n4. 'default'    [use the server default]": "$bHISTORY$b\n'history' lets you control how channel history is stored. Your options are:\n1. 'off'        [no history]\n2. 'ephemeral'  [a limited amount of temporary history, not stored on disk]\n3. 'on'         [history stored in a permanent database, if available]\n4. 'default'    [use the server default]",
7
+  "$bHOWTOBAN$b suggests the best available way of banning a user": "$bHOWTOBAN$b suggests the best available way of banning a user",
7 8
   "$bINFO$b displays info about a registered channel.": "$bINFO$b displays info about a registered channel.",
8 9
   "$bLIST$b searches the list of registered channels.": "$bLIST$b searches the list of registered channels.",
9 10
   "$bOP$b makes the given user (or yourself) a channel admin.": "$bOP$b makes the given user (or yourself) a channel admin.",
10 11
   "$bPURGE$b blacklists a channel from the server.": "$bPURGE$b blacklists a channel from the server.",
12
+  "$bQUERY-CUTOFF$b\n'query-cutoff' lets you restrict how much channel history can be retrieved\nby unprivileged users. Your options are:\n1. 'none'               [no restrictions]\n2. 'registration-time'  [users can view history from after their account was\n                         registered, plus a grace period]\n3. 'join-time'          [users can biew history from after they joined the\n                         channel; note that history will be effectively\n                         unavailable to clients that are not always-on]\n4. 'default'            [use the server default]": "$bQUERY-CUTOFF$b\n'query-cutoff' lets you restrict how much channel history can be retrieved\nby unprivileged users. Your options are:\n1. 'none'               [no restrictions]\n2. 'registration-time'  [users can view history from after their account was\n                         registered, plus a grace period]\n3. 'join-time'          [users can biew history from after they joined the\n                         channel; note that history will be effectively\n                         unavailable to clients that are not always-on]\n4. 'default'            [use the server default]",
11 13
   "$bREGISTER$b lets you own a given channel.": "$bREGISTER$b lets you own a given channel.",
12 14
   "$bSET$b modifies a channel's settings": "$bSET$b modifies a channel's settings",
13 15
   "$bTRANSFER$b transfers ownership of a channel to another user.": "$bTRANSFER$b transfers ownership of a channel to another user.",
14
-  "$bUNPURGE$b undoes a previous PURGE command.": "$bUNPURGE$b undoes a previous PURGE command.",
15 16
   "$bUNREGISTER$b deletes a channel registration.": "$bUNREGISTER$b deletes a channel registration.",
16 17
   "ChanServ lets you register and manage channels.": "ChanServ lets you register and manage channels.",
17 18
   "Syntax $bSET #channel <setting> <value>$b\n\nSET modifies a channel's settings. The following settings are available:": "Syntax $bSET #channel <setting> <value>$b\n\nSET modifies a channel's settings. The following settings are available:",
@@ -20,11 +21,11 @@
20 21
   "Syntax: $bCLEAR #channel target$b\n\nCLEAR removes users or settings from a channel. Specifically:\n\n$bCLEAR #channel users$b kicks all users except for you.\n$bCLEAR #channel access$b resets all stored bans, invites, ban exceptions,\nand persistent user-mode grants made with CS AMODE.": "Syntax: $bCLEAR #channel target$b\n\nCLEAR removes users or settings from a channel. Specifically:\n\n$bCLEAR #channel users$b kicks all users except for you.\n$bCLEAR #channel access$b resets all stored bans, invites, ban exceptions,\nand persistent user-mode grants made with CS AMODE.",
21 22
   "Syntax: $bDEOP #channel [nickname]$b\n\nDEOP removes the given nickname, or yourself, the channel admin. You can only use\nthis command if you're the founder of the channel.": "Syntax: $bDEOP #channel [nickname]$b\n\nDEOP removes the given nickname, or yourself, the channel admin. You can only use\nthis command if you're the founder of the channel.",
22 23
   "Syntax: $bGET #channel <setting>$b\n\nGET queries the current values of the channel settings. For more information\non the settings and their possible values, see HELP SET.": "Syntax: $bGET #channel <setting>$b\n\nGET queries the current values of the channel settings. For more information\non the settings and their possible values, see HELP SET.",
24
+  "Syntax: $bHOWTOBAN #channel <nick>\n\nThe best way to ban a user from a channel will depend on how they are\nconnected to the server. $bHOWTOBAN$b suggests a ban command that will\n(ideally) prevent the user from returning to the channel.": "Syntax: $bHOWTOBAN #channel <nick>\n\nThe best way to ban a user from a channel will depend on how they are\nconnected to the server. $bHOWTOBAN$b suggests a ban command that will\n(ideally) prevent the user from returning to the channel.",
23 25
   "Syntax: $bLIST [regex]$b\n\nLIST returns the list of registered channels, which match the given regex.\nIf no regex is provided, all registered channels are returned.": "Syntax: $bLIST [regex]$b\n\nLIST returns the list of registered channels, which match the given regex.\nIf no regex is provided, all registered channels are returned.",
24 26
   "Syntax: $bOP #channel [nickname]$b\n\nOP makes the given nickname, or yourself, a channel admin. You can only use\nthis command if you're the founder of the channel.": "Syntax: $bOP #channel [nickname]$b\n\nOP makes the given nickname, or yourself, a channel admin. You can only use\nthis command if you're the founder of the channel.",
25
-  "Syntax: $bPURGE #channel [reason]$b\n\nPURGE blacklists a channel from the server, making it impossible to join\nor otherwise interact with the channel. If the channel currently has members,\nthey will be kicked from it. PURGE may also be applied preemptively to\nchannels that do not currently have members.": "Syntax: $bPURGE #channel [reason]$b\n\nPURGE blacklists a channel from the server, making it impossible to join\nor otherwise interact with the channel. If the channel currently has members,\nthey will be kicked from it. PURGE may also be applied preemptively to\nchannels that do not currently have members.",
27
+  "Syntax: $bPURGE <ADD | DEL | LIST> #channel [code] [reason]$b\n\nPURGE ADD blacklists a channel from the server, making it impossible to join\nor otherwise interact with the channel. If the channel currently has members,\nthey will be kicked from it. PURGE may also be applied preemptively to\nchannels that do not currently have members. A purge can be undone with\nPURGE DEL. To list purged channels, use PURGE LIST.": "Syntax: $bPURGE <ADD | DEL | LIST> #channel [code] [reason]$b\n\nPURGE ADD blacklists a channel from the server, making it impossible to join\nor otherwise interact with the channel. If the channel currently has members,\nthey will be kicked from it. PURGE may also be applied preemptively to\nchannels that do not currently have members. A purge can be undone with\nPURGE DEL. To list purged channels, use PURGE LIST.",
26 28
   "Syntax: $bREGISTER #channel$b\n\nREGISTER lets you own the given channel. If you rejoin this channel, you'll be\ngiven admin privs on it. Modes set on the channel and the topic will also be\nremembered.": "Syntax: $bREGISTER #channel$b\n\nREGISTER lets you own the given channel. If you rejoin this channel, you'll be\ngiven admin privs on it. Modes set on the channel and the topic will also be\nremembered.",
27 29
   "Syntax: $bTRANSFER [accept] #channel user [code]$b\n\nTRANSFER transfers ownership of a channel from one user to another.\nTo prevent accidental transfers, a verification code is required. For\nexample, $bTRANSFER #channel alice$b displays the required confirmation\ncode, then $bTRANSFER #channel alice 2930242125$b initiates the transfer.\nUnless you are an IRC operator with the correct permissions, alice must\nthen accept the transfer, which she can do with $bTRANSFER accept #channel$b.\nTo cancel a pending transfer, transfer the channel to yourself.": "Syntax: $bTRANSFER [accept] #channel user [code]$b\n\nTRANSFER transfers ownership of a channel from one user to another.\nTo prevent accidental transfers, a verification code is required. For\nexample, $bTRANSFER #channel alice$b displays the required confirmation\ncode, then $bTRANSFER #channel alice 2930242125$b initiates the transfer.\nUnless you are an IRC operator with the correct permissions, alice must\nthen accept the transfer, which she can do with $bTRANSFER accept #channel$b.\nTo cancel a pending transfer, transfer the channel to yourself.",
28
-  "Syntax: $bUNPURGE #channel$b\n\nUNPURGE removes any blacklisting of a channel that was previously\nset using PURGE.": "Syntax: $bUNPURGE #channel$b\n\nUNPURGE removes any blacklisting of a channel that was previously\nset using PURGE.",
29 30
   "Syntax: $bUNREGISTER #channel [code]$b\n\nUNREGISTER deletes a channel registration, allowing someone else to claim it.\nTo prevent accidental unregistrations, a verification code is required;\ninvoking the command without a code will display the necessary code.": "Syntax: $bUNREGISTER #channel [code]$b\n\nUNREGISTER deletes a channel registration, allowing someone else to claim it.\nTo prevent accidental unregistrations, a verification code is required;\ninvoking the command without a code will display the necessary code."
30 31
 }

+ 5
- 4
languages/example/help.lang.json Parādīt failu

@@ -1,6 +1,6 @@
1 1
 {
2 2
   "= Help Topics =\n\nCommands:\n%[1]s\n\nRPL_ISUPPORT Tokens:\n%[2]s\n\nInformation:\n%[3]s": "= Help Topics =\n\nCommands:\n%[1]s\n\nRPL_ISUPPORT Tokens:\n%[2]s\n\nInformation:\n%[3]s",
3
-  "== Channel Modes ==\n\nOragono supports the following channel modes:\n\n  +b  |  Client masks that are banned from the channel (e.g. *!*@127.0.0.1)\n  +e  |  Client masks that are exempted from bans.\n  +I  |  Client masks that are exempted from the invite-only flag.\n  +i  |  Invite-only mode, only invited clients can join the channel.\n  +k  |  Key required when joining the channel.\n  +l  |  Client join limit for the channel.\n  +m  |  Moderated mode, only privileged clients can talk on the channel.\n  +n  |  No-outside-messages mode, only users that are on the channel can send\n      |  messages to it.\n  +R  |  Only registered users can join the channel.\n  +M  |  Only registered or voiced users can speak in the channel.\n  +s  |  Secret mode, channel won't show up in /LIST or whois replies.\n  +t  |  Only channel opers can modify the topic.\n  +E  |  Roleplaying commands are enabled in the channel.\n  +C  |  Clients are blocked from sending CTCP messages in the channel.\n  +u  |  Auditorium mode: JOIN, PART, QUIT, NAMES, and WHO are hidden\n         hidden from unvoiced clients.\n  +U  |  Op-moderated mode: messages from unprivileged clients are sent\n         only to channel operators.\n\n= Prefixes =\n\n  +q (~)  |  Founder channel mode.\n  +a (&)  |  Admin channel mode.\n  +o (@)  |  Operator channel mode.\n  +h (%)  |  Halfop channel mode.\n  +v (+)  |  Voice channel mode.": "== Channel Modes ==\n\nOragono supports the following channel modes:\n\n  +b  |  Client masks that are banned from the channel (e.g. *!*@127.0.0.1)\n  +e  |  Client masks that are exempted from bans.\n  +I  |  Client masks that are exempted from the invite-only flag.\n  +i  |  Invite-only mode, only invited clients can join the channel.\n  +k  |  Key required when joining the channel.\n  +l  |  Client join limit for the channel.\n  +m  |  Moderated mode, only privileged clients can talk on the channel.\n  +n  |  No-outside-messages mode, only users that are on the channel can send\n      |  messages to it.\n  +R  |  Only registered users can join the channel.\n  +M  |  Only registered or voiced users can speak in the channel.\n  +s  |  Secret mode, channel won't show up in /LIST or whois replies.\n  +t  |  Only channel opers can modify the topic.\n  +E  |  Roleplaying commands are enabled in the channel.\n  +C  |  Clients are blocked from sending CTCP messages in the channel.\n  +u  |  Auditorium mode: JOIN, PART, QUIT, NAMES, and WHO are hidden\n         hidden from unvoiced clients.\n  +U  |  Op-moderated mode: messages from unprivileged clients are sent\n         only to channel operators.\n\n= Prefixes =\n\n  +q (~)  |  Founder channel mode.\n  +a (&)  |  Admin channel mode.\n  +o (@)  |  Operator channel mode.\n  +h (%)  |  Halfop channel mode.\n  +v (+)  |  Voice channel mode.",
3
+  "== Channel Modes ==\n\nOragono supports the following channel modes:\n\n  +b  |  Client masks that are banned from the channel (e.g. *!*@127.0.0.1)\n  +e  |  Client masks that are exempted from bans.\n  +I  |  Client masks that are exempted from the invite-only flag.\n  +i  |  Invite-only mode, only invited clients can join the channel.\n  +k  |  Key required when joining the channel.\n  +l  |  Client join limit for the channel.\n  +m  |  Moderated mode, only privileged clients can talk on the channel.\n  +n  |  No-outside-messages mode, only users that are on the channel can send\n      |  messages to it.\n  +R  |  Only registered users can join the channel.\n  +M  |  Only registered or voiced users can speak in the channel.\n  +s  |  Secret mode, channel won't show up in /LIST or whois replies.\n  +t  |  Only channel opers can modify the topic.\n  +E  |  Roleplaying commands are enabled in the channel.\n  +C  |  Clients are blocked from sending CTCP messages in the channel.\n  +u  |  Auditorium mode: JOIN, PART, QUIT, NAMES, and WHO are hidden\n         from unvoiced clients.\n  +U  |  Op-moderated mode: messages from unprivileged clients are sent\n         only to channel operators.\n\n= Prefixes =\n\n  +q (~)  |  Founder channel mode.\n  +a (&)  |  Admin channel mode.\n  +o (@)  |  Operator channel mode.\n  +h (%)  |  Halfop channel mode.\n  +v (+)  |  Voice channel mode.": "== Channel Modes ==\n\nOragono supports the following channel modes:\n\n  +b  |  Client masks that are banned from the channel (e.g. *!*@127.0.0.1)\n  +e  |  Client masks that are exempted from bans.\n  +I  |  Client masks that are exempted from the invite-only flag.\n  +i  |  Invite-only mode, only invited clients can join the channel.\n  +k  |  Key required when joining the channel.\n  +l  |  Client join limit for the channel.\n  +m  |  Moderated mode, only privileged clients can talk on the channel.\n  +n  |  No-outside-messages mode, only users that are on the channel can send\n      |  messages to it.\n  +R  |  Only registered users can join the channel.\n  +M  |  Only registered or voiced users can speak in the channel.\n  +s  |  Secret mode, channel won't show up in /LIST or whois replies.\n  +t  |  Only channel opers can modify the topic.\n  +E  |  Roleplaying commands are enabled in the channel.\n  +C  |  Clients are blocked from sending CTCP messages in the channel.\n  +u  |  Auditorium mode: JOIN, PART, QUIT, NAMES, and WHO are hidden\n         from unvoiced clients.\n  +U  |  Op-moderated mode: messages from unprivileged clients are sent\n         only to channel operators.\n\n= Prefixes =\n\n  +q (~)  |  Founder channel mode.\n  +a (&)  |  Admin channel mode.\n  +o (@)  |  Operator channel mode.\n  +h (%)  |  Halfop channel mode.\n  +v (+)  |  Voice channel mode.",
4 4
   "== Server Notice Masks ==\n\nOragono supports the following server notice masks for operators:\n\n  a  |  Local announcements.\n  c  |  Local client connections.\n  j  |  Local channel actions.\n  k  |  Local kills.\n  n  |  Local nick changes.\n  o  |  Local oper actions.\n  q  |  Local quits.\n  t  |  Local /STATS usage.\n  u  |  Local client account actions.\n  x  |  Local X-lines (DLINE/KLINE/etc).\n  v  |  Local vhost changes.\n\nTo set a snomask, do this with your nickname:\n\n  /MODE <nick> +s <chars>\n\nFor instance, this would set the kill, oper, account and xline snomasks on dan:\n\n  /MODE dan +s koux": "== Server Notice Masks ==\n\nOragono supports the following server notice masks for operators:\n\n  a  |  Local announcements.\n  c  |  Local client connections.\n  j  |  Local channel actions.\n  k  |  Local kills.\n  n  |  Local nick changes.\n  o  |  Local oper actions.\n  q  |  Local quits.\n  t  |  Local /STATS usage.\n  u  |  Local client account actions.\n  x  |  Local X-lines (DLINE/KLINE/etc).\n  v  |  Local vhost changes.\n\nTo set a snomask, do this with your nickname:\n\n  /MODE <nick> +s <chars>\n\nFor instance, this would set the kill, oper, account and xline snomasks on dan:\n\n  /MODE dan +s koux",
5 5
   "== User Modes ==\n\nOragono supports the following user modes:\n\n  +a  |  User is marked as being away. This mode is set with the /AWAY command.\n  +i  |  User is marked as invisible (their channels are hidden from whois replies).\n  +o  |  User is an IRC operator.\n  +R  |  User only accepts messages from other registered users.\n  +s  |  Server Notice Masks (see help with /HELPOP snomasks).\n  +Z  |  User is connected via TLS.\n  +B  |  User is a bot.\n  +E  |  User can receive roleplaying commands.\n  +T  |  CTCP messages to the user are blocked.": "== User Modes ==\n\nOragono supports the following user modes:\n\n  +a  |  User is marked as being away. This mode is set with the /AWAY command.\n  +i  |  User is marked as invisible (their channels are hidden from whois replies).\n  +o  |  User is an IRC operator.\n  +R  |  User only accepts messages from other registered users.\n  +s  |  Server Notice Masks (see help with /HELPOP snomasks).\n  +Z  |  User is connected via TLS.\n  +B  |  User is a bot.\n  +E  |  User can receive roleplaying commands.\n  +T  |  CTCP messages to the user are blocked.",
6 6
   "@+client-only-tags TAGMSG <target>{,<target>}\n\nSends the given client-only tags to the given targets as a TAGMSG. See the IRCv3\nspecs for more info: http://ircv3.net/specs/core/message-tags-3.3.html": "@+client-only-tags TAGMSG <target>{,<target>}\n\nSends the given client-only tags to the given targets as a TAGMSG. See the IRCv3\nspecs for more info: http://ircv3.net/specs/core/message-tags-3.3.html",
@@ -13,9 +13,9 @@
13 13
   "CAP <subcommand> [:<capabilities>]\n\nUsed in capability negotiation. See the IRCv3 specs for more info:\nhttp://ircv3.net/specs/core/capability-negotiation-3.1.html\nhttp://ircv3.net/specs/core/capability-negotiation-3.2.html": "CAP <subcommand> [:<capabilities>]\n\nUsed in capability negotiation. See the IRCv3 specs for more info:\nhttp://ircv3.net/specs/core/capability-negotiation-3.1.html\nhttp://ircv3.net/specs/core/capability-negotiation-3.2.html",
14 14
   "CHATHISTORY [params]\n\nCHATHISTORY is a history replay command associated with the IRCv3\nspecification draft/chathistory. See this document:\nhttps://github.com/ircv3/ircv3-specifications/pull/393": "CHATHISTORY [params]\n\nCHATHISTORY is a history replay command associated with the IRCv3\nspecification draft/chathistory. See this document:\nhttps://github.com/ircv3/ircv3-specifications/pull/393",
15 15
   "DEBUG <option>\n\nProvides various debugging commands for the IRCd. <option> can be one of:\n\n* GCSTATS: Garbage control statistics.\n* NUMGOROUTINE: Number of goroutines in use.\n* STARTCPUPROFILE: Starts the CPU profiler.\n* STOPCPUPROFILE: Stops the CPU profiler.\n* PROFILEHEAP: Writes a memory profile.\n* CRASHSERVER: Crashes the server (for use in failover testing)": "DEBUG <option>\n\nProvides various debugging commands for the IRCd. <option> can be one of:\n\n* GCSTATS: Garbage control statistics.\n* NUMGOROUTINE: Number of goroutines in use.\n* STARTCPUPROFILE: Starts the CPU profiler.\n* STOPCPUPROFILE: Stops the CPU profiler.\n* PROFILEHEAP: Writes a memory profile.\n* CRASHSERVER: Crashes the server (for use in failover testing)",
16
-  "DEFCON [level]\n\nThe DEFCON system can disable server features at runtime, to mitigate\nspam or other hostile activity. It has five levels, which are cumulative\n(i.e., level 3 includes all restrictions from level 4 and so on):\n\n5: Normal operation\n4: No new account or channel registrations\n3: All users are +R; no changes to vhosts\n2: No new unauthenticated connections; all channels are +R\n1: No new connections except from localhost or other trusted IPs": "DEFCON [level]\n\nThe DEFCON system can disable server features at runtime, to mitigate\nspam or other hostile activity. It has five levels, which are cumulative\n(i.e., level 3 includes all restrictions from level 4 and so on):\n\n5: Normal operation\n4: No new account or channel registrations\n3: All users are +R; no changes to vhosts\n2: No new unauthenticated connections; all channels are +R\n1: No new connections except from localhost or other trusted IPs",
16
+  "DEFCON [level]\n\nThe DEFCON system can disable server features at runtime, to mitigate\nspam or other hostile activity. It has five levels, which are cumulative\n(i.e., level 3 includes all restrictions from level 4 and so on):\n\n5: Normal operation\n4: No new account or channel registrations; if Tor is enabled, no new\n   unauthenticated connections from Tor\n3: All users are +R; no changes to vhosts\n2: No new unauthenticated connections; all channels are +R\n1: No new connections except from localhost or other trusted IPs": "DEFCON [level]\n\nThe DEFCON system can disable server features at runtime, to mitigate\nspam or other hostile activity. It has five levels, which are cumulative\n(i.e., level 3 includes all restrictions from level 4 and so on):\n\n5: Normal operation\n4: No new account or channel registrations; if Tor is enabled, no new\n   unauthenticated connections from Tor\n3: All users are +R; no changes to vhosts\n2: No new unauthenticated connections; all channels are +R\n1: No new connections except from localhost or other trusted IPs",
17 17
   "DEOPER\n\nDEOPER removes the IRCop privileges granted to you by a successful /OPER.": "DEOPER\n\nDEOPER removes the IRCop privileges granted to you by a successful /OPER.",
18
-  "DLINE [ANDKILL] [MYSELF] [duration] <ip>/<net> [ON <server>] [reason [| oper reason]]\nDLINE LIST\n\nBans an IP address or network from connecting to the server. If the duration is\ngiven then only for that long. The reason is shown to the user themselves, but\neveryone else will see a standard message. The oper reason is shown to\noperators getting info about the DLINEs that exist.\n\nBans are saved across subsequent launches of the server.\n\n\"ANDKILL\" means that all matching clients are also removed from the server.\n\n\"MYSELF\" is required when the DLINE matches the address the person applying it is connected\nfrom. If \"MYSELF\" is not given, trying to DLINE yourself will result in an error.\n\n[duration] can be of the following forms:\n\t1y 12mo 31d 10h 8m 13s\n\n<net> is specified in typical CIDR notation. For example:\n\t127.0.0.1/8\n\t8.8.8.8/24\n\nON <server> specifies that the ban is to be set on that specific server.\n\n[reason] and [oper reason], if they exist, are separated by a vertical bar (|).\n\nIf \"DLINE LIST\" is sent, the server sends back a list of our current DLINEs.": "DLINE [ANDKILL] [MYSELF] [duration] <ip>/<net> [ON <server>] [reason [| oper reason]]\nDLINE LIST\n\nBans an IP address or network from connecting to the server. If the duration is\ngiven then only for that long. The reason is shown to the user themselves, but\neveryone else will see a standard message. The oper reason is shown to\noperators getting info about the DLINEs that exist.\n\nBans are saved across subsequent launches of the server.\n\n\"ANDKILL\" means that all matching clients are also removed from the server.\n\n\"MYSELF\" is required when the DLINE matches the address the person applying it is connected\nfrom. If \"MYSELF\" is not given, trying to DLINE yourself will result in an error.\n\n[duration] can be of the following forms:\n\t1y 12mo 31d 10h 8m 13s\n\n<net> is specified in typical CIDR notation. For example:\n\t127.0.0.1/8\n\t8.8.8.8/24\n\nON <server> specifies that the ban is to be set on that specific server.\n\n[reason] and [oper reason], if they exist, are separated by a vertical bar (|).\n\nIf \"DLINE LIST\" is sent, the server sends back a list of our current DLINEs.",
18
+  "DLINE [ANDKILL] [MYSELF] [duration] <ip>/<net> [ON <server>] [reason [| oper reason]]\nDLINE LIST\n\nBans an IP address or network from connecting to the server. If the duration is\ngiven then only for that long. The reason is shown to the user themselves, but\neveryone else will see a standard message. The oper reason is shown to\noperators getting info about the DLINEs that exist.\n\nBans are saved across subsequent launches of the server.\n\n\"ANDKILL\" means that all matching clients are also removed from the server.\n\n\"MYSELF\" is required when the DLINE matches the address the person applying it is connected\nfrom. If \"MYSELF\" is not given, trying to DLINE yourself will result in an error.\n\n[duration] can be of the following forms:\n\t1y 12mo 31d 10h 8m 13s\n\n<net> is specified in typical CIDR notation. For example:\n\t127.0.0.1/8\n\t8.8.8.8/24\n\nON <server> specifies that the ban is to be set on that specific server.\n\n[reason] and [oper reason], if they exist, are separated by a vertical bar (|).\n\nIf \"DLINE LIST\" is sent, the server sends back a list of our current DLINEs.\n\nTo remove a DLINE, use the \"UNDLINE\" command.": "DLINE [ANDKILL] [MYSELF] [duration] <ip>/<net> [ON <server>] [reason [| oper reason]]\nDLINE LIST\n\nBans an IP address or network from connecting to the server. If the duration is\ngiven then only for that long. The reason is shown to the user themselves, but\neveryone else will see a standard message. The oper reason is shown to\noperators getting info about the DLINEs that exist.\n\nBans are saved across subsequent launches of the server.\n\n\"ANDKILL\" means that all matching clients are also removed from the server.\n\n\"MYSELF\" is required when the DLINE matches the address the person applying it is connected\nfrom. If \"MYSELF\" is not given, trying to DLINE yourself will result in an error.\n\n[duration] can be of the following forms:\n\t1y 12mo 31d 10h 8m 13s\n\n<net> is specified in typical CIDR notation. For example:\n\t127.0.0.1/8\n\t8.8.8.8/24\n\nON <server> specifies that the ban is to be set on that specific server.\n\n[reason] and [oper reason], if they exist, are separated by a vertical bar (|).\n\nIf \"DLINE LIST\" is sent, the server sends back a list of our current DLINEs.\n\nTo remove a DLINE, use the \"UNDLINE\" command.",
19 19
   "EXTJWT <target> [service_name]\n\nGet a JSON Web Token for target (either * or a channel name).": "EXTJWT <target> [service_name]\n\nGet a JSON Web Token for target (either * or a channel name).",
20 20
   "HELP <argument>\n\nGet an explanation of <argument>, or \"index\" for a list of help topics.": "HELP <argument>\n\nGet an explanation of <argument>, or \"index\" for a list of help topics.",
21 21
   "HELPOP <argument>\n\nGet an explanation of <argument>, or \"index\" for a list of help topics.": "HELPOP <argument>\n\nGet an explanation of <argument>, or \"index\" for a list of help topics.",
@@ -26,7 +26,7 @@
26 26
   "JOIN <channel>{,<channel>} [<key>{,<key>}]\n\nJoins the given channels with the matching keys.": "JOIN <channel>{,<channel>} [<key>{,<key>}]\n\nJoins the given channels with the matching keys.",
27 27
   "KICK <channel> <user> [reason]\n\nRemoves the user from the given channel, so long as you have the appropriate\nchannel privs.": "KICK <channel> <user> [reason]\n\nRemoves the user from the given channel, so long as you have the appropriate\nchannel privs.",
28 28
   "KILL <nickname> [reason]\n\nRemoves the given user from the network, showing them the reason if it is\nsupplied.": "KILL <nickname> [reason]\n\nRemoves the given user from the network, showing them the reason if it is\nsupplied.",
29
-  "KLINE [ANDKILL] [MYSELF] [duration] <mask> [ON <server>] [reason [| oper reason]]\nKLINE LIST\n\nBans a mask from connecting to the server. If the duration is given then only for that\nlong. The reason is shown to the user themselves, but everyone else will see a standard\nmessage. The oper reason is shown to operators getting info about the KLINEs that exist.\n\nBans are saved across subsequent launches of the server.\n\n\"ANDKILL\" means that all matching clients are also removed from the server.\n\n\"MYSELF\" is required when the KLINE matches the address the person applying it is connected\nfrom. If \"MYSELF\" is not given, trying to KLINE yourself will result in an error.\n\n[duration] can be of the following forms:\n\t1y 12mo 31d 10h 8m 13s\n\n<mask> is specified in typical IRC format. For example:\n\tdan\n\tdan!5*@127.*\n\nON <server> specifies that the ban is to be set on that specific server.\n\n[reason] and [oper reason], if they exist, are separated by a vertical bar (|).\n\nIf \"KLINE LIST\" is sent, the server sends back a list of our current KLINEs.": "KLINE [ANDKILL] [MYSELF] [duration] <mask> [ON <server>] [reason [| oper reason]]\nKLINE LIST\n\nBans a mask from connecting to the server. If the duration is given then only for that\nlong. The reason is shown to the user themselves, but everyone else will see a standard\nmessage. The oper reason is shown to operators getting info about the KLINEs that exist.\n\nBans are saved across subsequent launches of the server.\n\n\"ANDKILL\" means that all matching clients are also removed from the server.\n\n\"MYSELF\" is required when the KLINE matches the address the person applying it is connected\nfrom. If \"MYSELF\" is not given, trying to KLINE yourself will result in an error.\n\n[duration] can be of the following forms:\n\t1y 12mo 31d 10h 8m 13s\n\n<mask> is specified in typical IRC format. For example:\n\tdan\n\tdan!5*@127.*\n\nON <server> specifies that the ban is to be set on that specific server.\n\n[reason] and [oper reason], if they exist, are separated by a vertical bar (|).\n\nIf \"KLINE LIST\" is sent, the server sends back a list of our current KLINEs.",
29
+  "KLINE [ANDKILL] [MYSELF] [duration] <mask> [ON <server>] [reason [| oper reason]]\nKLINE LIST\n\nBans a mask from connecting to the server. If the duration is given then only for that\nlong. The reason is shown to the user themselves, but everyone else will see a standard\nmessage. The oper reason is shown to operators getting info about the KLINEs that exist.\n\nBans are saved across subsequent launches of the server.\n\n\"ANDKILL\" means that all matching clients are also removed from the server.\n\n\"MYSELF\" is required when the KLINE matches the address the person applying it is connected\nfrom. If \"MYSELF\" is not given, trying to KLINE yourself will result in an error.\n\n[duration] can be of the following forms:\n\t1y 12mo 31d 10h 8m 13s\n\n<mask> is specified in typical IRC format. For example:\n\tdan\n\tdan!5*@127.*\n\nON <server> specifies that the ban is to be set on that specific server.\n\n[reason] and [oper reason], if they exist, are separated by a vertical bar (|).\n\nIf \"KLINE LIST\" is sent, the server sends back a list of our current KLINEs.\n\nTo remove a KLINE, use the \"UNKLINE\" command.": "KLINE [ANDKILL] [MYSELF] [duration] <mask> [ON <server>] [reason [| oper reason]]\nKLINE LIST\n\nBans a mask from connecting to the server. If the duration is given then only for that\nlong. The reason is shown to the user themselves, but everyone else will see a standard\nmessage. The oper reason is shown to operators getting info about the KLINEs that exist.\n\nBans are saved across subsequent launches of the server.\n\n\"ANDKILL\" means that all matching clients are also removed from the server.\n\n\"MYSELF\" is required when the KLINE matches the address the person applying it is connected\nfrom. If \"MYSELF\" is not given, trying to KLINE yourself will result in an error.\n\n[duration] can be of the following forms:\n\t1y 12mo 31d 10h 8m 13s\n\n<mask> is specified in typical IRC format. For example:\n\tdan\n\tdan!5*@127.*\n\nON <server> specifies that the ban is to be set on that specific server.\n\n[reason] and [oper reason], if they exist, are separated by a vertical bar (|).\n\nIf \"KLINE LIST\" is sent, the server sends back a list of our current KLINEs.\n\nTo remove a KLINE, use the \"UNKLINE\" command.",
30 30
   "LANGUAGE <code>{ <code>}\n\nSets your preferred languages to the given ones.": "LANGUAGE <code>{ <code>}\n\nSets your preferred languages to the given ones.",
31 31
   "LIST [<channel>{,<channel>}] [<elistcond>{,<elistcond>}]\n\nShows information on the given channels (or if none are given, then on all\nchannels). <elistcond>s modify how the channels are selected.": "LIST [<channel>{,<channel>}] [<elistcond>{,<elistcond>}]\n\nShows information on the given channels (or if none are given, then on all\nchannels). <elistcond>s modify how the channels are selected.",
32 32
   "LUSERS [<mask> [<server>]]\n\nShows statistics about the size of the network. If <mask> is given, only\nreturns stats for servers matching the given mask.  If <server> is given, the\ncommand is processed by that server.": "LUSERS [<mask> [<server>]]\n\nShows statistics about the size of the network. If <mask> is given, only\nreturns stats for servers matching the given mask.  If <server> is given, the\ncommand is processed by that server.",
@@ -60,6 +60,7 @@
60 60
   "SUMMON [parameters]\n\nThe SUMMON command is not implemented.": "SUMMON [parameters]\n\nThe SUMMON command is not implemented.",
61 61
   "TIME [server]\n\nShows the time of the current, or the given, server.": "TIME [server]\n\nShows the time of the current, or the given, server.",
62 62
   "TOPIC <channel> [topic]\n\nIf [topic] is given, sets the topic in the channel to that. If [topic] is not\ngiven, views the current topic on the channel.": "TOPIC <channel> [topic]\n\nIf [topic] is given, sets the topic in the channel to that. If [topic] is not\ngiven, views the current topic on the channel.",
63
+  "UBAN <subcommand> [arguments]\n\nOragono's \"unified ban\" system. Accepts the following subcommands:\n\n1. UBAN ADD <target> [DURATION <duration>] [REASON...]\n2. UBAN DEL <target>\n3. UBAN LIST\n4. UBAN INFO <target>\n\n<target> may be an IP, a CIDR, a nickmask with wildcards, or the name of an\naccount to suspend.": "UBAN <subcommand> [arguments]\n\nOragono's \"unified ban\" system. Accepts the following subcommands:\n\n1. UBAN ADD <target> [DURATION <duration>] [REASON...]\n2. UBAN DEL <target>\n3. UBAN LIST\n4. UBAN INFO <target>\n\n<target> may be an IP, a CIDR, a nickmask with wildcards, or the name of an\naccount to suspend.",
63 64
   "UNDLINE <ip>/<net>\n\nRemoves an existing ban on an IP address or a network.\n\n<net> is specified in typical CIDR notation. For example:\n\t127.0.0.1/8\n\t8.8.8.8/24": "UNDLINE <ip>/<net>\n\nRemoves an existing ban on an IP address or a network.\n\n<net> is specified in typical CIDR notation. For example:\n\t127.0.0.1/8\n\t8.8.8.8/24",
64 65
   "UNINVITE <nickname> <channel>\n\nUNINVITE rescinds a channel invitation sent for an invite-only channel.": "UNINVITE <nickname> <channel>\n\nUNINVITE rescinds a channel invitation sent for an invite-only channel.",
65 66
   "UNKLINE <mask>\n\nRemoves an existing ban on a mask.\n\nFor example:\n\tdan\n\tdan!5*@127.*": "UNKLINE <mask>\n\nRemoves an existing ban on a mask.\n\nFor example:\n\tdan\n\tdan!5*@127.*",

+ 51
- 3
languages/example/irc.lang.json Parādīt failu

@@ -4,9 +4,11 @@
4 4
   "$bWarning: erasing this account will allow it to be re-registered; consider UNREGISTER instead.$b": "$bWarning: erasing this account will allow it to be re-registered; consider UNREGISTER instead.$b",
5 5
   "$bWarning: unregistering this account will remove its stored privileges.$b": "$bWarning: unregistering this account will remove its stored privileges.$b",
6 6
   "$bWarning: unregistering this channel will remove all stored channel attributes.$b": "$bWarning: unregistering this channel will remove all stored channel attributes.$b",
7
+  "$bWarning: you are about to empty this channel and remove it from the server.$b": "$bWarning: you are about to empty this channel and remove it from the server.$b",
7 8
   "$bWarning: you are about to transfer control of your channel to another user.$b": "$bWarning: you are about to transfer control of your channel to another user.$b",
8 9
   "%[1]s [account: %[2]s] joined the channel": "%[1]s [account: %[2]s] joined the channel",
9 10
   "%[1]s changed nick to %[2]s": "%[1]s changed nick to %[2]s",
11
+  "%[1]s invited you to channel %[2]s": "%[1]s invited you to channel %[2]s",
10 12
   "%[1]s kicked %[2]s (%[3]s)": "%[1]s kicked %[2]s (%[3]s)",
11 13
   "%[1]s left the channel (%[2]s)": "%[1]s left the channel (%[2]s)",
12 14
   "%[1]s quit (%[2]s)": "%[1]s quit (%[2]s)",
@@ -27,9 +29,12 @@
27 29
   "... and other commands which have been disabled": "... and other commands which have been disabled",
28 30
   "A client is already using that account; try logging out and logging back in with SASL": "A client is already using that account; try logging out and logging back in with SASL",
29 31
   "A valid e-mail address is required": "A valid e-mail address is required",
32
+  "Account %[1]s has been suspended: %[2]s": "Account %[1]s has been suspended: %[2]s",
30 33
   "Account %[1]s has vhost: %[2]s": "Account %[1]s has vhost: %[2]s",
34
+  "Account %[1]s is in good standing; see /NICKSERV INFO %[2]s for more details": "Account %[1]s is in good standing; see /NICKSERV INFO %[2]s for more details",
31 35
   "Account %[1]s receives mode +%[2]s": "Account %[1]s receives mode +%[2]s",
32 36
   "Account %[1]s suspended at %[2]s. Duration: %[3]s. %[4]s": "Account %[1]s suspended at %[2]s. Duration: %[3]s. %[4]s",
37
+  "Account %[1]s was created, but has not been verified": "Account %[1]s was created, but has not been verified",
33 38
   "Account %s has no vhost": "Account %s has no vhost",
34 39
   "Account already exists": "Account already exists",
35 40
   "Account created": "Account created",
@@ -44,6 +49,7 @@
44 49
   "Added K-Line for %s": "Added K-Line for %s",
45 50
   "Added temporary (%[1]s) D-Line for %[2]s": "Added temporary (%[1]s) D-Line for %[2]s",
46 51
   "Added temporary (%[1]s) K-Line for %[2]s": "Added temporary (%[1]s) K-Line for %[2]s",
52
+  "Adding this mask would affect %[1]d clients (an additional %[2]d clients are exempt due to always-on)": "Adding this mask would affect %[1]d clients (an additional %[2]d clients are exempt due to always-on)",
47 53
   "Additional grouped nick: %s": "Additional grouped nick: %s",
48 54
   "An error occurred": "An error occurred",
49 55
   "Authentication failed: %s": "Authentication failed: %s",
@@ -87,6 +93,9 @@
87 93
   "Channel renamed": "Channel renamed",
88 94
   "Channel renamed: %s": "Channel renamed: %s",
89 95
   "Channels with persistent history cannot be renamed": "Channels with persistent history cannot be renamed",
96
+  "Client %[1]s is associated with IP %[2]s; you can ban this IP with /UBAN ADD": "Client %[1]s is associated with IP %[2]s; you can ban this IP with /UBAN ADD",
97
+  "Client %[1]s is logged into account %[2]s and has %[3]d active clients (see /NICKSERV CLIENTS LIST %[4]s for more info": "Client %[1]s is logged into account %[2]s and has %[3]d active clients (see /NICKSERV CLIENTS LIST %[4]s for more info",
98
+  "Client %[1]s is unauthenticated and connected from %[2]s": "Client %[1]s is unauthenticated and connected from %[2]s",
90 99
   "Client %d (currently attached client):": "Client %d (currently attached client):",
91 100
   "Client %d:": "Client %d:",
92 101
   "Client %s is always-on and cannot be fully removed by /KILL; consider /NS SUSPEND instead": "Client %s is always-on and cannot be fully removed by /KILL; consider /NS SUSPEND instead",
@@ -108,12 +117,16 @@
108 117
   "Could not parse IP address or CIDR network": "Could not parse IP address or CIDR network",
109 118
   "Could not register": "Could not register",
110 119
   "Could not remove ban [%s]": "Could not remove ban [%s]",
120
+  "Could not remove ban: %v": "Could not remove ban: %v",
111 121
   "Could not retrieve history": "Could not retrieve history",
112 122
   "Could not set or change nickname": "Could not set or change nickname",
113 123
   "Could not successfully save new D-LINE: %s": "Could not successfully save new D-LINE: %s",
114 124
   "Could not successfully save new K-LINE: %s": "Could not successfully save new K-LINE: %s",
115 125
   "Could not transfer channel": "Could not transfer channel",
116 126
   "Could not ungroup nick": "Could not ungroup nick",
127
+  "Couldn't load account: %v": "Couldn't load account: %v",
128
+  "Couldn't parse ban target": "Couldn't parse ban target",
129
+  "Couldn't rename account: %s": "Couldn't rename account: %s",
117 130
   "Created at:  %s": "Created at:  %s",
118 131
   "Current DEFCON level is %d": "Current DEFCON level is %d",
119 132
   "Current global users %[1]s, max %[2]s": "Current global users %[1]s, max %[2]s",
@@ -121,6 +134,7 @@
121 134
   "Data export for %[1]s completed and written to %[2]s": "Data export for %[1]s completed and written to %[2]s",
122 135
   "Device ID:   %s": "Device ID:   %s",
123 136
   "Direct messages from unregistered users are temporarily restricted": "Direct messages from unregistered users are temporarily restricted",
137
+  "Disconnected %d client(s) associated with the account, using the following IPs:": "Disconnected %d client(s) associated with the account, using the following IPs:",
124 138
   "End of /HELPOP": "End of /HELPOP",
125 139
   "End of /INFO": "End of /INFO",
126 140
   "End of /WHOIS list": "End of /WHOIS list",
@@ -143,10 +157,12 @@
143 157
   "For a more complete list of contributors, see our changelog:": "For a more complete list of contributors, see our changelog:",
144 158
   "For more details, try /%s HELP": "For more details, try /%s HELP",
145 159
   "Former Core Developers:": "Former Core Developers:",
160
+  "Forwarding to another channel": "Forwarding to another channel",
146 161
   "Founder: %s": "Founder: %s",
147 162
   "GHOSTed by %s": "GHOSTed by %s",
148 163
   "Given current server settings, auto-away is disabled for your client": "Given current server settings, auto-away is disabled for your client",
149 164
   "Given current server settings, auto-away is enabled for your client": "Given current server settings, auto-away is enabled for your client",
165
+  "Given current server settings, the channel history query cutoff setting is: %s": "Given current server settings, the channel history query cutoff setting is: %s",
150 166
   "Given current server settings, the channel history setting is: %s": "Given current server settings, the channel history setting is: %s",
151 167
   "Given current server settings, your client is always-on": "Given current server settings, your client is always-on",
152 168
   "Given current server settings, your client is not always-on": "Given current server settings, your client is not always-on",
@@ -158,6 +174,9 @@
158 174
   "Hostname:    %s": "Hostname:    %s",
159 175
   "I have %[1]d clients and %[2]d servers": "I have %[1]d clients and %[2]d servers",
160 176
   "I'll be right back": "I'll be right back",
177
+  "IP %[1]s has %[2]d active connections out of a maximum of %[3]d": "IP %[1]s has %[2]d active connections out of a maximum of %[3]d",
178
+  "IP %[1]s has had %[2]d connection attempts in the past %[3]v, out of a maximum of %[4]d": "IP %[1]s has had %[2]d connection attempts in the past %[3]v, out of a maximum of %[4]d",
179
+  "IP %s is exempt from connection limits": "IP %s is exempt from connection limits",
161 180
   "IP address:  %s": "IP address:  %s",
162 181
   "IRC Operators online": "IRC Operators online",
163 182
   "Incorrect batch tag sent": "Incorrect batch tag sent",
@@ -184,7 +203,8 @@
184 203
   "Invalid vhost": "Invalid vhost",
185 204
   "It was built from git hash %s.": "It was built from git hash %s.",
186 205
   "It was compiled using %s.": "It was compiled using %s.",
187
-  "JOIN 0 is not allowed": "JOIN 0 is not allowed",
206
+  "Killed %[1]d active client(s) from %[2]s, associated with %[3]d nickname(s):": "Killed %[1]d active client(s) from %[2]s, associated with %[3]d nickname(s):",
207
+  "Killed %d clients:": "Killed %d clients:",
188 208
   "Language %s is not supported by this server": "Language %s is not supported by this server",
189 209
   "Language preferences have been set": "Language preferences have been set",
190 210
   "Last active: %s": "Last active: %s",
@@ -203,7 +223,9 @@
203 223
   "Nickname is already in use": "Nickname is already in use",
204 224
   "Nickname is reserved by a different account": "Nickname is reserved by a different account",
205 225
   "No DLINEs have been set!": "No DLINEs have been set!",
226
+  "No ban exists for %[1]s": "No ban exists for %[1]s",
206 227
   "No changes were made": "No changes were made",
228
+  "No client is currently using that nickname": "No client is currently using that nickname",
207 229
   "No nickname given": "No nickname given",
208 230
   "No reason given.": "No reason given.",
209 231
   "No such account": "No such account",
@@ -215,6 +237,7 @@
215 237
   "No text to send": "No text to send",
216 238
   "No topic is set": "No topic is set",
217 239
   "Not enough parameters": "Not enough parameters",
240
+  "Note that if the user is currently in the channel, you must /KICK them after you ban them": "Note that if the user is currently in the channel, you must /KICK them after you ban them",
218 241
   "Only channel founders can change registered channels": "Only channel founders can change registered channels",
219 242
   "Only the channel founder can do this": "Only the channel founder can do this",
220 243
   "Oragono does not emulate the ZNC module %s": "Oragono does not emulate the ZNC module %s",
@@ -244,6 +267,7 @@
244 267
   "Removed D-Line for %s": "Removed D-Line for %s",
245 268
   "Removed K-Line for %s": "Removed K-Line for %s",
246 269
   "Requesting the %s client capability is forbidden": "Requesting the %s client capability is forbidden",
270
+  "Reset throttle for IP: %s": "Reset throttle for IP: %s",
247 271
   "Resume may have lost some message history": "Resume may have lost some message history",
248 272
   "Resume may have lost up to %d seconds of history": "Resume may have lost up to %d seconds of history",
249 273
   "Roleplaying has been disabled by the server administrators": "Roleplaying has been disabled by the server administrators",
@@ -258,10 +282,12 @@
258 282
   "SASL message too long": "SASL message too long",
259 283
   "SUMMON has been disabled": "SUMMON has been disabled",
260 284
   "Server notice masks": "Server notice masks",
285
+  "Some IPs may also be prevented from connecting by the connection limiter and/or throttler": "Some IPs may also be prevented from connecting by the connection limiter and/or throttler",
261 286
   "Some additional message history may have been lost": "Some additional message history may have been lost",
262 287
   "Specified client ID does not exist": "Specified client ID does not exist",
263 288
   "Started exporting data for account %[1]s to file %[2]s": "Started exporting data for account %[1]s to file %[2]s",
264 289
   "Successfully accepted ownership of channel %s": "Successfully accepted ownership of channel %s",
290
+  "Successfully added UBAN for %s": "Successfully added UBAN for %s",
265 291
   "Successfully changed the channel settings": "Successfully changed the channel settings",
266 292
   "Successfully changed your account settings": "Successfully changed your account settings",
267 293
   "Successfully cleared vhost": "Successfully cleared vhost",
@@ -274,7 +300,9 @@
274 300
   "Successfully logged out session": "Successfully logged out session",
275 301
   "Successfully purged channel %s from the server": "Successfully purged channel %s from the server",
276 302
   "Successfully registered account %s": "Successfully registered account %s",
303
+  "Successfully removed ban on %s": "Successfully removed ban on %s",
277 304
   "Successfully removed operator privileges": "Successfully removed operator privileges",
305
+  "Successfully renamed account": "Successfully renamed account",
278 306
   "Successfully reset channel access": "Successfully reset channel access",
279 307
   "Successfully set persistent mode %[1]s on %[2]s": "Successfully set persistent mode %[1]s on %[2]s",
280 308
   "Successfully set vhost": "Successfully set vhost",
@@ -291,10 +319,17 @@
291 319
   "That nickname is already reserved by someone else": "That nickname is already reserved by someone else",
292 320
   "That nickname is not registered": "That nickname is not registered",
293 321
   "The message must not be blank": "The message must not be blank",
322
+  "The stored channel history query cutoff setting is: %s": "The stored channel history query cutoff setting is: %s",
294 323
   "The stored channel history setting is: %s": "The stored channel history setting is: %s",
324
+  "There are %[1]d active client(s) from %[2]s, associated with %[3]d nickname(s):": "There are %[1]d active client(s) from %[2]s, associated with %[3]d nickname(s):",
295 325
   "There are %[1]d certificate fingerprint(s) authorized for account %[2]s.": "There are %[1]d certificate fingerprint(s) authorized for account %[2]s.",
296 326
   "There are %[1]d users and %[2]d invisible on %[3]d server(s)": "There are %[1]d users and %[2]d invisible on %[3]d server(s)",
297
-  "There are %d active suspensions.": "There are %d active suspensions.",
327
+  "There are %d active IP/network ban(s) (DLINEs)": "There are %d active IP/network ban(s) (DLINEs)",
328
+  "There are %d active account suspensions.": "There are %d active account suspensions.",
329
+  "There are %d active ban(s) on nick-user-host masks (KLINEs)": "There are %d active ban(s) on nick-user-host masks (KLINEs)",
330
+  "There are %d purged channel(s).": "There are %d purged channel(s).",
331
+  "There is no account registered for %s": "There is no account registered for %s",
332
+  "There is no active IP ban against %s": "There is no active IP ban against %s",
298 333
   "There was no such nickname": "There was no such nickname",
299 334
   "They aren't on that channel": "They aren't on that channel",
300 335
   "This ban matches you. To DLINE yourself, you must use the command:  /DLINE MYSELF <arguments>": "This ban matches you. To DLINE yourself, you must use the command:  /DLINE MYSELF <arguments>",
@@ -322,6 +357,8 @@
322 357
   "Unknown subcommand": "Unknown subcommand",
323 358
   "Unrecognized DEBUG subcommand": "Unrecognized DEBUG subcommand",
324 359
   "Usage: REGISTER <passphrase> [email]": "Usage: REGISTER <passphrase> [email]",
360
+  "User %[1]s can be banned by hostname: /MODE %[2]s +b %[3]s": "User %[1]s can be banned by hostname: /MODE %[2]s +b %[3]s",
361
+  "User %[1]s is authenticated and can be banned by nickname: /MODE %[2]s +b %[3]s!*@*": "User %[1]s is authenticated and can be banned by nickname: /MODE %[2]s +b %[3]s!*@*",
325 362
   "User doesn't have roleplaying mode enabled": "User doesn't have roleplaying mode enabled",
326 363
   "User is already on that channel": "User is already on that channel",
327 364
   "User is currently disconnected": "User is currently disconnected",
@@ -330,16 +367,26 @@
330 367
   "Verification code: %s": "Verification code: %s",
331 368
   "Verify your account on %s": "Verify your account on %s",
332 369
   "WEBIRC command is not usable from your address or incorrect password given": "WEBIRC command is not usable from your address or incorrect password given",
333
-  "Welcome to the Internet Relay Network %s": "Welcome to the Internet Relay Network %s",
370
+  "Warning: %d clients matched this rule, but were not killed due to being always-on:": "Warning: %d clients matched this rule, but were not killed due to being always-on:",
371
+  "Warning: %s is not currently connected to the server. Using WHOWAS data, which may be inaccurate:": "Warning: %s is not currently connected to the server. Using WHOWAS data, which may be inaccurate:",
372
+  "Warning: /JOIN 0 will remove you from all channels. To confirm, type: /JOIN 0 %s": "Warning: /JOIN 0 will remove you from all channels. To confirm, type: /JOIN 0 %s",
373
+  "Warning: account %s currently has a persistent channel privilege granted with CS AMODE. If this mode is not removed, bans will not be respected": "Warning: account %s currently has a persistent channel privilege granted with CS AMODE. If this mode is not removed, bans will not be respected",
374
+  "Warning: account %s is the channel founder and cannot be banned": "Warning: account %s is the channel founder and cannot be banned",
375
+  "Warning: could not rename affected client: %v": "Warning: could not rename affected client: %v",
376
+  "Warning: server.ip-cloaking.enabled-for-always-on is disabled. This reduces the precision of channel bans.": "Warning: server.ip-cloaking.enabled-for-always-on is disabled. This reduces the precision of channel bans.",
377
+  "Warning: this ban will affect %d other users:": "Warning: this ban will affect %d other users:",
378
+  "Welcome to the %s IRC Network %s": "Welcome to the %s IRC Network %s",
334 379
   "You already have too many certificate fingerprints": "You already have too many certificate fingerprints",
335 380
   "You are banned from this server (%s)": "You are banned from this server (%s)",
336 381
   "You are no longer authorized to be on this server": "You are no longer authorized to be on this server",
337 382
   "You are no longer marked as being away": "You are no longer marked as being away",
338 383
   "You are now an IRC operator": "You are now an IRC operator",
339 384
   "You are now logged in as %s": "You are now logged in as %s",
385
+  "You can suspend their accounts instead; try /UBAN ADD <nickname>": "You can suspend their accounts instead; try /UBAN ADD <nickname>",
340 386
   "You can't GHOST an always-on client": "You can't GHOST an always-on client",
341 387
   "You can't GHOST yourself (try /QUIT instead)": "You can't GHOST yourself (try /QUIT instead)",
342 388
   "You can't delete your password unless you add a certificate fingerprint": "You can't delete your password unless you add a certificate fingerprint",
389
+  "You can't forward a channel to itself": "You can't forward a channel to itself",
343 390
   "You can't mix secure and insecure connections to this account": "You can't mix secure and insecure connections to this account",
344 391
   "You can't remove all your certificate fingerprints unless you add a password": "You can't remove all your certificate fingerprints unless you add a password",
345 392
   "You can't ungroup your primary nickname (try unregistering your account instead)": "You can't ungroup your primary nickname (try unregistering your account instead)",
@@ -356,6 +403,7 @@
356 403
   "You have too many nicks reserved already (you can remove some with /NS DROP)": "You have too many nicks reserved already (you can remove some with /NS DROP)",
357 404
   "You may not change your nickname": "You may not change your nickname",
358 405
   "You may not reregister": "You may not reregister",
406
+  "You must be a channel operator in the channel you are forwarding to": "You must be a channel operator in the channel you are forwarding to",
359 407
   "You must be an oper on the channel to register it": "You must be an oper on the channel to register it",
360 408
   "You must be connected with TLS and a client certificate to do this": "You must be connected with TLS and a client certificate to do this",
361 409
   "You must complete the connection before registering your account": "You must complete the connection before registering your account",

+ 2
- 0
languages/example/nickserv.lang.json Parādīt failu

@@ -18,6 +18,7 @@
18 18
   "$bMULTICLIENT$b\nIf 'multiclient' is enabled and you are already logged in and using a nick, a\nsecond client of yours that authenticates with SASL and requests the same nick\nis allowed to attach to the nick as well (this is comparable to the behavior\nof IRC \"bouncers\" like ZNC). Your options are 'on' (allow this behavior),\n'off' (disallow it), and 'default' (use the server default value).": "$bMULTICLIENT$b\nIf 'multiclient' is enabled and you are already logged in and using a nick, a\nsecond client of yours that authenticates with SASL and requests the same nick\nis allowed to attach to the nick as well (this is comparable to the behavior\nof IRC \"bouncers\" like ZNC). Your options are 'on' (allow this behavior),\n'off' (disallow it), and 'default' (use the server default value).",
19 19
   "$bPASSWD$b lets you change your password.": "$bPASSWD$b lets you change your password.",
20 20
   "$bREGISTER$b lets you register a user account.": "$bREGISTER$b lets you register a user account.",
21
+  "$bRENAME$b renames an account": "$bRENAME$b renames an account",
21 22
   "$bREPLAY-JOINS$b\n'replay-joins' controls whether replayed channel history will include\nlines for join and part. This provides more information about the context of\nmessages, but may be spammy. Your options are 'always', 'never', and the default\nof 'commands-only' (the messages will be replayed in /HISTORY output, but not\nduring autoreplay).": "$bREPLAY-JOINS$b\n'replay-joins' controls whether replayed channel history will include\nlines for join and part. This provides more information about the context of\nmessages, but may be spammy. Your options are 'always', 'never', and the default\nof 'commands-only' (the messages will be replayed in /HISTORY output, but not\nduring autoreplay).",
22 23
   "$bSADROP$b forcibly de-links the given nickname from its user account.": "$bSADROP$b forcibly de-links the given nickname from its user account.",
23 24
   "$bSAGET$b queries the current values of another user's account settings": "$bSAGET$b queries the current values of another user's account settings",
@@ -46,6 +47,7 @@
46 47
   "Syntax: $bLIST [regex]$b\n\nLIST returns the list of registered nicknames, which match the given regex.\nIf no regex is provided, all registered nicknames are returned.": "Syntax: $bLIST [regex]$b\n\nLIST returns the list of registered nicknames, which match the given regex.\nIf no regex is provided, all registered nicknames are returned.",
47 48
   "Syntax: $bPASSWD <current> <new> <new_again>$b\nOr:     $bPASSWD <username> <new>$b\n\nPASSWD lets you change your account password. You must supply your current\npassword and confirm the new one by typing it twice. If you're an IRC operator\nwith the correct permissions, you can use PASSWD to reset someone else's\npassword by supplying their username and then the desired password. To\nindicate an empty password, use * instead.": "Syntax: $bPASSWD <current> <new> <new_again>$b\nOr:     $bPASSWD <username> <new>$b\n\nPASSWD lets you change your account password. You must supply your current\npassword and confirm the new one by typing it twice. If you're an IRC operator\nwith the correct permissions, you can use PASSWD to reset someone else's\npassword by supplying their username and then the desired password. To\nindicate an empty password, use * instead.",
48 49
   "Syntax: $bREGISTER <password> [email]$b\n\nREGISTER lets you register your current nickname as a user account. If the\nserver allows anonymous registration, you can omit the e-mail address.\n\nIf you are currently logged in with a TLS client certificate and wish to use\nit instead of a password to log in, send * as the password.": "Syntax: $bREGISTER <password> [email]$b\n\nREGISTER lets you register your current nickname as a user account. If the\nserver allows anonymous registration, you can omit the e-mail address.\n\nIf you are currently logged in with a TLS client certificate and wish to use\nit instead of a password to log in, send * as the password.",
50
+  "Syntax: $bRENAME <account> <newname>$b\n\nRENAME allows a server administrator to change the name of an account.\nCurrently, you can only change the canonical casefolding of an account\n(e.g., you can change \"Alice\" to \"alice\", but not \"Alice\" to \"Amanda\").": "Syntax: $bRENAME <account> <newname>$b\n\nRENAME allows a server administrator to change the name of an account.\nCurrently, you can only change the canonical casefolding of an account\n(e.g., you can change \"Alice\" to \"alice\", but not \"Alice\" to \"Amanda\").",
49 51
   "Syntax: $bSADROP <nickname>$b\n\nSADROP forcibly de-links the given nickname from the attached user account.": "Syntax: $bSADROP <nickname>$b\n\nSADROP forcibly de-links the given nickname from the attached user account.",
50 52
   "Syntax: $bSAGET <account> <setting>$b\n\nSAGET queries the values of someone else's account settings. For more\ninformation on the settings and their possible values, see HELP SET.": "Syntax: $bSAGET <account> <setting>$b\n\nSAGET queries the values of someone else's account settings. For more\ninformation on the settings and their possible values, see HELP SET.",
51 53
   "Syntax: $bSAREGISTER <username> [password]$b\n\nSAREGISTER registers an account on someone else's behalf.\nThis is for use in configurations that require SASL for all connections;\nan administrator can set use this command to set up user accounts.": "Syntax: $bSAREGISTER <username> [password]$b\n\nSAREGISTER registers an account on someone else's behalf.\nThis is for use in configurations that require SASL for all connections;\nan administrator can set use this command to set up user accounts.",

Notiek ielāde…
Atcelt
Saglabāt