/elpy

Emacs Python Development Environment

Primary LanguageEmacs LispGNU General Public License v3.0GPL-3.0

https://github.com/jorgenschaefer/elpy/workflows/Tests/badge.svg?branch=master Documentation Status https://coveralls.io/repos/jorgenschaefer/elpy/badge.svg?branch=master

Elpy, the Emacs Python IDE

Elpy is an Emacs package to bring powerful Python editing to Emacs. It combines and configures a number of other packages, both written in Emacs Lisp as well as Python. Elpy is fully documented at Readthedocs.

IMPORTANT NOTE: Looking for a maintainer

I find myself (@galaunay, current maintainer), unable to maintain Elpy at the moment, and probably for a while. If you are interested in getting involved in Elpy, please contact me by mail, the project definitely needs you !

In the meantime, I will keep an eye on the PRs to integrate any fix and/or new features proposed, but I will definitely not be able to treat the issues in a satisfying manner. If you are stuck with an issue, please have a look at the documentation, there is a lot of answers there. @gfederix also made some bug fixing in his fork, so you can try using this version of Elpy.

Features

Installation

Elpy is available on Melpa, the most straightforward way to install it is to use use-package:

(use-package elpy
  :ensure t
  :init
  (elpy-enable))

For other installation alternatives, see the documentation section Installation.

Quickstart

Once installed, Elpy will automatically provide code completion, syntax error highlighting and code hinting (in the modeline) for python files. Elpy offers a lot of features, but the following keybindings should be enough to get started:

  • C-c C-c evaluates the current python script (or region if something is selected) in an interactive python shell. The python shell is automatically displayed aside of your script.
  • C-RET evaluates the current statement (current line plus the following nested lines).
  • C-c C-z switches between your script and the interactive shell.
  • C-c C-d displays documentation for the thing under cursor. The documentation will pop in a different buffer, that can be closed with q.

Please have a look at the documentation at Readthedocs if you want to know more about what Elpy can do.

External resources

Contact

For questions regarding Elpy, do not hesitate to open an issue on github or visit us on IRC, channel #emacs-elpy on irc.freenode.net.