12

I was expecting the Emacs Lisp Reference Manual at (C-h i m elisp). But there was no menu elisp or lisp there. C-h v and C-h f work fine for variables or functions though. C-h i 5 takes me to file permissions.

What other binding is standard to find something like this?

Is that something that has to be installed?

  • Elisp (not elisp) works for me – Ves Mar 7 '19 at 14:40
  • 3
    Are you on Debian? I think the manuals need to be installed separately there. – npostavs Mar 7 '19 at 14:52
  • @npostavs: yes on debian. – Pierre B Mar 7 '19 at 17:39
  • @Ves: neither one, nor the other. – Pierre B Mar 7 '19 at 17:40
  • 4
    You'll probably want to install this package: packages.debian.org/sid/emacs-common-non-dfsg Debian has a policy against GNU FDL, and they put Emacs' documentation into a separate package in non-free. – user12563 Mar 7 '19 at 17:46
9

This is a great question!

I've found the directions online to install it by hand unclear and, frankly, a bit of a pain (at least on Debian).

On Debian...

Emacs on Debian doesn't come with the Emacs Lisp Reference Manual by default. It's kind of silly, but Debian stores it in the non-free repos. Unfortunately, a regular apt-get install doesn't Just Work™.

Note: Before proceeding, I assume you've installed Emacs from an official Debian mirror and not compiled from source or installed from some random .deb from some random dude on the Internet.

To begin, you need to include non-free repos. Do this by appending non-free1 to the end of each entry in /etc/apt/sources.list, like

deb http://http.us.debian.org/debian stable main non-free

You'll need to run sudo apt-get update to refresh the package listing.

Once you've updated the package listing, install the package emacs-common-non-dfsg, like

sudo apt-get install emacs-common-non-dfsg

Note that older releases of Debian or Ubuntu may not have emacs-common-non-dfsg; in those cases, you'll need to add the Emacs version number, i.e.,

sudo apt-get install emacs25-common-non-dfsg

You may need to restart Emacs, or close and restart the Emacs info-browser.

Manually installing...

I have not tested this, but it also ought to be possible to just point Emacs to the appropriate file. The source is called elisp.info and is available at gnu.org. You'll want the "Info document" link. Check M-x Info-default-directory-list to see where the default Info directory is. You ought to be able to either place the emacs.info file there or add another directory to the Info-additional-directory-list with

(add-to-list 'Info-additional-directory-list "/path/to/my/info")

You can read more about the info path on the EmacsWiki.

1 DISCLAIMER: Although the Emacs Lisp Reference Manual is libre, including non-free repos does open you to non-free software.

2 This should install the Emacs Lisp Reference Manual as emacs.info.gz to /usr/share/info. Strictly speaking, it seems like dpkg is the only dependency, but I couldn't get Emacs to recognize the new contents in /usr/share/info without install-info. Maybe someone could clarify why, but that's more a Debian question than an Emacs one...

| improve this answer | |
  • I don't think you need to install install-info, it will be installed automatically as a dependency. You can get the current manuals with emacs-common-non-dfsg, which will link to the latest manual; emacs25-common-non-dfsg will link to the emacs25 manuals, even if you are using a newer version. – Tyler Dec 13 '19 at 16:58
  • install-info is a dependency of emacs-??-common. The command install-info is required to update info/dir entires (probably called by install scripts) – jue Dec 13 '19 at 17:17
  • @jue Yes, that's correct. All I meant was that the command apt-get install emacs-common-non-dfsg is enough, as apt-get will automatically install any dependencies, including 'install-info`. – Tyler Dec 13 '19 at 18:42
  • @jue I don't mean my comments as a criticism of the answer, I just wanted to update a few things since I'm recommending other questions are a duplicate of this one. (ie emacs.stackexchange.com/questions/54349/…) – Tyler Dec 13 '19 at 18:44
  • @Tyler thanks for clarifying the install steps. No offense taken! I don't have time to update my response atm. If you've confirmed the steps, feel free to edit my answer. Otherwise I'll probably get to it when I update to Buster. – Lorem Ipsum Dec 13 '19 at 18:56
1

Ubuntu 1. Download https://www.gnu.org/software/emacs/manual/info/elisp.info.gz to your /usr/share/info directory. 2. From a terminal run update-info-dir command. 3. From emacs C-h i m Elisp (capital E).

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.