Document Alternatives
The README should mention alternatives, and how this project compares to them.
-
swank-js ; ~5 min video ; repo
-
nodejs-repl ; neato intro tutorial ; repo
-
eval-in-repl ---this one is more generic than skerrick
-
https://github.com/seanirby/evalator
-
https://github.com/pandeiro/livid-mode/
-
https://github.com/diadochos/org-babel-eval-in-repl/
-
A very brief introduction to sending code to interpreters ---might be useful to encourage contributors.
-
Other comparisons here
-
js-comint along with
js-comint-send-region🔥- This one is a strong replacement for skerrick, imho.
- Sometimes it's nice to be able to see the repl alongside my script;
- Othertimes I appreciate skerrick's overlays.
In any JS file, I just press
C-x C-eand the JS interpreter is brought up with the evaluation results shown;(define-key js-mode-map (kbd "C-x C-e") (lambda () (interactive) (call-interactively #'run-js) (other-window -1) (js-comint-send-last-sexp)))(Likewise, for skerrick, we can implicitly start the server if it is not started.)
This might be useful for gathering ideas/neat-features from other projects to implement in this project.
I think nodejs-repl and js-comint are the only two contenders; swank is unmaintained and the rest are too general. I found JS to be more problematic than other REPL-y languages in that sense; it requires special care for ES6 imports and overriding already-declared variables.
The overriding part is the most crucial for me; Without it, I need to resort to using let instead of const and I also need to delete the let keyword every time I want to evaluate that line, then undo the deletion.
Having a REPL would be nice indeed, though. I assume there's some hoop-jumping involved to intergrate Skerric with comint-mode, because it has a separate server, so I highly appreciate the work done so far by the author!