Manifest -------- README - this file emacs.snippet - what you put into your .emacs example.mud - move this to ~/.mud, add your favorite sites to it. mud-telnet-Sleeper.el - main mode file mud-telnet-Sleeper.elc - compiled vesion of above moo-code.el - helper functions for writing moo-code moo-code.elc - compiled vesion of above coldc-mode.el - helper functions for writing ColdC coldc-mode.elc - compiled vesion of above hl319.el - the highlighting routines hl319.elc - compiled vesion of above Disclaimer ---------- I've used this stuff happily for 3 years. I've thrown this package together for others to benefit from, by carving it out from my Emacs stuff. Let me know if I missed something. This does work, if you have all the pieces. What is mud.el? --------------- mud.el is a set of functions that allow the Emacs editor to function as a MOO client. Sleeper found about 5 incarnations of the file (a couple versions mud.el, another called mud19.el, etc.) and merged them together. He then merged in hl319 support. Fixed a couple more bugs and tweaked a few weirdnesses, and Voila! Here you have it. (What I have, as of December 1997) Quick install - Overview ------------------------ * Add emacs.snippet to your .emacs. * Put .el files where Emacs can find them. Byte compile them. * Copy example.mud to ~/.mud, add your MOO info to it. * Start Emacs. M-x mud LambdaMOO to connect to Lambda. * (Use ^U M-x mud etc., instead, to autologin, if you have set up your character info in the .mud file (recommended)) Detailed install ---------------- 1. See the emacs.snippet file for the code to add to your .emacs file which pulls all of this stuff in and sets up some nice defaults. You'll want to restart Emacs (or eval the buffer) to make the changes take effect. 2. Put the .el files where Emacs can find them. I have lines similar to (setq load-path (append (list (concat (getenv "HOME") "/emacs/lisp")) load-path)) Which sets up ~/emacs/lisp as my place to hold personal .el files. You can just uncomment the appropriate lines included in emacs.snippet to enable this. 3. Copy the .el and .elc files to the lisp directory: cp mud-telnet-Sleeper.el hl319.el moo-code.el coldc-mode.el ~/emacs/lisp cp mud-telnet-Sleeper.elc hl319.elc moo-code.elc coldc-mode.elc ~/emacs/lisp 4. I'm shipping the compiled lisp files, compiled on GNU Emacs 20.2. If they don't work on your system, recompile them with: M-x byte-compile-file ~/emacs/lisp/mud-telnet-Sleeper.el M-x byte-compile-file ~/emacs/lisp/moo-code.el M-x byte-compile-file ~/emacs/lisp/coldc-mode.el M-x byte-compile-file ~/emacs/lisp/hl319.el Make certain Emacs can locate moo-code.el when compiling mud-telnet-Sleeper.el. 5. Copy example.mud to ~/.mud. Add your favorite sites to it. 6. It's best to restart Emacs just to make sure it finds the new stuff. 7. Type M-x mud to start it up, select the site using completion. (Good for first time connects, or guest connects.) 8. Usually, you want to use: ^U M-x mud, instead. This will autologin, if you have set up your character info set in the .mud file (recommended)) Customization ------------- In the .emacs code... Use 'light for hilit-background-mode if you use a light background. Read hl319.el if you want to play with the other variables, but I will describe the setting of colors here: Colors are first defined using hilit-user-face-table, then r.e. patterns are set that use the defined colors. See the examples in the emacs.snippet (which should now be in your .emacs). I've put comments in to label this area. Function (mud-check-page) is set to deiconify and bring the Emacs window to the top of all your windows. You can turn this off by setting mud-show-page to nil, or by redefining (mud-check-page) If you want pages to `beep' you, mud-check-page is the routine to change. (use the (ding) function) Other files... Copy example.mud to ~/.mud -- LambdaMOO is set, add your favorite MOOs/Colds/Muds etc. to this file, also add your character info to enable quick logins. See the comments and the definition for LambdaMOO to get an idea of what to do. mud-telnet-Sleeper.el... Search for ``(defmud MOO'' -- The last field is a regexp for matching pages (which pop the window up). You'll want to customize this. (typically for non-standard page emote prefixes) Handy Things to Know -------------------- - Set your MOO's edit option to use local editing with @edit-o +local You'll wonder how you got by without this. For Colds, you'd use @set me:local-editor=mcp - @edit me:verb, or @edit me.prop -- use C-c C-s to send the verb back while keeping a copy to edit further, use C-c C-c to send it back and kill the buffer, use C-c C-] to kill the buffer without sending it back. - To dump code, turn off the line wrapping that Emacs does. M-x set-variable, mud-break-lines nil A Note About hl319.el --------------------- hl319 is no longer supported. In fact, it has been abandoned. Other colorization packages are supported in its place. I'm using hl319 because a) I started using it when it was supported b) it works good enough for me and c) it doesn't seem to break the newer ways of colorizing. Alternate Help for mud.el -------------- Puff keeps two objects on Lambda. Although a little dated, they are still helpful: mud.el documentation (#24555) moo.el help(#41000) How to Contact Me ----------------- Send me MOOmail on Lambda. telnet to lambda.moo.mud.org port 8888 and page or send mail to Sleeper. Let me know if you have improvements for what is offered here.