Please note: I no longer use emacs regularly and am unable to support issues on this configuration. I will leave it up for people in case it is useful, but I have disabled issues on the repository and will not respond to emails asking for help -- I receive too many emails as it is, and unfortunately I cannot respond to every one.
Tested on versions:
- GNU Emacs 24.3.1 (x86_64-apple-darwin13.1.0, NS apple-appkit-1265.19) of 2014-04-06
- GNU Emacs 24.3.1 (x86_64-pc-linux-gnu, GTK+ Version 3.4.2) of 2014-02-22
Clone this repository, and then run the
bootstrap.sh script. This
will copy all of the necessary files to
~/.emacs.d. Note that if these files exist for you already, this
will overwrite those files.
Once you have run the bootstrap script, start Emacs (make sure you are
connected to the internet when you do this for the first time). It
el-get and all of
the other plugins listed in the next section. This initial
installation may take a while, so be patient.
For some of the plugins to work, you will need to have some external dependencies installed, such as Python, IPython, git, etc. If the installation gives you an error, it might mean you are missing a required dependency that el-get doesn't install.
This configuration installs several plugins using
el-get. These plugins are
.emacs.d/settings/el-get-settings.el, and are also
auctex-- LaTeX plugin
ein-- IPython notebook plugin
jedi-- general Python support
pydoc-info-- Python documentation
auto-complete-- auto completion
popup-- visual popup (e.g., for auto completion)
color-theme-solarized-- the solarized color theme
magit-- git plugin
markdown-mode-- support for Markdown files
matlab-mode-- support Matlab files
scss-mode-- support for SCSS files
nyan-mode-- silly mode that renders a nyan cat to display how far you are through a file
helm-- completion and selection narrowing framework
helm-descbinds-- describe keybindings using helm
yaml-mode-- support YAML files
Here are some issues I or others have run into when installing this configuration.
Version control systems
To install all the plugins above, you need to have several different version control systems installed, including
Trouble building AUCTeX
If you get the following error:
error: el-get: ./autogen.sh el-get could not build auctex [./autogen.sh]
There are a few possible causes. Try these steps:
- Make sure you have
texlive-fullinstalled (if you are on Ubuntu) or MacTeX (if you are on Mac).
- Try running emacs from the command line (it could be an issue with not finding the right path).
- If that doesn't work, run emacs from the command line with the
--debug-initflag. This will give you more information about the error, and possibly point you towards the solution.
No such file or directory: pycheckers
If you do not want this functionality, you can comment out the block
of code in
python-settings.el that starts with "pyflakes flymake
integration". Otherwise, read on.
- In your
$PATHenvironment variable like so:
- Create a file in
~/bin/pycheckerswith the following contents:
#!/bin/bash pyflakes "$1" pep8 --ignore=E261 --repeat "$1" true
Make it executable with
chmod +x ~/bin/pycheckers.
Make sure you have
pip install pep8 pyflakes).
Now it should work! If not, please submit a bug report and let me know.
Tramp is timing out
If you get the error
tramp ssh: connect to host c port 22: Operation timed out and you are running OS X Mavericks with Emacs installed using Homebrew, then this is probably due to the Mavericks upgrade. Try reinstalling Emacs through Homebrew and remove the folder
~/.emacs.d/el-get (note: this will remove all your el-get plugins, and they will need to be reinstalled).
Auto-complete disappears from python mode
The python mode needs to have the
pylint packages added to your Python installation. Run this command:
pip install jedi epc pylint