siam-farmer/.dir-locals.el
2026-08-16 14:41:47 +07:00

35 lines
1.3 KiB
EmacsLisp

;;; Directory Local Variables -*- no-byte-compile: t -*-
((clojure-mode
. ((cider-clojure-cli-parameters . "-M:common:dev")
;; Otherwise cider-jack-in appends its own -Sdeps '{...}' blob with
;; nrepl/cider-nrepl regardless of cli-parameters above -- deps.edn's
;; :dev alias already provides those, so skip the duplicate injection.
(cider-inject-dependencies-at-jack-in . nil)
(eval
. (progn
(unless (fboundp 'clj-watch)
(load (expand-file-name
"watch.el"
(locate-dominating-file default-directory ".dir-locals.el"))))
(defun siam-farmer-run-main ()
"Send (future (-main)) to the REPL."
(interactive)
(cider-interactive-eval "(future (-main))"))
(unless (boundp 'siam-farmer-mode-map)
(defvar siam-farmer-mode-map
(let ((m (make-sparse-keymap)))
(define-key m (kbd "C-c C-w") #'clj-watch)
(define-key m (kbd "C-c C-M-r") #'siam-farmer-run-main)
m)))
(unless (fboundp 'siam-farmer-mode)
(define-minor-mode siam-farmer-mode
"Project keybindings for siam-farmer."
:lighter " SF"
:keymap siam-farmer-mode-map))
(siam-farmer-mode 1))))))