There are a number of commands you can give to directly to the Savitar application which don't get sent to the remote world, they're "local" to Savitar. They allow you to accomplish many useful tasks.
To distinquish Savitar local commands from commands you send to your server, local commands are prefixed with the your world's command marker character(s). The default Savitar command marker is '##'. An example of this would be typing "add macro" would send "add macro" to your server, giving you unexpected results, whereas type "##add macro" would direct Savitar to handle the command locally, not passing it on to the server.
The following is a description of Savitar's local commands: Each command is listed in bold followed by a statement of its syntax, a description of the command, and example usage(s).
syntax: add macro <XML STATEMENTS>
Allows you to add a macro to the active world.
##add macro <MACRO NAME="MACRO_UP" KEY="KP+"><VALUE>up</VALUE></MACRO>
syntax: add trigger <XML STATEMENTS>
Allows you to add a trigger to the active world.
##add trigger <TRIGGER NAME="http://" FLAGS="matchToEndOfWord" FACE="underline" COLOR="#0000FF" AUDIO="silent" SOUND="ah choo" VOICE="Zarvox"><WORDEND>" </WORDEND><SAY>Click on the speaker icon to hear this.</SAY></TRIGGER>
syntax: add world <XML STATEMENTS>
Allows you to add a world to the World Picker.
##add world <WORLD NAME=Ancient Anguish" URL="telnet://ancient.anguish.org:2222" FLAGS="ansi" CMDMARKER="&cmdmark;" VARMARKER="&varmark;" WILDMARKER="&wildmark;" FORECOLOR="#FFFFFF" BACKCOLOR="#000000" FONT="Monaco" FONTSIZE="9" RESOLUTION="80x24x8" POSITION="50,50" ZOOMED="FALSE" OUTPUTMAX="102400" OUTPUTMIN="25600" RETRYSECS="30"><LOGOFFCMD>quit</LOGOFFCMD></WORLD>
syntax: broadcast <input>
The broadcast command allows you to send <input> to all active world sessions simultaneously, thus allowing you to type <input> one time in one window and all connections will get the input.
##broadcast say Hey everybody! Its a girl!!!
syntax: close status input | output
This command closes an input or output status pane. See the command 'set status' for info on how to open and set status panes.
##close status input
##close status output
syntax: close window <"window-name">
Allows you to close a given window. If the window in question is a world window, this will close the connection. Issuing this command a second time will then close the window.
##close window "Sample Text Window"
##close window "Sample World Window"
syntax: disable trigger <"trigger name">
Allows you to disable a given trigger.
##disable trigger "http://"
syntax: dump colors
Allows you to list their ANSI colors to the active world window's output pane.
syntax: dump macros
Allows you to list their universal macros and the active world's world-specific macros to the active world window's output pane.
syntax: dump triggers
Allows you to list their universal triggers and the active world's world-specific triggers to the active world window's output pane.
syntax: dump worlds
Allows you to list the current worlds (from the World Picker) to the active world window's output pane.
syntax: enable trigger <"trigger-name">
Allows you to enable a given trigger.
##enable trigger "http://"
syntax: help [<local-command>]
Gives basic usage information for all local commands or the specified command.
##help dump triggers
syntax: kill <taskID> | all
Allows you to kill-off a task created by the ##task command. Specifying 'all' will kill all tasks. The <taskID> for a task is found from the output of ##show tasks
open text window
syntax: open text window "window-name" [for file ":filepath-in-app-folder"] | ["full-filepath"] [at=(horiz,vert)] [size=(width,height) | size=(colsxrows)]
Allows a user to open a text window (with or without loading a given text file to display in it), and also allows them to control where and how large to open it.
##open text window "Sample Text Window"
##open text window "Test" for file ":test"
##open text window "Test 2" for file "HD:Text Files:test2"
##open text window "Location/Size Control" at 50,50 size=(20x20)
syntax: play "<sound-file-name>"
Allows you to play a sound file (which should be placed in a "Sounds" folder within your Savitar folder.
syntax: regex "<text>" "regular-expression"
Allows you to test a regular expression and will list macros it would set.
##regex "Well... hi Bob, did you find it?" "hi +\b(.*), +\b(.*)$"
regex "Well... hi Bob, did you find it?" "hi +\b(.*), +\b(.*)$" ==> success
%%0 ="hi Bob, did you find it?"
%%2 ="did you find it?"
syntax: select window "<window-name>"
Allows you to bring a given window to the front.
##select window "Sample Text Window"
syntax: send window <"window-name"> <text-message>
Allows you to send a given snippet of text to a given text window.
##send window "Sample Text Window" Here is some text.
syntax: set ansi [on|off]
Allows you to turn ANSI interpretation on/off for the active window.
##set ansi on
##set ansi off
syntax: set autoclose [on|off]
Allows you to determine whether the active world window will prompt for reconnect (off) or simply close automatically (on).
##set autoclose on
##set autoclose off
Syntax: cronly [on|off]
Allows you to determine whether the active world will postfix each line with a carriage return & linefeed (off) or a carriage return only (on).
##set cronly on
##set cronly off
syntax: set echo [on|off]
Allows you to determine whether the active world will echo input.
##set echo on
##set echo off
syntax: set html [on|off]
Allows you to turn HTML interpretation on/off for the active window.
##set html on
##set html off
syntax: set macro "<macro-name>" <value>
Allows you to set a given macro to a given value.
##set macro "Test" test
syntax: set marker <command | variable | wildcard> value
Allows you to set the command, variable, or wildcard marker for the active world.
##set marker command ##
##set marker variable %%
##set marker wild $$
syntax: set status output | input <message>
This will display a <message> on the status panel at the top of the output pane or input pane (specified by either specifying 'output' or 'input'. If the pane isn't currently there, this command will open the pane first and then display the message. Subsequent 'set status' commands will replace the pane's current contents with the new contents.
##set status output Hello world.
##set status input My hitpoints are at %%hitpoints. I have %%gold gold pieces remaining.
syntax: show tasks
Displays a list of currently running tasks.
syntax: task <frequency> <command>
Allows you to submit a <command> to be repeated every <frequency> seconds.
##task 300 date
##task 60 ##upload my harddisk:savitar:scripts:refresh.txt
syntax: tell application "<application-name>" to <AppleScript command line>
Allows you to send Applescript commands to a given application.
##tell application "Finder" to open folder "Savitar™ 1.1 Ä" of folder "Internet & Networking" of startup disk
syntax: upload <file>
Allows you to upload the contents of a text file <file> to the connect world. You have to give a full or partial Mac Classic OS pathname. Text uploaded to the world is not parsed or interpreted by Savitar in any way.
##upload my harddisk:savitar:scripts:refresh.txt
Allows you to have Savitar pause n ticks (tick=1/60 second) before sending a given command. This is useful if you want a trigger send a given reply after a given amount of time.