diff --git a/.emacs.d/lisp/init-editor.el b/.emacs.d/lisp/init-editor.el index 0c4d24e..1758009 100644 --- a/.emacs.d/lisp/init-editor.el +++ b/.emacs.d/lisp/init-editor.el @@ -221,5 +221,37 @@ ("C-c c s" . caser-snakecase-dwim) ("C-c c d" . caser-dashcase-dwim)) +(use-package selected + :defer 6 + :diminish selected-minor-mode + :config + (setq selected-emacs-lisp-mode-map (make-sparse-keymap) + selected-org-mode-map (make-sparse-keymap) + selected-clojure-mode-map (make-sparse-keymap)) + (selected-global-mode +1) + :bind (:map selected-keymap + ("q" . selected-off) + ("u" . upcase-region) + ("l" . downcase-region) + ("c" . count-words-region) + ("m" . apply-macro-to-region-lines) + ("M-d" . sp-delete-region) + ("j" . jq-format-json-region) + ("i" . indent-region) + ("C-d" . duplicate-dwim) + ("n" . narrow-to-region) + ("_" . ws-butler-clean-region) + ("t t" . titlecase-dwim) + ("t c" . caser-camelcase-dwim) + ("t s" . caser-snakecase-dwim) + ("t d" . caser-dashcase-dwim) + :map selected-org-mode-map + ("t" . org-table-convert-region) + :map selected-emacs-lisp-mode-map + ("x" . elisp-eval-region-or-buffer) + :map selected-clojure-mode-map + ("x" . cider-eval-region) + ("r" . cider-insert-region-in-repl))) + (provide 'init-editor) ;;; init-editor.el ends here diff --git a/.emacs.d/lisp/init-emacs-lisp.el b/.emacs.d/lisp/init-emacs-lisp.el index 4a1a1fb..4ca010a 100644 --- a/.emacs.d/lisp/init-emacs-lisp.el +++ b/.emacs.d/lisp/init-emacs-lisp.el @@ -11,15 +11,6 @@ (use-feature emacs :config - (defun eval-region-or-defun (edebug-it) - "Call eval-region, if one is selected, or eval-defun otherwise." - (interactive "P") - (if (use-region-p) - ;; Set `this-command', otherwise elpaca does not work correctly - (let ((this-command 'eval-region)) - (eval-region (region-beginning) (region-end))) - (let ((this-command 'eval-defun)) - (eval-defun edebug-it)))) ;; Based on prelude-emacs-lisp.el (defun recompile-init-lisp () "Recompile elisp files in `user-emacs-directory/lisp'." @@ -60,8 +51,7 @@ Start `ielm' if it's not already running." :bind (:map emacs-lisp-mode-map (("C-c C-z" . visit-ielm) - ("C-M-x" . eval-region-or-defun) - ("C-c C-c" . eval-region-or-defun) + ("C-c C-c" . eval-defun) ("C-c C-k" . eval-buffer) ("C-c e f" . emacs-lisp-byte-compile-and-load) ("C-c e z" . byte-recompile-directory) diff --git a/.emacs.d/lisp/init-packages.el b/.emacs.d/lisp/init-packages.el index ba84719..5eb5cb7 100644 --- a/.emacs.d/lisp/init-packages.el +++ b/.emacs.d/lisp/init-packages.el @@ -60,14 +60,8 @@ ;; Block until current queue processed. (elpaca-wait) -;; https://github.com/progfolio/elpaca/wiki/Logging#how-to-change-a-commands-log-query -(with-eval-after-load 'elpaca-log - (setf (alist-get '(eval-buffer eval-region eval-defun eval-last-sexp org-ctrl-c-ctrl-c eval-region-or-defun eros-eval-defun eros-eval-last-sexp) - elpaca-log-command-queries nil nil #'equal) - "#unique | !finished")) - ;; https://github.com/progfolio/elpaca/wiki/Logging#auto-hiding-the-elpaca-log-buffer -(defvar +elpaca-hide-log-commands '(eval-buffer eval-region eval-defun eval-last-sexp org-ctrl-c-ctrl-c eval-region-or-defun eros-eval-defun eros-eval-last-sexp) +(defvar +elpaca-hide-log-commands '(eval-buffer eval-region eval-defun eval-last-sexp org-ctrl-c-ctrl-c eros-eval-defun eros-eval-last-sexp elisp-eval-region-or-buffer) "List of commands for which a successfully processed log is auto hidden.") (defun +elpaca-hide-successful-log () "Hide Elpaca log buffer if queues processed successfully." @@ -82,6 +76,12 @@ (with-selected-window window (quit-window 'kill window))))) (add-hook 'elpaca-post-queue-hook #'+elpaca-hide-successful-log) +;; https://github.com/progfolio/elpaca/wiki/Logging#how-to-change-a-commands-log-query +(with-eval-after-load 'elpaca-log + (setf (alist-get +elpaca-hide-log-commands + elpaca-log-command-queries nil nil #'equal) + "#unique | !finished")) + ;; https://github.com/progfolio/elpaca/wiki/Logging#customizing-the-position-of-the-elpaca-log-buffer (add-to-list 'display-buffer-alist '("\\*elpaca-log\\*" (display-buffer-reuse-window display-buffer-at-bottom)))