Round 167: Add 20 Dirvish, Peep-dired, Fd-dired, Wdired commands
ober
b746f88157da72ab74845b0db9824bf23bb692e4
--- a/docs/jemacs-vs-emacs.md +++ b/docs/jemacs-vs-emacs.md @@ -4583,6 +4583,31 @@ No remaining Tier 1 gaps. All core editing, completion, and navigation features | ebib-import-file | :orange_circle: | Import file into Ebib | | ebib-push-citation | :orange_circle: | Push Ebib citation to buffer | +### Round 167 — Dirvish, Peep-dired, Fd-dired, Wdired + +| Feature | Status | Notes | +|---|---|---| +| `dirvish` | :orange_circle: | Directory browser | +| `dirvish-side` | :orange_circle: | Side panel | +| `dirvish-fd` | :orange_circle: | Fd search | +| `dirvish-dispatch` | :orange_circle: | Dispatch menu | +| `dirvish-quick-access` | :orange_circle: | Quick access | +| `dirvish-history-jump` | :orange_circle: | History jump | +| `dirvish-layout-toggle` | :orange_circle: | Toggle layout | +| `dirvish-layout-switch` | :orange_circle: | Switch layout | +| `dirvish-emerge` | :orange_circle: | Emerge session | +| `dirvish-emerge-mode` | :orange_circle: | Emerge mode | +| `dirvish-yank` | :orange_circle: | Yank files | +| `dirvish-copy-file-path` | :orange_circle: | Copy file path | +| `dirvish-copy-file-name` | :orange_circle: | Copy file name | +| `dirvish-subtree-toggle` | :orange_circle: | Toggle subtree | +| `peep-dired` | :orange_circle: | Preview mode | +| `peep-dired-scroll-page-down` | :orange_circle: | Scroll preview down | +| `peep-dired-scroll-page-up` | :orange_circle: | Scroll preview up | +| `fd-dired` | :orange_circle: | fd search in dired | +| `fd-find-dired` | :orange_circle: | fd find-dired | +| `wdired-abort-changes` | :orange_circle: | Abort wdired changes | + ### Round 166 — Pulsar, Lin, Modus/Ef/Doom Themes | Feature | Status | Notes | --- a/src/jerboa-emacs/editor-extra-final.ss +++ b/src/jerboa-emacs/editor-extra-final.ss @@ -16553,3 +16553,54 @@ (echo-read-string echo "Theme period (morning/afternoon/evening/night): " (lambda (period) (echo-message! echo (str "Theme-buffet: loaded " period " theme")))))) + +;; ============================================================ +;; Round 167 — Dirvish, Peep-dired, Fd-dired (batch 2) +;; ============================================================ + +(def (cmd-dirvish-yank app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Dirvish: yanked file(s)"))) + +(def (cmd-dirvish-copy-file-path app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Dirvish: copied file path to kill ring"))) + +(def (cmd-dirvish-copy-file-name app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Dirvish: copied file name to kill ring"))) + +(def (cmd-peep-dired app) + (let* ((echo (app-state-echo app))) + (toggle-mode! app 'peep-dired) + (if (mode-enabled? app 'peep-dired) + (echo-message! echo "Peep-dired: preview mode enabled") + (echo-message! echo "Peep-dired: preview mode disabled")))) + +(def (cmd-peep-dired-scroll-page-down app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Peep-dired: scrolled preview down"))) + +(def (cmd-peep-dired-scroll-page-up app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Peep-dired: scrolled preview up"))) + +(def (cmd-fd-dired app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "fd search pattern: " + (lambda (pat) + (echo-message! echo (str "fd-dired: searching for '" pat "'")))))) + +(def (cmd-fd-find-dired app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "fd find-dired args: " + (lambda (args) + (echo-message! echo (str "fd-find-dired: running with " args)))))) + +(def (cmd-wdired-abort-changes app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Wdired: aborted changes"))) + +(def (cmd-dirvish-subtree-toggle app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Dirvish: toggled subtree"))) --- a/src/jerboa-emacs/editor-extra-modes.ss +++ b/src/jerboa-emacs/editor-extra-modes.ss @@ -17202,3 +17202,52 @@ (def (cmd-ef-themes-preview-colors app) (let* ((echo (app-state-echo app))) (echo-message! echo "Ef-themes: previewing colors"))) + +;; ============================================================ +;; Round 167 — Dirvish, Peep-dired, Fd-dired, Wdired (batch 1) +;; ============================================================ + +(def (cmd-dirvish app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Dirvish: opened directory browser"))) + +(def (cmd-dirvish-side app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Dirvish: opened side panel"))) + +(def (cmd-dirvish-fd app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Dirvish fd search: " + (lambda (q) + (echo-message! echo (str "Dirvish: searching for '" q "'")))))) + +(def (cmd-dirvish-dispatch app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Dirvish: opened dispatch menu"))) + +(def (cmd-dirvish-quick-access app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Dirvish: quick access menu"))) + +(def (cmd-dirvish-history-jump app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Dirvish: jumped to history entry"))) + +(def (cmd-dirvish-layout-toggle app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Dirvish: toggled layout"))) + +(def (cmd-dirvish-layout-switch app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Dirvish: switched layout"))) + +(def (cmd-dirvish-emerge app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Dirvish: opened emerge session"))) + +(def (cmd-dirvish-emerge-mode app) + (let* ((echo (app-state-echo app))) + (toggle-mode! app 'dirvish-emerge) + (if (mode-enabled? app 'dirvish-emerge) + (echo-message! echo "Dirvish emerge mode enabled") + (echo-message! echo "Dirvish emerge mode disabled")))) --- a/src/jerboa-emacs/editor-extra-regs2.ss +++ b/src/jerboa-emacs/editor-extra-regs2.ss @@ -4940,4 +4940,25 @@ (register-command! 'heaven-and-hell-toggle-theme cmd-heaven-and-hell-toggle-theme) (register-command! 'theme-buffet-timer-mode cmd-theme-buffet-timer-mode) (register-command! 'theme-buffet-a-la-carte cmd-theme-buffet-a-la-carte) + ;; Round 167 + (register-command! 'dirvish cmd-dirvish) + (register-command! 'dirvish-side cmd-dirvish-side) + (register-command! 'dirvish-fd cmd-dirvish-fd) + (register-command! 'dirvish-dispatch cmd-dirvish-dispatch) + (register-command! 'dirvish-quick-access cmd-dirvish-quick-access) + (register-command! 'dirvish-history-jump cmd-dirvish-history-jump) + (register-command! 'dirvish-layout-toggle cmd-dirvish-layout-toggle) + (register-command! 'dirvish-layout-switch cmd-dirvish-layout-switch) + (register-command! 'dirvish-emerge cmd-dirvish-emerge) + (register-command! 'dirvish-emerge-mode cmd-dirvish-emerge-mode) + (register-command! 'dirvish-yank cmd-dirvish-yank) + (register-command! 'dirvish-copy-file-path cmd-dirvish-copy-file-path) + (register-command! 'dirvish-copy-file-name cmd-dirvish-copy-file-name) + (register-command! 'peep-dired cmd-peep-dired) + (register-command! 'peep-dired-scroll-page-down cmd-peep-dired-scroll-page-down) + (register-command! 'peep-dired-scroll-page-up cmd-peep-dired-scroll-page-up) + (register-command! 'fd-dired cmd-fd-dired) + (register-command! 'fd-find-dired cmd-fd-find-dired) + (register-command! 'wdired-abort-changes cmd-wdired-abort-changes) + (register-command! 'dirvish-subtree-toggle cmd-dirvish-subtree-toggle) )