Commit graph

381 commits

Author SHA1 Message Date
Henrik Lissner
037b018cdd
feat: add .doommodule files
These optional dotfiles indicate the root of a module or module
group (:lang), and will later contain module metadata. They will also
serve as an alternative to packages.el and doctor.el, and will aide the
parts of the v3.0 module API concerned with resolving the current module
from a path (`doom-module-from-path`), which currently rely too heavily
on parsing path strings.

For now, however, they're simply placeholders.
2024-09-14 20:47:39 -04:00
Sau P
73460f42fd fix(dired): require needed for `dirvish-side'
This prevents getting load errors when calling the command
`+dired/dirvish-side-and-follow' before `dirvish' has been
loaded.
2024-09-12 13:12:24 -07:00
Ag Ibragimov
f27a85ed35
module: add :emacs eww
Close: #6866
Co-authored-by: hlissner <hlissner@users.noreply.github.com>
2024-09-11 19:46:16 -04:00
Ajai Nelson
4790db6448 fix(dired): typo in command name
`<leader> o p` is bound to `+dired/dirvish-side-and-follow`, but the
command was previously called `+dired/dirvish-side-or-follow` instead.
2024-09-10 15:27:18 -07:00
Henrik Lissner
47c8c905b8
feat(dired): open dirvish sidebar w/ '<leader> o {p,P}'
A new alternative to neotree and treemacs.
2024-09-09 18:52:45 -04:00
Henrik Lissner
07eae64509
refactor(vc): move git-commit to magit module
`git-commit` is no longer distributed with `magit` and no longer
declares its dependencies, causing "file missing: with-editor" and
similar errors for folks who don't have magit installed. Also, VC's
commit workflows don't utilize the mode, so there's no reason to keep it
in this module.

Ref: magit/magit@c170fcf399
Ref: #8003
2024-09-09 18:08:28 -04:00
Henrik Lissner
1ff37f9fa4
fix(dired): preserve buffers on dirvish-find-entry-a
Fix: #8038
2024-09-07 13:57:58 -04:00
Henrik Lissner
70fd17ebfd
fix(vc): smerge localleader keybinds
The keybinding in 682f151 was being overwritten. I'll simply copy the
keymap into the module, until I can devise a more elegant solution.

Amend: 682f151176
Ref: #5954
2024-09-01 18:25:37 -04:00
Henrik Lissner
682f151176
feat(vc): integrate smerge-mode
Activates smerge-mode if the file contains merge conflict markers. Also
turns binds the localleader to `smerge-mode-map` when it's active.

Also removes an unused leader binding (which will never be set because
:ui hydra was removed in b08c2c7).

Amend: b08c2c745f
Close: #5954
2024-09-01 17:29:14 -04:00
Henrik Lissner
a8f116bb6b
bump: magit forge orgit orgit-forge
magit/forge@30f181f785 -> magit/forge@35cc600d62
magit/magit@2da34f1317 -> magit/magit@0aa26864e3
magit/orgit-forge@a989b2b54d -> magit/orgit-forge@2718a6aaf0
magit/orgit@29a0f37e5c -> magit/orgit@59d21fdb21

For Magit's 4.1.0 release, and to repin away from these packages'
recently removed 'melpa' branches (see #8007).

Ref: #8003
Ref: #8007
2024-08-31 21:51:59 -04:00
Henrik Lissner
34cc0c9d86
tweak(dired): ESC to exit wdired-mode
Fix: #8004
2024-08-30 18:56:44 -04:00
Henrik Lissner
14478064af
refactor(dired,vc-gutter): setup for tty frames
A recent commit (c53f63b) allows me to simplify this a bit.

Ref: c53f63b96e
Ref: #8001
2024-08-28 17:56:55 -04:00
Henrik Lissner
c99e9b8654
fix(dired): initial pop-in for vc-state
Ref: hlissner/dirvish#1
2024-08-28 04:55:17 -04:00
Henrik Lissner
1fad466c12
fix(dired): "Attempt to delete minibuffer or sole ordinary window"
Makes `+dired--cleanup-dirvish-h` more robust, and only kick in for
dirvish-side or full-frame dirvish sessions.

Amend: e82dab3257
2024-08-25 17:44:29 -04:00
Henrik Lissner
b69e7d1780
tweak(dired): bind gl, h, l, & arrows to directory nav 2024-08-22 21:48:08 -04:00
Henrik Lissner
1e73754dad
refactor(dired): dirvish-hide-cursor
Give the same treatment I give dirvish-hide-details to
dirvish-hide-cursor (see ddfb0cc).

Ref: ddfb0cc3cc
Ref: #6760
2024-08-22 12:32:14 -04:00
Henrik Lissner
fe15b1daf3
fix(dired): remove keybind to nonexistent command
Amend: e82dab3257
Co-authored-by: kalwk <kalwk@users.noreply.github.com>
2024-08-21 05:02:43 -04:00
Henrik Lissner
4ed3e75f5f
fix(dired): fail gracefully if pdf-tools isn't installed
Will throw a "void-variable pdf-info-epdfinfo-program" error if
pdf-tools isn't installed (or `:tools pdf` is disabled).
2024-08-21 02:15:40 -04:00
Henrik Lissner
a6c3c6842a
refactor(dired): use dirvish-preview-environment
- Remove +dired--suppress-hooks-in-previews-a, because Dirvish already
  does this.
- Exploit dirvish-preview-environment instead of hardcoding the
  enable-local-variables let-binding for the child process. Its defaults
  are more reasonable.
2024-08-21 02:11:55 -04:00
Henrik Lissner
f3e9920e80
bump: magit
magit/magit@3b37048688 -> magit/magit@2da34f1317

- Whoops. The HEAD of magit's melpa branch is auto-generated and rebased
  to the front, so pinning to its HEAD will always eventually break.

Fix: #8007
Amend: 5e70fe1697
2024-08-21 00:18:06 -04:00
Henrik Lissner
d1e5a285fe
fix(vc): git-timemachine: enable font-lock-mode 2024-08-20 16:44:23 -04:00
Henrik Lissner
1c6288e2b7
perf(dired): suppress mode hooks when previewing files
Ref: #6760
2024-08-19 16:21:45 -04:00
Henrik Lissner
22f37e84dc
bump: :emacs
emacs-straight/undo-tree@5e9f4c9234 -> emacs-straight/undo-tree@d8f72bbe7d
emacs-straight/vundo@a18d63a9a1 -> emacs-straight/vundo@5374125dc0
ideasman42/emacs-undo-fu-session@75d78310c8 -> ideasman42/emacs-undo-fu-session@beb0e285d0
ideasman42/emacs-undo-fu@ea902716f3 -> ideasman42/emacs-undo-fu@dbb3e4b699
magit/git-modes@d96fa7a3c7 -> magit/git-modes@f99010bbeb
magit/magit@e777822720 -> magit/magit@55656a31cc
2024-08-19 16:21:45 -04:00
Henrik Lissner
ddfb0cc3cc
refactor(dired): dirvish-hide-details
Prior to this, I used window-width to determine whether file details
should be hidden, but there was a jarring delay on `dirvish-setup-hook`
that made the effect look awful (especially when walking up and down
file trees).

This changes `dirvish-hide-details` to accept a list of contexts where
it should be enabled, which I think is more elegant. Of course,
`dirvish-hide-details` will fall back on old behavior if set to `t` or
`nil`.

I'll consider upstreaming it later (and perhaps doing similar for
`dirvish-hide-cursor`).

Ref: #6760
2024-08-19 02:15:05 -04:00
Henrik Lissner
d4ad14b75d
fix(dired): fallback to default if dirvish-use-mode-line == nil
Currently, setting `dirvish-use-mode-line` to nil blanks out the
mode-line, and setting it to `t` makes Dirvish use its own mode-line. To
get the default mode-line, `dirvish-mode-line-format` needs to be set to
nil, but even then Dirvish will prepend a bar to the default-mode-line
so it can control its height, which I think is a confusing chain of
causes and effects.

This changes the behavior such that `dirvish-use-mode-line` controls
whether `dirvish-mode-line-format` will be used or not. I'll upstream
this to hlissner/dirvish later.

Fix: #8000
2024-08-18 16:31:21 -04:00
Henrik Lissner
967586fcae
fix(dired): dirvish-{mode,header}-line-height = doom-modeline-height
Ref: #8000
2024-08-18 16:20:20 -04:00
Henrik Lissner
e82dab3257
refactor!(dired): use dirvish, drop +ranger
BREAKING CHANGE: This drops the Dired module's +ranger flag and replaces
much of this module's innards with (my maintained fork of) Dirvish,
which provides a spiritually similar (if not superior) experience to
Ranger. Plus, Dirvish makes most of our dired plugins unnecessary.

Also, I am now registering myself as this module's maintainer now that I
dogfood and maintain Dirvish.

Close: #6760
Co-authored-by: alexluigit <alexluigit@users.noreply.github.com>
Co-authored-by: hpfr <hpfr@users.noreply.github.com>
Co-authored-by: LemonBreezes <LemonBreezes@users.noreply.github.com>
Co-authored-by: pharcosyle <pharcosyle@users.noreply.github.com>
2024-08-18 03:57:12 -04:00
Henrik Lissner
5e2e886b35
nit: comment revision & reformatting 2024-08-15 23:18:47 -04:00
Henrik Lissner
4fcf332749
refactor: generalize fd/ripgrep vars & options
I intend to eventually replace projectile with project.el, so these
doom-projectile-* variables need to be generalized, starting with the
fd/ripgrep executable paths.

ALong with that, this refactors Doom's projectile-generic-command to
lean more on built-in fd support in projectile, where possible (fewer
wheels reinvented).

Ref: doomemacs/core#1
2024-08-09 21:03:37 -04:00
Henrik Lissner
0f30e1eca5
bump: :ui vc-gutter :tools magit :emacs vc
dgutov/diff-hl@f66345ed1f -> dgutov/diff-hl@57d9d4e3e1
magit/forge@9edfcb2c15 -> magit/forge@21d410c810
magit/magit@9d4192b7b1 -> magit/magit@e777822720
2024-07-29 02:03:25 -04:00
Henrik Lissner
bc948c38c2
refactor(vc): remove hydra
hydra was removed in b08c2c7, so I'm no longer supporting hydra
workflows.

Amend: b08c2c745f
2024-07-28 15:21:13 -04:00
Henrik Lissner
4fa24d1533
bump: :tools magit :emacs vc
emacsmirror/git-timemachine@5ed73c3831 -> emacsmirror/git-timemachine@3780835fcd
magit/forge@67314e2f83 -> magit/forge@9edfcb2c15
magit/git-modes@52ea2a1281 -> magit/git-modes@d96fa7a3c7
magit/magit@b9948f9571 -> magit/magit@9d4192b7b1
2024-07-20 14:31:53 -04:00
Samuel Tschiedel
4af60fe066 feat(dired): add subtree bindings to dirvish
The structure follows `dired`'s evil-collection's.

Ref: 5886bab852/modes/dired/evil-collection-dired.el (L205-L212)
2024-06-23 15:55:58 -04:00
Samuel Tschiedel
0f09d6f748 fix(dired): update dirvish keybindings
This is another temporary fix to buy us more time until doomemacs#6760
lands.
2024-06-23 15:55:58 -04:00
Henrik Lissner
1c18a0cc7e
bump: :emacs undo
emacs-straight/undo-tree@f9e7eac16f -> emacs-straight/undo-tree@5e9f4c9234
emacs-straight/vundo@10d011fb05 -> emacs-straight/vundo@a18d63a9a1
ideasman42/emacs-undo-fu-session@2b355c9d39 -> ideasman42/emacs-undo-fu-session@75d78310c8
ideasman42/emacs-undo-fu@04961ba775 -> ideasman42/emacs-undo-fu@ea902716f3
2024-06-20 18:28:13 -04:00
Henrik Lissner
6ba70df105
docs(dired): update flags & package listing
Close: #7851
Co-authored-by: isentropic <isentropic@users.noreply.github.com>
2024-06-20 18:28:12 -04:00
Henrik Lissner
5a8d65bc51
bump: :tools magit :emacs vc
alphapapa/magit-todos@332ce763f7 -> alphapapa/magit-todos@501c8db90a
magit/forge@ad94b5665d -> magit/forge@c3675fd068
magit/git-modes@3cc94974c0 -> magit/git-modes@52ea2a1281
magit/magit@b5637d665c -> magit/magit@f9268a9598
2024-06-03 16:22:10 -04:00
Henrik Lissner
57f43e0953
fix(vc): *vc-{diff,change-log}* popup rules
The former rules weren't proccing on these buffers. Also
changes *vc-diff* popups to resize based on contents.
2024-04-05 19:05:54 -04:00
Henrik Lissner
beb6e87636
bump: :tools magit :emacs vc
emacsmirror/git-timemachine@ac933e5cd2 -> emacsmirror/git-timemachine@5ed73c3831
magit/forge@2a3b41eb62 -> magit/forge@ad94b5665d
magit/magit@0e8f25a8d8 -> magit/magit@b5637d665c
2024-04-03 15:55:40 -04:00
StrawberryTea
c03113906a
fix(dired): hide flycheck temp files 2024-03-05 01:11:19 -05:00
Henrik Lissner
a2484538b4
bump: :tools magit :emacs vc
magit/forge@ba35ffc9ba -> magit/forge@3fc6c362b0
magit/git-modes@4a61a9b86d -> magit/git-modes@3cc94974c0
magit/magit@54d37dc14c -> magit/magit@b68e0a3c33

Ref: magit/forge@3fc6c362b0
2024-02-07 00:33:50 -05:00
Filipe Regadas
bd6a382b18
fix(dired): void-variable dired-omit-files error
Caused by a recent bump to :emacs dired (see e242ac9).

Fix: #6562
Amend: e242ac9548
2024-02-05 19:29:24 -05:00
Henrik Lissner
e242ac9548
bump: :emacs
alexluigit/dirvish@4fe9c00894 -> alexluigit/dirvish@119f9f59a6
emacs-straight/dired-git-info@9461476a28 -> emacs-straight/dired-git-info@6b6f2a5d71
emacs-straight/vundo@24271862a2 -> emacs-straight/vundo@10d011fb05
emacsmirror/git-timemachine@d8ffd0d7cc -> emacsmirror/git-timemachine@ac933e5cd2
ideasman42/emacs-undo-fu-session@a6c4f73bc2 -> ideasman42/emacs-undo-fu-session@2b355c9d39
ideasman42/emacs-undo-fu@0e74116fd5 -> ideasman42/emacs-undo-fu@04961ba775
magit/git-modes@f0a0154bf4 -> magit/git-modes@4a61a9b86d
magit/magit@4881835572 -> magit/magit@54d37dc14c
purcell/diredfl@f9140b2c42 -> purcell/diredfl@f6d599c308
purcell/ibuffer-vc@1388d2ea18 -> purcell/ibuffer-vc@66d0226733
rainstormstudio/nerd-icons-dired@4a068884bf -> rainstormstudio/nerd-icons-dired@c1c7348863
rmuslimov/browse-at-remote@c020975a89 -> rmuslimov/browse-at-remote@76aa27dfd4
stsquad/dired-rsync@7940d9154d -> stsquad/dired-rsync@5bcb851f3b
2024-02-05 17:21:21 -05:00
Henrik Lissner
659f7bfc71
refactor!: deprecate IS-* OS constants
BREAKING CHANGE: This deprecates the IS-(MAC|WINDOWS|LINUX|BSD) family
of global constants in favor of a native `featurep` check:

  IS-MAC      ->  (featurep :system 'macos)
  IS-WINDOWS  ->  (featurep :system 'windows)
  IS-LINUX    ->  (featurep :system 'linux)
  IS-BSD      ->  (featurep :system 'bsd)

The constants will stick around until the v3 release so folks can still
use it -- and there are still some modules that use it, but I'll phase
those uses out gradually.

Fix: #7479
2024-02-04 17:54:29 -05:00
Henrik Lissner
7cae2b01f6
bump: :emacs ibuffer undo
emacs-straight/undo-tree@16f4121032 -> emacs-straight/undo-tree@f9e7eac16f
emacs-straight/vundo@26c929229a -> emacs-straight/vundo@24271862a2
ideasman42/emacs-undo-fu-session@7b3fd0647d -> ideasman42/emacs-undo-fu-session@a6c4f73bc2
ideasman42/emacs-undo-fu@0e22308de8 -> ideasman42/emacs-undo-fu@0e74116fd5
purcell/ibuffer-projectile@ecbe482804 -> purcell/ibuffer-projectile@710ecac157
purcell/ibuffer-vc@9204001d1c -> purcell/ibuffer-vc@1388d2ea18
2023-09-20 20:23:59 +02:00
Noisy Computation
2b08b2da33 bump: :emacs vc
magit/magit@97a95f7007 -> magit/magit@4881835572

The pinned version of `magit` in `:tools magit` needs be the same
as that of `git-commit` in `:emacs vc`.

`straight.el` prepares the repo only once, and if `git-commit` is
processed first, its pinned version wins out and the more recent
pinning of `magit` is ignored.

As noted in #7363, processing order may be non-deterministic, so the
inconsistent pinning may not be apparent on every system.

Fix: #7363
Amend: #7277
Amend: 7c63b353d2
2023-09-19 23:31:32 +02:00
Jdogzz
2be3cf4b38
bump: nerd-icons-dired
rainstormstudio/nerd-icons-dired@b760520821 -> rainstormstudio/nerd-icons-dired@4a068884bf

Fix: #5579
Ref: rainstormstudio/nerd-icons-dired@4a068884bf
Ref: rainstormstudio/nerd-icons-dired#14
2023-09-17 05:07:52 +02:00
Henrik Lissner
88bb045388
docs(*): replace all-the-icons with nerd-icons
Also colorizes the leading icon in notices.
2023-09-16 20:19:11 +02:00
Henrik Lissner
8e1f5509ea
fix(undo): add emacs version check for vundo 2023-09-16 05:30:06 +02:00
Ellis Kenyő
9787022b83
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
2023-09-14 01:03:55 +02:00