SublimeREPL is a plugin for Sublime Text that runs interactive interpreters from a number of languages within a normal tab. It also allows connecting to a remote interpreter (e.g. Clojure/Lein) though a telnet port. SublimeREPL has a built-in support for command history and transferring code from open buffers to the interpreters for evaluation.
SublimeREPL
is a sublime-text-plugin for sublimetext that runs interactive interpreters (both local and remote) inside a regular Sublime tab or view. It has built-in support for over 30 languages, including basic shell operations (cmd and bash).
NOTE: SublimeREPL is no longer under active development. It does work in sublimetext4, but some features such as IPython/Jupyter integration are no longer functional because of API changes. One alternative for SublimeREPL is the Terminus
package.
Features
- Run a REPL (read-eval-print-loop) interpreter inside a Sublime Text view/tab.
- Per-language persistent REPL history.
- Easily evaluate code in the running REPL.
- Replacement for external build systems, allowing use of
stdin
(Python'sraw_input()
/input()
, Ruby'sgets
, Clojure'sread-line
), etc. in programs. - Rich configuration with platform specific settings, project- and/or file-dependent environment variables, and sane defaults.
- Large number of languages supported out of the box, including python, ruby (pry and irb), r, clojure/clojurescript, nodejs, lua, php, scala, clisp and variants, haskell, and more.
- Architecture is extensible, so new languages can be added fairly easily.
- Python-specific features:
- ipython support, including graphing via matplotlib, pandas, etc.
- Support for local or remote[1] virtualenvs
- sublimetext-specific REPL for interfacing with Sublime's internal Python interpreter, including history and multi-line input.
- Shortcuts to quickly run Python scripts or launch pdb.
1. via ssh, osx/linux only
Useful Links
- SublimeREPL page at Package Control, Sublime's package manager
- SublimeREPL project on github
- Issues tracker
- Documentation (somewhat incomplete)