Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision |
custom:atcodes [2020/12/08 22:45] – [User Information] Typos digital man | custom:atcodes [2021/04/04 22:01] – [Message Variables (@-codes)] Also called @-Variables (e.g. in PCBoard manual) digital man |
---|
====== Message Variables (@-codes) ====== | ====== Message Variables (@-codes) ====== |
| |
Synchronet sysop-posted messages, text and menu files, and some lines in the ''[[dir:ctrl]]/[[text.dat]]'' file may contain special //Message Variables//, also called //@-codes// ("at codes", some BBS authors and sysops refer to these types of codes as "@ Macros" or "MCI codes"((and not because of the defunct phone company))). @-codes may also be displayed using the ''bbs.atcode()'' JavaScript method. | Synchronet sysop-posted messages, text and menu files, and some lines in the ''[[dir:ctrl]]/[[text.dat]]'' file may contain special //Message Variables//, also called //@-codes// ("at codes", some BBS authors and sysops refer to these types of codes as "@ Macros" or "@ Variables" or "MCI codes"((and not because of the defunct phone company))). @-codes may also be displayed using the ''bbs.atcode()'' [[JavaScript]] method. |
| |
@-codes are called such because they begin and end with the ''@'' (ASCII 64) ("at") character. The code names themselves (sandwiched between the @'s) must be entered using only ''UPPERCASE'' letters. Some additional symbols and numbers may also be included in the @-code, but never a space. | @-codes are called such because they begin and end with the ''@'' (ASCII 64) ("at") character. The code names themselves (sandwiched between the @'s) must be entered using only ''UPPERCASE'' letters. Some additional symbols and numbers may also be included in the @-code, but never a space. |
|FREESPACEK | |Free disk space available for uploads (in kibibytes) | | |FREESPACEK | |Free disk space available for uploads (in kibibytes) | |
|FULL_VER | |Synchronet full version number (e.g. "3.15a")| | |FULL_VER | |Synchronet full version number (e.g. "3.15a")| |
| |GIT_BRANCH | |Synchronet Git repository branch name (e.g. "master")| |
| |GIT_HASH | |Synchronet Git repository commit hash (most significant Git-SHA hex-digits)| |
|GRP | |Current message group short description | | |GRP | |Current message group short description | |
|GRPL | |Current message group long description | | |GRPL | |Current message group long description | |
|QUITCHAR | |Print the character that corresponds with a "quit" command key (e.g. ''Q'') | | |QUITCHAR | |Print the character that corresponds with a "quit" command key (e.g. ''Q'') | |
|EOF | |End-of-file (stop parsing/displaying) | | |EOF | |End-of-file (stop parsing/displaying) | |
|PAUSE |MORE |Force a screen pause (hit a key) prompt| | |PAUSE |MORE |Force a screen pause and a ''[Hit a key]'' prompt, if 'N' or 'Q' are typed, the displayed message/file is aborted | |
|PON |AUTOMORE|Toggle automatic screen pause on | | |PON |AUTOMORE|Toggle automatic screen pause on | |
|POFF |NOPAUSE |Toggle automatic screen pause off | | |POFF |NOPAUSE |Toggle automatic screen pause off | |
|RESETPAUSE | |Reset the automatic screen pause line counter | | |RESETPAUSE | |Reset the automatic screen pause line counter | |
|DELAY://n// | |Wait //n// 10ths of a second before continuing | | |GETKEY | |Wait indefinitely for any key press before continuing | |
|UP://n// | |Move cursor up //n// rows | | |CONTINUE | |Wait indefinitely for any key press before continuing and abort the message/file display if 'N' or 'Q' are typed | |
|DOWN://n// | |Move cursor down //n// rows | | |WAIT://n// | |Wait up to //n// 10ths of a second for a key press before continuing | |
|RIGHT://n// | |Move cursor right //n// columns | | |DELAY://n// | |Wait //n// 10ths of a second before continuing | |
|LEFT://n// | |Move cursor left //n// columns | | |UP://n// | |Move cursor up //n// rows | |
| |DOWN://n// | |Move cursor down //n// rows | |
| |RIGHT://n// | |Move cursor right //n// columns | |
| |LEFT://n// | |Move cursor left //n// columns | |
|GOTOXY://x,y// | |Move cursor to //x/////y// coordinate (1-based) | | |GOTOXY://x,y// | |Move cursor to //x/////y// coordinate (1-based) | |
|POS://x// | |Move cursor to column //x// (1-based) | | |POS://x// | |Move cursor to column //x// (1-based) | |