2017-06-08 17:47:56 +08:00
|
|
|
;;; feature/eval/config.el -*- lexical-binding: t; -*-
|
2017-02-14 05:57:08 +08:00
|
|
|
|
2017-03-05 07:28:51 +08:00
|
|
|
;; remove ellipsis when printing sexps in message buffer
|
|
|
|
(setq eval-expression-print-length nil
|
|
|
|
eval-expression-print-level nil)
|
2017-02-14 05:57:08 +08:00
|
|
|
|
2017-05-07 08:27:54 +08:00
|
|
|
|
2018-05-14 07:22:33 +08:00
|
|
|
;;
|
|
|
|
;; Plugin(s)
|
|
|
|
;;
|
2017-02-14 05:57:08 +08:00
|
|
|
|
2017-02-23 13:06:12 +08:00
|
|
|
(def-package! quickrun
|
2018-05-25 06:46:11 +08:00
|
|
|
:defer t
|
2017-03-01 01:12:09 +08:00
|
|
|
:init
|
2017-09-24 23:10:07 +08:00
|
|
|
(unless (boundp 'display-line-numbers)
|
|
|
|
(add-hook 'quickrun--mode-hook #'nlinum-mode))
|
2017-02-14 05:57:08 +08:00
|
|
|
:config
|
2018-01-09 05:18:16 +08:00
|
|
|
(setq quickrun-focus-p nil)
|
|
|
|
|
2018-01-31 15:16:25 +08:00
|
|
|
(set! :popup "^\\*quickrun" '((size . 0.3)) '((transient . 0)))
|
2017-02-14 05:57:08 +08:00
|
|
|
|
2017-03-05 07:28:51 +08:00
|
|
|
(defun +eval*quickrun-auto-close (&rest _)
|
2017-03-01 01:12:09 +08:00
|
|
|
"Allows us to silently re-run quickrun from within the quickrun buffer."
|
2017-12-11 03:49:52 +08:00
|
|
|
(when-let* ((win (get-buffer-window quickrun--buffer-name)))
|
2017-03-05 07:28:51 +08:00
|
|
|
(let ((inhibit-message t))
|
|
|
|
(quickrun--kill-running-process)
|
2017-02-14 05:57:08 +08:00
|
|
|
(message ""))
|
2017-03-05 07:28:51 +08:00
|
|
|
(delete-window win)))
|
2017-04-17 14:17:10 +08:00
|
|
|
(advice-add #'quickrun :before #'+eval*quickrun-auto-close)
|
|
|
|
(advice-add #'quickrun-region :before #'+eval*quickrun-auto-close)
|
2017-02-14 05:57:08 +08:00
|
|
|
|
2017-03-05 07:28:51 +08:00
|
|
|
(defun +eval|quickrun-scroll-to-bof ()
|
2017-03-01 01:12:09 +08:00
|
|
|
"Ensures window is scrolled to BOF on invocation."
|
2017-03-05 07:28:51 +08:00
|
|
|
(with-selected-window (get-buffer-window quickrun--buffer-name)
|
2017-10-03 21:46:38 +08:00
|
|
|
(goto-char (point-min))
|
2018-01-06 16:27:23 +08:00
|
|
|
(let ((ignore-window-parameters t))
|
|
|
|
(shrink-window-if-larger-than-buffer))))
|
2017-04-17 14:17:10 +08:00
|
|
|
(add-hook 'quickrun-after-run-hook #'+eval|quickrun-scroll-to-bof))
|
2017-02-14 05:57:08 +08:00
|
|
|
|