Alpha Preview of EMacs Python (EMP)

· 3 min read

STATUS: PRE-ALPHA — did not check for bugs yet

emp’s goal is to be a full environment for everything Python. It builds on top of elpy, and provides even more bindings. It is a real attempt at convincing people to work with an Emacs environment for Python. Most importantly, once you have started working with Emacs on one language, you can easily switch to another language and be perfectly comfortable (rather than having to learn a new IDE which will most likely disappoint you).

For people it takes too long to setup their own Emacs environment for Python, which is why they’ll try and give up.

The goal of emp is to take all the best development components available for Python, and combine it conveniently under Emacs.

Often someone in the Emacs community finds out a new feature (himself or from another IDE), and implements it in Emacs for free. When it prooves useful and it is the best-of-their-kind, emp will want to integrate it.

Feel free to make feature suggestions!

Of course, as expected of Emacs, everything can be customized, so if you do not like a component you can exclude it.

Note that everything in Emacs is a bit different than you might be used to, so you’ll have to watch some videos to get up to speed if this is your first time using Emacs:

Note that since emp is in an early stage, everything might be changed, but everything will be made easier, and explained better, eventually :-)

Screenshot

Installation

Depending on whether you already have Python and/or Emacs installed, this might vary.

I have provided some specific example instructions for clean installs:

A general installation, however, goes as follows:

{% highlight bash %}

Clone emp

git clone https://github.com/kootenpv/emp/

Make backup of previous .emacs config if it exists, otherwise ignore error

mv ~/.emacs ~/.emacs_before_emp

Tell .emacs where to find the emp emacs files

echo ‘(setq user-emacs-directory “/home//emp/”)’ > ~/.emacs echo ‘(load (concat user-emacs-directory “.emacs.d/init.el”))’ >> ~/.emacs {% endhighlight bash %}

Now whenever you will open Emacs, it will be fully charged (after downloading packages)!

Below a list of features.

General features (I will expand these sections)

Python features

Feel free to leave a comment!