Comments (6)
Seems like it's a known bug in Doom:
doomemacs/themes#817
It's a single-character change so you could quite easily find and patch the source file if you don't want to wait for the PR to be merged :)
from cider.
Thanks for the report!
Have you tried with Emacs 29?
(make sure to remove .elc files after switching versions)
from cider.
Hi @vemv, @bbatsov.
I was using emacs-plus 30.0.60 on macOS, and I was delighted. However, as soon as I installed CIDER, I got problems when opening a clojure file. I also hit the
(error "Invalid face box" :line-width -1 :color base5)
error, and could not found a solution to this problem other than downgrading to emacs-plus 29.4 (such a shame).
Is there a solution, that allows me to use Emacs 30.0.60 ?
Note: I'm using Doom Emacs.
from cider.
Hi @oscarvarto !
I'd try running M-x toggle debug-on-error
before CIDER is loaded at all (which probably is as simply as starting Emacs without any .clj file open, and then opening a .clj file).
You should get a stacktrace.
Feel free to post it here. It also may give you enough info to do a quick research yourself.
Cheers - V
from cider.
I reinstalled Emacs 30.0.60. I got the error as expected. Here is the stack trace:
Debugger entered--Lisp error: (error "Invalid face box" :line-width -1 :color base5)
set-face-attribute(cider-result-overlay-face #<frame *Minibuf-1* – Doom Emacs 0x130830a00> :background "#303030" :box (:line-width -1 :color base5))
face-spec-set-2(cider-result-overlay-face #<frame *Minibuf-1* – Doom Emacs 0x130830a00> (:background "#303030" :box (:line-width -1 :color base5)))
face-spec-recalc(cider-result-overlay-face #<frame *Minibuf-1* – Doom Emacs 0x130830a00>)
face-spec-set(cider-result-overlay-face ((((class color) (background light)) :background "grey90" :box (:line-width -1 :color "yellow")) (((class color) (background dark)) :background "grey10" :box (:line-width -1 :color "black"))) face-defface-spec)
custom-declare-face(cider-result-overlay-face ((((class color) (background light)) :background "grey90" :box (:line-width -1 :color "yellow")) (((class color) (background dark)) :background "grey10" :box (:line-width -1 :color "black"))) "Face used to display evaluation results at the end of line.\nIf `cider-overlays-use-font-lock' is non-nil, this face is\napplied with lower priority than the syntax highlighting." :group cider :package-version (cider "0.9.1"))
load-with-code-conversion("/Users/oscarvarto/doom-emacs/.local/straight/build-30.0.60/cider/cider-overlays.el" "/Users/oscarvarto/doom-emacs/.local/straight/build-30.0.60/cider/cider-overlays.el" nil t)
require(cider-overlays)
load-with-code-conversion("/Users/oscarvarto/doom-emacs/.local/straight/build-30.0.60/cider/cider-test.el" "/Users/oscarvarto/doom-emacs/.local/straight/build-30.0.60/cider/cider-test.el" nil t)
require(cider-test)
load-with-code-conversion("/Users/oscarvarto/doom-emacs/.local/straight/build-30.0.60/cider/cider-repl.el" "/Users/oscarvarto/doom-emacs/.local/straight/build-30.0.60/cider/cider-repl.el" nil t)
require(cider-repl)
load-with-code-conversion("/Users/oscarvarto/doom-emacs/.local/straight/build-30.0.60/cider/cider.el" "/Users/oscarvarto/doom-emacs/.local/straight/build-30.0.60/cider/cider.el" nil t)
cider--setup-clojure-major-mode((keymap (menu-bar keymap (clojure menu-item "Clojure" (keymap "Clojure" (Toggle\ between\ string\ &\ keyword menu-item "Toggle between string & keyword" clojure-toggle-keyword-string) (Align\ expression menu-item "Align expression" clojure-align) (Cycle\ privacy menu-item "Cycle privacy" clojure-cycle-privacy) (Cycle\ if\,\ if-not menu-item "Cycle if, if-not" clojure-cycle-if) (Cycle\ when\,\ when-not menu-item "Cycle when, when-not" clojure-cycle-when) (Cycle\ not menu-item "Cycle not" clojure-cycle-not) (Toggle\ \#_\ ignore\ form menu-item "Toggle #_ ignore form" clojure-toggle-ignore) (Toggle\ \#_\ ignore\ of\ surrounding\ form menu-item "Toggle #_ ignore of surrounding form" clojure-toggle-ignore-surrounding-form) (Add\ function\ arity menu-item "Add function arity" clojure-add-arity) (Promote\ \#\(\)\ fn\ literal menu-item "Promote #() fn literal" clojure-promote-fn-literal) (ns\ forms menu-item "ns forms" (keymap "ns forms" (Insert\ ns\ form\ at\ the\ top menu-item "Insert ns form at the top" clojure-insert-ns-form) (Insert\ ns\ form\ here menu-item "Insert ns form here" clojure-insert-ns-form-at-point) (Update\ ns\ form menu-item "Update ns form" clojure-update-ns) (Sort\ ns\ form menu-item "Sort ns form" clojure-sort-ns) (Rename\ ns\ alias menu-item "Rename ns alias" clojure-rename-ns-alias))) (Convert\ collection menu-item "Convert collection" (keymap "Convert collection" (Convert\ to\ list menu-item "Convert to list" clojure-convert-collection-to-list) (Convert\ to\ quoted\ list menu-item "Convert to quoted list" clojure-convert-collection-to-quoted-list) (Convert\ to\ map menu-item "Convert to map" clojure-convert-collection-to-map) (Convert\ to\ vector menu-item "Convert to vector" clojure-convert-collection-to-vector) (Convert\ to\ set menu-item "Convert to set" clojure-convert-collection-to-set))) (Refactor\ ->\ and\ ->> menu-item "Refactor -> and ->>" (keymap "Refactor -> and ->>" (Thread\ once\ more menu-item "Thread once more" clojure-thread) (Fully\ thread\ a\ form\ with\ -> menu-item "Fully thread a form with ->" clojure-thread-first-all) (Fully\ thread\ a\ form\ with\ ->> menu-item "Fully thread a form with ->>" clojure-thread-last-all) (nil "--") (Unwind\ once menu-item "Unwind once" clojure-unwind) (Fully\ unwind\ a\ threading\ macro menu-item "Fully unwind a threading macro" clojure-unwind-all))) (Let\ expression menu-item "Let expression" (keymap "Let expression" (Introduce\ let menu-item "Introduce let" clojure-introduce-let) (Move\ to\ let menu-item "Move to let" clojure-move-to-let) (Forward\ slurp\ form\ into\ let menu-item "Forward slurp form into let" clojure-let-forward-slurp-sexp) (Backward\ slurp\ form\ into\ let menu-item "Backward slurp form into let" clojure-let-backward-slurp-sexp))) (Documentation menu-item "Documentation" (keymap "Documentation" (View\ a\ Clojure\ guide menu-item "View a Clojure guide" clojure-view-guide) (View\ a\ Clojure\ reference\ section menu-item "View a Clojure reference section" clojure-view-reference-section) (View\ the\ Clojure\ cheatsheet menu-item "View the Clojure cheatsheet" clojure-view-cheatsheet) (View\ the\ Clojure\ style\ guide menu-item "View the Clojure style guide" clojure-view-style-guide))) (nil "--") (Report\ a\ clojure-mode\ bug menu-item "Report a clojure-mode bug" clojure-mode-report-bug) (Clojure-mode\ version menu-item "Clojure-mode version" clojure-mode-display-version)))) (3 keymap (18 . clojure-refactor-map) (32 . clojure-align)) (67108922 . clojure-toggle-keyword-string) keymap (27 keymap (113 . prog-fill-reindent-defun) (17 . prog-indent-sexp))) clojure-mode-hook)
#f(compiled-function () #<bytecode 0x526aa35bfc7b>)()
eval-after-load-helper("/Users/oscarvarto/doom-emacs/.local/straight/build-30.0.60/clojure-mode/clojure-mode.elc")
do-after-load-evaluation("/Users/oscarvarto/doom-emacs/.local/straight/build-30.0.60/clojure-mode/clojure-mode.elc")
clojure-mode()
#<subr set-auto-mode-0>(clojure-mode nil)
apply(#<subr set-auto-mode-0> (clojure-mode nil))
set-auto-mode-0(clojure-mode nil)
set-auto-mode--apply-alist((("\\.ya?ml\\'" . yaml-ts-mode) ("\\.ts\\'" . typescript-ts-mode) ("\\.tsx\\'" . tsx-ts-mode) ("\\.toml\\'" . toml-ts-mode) ("\\.rs\\'" . rust-ts-mode) ("\\(?:\\.\\(?:rbw?\\|ru\\|rake\\|thor\\|jbuilder\\|rabl\\|gemspec\\|podspec\\)\\|/\\(?:Gem\\|Rake\\|Cap\\|Thor\\|Puppet\\|Berks\\|Brew\\|Vagrant\\|Guard\\|Pod\\)file\\)\\'" . ruby-ts-mode) ("\\.py[iw]?\\'" . python-ts-mode) ("\\.lua\\'" . lua-ts-mode) ("\\.json\\'" . json-ts-mode) ("\\.js\\'" . js-ts-mode) ("\\.java\\'" . java-ts-mode) ("\\.html\\'" . html-ts-mode) ("\\.heex\\'" . heex-ts-mode) ("go\\.mod\\'" . go-mod-ts-mode) ("\\.go\\'" . go-ts-mode) ("\\.ex\\'" . elixir-ts-mode) ("[/\\]\\(?:Containerfile\\|Dockerfile\\)\\(?:\\.[^/\\]*\\)?\\'" . dockerfile-ts-mode) ("\\.css\\'" . css-ts-mode) ("\\.cpp\\'" . c++-ts-mode) ("\\.cmake\\'" . cmake-ts-mode) ("\\.cs\\'" . csharp-ts-mode) ("\\.c\\'" . c-ts-mode) ("\\.sh\\'" . bash-ts-mode) ("\\.fsscript\\'" . fsharp-mode) ("\\.fsx\\'" . fsharp-mode) ("\\.fsi\\'" . fsharp-mode) ("\\.fs\\'" . fsharp-mode) ("\\.clj\\'" . clojure-mode) ("\\.cljs\\'" . clojure-mode) ("\\.kt\\'" . kotlin-mode) ("\\.txt\\'" . text-mode) ("\\.scala\\'" . scala-mode) ("\\.py\\'" . python-mode) ("\\.nuon\\'" . nushell-mode) ("Procfile\\'" . yaml-mode) ("templates/.+\\.php\\'" . web-mode) ("wp-content/themes/.+/.+\\.php\\'" . web-mode) ("\\.eco\\'" . web-mode) ("\\.jinja2?\\'" . web-mode) ("\\.twig\\'" . web-mode) ("\\.svelte\\'" . web-mode) ("\\.mustache\\'" . web-mode) ("\\.hbs\\'" . web-mode) ("\\.ejs\\'" . web-mode) ("\\.as[cp]x\\'" . web-mode) ("\\.jsp\\'" . web-mode) ("\\.[lh]?eex\\'" . web-mode) ("\\.erb\\'" . web-mode) ("\\.\\(?:tpl\\|blade\\)\\(?:\\.php\\)?\\'" . web-mode) ("\\.[px]?html?\\'" . web-mode) ...) nil nil)
#<subr set-auto-mode>()
apply(#<subr set-auto-mode> nil)
#f(advice auto-minor-mode-set :after #<subr set-auto-mode>)()
apply(#f(advice auto-minor-mode-set :after #<subr set-auto-mode>) nil)
(progn (apply fn args))
(unwind-protect (progn (apply fn args)) (when (buffer-live-p buf) (with-current-buffer buf (evil-change-state old-state))))
(let ((evil-state evil-state) (evil-previous-state evil-previous-state) (evil-previous-state-alist (copy-tree evil-previous-state-alist)) (evil-next-state evil-next-state) (old-state evil-state) (inhibit-quit t) (buf (current-buffer))) (unwind-protect (progn (apply fn args)) (when (buffer-live-p buf) (with-current-buffer buf (evil-change-state old-state)))))
(evil-save-state (apply fn args))
(if evil-state (evil-save-state (apply fn args)) (apply fn args))
+evil--persist-state-a(#f(advice auto-minor-mode-set :after #<subr set-auto-mode>))
apply(+evil--persist-state-a #f(advice auto-minor-mode-set :after #<subr set-auto-mode>) nil)
#f(advice +evil--persist-state-a :around #f(advice auto-minor-mode-set :after #<subr set-auto-mode>))()
so-long--set-auto-mode(#f(advice +evil--persist-state-a :around #f(advice auto-minor-mode-set :after #<subr set-auto-mode>)))
apply(so-long--set-auto-mode #f(advice +evil--persist-state-a :around #f(advice auto-minor-mode-set :after #<subr set-auto-mode>)) nil)
set-auto-mode()
normal-mode(t)
#<subr after-find-file>(nil t nil nil nil)
apply(#<subr after-find-file> (nil t))
(progn (fset #'sit-for #'ignore) (apply fn args))
(unwind-protect (progn (fset #'sit-for #'ignore) (apply fn args)) (fset #'sit-for old))
(let* ((old (symbol-function #'sit-for))) (unwind-protect (progn (fset #'sit-for #'ignore) (apply fn args)) (fset #'sit-for old)))
doom--shut-up-autosave-a(#<subr after-find-file> nil t)
apply(doom--shut-up-autosave-a #<subr after-find-file> (nil t))
#f(advice doom--shut-up-autosave-a :around #<subr after-find-file>)(nil t)
apply(#f(advice doom--shut-up-autosave-a :around #<subr after-find-file>) (nil t))
#f(advice chain-doom-first-buffer-hook-to-find-file-hook-h :before #f(advice doom--shut-up-autosave-a :around #<subr after-find-file>) ((depth . -101)))(nil t)
apply(#f(advice chain-doom-first-buffer-hook-to-find-file-hook-h :before #f(advice doom--shut-up-autosave-a :around #<subr after-find-file>) ((depth . -101))) (nil t))
after-find-file(nil t)
find-file-noselect-1(#<buffer core.clj> "~/clojureDev/hello-clojure/src/hello_clojure/core.clj" nil nil "~/clojureDev/hello-clojure/src/hello_clojure/core.clj" (31322602 16777229))
#<subr find-file-noselect>("~/clojureDev/hello-clojure/src/hello_clojure/core.clj" nil nil nil)
apply(#<subr find-file-noselect> "~/clojureDev/hello-clojure/src/hello_clojure/core.clj" (nil nil nil))
(setq ret (apply f filename args))
(let ((props nil) (coding-system nil) (ret nil)) (condition-case err (if (and (stringp filename) (not (editorconfig--disabled-for-filename filename))) (progn (setq props (editorconfig-call-get-properties-function filename)) (setq coding-system (editorconfig-merge-coding-systems (gethash 'end_of_line props) (gethash 'charset props))) (puthash (expand-file-name filename) coding-system editorconfig--filename-codingsystem-hash))) (error (display-warning '(editorconfig editorconfig--advice-find-file-noselect) (format "Failed to get properties, styles will not be applied: %S" err) :warning))) (setq ret (apply f filename args)) (clrhash editorconfig--filename-codingsystem-hash) (condition-case err (save-current-buffer (set-buffer ret) (if (and props (not (editorconfig--disabled-for-majormode major-mode))) (progn (if (and (file-remote-p filename) (not ...) (not ...) coding-system (not ...)) (progn (set-buffer-file-coding-system coding-system))) (condition-case err (run-hook-with-args 'editorconfig-hack-properties-functions props) (error (display-warning ... ... :warning))) (setq editorconfig-properties-hash props) (editorconfig-set-local-variables props) (condition-case err (run-hook-with-args 'editorconfig-after-apply-functions props) (error (display-warning ... ...)))))) (error (display-warning '(editorconfig editorconfig--advice-find-file-noselect) (format "Error while setting variables from EditorConfig: %S" err)))) ret)
editorconfig--advice-find-file-noselect(#<subr find-file-noselect> "~/clojureDev/hello-clojure/src/hello_clojure/core.clj" nil nil nil)
apply(editorconfig--advice-find-file-noselect #<subr find-file-noselect> ("~/clojureDev/hello-clojure/src/hello_clojure/core.clj" nil nil nil))
find-file-noselect("~/clojureDev/hello-clojure/src/hello_clojure/core.clj" nil nil nil)
find-file("~/clojureDev/hello-clojure/src/hello_clojure/core.clj")
#f(compiled-function () (interactive nil) #<bytecode 0x23553879455a8ef>)()
apply(#f(compiled-function () (interactive nil) #<bytecode 0x23553879455a8ef>) nil)
consult-recent-file()
funcall-interactively(consult-recent-file)
command-execute(consult-recent-file)
I'll try to find a solution myself, but any guidance/suggestion is very welcome, as I consider myself a newbie with elisp.
from cider.
Thanks a lot, @yuhan0 !
from cider.
Related Issues (20)
- Inline error overlays not displaying HOT 21
- How do I cancel debugger-marked items? HOT 1
- State of CIDER survey? HOT 8
- Completion can trigger unwanted user prompts HOT 5
- `cider-docstring--format` breaks some formatting HOT 16
- Rename private functions in `cider-docstring.el` to have proper prefix HOT 4
- Unable to boot cider off a fresh corgi install? HOT 23
- cider using scittle nREPL doesn't send forms to REPL HOT 14
- Remove all code related to sideloading HOT 2
- Fringe indicators for sucessful/failed tests HOT 1
- Defining a now-deprecated variable `x-gtk-use-system-tooltips` HOT 8
- Issue with refresh operation after updating to nrepl `1.3.0-beta2` HOT 15
- cljs repl switches to previous ns after cider-repl-set-ns change followed by single eval (again) HOT 7
- Weird debugger behavior, not firing on some cases
- CIDER connects to remote nrepl server instead of localhost HOT 3
- `cider-pprint-eval-last-sexp-to-comment` forgets "Elapsed time"
- Remove support for sideloading HOT 3
- `cider-doc` not recognize the right function. HOT 3
- add-lib fails when called from CIDER repl HOT 8
- CIDER trace should return inspectable data (not text) 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 cider.