The user guide is in line with v0.98 (aka lisabeta) of ymusk.

Ymusk Commands

These commands can be either be called from the input input window, or used in a configuration file.

/eval expression

Evaluate the Perl expression and print its result in the output window (the output is not sent to the mush). The expression is evaluated in teh script's namespace, which is a nifty hacking backdoor.

/eval 1 + 2/3   # a kick'n'dirty calculator

/help [ command ]

Without argument, lists all commands in the output window. If command is given, gives the documentation of this particular command.

/help help 
/help eval

/usage command

Gives argument list of /command. For more details, use /help.

/usage end
/usage margin

/bind <key> = command

Bind <key> to command in the input window. See Perl/tk documentation for details on key binding Two functions of ymusk are really, really useful for command: &type and &send. The difference is that &type is preprocessed by ymusk (so recognize /commands and the like) while &send send the string directly to the mush server. Unless you want to do some black magic, use &type.

/bind <F1> = &type( "@mail" )

/cursor color

Set the cursor's color.

/cursor blue

/do file

Executes file as if entered by the user in the input window, line by line.

/do myscript.txt

/connect host port [ character password ]

Connect to host at given port, optionaly logging in as character using password.

/connect saturn.planetmud.com 4996 yenz mypassword

Disconnect from the current host.

/margin offset

Set the left margin of wrapped lines. Offset is in pixel. It can be an absolute value or can be relative to the current offset. Also, see <Ctl-minus> and <Ctl-equal>.

/margin 20      # set margin to 20 pixels
/margin +10     # increase margin of 10 pixels

/paragraph offset
Set the spacing between paragraphs. It can be an absolute value or be relative to the current spacing. Also, see <Ctl-underscore> and <Ctl-plus>.

/paragraph 10
/paragraph +5

/tag tag = ( -option => -value )

Redefine the text tag tag. To know the tags already recognized by ymusk, you can do /eval join " ", keys %tags.

Of course, new tags can be added to fit any particular need. if you want to such a thing, do peek at Hooks.pm.

/log [ off | logfile ]

Log mush output to logfile. If logfile doesn't exist, it is created. If it does exist, the log is appended to the file. If the parameter off is given, ymusk stops to log. If no parameter is passed, the current log file is returned.

/log /home/yanick/ymusk/log/suns.log

/eliza [ on ]

Create an Eliza psychoanalyst that will answer IC dialogue in your place. Eliza is smart enough to to reply to herself or to reply to pages and <Channel> stuff. Require the module Chatbot::Eliza.


Generate a random pickup line for your character. Those pickup lines can be obscene, raunchy, offensive and/or nonsensical. Furthermore, just to make things more dangerous, the pickup line will be emitted directly to the mush, so you will discover it at the same time as everybody else. In other words, if your character get lynched because of this command, don't put the blame on us. Require the Easy::Bone module.

/scroll [ auto | more ]

Set the scrolling mode to auto (always scrolls down as new text arrive), more (after a page of information, display a red 'more' at the top of the window and wait for the user to press before scrolling down) or, if no argument is given, disable scrolling altogether.

Also accessible through the Display menu.

scrolling menu

Note: it is not recommended to use the 'more' mode in conjuncture with multi-output mode.

/scroll auto

/webster [ prefix ] word

Fetch the definition of word at the Myriam-Webster dictionary. If prefix is not given, think is used.

/webster +OOC defenestration
	/webster musk

/world world = host port [ character password ]

Creates a command /world that connect ymusk to the host is created, unless the command /world already exist. In other words, don't name any of your worlds 'margin', 'eval' or 'help'. Useful for the configuration file.

/world fading = saturn.planetmud.com 4996
    /world yenz =  saturn.planetmud.com 4996 yenz hush

Pops open the ycq widget (a cute icq-lookalike for pages).

Key Bindings

Key(s) Where Function
<Ctl-p> Input window Call back previous element in history
<Ctl-n> Input window Call back previous next in history
<Return> Input window Send line to mush
<Tab> Tabbed input window Flip to the next input window
<Tab> Input window (more-like scroll activated) scroll down one page
<Ctl-=> Output window Increment indentation of wrapped lines in output window
<Ctl-_> Output window Decrement indentation of wrapped lines lines in output window
<Ctl-+> Output window Increment space between paragraphs in output window
<Ctl--> Output window Decrement space between paragraphs in output window
<Ctl-e> Input window Invoke Editor window
<Alt-s> Input window, Input Forms Spellcheck

Configuration File

By default, ymusk will look for configuration files and such things at ~/ymusk/ymuskrc (for Unix systems) or where_ymusk_is_installed\configuration for Windows systems. The default ymusk directory can be changed by using the switch -ymuskdir when calling ymusk. E.g., ymusk -ymuskdir=/home/yanick/mush

If the file ymuskrc exists in the ymusk configuration directory, it will be read prior to execution. Each line is either empty, a comment or a command. Comment lines begin with a pound sign (#).


color attribute = color

Ymusk's colors can be defined in the configuration file. They are usually generated by ymusk itself, but can be changed by adventurous users.

Mail and Web Programs

        mail_program = I<mail program> %
        url_program  = I<favorite browser> %

Used when an url or an email address is clicked in the output screen. The % is replaced by the address/url.

Input Commands

Ymusk commands found in the configuration file will be executed as if entered by the user.

Example ymuskrc:
# Fading Suns Mush 
/world yenz  = saturn.planetmud.com 4996 yenz secret
/world julia = saturn.planetmud.com 4996 julia secret
/world sun   = saturn.planetmud.com 4996 

# Look'n'feel
/margin  10
color background = #d915c9e3c9e3
color foreground = black

/scroll auto

url_program = aterm -e lynx %
mail_program = aterm -e mutt %

Also if a directory called log exists under the ymusk configuration directory, a log file would be automatically created there at each ymusk session.

[ ymusk main page ]