X-Git-Url: https://git.shemshak.org/~bandali/configs/blobdiff_plain/c84be134273e6baa0633d194c9524658e221ee7f..927b50b7aec2da105bd5125dec272a89e38663c3:/lisp/bandali-dired.el?ds=sidebyside diff --git a/lisp/bandali-dired.el b/lisp/bandali-dired.el index 394715d..9ed1030 100644 --- a/lisp/bandali-dired.el +++ b/lisp/bandali-dired.el @@ -25,10 +25,12 @@ ;;; Code: (with-eval-after-load 'dired - (csetq dired-dwim-target t - dired-listing-switches "-alh" - ls-lisp-dirs-first t - ls-lisp-use-insert-directory-program nil) + (csetq + dired-dwim-target t + dired-listing-switches "-alh" + dired-recent-directories-file (b/var "dired-recent-directories.el") + ls-lisp-dirs-first t + ls-lisp-use-insert-directory-program nil) (declare-function dired-dwim-target-directory "dired-aux") ;; easily diff 2 marked files @@ -55,6 +57,15 @@ (set-window-configuration wnd)))) (error "no more than 2 files should be marked")))) + (defun b/dired-start-process (program &optional args) + "Open current file with a PROGRAM." + ;; Shell command looks like this: "program [ARGS]... FILE" (ARGS + ;; can be nil, so remove it). + (declare-function dired-get-file-for-visit "dired") + (apply #'b/start-process + program + (remove nil (list args (dired-get-file-for-visit))))) + ;; local key bindings (define-key dired-mode-map (kbd "b") #'dired-up-directory) (define-key dired-mode-map (kbd "E") #'dired-ediff-files)