• Stars
    star
    249
  • Rank 162,987 (Top 4 %)
  • Language
    Emacs Lisp
  • Created almost 12 years ago
  • Updated over 8 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Emacs configuration files

Emacs Configuration

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

Installing

Clone this repository, and then run the bootstrap.sh script. This will copy all of the necessary files to ~/.emacs and ~/.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 will install el-get and all of the other plugins listed in the next section. This initial installation may take a while, so be patient.

Dependencies

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.

Emacs plugins

This configuration installs several plugins using el-get. These plugins are specified in .emacs.d/settings/el-get-settings.el, and are also listed below:

  • 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
  • nxhtml (MuMaMo)
  • 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

Gotchas

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 hg, git, bzr, and cvs.

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:

  1. Make sure you have automake and texlive-full installed (if you are on Ubuntu) or MacTeX (if you are on Mac).
  2. Try running emacs from the command line (it could be an issue with not finding the right path).
  3. If that doesn't work, run emacs from the command line with the --debug-init flag. This will give you more information about the error, and possibly point you towards the solution.

No such file or directory: pycheckers

pycheckers is a little script to check that your Python code conforms to the PEP8 style guide using the pep8 and pyflakes Python packages.

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.

  1. In your ~/.bashrc, add $HOME/bin to your $PATH environment variable like so:
export PATH="$HOME/bin:$PATH"
  1. Create a file in ~/bin/pycheckers with the following contents:
#!/bin/bash

pyflakes "$1"
pep8 --ignore=E261 --repeat "$1"
true
  1. Make it executable with chmod +x ~/bin/pycheckers.

  2. Make sure you have pep8 and pyflakes installed (run pip install pep8 pyflakes).

  3. 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 jedi, epc, and pylint packages added to your Python installation. Run this command:

pip install jedi epc pylint

Hint provided by Andrea Crotti's EuroPython 2013 Conference talk, Emacs and shell as your best friends, and the minimal Emacs configuration used in the talk.

More Repositories

1

nbflow

A tool that supports one-button reproducible workflows with the Jupyter Notebook and Scons.
Python
160
star
2

gutenbach

A networked music jukebox implementing the Internet Printing Protocol (IPP)
CSS
40
star
3

dbtools

Tools for interfacing with SQLite databases
Python
34
star
4

plotchecker

A set of utilities for checking and grading matplotlib plots
Python
33
star
5

nbgrader-demo

Short demo of nbgrader
Jupyter Notebook
24
star
6

original-nbgrader

IPython nbconvert preprocessor for grading notebooks
Python
18
star
7

git-annex-tutorial

15
star
8

python-snippets

Useful python code snippets.
Python
14
star
9

dodona

Technical question answering NLP bot
JavaScript
14
star
10

bayesian-quadrature

Bayesian quadrature
Python
13
star
11

gaussian_processes

Python library for working with gaussian processes
Python
13
star
12

python-course

Python tutorials for scientific computing
Python
11
star
13

blog

Source code for http://www.jesshamrick.com/
Jupyter Notebook
10
star
14

pystoch

Stochastic Python
Python
10
star
15

nbflow-example

Toy example of using nbflow with a complex dependency chain
Jupyter Notebook
9
star
16

quals

Reading lists and notes for my qualifying exam
Jupyter Notebook
9
star
17

pycon-2014-talk

Slides for "Games for Science: Creating interactive psychology experiments in Python with Panda3D"
JavaScript
8
star
18

mental-rotation-experiment-cogsci2014

Code to run the mental rotation experiment from Hamrick & Griffiths (2014).
JavaScript
5
star
19

docker-oauthenticator

Uses a combination of local users and GitHub OAuth to authenticate users. Users can be created on the host system from within the docker container.
Python
3
star
20

shepard-metzler-stimuli

Scripts for generating and rendering stimuli like those from Shepard & Metzler (1971)
Python
3
star
21

script-snippets

Small, useful scripts.
Python
2
star
22

block-towers

Python
2
star
23

scipy-2015-slides

Slides for my talk on JupyterHub and education at SciPy 2015
HTML
2
star
24

optimal-mental-rotation

A project looking at optimal experiment design for mental rotation tasks.
Jupyter Notebook
2
star
25

sigcse-2016-slides

Slides for my SIGCSE 2016 Demo on nbgrader
HTML
1
star
26

one-and-done-physics-cogsci-2015

TeX
1
star
27

2015-07-17-jupyterday

JupyterHub presentation for the 07/17/2015 JupyterDay
JavaScript
1
star
28

mental-rotation-slides-cogsci2014

Slides from the CogSci 2014 talk on the paper "What to simulate? Inferring the right direction for mental rotation"
JavaScript
1
star