feat(gs/emacs): Extract lisp config
Change-Id: I278c79e6e59c18c2f0e2d5307eefd9ff3c92a4be Reviewed-on: https://cl.tvl.fyi/c/depot/+/1766 Reviewed-by: glittershark <grfn@gws.fyi> Tested-by: BuildkiteCI
This commit is contained in:
parent
6f5659c88b
commit
16302df20a
3 changed files with 42 additions and 7 deletions
|
@ -1192,7 +1192,7 @@ If invoked with a prefix ARG eval the expression after inserting it"
|
||||||
"c" (general-key-dispatch 'evil-change
|
"c" (general-key-dispatch 'evil-change
|
||||||
"p" (general-key-dispatch 'sly-eval
|
"p" (general-key-dispatch 'sly-eval
|
||||||
;; "p" 'eval-sexp-at-point
|
;; "p" 'eval-sexp-at-point
|
||||||
"c" 'sly-pprint-eval-last-expression
|
"c" 'sly-eval-last-expression
|
||||||
"d" 'sly-eval-defun
|
"d" 'sly-eval-defun
|
||||||
;; "r" 'cider-test-run-test
|
;; "r" 'cider-test-run-test
|
||||||
)
|
)
|
||||||
|
@ -1243,7 +1243,7 @@ If invoked with a prefix ARG eval the expression after inserting it"
|
||||||
(s-replace "\"" "")
|
(s-replace "\"" "")
|
||||||
(s-replace "\\n" "\n")))))
|
(s-replace "\\n" "\n")))))
|
||||||
nil nil nil)))
|
nil nil nil)))
|
||||||
('clj
|
(('clj 'multi)
|
||||||
(funcall-interactively
|
(funcall-interactively
|
||||||
#'cider-test-run-ns-tests
|
#'cider-test-run-ns-tests
|
||||||
nil))))
|
nil))))
|
||||||
|
@ -1407,8 +1407,4 @@ If invoked with a prefix ARG eval the expression after inserting it"
|
||||||
(:localleader
|
(:localleader
|
||||||
:n "a" #'lsp-execute-code-action))
|
:n "a" #'lsp-execute-code-action))
|
||||||
|
|
||||||
(:map sly-mode-map
|
)
|
||||||
:n "g \\" #'sly-mrepl
|
|
||||||
:n "g d" #'sly-edit-definition
|
|
||||||
:n "K" #'sly-documentation
|
|
||||||
:n "g SPC" #'sly-eval-buffer))
|
|
||||||
|
|
|
@ -30,6 +30,7 @@
|
||||||
(load! "nix")
|
(load! "nix")
|
||||||
(load! "email")
|
(load! "email")
|
||||||
(load! "cpp")
|
(load! "cpp")
|
||||||
|
(load! "lisp")
|
||||||
|
|
||||||
(require 's)
|
(require 's)
|
||||||
(require 'tvl)
|
(require 'tvl)
|
||||||
|
|
38
users/glittershark/emacs.d/lisp.el
Normal file
38
users/glittershark/emacs.d/lisp.el
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
;;; ~/code/depot/users/glittershark/emacs.d/lisp.el -*- lexical-binding: t; -*-
|
||||||
|
|
||||||
|
(defun grfn/sly-panettone ()
|
||||||
|
(interactive)
|
||||||
|
(sly
|
||||||
|
(concat
|
||||||
|
(s-trim
|
||||||
|
(shell-command-to-string
|
||||||
|
"nix-build -o sbcl -E 'with import ~/code/depot {}; nix.buildLisp.sbclWith [web.panettone]'"))
|
||||||
|
"/bin/sbcl")))
|
||||||
|
|
||||||
|
(defun grfn/setup-lisp ()
|
||||||
|
(interactive)
|
||||||
|
(unless paxedit-mode (paxedit-mode 1))
|
||||||
|
(rainbow-delimiters-mode)
|
||||||
|
(flycheck-mode -1))
|
||||||
|
|
||||||
|
(add-hook 'common-lisp-lisp-mode-hook #'grfn/setup-lisp)
|
||||||
|
|
||||||
|
(defun sly-run-tests ()
|
||||||
|
(interactive)
|
||||||
|
;; TODO: handle other test frameworks
|
||||||
|
(let ((orig-window (get-buffer-window)))
|
||||||
|
(sly-eval '(fiveam:run!))
|
||||||
|
(funcall-interactively #'sly-mrepl-sync)
|
||||||
|
(select-window orig-window)))
|
||||||
|
|
||||||
|
(map!
|
||||||
|
(:map sly-mode-map
|
||||||
|
:n "g \\" #'sly-mrepl-sync
|
||||||
|
:n "g d" #'sly-edit-definition
|
||||||
|
:n "K" #'sly-documentation
|
||||||
|
:n "g SPC" #'sly-compile-and-load-file
|
||||||
|
:n "g RET" #'sly-run-tests)
|
||||||
|
|
||||||
|
(:map sly-mrepl-mode-map
|
||||||
|
"C-k" #'sly-mrepl-previous-prompt
|
||||||
|
"C-r" #'isearch-backward))
|
Loading…
Reference in a new issue