mud.el documentation

A grand title indeed for some bits of email not yet formatted into HTML
(0) If you don't already have an emacs 'hacks' directory for your own
    add-ons, make one. In this example I'll use ~/lib/emacs.
(1) copy mud.el into the 'hacks' directory.
(2) Edit your .emacs file. If you don't have one, edit it anyway.
(3) add the following line to append the 'hacks' directory to emacs's
(setq load-path (append (mapcar 'expand-file-name '("~/lib/emacs")) load-path))

(5) Tell emacs to load mud.el on demand by adding this to your .emacs
(autoload 'mud "mud" "MUD mode." t)

(6) If you need firewall support (see the top of mud.el for the type
    of firewall support I've implemented - it's fairly crude):
(setq gw-host "")
(setq gw-port gateway-port-number)

(7) Set up default account/password for mud.el - you could hide this
    in, say, ~/.mud and get emacs to (load "~/.mud") if you're worried
    that someone might hijack it from your .emacs:
(setq mud-default-user "username")
(setq mud-default-pass "password")

(8) By default, mud-list contains entries for Nerdsholm and NewtMUD
    using the default login info. If you want to set up your own list
    of muds, do
(setq mud '((MudToken ("hostname" port "username" "password"))
		(MudToken2 ("hostname" port t))))

- MudToken is a name for the mud that you'll recognise, one word only
- the first line gives you login via the specified username and
  password; the second via the defaults. If you just specify hostname
  and port, you don't get auto-login on connection.

(setq mud-default 'MudToken) - which mud to prompt as default
(setq mud-logging t) - switch on logfiling (logs to ~/MudToken.log)
(setq mud-page-beep-default nil) - don't ping me when I get paged
(setq mud-max-buffer ) - set max buffer size to  bytes
(setq mud-pong t) - enable "PONG" support a la rocco's client

COMING SOON: How to customise the faces used, and how to set up new
hooks. As soon as I feel up to writing documentation for them ;)

So I spend more time working on this darned mud than I should. The new
version hasn't been heavily tested, after all that's what you guys are
for, right?

New features:

;;; * added arbitrary regexp matching
;;; * added mud-delete-lines, essentially a gag function.
;;; * Added hook functionality to the output processor.
;;; * PING/PONG is switched off by default.
;;; * whispering "version" to someone returns their mud.el version.

Additionally, if there's a problem in mud.el, you'll get something
like the following in your ECHO OUT buffer:
mud.el says, "One of your hook functions is broken."
which I think is incredibly cute. You can use this feature in your own
mud hooks by calling mud-whine; see existing code for usage.

The arbitrary regexp matching is disabled by default. You'll need to
go poke in the code to (a) switch it on and (b) set up gags or
whatever. I may redo the existing hook functions - hilighting, paging
stuff, all that - to use the arbitrary regexp stuff.

The use of hooks is documented in the code, and you can have a look at
the existing hook functions to get an idea of how to write your
own. There's a chunk of text at the head of the hook functions section
giving you a list of pointers.

Back to the hacks | Take it from the top