Commit graph

1473 commits

Author SHA1 Message Date
Ellis Kenyo
7420496a95
fix(modeline): update icons for +light 2024-05-21 17:16:11 +02:00
Henrik Lissner
b55dc26196
refactor(modeline): remove doom-modeline-buffer-modified shim
No longer needed.

Ref: seagle0128/doom-modeline@5c98267310
2024-05-21 17:16:10 +02:00
SunskyXH
ac5da4f82c
fix(tabs): replace all-the-icons with nerd-icons
Ref: #7411
2024-05-21 17:16:10 +02:00
Ellis Kenyő
7bb2db1049
fix(format): handle git-gutter nicely 2024-05-21 17:16:01 +02:00
Ellis Kenyő
cb016f2dba
refactor!: replace all-the-icons with nerd-icons
BREAKING CHANGE: This commit replaces all-the-icons with nerd-fonts. Any
all-the-icons-* function calls or variable references in your private
config will break and should be replaced with their nerd-icons-*
equivalent. That said, Doom will continue to install all-the-icons for
a while, so feel free to load it if you don't want to fully commit to
the change yet.

This change is happening because nerd-icon has wider support for GUI and
TUI Emacs; has a larger, more consistent selection of symbols; plus unicode
coverage.

Fix: #7368
Close: #6675
Close: #7364
2024-05-21 17:15:56 +02:00
Emily Bourke
698f3ddeff
tweak(workspaces): prefill current name on rename
This change uses completing-read to get the new name from the user when
renaming workspaces, to allow them to more easily make a small change to
the existing name of a workspace.
2024-05-21 17:15:54 +02:00
Velnbur
7bdc7a6d3d
bump: :ui treemacs
Alexander-Miller/treemacs@00e96c842f -> Alexander-Miller/treemacs@fe471314f1

Fix: #7409
2024-05-21 17:15:54 +02:00
Gerry Agbobada
724a845e1f
refactor!(ligatures): use ligature.el for Emacs28+
Include ligature.el in a new set-font-ligatures! function, so that
"normal" (read: "font-based") ligatures can
also be controlled on a per-major mode basis from a user function
in configuration.

This commit also drops support for Emacs 27 to reduce the maintenance
burden.

BREAKING CHANGE: font ligatures for Harfbuzz/Coretext composition
table-based ligations are no longer controlled with
`+ligatures-composition-alist`, but is handled with
`+ligatures-prog-mode-list` and `+ligatures-all-modes-list` for most
common cases. See the README for the mode-specific methods

BREAKING CHANGE: the `:ui ligatures` module will not work anymore
with Emacs 27 or older. Also, there is no need to keep patched fonts
(for Fira, Hasklig, Iosevka) if you use the module. Update Emacs if
you want to keep using ligatures, or disable the module (`doom doctor`
will tell you if your current version of Emacs stopped working with
the module)
2024-05-21 17:15:54 +02:00
Henrik Lissner
580754a735
fix(popup): +popup/raise: recursive popup
Without this, raising a popup might result in simply opening a popup
with the same rules.
2024-05-21 17:15:54 +02:00
Henrik Lissner
f98709dddc
bump: :editor evil
emacs-evil/evil@9eb69b7f5b -> emacs-evil/evil@5fc16776c5
emacs-evil/evil-collection@1ad283f5b7 -> emacs-evil/evil-collection@8be4b75c86

- Fixes breaking change due to emacs-mirror/emacs@802a54ad62 (see
  #7397).

Ref: debbugs.gnu.org/cgi/bugreport.cgi?bug=62248
Close: #7397
Co-authored-by: prashantvithani <prashantvithani@users.noreply.github.com>
2024-05-21 17:15:52 +02:00
Amos Bird
840463bf30
fix(popup): add wdired hacks
Previously, wdired actions will not close popup windows, which is
cumbersome to use. We've already added similar hacks to dired. Now it's
time to add similar hacks to wdired.
2024-05-21 17:15:50 +02:00
Liam Hupfer
92cb788cc9
tweak(emoji): add emoji-search binding for Emacs 29
The emojify command takes precedence in case users want ASCII/GitHub
string completion/insertion.

Ref: https://git.savannah.gnu.org/cgit/emacs.git/tree/etc/NEWS?h=emacs-29.1#n884
2024-05-21 17:15:50 +02:00
Liam Hupfer
336dea55b2
nit: remove superfluous package cookies 2024-05-21 17:15:49 +02:00
Henrik Lissner
d675072dc5
bump: :ui
Alexander-Miller/treemacs@9986d6cd3d -> Alexander-Miller/treemacs@00e96c842f
dgutov/diff-hl@d20f16bf5e -> dgutov/diff-hl@b5651f1c57
doomemacs/themes@b5ff201f4b -> doomemacs/themes@e4f0b006a5
edkolev/evil-goggles@8f20a16e74 -> edkolev/evil-goggles@0070c9d844
ema2159/centaur-tabs@a2890d968d -> ema2159/centaur-tabs@0bb1aa18d4
emacs-lsp/lsp-treemacs@a48763ba5d -> emacs-lsp/lsp-treemacs@e66ae21965
jaypei/emacs-neotree@98fe21334a -> jaypei/emacs-neotree@2b0cb82853
k-talo/volatile-highlights.el@513c8b73cd -> k-talo/volatile-highlights.el@fcf6e27784
seagle0128/doom-modeline@6125309c2c -> seagle0128/doom-modeline@f45a5a2003
tarsius/hl-todo@a627d33214 -> tarsius/hl-todo@0faf8569b6
2024-05-21 17:15:48 +02:00
Jeetaditya Chatterjee
5842f46cfc
tweak(doom-dashboard): recentf now top menu section
This makes the top action one that is harmless as to prevent accidental
clobbering of current workspaces
2024-05-21 17:15:47 +02:00
StrawberryTea
177157b044
fix(popup): cycle windows with no-other-window property
Previously, +popup/other would do nothing if a window with the
no-other-window property that was not a popup was focused. Now
+popup/other will always select different window if there is another
popup or window with the no-other-window property.

Fix: #7119
2023-07-24 19:18:53 +02:00
Henrik Lissner
f70e382463
docs(unicode): describe #7164
Seems to be a common issue, and unlikely to see a fix, unless
unicode-fonts gets a new maintainer.

Ref: rolandwalker/unicode-fonts#36
Ref: #7164
2023-07-22 17:57:25 +02:00
Henrik Lissner
09f602b342
fix(unicode): unicode-fonts remapping for daemon
The unicode remappings were done too early, prior to this change, making
them ineffective for later daemon frames.

Fix: #5486
Fix: #7160
2023-03-22 17:58:21 -04:00
Henrik Lissner
1d7dd915ab
fix(unicode): show remapping progress at startup
unicode-fonts takes 5-15 seconds to remap unicode blocks on first
invokation, but it does so invisibly because inhibit-redisplay and
inhibit-message are active during startup (to prevent unintended redraws
slowing down the startup process). This change ensures users get
meaningful feedback during this time.
2023-03-22 17:57:39 -04:00
Robert Hambrock
1a01620705
fix(unicode): don't unset doom-unicode-font
Ref: #3298
Ref: #3334
2023-03-22 17:57:04 -04:00
David Adams
8be11ff48c fix(treemacs): ignore default popup rules
Fix: #7128
2023-03-08 20:24:44 -05:00
Henrik Lissner
5c563d307b
fix(doom-dashboard): update evil-replace-state ref
The command was renamed evil-enter-replace-state, upstream.
2023-02-25 20:47:29 -05:00
Yu-Fu Fu
bd0728e9b3
fix(window-select): unset winum-auto-setup-mode-line sooner
Its value is read when winum-mode is activated.
2023-02-23 01:09:32 -05:00
Henrik Lissner
1eb3fd3449
bump: :ui
Alexander-Miller/treemacs@76807bef3c -> Alexander-Miller/treemacs@9986d6cd3d
Bad-ptr/persp-mode.el@7a594a3d8f -> Bad-ptr/persp-mode.el@df95ea710e
abo-abo/ace-window@0577c426a9 -> abo-abo/ace-window@77115afc1b
abo-abo/hydra@9e9e00cb24 -> abo-abo/hydra@317e1de330
dgutov/diff-hl@dabb7be628 -> dgutov/diff-hl@d20f16bf5e
dimitri/switch-window@8d9fe251d8 -> dimitri/switch-window@71ef2f54c9
ema2159/centaur-tabs@f4cef95acb -> ema2159/centaur-tabs@a2890d968d
emacs-lsp/lsp-treemacs@2894e6dec5 -> emacs-lsp/lsp-treemacs@a48763ba5d
joostkremers/writeroom-mode@eac1da790f -> joostkremers/writeroom-mode@1fd52848eb
k-talo/volatile-highlights.el@9a20091f0c -> k-talo/volatile-highlights.el@513c8b73cd
rolandwalker/nav-flash@2e31f32085 -> rolandwalker/nav-flash@5d4b485678
rolandwalker/unicode-fonts@47f2397ade -> rolandwalker/unicode-fonts@44d0a22420
seagle0128/doom-modeline@b66d5e5006 -> seagle0128/doom-modeline@6125309c2c
tarsius/hl-todo@e52285965b -> tarsius/hl-todo@a627d33214
2023-02-20 22:47:23 -05:00
Ellis Kenyő
cc467d009e
bump: :ui doom
doomemacs/themes@535800fd6c -> doomemacs/themes@b5ff201f4b

Fix: doomemacs/themes#776
2023-02-20 20:03:49 -05:00
Henrik Lissner
7260725313
refactor: move compat package to core
This package is cropping up in packages everywhere. Managing it has been
a source of issues, so I'm making it a core package until v3, where
we'll be able to pin packages without explicitly installing them.
2023-02-20 19:01:38 -05:00
Henrik Lissner
086e9a9322
feat(workspaces): +workspace/switch-to: add buffer list column
To offer more context for ivy users while switching between workspaces.

Close: #3006
Co-authored-by: rgrinberg <rgrinberg@users.noreply.github.com>~
2023-02-18 15:27:47 -05:00
roife
d12b0ebc80 fix(workspaces): save current tab-bar tabs to file 2023-02-18 01:01:49 -05:00
roife
f6616e8a06
fix(vc-gutter): add missing autoloads
Add required autoloads for vc-gutter to fix errors from which-key. See the issue
below.

Fix: #6957
2023-02-18 01:00:59 -05:00
Itai Y. Efrat
29c595ed1b bump: magit compat git-commit
emacs-straight/compat@2bedcb5ea9 -> emacs-straight/compat@01fdf316a4
magit/magit@6d325d90ba -> magit/magit@30b0debaaa
2023-02-17 12:34:58 -05:00
Itai Y. Efrat
642f88ad99 bump: :completion vertico compat consult-lsp magit git-commit
emacs-straight/compat@7ca7d300d1 -> emacs-straight/compat@2bedcb5ea9
mhayashi1120/Emacs-wgrep@f9687c28bb -> mhayashi1120/Emacs-wgrep@edf768732a
minad/consult-flycheck@7a10be316d -> minad/consult-flycheck@51b1b48e8d
minad/consult@16b2dc5e34 -> oantolin/orderless@ae849b3d9f
minad/marginalia@c1365bf0c7 -> minad/marginalia@6d48ed54be
minad/vertico@bedd146c3f -> minad/vertico@f303790546
oantolin/embark@629cce948c -> oantolin/embark@4882b395ce
oantolin/orderless@847694e78c -> minad/vertico@f303790546
tumashu/vertico-posframe@a3d0802d7b -> tumashu/vertico-posframe@790f74b49d
gagbo/consult-lsp@58b5414762 -> gagbo/consult-lsp@f8db3252c0
magit/magit@0ef98ef518 -> magit/magit@6d325d90ba

consult-lsp needed to be bumped to work with some changed consult
internals, and due to compat shenanigans we have to bump magit to latest
as well.

Includes fixes to stay up to date with upstream api changes to.
consult-customize and the deprecation of embark-define-keymap

Close: #7064
2023-02-17 12:34:58 -05:00
Itai Y. Efrat
3c99e9f8ab bump: :completion vertico compat
emacs-straight/compat@cc1924fd8b -> emacs-straight/compat@7ca7d300d1
minad/consult@e4e2af1a2d -> minad/consult@16b2dc5e34
minad/marginalia@c68164c564 -> minad/marginalia@c1365bf0c7
minad/vertico@801ad3143d -> minad/vertico@bedd146c3f
oantolin/embark@09da327d43 -> oantolin/embark@629cce948c
oantolin/orderless@004cee6b8e -> oantolin/orderless@847694e78c
tumashu/vertico-posframe@61a88aec07 -> tumashu/vertico-posframe@a3d0802d7b

---

convert consult--ripgrep-builder instance to  consult--ripgrep-make-builder
2023-01-01 21:55:13 -05:00
Henrik Lissner
9d4689de5f
fix(indent-guides): face init in tty Emacs
Ensure that highlight-indent-guides-auto-set-faces is called when the
active theme and frame has been initialized (particularly tricky in
daemon sessions). With this assurance, we don't need to suppress its
errors anymore.

Close: #6900
Co-authored-by: Sleepful <Sleepful@users.noreply.github.com>
2022-10-29 01:57:39 +02:00
Vincent Bernat
aa40daf5e8 bump: :ui modeline
seagle0128/doom-modeline@bed80b82d7 -> seagle0128/doom-modeline@b66d5e5006

- Fixes error with eglot 1.9 (due to rename of eglot--major-mode)
2022-10-29 00:25:50 +02:00
Henrik Lissner
06c810f8cf
bump: :ui treemacs
Alexander-Miller/treemacs@e4bb236bd5 -> Alexander-Miller/treemacs@76807bef3c
emacs-lsp/lsp-treemacs@f7ae97560c -> emacs-lsp/lsp-treemacs@2894e6dec5

Ref: 20765acd38 (diff-36f7ea49dcbb6f011b9faf5f012271328ac46515b4f161214001917cbc2ef6b2L1023-R1053)
Fix: emacs-lsp/lsp-treemacs#145
Ref: emacs-lsp/lsp-treemacs#142
Close: #6887
Close: #6868
Co-authored-by: Jcaw <Jcaw@users.noreply.github.com>
2022-10-23 02:46:52 +02:00
Henrik Lissner
c2f5e41722
tweak(window-select): winum-auto-setup-mode-line = nil
Leave it to modeline modules, plugins, and/or the user to support this
plugin, rather than impose winum's (rather destructive) side-effects on
them all.
2022-10-23 02:30:13 +02:00
Antonio Ruiz
191745424b feat(workspaces): make tab-bar tabs workspace-local 2022-10-05 15:14:44 +02:00
TEC
5ac2a5258b docs: change link format 2022-10-05 01:01:19 +02:00
毕达哥拉斯
2c31028a56
fix(treemacs): treemacs-collapse-dirs not changing
`treemacs-collapse-dirs` cannot be changed by setting
`+treemacs-git-mode` to `extended` or `deferred`

Fix: #6850
2022-09-30 22:39:24 +02:00
Henrik Lissner
07c1534ea3
fix(modeline): void-function +modeline-refresh-bars-h error
Occurs during non-interactive startup of the user's config (e.g. 'doom
doctor'), while :ui (modeline +light) is enabled.

This is a makeshift solution until I get around to finishing the +light
feature.
2022-09-26 00:47:28 +02:00
Henrik Lissner
29dfce32bd
fix(doom-dashboard): hide benchmark until available
The dashboard has a chance to display before doom-init-time is
calculated. To prevent the resulting type error, hide it until it is
ready.
2022-09-24 22:10:02 +02:00
Henrik Lissner
1c4217aa27
refactor: minor refactors & commentary revision
* lisp/doom-cli.el:
  - reference backport source commit.
  - doom-cli--restart: a type check is all we need here. This is a
    programmer error, not a user error.
* lisp/doom-editor.el (recentf): mention recentf-show-abbreviated (added in
  emacs-mirror/emacs@32906819ad)
* lisp/doom-keybinds.el (doom-init-leader-keys-h): move to
  doom-after-init-hook, in case the user customizes leader variables in
  a previous hook (like emacs-startup-hook or after-init-hook).
* lisp/doom-start.el: use eval-when! to compile out the section on
  non-macOS systems (when Doom gets around to compiling its core files,
  later).
* modules/config/literate/autoload.el (+literate-config-file): use
  file-name-concat instead of string concat. This relaxes the
  requirement that doom-user-dir end in a /; a requirement I intend to
  fully phase out.
* modules/lang/emacs-lisp/autoload.el (+emacs-lisp-non-package): remove
  empty map! macro in flycheck-emacs-lisp-check-form. The macro already
  no-ops at compile-time/in noninteractive sessions since b480ed51a3.
* modules/ui/hl-todo/config.el (hl-todo-keyword-faces): revise
  commentary for default hl-todo keywords.

Ref: emacs-mirror/emacs@32906819ad
Ref: b480ed51a3
2022-09-24 20:31:34 +02:00
Henrik Lissner
5c9672a28a
bump: :ui treemacs
Alexander-Miller/treemacs@b18a05b1f6 -> Alexander-Miller/treemacs@e4bb236bd5
emacs-lsp/lsp-treemacs@355e468b7f -> emacs-lsp/lsp-treemacs@f7ae97560c

A new major version of treemacs was released some days ago. The
currently pinned version is from February 2022, and it stops LSP servers
from starting with message "cannot load treemacs-lib" via lsp-treemacs.

Fix: #6814
Close: #6812
Co-authored-by: logc <logc@users.noreply.github.com>
2022-09-20 00:56:07 +02:00
Henrik Lissner
f3ffb9e1e1
bump: :ui doom
doomemacs/themes@83fd9545c2 -> doomemacs/themes@535800fd6c

Improves Emacs 29 compatibility (see ref).

Ref: emacs-mirror/emacs@d0a66f3e0e
2022-09-16 13:07:28 +02:00
Henrik Lissner
67a42e8222
bump: :ui modeline
emacsorphanage/evil-anzu@d3f6ed4773 -> emacsorphanage/evil-anzu@d1e98ee697
seagle0128/doom-modeline@ce9899f00a -> seagle0128/doom-modeline@bed80b82d7

Also improves Emacs 29 compatibility (see ref).

Ref: emacs-mirror/emacs@d0a66f3e0e
2022-09-16 13:07:28 +02:00
Henrik Lissner
3ae8c520d5
nit(vc-gutter): reformat annotated comments 2022-09-06 23:41:28 +02:00
Henrik Lissner
aa54383b5d
refactor: deprecate doom-etc-dir for doom-data-dir
doom-etc-dir will be renamed to doom-data-dir, to better reflect its
purpose, and align it with XDG_DATA_HOME (where it will be moved to in
v3, where Doom will begin to obey XDG directory conventions more
closely).
2022-08-14 20:43:35 +02:00
Henrik Lissner
a5c80fcb4b
refactor: deprecate doom-private-dir for doom-user-dir
- Deprecates the doom-private-dir variable in favor of doom-user-dir.
- Renames the pseudo category for the user's module: :private -> :user.
- Renames the doom-private-error error type to doom-user-error.

Emacs uses the term "user" to refer to the "things" in user space (e.g.
user-init-file, user-emacs-directory, user-mail-address, xdg-user-dirs,
package-user-dir, etc), and I'd like to be consistent with that. It also
has the nice side-effect of being slightly shorter. I also hope
'doom-user-error' will be less obtuse to beginners than
'doom-private-error'.
2022-08-14 20:43:35 +02:00
Henrik Lissner
ad6a3d0f33
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.
2022-08-14 20:43:35 +02:00
Henrik Lissner
0407621aff
refactor: deprecate EMACS2[89]+, NATIVECOMP, MODULES
To reduce redundancy, remove the maintenance hassle that version
constants would impose later on, and rely on built-in
facilities (featurep) more over global variables or doomisms, these
global constants have been deprecated in favor of Emacs "features":

- EMACS28+   -- replace with (> emacs-major-version 27)
- EMACS29+   -- replace with (> emacs-major-version 28)
- NATIVECOMP -- replace with (featurep 'native-compile)
- MODULES    -- replace with (featurep 'dynamic-modules)

(These constants will be formally removed when v3 is released. The IS-*
constants are likely next, but I haven't decided on their substitutes
yet)

I also decided to follow native-compile's example and provide features
for Emacs' system features (since system-configuration-features' docs
outs itself as a poor method to detect features):

- dynamic-modules
- jansson
- native-compile -- this one already exists, but will instead be removed
  if it's non-functional; i.e. (native-comp-available-p) returns nil.

These are now detectable using featurep, which is fast and built-in.
2022-08-14 20:43:35 +02:00