X-Git-Url: https://git.shemshak.org/gitweb.cgi/~bandali/configs/blobdiff_plain/41d73018804a062cb1cdd328a6f0f8230e98b080..42b1fa9b023f964d566a74adc01376529d3e4e5a:/init.org diff --git a/init.org b/init.org index c0078b4..9927089 100644 --- a/init.org +++ b/init.org @@ -718,6 +718,12 @@ for this. (setq-default cursor-type 'bar) #+end_src +*** Allow scrolling in Isearch + +#+begin_src emacs-lisp +(setq isearch-allow-scroll t) +#+end_src + ** Bindings #+begin_src emacs-lisp @@ -951,6 +957,18 @@ Not just how I do git, but /the/ way to do git. :custom-face (magit-diff-file-heading ((t (:weight normal))))) #+end_src +*** recentf + +Recently opened files. + +#+begin_src emacs-lisp +(use-feature recentf + :defer 0.5 + :config + (add-to-list 'recentf-exclude "^/\\(?:ssh\\|su\\|sudo\\)?:") + (setq recentf-max-saved-items 40)) +#+end_src + *** [[https://github.com/abo-abo/swiper][Ivy]] (and friends) #+begin_quote @@ -1182,92 +1200,109 @@ There's no way I could top that, so I won't attempt to. :hook (dired-mode . dired-hide-details-mode)) #+end_src -*** Borg's =layer/essentials= -:PROPERTIES: -:CUSTOM_ID: borg-essentials -:END: +*** Help + +#+begin_src emacs-lisp +(use-feature help + :defer t + :config + (temp-buffer-resize-mode) + (setq help-window-select t)) +#+end_src + +*** Tramp + +#+begin_src emacs-lisp +(use-feature tramp + :defer t + :config + (add-to-list 'tramp-default-proxies-alist '(nil "\\`root\\'" "/ssh:%h:")) + (add-to-list 'tramp-default-proxies-alist '("localhost" nil nil)) + (add-to-list 'tramp-default-proxies-alist + (list (regexp-quote (system-name)) nil nil))) +#+end_src -TODO: break this giant source block down into individual org sections. +*** Dash #+begin_src emacs-lisp (use-package dash + :defer t :config (dash-enable-font-lock)) +#+end_src + +* Editing +:PROPERTIES: +:CUSTOM_ID: editing +:END: + +** =diff-hl= + +Highlight uncommitted changes in the left fringe. +#+begin_src emacs-lisp (use-package diff-hl :config (setq diff-hl-draw-borders nil) (global-diff-hl-mode) - (add-hook 'magit-post-refresh-hook 'diff-hl-magit-post-refresh t)) + :hook (magit-post-refresh . diff-hl-magit-post-refresh)) +#+end_src + +** ElDoc + +Display Lisp objects at point in the echo area. +#+begin_src emacs-lisp (use-feature eldoc :when (version< "25" emacs-version) :config (global-eldoc-mode)) +#+end_src -(use-feature help - :defer t - :config - (temp-buffer-resize-mode) - (setq help-window-select t)) - -(progn ; `isearch' - (setq isearch-allow-scroll t)) - -(use-feature lisp-mode - :config - (add-hook 'emacs-lisp-mode-hook 'outline-minor-mode) - (add-hook 'emacs-lisp-mode-hook 'reveal-mode) - (defun indent-spaces-mode () - (setq indent-tabs-mode nil)) - (add-hook 'lisp-interaction-mode-hook #'indent-spaces-mode)) +** paren -(use-feature man - :defer t - :config (setq Man-width 80)) +Highlight matching parens. +#+begin_src emacs-lisp (use-feature paren :config (show-paren-mode)) +#+end_src -(use-feature prog-mode - :config (global-prettify-symbols-mode) - (defun indicate-buffer-boundaries-left () - (setq indicate-buffer-boundaries 'left)) - (add-hook 'prog-mode-hook #'indicate-buffer-boundaries-left)) +** =savehist= -(use-feature recentf - :defer 0.5 - :config - (add-to-list 'recentf-exclude "^/\\(?:ssh\\|su\\|sudo\\)?:") - (setq recentf-max-saved-items 40)) +Save minibuffer history. +#+begin_src emacs-lisp (use-feature savehist :config (savehist-mode)) +#+end_src + +** =saveplace= + +Automatically save place in each file. +#+begin_src emacs-lisp (use-feature saveplace :when (version< "25" emacs-version) :config (save-place-mode)) +#+end_src -(use-feature simple - :config (column-number-mode)) +** =prog-mode= -(progn ; `text-mode' - (add-hook 'text-mode-hook #'indicate-buffer-boundaries-left) - (add-hook 'text-mode-hook #'abbrev-mode)) +#+begin_src emacs-lisp +(use-feature prog-mode + :config (global-prettify-symbols-mode) + (defun indicate-buffer-boundaries-left () + (setq indicate-buffer-boundaries 'left)) + (add-hook 'prog-mode-hook #'indicate-buffer-boundaries-left)) +#+end_src -(use-feature tramp - :defer t - :config - (add-to-list 'tramp-default-proxies-alist '(nil "\\`root\\'" "/ssh:%h:")) - (add-to-list 'tramp-default-proxies-alist '("localhost" nil nil)) - (add-to-list 'tramp-default-proxies-alist - (list (regexp-quote (system-name)) nil nil))) +** =text-mode= +#+begin_src emacs-lisp +(use-feature text-mode + :hook ((text-mode . indicate-buffer-boundaries-left) + (text-mode . abbrev-mode))) #+end_src -* COMMENT Editing -:PROPERTIES: -:CUSTOM_ID: editing -:END: - ** Company #+begin_src emacs-lisp @@ -1287,10 +1322,7 @@ TODO: break this giant source block down into individual org sections. (global-company-mode t)) #+end_src -* COMMENT Syntax and spell checking -:PROPERTIES: -:CUSTOM_ID: syntax-spell-checking -:END: +** Flycheck #+begin_src emacs-lisp (use-package flycheck @@ -1334,15 +1366,28 @@ TODO: break this giant source block down into individual org sections. #'endless/replace-quote)) #+end_src -* COMMENT Programming modes +* Programming modes :PROPERTIES: :CUSTOM_ID: programming-modes :END: +** Lisp + +#+begin_src emacs-lisp +(use-feature lisp-mode + :config + (add-hook 'emacs-lisp-mode-hook 'outline-minor-mode) + (add-hook 'emacs-lisp-mode-hook 'reveal-mode) + (defun indent-spaces-mode () + (setq indent-tabs-mode nil)) + (add-hook 'lisp-interaction-mode-hook #'indent-spaces-mode)) +#+end_src + ** [[http://alloytools.org][Alloy]] (with [[https://github.com/dwwmmn/alloy-mode][alloy-mode]]) #+begin_src emacs-lisp (use-package alloy-mode + :straight (:host github :repo "dwwmmn/alloy-mode") :defer t :config (setq alloy-basic-offset 2)) #+end_src @@ -1350,9 +1395,8 @@ TODO: break this giant source block down into individual org sections. ** [[https://coq.inria.fr][Coq]] (with [[https://github.com/ProofGeneral/PG][Proof General]]) #+begin_src emacs-lisp -(use-package proof-site ; Proof General - :defer t - :load-path "lib/proof-site/generic/") +(use-package proof-general + :defer t) #+end_src ** [[https://leanprover.github.io][Lean]] (with [[https://github.com/leanprover/lean-mode][lean-mode]]) @@ -1562,7 +1606,7 @@ instead. ("C-c l l" . hs-lint))) #+end_src -** Web dev +** Web *** SGML and HTML @@ -1689,21 +1733,20 @@ treemacs :after (treemacs)) #+end_src -** geiser +** COMMENT geiser #+begin_src emacs-lisp (use-package geiser) -(use-package geiser-guile +(use-feature geiser-guile :config (setq geiser-guile-load-path "~/src/git/guix")) #+end_src -** guix +** COMMENT guix #+begin_src emacs-lisp -(use-package guix - :load-path "lib/guix/elisp") +(use-package guix) #+end_src * COMMENT Emacs enhancements @@ -1711,6 +1754,14 @@ treemacs :CUSTOM_ID: emacs-enhancements :END: +** man + +#+begin_src emacs-lisp +(use-feature man + :defer t + :config (setq Man-width 80)) +#+end_src + ** [[https://github.com/justbur/emacs-which-key][which-key]] #+begin_quote