There are four options to install inform-mode: via the Marmalade Emacs packaging system; using the package system on your OS; via the Makefile if you are on a Unix-derived system, have access to the 'make' program and have root access; or manually, which should work on all platforms. Each is described further below. XEmacs users should also see note 6.

1. Via Marmalade

Marmalade is a packaging system for Emacs. Follow the instructions on the website to add Marmalade to your list of package sources. Then inside emacs run

M-x package-install RET inform-mode RET

2. Packaged versions

Some GNU/Linux systems have inform-mode available via their packaging systems. On Debian, Ubuntu or other derivatives you can run:

apt-get install inform-mode

However, this may not provide the latest version: if you want this try one of the following two methods.

3. Makefile

Edit the file 'Makefile' and replace the name of your emacs binary and site-lisp directory if they are different.

Type

make

to byte-compile the source. Then as root, eg using sudo:

make install

to install the files to the site-lisp directory for your emacs so it is available for all users on your system.

4. Manually

First, byte-compile the file by running the following command (all on one line):

emacs  -batch -q -no-site-file -eval "(setq load-path (cons (expand-file-name \".\") load-path))" --eval '(byte-compile-file "inform-mode.el")'
            

Replace Emacs with 'xemacs' if you are using XEmacs. Ignore any byte-compile warnings.

Next, copy inform-mode.elc to the directory you want to install it. If you put the file in a non-standard place, tell emacs where to find it by putting a line like:

(setq load-path (cons (expand-file-name "/path/to/file/") load-path))
            

in your .emacs.

5. Updating .emacs

For all options except 1) you will need to update your .emacs to autoload inform-mode and make it recognise .inf and .h files. Add the following:

(autoload 'inform-mode "inform-mode" "Inform editing mode." t)
(autoload 'inform-maybe-mode "inform-mode" "Inform/C header editing mode.")
(setq auto-mode-alist
(append '(("\\.h\\'"   . inform-maybe-mode)
("\\.inf\\'" . inform-mode))
auto-mode-alist))
            

6. A note for XEmacs users

You may need to install extra packages for inform-mode to work. If you are using the default XEmacs install on Windows, for example, you will need to install the 'ispell' and 'eterm' packages.