summaryrefslogtreecommitdiffstats
path: root/lisp/init-dired.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/init-dired.el')
-rw-r--r--lisp/init-dired.el11
1 files changed, 10 insertions, 1 deletions
diff --git a/lisp/init-dired.el b/lisp/init-dired.el
index 2195402..ac6f24b 100644
--- a/lisp/init-dired.el
+++ b/lisp/init-dired.el
@@ -1,3 +1,11 @@
+(defun dired-open-or-shell-command ()
+ (interactive)
+ (if (eq system-type 'darwin)
+ ;; call open directly on darwin
+ (dired-do-shell-command "open" nil (dired-get-marked-files t))
+ ;; otherwise prompt for shell command
+ (call-interactively 'dired-do-shell-command)))
+
(use-package dired
:ensure nil ;; package is bundled with emacs
:init
@@ -7,7 +15,8 @@
;; show human readable free space
(setq directory-free-space-args "-h")
- :bind ("M-<up>" . dired-up-directory)
+ :bind (("M-<up>" . dired-up-directory)
+ ("C-c C-o" . dired-open-or-shell-command))
:config
;; group directories first in dired if supported