Skip to content

Instantly share code, notes, and snippets.

@isyufu
Created September 11, 2023 11:30
Show Gist options
  • Save isyufu/10d12c3c0326db940dca455e55fb3864 to your computer and use it in GitHub Desktop.
Save isyufu/10d12c3c0326db940dca455e55fb3864 to your computer and use it in GitHub Desktop.
Emacs Doom + Clojure install

install Doom Emacs + Clojure

install apt install

But before you doom yourself, here are some things you should know:

  1. Don't forget to run 'doom sync', then restart Emacs, after modifying init.el or packages.el in ~/.config/doom.

    This command ensures needed packages are installed, orphaned packages are removed, and your autoloads/cache files are up to date. When in doubt, run 'doom sync'!

  2. If something goes wrong, run doom doctor. It diagnoses common issues with your environment and setup, and may offer clues about what is wrong.

  3. Use 'doom upgrade' to update Doom. Doing it any other way will require additional steps. Run 'doom help upgrade' to understand those extra steps.

  4. Access Doom's documentation from within Emacs via 'SPC h d h' or 'C-h d h' (or 'M-x doom/help')

v и вниз - выделение, y - yank

emacs conf

file config.el

  • line 45: (map! :n "M-m" #'comment-line)

file init.el

uncomment lines

  • emoji
  • lsp
  • (clojure + lsp)
  • optional vterm or tmux

Emacs key bindings

Common bindings

  • SPC q R - reboot emacs
  • SPC SPC - switch to project
  • SPC s f - open local file by path
  • SPC f p - config emacs
  • g r down - eval region
  • C-x C-e - eval
  • SPC b s - save buffer
  • C-x Cs - save file
  • SPC f s - save file
  • SPC c d - jump to definition, открывает папку исходников пакет
  • Sh k - открыть реадме.org как jump to definition пакета
  • SPC < - swith buffer
  • SPC h r r - doom reload. install packages
  • SPC , - switch buffers
  • SPC ' - repl
  • SPC m e b - eval buffer
  • M-x cider-jack-in-clj - clojure
  • M-x cider-jack-in-cljs - clojurescript
  • M-x org-mode - enable org mode in current buffer

Emacs Doom Clojure lang Keybinding

From https://docs.doomemacs.org/v21.12/modules/lang/clojure/

Keybind Description

  • SPC ’​ cider-jack-in-clj
  • SPC C cider-connect-cljs
  • SPC M cider-macroexpand-all
  • SPC R hydra-cljr-help-menu/body
  • SPC c cider-connect-clj
  • SPC e D cider-insert-defun-in-repl
  • SPC e E cider-insert-last-sexp-in-repl
  • SPC e R cider-insert-region-in-repl
  • SPC e b cider-eval-buffer
  • SPC e d cider-eval-defun-at-point
  • SPC e e cider-eval-last-sexp
  • SPC e r cider-eval-region
  • SPC e u cider-undef
  • SPC g b cider-pop-back
  • SPC g g cider-find-var
  • SPC g n cider-find-ns
  • SPC h a cider-apropos
  • SPC h c cider-clojuredocs
  • SPC h d cider-doc
  • SPC h j cider-javadoc
  • SPC h n cider-find-ns
  • SPC h w cider-clojuredocs-web
  • SPC i e cider-enlighten-mode
  • SPC i i cider-inspect
  • SPC i r cider-inspect-last-result
  • SPC m “​ cider-jack-in-cljs
  • SPC m cider-macroexpand-1
  • SPC n N cider-browse-ns-all
  • SPC n n cider-browse-ns
  • SPC n r cider-ns-refresh
  • SPC p d cider-pprint-eval-defun-at-point
  • SPC p D cider-pprint-eval-defun-to-comment
  • SPC p p cider-pprint-eval-last-sexp
  • SPC p P cider-pprint-eval-last-sexp-to-comment
  • SPC p r cider-pprint-eval-last-sexp-to-repl
  • SPC r B +clojure/cider-switch-to-repl-buffer-and-switch-ns
  • SPC r L cider-load-buffer-and-switch-to-repl-buffer
  • SPC r R cider-restart
  • SPC r b cider-switch-to-repl-buffer
  • SPC r c cider-find-and-clear-repl-output
  • SPC r l cider-load-buffer
  • SPC r n cider-repl-set-ns
  • SPC r q cider-quit
  • SPC r r cider-ns-refresh
  • SPC t a cider-test-rerun-test
  • SPC t l cider-test-run-loaded-tests
  • SPC t n cider-test-run-ns-tests
  • SPC t p cider-test-run-project-tests
  • SPC t r cider-test-rerun-failed-tests
  • SPC t s cider-test-run-ns-tests-with-filters
  • SPC t t cider-test-run-test
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment