Fork me on GitHub

While Emacs alone is very powerful, one of it's most important strengths is its ability to inter-operate with other software programs. Links to the download pages for several programs that can be used from with emacs are provided below (they are also very useful on their own!). Installation of all these programs follows normal conventions on each platform, just download, run the installer, and follow the instructions. Everything besides Emacs itself is optional, but installing everything is highly recommended.


Everything (windows only!)
For searching files by name:
The platform and environment for statistical computing:

For the best typesetting around.

Use your package manager, or see
For revision control:
For converting documents from one format to another:
Stardict (linux only)

If you want to use a local stardict dictionary, use your package manager to install stardict and sdcv. Word lookup will fall back to a web-based tool if sdcv is not available.

Basic configuration

While a detailed instructions on how to use these programs would take years, you can get started with the quickly. Here are some quick pointers and links to more detailed tutorials.


R is a free language and environment for statistical computing. It works well out of the box and does not require much in the way of configuration. If you want to learn more about R the official R website is a good place to start and includes many excellent manuals and tutorials.


LaTeX is a typesetting system that excels at formatting structured documents. LaTeX files are written in plain text using a markup syntax, and this markup is used to format the typeset document. LaTeX works well out of the box and does not typically require much in the way of configuration. If you want to learn more about LaTeX try these LaTeX tutorials by Andrew Roberts.


Initial configuration

git is a revision control system that allows you to track changes, merge changes with those made by collaborators, revert to previous versions, and more. While git can be used without any configuration, it is a good idea to at least set your user name and email; instructions for doing so are available at; a detailed introduction to git is available at Once installed you can use git from the command line; on Windows use the git bash application, on other platforms use your regular terminal emulator.

It is often convenient to tell git not to track some types of files (e.g., temporary files, or large binary files). LaTeX users in particular may be annoyed that git tries to track their .aux, .log, and other ephemeral files produced by LaTeX. You can tell git to ignore certain types of files by listing the in a .gitignore file. Details on .gitignore files are available at, and many useful templates (including one designed for LaTeX users) are available at


Many git users host their repositories on; helpful guides are available at You can clone from and push to github over https, and that is the recommended method; no configuration is required. If for some reason you prefer to use ssh you will need an ssh key pair; see for instructions.

Using git from emacs

This Emacs configuration includes magit, the best interface to git there is. It also configures Emacs as the editor so that working with version control systems in a shell inside Emacs should be pleasant.

  1. Pandoc

    Pandoc is a program for converting markup files from one markup language to another. Documentation and examples are available on the pandoc website.