X-Git-Url: http://47.100.26.94:8080/?a=blobdiff_plain;f=emacs.d%2Fconfig.org;h=d3c5db5ab067ee58cc883319508a3a61fcf5d5e7;hb=6368c2a1051056573e4b55e4d56a3e3b65c98c70;hp=d6de9c3cd164a3fb1278c00a36b893d416d4179d;hpb=8efb17a83d68483b90628ee661f3b7286ae22634;p=dotfiles.git diff --git a/emacs.d/config.org b/emacs.d/config.org index d6de9c3..d3c5db5 100644 --- a/emacs.d/config.org +++ b/emacs.d/config.org @@ -1010,6 +1010,8 @@ and Defined keys, using vi keybindings, Refer abo-abo's setting [[https://github :init ;; don't ask me to confirm the unsaved change (setq magit-save-repository-buffers nil) + ;; default is 50 + (setq git-commit-summary-max-length 80) :commands magit-status magit-blame :config (dolist (map (list magit-status-mode-map @@ -1325,7 +1327,10 @@ When see function by =C-h f=, and visit the source code, I would like the buffer '((nil . ((buffer-read-only . t) (show-trailing-whitespace . nil) (tab-width . 8) - (eval . (whitespace-mode -1)))))) + (eval . (whitespace-mode -1)) + (eval . (when buffer-file-name + (setq-local view-no-disable-on-exit t) + (view-mode-enter))))))) ;; (dir-locals-set-directory-class (expand-file-name "/usr/local/share/emacs") 'emacs) (dir-locals-set-directory-class "/usr/local/Cellar/emacs" 'emacs) @@ -1338,6 +1343,10 @@ When see function by =C-h f=, and visit the source code, I would like the buffer #+BEGIN_SRC emacs-lisp :tangle yes :results silent (el-get-bundle info+ :url "https://raw.githubusercontent.com/emacsmirror/emacswiki.org/master/info+.el" + ;; (require 'info+) + ) + + (with-eval-after-load 'info (require 'info+)) #+END_SRC @@ -1424,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) @@ -1436,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 @@ -1450,6 +1468,13 @@ 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") @@ -1465,14 +1490,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, +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 @@ -2070,6 +2105,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") @@ -2212,6 +2248,11 @@ Most use =C-o C-o= to switch buffers; =C-o x, v= to split window; =C-o o= to del ;; buffer / windows switch ("o" sd/toggle-max-windows "one" :exit t) ("C-k" sd/delete-current-window "del" :exit t) + ("D" (lambda () + (interactive) + (kill-buffer) + (sd/delete-current-window)) + "kill" :exit t) ("'" other-window "other" :exit t) ;; ("a" ace-window "ace") ("s" ace-swap-window "swap") @@ -2223,7 +2264,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)