diff --git a/modules/lang/clojure/config.el b/modules/lang/clojure/config.el index d72f4c8eb..f9b4e31b0 100644 --- a/modules/lang/clojure/config.el +++ b/modules/lang/clojure/config.el @@ -17,21 +17,65 @@ :definition #'cider-browse-ns-find-at-point :documentation #'cider-browse-ns-doc-at-point) :config - (setq nrepl-hide-special-buffers t + (setq nrepl-log-messages nil + nrepl-hide-special-buffers t + cider-font-lock-dynamically '(macro core function var) + cider-overlays-use-font-lock t + cider-prompt-for-symbol nil + cider-repl-display-help-banner nil + cider-repl-pop-to-buffer-on-connect t + cider-repl-use-pretty-printing t + cider-repl-wrap-history nil + cider-repl-history-display-duplicates nil cider-stacktrace-default-filters '(tooling dup) - cider-prompt-save-file-on-load nil cider-repl-use-clojure-font-lock t) + ;; TODO: Add mode-local labels when general support is in. (map! :map cider-mode-map :localleader :n "'" #'cider-jack-in :n "\"" #'cider-jack-in-clojurescript - :n "B" #'cider-switch-to-repl-buffer - :n "n" #'cider-repl-set-ns - :n "j" #'cider-find-var - :n "h" #'cider-doc - :n "c" #'cider-repl-clear-buffer - :n "p" #'cider-eval-sexp-at-point) + ;; eval + (:prefix "e" + :n "d" #'cider-eval-defun-at-point + :n "D" #'cider-insert-defun-in-repl + :n "e" #'cider-eval-last-sexp + :n "E" #'cider-insert-last-sexp-in-repl + :n "r" #'cider-eval-region + :n "R" #'cider-insert-region-in-repl + :n "u" #'cider-undef) + ;; go/jump + (:prefix "g" + :n "b" #'cider-pop-back + :n "g" #'cider-find-var + :n "n" #'cider-find-ns) + ;; help + (:prefix "h" + :n "n" 'cider-find-ns + :n "a" 'cider-apropos + :n "d" 'cider-doc + :n "g" 'cider-grimoire-web + :n "j" 'cider-javadoc) + ;; inspect + (:prefix "i" + :n "i" 'cider-inspect + :n "r" 'cider-inspect-last-result) + ;; macro + (:prefix "m" + :n "e" 'cider-macroexpand-1 + :n "E" 'cider-macroexpand-al) + ;; namespace + (:prefix "n" + :n "n" 'cider-browse-ns + :n "N" 'cider-browse-ns-all) + ;; repl + (:prefix "r" + :n "n" 'cider-repl-set-ns + :n "q" 'cider-quit + :n "r" 'cider-refresh + :n "R" 'cider-restart + :n "B" #'cider-switch-to-repl-buffer + :n "c" #'cider-repl-clear-buffer)) (when (featurep! :feature evil +everywhere) (add-hook 'cider-repl-mode-hook #'evil-normalize-keymaps))) diff --git a/modules/lang/common-lisp/config.el b/modules/lang/common-lisp/config.el index 943bcb001..c844bc6e1 100644 --- a/modules/lang/common-lisp/config.el +++ b/modules/lang/common-lisp/config.el @@ -7,10 +7,12 @@ (set-popup-rules! '(("^\\*sly-mrepl" :vslot 2 :quit nil :ttl nil) - ("^\\*sly-db" :vslot 3 :quit nil :ttl nil) - ("^\\*sly-compilation" :vslot 4 :ttl nil) - ("^\\*sly-inspector" :vslot 5 :ttl nil) - ("^\\*sly-traces" :vslot 6 :ttl nil))) + ("^\\*sly-compilation" :vslot 3 :ttl nil) + ("^\\*sly-traces" :vslot 4 :ttl nil))) + + ;; Do not display debugger or inspector buffers in a popup window. + ;; These buffers are meant to be displayed with sufficient vertical space. + (set-popup-rule! "^\\*sly-\\(db\\|inspector\\)" :ignore t) (set-repl-handler! 'lisp-mode #'sly-mrepl) (set-eval-handler! 'lisp-mode #'sly-eval-region)