prog page.muf 1 999 d 1 i ( page [{%mail,%now}] [player [player ...]] [= message] If =message omitted, sends an invitation-style message. If all players omitted, pages the same players as the last page you sent was sent to. If %mail is given, the page is treated as if the recipients' %save settings were all set to "always"; if %now is given, "never". [If everything is omitted, this is a special case; see %default.] Spaces are always ignored at the beginning and end of the message [if given]. [[ Think about a %r to reply, and how to fix the race. ]] page %format say[=[format]] page %format pose[=[format]] page %format invite[=[format]] Sets the format used for pages you send. The "say" format is used for normal speech-type pages, the "pose" format for page-poses [used when the text begins with a :], and "invite" for invitation pages [ones with no message given]. The format can contain %n [your name], %m [the message text], %p [a space when appropriate for poses - see %format nospace], and/or %l [the name of the location you're in when sending the page]. If a format doesn't contain %n, "%n " is added at the beginning. If you omit the format string, the format is reset to use the default; if you omit the = as well, it shows you the corresponding format string. Note that these format settings can be overridden by the recipient's forcesay, forcepose, or forceinvite format settings [see below]. page %format forcesay[=[format]] page %format forcepose[=[format]] page %format forceinvite[=[format]] Sets the formats for pages you receive, overriding the sender's format settings. The "default" settings, of course, correspond to using the sender's format. page %format nospace[=[string]] When %m begins with one of the characters in the string, %p in a format turns into nothing; otherwise, it turns into a space. There is a default set of characters, which is used if you haven't set a list. If you give the = but no string, the set is cleared; if you omit the = and string both, you are shown your current set and the default set. To use the default set, give "default" as the string. [If you really want to set your no-space set to those seven characters, put them in some other order.] page %format succ[=[message]] page %format drop[=[message]] page %format osucc[=[message]] page %format odrop[=[message]] Sets the page %ignore [+player[=[message]]] [-player] [=[message]] [%who]... Adds players to and removes players from the list of players you're ignoring. If a message is specified with a player name, the message is shown to the player when a page is attempted. Messages are preserved when players are removed from and added to the ignore list. If a message is specified with no player, it is used for players that are ignored but for which no player-specific message has been set. To clear a player-specific message and have that player see the default, give the equals sign but omit the message. If %who is given, the current ignore list is printed, with any messages that have been set. The arguments are processed in order, left to right, except that if you give an equals sign, everything to the right of it is taken to be a message. Spaces are always ignored at the beginning and end of a message. page %save {always,offline,never} Controls when pages to you are saved for later reading. When set to "always", pages must be explicitly read with %read or %peek; this is similar to Radagast's HoloMUCK pager. When set to "offline", pages are delivered immediately if you're online and saved when you're offline. When set to "never", pages are never saved. Note that the sender can override your save setting with %mail and %now when paging. page %check Tells you how many saved pages you have waiting. page %qcheck If you have saved pages, tells you how many, otherwise says nothing. page %reinvite Sends an invitation-page to the last players paged. This exists solely so that the %default can be set to make page with no argument work consistently with Foxen page. page %default string Sets the string as the default command, issued when page is given with no argument. For example, for HoloMUCK page compatability, "page %default %read" would be appropriate; for Foxen page compatability, "page %default %reinvite". If you haven't set a %default, a global default is used. page %read Reads your saved pages, discarding them. page %peek Reads your saved pages, without discarding them. page %time {off,absolute,relative} Enables or disables reporting the date and time at which saved pages were sent. If set to "off", pages are printed without any time information; if set to "absolute", the date and time are printed; if set to "relative", a time such as "1 day 3 hours 22 minutes ago" is printed. [This affects pages you receive, not pages you send. Also, if the page is saved, it's the setting at the time of reading, not receiving, that matters.] page %alias [name[=[player [player [...]]]]] Sets a personal alias. If you page to "name", it will be expanded to the specified list of players. If the player list is omitted but the = is supplied, removes an alias; if the = and players are omitted, shows an alias. If all arguments are omitted, shows all your aliases. Aliases can expand to other aliases, but to halt loops, an alias is temporarily disabled whenever it is being expanded. [This also lets you alias someone to themselves and someone else, for example.] page %global [name[=[player [player [...]]]]] Just like %alias except the aliases are global, seen by all players rather than just one. Use of this command with the = sign is usually restricted in some way (eg, wiz-only). page %help [topic] Prints help. Players can be specified as player names or dbrefs [include the #]. ) : say me @ swap notify ; : iscmd (string key -- postkey 1 or 0) dup strlen 3 pick over strcut pop rot stringcmp if pop pop 0 exit then strcut swap pop dup not if 1 exit then 1 strcut prog "_spaces" getpropstr 3 pick instr if swap pop else strcat then ; : dohelp- "For more help, use page %help , where is as shown in the first" say "column below." say " Command" say "nil page" say "msg page [{%mail,%now}] [player [player ...]] [= message]" say "format page %format {say,pose,invite}=format" say "nospace page %format nospace[=[string]]" say "ignore page %ignore [+player[=[message]]] [-player] [=[message]] [%who]..." say "save page %save {always,offline,never}" say "check page {%check,%qcheck}" say "default page %default string" say "reinv page %reinvite" say "read page {%read,%peek}" say "time page %time {off,absolute,relative}" say "help page %help [topic]" say ; : dohelp-nil "When page is given no art ; : dohelp dup not if pop dohelp- exit then dup "nil" iscmd if pop dohelp-nil exit then ; : main dup "%help" iscmd if dohelp exit then ; . c q