Comments (10)
from inf-clojure.
This has nothing to do with the emacs version, but basically involves the repl type detection. The first we try is lumo
, but this fails because the normal Clojure nrepl
does not of course has js/
in its namespaces.
I will need to add in first place code for detection nrepl
and then if it is not that, try all the others. In this way we are sure to rule out attempts that cause evaluation failures like this. @bbatsov
from inf-clojure.
I will need to add in first place code for detection nrepl and then if it is not that, try all the others. In this way we are sure to rule out attempts that cause evaluation failures like this. @bbatsov
There's not such thing as nREPL here - that's actually REPLy (which uses nREPL internally, but inf-clojure
can't really leverage nREpL directly so it shouldn't care about this). I REPLy repl should be treated as a regular Clojure REPL. Btw, lein
and boot
start exactly the same repl, so I'm pretty confused why this works with lein
, but not with boot
.
from inf-clojure.
This has nothing to do with the emacs version, but basically involves the repl type detection. The first we try is lumo, but this fails because the normal Clojure nrepl does not of course has js/ in its namespaces.
On a related note - shouldn't there also be some REPL type detected in the end regardless what was checked first? Seems that's the real issue here.
from inf-clojure.
from inf-clojure.
I guess they can simply add some var similar to *clojure-version*
to simplify the process.
from inf-clojure.
As per discussion in linked PR, the issue is not as easy as it seems because there is no common way to detect a Repl type and folks maintening them are not willing to compromise at the moment.
There will be one once a common protocol like unrepl catches up.
So my workaround would be to kind of detect and skip the inevitable error we will receive (js/ is not defined in nrepl for instance) and return a false in the detection function.
from inf-clojure.
Another problem I found is related to the Ansi code the repls are sending. The read
function fails and throws an error. I can ignore that for now but I need to get rid of the ansi codes somehow or nothing is readable otherwise. Lumo does not have this problem because we are using it in dumb mode.
from inf-clojure.
I found a package that does the ANSI filtering. This is the commit to take inspiration from.
from inf-clojure.
The error should be solved with the Caveat added to not use colors for now: boot repl -C
is now used by inf-clojure
from inf-clojure.
Related Issues (20)
- [Refactor] Combine the defcustoms for the different environments into alists
- Add helpers for auto enabling inf-clojure
- Occasional spontaneous injection of lumo.repl into socket REPL input HOT 2
- inf-clojure-show-var-source only works if code was entered by hand in repl HOT 1
- would be nice if C-c C-z in REPL would switch back to source buffer HOT 4
- Make a new release? HOT 1
- Use project detection code from clojure-mode HOT 8
- testing dep assess breaks tests on emacs 25 HOT 2
- (wrong-type-argument stringp nil) HOT 8
- inf-clojure-sanitize-command misspelled
- Eval into self-started clojure CLI REPL fails HOT 8
- Right way to add deps when starting REPL from emacs HOT 1
- Clojure arglists use reader conditionals, which are not supported in prepl currently. HOT 2
- All strings sent to REPL are converted from multi-line to single-line HOT 10
- Include in documentation how to require a file and set the ns
- Suggested addition: ClojureCLR support HOT 2
- inf-clojure-eval-last-sexp should respect current namespace of a file evaluating from HOT 2
- C-c C-c in the repl comint-interrupt-subjob kills inf-clojure instead of interrupting current evaluation HOT 3
- Feature: include helper function for starting socket repls HOT 1
- Symbol's value as variable is void: inf-clojure-custom-repl-name HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from inf-clojure.