This release is a complete rewrite in C. All functionality has been preserved, but this version is much more portable and can be added to package managers which cannot package GraalVM.
Additionally, the --port option has been extended to be able to find the nREPL port in a file "near" the source code, and an additional format method is available for list values in nREPL replies.
rep
A single-shot nREPL client designed for shell invocation.
This connects to a running nREPL server (like kind started with lein repl, for example), sends some code to be evaluated, and prints the results and output.
$ rep '(clojure.tools.namespace.repl/refresh)'
:reloading ()
:ok
Unlike other nREPL clients, rep does not try to maintain a persistent connection, meaning that thread-local variables and bindings like *e and *1 will not persist across invocations of rep. Perhaps there are other limitations because of this?
Installation
$ make && sudo make install
Usage, Options, and Examples
Building with Nix
You can use Nix as the build tool.
A result symlink will appear in the current directory point to the build output.
Running Tests
To run all the tests that CI runs, the way CI runs them (do this before issuing a pull request):
Using with Kakoune
The rc/ folder contains scripts which add a ,e user mode to Kakoune. To link this to Kakoune’s autoload directory, do the following:
$ make && make install
$ ln -sf /usr/local/share/kak/autoload/plugins/rep.kak ~/.config/kak/autoload/
rep must be in the path for the plugin to work.
License
Copyright © 2018 Jason M. Felice
Distributed under the Eclipse Public License either version 1.0 or (at your option) any later version.