The subdirectories of this directory contain source code for the XEmacs facilities written in Emacs Lisp. *.el files are Elisp source, and *.elc files are byte-compiled versions of the corresponding *.el files. Byte-compiled files are architecture-independent. When XEmacs starts up, it adds all subdirectories of the site-lisp directory. The site-lisp directory normally exists only in installation trees. For more information about the site-lisp directory see the NEWS file. After XEmacs adds all subdirectories of the site-lisp directory, it adds all subdirectories of this directory to the load-path (the list of directories to be searched when loading files.) To speed up this process, this directory has been rearranged to have very few files at the top-level, so that emacs doesn't have to stat() several hundred files to find the dozen or so which are actually subdirectories. Directories whose names begin with "-" or "." are not added to the default load-path. The only files which remain at top-level are those which you might reasonably want to alter when installing or customizing XEmacs at your site. The files which may appear at top level are: paths.el You may need to change the default pathnames here, but probably not. This is loaded before XEmacs is dumped. site-init.el To pre-load additional libraries into XEmacs and dump them in the executable, load them from this file. site-load.el This is like site-init.el, but if you want the docstrings of your preloaded libraries to be kept in the DOC file instead of in the executable, you should load them from this file instead. To do this, you must also cause them to be scanned when the DOC file is generated by editing ../src/Makefile.in.in and rerunning configure. site-start.el This is loaded each time XEmacs starts up, before the user's .emacs file. default.el This is loaded each time XEmacs starts up, after the user's .emacs file, unless .emacs sets the variable inhibit-default-init to t. version.el This contains the version information for XEmacs. These are the main subdirectories: prim Fundamental XEmacs functionality. Some of this is pre-dumped with XEmacs, some is autoloaded. utils Various utility functions that some other XEmacs packages build on. These are not user commands. modes Text-editing and programming-language-sensitive modes. emulators XEmacs can emulate a few different editors. These are a bit more than what `modes' generally are. term Terminal-specific customization files. When XEmacs starts, it checks the $TERM environment variable to see what type of terminal the user is running on, and loads a file named $TERM.el from this directory, if that file exists. vms VMS-specific code. x11 X Window System-specific code. games Various ways to waste time. packages Random other utilities that are not primarily about editing text. For example, code for automatically uncompressing .Z files would be here. This is an `everything else' sort of directory. Some packages are fairly large; those have been given their own directories: auctex A package for editing TeX documents. bytecomp The XEmacs-lisp compiler. calendar A calendar and appointment manager. cl Common Lisp compatibility code. comint General code for interacting with inferior processes, like shell buffers and lisp interpreters. custom User environment customization code. edebug A source-level debugger for Elisp. ediff A comprehensive visual interface to diff and patch. efs The directory editor, remote FTP frontend. electric The "electric" commands; these implement temporary windows for help, list-buffers, etc. energize An interface to the Lucid Energize system. eos An interface to Sun's SparcWorks product. eterm A merge of the comint shell mode with an ANSI-compatible terminal-emulator. gnus A network news and mail reader. hm--html-menus Menu interface to html-mode. hyperbole An information management and hypertext system. ilisp A comint-based package for interacting with inferior lisp processes. iso ISO Latin language support. mailcrypt Package for dealing with PGP encrypted messages. mel MIME encoding library (part of the Tools for MIME). mh-e An interface to the MH-E mail handling system. mu Message Utilities library (part of the Tools for MIME). ns NeXTStep support. oobr An Object-Oriented class browser. pcl-cvs An interface to the Concurrent Version System. psgml General purpose SGML editing support with extra support for editing HTML. rmail A BABYL-format mail reader. sunpro Additional code for interfacing with SunPro products. tl Tiny Library (Part of the Tools for MIME). tm Tools for MIME. MIME support for emacs lisp based news and mail readers. tooltalk An inteface to the ToolTalk communication protocol. viper A full-featured VI emulator. vm View Mail, an UNIX-format alternative to RMAIL. w3 A World Wide Web interface.