2017-06-08 11:47:56 +02:00
|
|
|
;;; lang/clojure/config.el -*- lexical-binding: t; -*-
|
2017-05-30 09:28:38 +02:00
|
|
|
|
|
|
|
(def-package! clojure-mode
|
2017-11-03 13:41:54 -04:00
|
|
|
:mode (("\\.clj$" . clojure-mode)
|
|
|
|
("\\.cljs$". clojurescript-mode))
|
2017-11-03 19:28:05 -04:00
|
|
|
:commands (clojure-mode clojurescript-mode) ;; this might not be necessary?
|
2017-11-03 13:41:54 -04:00
|
|
|
:config
|
2017-11-18 14:54:05 -05:00
|
|
|
(def-package! clj-refactor :demand t) ;; prob a better way to do this
|
|
|
|
|
2017-11-03 13:41:54 -04:00
|
|
|
(map! :map clojure-mode-map
|
|
|
|
(:localleader
|
2017-11-18 14:54:05 -05:00
|
|
|
: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 "d" #'cider-doc
|
|
|
|
:n "c" #'cider-repl-clear-buffer
|
|
|
|
:n "r" #'cider-eval-region)))
|
2017-05-30 09:28:38 +02:00
|
|
|
|
2017-11-03 19:28:05 -04:00
|
|
|
|
2017-05-30 09:28:38 +02:00
|
|
|
(def-package! cider
|
2017-11-03 19:28:05 -04:00
|
|
|
;; BUG: if you don't have an org directory set (the dir doesn't exist), cider jack in won't work.
|
2017-11-03 13:41:54 -04:00
|
|
|
:commands (cider-jack-in cider-mode cider-jack-in-clojurescript)
|
2017-05-30 09:28:38 +02:00
|
|
|
:config
|
2017-11-03 19:28:05 -04:00
|
|
|
(setq nrepl-hide-special-buffers t)
|
|
|
|
|
|
|
|
;; TODO: figure out how to set cider to the right window rather than shackle window (https://github.com/hlissner/doom-emacs/issues/171)
|
|
|
|
;; (set! :popup "^\\*cider-.*" :align 'left :noesc t) ;; no luck
|
|
|
|
|
|
|
|
;; Setup cider for clojurescript / figwheel dev.
|
|
|
|
(setq cider-cljs-lein-repl
|
|
|
|
"(do (require 'figwheel-sidecar.repl-api)
|
|
|
|
(figwheel-sidecar.repl-api/start-figwheel!)
|
|
|
|
(figwheel-sidecar.repl-api/cljs-repl))"))
|