refactor: deprecate featurep! for modulep!

featurep! will be renamed modulep! in the future, so it's been
deprecated. They have identical interfaces, and can be replaced without
issue.

featurep! was never quite the right name for this macro. It implied that
it had some connection to featurep, which it doesn't (only that it was
similar in purpose; still, Doom modules are not features). To undo such
implications and be consistent with its namespace (and since we're
heading into a storm of breaking changes with the v3 release anyway),
now was the best opportunity to begin the transition.
This commit is contained in:
Henrik Lissner 2022-08-12 20:29:19 +02:00
parent 0407621aff
commit ad6a3d0f33
No known key found for this signature in database
GPG key ID: B60957CA074D39A3
316 changed files with 1109 additions and 1103 deletions

View file

@ -41,36 +41,36 @@
:desc "Delete trailing whitespace" "w" #'delete-trailing-whitespace
:desc "Delete trailing newlines" "W" #'doom/delete-trailing-newlines
:desc "List errors" "x" #'+default/diagnostics
(:when (and (featurep! :tools lsp) (not (featurep! :tools lsp +eglot)))
(:when (and (modulep! :tools lsp) (not (modulep! :tools lsp +eglot)))
:desc "LSP Code actions" "a" #'lsp-execute-code-action
:desc "LSP Organize imports" "o" #'lsp-organize-imports
:desc "LSP Rename" "r" #'lsp-rename
:desc "LSP" "l" #'+default/lsp-command-map
(:when (featurep! :completion ivy)
(:when (modulep! :completion ivy)
:desc "Jump to symbol in current workspace" "j" #'lsp-ivy-workspace-symbol
:desc "Jump to symbol in any workspace" "J" #'lsp-ivy-global-workspace-symbol)
(:when (featurep! :completion helm)
(:when (modulep! :completion helm)
:desc "Jump to symbol in current workspace" "j" #'helm-lsp-workspace-symbol
:desc "Jump to symbol in any workspace" "J" #'helm-lsp-global-workspace-symbol)
(:when (featurep! :completion vertico)
(:when (modulep! :completion vertico)
:desc "Jump to symbol in current workspace" "j" #'consult-lsp-symbols
:desc "Jump to symbol in any workspace" "J" (cmd!! #'consult-lsp-symbols 'all-workspaces))
(:when (featurep! :ui treemacs +lsp)
(:when (modulep! :ui treemacs +lsp)
:desc "Errors list" "X" #'lsp-treemacs-errors-list
:desc "Incoming call hierarchy" "y" #'lsp-treemacs-call-hierarchy
:desc "Outgoing call hierarchy" "Y" (cmd!! #'lsp-treemacs-call-hierarchy t)
:desc "References tree" "R" (cmd!! #'lsp-treemacs-references t)
:desc "Symbols" "S" #'lsp-treemacs-symbols))
(:when (featurep! :tools lsp +eglot)
(:when (modulep! :tools lsp +eglot)
:desc "LSP Execute code action" "a" #'eglot-code-actions
:desc "LSP Rename" "r" #'eglot-rename
:desc "LSP Find declaration" "j" #'eglot-find-declaration
(:when (featurep! :completion vertico)
(:when (modulep! :completion vertico)
:desc "Jump to symbol in current workspace" "j" #'consult-eglot-symbols)))
;;; <leader> f --- file
(:prefix-map ("f" . "file")
(:when (featurep! :tools editorconfig)
(:when (modulep! :tools editorconfig)
:desc "Open project editorconfig" "c" #'editorconfig-find-current-editorconfig)
:desc "Copy this file" "C" #'doom/copy-this-file
:desc "Find directory" "d" #'dired
@ -93,7 +93,7 @@
:desc "Switch to scratch buffer" "X" #'doom/switch-to-scratch-buffer)
;;; <leader> r --- remote
(:when (featurep! :tools upload)
(:when (modulep! :tools upload)
(:prefix-map ("r" . "remote")
:desc "Browse remote" "b" #'ssh-deploy-browse-remote-base-handler
:desc "Browse relative" "B" #'ssh-deploy-browse-remote-handler
@ -114,13 +114,13 @@
(:prefix-map ("s" . "search")
:desc "Search project for symbol" "." #'+default/search-project-for-symbol-at-point
:desc "Search buffer" "b"
(cond ((featurep! :completion vertico) #'consult-line)
((featurep! :completion ivy) #'swiper)
((featurep! :completion helm) #'swiper))
(cond ((modulep! :completion vertico) #'consult-line)
((modulep! :completion ivy) #'swiper)
((modulep! :completion helm) #'swiper))
:desc "Search all open buffers" "B"
(cond ((featurep! :completion vertico) (cmd!! #'consult-line-multi 'all-buffers))
((featurep! :completion ivy) #'swiper-all)
((featurep! :completion helm) #'swiper-all))
(cond ((modulep! :completion vertico) (cmd!! #'consult-line-multi 'all-buffers))
((modulep! :completion ivy) #'swiper-all)
((modulep! :completion helm) #'swiper-all))
:desc "Search current directory" "d" #'+default/search-cwd
:desc "Search other directory" "D" #'+default/search-other-cwd
:desc "Search .emacs.d" "e" #'+default/search-emacsd
@ -137,9 +137,9 @@
:desc "Search other project" "P" #'+default/search-other-project
:desc "Search buffer" "s" #'+default/search-buffer
:desc "Search buffer for thing at point" "S"
(cond ((featurep! :completion vertico) #'+vertico/search-symbol-at-point)
((featurep! :completion ivy) #'swiper-isearch-thing-at-point)
((featurep! :completion helm) #'swiper-isearch-thing-at-point))
(cond ((modulep! :completion vertico) #'+vertico/search-symbol-at-point)
((modulep! :completion ivy) #'swiper-isearch-thing-at-point)
((modulep! :completion helm) #'swiper-isearch-thing-at-point))
:desc "Dictionary" "t" #'+lookup/dictionary-definition
:desc "Thesaurus" "T" #'+lookup/synonyms)
@ -156,16 +156,16 @@
(:prefix-map ("n" . "notes")
:desc "Search notes for symbol" "." #'+default/search-notes-for-symbol-at-point
:desc "Org agenda" "a" #'org-agenda
(:when (featurep! :tools biblio)
(:when (modulep! :tools biblio)
:desc "Bibliographic entries" "b"
(cond ((featurep! :completion vertico) #'citar-open-entry)
((featurep! :completion ivy) #'ivy-bibtex)
((featurep! :completion helm) #'helm-bibtex)))
(cond ((modulep! :completion vertico) #'citar-open-entry)
((modulep! :completion ivy) #'ivy-bibtex)
((modulep! :completion helm) #'helm-bibtex)))
:desc "Toggle last org-clock" "c" #'+org/toggle-last-clock
:desc "Cancel current org-clock" "C" #'org-clock-cancel
:desc "Open deft" "d" #'deft
(:when (featurep! :lang org +noter)
(:when (modulep! :lang org +noter)
:desc "Org noter" "e" #'org-noter)
:desc "Find file in notes" "f" #'+default/find-in-notes
@ -181,12 +181,12 @@
:desc "View search" "v" #'org-search-view
:desc "Org export to clipboard" "y" #'+org/export-to-clipboard
:desc "Org export to clipboard as RTF" "Y" #'+org/export-to-clipboard-as-rich-text
(:when (featurep! :lang org +journal)
(:when (modulep! :lang org +journal)
(:prefix ("j" . "journal")
:desc "New Entry" "j" #'org-journal-new-entry
:desc "New Scheduled Entry" "J" #'org-journal-new-scheduled-entry
:desc "Search Forever" "s" #'org-journal-search-forever))
(:when (featurep! :lang org +roam)
(:when (modulep! :lang org +roam)
(:prefix ("r" . "roam")
:desc "Switch to buffer" "b" #'org-roam-switch-to-buffer
:desc "Org Roam Capture" "c" #'org-roam-capture
@ -202,7 +202,7 @@
:desc "Today" "t" #'org-roam-dailies-find-today
:desc "Tomorrow" "m" #'org-roam-dailies-find-tomorrow
:desc "Yesterday" "y" #'org-roam-dailies-find-yesterday)))
(:when (featurep! :lang org +roam2)
(:when (modulep! :lang org +roam2)
(:prefix ("r" . "roam")
:desc "Open random node" "a" #'org-roam-node-random
:desc "Find node" "f" #'org-roam-node-find
@ -236,25 +236,25 @@
:desc "REPL" "r" #'+eval/open-repl-other-window
:desc "REPL (same window)" "R" #'+eval/open-repl-same-window
:desc "Dired" "-" #'dired-jump
(:when (featurep! :ui neotree)
(:when (modulep! :ui neotree)
:desc "Project sidebar" "p" #'+neotree/open
:desc "Find file in project sidebar" "P" #'+neotree/find-this-file)
(:when (featurep! :ui treemacs)
(:when (modulep! :ui treemacs)
:desc "Project sidebar" "p" #'+treemacs/toggle
:desc "Find file in project rsidebar" "P" #'treemacs-find-file)
(:when (featurep! :term shell)
(:when (modulep! :term shell)
:desc "Toggle shell popup" "t" #'+shell/toggle
:desc "Open shell here" "T" #'+shell/here)
(:when (featurep! :term term)
(:when (modulep! :term term)
:desc "Toggle terminal popup" "t" #'+term/toggle
:desc "Open terminal here" "T" #'+term/here)
(:when (featurep! :term vterm)
(:when (modulep! :term vterm)
:desc "Toggle vterm popup" "t" #'+vterm/toggle
:desc "Open vterm here" "T" #'+vterm/here)
(:when (featurep! :term eshell)
(:when (modulep! :term eshell)
:desc "Toggle eshell popup" "e" #'+eshell/toggle
:desc "Open eshell here" "E" #'+eshell/here)
(:when (featurep! :os macos)
(:when (modulep! :os macos)
:desc "Reveal in Finder" "o" #'+macos/reveal-in-finder
:desc "Reveal project in Finder" "O" #'+macos/reveal-project-in-finder
:desc "Send to Transmit" "u" #'+macos/send-to-transmit
@ -263,13 +263,13 @@
:desc "Send project to Launchbar" "L" #'+macos/send-project-to-launchbar
:desc "Open in iTerm" "i" #'+macos/open-in-iterm
:desc "Open in new iTerm window" "I" #'+macos/open-in-iterm-new-window)
(:when (featurep! :tools docker)
(:when (modulep! :tools docker)
:desc "Docker" "D" #'docker)
(:when (featurep! :email mu4e)
(:when (modulep! :email mu4e)
:desc "mu4e" "m" #'=mu4e)
(:when (featurep! :email notmuch)
(:when (modulep! :email notmuch)
:desc "notmuch" "m" #'=notmuch)
(:when (featurep! :email wanderlust)
(:when (modulep! :email wanderlust)
:desc "wanderlust" "m" #'=wanderlust))
@ -281,9 +281,9 @@
:desc "List project todos" "t" #'magit-todos-list
:desc "Open project scratch buffer" "x" #'doom/open-project-scratch-buffer
:desc "Switch to project scratch buffer" "X" #'doom/switch-to-project-scratch-buffer
(:when (and (featurep! :tools taskrunner)
(or (featurep! :completion ivy)
(featurep! :completion helm)))
(:when (and (modulep! :tools taskrunner)
(or (modulep! :completion ivy)
(modulep! :completion helm)))
:desc "List project tasks" "z" #'+taskrunner/project-tasks)
;; later expanded by projectile
(:prefix ("4" . "in other window"))
@ -322,24 +322,24 @@
:desc "Indent style" "I" #'doom/toggle-indent-style
:desc "Line numbers" "l" #'doom/toggle-line-numbers
:desc "Soft line wrapping" "w" #'visual-line-mode
(:when (featurep! :editor word-wrap)
(:when (modulep! :editor word-wrap)
:desc "Soft line wrapping" "w" #'+word-wrap-mode)
(:when (featurep! :checkers syntax)
(:when (modulep! :checkers syntax)
:desc "Flycheck" "f" #'flycheck-mode)
(:when (featurep! :ui indent-guides)
(:when (modulep! :ui indent-guides)
:desc "Indent guides" "i" #'highlight-indent-guides-mode)
(:when (featurep! :ui minimap)
(:when (modulep! :ui minimap)
:desc "Minimap mode" "m" #'minimap-mode)
(:when (featurep! :lang org +present)
(:when (modulep! :lang org +present)
:desc "org-tree-slide mode" "p" #'org-tree-slide-mode)
:desc "Read-only mode" "r" #'read-only-mode
(:when (and (featurep! :checkers spell) (not (featurep! :checkers spell +flyspell)))
(:when (and (modulep! :checkers spell) (not (modulep! :checkers spell +flyspell)))
:desc "Spell checker" "s" #'spell-fu-mode)
(:when (featurep! :checkers spell +flyspell)
(:when (modulep! :checkers spell +flyspell)
:desc "Spell checker" "s" #'flyspell-mode)
(:when (featurep! :lang org +pomodoro)
(:when (modulep! :lang org +pomodoro)
:desc "Pomodoro timer" "t" #'org-pomodoro)
(:when (featurep! :ui zen)
(:when (modulep! :ui zen)
:desc "Zen mode" "z" #'+zen/toggle
:desc "Zen mode (fullscreen)" "Z" #'+zen/toggle-fullscreen))
@ -348,13 +348,13 @@
:desc "Git revert file" "R" #'vc-revert
:desc "Kill link to remote" "y" #'+vc/browse-at-remote-kill
:desc "Kill link to homepage" "Y" #'+vc/browse-at-remote-kill-homepage
(:when (featurep! :ui vc-gutter)
(:when (modulep! :ui vc-gutter)
:desc "Git revert hunk" "r" #'+vc-gutter/revert-hunk
:desc "Git stage hunk" "s" #'+vc-gutter/stage-hunk
:desc "Git time machine" "t" #'git-timemachine-toggle
:desc "Jump to next hunk" "n" #'+vc-gutter/next-hunk
:desc "Jump to previous hunk" "p" #'+vc-gutter/previous-hunk)
(:when (featurep! :tools magit)
(:when (modulep! :tools magit)
:desc "Magit dispatch" "/" #'magit-dispatch
:desc "Magit file dispatch" "." #'magit-file-dispatch
:desc "Forge dispatch" "'" #'forge-dispatch
@ -383,7 +383,7 @@
:desc "Browse issues" "I" #'forge-browse-issues
:desc "Browse pull requests" "P" #'forge-browse-pullreqs)
(:prefix ("l" . "list")
(:when (featurep! :tools gist)
(:when (modulep! :tools gist)
:desc "List gists" "g" #'gist-list)
:desc "List repositories" "r" #'magit-list-repositories
:desc "List submodules" "s" #'magit-list-submodules
@ -400,7 +400,7 @@
;;; <leader> w --- workspaces/windows
(:prefix-map ("w" . "workspaces/windows")
(:when (featurep! :ui workspaces)
(:when (modulep! :ui workspaces)
:desc "Display workspaces" "d" #'+workspace/display
:desc "Rename workspace" "r" #'+workspace/rename
:desc "Create workspace" "c" #'+workspace/new
@ -429,7 +429,7 @@
:desc "Redo window config" "U" #'winner-redo)
;;; <leader> m --- multiple cursors
(:when (featurep! :editor multiple-cursors)
(:when (modulep! :editor multiple-cursors)
(:prefix-map ("m" . "multiple-cursors")
:desc "Edit lines" "l" #'mc/edit-lines
:desc "Mark next" "n" #'mc/mark-next-like-this
@ -446,26 +446,26 @@
;; APPs
;;; <leader> M --- mu4e
(:when (featurep! :email mu4e)
(:when (modulep! :email mu4e)
(:prefix-map ("M" . "mu4e")
:desc "Open email app" "M" #'=mu4e
:desc "Compose email" "c" #'+mu4e/compose))
;;; <leader> I --- IRC
(:when (featurep! :app irc)
(:when (modulep! :app irc)
(:prefix-map ("I" . "irc")
:desc "Open irc app" "I" #'=irc
:desc "Next unread buffer" "a" #'tracking-next-buffer
:desc "Quit irc" "q" #'+irc/quit
:desc "Reconnect all" "r" #'circe-reconnect-all
:desc "Send message" "s" #'+irc/send-message
(:when (featurep! :completion ivy)
(:when (modulep! :completion ivy)
:desc "Jump to channel" "j" #'+irc/ivy-jump-to-channel)
(:when (featurep! :completion vertico)
(:when (modulep! :completion vertico)
:desc "Jump to channel" "j" #'+irc/vertico-jump-to-channel)))
;;; <leader> T --- twitter
(:when (featurep! :app twitter)
(:when (modulep! :app twitter)
(:prefix-map ("T" . "twitter")
:desc "Open twitter app" "T" #'=twitter
:desc "Quit twitter" "q" #'+twitter/quit
@ -479,27 +479,27 @@
(map! "C-'" #'imenu
;;; search
(:when (featurep! :completion ivy)
(:when (modulep! :completion ivy)
"C-S-s" #'swiper
"C-S-r" #'ivy-resume)
(:when (featurep! :completion helm)
(:when (modulep! :completion helm)
"C-S-s" #'swiper-helm
"C-S-r" #'helm-resume)
(:when (featurep! :completion vertico)
(:when (modulep! :completion vertico)
"C-S-r" #'vertico-repeat)
;;; objed
(:when (featurep! :editor objed +manual)
(:when (modulep! :editor objed +manual)
"M-SPC" #'objed-activate)
;;; buffer management
"C-x b" #'switch-to-buffer
"C-x 4 b" #'switch-to-buffer-other-window
(:when (featurep! :ui workspaces)
(:when (modulep! :ui workspaces)
"C-x b" #'persp-switch-to-buffer
"C-x B" #'switch-to-buffer
"C-x 4 B" #'switch-to-buffer-other-window
(:when (featurep! :completion ivy)
(:when (modulep! :completion ivy)
"C-x 4 b" #'+ivy/switch-workspace-buffer-other-window))
"C-x C-b" #'ibuffer
"C-x K" #'doom/kill-this-buffer-in-all-windows
@ -518,12 +518,12 @@
[C-tab] #'company-complete-common-or-cycle
[tab] #'company-complete-common-or-cycle
[backtab] #'company-select-previous
"C-RET" (cond ((featurep! :completion vertico) #'completion-at-point)
((featurep! :completion ivy) #'counsel-company)
((featurep! :completion helm) #'helm-company))
"C-<return>" (cond ((featurep! :completion vertico) #'completion-at-point)
((featurep! :completion ivy) #'counsel-company)
((featurep! :completion helm) #'helm-company))
"C-RET" (cond ((modulep! :completion vertico) #'completion-at-point)
((modulep! :completion ivy) #'counsel-company)
((modulep! :completion helm) #'helm-company))
"C-<return>" (cond ((modulep! :completion vertico) #'completion-at-point)
((modulep! :completion ivy) #'counsel-company)
((modulep! :completion helm) #'helm-company))
:map company-search-map
"C-n" #'company-search-repeat-forward
"C-p" #'company-search-repeat-backward
@ -565,7 +565,7 @@
"o" #'link-hint-open-link)
;;; ivy & counsel
(:when (featurep! :completion ivy)
(:when (modulep! :completion ivy)
(:after ivy
:map ivy-minibuffer-map
"TAB" #'ivy-alt-done
@ -577,7 +577,7 @@
"C-M-y" #'counsel-yank-pop)
;;; neotree
(:when (featurep! :ui neotree)
(:when (modulep! :ui neotree)
"<f9>" #'+neotree/open
"<C-f9>" #'+neotree/find-this-file
(:after neotree
@ -600,7 +600,7 @@
"P" #'neotree-select-previous-sibling-node))
;;; popups
(:when (featurep! :ui popup)
(:when (modulep! :ui popup)
"C-x p" #'+popup/other
"C-`" #'+popup/toggle
"C-~" #'+popup/raise)
@ -621,12 +621,12 @@
"C-M-<backspace>" #'sp-splice-sexp)
;;; treemacs
(:when (featurep! :ui treemacs)
(:when (modulep! :ui treemacs)
"<f9>" #'+treemacs/toggle
"<C-f9>" #'treemacs-find-file))
(map! :leader
(:when (featurep! :editor fold)
(:when (modulep! :editor fold)
(:prefix ("C-f" . "fold")
"C-d" #'vimish-fold-delete
"C-a C-d" #'vimish-fold-delete-all

View file

@ -22,5 +22,5 @@
;;
;;; Keybinds
(when (featurep! +bindings)
(when (modulep! +bindings)
(load! "+emacs-bindings"))

View file

@ -1,6 +1,6 @@
;;; config/default/+bindings.el -*- lexical-binding: t; -*-
(when (featurep! :editor evil +everywhere)
(when (modulep! :editor evil +everywhere)
;; NOTE SPC u replaces C-u as the universal argument.
;; Minibuffer
@ -38,18 +38,18 @@
;;; Global keybindings
;; Smart tab, these will only work in GUI Emacs
(map! :i [tab] (cmds! (and (featurep! :editor snippets)
(map! :i [tab] (cmds! (and (modulep! :editor snippets)
(yas-maybe-expand-abbrev-key-filter 'yas-expand))
#'yas-expand
(and (bound-and-true-p company-mode)
(featurep! :completion company +tng))
(modulep! :completion company +tng))
#'company-indent-or-complete-common)
:m [tab] (cmds! (and (featurep! :editor snippets)
:m [tab] (cmds! (and (modulep! :editor snippets)
(evil-visual-state-p)
(or (eq evil-visual-selection 'line)
(not (memq (char-after) (list ?\( ?\[ ?\{ ?\} ?\] ?\))))))
#'yas-insert-snippet
(and (featurep! :editor fold)
(and (modulep! :editor fold)
(save-excursion (end-of-line) (invisible-p (point))))
#'+fold/toggle
;; Fixes #4548: without this, this tab keybind overrides
@ -86,12 +86,12 @@
(:after geiser-doc :map geiser-doc-mode-map
:n "o" #'link-hint-open-link)
(:unless (featurep! :input layout +bepo)
(:unless (modulep! :input layout +bepo)
(:after (evil-org evil-easymotion)
:map evil-org-mode-map
:m "gsh" #'+org/goto-visible))
(:when (featurep! :editor multiple-cursors)
(:when (modulep! :editor multiple-cursors)
:prefix "gz"
:nv "d" #'evil-mc-make-and-goto-next-match
:nv "D" #'evil-mc-make-and-goto-prev-match
@ -128,7 +128,7 @@
;;; Module keybinds
;;; :completion
(map! (:when (featurep! :completion company)
(map! (:when (modulep! :completion company)
:i "C-@" (cmds! (not (minibufferp)) #'company-complete-common)
:i "C-SPC" (cmds! (not (minibufferp)) #'company-complete-common)
(:after company
@ -142,9 +142,9 @@
"C-u" #'company-previous-page
"C-d" #'company-next-page
"C-s" #'company-filter-candidates
"C-S-s" (cond ((featurep! :completion vertico) #'completion-at-point)
((featurep! :completion ivy) #'counsel-company)
((featurep! :completion helm) #'helm-company))
"C-S-s" (cond ((modulep! :completion vertico) #'completion-at-point)
((modulep! :completion ivy) #'counsel-company)
((modulep! :completion helm) #'helm-company))
"C-SPC" #'company-complete-common
"TAB" #'company-complete-common-or-cycle
[tab] #'company-complete-common-or-cycle
@ -158,7 +158,7 @@
"C-s" #'company-filter-candidates
[escape] #'company-search-abort)))
(:when (featurep! :completion ivy)
(:when (modulep! :completion ivy)
(:after ivy
:map ivy-minibuffer-map
"C-SPC" #'ivy-call-and-recenter ; preview file
@ -170,7 +170,7 @@
"C-l" #'ivy-done
[C-return] #'+ivy/git-grep-other-window-action))
(:when (featurep! :completion helm)
(:when (modulep! :completion helm)
(:after helm :map helm-map
[remap next-line] #'helm-next-line
[remap previous-line] #'helm-previous-line
@ -179,7 +179,7 @@
"C-S-f" #'helm-previous-page
"C-S-n" #'helm-next-source
"C-S-p" #'helm-previous-source
(:when (featurep! :editor evil +everywhere)
(:when (modulep! :editor evil +everywhere)
"C-j" #'helm-next-line
"C-k" #'helm-previous-line
"C-S-j" #'helm-next-source
@ -207,7 +207,7 @@
(:after helm-grep :map helm-grep-map
[C-return] #'helm-grep-run-other-window-action))
(:when (featurep! :completion vertico)
(:when (modulep! :completion vertico)
(:after vertico
:map vertico-map
"M-RET" #'vertico-exit-input
@ -219,12 +219,12 @@
;;; :ui
(map! (:when (featurep! :ui popup)
(map! (:when (modulep! :ui popup)
"C-`" #'+popup/toggle
"C-~" #'+popup/raise
"C-x p" #'+popup/other)
(:when (featurep! :ui workspaces)
(:when (modulep! :ui workspaces)
:n "C-t" #'+workspace/new
:n "C-S-t" #'+workspace/display
:g "M-1" #'+workspace/switch-to-0
@ -252,14 +252,14 @@
:n "s-0" #'+workspace/switch-to-final)))
;;; :editor
(map! (:when (featurep! :editor format)
(map! (:when (modulep! :editor format)
:n "gQ" #'+format:region)
(:when (featurep! :editor rotate-text)
(:when (modulep! :editor rotate-text)
:n "]r" #'rotate-text
:n "[r" #'rotate-text-backward)
(:when (featurep! :editor multiple-cursors)
(:when (modulep! :editor multiple-cursors)
;; evil-multiedit
:v "R" #'evil-multiedit-match-all
:n "M-d" #'evil-multiedit-match-symbol-and-next
@ -273,13 +273,13 @@
:nv "M-D" #'evil-multiedit-match-and-prev
[return] #'evil-multiedit-toggle-or-restrict-region)))
(:when (featurep! :editor snippets)
(:when (modulep! :editor snippets)
;; auto-yasnippet
:i [C-tab] #'aya-expand
:nv [C-tab] #'aya-create))
;;; :tools
(when (featurep! :tools eval)
(when (modulep! :tools eval)
(map! "M-r" #'+eval/buffer))
@ -296,18 +296,18 @@
:desc "window" "w" evil-window-map
:desc "help" "h" help-map
(:when (featurep! :ui popup)
(:when (modulep! :ui popup)
:desc "Toggle last popup" "~" #'+popup/toggle)
:desc "Find file" "." #'find-file
:desc "Switch buffer" "," #'switch-to-buffer
(:when (featurep! :ui workspaces)
(:when (modulep! :ui workspaces)
:desc "Switch workspace buffer" "," #'persp-switch-to-buffer
:desc "Switch buffer" "<" #'switch-to-buffer)
:desc "Switch to last buffer" "`" #'evil-switch-to-windows-last-buffer
:desc "Resume last search" "'"
(cond ((featurep! :completion vertico) #'vertico-repeat)
((featurep! :completion ivy) #'ivy-resume)
((featurep! :completion helm) #'helm-resume))
(cond ((modulep! :completion vertico) #'vertico-repeat)
((modulep! :completion ivy) #'ivy-resume)
((modulep! :completion helm) #'helm-resume))
:desc "Search for symbol in project" "*" #'+default/search-project-for-symbol-at-point
:desc "Search project" "/" #'+default/search-project
@ -316,7 +316,7 @@
:desc "Jump to bookmark" "RET" #'bookmark-jump
;;; <leader> TAB --- workspace
(:when (featurep! :ui workspaces)
(:when (modulep! :ui workspaces)
(:prefix-map ("TAB" . "workspace")
:desc "Display tab bar" "TAB" #'+workspace/display
:desc "Switch workspace" "." #'+workspace/switch-to
@ -347,11 +347,11 @@
:desc "Toggle narrowing" "-" #'doom/toggle-narrow-buffer
:desc "Previous buffer" "[" #'previous-buffer
:desc "Next buffer" "]" #'next-buffer
(:when (featurep! :ui workspaces)
(:when (modulep! :ui workspaces)
:desc "Switch workspace buffer" "b" #'persp-switch-to-buffer
:desc "Switch buffer" "B" #'switch-to-buffer
:desc "ibuffer workspace" "I" #'+ibuffer/open-for-current-workspace)
(:unless (featurep! :ui workspaces)
(:unless (modulep! :ui workspaces)
:desc "Switch buffer" "b" #'switch-to-buffer)
:desc "Clone buffer" "c" #'clone-indirect-buffer
:desc "Clone buffer other window" "C" #'clone-indirect-buffer-other-window
@ -379,19 +379,19 @@
;;; <leader> c --- code
(:prefix-map ("c" . "code")
(:when (and (featurep! :tools lsp) (not (featurep! :tools lsp +eglot)))
(:when (and (modulep! :tools lsp) (not (modulep! :tools lsp +eglot)))
:desc "LSP Execute code action" "a" #'lsp-execute-code-action
:desc "LSP Organize imports" "o" #'lsp-organize-imports
(:when (featurep! :completion ivy)
(:when (modulep! :completion ivy)
:desc "Jump to symbol in current workspace" "j" #'lsp-ivy-workspace-symbol
:desc "Jump to symbol in any workspace" "J" #'lsp-ivy-global-workspace-symbol)
(:when (featurep! :completion helm)
(:when (modulep! :completion helm)
:desc "Jump to symbol in current workspace" "j" #'helm-lsp-workspace-symbol
:desc "Jump to symbol in any workspace" "J" #'helm-lsp-global-workspace-symbol)
(:when (featurep! :completion vertico)
(:when (modulep! :completion vertico)
:desc "Jump to symbol in current workspace" "j" #'consult-lsp-symbols
:desc "Jump to symbol in any workspace" "J" (cmd!! #'consult-lsp-symbols 'all-workspaces))
(:when (featurep! :ui treemacs +lsp)
(:when (modulep! :ui treemacs +lsp)
:desc "Errors list" "X" #'lsp-treemacs-errors-list
:desc "Incoming call hierarchy" "y" #'lsp-treemacs-call-hierarchy
:desc "Outgoing call hierarchy" "Y" (cmd!! #'lsp-treemacs-call-hierarchy t)
@ -399,11 +399,11 @@
:desc "Symbols" "S" #'lsp-treemacs-symbols)
:desc "LSP" "l" #'+default/lsp-command-map
:desc "LSP Rename" "r" #'lsp-rename)
(:when (featurep! :tools lsp +eglot)
(:when (modulep! :tools lsp +eglot)
:desc "LSP Execute code action" "a" #'eglot-code-actions
:desc "LSP Rename" "r" #'eglot-rename
:desc "LSP Find declaration" "j" #'eglot-find-declaration
(:when (featurep! :completion vertico)
(:when (modulep! :completion vertico)
:desc "Jump to symbol in current workspace" "j" #'consult-eglot-symbols))
:desc "Compile" "c" #'compile
:desc "Recompile" "C" #'recompile
@ -447,17 +447,17 @@
:desc "Revert file" "R" #'vc-revert
:desc "Copy link to remote" "y" #'+vc/browse-at-remote-kill
:desc "Copy link to homepage" "Y" #'+vc/browse-at-remote-kill-homepage
(:when (featurep! :ui hydra)
(:when (modulep! :ui hydra)
:desc "SMerge" "m" #'+vc/smerge-hydra/body)
(:when (featurep! :ui vc-gutter)
(:when (featurep! :ui hydra)
(:when (modulep! :ui vc-gutter)
(:when (modulep! :ui hydra)
:desc "VCGutter" "." #'+vc/gutter-hydra/body)
:desc "Revert hunk at point" "r" #'+vc-gutter/revert-hunk
:desc "stage hunk at point" "s" #'+vc-gutter/stage-hunk
:desc "Git time machine" "t" #'git-timemachine-toggle
:desc "Jump to next hunk" "]" #'+vc-gutter/next-hunk
:desc "Jump to previous hunk" "[" #'+vc-gutter/previous-hunk)
(:when (featurep! :tools magit)
(:when (modulep! :tools magit)
:desc "Magit dispatch" "/" #'magit-dispatch
:desc "Magit file dispatch" "." #'magit-file-dispatch
:desc "Forge dispatch" "'" #'forge-dispatch
@ -487,7 +487,7 @@
:desc "Browse issues" "I" #'forge-browse-issues
:desc "Browse pull requests" "P" #'forge-browse-pullreqs)
(:prefix ("l" . "list")
(:when (featurep! :tools gist)
(:when (modulep! :tools gist)
:desc "List gists" "g" #'+gist:list)
:desc "List repositories" "r" #'magit-list-repositories
:desc "List submodules" "s" #'magit-list-submodules
@ -518,16 +518,16 @@
(:prefix-map ("n" . "notes")
:desc "Search notes for symbol" "*" #'+default/search-notes-for-symbol-at-point
:desc "Org agenda" "a" #'org-agenda
(:when (featurep! :tools biblio)
(:when (modulep! :tools biblio)
:desc "Bibliographic entries" "b"
(cond ((featurep! :completion vertico) #'citar-open-entry)
((featurep! :completion ivy) #'ivy-bibtex)
((featurep! :completion helm) #'helm-bibtex)))
(cond ((modulep! :completion vertico) #'citar-open-entry)
((modulep! :completion ivy) #'ivy-bibtex)
((modulep! :completion helm) #'helm-bibtex)))
:desc "Toggle last org-clock" "c" #'+org/toggle-last-clock
:desc "Cancel current org-clock" "C" #'org-clock-cancel
:desc "Open deft" "d" #'deft
(:when (featurep! :lang org +noter)
(:when (modulep! :lang org +noter)
:desc "Org noter" "e" #'org-noter)
:desc "Find file in notes" "f" #'+default/find-in-notes
@ -544,7 +544,7 @@
:desc "Org export to clipboard" "y" #'+org/export-to-clipboard
:desc "Org export to clipboard as RTF" "Y" #'+org/export-to-clipboard-as-rich-text
(:when (featurep! :lang org +roam)
(:when (modulep! :lang org +roam)
(:prefix ("r" . "roam")
:desc "Switch to buffer" "b" #'org-roam-switch-to-buffer
:desc "Org Roam Capture" "c" #'org-roam-capture
@ -559,7 +559,7 @@
:desc "Tomorrow" "m" #'org-roam-dailies-find-tomorrow
:desc "Yesterday" "y" #'org-roam-dailies-find-yesterday)))
(:when (featurep! :lang org +roam2)
(:when (modulep! :lang org +roam2)
(:prefix ("r" . "roam")
:desc "Open random node" "a" #'org-roam-node-random
:desc "Find node" "f" #'org-roam-node-find
@ -584,7 +584,7 @@
:desc "Capture yesterday" "Y" #'org-roam-dailies-capture-yesterday
:desc "Find directory" "-" #'org-roam-dailies-find-directory)))
(:when (featurep! :lang org +journal)
(:when (modulep! :lang org +journal)
(:prefix ("j" . "journal")
:desc "New Entry" "j" #'org-journal-new-entry
:desc "New Scheduled Entry" "J" #'org-journal-new-scheduled-entry
@ -605,25 +605,25 @@
:desc "REPL" "r" #'+eval/open-repl-other-window
:desc "REPL (same window)" "R" #'+eval/open-repl-same-window
:desc "Dired" "-" #'dired-jump
(:when (featurep! :ui neotree)
(:when (modulep! :ui neotree)
:desc "Project sidebar" "p" #'+neotree/open
:desc "Find file in project sidebar" "P" #'+neotree/find-this-file)
(:when (featurep! :ui treemacs)
(:when (modulep! :ui treemacs)
:desc "Project sidebar" "p" #'+treemacs/toggle
:desc "Find file in project sidebar" "P" #'treemacs-find-file)
(:when (featurep! :term shell)
(:when (modulep! :term shell)
:desc "Toggle shell popup" "t" #'+shell/toggle
:desc "Open shell here" "T" #'+shell/here)
(:when (featurep! :term term)
(:when (modulep! :term term)
:desc "Toggle terminal popup" "t" #'+term/toggle
:desc "Open terminal here" "T" #'+term/here)
(:when (featurep! :term vterm)
(:when (modulep! :term vterm)
:desc "Toggle vterm popup" "t" #'+vterm/toggle
:desc "Open vterm here" "T" #'+vterm/here)
(:when (featurep! :term eshell)
(:when (modulep! :term eshell)
:desc "Toggle eshell popup" "e" #'+eshell/toggle
:desc "Open eshell here" "E" #'+eshell/here)
(:when (featurep! :os macos)
(:when (modulep! :os macos)
:desc "Reveal in Finder" "o" #'+macos/reveal-in-finder
:desc "Reveal project in Finder" "O" #'+macos/reveal-project-in-finder
:desc "Send to Transmit" "u" #'+macos/send-to-transmit
@ -632,13 +632,13 @@
:desc "Send project to Launchbar" "L" #'+macos/send-project-to-launchbar
:desc "Open in iTerm" "i" #'+macos/open-in-iterm
:desc "Open in new iTerm window" "I" #'+macos/open-in-iterm-new-window)
(:when (featurep! :tools docker)
(:when (modulep! :tools docker)
:desc "Docker" "D" #'docker)
(:when (featurep! :email mu4e)
(:when (modulep! :email mu4e)
:desc "mu4e" "m" #'=mu4e)
(:when (featurep! :email notmuch)
(:when (modulep! :email notmuch)
:desc "notmuch" "m" #'=notmuch)
(:when (featurep! :email wanderlust)
(:when (modulep! :email wanderlust)
:desc "wanderlust" "m" #'=wanderlust))
;;; <leader> p --- project
@ -668,9 +668,9 @@
:desc "Test project" "T" #'projectile-test-project
:desc "Pop up scratch buffer" "x" #'doom/open-project-scratch-buffer
:desc "Switch to scratch buffer" "X" #'doom/switch-to-project-scratch-buffer
(:when (and (featurep! :tools taskrunner)
(or (featurep! :completion ivy)
(featurep! :completion helm)))
(:when (and (modulep! :tools taskrunner)
(or (modulep! :completion ivy)
(modulep! :completion helm)))
:desc "List project tasks" "z" #'+taskrunner/project-tasks))
;;; <leader> q --- quit/session
@ -689,7 +689,7 @@
:desc "Restart Emacs" "R" #'doom/restart)
;;; <leader> r --- remote
(:when (featurep! :tools upload)
(:when (modulep! :tools upload)
(:prefix-map ("r" . "remote")
:desc "Browse remote" "b" #'ssh-deploy-browse-remote-base-handler
:desc "Browse relative" "B" #'ssh-deploy-browse-remote-handler
@ -709,13 +709,13 @@
;;; <leader> s --- search
(:prefix-map ("s" . "search")
:desc "Search buffer" "b"
(cond ((featurep! :completion vertico) #'+default/search-buffer)
((featurep! :completion ivy) #'swiper)
((featurep! :completion helm) #'swiper))
(cond ((modulep! :completion vertico) #'+default/search-buffer)
((modulep! :completion ivy) #'swiper)
((modulep! :completion helm) #'swiper))
:desc "Search all open buffers" "B"
(cond ((featurep! :completion vertico) (cmd!! #'consult-line-multi 'all-buffers))
((featurep! :completion ivy) #'swiper-all)
((featurep! :completion helm) #'swiper-all))
(cond ((modulep! :completion vertico) (cmd!! #'consult-line-multi 'all-buffers))
((modulep! :completion ivy) #'swiper-all)
((modulep! :completion helm) #'swiper-all))
:desc "Search current directory" "d" #'+default/search-cwd
:desc "Search other directory" "D" #'+default/search-other-cwd
:desc "Search .emacs.d" "e" #'+default/search-emacsd
@ -734,9 +734,9 @@
:desc "Jump to mark" "r" #'evil-show-marks
:desc "Search buffer" "s" #'+default/search-buffer
:desc "Search buffer for thing at point" "S"
(cond ((featurep! :completion vertico) #'+vertico/search-symbol-at-point)
((featurep! :completion ivy) #'swiper-isearch-thing-at-point)
((featurep! :completion helm) #'swiper-isearch-thing-at-point))
(cond ((modulep! :completion vertico) #'+vertico/search-symbol-at-point)
((modulep! :completion ivy) #'swiper-isearch-thing-at-point)
((modulep! :completion helm) #'swiper-isearch-thing-at-point))
:desc "Dictionary" "t" #'+lookup/dictionary-definition
:desc "Thesaurus" "T" #'+lookup/synonyms)
@ -745,29 +745,29 @@
:desc "Big mode" "b" #'doom-big-font-mode
:desc "Fill Column Indicator" "c" #'global-display-fill-column-indicator-mode
:desc "Flymake" "f" #'flymake-mode
(:when (featurep! :checkers syntax)
(:when (modulep! :checkers syntax)
:desc "Flycheck" "f" #'flycheck-mode)
:desc "Frame fullscreen" "F" #'toggle-frame-fullscreen
:desc "Evil goggles" "g" #'evil-goggles-mode
(:when (featurep! :ui indent-guides)
(:when (modulep! :ui indent-guides)
:desc "Indent guides" "i" #'highlight-indent-guides-mode)
:desc "Indent style" "I" #'doom/toggle-indent-style
:desc "Line numbers" "l" #'doom/toggle-line-numbers
(:when (featurep! :ui minimap)
(:when (modulep! :ui minimap)
:desc "Minimap" "m" #'minimap-mode)
(:when (featurep! :lang org +present)
(:when (modulep! :lang org +present)
:desc "org-tree-slide mode" "p" #'org-tree-slide-mode)
:desc "Read-only mode" "r" #'read-only-mode
(:when (and (featurep! :checkers spell) (not (featurep! :checkers spell +flyspell)))
(:when (and (modulep! :checkers spell) (not (modulep! :checkers spell +flyspell)))
:desc "Spell checker" "s" #'spell-fu-mode)
(:when (featurep! :checkers spell +flyspell)
(:when (modulep! :checkers spell +flyspell)
:desc "Spell checker" "s" #'flyspell-mode)
(:when (featurep! :lang org +pomodoro)
(:when (modulep! :lang org +pomodoro)
:desc "Pomodoro timer" "t" #'org-pomodoro)
:desc "Soft line wrapping" "w" #'visual-line-mode
(:when (featurep! :editor word-wrap)
(:when (modulep! :editor word-wrap)
:desc "Soft line wrapping" "w" #'+word-wrap-mode)
(:when (featurep! :ui zen)
(:when (modulep! :ui zen)
:desc "Zen mode" "z" #'+zen/toggle
:desc "Zen mode (fullscreen)" "Z" #'+zen/toggle-fullscreen)))

View file

@ -17,5 +17,5 @@
:prefix doom-leader-key "u" #'universal-argument-more
:prefix doom-leader-alt-key "u" #'universal-argument-more)
(when (featurep! +bindings)
(when (modulep! +bindings)
(load! "+evil-bindings"))

View file

@ -32,7 +32,7 @@ generate `completing-read' candidates."
(defun +default/new-buffer ()
"TODO"
(interactive)
(if (featurep! 'evil)
(if (modulep! 'evil)
(call-interactively #'evil-buffer-new)
(let ((buffer (generate-new-buffer "*new*")))
(set-window-buffer nil buffer)
@ -54,17 +54,17 @@ generate `completing-read' candidates."
If the the vertico and lsp modules are active, list lsp diagnostics for the
current project. Otherwise list them for the current buffer"
(interactive)
(cond ((and (featurep! :completion vertico)
(featurep! :tools lsp)
(cond ((and (modulep! :completion vertico)
(modulep! :tools lsp)
(bound-and-true-p lsp-mode))
(consult-lsp-diagnostics arg))
((and (featurep! :checkers syntax)
((and (modulep! :checkers syntax)
(bound-and-true-p flycheck-mode))
(if (featurep! :completion vertico)
(if (modulep! :completion vertico)
(consult-flycheck)
(flycheck-list-errors)))
((bound-and-true-p flymake-mode)
(if (featurep! :completion vertico)
(if (modulep! :completion vertico)
(consult-flymake)
(flymake-show-diagnostics-buffer)))
(t

View file

@ -10,9 +10,9 @@ If prefix ARG is set, prompt for a directory to search from."
(read-directory-name "Search directory: ")
default-directory)))
(call-interactively
(cond ((featurep! :completion ivy) #'+ivy/project-search-from-cwd)
((featurep! :completion helm) #'+helm/project-search-from-cwd)
((featurep! :completion vertico) #'+vertico/project-search-from-cwd)
(cond ((modulep! :completion ivy) #'+ivy/project-search-from-cwd)
((modulep! :completion helm) #'+helm/project-search-from-cwd)
((modulep! :completion vertico) #'+vertico/project-search-from-cwd)
(#'rgrep)))))
;;;###autoload
@ -27,9 +27,9 @@ If prefix ARG is set, prompt for a directory to search from."
(interactive)
(let ((default-directory doom-emacs-dir))
(call-interactively
(cond ((featurep! :completion ivy) #'+ivy/project-search-from-cwd)
((featurep! :completion helm) #'+helm/project-search-from-cwd)
((featurep! :completion vertico) #'+vertico/project-search-from-cwd)
(cond ((modulep! :completion ivy) #'+ivy/project-search-from-cwd)
((modulep! :completion helm) #'+helm/project-search-from-cwd)
((modulep! :completion vertico) #'+vertico/project-search-from-cwd)
(#'rgrep)))))
;;;###autoload
@ -52,13 +52,13 @@ input and search the whole buffer for it."
(deactivate-mark)
(when multiline-p
(narrow-to-region start end)))
(cond ((or (featurep! :completion helm)
(featurep! :completion ivy))
(cond ((or (modulep! :completion helm)
(modulep! :completion ivy))
(call-interactively
(if (and start end (not multiline-p))
#'swiper-isearch-thing-at-point
#'swiper-isearch)))
((featurep! :completion vertico)
((modulep! :completion vertico)
(if (and start end (not multiline-p))
(consult-line
(replace-regexp-in-string
@ -82,9 +82,9 @@ If prefix ARG is set, include ignored/hidden files."
(user-error "There are no known projects"))
default-directory)))
(call-interactively
(cond ((featurep! :completion ivy) #'+ivy/project-search)
((featurep! :completion helm) #'+helm/project-search)
((featurep! :completion vertico) #'+vertico/project-search)
(cond ((modulep! :completion ivy) #'+ivy/project-search)
((modulep! :completion helm) #'+helm/project-search)
((modulep! :completion vertico) #'+vertico/project-search)
(#'projectile-ripgrep)))))
;;;###autoload
@ -105,11 +105,11 @@ If prefix ARG is set, prompt for a known project to search from."
(completing-read "Search project: " projects nil t)
(user-error "There are no known projects"))
(doom-project-root default-directory)))))
(cond ((featurep! :completion ivy)
(cond ((modulep! :completion ivy)
(+ivy/project-search nil symbol dir))
((featurep! :completion helm)
((modulep! :completion helm)
(+helm/project-search nil symbol dir))
((featurep! :completion vertico)
((modulep! :completion vertico)
(+vertico/project-search nil symbol dir))
((rgrep (regexp-quote symbol)))))

View file

@ -145,7 +145,7 @@ possible, or just one char if that's not possible."
(insert-char ?\s (- ocol (current-column)) nil))))
;;
((= n 1)
(cond ((or (not (featurep! +smartparens))
(cond ((or (not (modulep! +smartparens))
(not (bound-and-true-p smartparens-mode))
(and (memq (char-before) (list ?\ ?\t))
(save-excursion

View file

@ -10,10 +10,10 @@
minibuffer-local-must-match-map
minibuffer-local-isearch-map
read-expression-map)
(cond ((featurep! :completion ivy)
(cond ((modulep! :completion ivy)
'(ivy-minibuffer-map
ivy-switch-buffer-map))
((featurep! :completion helm)
((modulep! :completion helm)
'(helm-map
helm-rg-map
helm-read-file-map))))
@ -83,7 +83,7 @@
;;
;;; Smartparens config
(when (featurep! +smartparens)
(when (modulep! +smartparens)
;; You can disable :unless predicates with (sp-pair "'" nil :unless nil)
;; And disable :post-handlers with (sp-pair "{" nil :post-handlers nil)
;; or specific :post-handlers with:
@ -311,7 +311,7 @@ Continues comments if executed from a commented line. Consults
"s-l" #'goto-line
;; Restore OS undo, save, copy, & paste keys (without cua-mode, because
;; it imposes some other functionality and overhead we don't need)
"s-f" (if (featurep! :completion vertico) #'consult-line #'swiper)
"s-f" (if (modulep! :completion vertico) #'consult-line #'swiper)
"s-z" #'undo
"s-Z" #'redo
"s-c" (if (featurep 'evil) #'evil-yank #'copy-region-as-kill)
@ -433,7 +433,7 @@ Continues comments if executed from a commented line. Consults
which-key-replacement-alist)))
(when (featurep! +bindings)
(when (modulep! +bindings)
;; Make M-x harder to miss
(define-key! 'override
"M-x" #'execute-extended-command
@ -441,15 +441,15 @@ Continues comments if executed from a commented line. Consults
;; A Doom convention where C-s on popups and interactive searches will invoke
;; ivy/helm/vertico for their superior filtering.
(when-let (command (cond ((featurep! :completion ivy)
(when-let (command (cond ((modulep! :completion ivy)
#'counsel-minibuffer-history)
((featurep! :completion helm)
((modulep! :completion helm)
#'helm-minibuffer-history)
((featurep! :completion vertico)
((modulep! :completion vertico)
#'consult-history)))
(define-key!
:keymaps (append +default-minibuffer-maps
(when (featurep! :editor evil +everywhere)
(when (modulep! :editor evil +everywhere)
'(evil-ex-completion-map)))
"C-s" command))

View file

@ -5,5 +5,5 @@
(package! drag-stuff :pin "6d06d846cd37c052d79acd0f372c13006aa7e7c8")
(package! link-hint :pin "676dac6621e321b33a8d396fa27dd0ea619d21e3")
(unless (featurep! :editor evil)
(unless (modulep! :editor evil)
(package! expand-region :pin "7e5bbe2763c12bae3e77fe0c49bcad05ff91dbfe"))