X-Git-Url: http://47.100.26.94:8080/?a=blobdiff_plain;f=emacs.d%2Fconfig.org;h=424117f650ecc22868d553c75dfd91634299c108;hb=c1c2a340bcf48616dc21ba00a2e999dfe84b50c4;hp=386ad6ab289e49ff2a00988ec17a981a33012188;hpb=b662f58bf2771962ebfa2e5a4cd4a22c3a948ffb;p=dotfiles.git diff --git a/emacs.d/config.org b/emacs.d/config.org index 386ad6a..424117f 100644 --- a/emacs.d/config.org +++ b/emacs.d/config.org @@ -1433,11 +1433,6 @@ Color for Man-mode ** Dired config =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-new-file () - "Create a new file in dired mode" - (interactive) - (call-interactively 'find-file)) - (defun sd/dired-key-map () "My keybindings for dired" (interactive) @@ -1445,10 +1440,24 @@ Color for Man-mode (define-key dired-mode-map (kbd "S-SPC") 'scroll-down-command) (define-key dired-mode-map (kbd "C-o") nil) (define-key dired-mode-map (kbd "M-s") nil) - (define-key dired-mode-map (kbd "l") 'dired-isearch-filenames) + ;; (define-key dired-mode-map (kbd "l") 'dired-isearch-filenames) (define-key dired-mode-map (kbd "H") 'dired-omit-mode) + ;; i dired-maybe-insert-subdir + ;; o dired-find-file-other-window (switch to other window) + ;; O dired-display-file + (define-key dired-mode-map (kbd "c") 'sd/dired-new-file) + (define-key dired-mode-map (kbd "h") 'dired-summary) + (define-key dired-mode-map (kbd "r") 'revert-buffer) + (define-key dired-mode-map (kbd "f") 'dired-isearch-filenames) (define-key dired-mode-map (kbd "DEL") (lambda () (interactive) (find-alternate-file ".."))) - (define-key dired-mode-map (kbd "c") 'sd/dired-new-file)) + (define-key dired-mode-map (kbd "?") 'describe-mode) + (define-key dired-mode-map (kbd "z") #'sd/dired-get-size) + (define-key dired-mode-map (kbd "C-d") 'dired-kill-subdir) + (define-key dired-mode-map (kbd "M-d") 'dired-kill-subdir) + (define-key dired-mode-map (kbd "J") 'diredp-next-subdir) + (define-key dired-mode-map (kbd "K") 'diredp-prev-subdir) + (define-key dired-mode-map (kbd "O") 'dired-display-file) + (define-key dired-mode-map (kbd "I") 'other-window)) (use-package dired :config @@ -1459,6 +1468,12 @@ Color for Man-mode (sd/dired-key-map) (dired-omit-mode)))) + (defadvice dired-summary (around sd/dired-summary activate) + "Revisied dired summary." + (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,")) (setq dired-guess-shell-alist-user '(("\\.pdf\\'" "evince" "okular") ("\\.\\(?:djvu\\|eps\\)\\'" "evince") @@ -1474,14 +1489,24 @@ Color for Man-mode #+END_SRC -I would like change the default dired summary +dired utils #+BEGIN_SRC emacs-lisp :tangle yes :results silent - (defadvice dired-summary (around sd/dired-summary activate) - "Revisied dired summary." + (defun sd/dired-new-file () + "Create a new file in dired mode" (interactive) - (dired-why) - (message - "Δ: d-delete, u-ndelete, x-punge, f-ind, o-ther window, R-ename, C-opy, c-create, +new dir, ?-summary")) + (call-interactively 'find-file)) + + ;; copied from abo-abo's config + (defun sd/dired-get-size () + (interactive) + (let ((files (dired-get-marked-files))) + (with-temp-buffer + (apply 'call-process "/usr/bin/du" nil t nil "-sch" files) + (message + "Size of all marked files: %s" + (progn + (re-search-backward "\\(^[ 0-9.,]+[A-Za-z]+\\).*total$") + (match-string 1)))))) #+END_SRC 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 @@ -2079,6 +2104,7 @@ Use =ESC= to exit minibuffer. Also I map =Super-h= the same as =C-g= :ensure t :init (setq projectile-enable-caching t) + (setq projectile-switch-project-action 'projectile-dired) (setq projectile-cache-file (concat sd-temp-directory "projectile.cache")) :config (add-to-list 'projectile-globally-ignored-files "GTAGS") @@ -2232,7 +2258,7 @@ Most use =C-o C-o= to switch buffers; =C-o x, v= to split window; =C-o o= to del ;; ibuffer, dired, eshell, bookmarks ;; ("d" ace-delete-window "ace-one" :exit t) ("C-o" ido-switch-buffer nil :exit t) - ("d" dired-jump nil :exit t) + ("d" projectile-dired nil :exit t) ("b" ibuffer nil n:exit t) ("e" eshell nil :exit t) ("m" bookmark-jump-other-window nil :exit t)