SLY: Bind sly-insert-pipe to C-S-SPC.

master
Pierre Neidhardt 2021-01-16 01:10:19 +01:00
parent 578c74f442
commit 30e88909c7
1 changed files with 11 additions and 1 deletions

View File

@ -123,13 +123,23 @@ If REFRESH is non-nil, rebuild the environment."
(not (eq evil-state 'insert)))
(call-interactively #'evil-insert)))
(defun ambrevar/sly-insert-pipe ()
"Convenient to write a `:<>' pipe."
(interactive)
(while (sly-inside-string-p)
(forward-char))
(newline-and-indent)
(insert ":<>")
(ambrevar/sly-insert-double-quotes))
(with-eval-after-load 'sly-mrepl
(set-face-attribute 'sly-mrepl-output-face nil :inherit 'default :foreground)
(setq sly-mrepl-history-file-name (expand-file-name "sly-mrepl-history" user-emacs-directory))
;; While `,i RET` is short enough, it's one more key away in Evil insert state:
(define-key sly-mrepl-mode-map (kbd "C-c M-p") 'sly-mrepl-set-package)
(define-key sly-mrepl-mode-map (kbd "C-c M-o") 'sly-mrepl-clear-repl)
(define-key sly-mrepl-mode-map (kbd "S-SPC") 'ambrevar/sly-insert-double-quotes))
(define-key sly-mrepl-mode-map (kbd "S-SPC") 'ambrevar/sly-insert-double-quotes)
(define-key sly-mrepl-mode-map (kbd "C-S-SPC") 'ambrevar/sly-insert-pipe))
(defun ambrevar/sly-load-reload-system ()
(interactive)