Skip to content
/ halp Public

Run programs in the Emacs buffer holding their source, seeing their output inline, interactively.

Notifications You must be signed in to change notification settings

darius/halp

Repository files navigation

HALP

With Halp, one keystroke executes all specially-marked lines from a
buffer and inserts the results inline. It can do this for source code
in Python, Haskell (literate or illiterate), or sh. This helps you
interactively test your programs as you write them -- like a
read-eval-print loop, but different.

To try it out, first install halp.el as described below. Then visit a
suitable file, (like sample.py, sample.lhs, or sample.sh in
examples/), and hit M-i. These sample files will explain what you can
do and how it works. (Actually only sample.py explains much. But for
the other languages, currently, there's little to explain.)


INSTALLING

(NOTE: While the Python Halp is in active use as of 2023, the others
should be considered old demos and no more.)

Add this line to your .emacs:

  (load-file "/path/to/this/directory/halp.el")

or just do M-x load-file halp.el. (Where /path/to/this/directory/ is 
where this README file and the rest of Halp resides.)

It will bind M-i in the modes that Halp supports. (Edit halp.el if you
want to change this.)

You'll need python-mode, or haskell-mode, etc., installed already
(whichever of these you intend to use with Halp). You'll also need
Emacs >= 21. Python 2 and 3 are both supported.

To build and install the JavaScript support:

  1. Build V8 from http://code.google.com/p/v8/
  2. Copy or symlink include/ and libv8.a from the directory you built
     V8 in (probably named v8-read-only)
  3. Run "make -f v8halp.mk"
  4. Put the resulting v8halp binary in your $PATH.


AUTHORS

Darius Bacon <[email protected]>
Brandon Moore
Evan Murphy

About

Run programs in the Emacs buffer holding their source, seeing their output inline, interactively.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published