Skip to main content

Use your CLI text editor from within the Python REPL.

Project description

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

EditREPL-2013.06.20.tar.gz (7.6 kB view details)

Uploaded Source

File details

Details for the file EditREPL-2013.06.20.tar.gz.

File metadata

File hashes

Hashes for EditREPL-2013.06.20.tar.gz
Algorithm Hash digest
SHA256 2cf966b27768389c82d4197a1df9c37c2b25ac6c4a019468168e93069637fdbb
MD5 24a79c6d615093ead2617407bf6a5528
BLAKE2b-256 1f5140aa58a0cf26e12e9105aec14525371f43ae4155f432b20c79a7f88cd5b7

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page