add nice SLIME like flashes to evaluation in Geiser
This commit is contained in:
parent
4128eacc98
commit
c8efc20173
29
functions.el
29
functions.el
|
@ -36,15 +36,21 @@
|
|||
(setq compile-command "make ")
|
||||
(global-set-key (kbd "C-x C-m") 'compile)
|
||||
|
||||
(add-hook 'compilation-mode-hook
|
||||
(lambda () (local-set-key (kbd "n") 'compilation-next-error)))
|
||||
(add-hook 'compilation-mode-hook
|
||||
(lambda () (local-set-key (kbd "p") 'compilation-previous-error)))
|
||||
|
||||
|
||||
(defun mark-line ()
|
||||
(interactive)
|
||||
(move-beginning-of-line nil)
|
||||
(set-mark (point))
|
||||
(move-end-of-line nil))
|
||||
|
||||
(global-unset-key (kbd "C-x C-z")) ; disable suspend frame
|
||||
(global-set-key (kbd "C-x C-z") 'mark-line)
|
||||
(global-unset-key (kbd "C-z")) ; disable suspend frame
|
||||
(global-unset-key (kbd "C-x C-z")) ; disable suspend frame
|
||||
(global-set-key (kbd "C-x C-x") 'other-window)
|
||||
(global-set-key (kbd "C-x C-b") '(lambda () (interactive)
|
||||
(bs-show nil)
|
||||
|
@ -62,3 +68,24 @@
|
|||
(interactive)
|
||||
(disable-theme 'magik)
|
||||
(load-theme 'basic)))
|
||||
|
||||
(defun current-line-empty-p ()
|
||||
(save-excursion
|
||||
(beginning-of-line)
|
||||
(looking-at-p "[[:space:]]*$")))
|
||||
|
||||
(defun flash-region (&optional timeout)
|
||||
"Temporarily highlight region from START to END. Taken from SLIME source code and modified."
|
||||
(interactive)
|
||||
(transient-mark-mode)
|
||||
(save-excursion
|
||||
(mark-defun)
|
||||
(when (current-line-empty-p)
|
||||
(forward-char))
|
||||
(let* ((start (region-beginning))
|
||||
(end (region-end))
|
||||
(overlay (make-overlay start end)))
|
||||
(deactivate-mark)
|
||||
(overlay-put overlay 'face 'secondary-selection)
|
||||
(run-with-timer (or timeout 0.2) nil 'delete-overlay overlay)))
|
||||
(transient-mark-mode))
|
||||
|
|
2
init.el
2
init.el
|
@ -120,6 +120,8 @@
|
|||
'(custom-safe-themes
|
||||
'("a6473f7abf949f4a6a1a9cc0dd37ea2e35ba3cea65d3442b98d65c5c5c5cb8d7" "b026761932dac55edfc103de7267ab1db5cd7cc183e06654a2be976cf3a09b9c" "2eeeb1813d66b7d1b858ecf7e4623f774ee555f4b6c1e6de93a1875c03af41de" "5a5e51dc0d54d7626f182dcc1712ed0bad80085db52da3fbe737be4f58d983d0" "4c5f4e96bbde8ab012c661b04c887d9cf65ee9fc37abcce661aabd3a098a69e9" "9c25bd583aa28e4a96af84c9bcf4b5c917bb2ec907ac9d5ab745e54b27104ec6" default))
|
||||
'(display-time-mode t)
|
||||
'(org-babel-load-languages '((awk . t) (lisp . t) (emacs-lisp . t) (C . t)))
|
||||
'(org-confirm-babel-evaluate nil)
|
||||
'(package-selected-packages
|
||||
'(basic-theme geiser-chicken geiser-guile disaster multiple-cursors nasm-mode carp-mode flycheck ido-mode move-text undo-tree sorcery-theme autothemer rust-mode paredit forth-mode avy swiper auto-package-update magit expand-region go-mode tao-themes tao-theme almost-mono-themes use-package))
|
||||
'(pdf-view-midnight-colors '("#dddddd" . "#000000"))
|
||||
|
|
10
packages.el
10
packages.el
|
@ -68,7 +68,15 @@
|
|||
(setq inferior-lisp-program "sbcl"))
|
||||
|
||||
(use-package geiser
|
||||
:ensure t)
|
||||
:ensure t
|
||||
:config
|
||||
(add-hook 'geiser-mode-hook
|
||||
(lambda ()
|
||||
(define-key geiser-mode-map (kbd "C-c C-c") nil) ;; remove default C-c C-c binding
|
||||
(local-set-key (kbd "C-c C-c") (lambda ()
|
||||
(interactive)
|
||||
(flash-region)
|
||||
(geiser-eval-definition))))))
|
||||
|
||||
(use-package geiser-guile
|
||||
:ensure t)
|
||||
|
|
Loading…
Reference in New Issue