[emacs][wip] enable web packages
[~bandali/configs] / init.org
index a1ba40b..9927089 100644 (file)
--- 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,7 +957,19 @@ Not just how I do git, but /the/ way to do git.
   :custom-face (magit-diff-file-heading ((t (:weight normal)))))
 #+end_src
 
-*** COMMENT [[https://github.com/abo-abo/swiper][Ivy]] (and friends)
+*** 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
 Ivy - a generic completion frontend for Emacs, Swiper - isearch with
@@ -964,7 +982,7 @@ There's no way I could top that, so I won't attempt to.
 
 #+begin_src emacs-lisp
 (use-package ivy
-  :defer 1
+  :defer 0.6
   :bind
   (:map ivy-minibuffer-map
    ([escape] . keyboard-escape-quit)
@@ -985,6 +1003,7 @@ There's no way I could top that, so I won't attempt to.
 
 #+begin_src emacs-lisp
 (use-package swiper
+  :after ivy
   :bind (("C-s"   . swiper)
          ("C-r"   . swiper)
          ("C-S-s" . isearch-forward)))
@@ -994,7 +1013,7 @@ There's no way I could top that, so I won't attempt to.
 
 #+begin_src emacs-lisp
 (use-package counsel
-  :defer 1
+  :after ivy
   :bind (([remap execute-extended-command] . counsel-M-x)
          ([remap find-file]                . counsel-find-file)
          ("s-r"                            . counsel-recentf)
@@ -1007,10 +1026,10 @@ There's no way I could top that, so I won't attempt to.
   (defalias 'locate #'counsel-locate))
 #+end_src
 
-*** COMMENT eshell
+*** eshell
 
 #+begin_src emacs-lisp
-(use-package eshell
+(use-feature eshell
   :defer 1
   :commands eshell
   :bind ("C-c a s e" . eshell)
@@ -1044,10 +1063,10 @@ There's no way I could top that, so I won't attempt to.
   (eshell-input-filter 'eshell-input-filter-initial-space))
 #+end_src
 
-*** COMMENT Ibuffer
+*** Ibuffer
 
 #+begin_src emacs-lisp
-(use-package ibuffer
+(use-feature ibuffer
   :defer t
   :bind
   (("C-x C-b" . ibuffer-other-window)
@@ -1115,10 +1134,10 @@ There's no way I could top that, so I won't attempt to.
   :hook (ibuffer . (lambda () (ibuffer-switch-to-saved-filter-groups "default"))))
 #+end_src
 
-*** COMMENT Outline
+*** Outline
 
 #+begin_src emacs-lisp
-(use-package outline
+(use-feature outline
   :defer t
   :hook (prog-mode . outline-minor-mode)
   :bind
@@ -1137,27 +1156,13 @@ There's no way I could top that, so I won't attempt to.
    ("s"   . outline-show-subtree)))
 #+end_src
 
-* COMMENT Borg's =layer/essentials=
-:PROPERTIES:
-:CUSTOM_ID: borg-essentials
-:END:
-
-TODO: break this giant source block down into individual org sections.
+*** Dired
 
 #+begin_src emacs-lisp
-(use-package dash
-  :config (dash-enable-font-lock))
-
-(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))
-
-(use-package ls-lisp
+(use-feature ls-lisp
   :custom (ls-lisp-dirs-first t))
 
-(use-package dired
+(use-feature dired
   :defer t
   :config
   (setq dired-listing-switches "-alh"
@@ -1193,76 +1198,111 @@ TODO: break this giant source block down into individual org sections.
                         (interactive)
                         (a/dired-start-process "zathura"))))
   :hook (dired-mode . dired-hide-details-mode))
+#+end_src
 
-(use-package eldoc
-  :when (version< "25" emacs-version)
-  :config (global-eldoc-mode))
+*** Help
 
-(use-package help
+#+begin_src emacs-lisp
+(use-feature help
   :defer t
   :config
   (temp-buffer-resize-mode)
   (setq help-window-select t))
+#+end_src
 
-(progn ;    `isearch'
-  (setq isearch-allow-scroll t))
+*** Tramp
 
-(use-package lisp-mode
+#+begin_src emacs-lisp
+(use-feature tramp
+  :defer t
   :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))
+  (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
 
-(use-package man
+*** Dash
+
+#+begin_src emacs-lisp
+(use-package dash
   :defer t
-  :config (setq Man-width 80))
+  :config (dash-enable-font-lock))
+#+end_src
 
-(use-package paren
-  :config (show-paren-mode))
+* Editing
+:PROPERTIES:
+:CUSTOM_ID: editing
+:END:
 
-(use-package 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))
+** =diff-hl=
 
-(use-package recentf
-  :defer 0.5
+Highlight uncommitted changes in the left fringe.
+
+#+begin_src emacs-lisp
+(use-package diff-hl
   :config
-  (add-to-list 'recentf-exclude "^/\\(?:ssh\\|su\\|sudo\\)?:")
-  (setq recentf-max-saved-items 40))
+  (setq diff-hl-draw-borders nil)
+  (global-diff-hl-mode)
+  :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
+
+** paren
 
-(use-package savehist
+Highlight matching parens.
+
+#+begin_src emacs-lisp
+(use-feature paren
+  :config (show-paren-mode))
+#+end_src
+
+** =savehist=
+
+Save minibuffer history.
+
+#+begin_src emacs-lisp
+(use-feature savehist
   :config (savehist-mode))
+#+end_src
+
+** =saveplace=
 
-(use-package 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-package 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-package 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
@@ -1282,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
@@ -1329,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
@@ -1345,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]])
@@ -1557,7 +1606,7 @@ instead.
               ("C-c l l" . hs-lint)))
 #+end_src
 
-** Web dev
+** Web
 
 *** SGML and HTML
 
@@ -1684,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
@@ -1706,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