#####################################################

gMOO Tcl scripting:

At startup, gMOO will parse:
  $PREFIX/share/gMOO/Scripts/Client/*
  ~/.gMOO/Scripts/Client/*
This will be done in a standard interpreter.
When a world is openend, gMOO will parse:
  $PREFIX/share/gMOO/Scripts/World/*
 ~/.gMOO/Scripts/World/*
This will be done in a Safe iterpreter

gMOO defines the following functions for use:

#####################################################

### Client only
tell [-option...] <World_ID> <Text>  # For help see the func in the World section
  -option.. in {"-raw", "-n"}

tell [-option...] <World_ID> <Text>  # For help see the func in the World section
  -option.. in {"-raw", "-n"}

msg  [-option...] <World_ID> <Text>  # For help see the func in the World section
  -option.. in {"-raw", "-n"}

send [-option...] <World_ID> <Text>  # For help see the func in the World section
  -option... in {"-raw", "-n"}

info.world <World_ID> <what>
  <what> in {"screenwidth",          # Width in chars
             "screenheight",         # Height in chars
             "name",                 # World name
             "hostname",             # Hostname
             "port",                 # Port
             "connencted"}            # 0 or 1 if connected

### Client && World
msgbox [-option...] [--] <text>      # Show a dialog box
  -option in {"-icon     <stop|error|question|warning|exclamation|information|asterix>",
              "-buttons  <abortretryignore|ok|okcancel|retrycancel|yesno|yesnocancel>",
              "-stdbutton <0|1|2>",
              "-title     <text>"}
  returnes: [0..2]                   # The button # that was pressed

input [-option...] [--] <varname> [defaulttext]    # Imput box
  -option in {"-type      <string|int|integer>",
              "-title     <text>",
              "-desc      <text>",   # -desc is an alias of:
              "-description <text>"} # --description ...
  returns 0 on error and 1 on succes, is succes then the return value
  is stored in <varname>

debugmsg [-option] <text>            # Show <text> on stdout of the user has enabled `TclDebugMode'
  -option in {"-n", "-raw"}          # Both are ignored

register.macro <macro_name> <Tcl_command> <description>
  # Register a macro for use in gMOO,
  # if /macro_name [something] is typed, <Tcl_command> <something> will
  # be evalled by the world interpreter is registerd in a world script
  # file, or  <Tcl_command> <worldID> <something>  if registerd in a
  # global file (evalled by the Client interpreter)
  # NOTE: <macro_name>s are _not_ case sensitive, and may not contain any
  # spaces

registered.macros [-option]
  -option in {"-client", "-world"}
  # Returns a list of: "<name> <command> <desc> [<name> <command> <desc>...]"
  # if a option is specified, only those macros are listed

### World only
tell [-option...] <Text>             # <text> on the world screen
  -option.. in {"-raw", "-n"}

msg [-option...] <Text>              # "% <text>" on the world screen
  -option.. in {"-raw", "-n"}

send [-option...] <Text>             # Send <text> to the MOO
  -option.. in {"-raw", "-n"}        # -raw will be ignored
                                     # Send will buffer the lines until
                                     # a line with an \n in it is send.
                                     # This needs to be done to ensure
                                     # MCP independancy

info.world <what>
  <what> in {"screenwidth",          # Width in chars
             "screenheight",         # Height in chars
             "name",                 # World name
             "hostname",             # Hostname
             "port",                 # Port
             "connencted"}            # 0 or 1 if connected



#####################################################

Options:
-raw     # Don't do ansi escape sequence parsing
-n       # Don't add a newline char (like `echo -n`)

#####################################################

