Major refactor: use-package-always-defer = nil & use :hook

Possibly breaking change: packages are no longer deferred by default.

Addresses #286
This commit is contained in:
Henrik Lissner 2017-12-08 22:33:12 -05:00
parent 2cbd1b9107
commit 9d81bc5a8b
No known key found for this signature in database
GPG key ID: 5F6C0EA160557395
45 changed files with 90 additions and 151 deletions

View file

@ -150,7 +150,7 @@ with functions that require it (like modeline segments)."
;; Keep track of recently opened files
(def-package! recentf
:init (add-hook 'doom-init-hook #'recentf-mode)
:hook (doom-init . recentf-mode)
:config
(setq recentf-save-file (concat doom-etc-dir "recentf")
recentf-max-menu-items 0
@ -171,7 +171,6 @@ with functions that require it (like modeline segments)."
;; Handles whitespace (tabs/spaces) settings externally. This way projects can
;; specify their own formatting rules.
(def-package! editorconfig
:demand t
:init
(def-setting! :editorconfig (action value)
":add or :remove an entry in `editorconfig-indentation-alist'."
@ -230,17 +229,16 @@ extension, try to guess one."
;; Auto-close delimiters and blocks as you type
(def-package! smartparens
:demand t
:config
(add-hook 'doom-init-hook #'smartparens-global-mode)
(require 'smartparens-config)
(setq sp-autowrap-region nil ; let evil-surround handle this
sp-highlight-pair-overlay nil
sp-cancel-autoskip-on-backward-movement nil
sp-show-pair-delay 0
sp-max-pair-length 3)
(add-hook 'doom-init-hook #'smartparens-global-mode)
(require 'smartparens-config)
;; disable smartparens in evil-mode's replace state (they conflict)
(add-hook 'evil-replace-state-entry-hook #'turn-off-smartparens-mode)
(add-hook 'evil-replace-state-exit-hook #'turn-on-smartparens-mode)
@ -250,10 +248,8 @@ extension, try to guess one."
;; Branching undo
(def-package! undo-tree
:demand t
:config
(global-undo-tree-mode +1)
(add-hook 'doom-init-hook #'global-undo-tree-mode)
;; persistent undo history is known to cause undo history corruption, which
;; can be very destructive! So disable it!
(setq undo-tree-auto-save-history nil

View file

@ -24,7 +24,6 @@
;;
(def-package! which-key
:demand t
:config
(setq which-key-sort-order #'which-key-prefix-then-key-order
which-key-sort-uppercase-first nil
@ -38,7 +37,6 @@
(def-package! hydra
:demand t
:init
;; In case I later need to wrap defhydra in any special functionality.
(defalias 'def-hydra! 'defhydra)

View file

@ -109,8 +109,6 @@ base by `doom!' and for calculating how many packages exist.")
"gnutls-cli -p %p %h"
"openssl s_client -connect %h:%p -no_ssl2 -no_ssl3 -ign_eof")
use-package-always-defer t
use-package-always-ensure nil
use-package-verbose doom-debug-mode
use-package-minimum-reported-time (if doom-debug-mode 0 0.1)

View file

@ -88,7 +88,6 @@ recognized by DOOM's popup system. They are:
;;
(def-package! shackle
:demand t
:init
(setq shackle-default-alignment 'below
shackle-default-size 8

View file

@ -5,7 +5,6 @@
state are passed in.")
(def-package! projectile
:demand t
:init
(setq projectile-cache-file (concat doom-cache-dir "projectile.cache")
projectile-enable-caching (not noninteractive)

View file

@ -296,7 +296,7 @@ local value, whether or not it's permanent-local. Therefore, we cycle
;; Highlights the current line
(def-package! hl-line ; built-in
:init (add-hook! (prog-mode text-mode conf-mode) #'hl-line-mode)
:hook ((prog-mode text-mode conf-mode) . hl-line-mode)
:config
;; I don't need hl-line showing in other windows. This also offers a small
;; speed boost when buffer is displayed in multiple windows.

View file

@ -263,8 +263,7 @@ default/fallback account."
(def-package! org-mu4e
:commands org-mu4e-compose-org-mode
:init (add-hook 'mu4e-compose-mode-hook #'org-mu4e-compose-org-mode)
:hook (mu4e-compose-mode . org-mu4e-compose-org-mode)
:config
(setq org-mu4e-link-query-in-headers-mode nil
org-mu4e-convert-to-html t)

View file

@ -110,8 +110,7 @@ playback.")
(def-package! circe-color-nicks
:commands enable-circe-color-nicks
:init (add-hook 'circe-channel-mode-hook 'enable-circe-color-nicks)
:hook (circe-channel-mode . enable-circe-color-nicks)
:config
(setq circe-color-nicks-min-constrast-ratio 4.5
circe-color-nicks-everywhere t))
@ -202,5 +201,4 @@ Courtesy of esh-mode.el"
(def-package! lui-autopaste
:commands enable-lui-autopaste
:init (add-hook 'circe-channel-mode-hook 'enable-lui-autopaste))
:hook (circe-channel-mode . enable-lui-autopaste))

View file

@ -11,7 +11,6 @@
;;
(def-package! helm
:demand t
:init
(setq helm-quick-update t
;; Speedier without fuzzy matching
@ -77,15 +76,18 @@
(def-package! helm-locate
:defer t
:init (defvar helm-generic-files-map (make-sparse-keymap))
:config (set-keymap-parent helm-generic-files-map helm-map))
(def-package! helm-bookmark
:commands helm-bookmark
:config (setq-default helm-bookmark-show-location t))
(def-package! helm-files
:defer t
:config
(setq helm-boring-file-regexp-list
(append (list "\\.projects$" "\\.DS_Store$")
@ -93,6 +95,7 @@
(def-package! helm-ag
:defer t
:config
(map! :map helm-ag-edit-map
[remap doom/kill-this-buffer] #'helm-ag--edit-abort

View file

@ -22,11 +22,18 @@
(ido-mode 1)
(ido-everywhere 1)
(require 'ido-ubiquitous)
(ido-ubiquitous-mode 1)
(defun +ido|init ()
(require 'ido-vertical-mode)
(ido-vertical-mode 1)
(require 'flx-ido)
(flx-ido-mode +1)
(require 'crm-custom)
(crm-custom-mode +1)
(map! :map (ido-common-completion-map ido-completion-map ido-file-completion-map)
"C-n" #'ido-next-match
"C-p" #'ido-prev-match
@ -55,12 +62,3 @@
(insert "~/")
(call-interactively #'self-insert-command)))))
(add-hook 'ido-setup-hook #'+ido|setup-home-keybind))
(def-package! ido-ubiquitous :config (ido-ubiquitous-mode 1))
(def-package! ido-vertical-mode :config (ido-vertical-mode 1))
(def-package! flx-ido :config (flx-ido-mode +1))
(def-package! crm-custom :config (crm-custom-mode +1))

View file

@ -24,7 +24,6 @@ immediately runs it on the current candidate (ending the ivy session)."
;;
(def-package! ivy
:demand t
:init
(add-hook 'doom-post-init-hook #'ivy-mode)
:config
@ -83,7 +82,7 @@ immediately runs it on the current candidate (ending the ivy session)."
(def-package! counsel
:after ivy
:requires ivy
:config
(require 'counsel-projectile)
(setq counsel-find-file-ignore-regexp "\\(?:^[#.]\\)\\|\\(?:[#~]$\\)\\|\\(?:^Icon?\\)")

View file

@ -21,7 +21,6 @@
(autoload 'goto-last-change-reverse "goto-chg")
(def-package! evil
:demand t
:init
(setq evil-want-C-u-scroll t
evil-want-visual-char-semi-exclusive t

View file

@ -20,8 +20,7 @@
(set! :evil-state 'vc-git-log-view-mode 'normal))
(def-package! smerge-mode
:init
(add-hook 'find-file-hook #'+vcs|enable-smerge-mode-maybe)
:hook (find-file . +vcs|enable-smerge-mode-maybe)
:config
(when (version< emacs-version "26")
(defalias #'smerge-keep-upper #'smerge-keep-mine)

View file

@ -22,7 +22,6 @@ renamed.")
;;
(def-package! persp-mode
:demand t
:config
(setq persp-autokill-buffer-on-remove 'kill-weak
persp-nil-name "nil"

View file

@ -105,28 +105,24 @@ compilation database is present in the project.")
(def-package! modern-cpp-font-lock
:commands modern-c++-font-lock-mode
:init (add-hook 'c++-mode-hook #'modern-c++-font-lock-mode))
:hook (c++-mode . modern-c++-font-lock-mode))
(def-package! irony
:after cc-mode
:commands irony-install-server
:preface
(setq irony-server-install-prefix (concat doom-etc-dir "irony-server/"))
:init
(add-hook! (c-mode c++-mode objc-mode) #'irony-mode)
:preface (setq irony-server-install-prefix (concat doom-etc-dir "irony-server/"))
:hook ((c-mode c++-mode objc-mode) . irony-mode)
:config
(unless (file-directory-p irony-server-install-prefix)
(warn "irony-mode: server isn't installed; run M-x irony-install-server"))
;; Initialize compilation database, if present. Otherwise, fall back on
;; `+cc-compiler-options'.
(add-hook 'irony-mode-hook #'+cc|irony-init-compile-options))
(def-package! irony-eldoc
:after irony
:config (add-hook 'irony-mode-hook #'irony-eldoc))
:hook (irony-mode . irony-eldoc))
(def-package! flycheck-irony
:when (featurep! :feature syntax-checker)
@ -157,8 +153,7 @@ compilation database is present in the project.")
(def-package! opencl-mode :mode "\\.cl$")
(def-package! demangle-mode
:commands demangle-mode
:init (add-hook 'llvm-mode-hook #'demangle-mode))
:hook llvm-mode)
(def-package! glsl-mode
:mode "\\.glsl$"

View file

@ -9,7 +9,6 @@
(def-package! flycheck-elm
:after elm-mode
:config
(add-hook 'flycheck-mode-hook #'flycheck-elm-setup))
:after (:all flycheck elm-mode)
:hook (flycheck-mode . flycheck-elm-setup))

View file

@ -72,6 +72,7 @@
(def-package! slime
:defer t
:config
(setq inferior-lisp-program "clisp")
(require 'slime-fuzzy))

View file

@ -65,9 +65,7 @@
(def-package! go-eldoc
:after go-mode
:commands go-eldoc-setup
:config (add-hook 'go-mode-hook #'go-eldoc-setup))
:hook (go-mode . go-eldoc-setup))
(def-package! go-guru

View file

@ -1,9 +1,7 @@
;;; lang/haskell/+intero.el -*- lexical-binding: t; -*-
(def-package! intero
:commands intero-mode
:init
(add-hook 'haskell-mode-hook #'intero-mode)
:hook (haskell-mode . intero-mode)
:config
(unless (executable-find "stack")
(warn "haskell-mode: couldn't find stack, disabling intero")
@ -16,6 +14,4 @@
(def-package! hindent
:commands hindent-mode
:init
(add-hook 'haskell-mode-hook #'hindent-mode))
:hook (haskell-mode . hindent-mode))

View file

@ -3,8 +3,7 @@
;; NOTE This submodule is incomplete
(def-package! eclim
:init
(add-hook 'java-mode-hook #'eclim-mode)
:hook (java-mode . eclim-mode)
:config
(set! :jump 'java-mode
:definition #'eclim-java-find-declaration
@ -53,6 +52,6 @@
(def-package! company-emacs-eclim
:when (featurep! :completion company)
:after java
:after java-mode
:config
(set! :company-backend 'java-mode '(company-emacs-eclim)))

View file

@ -1,9 +1,7 @@
;;; lang/java/+meghanada.el -*- lexical-binding: t; -*-
(def-package! meghanada
:commands meghanada-mode
:init
(add-hook! 'java-mode-hook #'(meghanada-mode rainbow-delimiters-mode))
:hook (java-mode . meghanada-mode)
:config
(setq meghanada-server-install-dir (concat doom-etc-dir "meghanada-server/")
meghanada-use-company (featurep! :completion company)
@ -11,6 +9,8 @@
meghanada-use-eldoc t
meghanada-use-auto-start t)
(add-hook 'java-mode-hook #'rainbow-delimiters-mode)
;; Setup on first use
(meghanada-install-server)
(if (file-exists-p (meghanada--locate-server-jar))

View file

@ -93,8 +93,7 @@
(def-package! tern
:commands tern-mode
:init (add-hook 'js2-mode-hook #'tern-mode)
:hook (js2-mode . tern-mode)
:config
(advice-add #'tern-project-dir :override #'doom-project-root))

View file

@ -67,6 +67,7 @@
(def-package! bibtex ; built-in
:defer t
:config
(setq bibtex-dialect 'biblatex
bibtex-align-at-equal-sign t

View file

@ -2,14 +2,12 @@
(def-package! ledger-mode
:mode "\\.ledger$"
:commands ledger-mode
:config (setq ledger-clear-whole-transactions 1))
(def-package! evil-ledger
:when (featurep! :feature evil)
:after ledger-mode
:config (add-hook 'ledger-mode-hook #'evil-ledger-mode))
:hook (ledger-mode . evil-ledger-mode))
(def-package! flycheck-ledger

View file

@ -3,12 +3,11 @@
(def-package! lua-mode
:mode "\\.lua$"
:interpreter "lua"
:init
(add-hook 'lua-mode-hook #'flycheck-mode)
:config
(add-hook 'lua-mode-hook #'flycheck-mode)
(set! :electric 'lua-mode :words '("else" "end"))
(set! :repl 'lua-mode #'+lua/repl)
;; sp's lua-specific rules are obnoxious, so we disable them
(setq sp-pairs (delete (assq 'lua-mode sp-pairs) sp-pairs))
@ -23,8 +22,7 @@
(def-package! company-lua
:when (featurep! :completion company)
:after lua-mode
:after (:all company lua-mode)
:config
(set! :company-backend 'lua-mode '(company-lua company-yasnippet)))

View file

@ -6,5 +6,4 @@
(def-package! merlin
:after tuareg
:config
(add-hook 'tuareg-mode-hook #'merlin-mode))
:hook (tuareg-mode . merlin-mode))

View file

@ -5,11 +5,10 @@
(add-hook 'perl-mode-hook #'flycheck-mode))
(def-package! perl6-mode
:init (require 'perl6-detect))
(def-package! perl6-detect)
(def-package! flycheck-perl6
:after perl6-mode
:when (featurep! :feature syntax-checker)
:after perl6-mode
:config (add-hook 'perl6-mode-hook #'flycheck-mode))

View file

@ -7,11 +7,11 @@
(def-package! php-mode
:mode ("\\.php[s345]?$" "\\.inc$")
:mode "\\.php[s345]?$"
:mode "\\.inc$"
:interpreter "php"
:config
(add-hook! 'php-mode-hook
#'(ac-php-core-eldoc-setup flycheck-mode))
(add-hook! php-mode #'(ac-php-core-eldoc-setup flycheck-mode))
(setq php-template-compatibility nil)
@ -68,8 +68,7 @@
(def-package! php-refactor-mode
:commands php-refactor-mode
:init (add-hook 'php-mode-hook #'php-refactor-mode))
:hook php-mode)
(def-package! phpunit

View file

@ -14,7 +14,5 @@
;; (add-hook 'flycheck-mode-hook #'flycheck-purescript-setup))
(def-package! psc-ide
:after purescript-mode
:config
(add-hook 'purescript-mode-hook #'psc-ide-mode))
:hook (purescript-mode . psc-ide-mode))

View file

@ -73,17 +73,14 @@ environment variables."
(def-package! anaconda-mode
:after python
:hook python-mode
:init
(add-hook 'python-mode-hook #'anaconda-mode)
(add-hook 'anaconda-mode-hook #'anaconda-eldoc-mode)
(setq anaconda-mode-installation-directory (concat doom-etc-dir "anaconda/")
anaconda-mode-eldoc-as-single-line t)
:config
(add-hook 'anaconda-mode-hook #'anaconda-eldoc-mode)
(set! :popup "*anaconda-mode*" :size 10 :noselect t :autoclose t :autokill t)
(map! :map anaconda-mode-map :m "gd" #'anaconda-mode-find-definitions)
(advice-add #'anaconda-mode-doc-buffer :after #'doom*anaconda-mode-doc-buffer))

View file

@ -12,11 +12,12 @@
;;
(def-package! ruby-mode
:mode ("\\.rb$" "\\.rake$" "\\.gemspec$" "\\.?pryrc$"
"/\\(Gem\\|Cap\\|Vagrant\\|Rake\\|Pod\\|Puppet\\|Berks\\)file$")
:mode "\\.rb$"
:mode "\\.rake$"
:mode "\\.gemspec$"
:mode "\\.\\(pry\\|irb\\)rc$"
:mode "/\\(Gem\\|Cap\\|Vagrant\\|Rake\\|Pod\\|Puppet\\|Berks\\)file$"
:interpreter "ruby"
:init
(add-hook 'ruby-mode-hook #'flycheck-mode)
:config
(set! :company-backend 'ruby-mode '(company-dabbrev-code))
(set! :electric 'ruby-mode :words '("else" "end" "elseif"))
@ -24,6 +25,8 @@
;; Don't interfere with my custom RET behavior
(define-key ruby-mode-map [?\n] nil)
(add-hook 'ruby-mode-hook #'flycheck-mode)
;; Version management with rbenv
(defun +ruby|add-version-to-modeline ()
"Add version string to the major mode in the modeline."
@ -67,9 +70,7 @@ environment variables."
;; Highlight doc comments
(def-package! yard-mode
:commands yard-mode
:init (add-hook 'ruby-mode-hook #'yard-mode))
(def-package! yard-mode :hook ruby-mode)
(def-package! rspec-mode

View file

@ -20,10 +20,10 @@
(def-package! racer
:after rust-mode
:preface
:init
(add-hook! 'rust-mode-hook #'(racer-mode eldoc-mode flycheck-rust-setup))
:hook (rust-mode . racer-mode)
:config
(add-hook 'rust-mode-hook #'eldoc-mode)
(setq racer-cmd (or (executable-find "racer")
(expand-file-name "racer/target/release/racer" +rust-src-dir))
racer-rust-src-path (or (getenv "RUST_SRC_PATH")
@ -44,5 +44,6 @@
(def-package! flycheck-rust
:when (featurep! :feature syntax-checker)
:after rust-mode
:hook (flycheck-mode . flycheck-rust-setup)
:config (add-hook 'rust-mode-hook #'flycheck-mode))

View file

@ -2,17 +2,18 @@
(def-package! scala-mode
:mode "\\.s\\(cala\\|bt\\)$"
:config
(setq scala-indent:align-parameters t))
:config (setq scala-indent:align-parameters t))
(def-package! sbt-mode :after scala-mode)
(def-package! ensime
:after scala-mode
:commands (ensime ensime-mode ensime-scala-mode-hook)
:commands (ensime ensime-scala-mode-hook)
:hook (scala-mode . ensime-mode)
:config
(add-hook 'ensime-mode-hook #'eldoc-mode)
(set! :company-backend 'scala-mode '(ensime-company company-yasnippet))
(setq ensime-startup-snapshot-notification nil
@ -21,9 +22,6 @@
;; let DOOM handle company setup
ensime-completion-style nil)
(add-hook 'scala-mode-hook #'ensime-mode)
(add-hook 'ensime-mode-hook #'eldoc-mode)
;; Fix void-variable imenu-auto-rescan error caused by `ensime--setup-imenu'
;; trying to make imenu variables buffer local before imenu is loaded.
(require 'imenu))

View file

@ -4,9 +4,8 @@
(def-package! swift-mode
:mode "\\.swift$"
:init
(add-hook 'swift-mode-hook #'flycheck-mode)
:config
(add-hook 'swift-mode-hook #'flycheck-mode)
(set! :repl 'swift-mode #'swift-mode-run-repl) ; TODO test this
(push 'swift flycheck-checkers))

View file

@ -2,9 +2,9 @@
(def-package! typescript-mode
:mode "\\.ts$"
:init
(add-hook 'typescript-mode-hook #'rainbow-delimiters-mode)
:config
(add-hook 'typescript-mode-hook #'rainbow-delimiters-mode)
(set! :electric 'typescript-mode :chars '(?\} ?\)) :words '("||" "&&"))
;; TODO tide-jump-back

View file

@ -21,15 +21,14 @@
(def-package! counsel-css
:when (featurep! :completion ivy)
:commands (counsel-css counsel-css-imenu-setup)
:hook (css-mode . counsel-css-imenu-setup)
:init
(add-hook 'css-mode-hook #'counsel-css-imenu-setup)
(map! :map* (css-mode-map scss-mode-map less-css-mode-map)
:localleader :n ";" #'counsel-css))
(def-package! rainbow-mode
:commands rainbow-mode
:init (add-hook! (css-mode sass-mode) #'rainbow-mode))
:hook (css-mode sass-mode))
(def-package! css-mode

View file

@ -9,9 +9,8 @@
:mode "\\.mustache$"
:mode "\\.tsx$"
:mode "wp-content/themes/.+/.+\\.php$"
:init
(add-hook 'web-mode-hook #'turn-off-smartparens-mode)
:config
(add-hook 'web-mode-hook #'turn-off-smartparens-mode)
(set! :company-backend 'web-mode '(company-web-html company-yasnippet))
(setq web-mode-enable-html-entities-fontification t)

View file

@ -16,9 +16,7 @@
(def-package! emmet-mode
:commands emmet-mode
:preface (defvar emmet-mode-keymap (make-sparse-keymap))
:init
(add-hook! (css-mode web-mode html-mode haml-mode nxml-mode rjsx-mode)
'emmet-mode)
:hook (css-mode web-mode html-mode haml-mode nxml-mode rjsx-mode)
:config
(setq emmet-move-cursor-between-quotes t)
(map! :map emmet-mode-keymap

View file

@ -12,6 +12,7 @@
;;
(def-package! password-store
:defer t
:config
(setq password-store-password-length 12))
@ -38,5 +39,4 @@
(if (require 'auth-store-pass nil t)
(auth-source-pass-enable)
(def-package! auth-password-store
:demand t
:config (auth-pass-enable)))

View file

@ -1,7 +1,6 @@
;;; ui/doom-modeline/config.el -*- lexical-binding: t; -*-
(def-package! eldoc-eval
:demand t
:config
(defun +doom-modeline-eldoc (text)
(concat (when (display-graphic-p)
@ -28,7 +27,7 @@
;; anzu and evil-anzu expose current/total state that can be displayed in the
;; mode-line.
(def-package! evil-anzu
:when (featurep 'evil)
:requires evil
:init
(add-transient-hook! #'evil-ex-start-search (require 'evil-anzu))
(add-transient-hook! #'evil-ex-start-word-search (require 'evil-anzu))

View file

@ -2,7 +2,6 @@
;; <https://github.com/hlissner/emacs-doom-theme>
(def-package! doom-themes
:demand t
:config
(set! :theme 'doom-one)
@ -32,26 +31,15 @@
(def-package! solaire-mode
:commands (solaire-mode turn-on-solaire-mode turn-off-solaire-mode)
:init
(add-hook 'after-change-major-mode-hook #'turn-on-solaire-mode)
(add-hook 'doom-popup-mode-hook #'turn-off-solaire-mode)
:hook (gist-mode twittering-mode mu4e-view-mode org-tree-slide-mode +regex-mode)
:hook (after-change-major-mode . turn-on-solaire-mode)
:hook (doom-popup-mode . turn-off-solaire-mode)
:hook (doom-init-ui . solaire-mode-swap-bg)
:config
(setq solaire-mode-real-buffer-fn #'doom-real-buffer-p)
(add-hook 'doom-init-ui-hook #'solaire-mode-swap-bg t)
;; Prevent color glitches when reloading either DOOM or the theme
(defun +doom|reset-solaire-mode (&rest _) (solaire-mode-reset))
(advice-add #'load-theme :after #'+doom|reset-solaire-mode)
(add-hook! '(doom-init-ui-hook doom-reload-hook) #'solaire-mode-reset)
;; Extra modes to activate doom-buffer-mode in
(add-hook! (gist-mode
twittering-mode
mu4e-view-mode
org-tree-slide-mode
+regex-mode)
#'solaire-mode))
(advice-add #'load-theme :after #'solaire-mode-reset)
(add-hook! '(doom-init-ui-hook doom-reload-hook) #'solaire-mode-reset))
(after! hideshow

View file

@ -2,8 +2,7 @@
(def-package! evil-goggles
:when (featurep! :feature evil)
:commands evil-goggles-mode
:hook (doom-post-init . evil-goggles-mode)
:init
(setq evil-goggles-duration 0.1
evil-goggles-enable-delete nil)
(add-hook 'doom-post-init-hook #'evil-goggles-mode t))
evil-goggles-enable-delete nil))

View file

@ -1,8 +1,7 @@
;;; ui/hl-todo/packages.el -*- lexical-binding: t; -*-
(def-package! hl-todo
:commands hl-todo-mode
:init (add-hook 'prog-mode-hook #'hl-todo-mode)
:hook (prog-mode . hl-todo-mode)
:config
(setq hl-todo-keyword-faces
`(("TODO" . ,(face-foreground 'warning))

View file

@ -5,7 +5,6 @@
;; find ivy (or helm) or even `buffer-menu' is better suited for this purpose.
(def-package! tabbar
:demand t
:config
(setq tabbar-use-images nil)
(tabbar-mode)

View file

@ -3,8 +3,8 @@
;; indicators for empty lines past EOF
(def-package! vi-tilde-fringe
:commands (global-vi-tilde-fringe-mode vi-tilde-fringe-mode)
:hook (doom-init-ui . global-vi-tilde-fringe-mode)
:init
(add-hook 'doom-init-ui-hook #'global-vi-tilde-fringe-mode)
:config
(defun +vi-tilde-fringe|disable ()
(vi-tilde-fringe-mode -1)))