efaq: Installing Texinfo documentation
3.5 How do I install a piece of Texinfo documentation?
======================================================
Emacs releases come with pre-built Info files, and the normal install
process places them in the correct location. This is true for most
applications that provide Info files. The following section is only
relevant if you want to install extra Info files by hand.
First, you must turn the Texinfo source files into Info files. You
may do this using the stand-alone ‘makeinfo’ program, available as part
of the Texinfo package at
<http://www.gnu.org/software/texinfo/>
For information about the Texinfo format, read the Texinfo manual
which comes with the Texinfo package. This manual also comes installed
in Info format, so you can read it from Emacs; type ‘C-h i m texinfo
<RET>’.
Alternatively, you could use the Emacs command ‘M-x
texinfo-format-buffer’, after visiting the Texinfo source file of the
manual you want to convert.
Neither ‘texinfo-format-buffer’ nor ‘makeinfo’ installs the resulting
Info files in Emacs’s Info tree. To install Info files, perform these
steps:
1. Move the files to the ‘info’ directory in the installed Emacs
distribution. File-name conventions, if you don’t know
where that is.
2. Run the ‘install-info’ command, which is part of the Texinfo
distribution, to update the main Info directory menu, like this:
install-info --info-dir=DIR-PATH DIR-PATH/FILE
where DIR-PATH is the full path to the directory where you copied
the produced Info file(s), and FILE is the name of the Info file
you produced and want to install.
If you don’t have the ‘install-info’ command installed, you can
edit the file ‘info/dir’ in the installed Emacs distribution, and
add a line for the top level node in the Info package that you are
installing. Follow the examples already in this file. The format
is:
* Topic: (relative-pathname). Short description of topic.
If you want to install Info files and you don’t have the necessary
privileges, you have several options:
• Info files don’t actually need to be installed before being used.
You can use a prefix argument for the ‘info’ command and specify
the name of the Info file in the minibuffer. This goes to the node
named ‘Top’ in that file. For example, to view a Info file named
‘INFO-FILE’ in your home directory, you can type this:
C-u C-h i ~/INFO-FILE <RET>
Alternatively, you can feed a file name to the ‘Info-goto-node’
command (invoked by pressing <g> in Info mode) by typing the name
of the file in parentheses, like this:
C-h i g (~/INFO-FILE) <RET>
• You can create your own Info directory. You can tell Emacs where
that Info directory is by adding its pathname to the value of the
variable ‘Info-default-directory-list’. For example, to use a
private Info directory which is a subdirectory of your home
directory named ‘Info’, you could put this in your ‘.emacs’ file:
(add-to-list 'Info-default-directory-list "~/Info")
You will need a top-level Info file named ‘dir’ in this directory
which has everything the system ‘dir’ file has in it, except it
should list only entries for Info files in that directory. You
might not need it if (fortuitously) all files in this directory
were referenced by other ‘dir’ files. The node lists from all
‘dir’ files in ‘Info-default-directory-list’ are merged by the Info
system.