Commit Graph

146 Commits

Author SHA1 Message Date
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
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
1ff37f9fa4 fix(dired): preserve buffers on dirvish-find-entry-a
Fix: #8038
2024-09-07 13:57:58 -04:00
34cc0c9d86 tweak(dired): ESC to exit wdired-mode
Fix: #8004
2024-08-30 18:56:44 -04:00
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
c99e9b8654 fix(dired): initial pop-in for vc-state
Ref: hlissner/dirvish#1
2024-08-28 04:55:17 -04:00
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
b69e7d1780 tweak(dired): bind gl, h, l, & arrows to directory nav 2024-08-22 21:48:08 -04:00
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
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
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
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
1c6288e2b7 perf(dired): suppress mode hooks when previewing files
Ref: #6760
2024-08-19 16:21:45 -04:00
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
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
967586fcae fix(dired): dirvish-{mode,header}-line-height = doom-modeline-height
Ref: #8000
2024-08-18 16:20:20 -04:00
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
5e2e886b35 nit: comment revision & reformatting 2024-08-15 23:18:47 -04:00
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
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
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
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
c03113906a fix(dired): hide flycheck temp files 2024-03-05 01:11:19 -05:00
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
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
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
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
88bb045388 docs(*): replace all-the-icons with nerd-icons
Also colorizes the leading icon in notices.
2023-09-16 20:19:11 +02:00
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
0b921c2d34 bump: :editor dirvish
alexluigit/dirvish@73dcaa404d -> alexluigit/dirvish@4fe9c00894

This "lateral" bump buys us more time until doomemacs/doomemacs#6760 lands.

`dirvish`'s repository apparently rebased the commit we have pinned.
Visiting it gives us:
```
This commit does not belong to any branch on this repository, and may
belong to a fork outside of the repository.
```

Te new pinned version references the same commit contents, but on a new
position. They're correctly identified as identical by git. The new
commit also contains an explicitly reference to the old one:

```
Former-commit-id: 73dcaa4
```

Ref: 73dcaa404d..4fe9c00894
2023-02-18 01:18:36 -05:00
TEC
5ac2a5258b docs: change link format 2022-10-05 01:01:19 +02:00
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
24623f9959 refactor!(dired): move diff-hl config to :ui vc-gutter
BREAKING CHANGE: users who are used to diff-hl displaying diffs in dired
will notice they have vanished. diff-hl's conig has been moved to :ui
vc-gutter +diff-hl (added in 27a448b). Enable it to get it back.

Ref: 27a448b04b
2022-08-09 16:30:43 +02:00
27a448b04b feat(vc-gutter): add +diff-hl backend
This adds an alternative backend to the :ui vc-gutter module, enabled
with the +diff-hl flag. In the future, I intend for diff-hl to replace
git-gutter, as it is slightly faster and depends on more native
functionality (vc.el), but it's still a little buggy. It will remain
opt-in until those issues are sorted out.
2022-08-08 18:23:47 +02:00
1abcf913aa revert: fix(docs): set mode in file-local vars
emacs-straight/org-mode@e22b4eb7aa introduced a breaking change that
made it impossible to rely on .dir-locals.el to change org-mode buffers
in $EMACSDIR to doom-docs-org-mode (without infinite recursion), so we
used file-local variables in 7e400ab.

emacs-straight/org-mode@215de6176b reverted that change, so we can use
.dir-locals.el again, and this is my preference, since it requires less
boilerplate across our hundreds of org files.

Ref: emacs-straight/org-mode@215de6176b
Ref: emacs-straight/org-mode@e22b4eb7aa
Revert: 7e400abdc0
2022-08-07 19:08:07 +02:00
1f8bf7accb merge: rewrite-docs
I've omitted docs/*.org from this merge, as there is still work left to
do there, but I am pushing the module docs early so folks can benefit
from the new docs sooner.
2022-08-03 03:27:50 +02:00
7e400abdc0 fix(docs): set mode in file-local vars
Due to emacs-straight/org-mode@e22b4eb, a replacement major mode (for
org-mode) can no longer be specified from .dir-locals.el, as it spirals
into infinite recursion. Therefore, a mode: line is needed in all Doom
docs.

Ref: emacs-straight/org-mode@e22b4eb7aa
2022-08-03 02:46:33 +02:00
1255315bfc refactor(docs): replace nav menus with virtual one
Now that the header is dynamically generated (when doom-docs-mode is
active), a literal header is unnecessary.
2022-08-02 19:37:07 +02:00
e77a45bc22 docs: use lowercase keywords
As per Org's new defaults, which we're adopting elsewhere, so may as
well adopt it here.
2022-08-02 16:23:43 +02:00
1e6d5c3f65 feat(dired): add +dirvish option
Fix: #6397
2022-06-23 13:47:22 +02:00
fc868105ce fix(dired): prevent auto-revert in dired-virtual-mode
dired-virtual-revert (the revert handler for dired-virtual buffers)
simply errors out and prompts the user if they want to switch to a
"real" dired buffer. This isn't helpful the automated nature of
auto-revert, so silence it.
2022-02-14 21:24:46 +01:00
ee33bff115 bump: :emacs
dgutov/diff-hl@6fa3af0843 -> dgutov/diff-hl@4a08b02afe
ideasman42/emacs-undo-fu-session@1810251485 -> ideasman42/emacs-undo-fu-session@edf050d613
magit/magit@1eb183e767 -> magit/magit@846d153a2e
purcell/diredfl@4ca32658ae -> purcell/diredfl@f9140b2c42
2022-02-02 01:56:04 +01:00
7246db457c docs: replace doom-source with doom-repo links
I will later use "source" to refer to module sources, so better we avoid
the terminology for now.
2022-02-01 18:55:27 +01:00
8342db4f35 tweak(dired): all-the-icons-dired-monochrome = nil
To be consistent with all-the-icons uses elsewhere.

Ref: #5704
Co-authored-by: Anh T Nguyen <teeann@users.noreply.github.com>
2022-01-28 15:27:33 +01:00
e5213f20e5 nit: fix several documentation typos 2022-01-10 02:21:49 +01:00
96390ef3b9 tweak(dired): don't auto-revert when remote
On slow connections `dired-auto-revert-buffer` causes excessive
slowdowns; this limits its behavior to local files.
2022-01-03 18:06:23 +01:00
da5c46595c bump: :tools dired
clemera/dired-git-info@91d57e3a4c -> emacs-straight/dired-git-info@9461476a28

Straight created a mirror for dired-git-info at
emacs-straight/dired-git-info and now prioritizes this over the ELPA
recipe, so old commit won't be found.

Ref: emacs-straight/dired-git-info@9461476a28
Fix: #5913
Close: #5917
Co-authored-by: Aryslan Yakshibaev <yak.aryslan.1999@gmail.com>
2022-01-03 16:51:51 +01:00
80bdd2774f bump: :emacs dired
clemera/dired-git-info@9461476a28 -> clemera/dired-git-info@91d57e3a4c
2021-12-18 01:13:20 +01:00
8b8b18448f bump: :emacs
dgutov/diff-hl@40c89a7b0d -> dgutov/diff-hl@6fa3af0843
ideasman42/emacs-undo-fu@34b27c01da -> ideasman42/emacs-undo-fu@ab8bc10e42
magit/magit@aba0a59611 -> magit/magit@1eb183e767
wyuenho/all-the-icons-dired@a758766878 -> wyuenho/all-the-icons-dired@5e9b097f99
2021-12-14 01:21:33 +01:00
88844e9cec docs: simplify internal docs links
Fewer links means less confusion.

- Merge doom-issue and doom-commit links into doom-ref (for auto-linking
  Issue/PR/commit references).
- Merge doom-module-source and doom-docs-source links into doom-source.
- Rename doom-report-issue to doom-report.
- Use '!' as the icon for module issues link.
- Remove doom-repo (replaced with "doom:*" in :lang org module).
- Add doomdir and emacsdir links to :lang org module.
2021-11-21 20:04:28 +01:00