X-Git-Url: http://47.100.26.94:8080/?a=blobdiff_plain;ds=sidebyside;f=emacs.d%2Fconfig.org;h=387b4802acce50371c29f6763338ba997df89454;hb=231ca352bda49b1cf998fd376a9b803205f4250f;hp=1928499707fcd6af11774add66d149e427a4a40e;hpb=99bbdf423fb3e58f2a1fcc4260609bbb0e7d222c;p=dotfiles.git diff --git a/emacs.d/config.org b/emacs.d/config.org index 1928499..387b480 100644 --- a/emacs.d/config.org +++ b/emacs.d/config.org @@ -1419,8 +1419,7 @@ Color for Man-mode #+END_SRC * Dired -** Dired config -*** Dired bindings +** Dired bindings =C-o= is defined as a global key for window operation, here unset it in dired mode #+BEGIN_SRC emacs-lisp :tangle yes :results silent (defun sd/dired-key-map () @@ -1479,7 +1478,7 @@ Color for Man-mode (interactive) (dired-why) (message - "Δ: d-delete, u-ndelete, x-punge, f-ind, o-ther window, R-ename, C-opy, c-create, +new dir, r-evert, h-summary, ?-help,")) + "Δ: d-delete, u-ndelete, x-punge, f-ind, o-ther window, R-ename, C-opy, c-create, +new dir, r-evert, /-filter, h-summary, ?-help")) (defun sd/dired-high-level-dir () "Go to higher level directory" @@ -1506,7 +1505,7 @@ Color for Man-mode (match-string 1)))))) #+END_SRC -*** disable ido when dired new file +** disable ido when dired new file When create a new directory, I want to disalbe =ido= completion. see [[http://stackoverflow.com/questions/7479565/emacs-ido-mode-and-creating-new-files-in-directories-it-keeps-changing-the-dire][here]]. Thhis code snippets copied from [[https://emacs.stackexchange.com/questions/13713/how-to-disable-ido-in-dired-create-directory/13795#13795?newreg%3Ddb17c20f7af3490fb11cf15f1d888e9e][How to disable IDO in ‘dired-create-directory’]] #+BEGIN_SRC emacs-lisp :tangle yes :results silent @@ -1530,7 +1529,7 @@ Disalble =ido= when new a directory or file in =dired= mode (mk-disable-ido 'sd/dired-new-file) #+END_SRC -*** Dired open with +** Dired open with =!= =dired-do-shell-command= =&= =dired-do-async-shell-command= here on Mac, just use "open" commands to pen =.pdf=, =.html= and image files @@ -1545,22 +1544,25 @@ here on Mac, just use "open" commands to pen =.pdf=, =.html= and image files ("\\.\\(?:mp4\\|mkv\\|avi\\|flv\\|ogv\\)\\(?:\\.part\\)?\\'" "mplayer") ("\\.\\(?:mp3\\|flac\\)\\'" "rhythmbox") ("\\.html?\\'" "open") + ("\\.dmg\\'" "open") ("\\.cue?\\'" "audacious"))) #+END_SRC ** dired-hacks #+BEGIN_SRC emacs-lisp :tangle yes :results silent (use-package dired-hacks-utils - :ensure t) - - - (defconst my-dired-media-files-extensions '("mp3" "mp4" "MP3" "MP4" "avi" "mpg" "flv" "ogg" "wmv" "mkv" "mov" "wma") - "Media file extensions that should launch in VLC.") + :ensure t + :defer t) +#+END_SRC - (add-to-list 'dired-guess-shell-alist-user - (list (concat "\\." - (regexp-opt my-dired-media-files-extensions) - "\\'") "mplayer")) +** dired-narrow +#+BEGIN_SRC emacs-lisp :tangle yes :results silent + ;;narrow dired to match filter + (use-package dired-narrow + :ensure t + :commands (dired-narrow) + :bind (:map dired-mode-map + ("/" . dired-narrow))) #+END_SRC * Ibuffer @@ -1572,7 +1574,14 @@ here on Mac, just use "open" commands to pen =.pdf=, =.html= and image files (define-key ibuffer-mode-map (kbd "j") 'ibuffer-forward-line) (define-key ibuffer-mode-map (kbd "k") 'ibuffer-backward-line) (define-key ibuffer-mode-map (kbd "r") 'ibuffer-update) - (define-key ibuffer-mode-map (kbd "g") 'ibuffer-jump-to-buffer)) + (define-key ibuffer-mode-map (kbd "g") 'ibuffer-jump-to-buffer) + (define-key ibuffer-mode-map (kbd "h") 'sd/ibuffer-summary)) + + (defun sd/ibuffer-summary () + "Show summary of keybindings in ibuffer mode" + (interactive) + (message + "Β: m|u - (un)mark, /-filter, //-remove filter, t, RET, g, k, S, D, Q; q to quit; h for help")) #+END_SRC * Completion @@ -2144,6 +2153,7 @@ Use =ESC= to exit minibuffer. Also I map =Super-h= the same as =C-g= (global-set-key (kbd "s-n") 'persp-next) (global-set-key (kbd "s-p") 'persp-prev) + (global-set-key (kbd "s-;") 'persp-switch-last) (global-set-key (kbd "s-=") 'text-scale-increase) (global-set-key (kbd "s--") 'text-scale-decrease) @@ -2268,7 +2278,7 @@ Most use =C-o C-o= to switch buffers; =C-o x, v= to split window; =C-o o= to del ;; ("d" ace-delete-window "ace-one" :exit t) ("C-o" ido-switch-buffer nil :exit t) ("d" sd/project-or-dired-jump nil :exit t) - ("b" ibuffer nil n:exit t) + ("b" ibuffer nil :exit t) ("e" eshell nil :exit t) ("m" bookmark-jump-other-window nil :exit t) ("M" bookmark-set nil :exit t)