Skip to content
A port of InteractiveEditor to Python from Giles Bowkett's Utility Belt ruby gem.
Python Shell
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
docs
editrepl
.gitignore
CHANGES.txt
LICENSE.txt
MANIFEST
MANIFEST.in
README.md
README_pypi.rst
make.sh
preview.gif
requirements.txt
setup.py

README.md

EditREPL

EditREPL is a port of Giles Bowkett's InteractiveEditor component from his ruby gem Utility Belt.

EditREPL allows you to run a terminal based editor inside your REPL session to interactively edit code.

video preview

Video

Installation

Installation is easy using either pip or easy_install.

easy_install EditREPL
pip install EditREPL

Supported Environments

EditREPL is Python2 and Python3 compatible with the default interactive shell.

Basic Usage

To include it in your session, import the module and call the editor function:

import editrepl
vim()

After you save, the buffer will be executed in the current REPL context.

Advanced Usage

Can I edit any file?

Yes, just call the editor function with the filename you want to edit.

vim("myfile.py")

How does EditREPL choose your editor?

By default it uses the editor defined as your EDITOR environment variable, but if that isn't defined it tries the following editors in order:

["vim", "vi", "emacs", "nano", "pico", "ed"]

Can I change my editor?

To manually set your editor after initialization, supply the name or full path to the executable as follows:

ER.editor = "cli-textmate"

This will create a binding to the function cli-textmate for you to call.

What REPLs does it work with?

Only the default python interpreter. iPython and bPython are confirmed to not work.

How does it work?

Check out the literate code here or clone the repo and checkout out the docs folder.

Etc

By Philip Bjorge

Contributors

  • rpk512

Released under BSD License

https://github.com/philipbjorge/EditREPL

Something went wrong with that request. Please try again.