- Use simulated dired buffers for parent directory and directory preview
Prior to V2.0, `dirvish` command would create a ton of dired buffers because `dired-noselect` function were used to generate parent buffers and preview buffers for directory entries. Now these buffers are created internally by dirvish, meaning they’ll not showing up as dired/dirvish buffers in your buffer list.
core
:- bind
dirvish-dispatch
toq
- add basic perspective.el support
- allow user to have classic dired header (#96)
- basic mouse support
- add
dirvish-hide-cursor
user option (#119) - add
dirvish-redisplay-debounce
option
- bind
quick-access
:- add
dirvish-quick-access-function
option
- add
media
:- display media properties automatically
fd
:- allow user to select root directory for fd jump (#141)
- new option for default directory in dirvish-fd-jump (#138)
- interactive narrowing and orderless support
widgets
:- support mouse click on path header line segment
- add `dirvish-path-separators` option, closes #142
side
:- auto-expand to buffer file name (#113)
extras
:- add `dirvish-desktop-save-mode` (#133)
- add `dirvish-copy-remote-path` command, closes #110
vc
:- add `dirvish-vc-menu` prefix
- add `vc-log` `vc-blame` preview dispatchers
subtree
:- add indent guide
- make `dirvish-subtree-remove` an interactive function (#105)
- add subtree-up/clear commands
- fix(core): set `dirvish–this` after session rebuild
- fix(core): avoid unexpected fullscreen session
- fix(core): disable font-lock-mode in shell preview
- fix(core): allow wildcard as entry
- fix(core): do not run dired-mode-hook in parent buffers
- fix(core): session reuse issue #135 #136
- fix(core): do not reuse sessions in other frames
- fix(core): only revert window config when buffer is the current one
- fix(core): `cursor-type` in `wdired-mode`, closes #132
- fix(core): use local value of `other-window-scroll-buffer` (#131)
- fix(core): remove `mod` from `dirvish-audio-exts`, closes #114
- fix(core): revert buffer upon wdired exit
- fix(core): inhibit undo-tree when previewing files (#107)
- fix(core): use hollow cursor for evil normal state in wdired-mode (#104)
- fix(core): emacs -q -> emacs -Q (#84)
- fix(core): `window system should be used` warning on terminal (#93)
- fix(core): escape %-constructs in path mode line segments (#97)
- fix(core): mode-line not update on Emacs 27 (#93)
- fix(core): use `start-file-process-shell-command` to print dir
- fix(core): shell quote filenames for git-msg (#86)
- fix(side): issues on frame resize update / subtree expansion #140
- fix(side): show project in header line after project switching
- fix(tramp): support TRAMP connections with nongnu ls
- fix(yank): backup existed files instead of new files
- fix(subtree): revert buffer correctly in emerged buffer
- fix(subtree): ensure directory name ends with / on TRAMP
- fix(extras): autoload `dirvish-copy-*`, closes #129
- fix(extras): add offset when aligning text in TTY sessions (#115)
- fix(extras): args-out-of-range error on file-size attribute
- fix(fd): handle systems using `fdfind` by default (#122)
- fix(fd): improve GNU ls detection (#92)
- fix(collapse): endless while loop
- Extract
dirvish-media
fromdirvish
dirvish-auto-cache-threshold
->dirvish-media-auto-cache-threshold
- New faces:
dirvish-media-info-heading
,dirvish-media-info-property-key
- New command:
dirvish-media-properties
ls
: apply switches to current session on M-RET (#63)narrow
: C-g to cancel the narrowing / custom regex builderemerge
:- Add
dirvish-emerge-toggle-current-group
command to to toggle the visibility of the group - Add
dirvish-emerge-group-heading-map
, TAB ->dirvish-emerge-toggle-current-group
- Add
dirvish-emerge-next/previous-group
commands - Add some predicates
- Add
core
:- revert to `dirvish-mode` after quit `wdired-mode`
- guard `dired-current-directory` in dwim target (#78)
- scroll preview util buffer with `scroll-other-window`
- set buffer-modified-p to nil at startup
- kill session util buffers on dirvish-kill-buffer-h
- rename obsolete command in `dirvish-dispatch`
- highlight current line in any case
- reuse fullscreen sessions unconditionally (#64)
- kill overlapping session correctly (#64)
emerge
:- apply changes in transient menu to buffer
- infinite while loop
- expunge invisible overlay property
subtree
: revert subtrees after emerging groupsextras
: increase file size string length to 8 (#77)peek
: get candidate retriever at runtime (#70)bookmark
: void variable error (#75)narrow
: drop the overlay approach, accommodate subtree (#67)
- New extension:
dirvish-subtree
- New extension:
dirvish-collapse
- New extension:
dirvish-emerge
- New extension:
dirvish-fd
- New extension:
dirvish-narrow
- Require
transient.el
(inbuilt with Emacs 28)- Extract
dirvish-ls
fromdirvish-menu
- Extract
dirvish-bookmark
fromdirvish-menu
- Extract
dirvish-history
fromdirvish-menu
- Move
dirvish-dispatch
command fromdirvish-menu
to core.
- Extract
- Extract
dirvish-icons
fromdirvish-extras
The lazy rendering and async I/O mechanism got a lot of improvements, Dirvish even outperforms Dired in terms of opening big directories.
vc
: use fringe-bitmap to display vc-state attributeyank
: use TRAMP when SRC and DEST are in the same host (#37)core
: adddirvish-open-with-programs
user optioncore
: adddirvish-mode-line-position
user optioncore
: deprecatedirvish-dired
command
core
: remove killed buffers fromdv-roots
core
: hide dired header when exiting wdired-modecore
: ensurequit-window
kill all dirvish bufferscore
: incorrectdefault-directory
forfind-file
(#53)core
: do not quote filename when open externally (#51)core
: Emacs crashes from dead index dirvish buffer (#49)core
: uppercased file extensionscore
: file name error on external file openingcore
: make header/footer window dedicated (#46)extras
: wrong-type-argument error infile-size-human-readable
core
: ensure the right cursor position when resumingcore
: use new dirvish session for bookmark restoringcore
: void :child prop caused bywith-ivy-window
core
: ensure cursor hiding inevil-mode
(#43)
- Add TRAMP support for
dirvish-yank
and friends
extras
: more mode-line segments (#42)extras
: adddirvish-switch-layout
command (#33)core
: add symlink mode line (#41)extras
: makefile-size
files count in directories (#40)core
: adddirvish-dwim
commmandcore
: add auto cache facility (#28)extras
: adddirvish-go-forward/backward-history
cmds (#32)yank
: adddirvish-yank-overwrite-existing-files
option (#38)core
: addfree-space
mode-line segment #31)menu
: adddirvish-quicksort
command (#27)core
: adddirvish-hide-details
user optionmenu
: adddirvish-ls-switches-menu
prefixside
: adddirvish-side-follow-project-switch
option (#24)side
: make window ofdirvish-side
dedicatedside
: adddirvish-side-follow-buffer-file
optionpreview
: support remote filescore
: adddirvish-enabled-features-on-remote
optionextras
: adddirvish-total-file-size
commandextras
: adddirvish-copy-file-true-path
command
core
: avoid util buffer get created after session killcore
: remove builtin attributes from dirvish–available-attrscore
: remove redundant session initializationcore
: find-dired mode-line segmentcore
: retrive path for auto cache correctlyextras
: file permission erroryank
: remote-to-remote handlercore
: preserve size of header window when showing transientyank
: ensure new names when not overwrite (#38)yank
: ensure live source file buffersyank
: autoload, recursive hardlink, errors on name collisionmenu
: add dirvish-quicksort to available-prefixsvc
: vc-info modeline segmentcore
: get correct dwim targetcore
: setface-remapping-alist
only when it’s non-nil (#36)core
: reuse old session when callingdirvish--noselect
(#35)core
: inhibit vc follow link prompt while previewing (#25)core
: initializedirvish
from side window correctlyside
: remember new project rootcore
: raise error for overlapping fullscreen sessioncore
: goto correct child-entryside
: problematicdelete-window
callcore
: get project root properlycore
: ensure correct index pathyank
: disable file size calculation upon task start (#23)core
: slow navigation on TRAMP (#21)peek
: invalid metadata in ivy-read (#20)
- support asynchronous Dired listing.
- scope awareness
side
: enable isolated atts/preview-dps/mode-line-formatside
: adddirvish-side-open-file-window-function
optionvc
: addvc-info
mode line segmentextras
: addexpand-state
attributepeek
: supportivy-mode
and builtinicomplete[-vertical]-mode
core
: allow user to disable the history trackingcore
: adddirvish-hl-line
face
core
: ensure correct cache image path on Windows (#15)core
: video thumbnail generation (#19)vc
: adjust position ofvc-state
attributeside
: ensure preview update on fullscreen toggleside
: use fixed width for side windowside
: keep the side window alive ondelete-other-windows
core
: avoid void session error on window quitcore
: error at initialization whendired-hide-details-mode
is turned offcore
: ensure retriving dwim-target from live windowcore
: hide cursor in utility buffers
First release.