]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - docs/conf/helpop.conf.example
Sync helpop chmodes s and p with docs
[user/henk/code/inspircd.git] / docs / conf / helpop.conf.example
index f2b1b37a242f27cd0b51faa748930df5f8290aac..3b8d9d675b9a7384172e4317771ad7416e4a1b15 100644 (file)
@@ -3,8 +3,9 @@
 # or you can customize the responses for your network and/or add more.
 #
 # The way the new helpop system works is simple. You use one or more helpop tags.
-#   <helpop key="moo" value="something here">.
-# key is what the user is looking for (i.e. /helpop moo), and value is what they get back
+#   <helpop key="moo" title="something here" value="something here">
+# key is what the user is looking for (i.e. /helpop moo), title is the title, and
+# value is what they get back
 # (note that it can span multiple lines!).
 #   -- w00t 16/dec/2006
 #
@@ -15,8 +16,7 @@
 
 <helpmsg nohelp="There is no help for the topic you searched for. Please try again.">
 
-<helpop key="start" value="InspIRCd Help System
-
+<helpop key="start" title="InspIRCd Help System" value="
 This system provides help for commands and modes.
 Specify your question or a command name as the
 parameter for this command.
@@ -26,192 +26,229 @@ parameter for this command.
 /HELPOP UMODES   -      To see a list of user modes
 /HELPOP CHMODES  -      To see a list of channel modes
 /HELPOP SNOMASKS -      To see a list of oper snotice masks
-/HELPOP EXTBANS  -      To see a list of extended bans">
-
-<helpop key="cuser" value="User Commands
--------------
-
-PRIVMSG   NOTICE   NICK      JOIN      PART
-CYCLE     KNOCK    MODE      OPER      TOPIC
-KICK      FPART    REMOVE    TBAN      INVITE
-UNINVITE  AWAY     DCCALLOW  SILENCE   ACCEPT
-MKPASSWD  VHOST    TITLE     SETNAME
-
-WHOIS     WHOWAS   ISON      USERHOST  WATCH
-LIST      NAMES    WHO       MOTD
-ADMIN     MAP      LINKS     LUSERS    TIME
-STATS     VERSION  INFO      MODULES   COMMANDS
-SSLINFO   SQUERY
-
-USER      PASS     PING     PONG       QUIT">
-
-<helpop key="squery" value="/SQUERY <target> <text>
-
-Sends a message to the network service specified in <target>.">
+/HELPOP EXTBANS  -      To see a list of extended bans
+/HELPOP INDEX    -      To see a list of help topics
+">
 
-<helpop key="sslinfo" value="/SSLINFO <nick>
+<helpop key="cuser" title="User Commands" value="
+ACCEPT      ADMIN       AWAY        COMMANDS    CYCLE       DCCALLOW
+FPART       HEXIP       INFO        INVITE      ISON        JOIN
+KICK        KNOCK       LINKS       LIST        LUSERS      MAP
+MKPASSWD    MODE        MODULES     MONITOR     MOTD        NAMES
+NICK        NOTICE      OPER        PART        PASS        PING
+PONG        PRIVMSG     QUIT        REMOVE      SERVLIST    SETNAME
+SILENCE     SQUERY      SSLINFO     STATS       TBAN        TIME
+TITLE       TOPIC       UNINVITE    USER        USERHOST    VERSION
+VHOST       WATCH       WHO         WHOIS       WHOWAS
+">
 
-Displays information on the SSL connection and certificate of the
-target user.">
+<helpop key="squery" title="/SQUERY <target> :<message>" value="
+Sends a message to the network service specified in <target>.
+">
 
-<helpop key="uninvite" value="/UNINVITE <nick> <channel>
+<helpop key="servlist" title="/SERVLIST [<mask>]" value="
+List network services that are currently connected to the network
+and visible to you. The optional glob-based mask parameter matches
+against the network service nickname.
+">
 
-Uninvite a user from a channel, same syntax as INVITE.">
+<helpop key="sslinfo" title="/SSLINFO <nick>" value="
+Displays information on the TLS (SSL) connection and certificate of the
+target user.
+">
 
-<helpop key="tban" value="/TBAN <channel> <duration> <banmask>
+<helpop key="uninvite" title="/UNINVITE <nick> <channel>" value="
+Uninvite a user from a channel, same syntax as INVITE.
+">
 
+<helpop key="tban" title="/TBAN <channel> <duration> <banmask>" value="
 Sets a timed ban. The duration of the ban can be specified in the
-following format: 1w2d3h4m6s which indicates a ban of one week, two
-days, three hours, four minutes and six seconds. Alternatively the
-ban may just be specified as a number of seconds. All timed bans
-appear in the banlist as normal bans and may be safely removed
-before their time is up.">
+form of 1y2w3d4h5m6s - meaning one year, two weeks, three days,
+four hours, five minutes and six seconds. All fields in this
+format are optional. Alternatively, the ban may just be specified
+as a number of seconds. All timed bans appear in the banlist as
+normal bans and may be safely removed before their time is up.
+">
 
-<helpop key="dccallow" value="/DCCALLOW - List allowed nicks
+<helpop key="dccallow" title="/DCCALLOW [(+|-)<nick> [<time>]]|[LIST|HELP]" value="
+/DCCALLOW - List allowed nicks
 /DCCALLOW LIST - This also lists allowed nicks
 /DCCALLOW +<nick> [<duration>] - Add a nick
 /DCCALLOW -<nick> - Remove a nick
 /DCCALLOW HELP - Display help
 
 Duration is optional, and may be specified in seconds or in the
-form of 1m2h3d4w5y.">
+form of 1y2w3d4h5m6s - meaning one year, two weeks, three days,
+four hours, five minutes and six seconds. All fields in this
+format are optional.
+">
 
-<helpop key="accept" value="/ACCEPT * - List accepted nicks
+<helpop key="accept" title="/ACCEPT *|(+|-)<nick>[,(+|-)<nick>]+" value="
+Manages your accept list. This list is used to determine who can
+private message you when you have user mode +g set.
+
+/ACCEPT * - List accepted nicks
 /ACCEPT +<nick> - Add a nick
 /ACCEPT -<nick> - Remove a nick
-This command accepts multiple nicks like so:
-/ACCEPT +<nick1>,+<nick2>,-<nick3>
-
-Manages your accept list. This list is used to determine who can
-private message you when you have usermode +g set.">
 
-<helpop key="cycle" value="/CYCLE <channel> :[<reason>]
+This command accepts multiple nicks like so:
+/ACCEPT +<nick>,-<nick>,+<nick>
+">
 
+<helpop key="cycle" title="/CYCLE <channel> [:<reason>]" value="
 Cycles a channel (leaving and rejoining), overrides restrictions that
-would stop a new user joining, such as user limits and channel keys.">
-
-<helpop key="title" value="/TITLE <name> <password>
+would stop a new user joining, such as user limits and channel keys.
+">
 
+<helpop key="title" title="/TITLE <username> <password>" value="
 Authenticate for a WHOIS title line and optionally a vhost using the
-specified username and password.">
+specified username and password.
+">
 
-<helpop key="watch" value="/WATCH - List watched nicks that are online
-/WATCH L - List watched nicks, online and offline
-/WATCH C - Clear all watched nicks
-/WATCH S - Show statistics
+<helpop key="watch" title="/WATCH C|L|l|S|(+|-)<nick> [(+|-)<nick>]+" value="
+/WATCH         - List watched nicks that are online
+/WATCH l       - List watched nicks that are online
+/WATCH L       - List watched nicks, online and offline
+/WATCH C       - Clear all watched nicks
+/WATCH S       - Show statistics
 /WATCH +<nick> - Add a nick
 /WATCH -<nick> - Remove a nick
+
 This command accepts multiple nicks like so:
-/WATCH +<nick1> +<nick2> -<nick3>">
+/WATCH +<nick> -<nick> +<nick>
+">
 
-<helpop key="vhost" value="/VHOST <username> <password>
+<helpop key="monitor" title="/MONITOR C|L|S|(+|-) <nick>[,<nick>]+" value="
+/MONITOR L        - List all monitored nicks, not differentiating between
+                    online and offline nicks
+/MONITOR C        - Clear all monitored nicks
+/MONITOR S        - List all monitored nicks, indicating which are online
+                    and which are offline
+/MONITOR + <nick> - Add a nick
+/MONITOR - <nick> - Remove a nick
 
-Authenticate for a vhost using the specified username and password.">
+This command accepts multiple nicks like so:
+/MONITOR + <nick>,<nick>,<nick>
+/MONITOR - <nick>,<nick>,<nick>
+">
 
-<helpop key="remove" value="/REMOVE <channel> <nick> [<reason>]
+<helpop key="vhost" title="/VHOST <username> <password>" value="
+Authenticate for a vhost using the specified username and password.
+">
 
+<helpop key="remove" title="/REMOVE <channel> <nick> [:<reason>]" value="
 Removes a user from a channel you specify. You must be at least a
 channel halfoperator to remove a user. A removed user will part with
-a message stating they were removed from the channel and by whom.">
+a message stating they were removed from the channel and by whom.
+">
 
-<helpop key="rmode" value="/RMODE [channel] [modeletter] {[pattern]}
+<helpop key="rmode" title="/RMODE <channel> <mode> [<pattern>]" value="
+Removes listmodes from a channel, optionally matching a glob-based pattern.
+E.g. '/RMODE #channel b m:*' will remove all mute extbans on the channel.
+">
 
-Removes listmodes from a channel.
-E.g. /RMODE #Chan b m:* will remove all mute extbans.">
+<helpop key="fpart" title="/FPART <channel> <nick> [:<reason>]" value="
+This behaves identically to /REMOVE. /REMOVE is a built-in mIRC command
+which caused trouble for some users.
+">
 
-<helpop key="fpart" value="/FPART <channel> <nick> [<reason>]
+<helpop key="hexip" title="/HEXIP <hex-ip|raw-ip>" value="
+If the specified argument is a raw IP address then respond with the
+hex encoded equivalent as if sent by an ident gateway. Otherwise, if
+the specified argument is a hex encoded IP address then respond with
+the equivalent raw IP address.
+">
 
-This behaves identically to /REMOVE. /REMOVE is a built-in mIRC command
-which caused trouble for some users.">
+<helpop key="silence" title="/SILENCE [(+|-)<mask> [CcdiNnPpTtx]]" value="
+A server-side ignore of the given n!u@h mask. If the optional flags field is
+specified then it must contain one or more flags which specify what kind of
+messages should be blocked and how they should be blocked.
 
-<helpop key="silence" value="/SILENCE - Shows a list of silenced masks
+/SILENCE - Shows a list of silenced masks
 /SILENCE +<mask> [<flags>] - Add a mask
 /SILENCE -<mask> - Remove a mask
 
-A serverside ignore of the given n!u@h mask. The letter(s) at the end
-specify what is to be ignored from this hostmask.
-
 Valid SILENCE Flags
 -------------------
+ C    Matches a CTCP targeted at a user.
+ c    Matches a CTCP targeted at a channel.
+ d    Default behaviour; equivalent to CciNnPpTt.
+ i    Matches an invite to a channel.
+ N    Matches a NOTICE targeted at a user.
+ n    Matches a NOTICE targeted at a channel.
+ P    Matches a PRIVMSG targeted at a user.
+ p    Matches a PRIVMSG targeted at a channel.
+ T    Matches a TAGMSG targeted at a user.
+ t    Matches a TAGMSG targeted at a channel.
+ x    Exempt the mask from silence rules.
+
+Any combination of flags is valid.
+">
 
- p        Block private messages
- c        Block channel messages
- i        Block invites
- n        Block private notices
- t        Block channel notices
- a        Block all of the above
- x        Exception
-
-Multiple letters may be specified. For an exception, you must pair x
-with what you want excepted. For example, if you wanted to except
-everything from people with a host matching *.foo.net, you would do
-/SILENCE +*!*@*.foo.net xa
-
-/SILENCE without a parameter will list the masks that you have silenced.">
-
-<helpop key="knock" value="/KNOCK <channel>
-
-Sends a notice to a channel indicating you wish to join.">
-
-<helpop key="user" value="/USER <ident> <local host> <remote host> :<real name>
+<helpop key="knock" title="/KNOCK <channel> :<reason>" value="
+Sends a notice to a channel indicating you wish to join.
+">
 
+<helpop key="user" title="/USER <username> <unused> <unused> :<realname>" value="
 This command is used by your client to register your
 IRC session, providing your ident and real name to the
 server.
 
-You should not use it during an established connection.">
-
-<helpop key="nick" value="/NICK <new nick>
-
-Change your nickname to <new nick>.">
-
-<helpop key="quit" value="/QUIT [<reason>]
-
-Quit from IRC and end your current session.">
-
-<helpop key="version" value="/VERSION
+You should not use it during an established connection.
+">
 
-Returns the server's version information.">
+<helpop key="nick" title="/NICK <newnick>" value="
+Change your nickname to <newnick>.
+">
 
-<helpop key="ping" value="/PING <server>
+<helpop key="quit" title="/QUIT [:<message>]" value="
+Quit from IRC and end your current session.
+">
 
-Ping a server. The server will answer with a PONG.">
+<helpop key="version" title="/VERSION [<servername>]" value="
+Returns the server's version information.
+">
 
-<helpop key="pong" value="/PONG <server>
+<helpop key="ping" title="/PING <cookie> [<servername>]" value="
+Ping a server. The server will answer with a PONG.
+">
 
+<helpop key="pong" title="/PONG <cookie> [<servername>]" value="
 Your client should send this to answer server PINGs. You
-should not issue this command manually.">
-
-<helpop key="admin" value="/ADMIN [<server>]
-
-Shows the administrative information for the given server.">
-
-<helpop key="privmsg" value="/PRIVMSG <target> <text>
-
-Sends a message to a user or channel specified in <target>.">
-
-<helpop key="notice" value="/NOTICE <target> <text>
-
-Sends a notice to a user or channel specified in <target>.">
-
-<helpop key="join" value="/JOIN <channel>[,<channel>] [<key>][,<key>]
+should not issue this command manually.
+">
 
-Joins one or more channels you provide the names for.">
+<helpop key="admin" title="/ADMIN [<servername>]" value="
+Shows the administrative information for the given server.
+">
 
-<helpop key="names" value="/NAMES <channel>[,<channel>]
+<helpop key="privmsg" title="/PRIVMSG <target>[,<target>]+ :<message>" value="
+Sends a message to a user or channel specified in <target>.
+">
 
-Return a list of users on the channels you provide.">
+<helpop key="notice" title="/NOTICE <target>[,<target>]+ :<message>" value="
+Sends a notice to a user or channel specified in <target>.
+">
 
-<helpop key="part" value="/PART <channel>[,<channel>] [<reason>]
+<helpop key="join" title="/JOIN <channel>[,<channel>]+ [<key>[,<key>]+]" value="
+Joins one or more channels you provide the names for.
+">
 
-Leaves one or more channels you specify.">
+<helpop key="names" title="/NAMES [<channel>[,<channel>]+]" value="
+Return a list of users on the channel(s) you provide.
+">
 
-<helpop key="kick" value="/KICK <channel> <nick>[,<nick>] [<reason>]
+<helpop key="part" title="/PART <channel>[,<channel>]+ [:<reason>]" value="
+Leaves one or more channels you specify.
+">
 
+<helpop key="kick" title="/KICK <channel> <nick>[,<nick>]+ [:<reason>]" value="
 Kicks a user from a channel you specify. You must be
-at least a channel halfoperator to kick a user.">
+at least a channel halfoperator to kick a user.
+">
 
-<helpop key="mode" value="/MODE <target> (+|-)<modes> [<mode parameters>] - Change modes of <target>.
+<helpop key="mode" title="/MODE <target> [[(+|-)]<modes> [<mode-parameters>]]" value="
+Change or view modes of <target>.
 
 /MODE <target> - Show modes of <target>.
 
@@ -219,21 +256,21 @@ at least a channel halfoperator to kick a user.">
 
 Sets the mode for a channel or a nickname specified in <target>.
 A user may only set modes upon themselves, and may not set the
-+o usermode, and a user may only change channel modes of
++o user mode, and a user may only change channel modes of
 channels where they are at least a halfoperator.
 
 For a list of all user and channel modes, enter /HELPOP UMODES or
-/HELPOP CHMODES.">
-
-<helpop key="topic" value="/TOPIC <channel> [<topic>]
+/HELPOP CHMODES.
+">
 
+<helpop key="topic" title="/TOPIC <channel> [:<topic>]" value="
 Sets or retrieves the channel topic. If a channel topic is
 given in the command and either the channel is not +t, or
 you are at least a halfoperator, the channel topic will be
-changed to the new one you provide.">
-
-<helpop key="who" value="/WHO <pattern> [<flags>][%[<fields>[,<querytype>]]] <pattern>
+changed to the new one you provide.
+">
 
+<helpop key="who" title="/WHO <pattern> [<flags>][%[<fields>[,<querytype>]]] <pattern>" value="
 Looks up information about users matching the provided pattern. You can specify
 a flag specific pattern, a channel name, user hostname, a user server name, a
 user real name, or a user nickname. Matching users will only be included in the
@@ -309,47 +346,47 @@ Valid WHO Fields
  t     Include the query type in the response.
  u     Include the user's ident in the response.
 
-">
 
-<helpop key="motd" value="/MOTD [<server>]
+">
 
+<helpop key="motd" title="/MOTD [<servername>]" value="
 Show the message of the day for <server>. Messages of the day often
 contain important server rules and notices and should be read prior
-to using a server.">
-
-<helpop key="oper" value="/OPER <login> <password>
+to using a server.
+">
 
-Attempts to authenticate a user as an IRC operator.
+<helpop key="oper" title="/OPER <username> <password>" value="
+Attempts to authenticate as a server operator.
 
 Both successful and unsuccessful oper attempts are
-logged, and sent to online IRC operators.">
-
-<helpop key="list" value="/LIST [<pattern>]
+logged, and sent to online server operators.
+">
 
+<helpop key="list" title="/LIST [<pattern>]" value="
 Creates a list of all existing channels matching the glob pattern
-<pattern>, e.g. *chat* or bot*.">
-
-<helpop key="lusers" value="/LUSERS
-
-Shows a count of local and remote users, servers and channels.">
+<pattern>, e.g. *chat* or bot*.
+">
 
-<helpop key="userhost" value="/USERHOST <nick> [<nick>]
+<helpop key="lusers" title="/LUSERS" value="
+Shows a count of local and remote users, servers and channels.
+">
 
+<helpop key="userhost" title="/USERHOST <nick> [<nick>]+" value="
 Returns the hostname and nickname of a user, and some other
-miscellaneous information.">
-
-<helpop key="away" value="/AWAY [<message>]
+miscellaneous information.
+">
 
+<helpop key="away" title="/AWAY [:<message>]" value="
 If a message is given, marks you as being away, otherwise
-removes your away status and previous message.">
-
-<helpop key="ison" value="/ISON <nick> [<nick> ...]
+removes your away status and previous message.
+">
 
+<helpop key="ison" title="/ISON <nick> [<nick>]+" value="
 Returns a subset of the nicks you give, showing only those
-that are currently online.">
-
-<helpop key="invite" value="/INVITE <nick> <channel> [<time>]
+that are currently online.
+">
 
+<helpop key="invite" title="/INVITE [<nick> <channel> [<time>]]" value="
 Invites a user to a channel. If the channel is NOT +A, only
 channel halfoperators or above can invite people. If +A is set,
 anyone can invite people to the channel, as long as the person
@@ -360,140 +397,114 @@ Invited users may override bans, +k, and similar in addition to
 +i, depending on configuration.
 
 If a time is provided, the invite expires after that time and the user
-can no longer use it to enter the channel.">
-
-<helpop key="pass" value="/PASS <password>
+can no longer use it to enter the channel. The time can be specified
+in the form of 1y2w3d4h5m6s - meaning one year, two weeks, three days,
+four hours, five minutes and six seconds. All fields in this format
+are optional. Alternatively, the time may just be specified as a number
+of seconds.
+
+/INVITE without a parameter will list pending invitations for channels
+you have been invited to.
+">
 
+<helpop key="pass" title="/PASS <password>" value="
 This command is used by your client when setting up
 your IRC session to submit a server password to the
 server.
 
-You should not use it during an established connection.">
-
-<helpop key="whowas" value="/WHOWAS <nick>
+You should not use it during an established connection.
+">
 
+<helpop key="whowas" title="/WHOWAS <nick>" value="
 Returns a list of times the user was seen recently on IRC along with
-the time they were last seen and their server.">
-
-<helpop key="links" value="/LINKS
-
-Shows all servers linked to this one.">
+the time they were last seen and their server.
+">
 
-<helpop key="map" value="/MAP
+<helpop key="links" title="/LINKS" value="
+Shows all linked servers.
+">
 
+<helpop key="map" title="/MAP" value="
 Shows a graphical representation of all users and servers on the
 network, and the links between them, as a tree from the perspective
-of your server.">
-
-<helpop key="whois" value="/WHOIS <nick> [<server>]
+of your server.
+">
 
+<helpop key="whois" title="/WHOIS [<servername>] <nick>[,<nick>]+" value="
 Returns the WHOIS information of a user, their channels, hostname,
-etc. If a second nickname or server is provided, then a whois is
-performed from the server where the user is actually located rather
-than locally, showing idle and signon times.">
-
-<helpop key="time" value="/TIME [<server>]
+etc. If a servername is provided, then a whois is performed from
+the server where the user is actually located rather than locally,
+showing idle and signon times.
+">
 
+<helpop key="time" title="/TIME [<servername>]" value="
 Returns the local time of the server, or remote time of another
-server.">
-
-<helpop key="info" value="/INFO [<server>]
+server.
+">
 
+<helpop key="info" title="/INFO [<servername>]" value="
 Returns information on the developers and supporters who made this
-IRC server possible.">
-
-<helpop key="setname" value="/SETNAME <name>
-
-Sets your name to the specified name.">
-
-
-<helpop key="coper" value="Oper Commands
--------------
-
-OPERMOTD  CHECK     CLONES      USERIP   TLINE
-ALLTIME   WALLOPS   GLOBOPS     MODENOTICE
-CLOAK
-
-SETHOST   SETIDENT  CHGHOST     CHGIDENT CHGNAME
-SETIDLE   SWHOIS
-
-SANICK    NICKLOCK  NICKUNLOCK
-
-SAJOIN    SAPART    SAMODE      SATOPIC  SAKICK
-
-KILL      SAQUIT    GLINE       ZLINE    QLINE
-KLINE     RLINE     ELINE       CBAN     SHUN
-FILTER    OJOIN     CLEARCHAN
-
-CONNECT   SQUIT     RCONNECT    RSQUIT
+IRC server possible.
+">
 
-DIE            RESTART      REHASH
-               LOADMODULE   UNLOADMODULE
-RELOADMODULE   GLOADMODULE  GUNLOADMODULE
-GRELOADMODULE  CLOSE        JUMPSERVER
-LOCKSERV       UNLOCKSERV">
+<helpop key="setname" title="/SETNAME :<realname>" value="
+Sets your real name to the specified real name.
+">
 
-<helpop key="userip" value="/USERIP <nick> [<nick>]
 
-Returns the ip and nickname of the given users.">
+<helpop key="coper" title="Oper Commands" value="
+ALLTIME        CBAN           CHECK          CHGHOST        CHGIDENT
+CHGNAME        CLEARCHAN      CLOAK          CLONES         CONNECT
+DIE            ELINE          FILTER         GLINE          GLOADMODULE
+GLOBOPS        GRELOADMODULE  GUNLOADMODULE  KILL           KLINE
+LOADMODULE     LOCKSERV       MODENOTICE     NICKLOCK       NICKUNLOCK
+OJOIN          OPERMOTD       QLINE          RCONNECT       REHASH
+RELOADMODULE   RESTART        RLINE          RSQUIT         SAJOIN
+SAKICK         SAMODE         SANICK         SAPART         SAQUIT
+SATOPIC        SETHOST        SETIDENT       SETIDLE        SHUN
+SQUIT          SWHOIS         TLINE          UNLOADMODULE   UNLOCKSERV
+USERIP         WALLOPS        ZLINE
+">
 
-<helpop key="tline" value="/TLINE <mask>
+<helpop key="userip" title="/USERIP <nick> [<nick>]+" value="
+Returns the IP address and nickname of the given user(s).
+">
 
+<helpop key="tline" title="/TLINE <mask>" value="
 This command returns the number of local and global clients matched,
 and the percentage of clients matched, plus how they were matched
-(by IP address or by hostname). Mask should be given as either a
-nick!user@host or user@IP (wildcards acceptable).">
-
-<helpop key="lockserv" value="/LOCKSERV :[<message>]
+(by IP address or by hostname). Mask should be given as either
+nick!user@host or user@IP (wildcards and CIDR blocks are accepted).
+">
 
+<helpop key="lockserv" title="/LOCKSERV [:<message>]" value="
 Locks out all new connections notifying connecting users that the
-service is temporarily closed and to try again later.">
-
-<helpop key="unlockserv" value="/UNLOCKSERV
-
-Opens the server up again for new connections.">
-
-<helpop key="jumpserver" value="/JUMPSERVER [<newserver> <newport> <(+|-)[flags]> :[<reason>]]
-
-Sets or cancels jumpserver mode. If no parameters are given,
-jumpserver mode is cancelled, if it is currently set. If parameters
-are given, a server address must be given for <newserver> and a
-server port must be given for <newport>. Zero or more status flags
-should be given for 'flags', from the list below (if you do not
-wish to specify any flags just place a '+' in this field):
-
-1. +a: Redirect all users immediately (except for opers) and cause
-them to quit with the given reason
-
-2. +n: Redirect any new users who connect and cause them to quit
-during registration
-
-You may use + and - to set or unset these flags in the command, the
-default flags are -a+n, which will just redirect new users. The
-reason parameter is optional, and if not provided defaults to
-'Please use this server/port instead' (the default given in various
-numeric lists)">
+service is temporarily closed and to try again later.
+">
 
-<helpop key="filter" value="/FILTER <filter-definition> [<action> <flags> [<duration>] :<reason>]
+<helpop key="unlockserv" title="/UNLOCKSERV" value="
+Opens the server up again for new connections.
+">
 
-This command will add a filter when more than one parameter is given,
-for messages of the types specified by the flags, with the given
-filter definition, action, duration (when the action is 'gline',
-'zline' or 'shun'), and reason.
+<helpop key="filter" title="/FILTER <pattern> [<action> <flags> [<duration>] :<reason>]" value="
+This command will add a global filter when more than one parameter is
+given, for messages of the types specified by the flags, with the given
+filter pattern, action, duration (when the action is 'gline', 'zline'
+or 'shun'), and reason.
 
 The filter will take effect when a message of any type specified by
-the flags and matching the definition is sent to the server, and
+the flags and matching the pattern is sent to the server, and
 perform the specified action.
 
 Valid FILTER Actions
 --------------------
 
 None    Does nothing
-Warn    Lets the message through and informs +s IRCops of the message
-        and all relevant info
-Block   Blocks message and informs +s IRCops of the blocked message
-        and all relevant info
-Silent  Blocks message, but does not notify IRCops
+Warn    Lets the message through and informs +s server operators
+        of the message and all relevant info
+Block   Blocks message and informs +s server operators of the blocked
+        message and all relevant info
+Silent  Blocks message, but does not notify server operators
 Kill    Kills the user
 Gline   G-lines the user for the specified duration
 Zline   Z-lines the user for the specified duration
@@ -507,8 +518,9 @@ n    Block private and channel notices
 P    Block part messages
 q    Block quit messages
 o    Don't match against opers
+r    Don't match against registered users
 c    Strip all formatting codes from the message before matching
-*    Represents all of the above flags
+*    Represents all of the above flags except r
 -    Does nothing, a non-op for when you do not want to specify any
      flags
 
@@ -523,345 +535,353 @@ minutes and 6 seconds. All fields in this format are optional.
 When only one parameter is provided (the filter pattern) the provided
 filter will be removed. Note that if you remove a
 configuration-defined filter, it will reappear at next rehash unless
-it is also removed from the config file.">
-
-<helpop key="ojoin" value="/OJOIN <channel>
+it is also removed from the config file.
+">
 
+<helpop key="ojoin" title="/OJOIN <channel>" value="
 Force joins you to the specified channel, and gives you +Y and any other
 configuration-defined modes on it, preventing you from being kicked.
 Depending on configuration, may announce that you have joined the
-channel on official network business.">
-
-<helpop key="clones" value="/CLONES <limit>
+channel on official network business.
+">
 
+<helpop key="clones" title="/CLONES <limit>" value="
 Retrieves a list of users with more clones than the specified
-limit.">
-
-<helpop key="check" value="/CHECK <nick|ip|hostmask|channel> [<server>]
+limit.
+">
 
-Allows opers to look up advanced information on channels, hostmasks
-or IP addresses, in a similar way to WHO but in more detail, displaying
-most information the IRCD has stored on the target, including all
-metadata.
+<helpop key="check" title="/CHECK <nick>|<ipmask>|<hostmask>|<channel> [<servername>]" value="
+Allows opers to look up advanced information on nicknames, IP addresses,
+hostmasks or channels, in a similar way to WHO but in more detail,
+displaying most information the server has stored on the target,
+including all metadata.
 
 With the second parameter given, runs the command remotely on the
-specified server.">
-
-<helpop key="alltime" value="/ALLTIME
-
-Shows the time on all servers on the network.">
-
-<helpop key="rconnect" value="/RCONNECT <source mask> <target mask>
-
-The server matching <source mask> will try to connect to the first
-server in the config file matching <target mask>.">
-
-<helpop key="rsquit" value="/RSQUIT <target mask> [<reason>]
+specified server, useful especially if used on a nickname that is
+online on a remote server.
+">
 
-Causes a remote server matching <target mask> to be disconnected from
-the network.">
+<helpop key="alltime" title="/ALLTIME" value="
+Shows the date and time of all servers on the network.
+">
 
-<helpop key="globops" value="/GLOBOPS <message>
+<helpop key="rconnect" title="/RCONNECT <remote-server-mask> <target-server-mask>" value="
+The server matching <remote-server-mask> will try to connect to the first
+server in the config file matching <target-server-mask>.
+">
 
-Sends a message to all users with the +g snomask.">
+<helpop key="rsquit" title="/RSQUIT <target-server-mask> [:<reason>]" value="
+Causes a remote server matching <target-server-mask> to be disconnected from
+the network.
+">
 
-<helpop key="cban" value="/CBAN <channel> [<duration> :[<reason>]]
+<helpop key="globops" title="/GLOBOPS :<message>" value="
+Sends a message to all users with the +g snomask.
+">
 
-Sets or removes a channel ban. You must specify all three parameters
-to add a ban, and one parameter to remove a ban (just the channel).
+<helpop key="cban" title="/CBAN <channelmask> [<duration> [:<reason>]]" value="
+Sets or removes a global channel based ban. You must specify all three parameters
+to add a ban, and one parameter to remove a ban (just the channelmask).
 
 The duration may be specified in seconds, or in the format
-1y2w3d4h5m6s - meaning one year, two weeks, three days, 4 hours,
-5 minutes and 6 seconds. All fields in this format are optional.">
-
-<helpop key="sajoin" value="/SAJOIN [<nick>] <channel>[,<channel>]
+1y2w3d4h5m6s - meaning one year, two weeks, three days, four hours,
+five minutes and six seconds. All fields in this format are optional.
+">
 
+<helpop key="sajoin" title="/SAJOIN [<nick>] <channel>[,<channel>]+" value="
 Forces the user to join the channel(s).
-If no nick is given, it joins the oper doing the /SAJOIN.">
-
-<helpop key="sapart" value="/SAPART <nick> <channel>[,<channel>]
-
-Forces the user to part the channel(s).">
-
-<helpop key="samode" value="/SAMODE <target> (+|-)<modes> [<parameters for modes>]
-
-Applies the given mode change to the channel or nick specified.">
-
-<helpop key="sanick" value="/SANICK <nick> <new nick>
-
-Changes the user's nick to the new nick.">
-
-<helpop key="sakick" value="/SAKICK <channel> <nick> <reason>
-
-Kicks the given user from the specified channel.">
-
-<helpop key="satopic" value="/SATOPIC <channel> <new topic>
+If no nick is given, it joins the oper doing the /SAJOIN.
+">
 
-Applies the given topic to the specified channel.">
+<helpop key="sapart" title="/SAPART <nick> <channel>[,<channel>]+ [:<reason>]" value="
+Forces the user to part the channel(s), with an optional reason.
+">
 
-<helpop key="saquit" value="/SAQUIT <nick> <reason>
+<helpop key="samode" title="/SAMODE <target> (+|-)<modes> [<mode-parameters>]" value="
+Applies the given mode change to the channel or nick specified.
+">
 
-Forces user to quit with the specified reason.">
+<helpop key="sanick" title="/SANICK <nick> <newnick>" value="
+Changes the user's nick to the new nick.
+">
 
-<helpop key="setidle" value="/SETIDLE <idle time>
+<helpop key="sakick" title="/SAKICK <channel> <nick> [:<reason>]" value="
+Kicks the given user from the specified channel, with an optional reason.
+">
 
-Sets your idle time (in seconds) to the specified value.">
+<helpop key="satopic" title="/SATOPIC <channel> :<topic>" value="
+Applies the given topic to the specified channel.
+">
 
-<helpop key="sethost" value="/SETHOST <host>
+<helpop key="saquit" title="/SAQUIT <nick> :<reason>" value="
+Forces user to quit with the specified reason.
+">
 
-Sets your host to the specified host.">
+<helpop key="setidle" title="/SETIDLE <duration>" value="
+Sets your idle time to the specified value.
 
-<helpop key="setident" value="/SETIDENT <ident>
+The time can be specified in the form of 1y2w3d4h5m6s - meaning one year,
+two weeks, three days, four hours, five minutes and six seconds.
+All fields in this format are optional. Alternatively, the time may
+just be specified as a number of seconds.
+">
 
-Sets your ident to the specified ident.">
+<helpop key="sethost" title="/SETHOST <host>" value="
+Sets your host to the specified host.
+">
 
-<helpop key="swhois" line="/SWHOIS <nick> <swhois>
+<helpop key="setident" title="/SETIDENT <ident>" value="
+Sets your ident to the specified ident.
+">
 
-Sets the user's swhois field to the given swhois.">
+<helpop key="swhois" title="/SWHOIS <nick> :<swhois>" value="
+Sets the user's swhois field to the given swhois message.
+This will be visible in their /WHOIS.
 
-<helpop key="mkpasswd" value="/MKPASSWD <hashtype> <plaintext>
+To remove this message again, use:
+/SWHOIS <nick> :
+">
 
+<helpop key="mkpasswd" title="/MKPASSWD <hashtype> <plaintext>" value="
 Encodes the plaintext to a hash of the given type and displays
-the result.">
-
-<helpop key="opermotd" value="/OPERMOTD
-
-Displays the Oper MOTD.">
+the result.
+">
 
-<helpop key="nicklock" value="/NICKLOCK <nick> <new nick>
+<helpop key="opermotd" title="/OPERMOTD [<servername>]" value="
+Displays the Oper MOTD.
+">
 
+<helpop key="nicklock" title="/NICKLOCK <nick> <newnick>" value="
 Changes the user's nick to the new nick, and forces
-it to remain as such for the remainder of the session.">
-
-<helpop key="nickunlock" value="/NICKUNLOCK <nick>
-
-Allows a previously locked user to change nicks again.">
-
-<helpop key="chghost" value="/CHGHOST <nickname> <new hostname>
-
-Changes the hostname of the user to the new hostname.">
-
-<helpop key="chgname" value="/CHGNAME <nickname> <new name>
+it to remain as such for the remainder of the session.
+">
 
-Changes the name of the user to the new name.">
+<helpop key="nickunlock" title="/NICKUNLOCK <nick>" value="
+Allows a previously locked user to change nicks again.
+">
 
-<helpop key="chgident" value="/CHGIDENT <nickname> <new ident>
+<helpop key="chghost" title="/CHGHOST <nick> <host>" value="
+Changes the host of the user to the specified host.
+">
 
-Changes the ident of the user to the new ident.">
+<helpop key="chgname" title="/CHGNAME <nick> :<realname>" value="
+Changes the real name of the user to the specified real name.
+">
 
-<helpop key="shun" value="/SHUN <nick!user@host> [[<duration>] :<reason>]
+<helpop key="chgident" title="/CHGIDENT <nick> <ident>" value="
+Changes the ident of the user to the specified ident.
+">
 
-Sets or removes a shun (server side ignore) on a host and ident mask.
+<helpop key="shun" title="/SHUN <nick!user@host> [<duration> :<reason>]" value="
+Sets or removes a shun (global server-side ignore) on a nick!user@host mask.
 You must specify all three parameters to add a shun, and one parameter
-to remove a shun (just the nick!user@host section).
+to remove a shun (just the nick!user@host).
 
 The duration may be specified in seconds, or in the format
-1y2w3d4h5m6s - meaning one year, two weeks, three days, 4 hours,
-5 minutes and 6 seconds. All fields in this format are optional.">
-
-<helpop key="die" value="/DIE <server>
+1y2w3d4h5m6s - meaning one year, two weeks, three days, four hours,
+five minutes and six seconds. All fields in this format are optional.
+">
 
+<helpop key="die" title="/DIE <servername>" value="
 This command shuts down the local server. A single parameter is
-required, which must match the name of the local server.">
-
-<helpop key="restart" value="/RESTART <server>
+required, which must match the name of the local server.
+">
 
+<helpop key="restart" title="/RESTART <servername>" value="
 This command restarts the local server. A single parameter is
-required, which must match the name of the local server.">
-
-<helpop key="commands" value="/COMMANDS
-
-Shows all currently available commands.">
-
-<helpop key="kill" value="/KILL <user> <reason>
+required, which must match the name of the local server.
+">
 
-This command will disconnect a user from IRC with the given reason.">
+<helpop key="commands" title="/COMMANDS" value="
+Shows all currently available commands.
+">
 
-<helpop key="rehash" value="/REHASH <mask>
+<helpop key="kill" title="/KILL <nick>[,<nick>]+ :<reason>" value="
+This command will disconnect a user from IRC with the given reason.
+">
 
+<helpop key="rehash" title="/REHASH [<servermask>]" value="
 This command will cause the server configuration file to be reread and
 values reinitialized for all servers matching the server mask, or the
-local server if one is not specified.">
-
-<helpop key="connect" value="/CONNECT <servermask>
+local server if one is not specified.
+">
 
+<helpop key="connect" title="/CONNECT <servermask>" value="
 Add a connection to the server matching the given server mask. You must
 have configured the server for linking in your configuration file
-before trying to link them.">
-
-<helpop key="squit" value="/SQUIT <servermask>
-
-Disconnects the server matching the given server mask from this server.">
+before trying to link them.
+">
 
-<helpop key="modules" value="/MODULES
+<helpop key="squit" title="/SQUIT <servermask>" value="
+Disconnects the server matching the given server mask from this server.
+">
 
+<helpop key="modules" title="/MODULES [<servername>]" value="
 Lists currently loaded modules, their memory offsets, version numbers,
-and flags. If you are not an operator, you will see reduced detail.">
-
-<helpop key="loadmodule" value="/LOADMODULE <modname>
-
-Loads the specified module into the local server.">
-
-<helpop key="unloadmodule" value="/UNLOADMODULE <modname>
-
-Unloads a module from the local server.">
-
-<helpop key="reloadmodule" value="/RELOADMODULE <modname>
-
-Unloads and reloads a module on the local server.">
-
-<helpop key="gloadmodule" value="/GLOADMODULE <modname>
+and flags. If you are not an operator, you will see reduced detail.
+">
 
-Loads the specified module on all linked servers.">
+<helpop key="loadmodule" title="/LOADMODULE <modulename>" value="
+Loads the specified module into the local server.
+">
 
-<helpop key="gunloadmodule" value="/GUNLOADMODULE <modname>
+<helpop key="unloadmodule" title="/UNLOADMODULE <modulename>" value="
+Unloads a module from the local server.
+">
 
-Unloads a module from all linked servers.">
+<helpop key="reloadmodule" title="/RELOADMODULE <modulename>" value="
+Unloads and reloads a module on the local server.
+">
 
-<helpop key="greloadmodule" value="/GRELOADMODULE <modname>
+<helpop key="gloadmodule" title="/GLOADMODULE <modulename> [<servermask>]" value="
+Loads the specified module on all linked servers.
+">
 
-Unloads and reloads a module on all linked servers.">
+<helpop key="gunloadmodule" title="/GUNLOADMODULE <modulename> [<servermask>]" value="
+Unloads a module from all linked servers.
+">
 
-<helpop key="kline" value="/KLINE <user@host> [<duration> :<reason>]
+<helpop key="greloadmodule" title="/GRELOADMODULE <modulename> [<servermask>]" value="
+Unloads and reloads a module on all linked servers.
+">
 
-Sets or removes a K-line (local host based ban) on a host and ident mask.
+<helpop key="kline" title="/KLINE <user@host> [<duration> :<reason>]" value="
+Sets or removes a K-line (local user@host based ban) on a user@host mask.
 You must specify all three parameters to add a ban, and one parameter
-to remove a ban (just the user@host section).
+to remove a ban (just the user@host).
 
 The duration may be specified in seconds, or in the format
-1y2w3d4h5m6s - meaning one year, two weeks, three days, 4 hours,
-5 minutes and 6 seconds. All fields in this format are optional.">
-
-<helpop key="zline" value="/ZLINE <ipmask> [<duration> :<reason>]
+1y2w3d4h5m6s - meaning one year, two weeks, three days, four hours,
+five minutes and six seconds. All fields in this format are optional.
+">
 
-Sets or removes a Z-line (ip based ban) on an ip range mask.
+<helpop key="zline" title="/ZLINE <ipmask> [<duration> :<reason>]" value="
+Sets or removes a Z-line (global IP based ban) on an IP mask.
 You must specify all three parameters to add a ban, and one parameter
 to remove a ban (just the ipmask).
 
 The duration may be specified in seconds, or in the format
-1y2w3d4h5m6s - meaning one year, two weeks, three days, 4 hours,
-5 minutes and 6 seconds. All fields in this format are optional.">
-
-<helpop key="qline" value="/QLINE <nickmask> [<duration> :<reason>]
+1y2w3d4h5m6s - meaning one year, two weeks, three days, four hours,
+five minutes and six seconds. All fields in this format are optional.
+">
 
-Sets or removes a Q-line (nick based ban) on a nick mask.
+<helpop key="qline" title="/QLINE <nickmask> [<duration> :<reason>]" value="
+Sets or removes a Q-line (global nick based ban) on a nick mask.
 You must specify all three parameters to add a ban, and one parameter
 to remove a ban (just the nickmask).
 
 The duration may be specified in seconds, or in the format
-1y2w3d4h5m6s - meaning one year, two weeks, three days, 4 hours,
-5 minutes and 6 seconds. All fields in this format are optional.">
-
-<helpop key="gline" value="/GLINE <user@host> [<duration> :<reason>]
+1y2w3d4h5m6s - meaning one year, two weeks, three days, four hours,
+five minutes and six seconds. All fields in this format are optional.
+">
 
-Sets or removes a G-line (host based ban) on host mask.
+<helpop key="gline" title="/GLINE <user@host> [<duration> :<reason>]" value="
+Sets or removes a G-line (global user@host based ban) on a user@host mask.
 You must specify all three parameters to add a ban, and one
-parameter to remove a ban (just the user@host section).
+parameter to remove a ban (just the user@host).
 
 The duration may be specified in seconds, or in the format
-1y2w3d4h5m6s - meaning one year, two weeks, three days, 4 hours,
-5 minutes and 6 seconds. All fields in this format are optional.">
-
-<helpop key="eline" value="/ELINE <user@host> [<duration> :<reason>]
+1y2w3d4h5m6s - meaning one year, two weeks, three days, four hours,
+five minutes and six seconds. All fields in this format are optional.
+">
 
-Sets or removes a E-line (global ban exception) on host mask.
+<helpop key="eline" title="/ELINE <user@host> [<duration> :<reason>]" value="
+Sets or removes a E-line (global user@host ban exception) on a user@host mask.
 You must specify at least 3 parameters to add an exception, and one
-parameter to remove an exception (just the user@host section).
+parameter to remove an exception (just the user@host).
 
 The duration may be specified in seconds, or in the format
-1y2w3d4h5m6s - meaning one year, two weeks, three days, 4 hours,
-5 minutes and 6 seconds. All fields in this format are optional.
+1y2w3d4h5m6s - meaning one year, two weeks, three days, four hours,
+five minutes and six seconds. All fields in this format are optional.
 
 This command has a few important limitations. Bans on *@<ip> can only
 be negated by an E-line on *@<ip>, bans on *@<host> can be negated by
 E-lines on *@<ip>, or *@<host>, and bans on <ident>@* or <ident>@<host>
-can be negated by any E-line that matches.">
-
-<helpop key="wallops" value="/WALLOPS <message>
-
-Sends a message to all +w users.">
+can be negated by any E-line that matches.
+">
 
-<helpop key="rline" value="/RLINE <regex> [<duration> :<reason>]
+<helpop key="wallops" title="/WALLOPS :<message>" value="
+Sends a message to all +w users.
+">
 
-Sets or removes an R-line (regex line) on a n!u@h\srealname mask. You
+<helpop key="rline" title="/RLINE <regex> [<duration> :<reason>]" value="
+Sets or removes an R-line (global regex ban) on a n!u@h\srealname mask. You
 must specify all three parameters to add an R-line, and one parameter
 to remove an R-line (just the regex).
 
 The duration may be specified in seconds, or in the format
-1y2w3d4h5m6s - meaning one year, two weeks, three days, 4 hours,
-5 minutes and 6 seconds. All fields in this format are optional.">
-
-<helpop key="close" value="/CLOSE
-
-Closes all unregistered connections to the local server.">
-
-<helpop key="clearchan" value="/CLEARCHAN <channel> [<KILL|KICK|G|Z>] [<reason>]
+1y2w3d4h5m6s - meaning one year, two weeks, three days, four hours,
+five minutes and six seconds. All fields in this format are optional.
+">
 
+<helpop key="clearchan" title="/CLEARCHAN <channel> [KILL|KICK|G|Z] [:<reason>]" value="
 Quits or kicks all non-opers from a channel, optionally G/Z-lines them.
 Useful for quickly nuking bot channels.
 
 The default method, KILL, simply disconnects the victims from the server,
 while methods G and Z also add G/Z-lines for all the targets.
 
-When used, the victims won't see each other getting kicked or quitting.">
-
-<helpop key="modenotice" value="/MODENOTICE <modeletters> <message>
+When used, the victims won't see each other getting kicked or quitting.
+">
 
+<helpop key="modenotice" title="/MODENOTICE <modeletters> :<message>" value="
 Sends a notice to all users who have the given mode(s) set.
 If multiple mode letters are given, the notice is only sent to users
-who have all of them set.">
-
-<helpop key="cloak" value="/CLOAK <host>
+who have all of them set.
+">
 
+<helpop key="cloak" title="/CLOAK <host>" value="
 Generate the cloak of a host or IP. This is useful for example when
 trying to get the cloak of a user from /WHOWAS and they were not
-using their cloak when they quit.">
-
-<helpop key="umodes" value="User Modes
-----------
+using their cloak when they quit.
+">
 
+<helpop key="umodes" title="User Modes" value="
  c            Blocks private messages and notices from users who do
               not share a common channel with you (requires the
               commonchans module).
  d            Deaf mode. User will not receive any messages or notices
               from channels they are in (requires the deaf module).
- g            In combination with /ACCEPT, provides for server side
+ g            In combination with /ACCEPT, provides for server-side
               ignore (requires the callerid module).
- h            Marks as 'available for help' in WHOIS (IRCop only,
-              requires the helpop module).
+ h            Marks as 'available for help' in WHOIS (server operators
+              only, requires the helpop module).
  i            Makes invisible to /WHO if the user using /WHO is not in
               a common channel.
  k            Prevents the user from being kicked from channels, or
               having op modes removed from them (services only,
               requires the servprotect module).
- o            Marks as a IRC operator.
+ o            Marks as a server operator.
  s <mask>     Receives server notices specified by <mask>
-              (IRCop only).
+              (server operators only).
  r            Marks as a having a registered nickname
               (requires the services account module).
  w            Receives wallops messages.
  x            Gives a cloaked hostname (requires the cloaking module).
- z            Only allow private messages from SSL users (requires the
-              sslmode module).
+ z            Only allow private messages from TLS (SSL) users (requires
+              the sslmodes module).
  B            Marks as a bot (requires the botmode module).
+ D            Privdeaf mode. User will not receive any private messages
+              or notices from users (requires the deaf module).
  G            Censors messages sent to the user based on filters
               configured for the network (requires the censor module).
  H            Hides an oper's oper status from WHOIS (requires the
               hideoper module).
  I            Hides a user's entire channel list in WHOIS from
-              non-IRCops (requires the hidechans module).
- L            Stops redirections done by m_redirect (mode must be
-              enabled in the config).
+              non-server operators (requires the hidechans module).
+ L            Stops redirections done by the redirect module (requires
+              the redirect module).
+ O            Allows server operators to opt-in to overriding
+              restrictions (requires the override module).
  R            Blocks private messages from unregistered users
               (requires the services account module).
  S            Strips formatting codes out of private messages
               to the user (requires the stripcolor module).
- W            Receives notification when a user uses WHOIS on them
-              (IRCop only, requires the showwhois module).">
-
-<helpop key="chmodes" value="Channel Modes
--------------
+ W            Receives notifications when a user uses WHOIS on them
+              (server operators only, requires the showwhois module).
+">
 
+<helpop key="chmodes" title="Channel Modes" value="
  v <nickname>       Gives voice to <nickname>, allowing them to speak
                     while the channel is +m.
  h <nickname>       Gives halfop status to <nickname> (requires the
@@ -902,12 +922,11 @@ using their cloak when they quit.">
                     can speak.
  n                  Blocks users who are not members of the channel
                     from messaging it.
- p                  Make channel private, hiding it in users' whoises
-                    and replacing it with * in /LIST.
+ p                  Hides the channel in /WHOIS from people who are not a member.
+                    You probably want the s (secret) channel mode rather than this.
  r                  Marks the channel as registered with Services
                     (requires the services account module).
- s                  Make channel secret, hiding it in users' whoises
-                    and /LIST.
+ s                  Hides the channel in /WHOIS and /LIST from people who are not a member.
  t                  Prevents users without +h or +o from changing the
                     topic.
  u                  Makes the channel an auditorium; normal users only
@@ -919,7 +938,8 @@ using their cloak when they quit.">
                     For example, +w o:R:Brain will op anyone identified
                     to the account 'Brain' on join.
                     (requires the autoop module)
- z                  Blocks non-SSL clients from joining the channel.
+ z                  Blocks non-TLS (SSL) clients from joining the channel
+                    (requires the sslmodes module).
 
  A                  Allows anyone to invite users to the channel
                     (normally only chanops can invite, requires
@@ -931,7 +951,8 @@ using their cloak when they quit.">
                     noctcp module).
  D                  Delays join messages from users until they message
                     the channel (requires the delayjoin module).
- E [~*][lines]:[sec]{[:difference]}{[:backlog]} Allows blocking of similar messages.
+ E [~|*]<lines>:<sec>[:<difference>][:<backlog>]    Allows blocking of
+                    similar messages (requires the repeat module).
                     Kicks as default, blocks with ~ and bans with *
                     The last two parameters are optional.
  F <changes>:<sec>  Blocks nick changes when they equal or exceed the
@@ -945,7 +966,8 @@ using their cloak when they quit.">
  J <seconds>        Prevents rejoin after kick for the specified
                     number of seconds. This prevents auto-rejoin
                     (requires the kicknorejoin module).
- K                  Blocks /KNOCK on the channel.
+ K                  Blocks /KNOCK on the channel (requires the
+                    knock module).
  L <channel>        If the channel reaches its limit set by +l,
                     redirect users to <channel> (requires the
                     redirect module).
@@ -953,14 +975,14 @@ using their cloak when they quit.">
                     the services account module).
  N                  Prevents users on the channel from changing nick
                     (requires the nonicks module).
- O                  Channel is IRCops only (can only be set by IRCops,
-                    requires the operchans module).
+ O                  Channel is server operators only (can only be set
+                    by server operators, requires the operchans module).
  P                  Makes the channel permanent; Bans, invites, the
                     topic, modes, and such will not be lost when it
-                    empties (can only be set by IRCops, requires
-                    the permchannels module).
- Q                  Only ulined servers and their users can kick
-                    (requires the nokicks module)
+                    empties (can only be set by server operators,
+                    requires the permchannels module).
+ Q                  Only U-lined servers and their users can kick
+                    (requires the nokicks module).
  R                  Blocks unregistered users from joining (requires
                     the services account module).
  S                  Strips formatting codes from messages to the
@@ -972,6 +994,7 @@ using their cloak when they quit.">
                     (requires the exemptchanops module).
  Possible restriction types to exempt with +X are:
 
+ anticaps            Channel mode +B
  auditorium-see      Permission required to see the full user list of
                      a +u channel (requires the auditorium module).
  auditorium-vis      Permission required to be visible in a +u channel
@@ -986,32 +1009,32 @@ using their cloak when they quit.">
  nonick              Channel mode +N
  nonotice            Channel mode +T
  regmoderated        Channel mode +M
+ repeat              Channel mode +E
  stripcolor          Channel mode +S
  topiclock           Channel mode +t
 
--------------
 NOTE: A large number of these modes are dependent upon server-side modules
 being loaded by a server/network administrator. The actual modes available
 on your network may be very different to this list. Please consult your
-help channel if you have any questions.">
-
-<helpop key="stats" value="/STATS <symbol>
+help channel if you have any questions.
+">
 
+<helpop key="stats" title="/STATS <symbol> [<servername>]" value="
 Shows various server statistics. Depending on configuration, some
 symbols may be only available to opers.
 
 Valid symbols are:
 
-e  Show E-lines (local ban exemptions)
-g  Show G-lines (host bans)
-k  Show K-lines (local host bans)
-q  Show Q-lines (nick mask bans)
-R  Show R-lines (regular expression bans)
-Z  Show Z-lines (IP mask bans)
+e  Show E-lines (global user@host ban exceptions)
+g  Show G-lines (global user@host bans)
+k  Show K-lines (local user@host bans)
+q  Show Q-lines (global nick bans)
+R  Show R-lines (global regular expression bans)
+Z  Show Z-lines (global IP mask bans)
 
-s  Show filters
-C  Show channel bans
-H  Show shuns
+s  Show filters (global)
+C  Show channel bans (global)
+H  Show shuns (global)
 
 c  Show link blocks
 d  Show configured DNSBLs and related statistics
@@ -1030,12 +1053,12 @@ Y  Show connection classes
 O  Show opertypes and the allowed user and channel modes it can set
 E  Show socket engine events
 S  Show currently held registered nicknames
-G  Show how many local users are connected from each country according to GeoIP
+G  Show how many local users are connected from each country
 
-Note that all /STATS use is broadcast to online IRC operators.">
-
-<helpop key="snomasks" value="Server Notice Masks
+Note that all /STATS use is broadcast to online server operators.
+">
 
+<helpop key="snomasks" title="Server Notice Masks" value="
  a      Allows receipt of local announcement messages.
  A      Allows receipt of remote announcement messages.
  c      Allows receipt of local connect messages.
@@ -1051,8 +1074,8 @@ Note that all /STATS use is broadcast to online IRC operators.">
  K      Allows receipt of remote kill messages.
  l      Allows receipt of local linking related messages.
  L      Allows receipt of remote linking related messages.
- n      See local nickname changes (requires the seenicks module).
- N      See remote nickname changes (requires the seenicks modules).
+ n      Allows receipt of local nickname changes (requires the seenicks module).
+ N      Allows receipt of remote nickname changes (requires the seenicks modules).
  o      Allows receipt of oper-up, oper-down, and oper-failure messages.
  O      Allows receipt of remote oper-up, oper-down, and oper-failure messages.
  q      Allows receipt of local quit messages.
@@ -1060,13 +1083,12 @@ Note that all /STATS use is broadcast to online IRC operators.">
  r      Allows receipt of local oper commands (requires the operlog module).
  R      Allows receipt of remote oper commands (requires the operlog module).
  t      Allows receipt of attempts to use /STATS (local and remote).
- v      Allows receipt of oper-override notices (requires the override module).
+ v      Allows receipt of oper override notices (requires the override module).
  x      Allows receipt of local X-line notices (G/Z/Q/K/E/R/SHUN/CBan).
- X      Allows receipt of remote X-line notices (G/Z/Q/K/E/R/SHUN/CBan).">
-
-<helpop key="extbans" value="Extended Bans
-----------
+ X      Allows receipt of remote X-line notices (G/Z/Q/K/E/R/SHUN/CBan).
+">
 
+<helpop key="extbans" title="Extended Bans" value="
 Extbans are split into two types; matching extbans, which match on
 users in additional ways, and acting extbans, which restrict users
 in different ways to a standard ban.
@@ -1080,7 +1102,7 @@ setting +I <extban>.
 
 Matching extbans:
 
- a:<mask>      Matches user with both a matching banmask and realname,
+ a:<mask>      Matches user with both a matching banmask and real name,
                where <mask> is in the format nick!user@host+realname
                (requires gecosban module).
  j:<channel>   Matches anyone in the given channel. Does not support
@@ -1091,10 +1113,11 @@ Matching extbans:
                gecosban module).
  s:<server>    Matches users on a matching server (requires the
                serverban module).
- z:<certfp>    Matches users having the given SSL certificate
+ z:<certfp>    Matches users having the given TLS (SSL) certificate
                fingerprint (requires the sslmodes module).
- O:<opertype>  Matches IRCops of a matching type, mostly useful as an
-               an invite exception (requires the operchans module).
+ O:<opertype>  Matches server operators of a matching type, mostly
+               useful as an invite exception (requires the
+               operchans module).
  R:<account>   Matches users logged into a matching account (requires
                the services account module).
  U:<banmask>   Matches unregistered users matching the given banmask.
@@ -1130,4 +1153,5 @@ or a Matching extban.
 There is an additional special type of extended ban, a redirect ban:
 
  Redirect      n!u@h#channel will redirect the banned user to #channel
-               when they try to join (requires the banredirect module).">
+               when they try to join (requires the banredirect module).
+">