about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--init.el109
-rw-r--r--lisp/+emacs.el13
-rw-r--r--lisp/+org.el37
-rw-r--r--lisp/+titlecase.el12
-rw-r--r--machines/bob.el27
5 files changed, 128 insertions, 70 deletions
diff --git a/init.el b/init.el index 6c88148..d1eb3ec 100644 --- a/init.el +++ b/init.el
@@ -53,7 +53,10 @@
53 "C-<backspace>" #'+backward-kill-word 53 "C-<backspace>" #'+backward-kill-word
54 "C-x TAB" #'+indent-rigidly 54 "C-x TAB" #'+indent-rigidly
55 "<f7>" #'flyspell-mode 55 "<f7>" #'flyspell-mode
56 "C-x C-c" #'+save-buffers-quit) 56 "C-x C-c" #'+save-buffers-quit
57 "C-\\" nil ; original: toggle-input-method
58 "C-/" #'undo-only
59 "C-?" #'undo-redo)
57 ;; Disable bindings 60 ;; Disable bindings
58 (:global "M-j" nil 61 (:global "M-j" nil
59 "<Scroll_Lock>" nil) 62 "<Scroll_Lock>" nil)
@@ -479,6 +482,9 @@
479 ;; (+kmacro-recording-indicator-mode +1) 482 ;; (+kmacro-recording-indicator-mode +1)
480 (+kmacro-block-undo-mode +1))) 483 (+kmacro-block-undo-mode +1)))
481 484
485(setup midnight
486 (midnight-mode +1))
487
482(setup minibuffer 488(setup minibuffer
483 (:require +minibuffer) 489 (:require +minibuffer)
484 (:with-map minibuffer-local-map 490 (:with-map minibuffer-local-map
@@ -898,6 +904,8 @@
898 (add-hook 'kill-buffer-query-functions #'+scratch-immortal)) 904 (add-hook 'kill-buffer-query-functions #'+scratch-immortal))
899 905
900(setup sh 906(setup sh
907 (:option sh-indentation tab-width)
908 (:hook #'indent-tabs-mode)
901 (:apheleia shfmt '("shfmt"))) 909 (:apheleia shfmt '("shfmt")))
902 910
903(setup shell 911(setup shell
@@ -993,8 +1001,7 @@
993 (:face 'aw-mode-line-face '((t (:foreground "red")))) 1001 (:face 'aw-mode-line-face '((t (:foreground "red"))))
994 (+ace-window-display-mode +1)) 1002 (+ace-window-display-mode +1))
995 1003
996(setup (:straight (actually-selected-window 1004(setup (:straight (actually-selected-window :host github
997 :host github
998 :repo "duckwork/actually-selected-window.el")) 1005 :repo "duckwork/actually-selected-window.el"))
999 (actually-selected-window-mode +1)) 1006 (actually-selected-window-mode +1))
1000 1007
@@ -1121,8 +1128,7 @@
1121 browse-kill-ring-separator " ") 1128 browse-kill-ring-separator " ")
1122 (:hook #'form-feed-mode)) 1129 (:hook #'form-feed-mode))
1123 1130
1124(setup (:straight (cape 1131(setup (:straight (cape :host github :repo "minad/cape"))
1125 :host github :repo "minad/cape"))
1126 (let 1132 (let
1127 ;; All available cape capfs listed here. Add them to the front since 1133 ;; All available cape capfs listed here. Add them to the front since
1128 ;; they're reversed with `add-to-list'. 1134 ;; they're reversed with `add-to-list'.
@@ -1327,8 +1333,7 @@
1327 (add-hook 'modus-themes-after-load-theme-hook #'circe-nick-color-reset)) 1333 (add-hook 'modus-themes-after-load-theme-hook #'circe-nick-color-reset))
1328 (add-hook 'kill-emacs-hook #'+circe-quit-all@kill-emacs)) 1334 (add-hook 'kill-emacs-hook #'+circe-quit-all@kill-emacs))
1329 1335
1330(setup (:straight (clean-kill-ring 1336(setup (:straight (clean-kill-ring :host github
1331 :host github
1332 :repo "NicholasBHubbard/clean-kill-ring.el")) 1337 :repo "NicholasBHubbard/clean-kill-ring.el"))
1333 (:require) 1338 (:require)
1334 (:option clean-kill-ring-prevent-duplicates t) 1339 (:option clean-kill-ring-prevent-duplicates t)
@@ -1481,8 +1486,7 @@
1481 "TAB" #'dired-subtree-cycle 1486 "TAB" #'dired-subtree-cycle
1482 "i" #'dired-subtree-toggle)) 1487 "i" #'dired-subtree-toggle))
1483 1488
1484(setup (:straight (discord 1489(setup (:straight (discord :host github
1485 :host github
1486 :repo "davep/discord.el" 1490 :repo "davep/discord.el"
1487 :fork (:repo "duckwork/discord.el")))) 1491 :fork (:repo "duckwork/discord.el"))))
1488 1492
@@ -1574,6 +1578,20 @@
1574 (file+olp ,(car rmh-elfeed-org-files) "Feeds") 1578 (file+olp ,(car rmh-elfeed-org-files) "Feeds")
1575 "* %? %^g"))) 1579 "* %? %^g")))
1576 1580
1581(setup (:straight (elfeed-tube :host github :repo "karthink/elfeed-tube")
1582 (or (executable-find "youtube-dl")
1583 (executable-find "yt-dlp")))
1584 (:straight (elfeed-tube-mpv :host github :repo "karthink/elfeed-tube"))
1585 (:load-after elfeed)
1586 (with-eval-after-load 'elfeed
1587 (elfeed-tube-setup)
1588 (:bind-into (elfeed-show-mode-map elfeed-search-mode-map)
1589 "F" #'elfeed-tube-fetch
1590 [remap save-buffer] #'elfeed-tube-save)
1591 (:bind-into elfeed-show-mode-map
1592 "C-c C-f" #'elfeed-tube-mpv-follow-mode
1593 "C-c C-w" #'elfeed-tube-mpv-where)))
1594
1577(setup (:straight elpher) 1595(setup (:straight elpher)
1578 (:bind "l" #'elpher-back)) 1596 (:bind "l" #'elpher-back))
1579 1597
@@ -1603,8 +1621,7 @@
1603 :inherit font-lock-keyword-face)))) 1621 :inherit font-lock-keyword-face))))
1604 (:+key "C-," #'embrace-commander)) 1622 (:+key "C-," #'embrace-commander))
1605 1623
1606(setup (:straight (ement 1624(setup (:straight (ement :host github
1607 :host github
1608 :repo "alphapapa/ement.el") 1625 :repo "alphapapa/ement.el")
1609 ;; `plz' is a requirement, but isn't on an elpa. 1626 ;; `plz' is a requirement, but isn't on an elpa.
1610 (setup (:straight (plz :host github 1627 (setup (:straight (plz :host github
@@ -1661,19 +1678,11 @@
1661 (:+key "C-=" #'er/expand-region 1678 (:+key "C-=" #'er/expand-region
1662 "C--" #'+er/contract-or-negative-argument)) 1679 "C--" #'+er/contract-or-negative-argument))
1663 1680
1664(setup (:straight (fill-sentences-correctly 1681(setup (:straight (filldent :host nil
1665 :host github 1682 :repo "https://codeberg.org/acdw/filldent.el"))
1666 :repo "duckwork/fill-sentences-correctly.el"))
1667 (:quit "I don't think this works like how I want.")
1668 (fill-sentences-correctly-mode +1))
1669
1670(setup (:straight (filldent
1671 :host github
1672 :repo "duckwork/filldent.el"))
1673 (:+key "M-q" #'filldent-unfill-toggle)) 1683 (:+key "M-q" #'filldent-unfill-toggle))
1674 1684
1675(setup (:straight (flymake-collection 1685(setup (:straight (flymake-collection :host github
1676 :host github
1677 :repo "mohkale/flymake-collection")) 1686 :repo "mohkale/flymake-collection"))
1678 (+ensure-after-init #'flymake-collection-hook-setup)) 1687 (+ensure-after-init #'flymake-collection-hook-setup))
1679 1688
@@ -1702,8 +1711,7 @@
1702 'notmuch-message) 1711 'notmuch-message)
1703 (:hook-into notmuch-show-mode)) 1712 (:hook-into notmuch-show-mode))
1704 1713
1705(setup (:straight (forge 1714(setup (:straight (forge :host github :repo "magit/forge")
1706 :host github :repo "magit/forge")
1707 (eq system-type 'gnu/linux)) 1715 (eq system-type 'gnu/linux))
1708 (:quit) ; XXX: Somehow missing compat-26 1716 (:quit) ; XXX: Somehow missing compat-26
1709 (add-to-list 'forge-alist 1717 (add-to-list 'forge-alist
@@ -1715,9 +1723,8 @@
1715 (:face 'form-feed-line '((t (:strike-through t)))) 1723 (:face 'form-feed-line '((t (:strike-through t))))
1716 (global-form-feed-mode +1)) 1724 (global-form-feed-mode +1))
1717 1725
1718(setup (:straight (frowny 1726(setup (:straight (frowny :host nil
1719 :host github 1727 :repo "https://codeberg.org/acdw/frowny.el"))
1720 :repo "duckwork/frowny.el"))
1721 (:option frowny-eyes (rx (any ":=") (opt "'") (? "-"))) 1728 (:option frowny-eyes (rx (any ":=") (opt "'") (? "-")))
1722 (global-frowny-mode +1)) 1729 (global-frowny-mode +1))
1723 1730
@@ -1738,8 +1745,7 @@
1738 (setf (alist-get "\\.scm\\'" auto-insert-alist nil nil #'equal) 1745 (setf (alist-get "\\.scm\\'" auto-insert-alist nil nil #'equal)
1739 '(insert "#!/bin/sh\n#| -*- scheme -*-\nexec csi -s $0 \"$@\"\n|#\n"))) 1746 '(insert "#!/bin/sh\n#| -*- scheme -*-\nexec csi -s $0 \"$@\"\n|#\n")))
1740 1747
1741(setup (:straight (git-modes 1748(setup (:straight (git-modes :host github :repo "magit/git-modes"))
1742 :host github :repo "magit/git-modes"))
1743 (:require git-modes)) 1749 (:require git-modes))
1744 1750
1745(setup (:straight god-mode 1751(setup (:straight god-mode
@@ -1763,8 +1769,7 @@
1763 (require 'info-look) 1769 (require 'info-look)
1764 (info-lookup-setup-mode 'symbol 'emacs-lisp-mode)))) 1770 (info-lookup-setup-mode 'symbol 'emacs-lisp-mode))))
1765 1771
1766(setup (:straight (hippie-completing-read 1772(setup (:straight (hippie-completing-read :host nil
1767 :host nil
1768 :repo "https://codeberg.org/acdw/hippie-completing-read.el")) 1773 :repo "https://codeberg.org/acdw/hippie-completing-read.el"))
1769 (:+key "M-/" #'hippie-completing-read)) 1774 (:+key "M-/" #'hippie-completing-read))
1770 1775
@@ -1825,8 +1830,8 @@
1825 (define-key isearch-mb-minibuffer-map (kbd key) command))))))) 1830 (define-key isearch-mb-minibuffer-map (kbd key) command)))))))
1826 (isearch-mb-mode +1)) 1831 (isearch-mb-mode +1))
1827 1832
1828(setup (:straight (jabber :repo "https://codeberg.org/emacs-jabber/emacs-jabber" 1833(setup (:straight (jabber :host nil
1829 :host nil 1834 :repo "https://codeberg.org/emacs-jabber/emacs-jabber"
1830 :files ("*.el" "*.texi" 1835 :files ("*.el" "*.texi"
1831 ("jabber-fallback-lib" 1836 ("jabber-fallback-lib"
1832 "jabber-fallback-lib/hexrgb.el" 1837 "jabber-fallback-lib/hexrgb.el"
@@ -1896,8 +1901,8 @@
1896 (remove-hook 'jabber-alert-muc-hooks 'jabber-muc-echo) 1901 (remove-hook 'jabber-alert-muc-hooks 'jabber-muc-echo)
1897 (remove-hook 'jabber-alert-presence-hooks 'jabber-presence-echo)) 1902 (remove-hook 'jabber-alert-presence-hooks 'jabber-presence-echo))
1898 1903
1899(setup (:straight (keepassxc-shim 1904(setup (:straight (keepassxc-shim :host nil
1900 :host github :repo "duckwork/keepassxc-shim.el")) 1905 :repo "https://codeberg.org/acdw/keepassxc-shim.el"))
1901 (keepassxc-shim-activate)) 1906 (keepassxc-shim-activate))
1902 1907
1903(setup (:straight keychain-environment 1908(setup (:straight keychain-environment
@@ -1926,8 +1931,8 @@
1926 "M-c" #'+link-hint-open-chrome "c" #'+link-hint-open-chrome))) 1931 "M-c" #'+link-hint-open-chrome "c" #'+link-hint-open-chrome)))
1927 1932
1928(setup (:straight (machine 1933(setup (:straight (machine
1929 :host github 1934 :host nil
1930 :repo "duckwork/machine.el")) 1935 :repo "https://codeberg.org/acdw/machine.el"))
1931 (+with-ensure-after-init ; So that they override anything here. 1936 (+with-ensure-after-init ; So that they override anything here.
1932 ;; Emoji fonts 1937 ;; Emoji fonts
1933 (let ((ffl (font-family-list)) 1938 (let ((ffl (font-family-list))
@@ -2008,7 +2013,10 @@
2008 (:option modus-themes-mixed-fonts t 2013 (:option modus-themes-mixed-fonts t
2009 modus-themes-bold-constructs t 2014 modus-themes-bold-constructs t
2010 modus-themes-italic-constructs t 2015 modus-themes-italic-constructs t
2011 modus-themes-headings '((t t))) 2016 modus-themes-headings '((1 monochrome bold overline)
2017 (2 monochrome bold)
2018 (3 monochrome italic)
2019 (t monochrome)))
2012 (dotimes (facen-1 8) 2020 (dotimes (facen-1 8)
2013 (let ((facen (1+ facen-1))) 2021 (let ((facen (1+ facen-1)))
2014 (custom-set-faces 2022 (custom-set-faces
@@ -2178,8 +2186,8 @@
2178 (local-set-key (kbd "C-c M-o") 'org-mime-org-buffer-htmlize)))) 2186 (local-set-key (kbd "C-c M-o") 'org-mime-org-buffer-htmlize))))
2179 2187
2180(setup (:straight (org-taskwise 2188(setup (:straight (org-taskwise
2181 :host github 2189 :host nil
2182 :repo "duckwork/org-taskwise.el")) 2190 :repo "https://codeberg.org/acdw/org-taskwise.el.git"))
2183 (with-eval-after-load 'org 2191 (with-eval-after-load 'org
2184 (require 'org-taskwise) 2192 (require 'org-taskwise)
2185 (define-key org-mode-map (kbd "C-x n t") #'org-taskwise-narrow-to-task))) 2193 (define-key org-mode-map (kbd "C-x n t") #'org-taskwise-narrow-to-task)))
@@ -2264,9 +2272,8 @@
2264 persistent-scratch-scratch-buffer-p-function)) 2272 persistent-scratch-scratch-buffer-p-function))
2265 2273
2266(setup (:straight (plancat 2274(setup (:straight (plancat
2267 :host github 2275 :host nil
2268 :repo "duckwork/plancat.el" 2276 :repo "https://codeberg.org/acdw/plancat.el"))
2269 :local-repo "~/src/emacs-packages/plancat.el/"))
2270 (:option plancat-user "acdw")) 2277 (:option plancat-user "acdw"))
2271 2278
2272(setup (:straight pocket-reader) 2279(setup (:straight pocket-reader)
@@ -2287,8 +2294,6 @@
2287(setup (:straight rainbow-mode) 2294(setup (:straight rainbow-mode)
2288 (:hook-into prog-mode)) 2295 (:hook-into prog-mode))
2289 2296
2290(setup (:straight restart-emacs))
2291
2292(setup (:straight (shell-command+ 2297(setup (:straight (shell-command+
2293 :host nil 2298 :host nil
2294 :repo "https://git.sr.ht/~pkal/shell-command-plus")) 2299 :repo "https://git.sr.ht/~pkal/shell-command-plus"))
@@ -2375,8 +2380,8 @@
2375 (:hook-into prog-mode)) 2380 (:hook-into prog-mode))
2376 2381
2377(setup (:straight (sophomore 2382(setup (:straight (sophomore
2378 :host github 2383 :host nil
2379 :repo "duckwork/sophomore.el")) 2384 :repo "https://codeberg.org/acdw/sophomore.el"))
2380 (sophomore-enable #'narrow-to-region) 2385 (sophomore-enable #'narrow-to-region)
2381 (sophomore-disable ; These are mostly annoying commands 2386 (sophomore-disable ; These are mostly annoying commands
2382 #'view-hello-file 2387 #'view-hello-file
@@ -2389,8 +2394,8 @@
2389 (sophomore-mode +1)) 2394 (sophomore-mode +1))
2390 2395
2391(setup (:straight (spongebob-case 2396(setup (:straight (spongebob-case
2392 :host github 2397 :host nil
2393 :repo "duckwork/spongebob-case.el"))) 2398 :repo "https://codeberg.org/acdw/spongebob-case.el")))
2394 2399
2395(setup (:straight ssh-config-mode) 2400(setup (:straight ssh-config-mode)
2396 (:file-match (rx "/.ssh/config" eos) 2401 (:file-match (rx "/.ssh/config" eos)
@@ -2414,8 +2419,8 @@
2414 (:option systemd-man-function 'woman)) 2419 (:option systemd-man-function 'woman))
2415 2420
2416(setup (:straight (titlecase 2421(setup (:straight (titlecase
2417 :host github 2422 :host nil
2418 :repo "duckwork/titlecase.el" 2423 :repo "https://codeberg.org/acdw/titlecase.el"
2419 :files ("*"))) 2424 :files ("*")))
2420 (:require titlecase +titlecase) 2425 (:require titlecase +titlecase)
2421 (:with-map +casing-map 2426 (:with-map +casing-map
@@ -2466,7 +2471,7 @@
2466 (:option twtxt-file _twtxt-file 2471 (:option twtxt-file _twtxt-file
2467 twtxt-following _twtxt-following)) 2472 twtxt-following _twtxt-following))
2468 2473
2469(setup (:straight undo-fu) 2474(setup (:straight undo-fu) (:quit "Trying native undo functionality")
2470 (:option undo-fu-allow-undo-in-region t) 2475 (:option undo-fu-allow-undo-in-region t)
2471 (:global "C-/" #'undo-fu-only-undo 2476 (:global "C-/" #'undo-fu-only-undo
2472 "C-?" #'undo-fu-only-redo)) 2477 "C-?" #'undo-fu-only-redo))
diff --git a/lisp/+emacs.el b/lisp/+emacs.el index 533d438..b4742da 100644 --- a/lisp/+emacs.el +++ b/lisp/+emacs.el
@@ -206,8 +206,17 @@ Do this only if the buffer is not visiting a file."
206 206
207;;; Hooks 207;;; Hooks
208 208
209(add-hook 'after-save-hook 'executable-make-buffer-file-executable-if-script-p) 209(add-hook 'after-save-hook #'executable-make-buffer-file-executable-if-script-p)
210(add-hook 'minibuffer-setup-hook 'cursor-intangible-mode) 210(add-hook 'minibuffer-setup-hook #'cursor-intangible-mode)
211
212(defun +auto-create-missing-dirs ()
213 "Automatically create missing directories when finding a file."
214 ;; https://emacsredux.com/blog/2022/06/12/auto-create-missing-directories/
215 (let ((target-dir (file-name-directory buffer-file-name)))
216 (unless (file-exists-p target-dir)
217 (make-directory target-dir t))))
218
219(add-hook 'find-file-not-found-functions #'+auto-create-missing-dirs)
211 220
212 221
213;;; Better-default functions ... 222;;; Better-default functions ...
diff --git a/lisp/+org.el b/lisp/+org.el index 0d6e300..6b956ae 100644 --- a/lisp/+org.el +++ b/lisp/+org.el
@@ -729,5 +729,42 @@ When called with a prefix ARG, will still unconditionally call
729 ((org-at-table-p) #'org-table-wrap-region) 729 ((org-at-table-p) #'org-table-wrap-region)
730 (t #'org-return))))) 730 (t #'org-return)))))
731 731
732
733;;; el-patch
734
735(el-patch-defun org-format-outline-path (path &optional width prefix separator)
736 "Format the outline path PATH for display.
737WIDTH is the maximum number of characters that is available.
738PREFIX is a prefix to be included in the returned string,
739such as the file name.
740SEPARATOR is inserted between the different parts of the path,
741the default is \"/\"."
742 (setq width (or width 79))
743 (setq path (delq nil path))
744 (unless (> width 0)
745 (user-error "Argument `width' must be positive"))
746 (setq separator (or separator "/"))
747 (let* ((org-odd-levels-only nil)
748 (fpath (concat
749 prefix (and prefix path separator)
750 (mapconcat
751 (lambda (s) (replace-regexp-in-string "[ \t]+\\'" "" s))
752 (cl-loop for head in path
753 for n from 0
754 collect (el-patch-swap
755 (org-add-props
756 head nil 'face
757 (nth (% n org-n-level-faces) org-level-faces))
758 head))
759 separator))))
760 (when (> (length fpath) width)
761 (if (< width 7)
762 ;; It's unlikely that `width' will be this small, but don't
763 ;; waste characters by adding ".." if it is.
764 (setq fpath (substring fpath 0 width))
765 (setf (substring fpath (- width 2)) "..")))
766 fpath))
767
768
732(provide '+org) 769(provide '+org)
733;;; +org.el ends here 770;;; +org.el ends here
diff --git a/lisp/+titlecase.el b/lisp/+titlecase.el index 1366a46..655ebe1 100644 --- a/lisp/+titlecase.el +++ b/lisp/+titlecase.el
@@ -4,10 +4,14 @@
4 4
5;;; Code: 5;;; Code:
6 6
7(defun +titlecase-sentence-style-dwim () 7(defun +titlecase-sentence-style-dwim (&optional arg)
8 "Titlecase a sentence." 8 "Titlecase a sentence.
9 (interactive) 9With prefix ARG, toggle the value of
10 (titlecase-dwim 'sentence)) 10`titlecase-downcase-sentences' before sentence-casing."
11 (interactive "P")
12 (let ((titlecase-downcase-sentences (if arg (not titlecase-downcase-sentences)
13 titlecase-downcase-sentences)))
14 (titlecase-dwim 'sentence)))
11 15
12(defun +titlecase-org-headings () 16(defun +titlecase-org-headings ()
13 (interactive) 17 (interactive)
diff --git a/machines/bob.el b/machines/bob.el index 06e605a..40db7b0 100644 --- a/machines/bob.el +++ b/machines/bob.el
@@ -8,33 +8,36 @@
8(require 'machine) 8(require 'machine)
9 9
10(defun +bob-set-faces (&rest _) 10(defun +bob-set-faces (&rest _)
11 (let ((base-face "IBM Plex Mono") 11 (let (;;(base-face "IBM Plex Mono")
12 (base-size 110) 12 (base-face "Iosevka Comfy Wide")
13 (base-size 100)
13 (italic-face nil) 14 (italic-face nil)
14 ;; (bold-face nil) 15 ;; (bold-face nil)
15 (mono-face nil) 16 (mono-face nil)
16 (var-face "IBM Plex Sans") 17 ;; (var-face "IBM Plex Sans")
18 (var-face "Iosevka Comfy Duo")
17 (var-size 1.0)) 19 (var-size 1.0))
18 (+set-faces 20 (+set-faces
19 `((default 21 `((default
20 :family ,base-face 22 :family ,base-face
21 :height ,base-size 23 :height ,base-size
22 :weight normal) 24 :weight regular)
23 ;; (bold :family ,(or bold-face base-face) 25 (bold :family ,(or (bound-and-true-p bold-face) base-face)
24 ;; :weight bold) 26 :weight extra-bold)
25 (italic :family ,(or italic-face base-face) 27 (italic :family ,(or (bound-and-true-p italic-face) base-face)
26 :weight normal 28 :weight normal
27 :slant italic) 29 :slant italic)
28 (fixed-pitch :family ,(or mono-face base-face) 30 (fixed-pitch :family ,(or (bound-and-true-p mono-face) base-face)
29 :height 1.0) 31 :height 1.0)
30 (variable-pitch 32 (variable-pitch
31 :family ,(or var-face base-face) 33 :family ,(or var-face base-face)
32 :height ,var-size) 34 :height ,var-size)
33 (org-italic 35 ;; (org-italic
34 :family ,(or var-face base-face) 36 ;; :family ,(or var-face base-face)
35 :slant italic))))) 37 ;; :slant italic)
38 ))))
36 39
37;; Other ideas: [[https://twitter.com/NPRougier/status/1488570192561160195][from Nic Rougier]] 40;; Other ideas: [[https://twitter.com/NPRougier/status/1488570192561160195][from Nic Rougier]]
38(add-function :after machine-after-load-theme #'+bob-set-faces) 41(add-hook 'machine-after-load-theme-hook #'+bob-set-faces)
39 42
40;; bob.el ends here (+bob-set-faces) 43;; bob.el ends here (+bob-set-faces)