X-Git-Url: https://git.shemshak.org/~bandali/configs/blobdiff_plain/b07c1cc4dfe36f215eac01e5c69e32cdc7607015..da54899382c58548e0c4ca94fb87d24faad60e6e:/init.org diff --git a/init.org b/init.org index 8bce20c..9cb58ac 100644 --- a/init.org +++ b/init.org @@ -577,7 +577,8 @@ variable. #+begin_src emacs-lisp (setq backup-by-copying t - version-control t) + version-control t + delete-old-versions t) #+end_src *** Auto revert @@ -607,6 +608,20 @@ Enable =winner-mode=. (winner-mode 1) #+end_src +*** Close =*compilation*= on success + +#+begin_src emacs-lisp +(setq compilation-exit-message-function + (lambda (status code msg) + "Close the compilation window if successful." + ;; if M-x compile exits with 0 + (when (and (eq status 'exit) (zerop code)) + (bury-buffer) + (delete-window (get-buffer-window (get-buffer "*compilation*")))) + ;; return the result of compilation-exit-message-function + (cons msg code))) +#+end_src + ** Bindings #+begin_src emacs-lisp @@ -711,16 +726,6 @@ file. (add-to-list 'safe-local-variable-values '(eval add-hook 'after-save-hook #'amin/async-babel-tangle 'append 'local)) - -(setq compilation-exit-message-function - (lambda (status code msg) - "Close the compilation window if successful." - ;; if M-x compile exits with 0 - (when (and (eq status 'exit) (zerop code)) - (bury-buffer) - (delete-window (get-buffer-window (get-buffer "*compilation*")))) - ;; return the result of compilation-exit-message-function - (cons msg code))) #+end_src *** [[https://magit.vc/][Magit]] @@ -1244,25 +1249,6 @@ Emacs package that displays available keybindings in popup :after #'my-projectile-invalidate-cache)))) #+end_src -** [[https://github.com/wasamasa/shackle][shackle]] - -#+begin_src emacs-lisp -(use-package shackle - :demand t - :commands shackle-mode - :config - (shackle-mode 1) - (setq shackle-rules - '(("*Help*" :align right :select t :size 0.5) - ("\\`\\*helm.*?\\*\\'" :regexp t :align t) - ((compilation-mode "\\`\\*magit-diff: .*?\\'") :regexp t :noselect t) - ("*magit-dispatch-popup*" :align bottom) - ((inferior-scheme-mode "*shell*" "*eshell*") :popup t)) - shackle-default-rule '(:select t) - shackle-default-size 0.4 - shackle-inhibit-window-quit-on-same-windows t)) -#+end_src - ** [[https://github.com/Wilfred/helpful][helpful]] #+begin_src emacs-lisp @@ -1280,13 +1266,60 @@ Emacs package that displays available keybindings in popup #+begin_src emacs-lisp (use-package shell-pop - :config - (add-to-list 'shackle-rules '("\\*eshell\\*" :regexp t :same t)) :custom (shell-pop-universal-key "C-c e") (shell-pop-shell-type '("eshell" "*eshell*" (lambda nil (eshell))))) #+end_src +** [[https://github.com/EricCrosson/unkillable-scratch][unkillable-scratch]] + +Make =*scratch*= and =*Messages*= unkillable. + +#+begin_src emacs-lisp +(use-package unkillable-scratch + :config + (unkillable-scratch 1) + :custom + (unkillable-buffers '("^\\*scratch\\*$" "^\\*Messages\\*$"))) +#+end_src + +** [[https://github.com/davep/boxquote.el][boxquote.el]] + +#+begin_example +,---- +| make pretty boxed quotes like this +`---- +#+end_example + +#+begin_src emacs-lisp +(use-package boxquote + :bind + (:prefix-map amin--boxquote-prefix-map + :prefix "C-c q" + ("b" . boxquote-buffer) + ("B" . boxquote-insert-buffer) + ("d" . boxquote-defun) + ("F" . boxquote-insert-file) + ("hf" . boxquote-describe-function) + ("hk" . boxquote-describe-key) + ("hv" . boxquote-describe-variable) + ("hw" . boxquote-where-is) + ("k" . boxquote-kill) + ("p" . boxquote-paragraph) + ("q" . boxquote-boxquote) + ("r" . boxquote-region) + ("s" . boxquote-shell-command) + ("t" . boxquote-text) + ("T" . boxquote-title) + ("u" . boxquote-unbox) + ("U" . boxquote-unbox-region) + ("y" . boxquote-yank) + ("M-q" . boxquote-fill-paragraph) + ("M-w" . boxquote-kill-ring-save))) +#+end_src + +Also see [[https://www.emacswiki.org/emacs/rebox2][rebox2]]. + * Email ** [[https://notmuchmail.org][notmuch]]