Comments (13)
How did you install it (via MELPA or manually)? Is it the last version of clomacs? Could you paste full error trace please (M-x toggle-debug-on-error).
from clomacs.
via MELPA, I guess it means the latest version? the full error trace is
Debugger entered--Lisp error: (void-variable clomacs--doc) #[0 "\302 \210\303� \304\305$\210\306\307\310\"\207" [clomacs--doc clojure\.repl/doc clomacs-highlight-initialize clomacs-defun :return-value :stdout defalias clomacs-doc #[257 "\300 \205�\301�!\207" [clomacs-get-connection clomacs--doc] 3 "\n\n(fn X)"]] 5 "\n\n(fn)"]() funcall(#[0 "\302 \210\303� \304\305$\210\306\307\310\"\207" [clomacs--doc clojure\.repl/doc clomacs-highlight-initialize clomacs-defun :return-value :stdout defalias clomacs-doc #[257 "\300 \205�\301�!\207" [clomacs-get-connection clomacs--doc] 3 "\n\n(fn X)"]] 5 "\n\n(fn)"]) mapc(funcall (#[0 "\302 \210\303� \304\305$\210\306\307\310\"\207" [clomacs--doc clojure\.repl/doc clomacs-highlight-initialize clomacs-defun :return-value :stdout defalias clomacs-doc #[257 "\300 \205�\301�!\207" [clomacs-get-connection clomacs--doc] 3 "\n\n(fn X)"]] 5 "\n\n(fn)"])) do-after-load-evaluation("c:/Users/Eleven/.emacs.d/elpa/clomacs-20160513.153/clomacs.elc") require(clomacs) eval((require (quote clomacs)) nil) eval-last-sexp-1(nil) #[257 "�\204�\303�!\207 �\303�!\n)B\211A =\204�\211A�\211@\207" [eval-expression-debug-on-error eval-last-sexp-fake-value debug-on-error eval-last-sexp-1] 4 2422004 "P"](nil) #[(&rest _it) "� !\211�\207" [ad--addoit-function eval-last-sexp-arg-internal ad-return-value] 2]() eval-sexp-fu-flash-doit-simple(#[(&rest _it) "� !\211�\207" [ad--addoit-function eval-last-sexp-arg-internal ad-return-value] 2] (closure (t) (&rest args) (apply (quote esf-hl-highlight-bounds) (quote (1 . 19)) (quote eval-sexp-fu-flash) (quote #<buffer *scratch*>) args)) (closure (t) (&rest args) (apply (quote esf-hl-unhighlight-bounds) (quote (1 . 19)) (quote #<buffer *scratch*>) args))) eval-sexp-fu-flash-doit(#[(&rest _it) "� !\211�\207" [ad--addoit-function eval-last-sexp-arg-internal ad-return-value] 2] (closure (t) (&rest args) (apply (quote esf-hl-highlight-bounds) (quote (1 . 19)) (quote eval-sexp-fu-flash) (quote #<buffer *scratch*>) args)) (closure (t) (&rest args) (apply (quote esf-hl-unhighlight-bounds) (quote (1 . 19)) (quote #<buffer *scratch*>) args))) esf-flash-doit(#[(&rest _it) "� !\211�\207" [ad--addoit-function eval-last-sexp-arg-internal ad-return-value] 2] (closure (t) (&rest args) (apply (quote esf-hl-highlight-bounds) (quote (1 . 19)) (quote eval-sexp-fu-flash) (quote #<buffer *scratch*>) args)) (closure (t) (&rest args) (apply (quote esf-hl-unhighlight-bounds) (quote (1 . 19)) (quote #<buffer *scratch*>) args)) (closure (t) (&rest args) (apply (quote esf-flash-error-bounds) (quote (1 . 19)) (quote #<buffer *scratch*>) (quote eval-sexp-fu-flash-error) args))) ad-Advice-eval-last-sexp(#[257 "�\204�\303�!\207 �\303�!\n)B\211A =\204�\211A�\211@\207" [eval-expression-debug-on-error eval-last-sexp-fake-value debug-on-error eval-last-sexp-1] 4 2422004 "P"] nil) apply(ad-Advice-eval-last-sexp #[257 "�\204�\303�!\207 �\303�!\n)B\211A =\204�\211A�\211@\207" [eval-expression-debug-on-error eval-last-sexp-fake-value debug-on-error eval-last-sexp-1] 4 2422004 "P"] nil) eval-last-sexp(nil) call-interactively(eval-last-sexp nil nil) command-execute(eval-last-sexp)
Sorry for such a mess I don't know how to deal with it...
from clomacs.
Looks like we clashed here with another third-party package. You can try to reproduce it with emacs -Q
. From the other side, we can try to make Elisp interpreter happy. Please, try the last commit of clomacs.
from clomacs.
Sorry but the latest commit report the same error on my emacs....
tried to start emacs -Q
and just load the required packages, this is the error trace
Debugger entered--Lisp error: (void-variable clomacs--doc) #[0 "\302 \210\303� \304\305$\210\306\307\310\"\207" [clomacs--doc clojure\.repl/doc clomacs-highlight-initialize clomacs-defun :return-value :stdout defalias clomacs-doc #[257 "\300 \205�\301�!\207" [clomacs-get-connection clomacs--doc] 3 "\n\n(fn X)"]] 5 "\n\n(fn)"]() funcall(#[0 "\302 \210\303� \304\305$\210\306\307\310\"\207" [clomacs--doc clojure\.repl/doc clomacs-highlight-initialize clomacs-defun :return-value :stdout defalias clomacs-doc #[257 "\300 \205�\301�!\207" [clomacs-get-connection clomacs--doc] 3 "\n\n(fn X)"]] 5 "\n\n(fn)"]) mapc(funcall (#[0 "\302 \210\303� \304\305$\210\306\307\310\"\207" [clomacs--doc clojure\.repl/doc clomacs-highlight-initialize clomacs-defun :return-value :stdout defalias clomacs-doc #[257 "\300 \205�\301�!\207" [clomacs-get-connection clomacs--doc] 3 "\n\n(fn X)"]] 5 "\n\n(fn)"])) do-after-load-evaluation("c:/Users/Eleven/.emacs.d/elpa/clomacs-20160513.153/clomacs.elc") require(clomacs) eval((require (quote clomacs)) nil) eval-last-sexp-1(nil) eval-last-sexp(nil) call-interactively(eval-last-sexp nil nil) command-execute(eval-last-sexp)
By the way, is it neccessary to start individual server for every library? I mean, I'm new to clojure so I 'm just asking, because starting a new server do take few seconds :-)
from clomacs.
added (defvar clomacs--doc)
at the beginning of the clomacs.el
seems to solve the problem, don't know if this would cause other issues..
from clomacs.
changed
(eval-after-load "clomacs"
'(progn
(clomacs-highlight-initialize)
(defvar clomacs--doc)
;; Should be last `clomacs-defun'
(clomacs-defun clomacs--doc
clojure.repl/doc
:return-value :stdout)
(defun clomacs-doc (x)
(if (clomacs-get-connection)
(clomacs--doc x)))))
to
(eval-after-load "clomacs"
(lambda()
(clomacs-highlight-initialize)
(defvar clomacs--doc)
;; Should be last `clomacs-defun'
(clomacs-defun clomacs--doc
clojure.repl/doc
:return-value :stdout)
(defun clomacs-doc (x)
(if (clomacs-get-connection)
(clomacs--doc x)))))
also works.
Maybe something wrong with the eval-after-load
function call?
from clomacs.
Ok I think I got it. I removed the clomacs.elc
file and restart emacs, everything works fine. I think it is because the clomacs--doc is defined in a quoted list,so when the file was byte-compiled the information was lost. You may try to byte-compile your source file to see if you could reproduce the issue. Hope this will help.
from clomacs.
Ok, let's unquote eval-after-load contents here to troubleshooting future installation problems.
from clomacs.
By the way, is it neccessary to start individual server for every library? I mean, I'm new to clojure so I 'm just asking, because starting a new server do take few seconds :-)
The first version of clomacs behaves exactly in this way. I thought that clomacs user can use any nREPL server. This solution has some problems:
- You should have a way to load all required jar* dependencies. This means you should have a way to load
com.cemerick/pomegranate
. You can't do any assumptions about current nREPL process. So, I loaded all required libraries manually. That is definitely ugly (see this code:clomacs/src/clj/clomacs/clomacs.clj
Line 125 in 752bba9
- If you have to load different versions of libraries for different extensions (in that times I believed we'll have many of them :)) you will get a problem.
- If you terminate you experimental nREPL process, you will lose process associated with (probably stable) Emacs mixed Elisp-Clojure extension.
So, finally I've decided to be close to CIDER as much as possible and keep one nREPL with all associated Clojure/Java code for every extension.
from clomacs.
I have no success with reproducing of this problem (so far), but can I consider the problem solved with last commit?
from clomacs.
Hmm..weired, still have so much to learn about elisp.
I think the safest way is to add a declaration at the beginning.
Anyway, thanks for the quick response :)
from clomacs.
Sorry, I guess I just forgot to remove the (defvar clomacs--doc)
in my .emacs
file when I test the code.
The quoted list doesn't matter, but byte-compile the file do have some influence. And add a declaration of clomacs--doc can still fix the issue.
Apologize for any confusion I may have made. And thanks for your answer to my question.
from clomacs.
I still see this issue. I installed ejc-sql in spacemacs and it failed with a compilation error -- ejc-interaction.el:23:1 Error: Symbol's value as variable is void: clomacs--doc
from clomacs.
Related Issues (13)
- nrepl not found HOT 1
- Passing escaped substrings HOT 1
- clomacs-httpd-start FileNotFoundException on Windows 10 HOT 6
- cdr: Wrong type argument: arrayp, ("clojure-test") HOT 2
- Please make cljs-clomacs. HOT 8
- Create clomacs server HOT 2
- Try README CLJ call Elisp function demo error HOT 1
- Passing map to clojure via alist HOT 6
- Adding babashka as runtime HOT 3
- Async call-type example
- Error: Symbol’s function definition is void: clomacs-doc HOT 2
- Warning msg when installing in spacemacs and the dependent package (ejc-sql) fails to install HOT 3
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 clomacs.