| @@ -905,7 +905,28 @@ found, otherwise returns nil." | |||||
| ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | ||||
| ;; some modes and hooks | ;; some modes and hooks | ||||
| (lazy-load-eval 'dirtree) | |||||
| (lazy-load-eval 'dirtree nil | |||||
| (defun my-dirtree-current-line-directory-p () | |||||
| "Return nil if element on current line is not a directory." | |||||
| (file-directory-p (widget-get (tree-mode-button-current-line) | |||||
| :file))) | |||||
| ;; This fix is actually a little strange. Strictly speaking | |||||
| ;; judging tree should be done by whether the widget is a tree one. | |||||
| (defun my-dirtree-next-node (arg) | |||||
| "Fix the problem that `tree-mode-next-node' moves cursor 2 lines." | |||||
| (interactive "p") | |||||
| (if (my-dirtree-current-line-directory-p) | |||||
| (widget-forward (* arg 2)) | |||||
| (widget-forward arg))) | |||||
| (defun my-dirtree-previous-node (arg) | |||||
| "Fix the problem that `tree-mode-previous-node' moves cursor 2 lines." | |||||
| (interactive "p") | |||||
| (my-dirtree-next-node (- arg))) | |||||
| (define-key dirtree-mode-map "n" 'my-dirtree-next-node) | |||||
| (define-key dirtree-mode-map "p" 'my-dirtree-previous-node) | |||||
| ) | |||||
| (and (fetch-library | (and (fetch-library | ||||
| "https://raw.github.com/10sr/emacs-lisp/master/remember-major-modes-mode.el" | "https://raw.github.com/10sr/emacs-lisp/master/remember-major-modes-mode.el" | ||||
| @@ -1419,7 +1440,8 @@ found, otherwise returns nil." | |||||
| ;; (call-interactively 'bs-toggle-show-all)) | ;; (call-interactively 'bs-toggle-show-all)) | ||||
| (set (make-local-variable 'scroll-margin) 0)))) | (set (make-local-variable 'scroll-margin) 0)))) | ||||
| (iswitchb-mode 1) | |||||
| ;;(iswitchb-mode 1) | |||||
| (icomplete-mode) | |||||
| (defun iswitchb-buffer-display-other-window () | (defun iswitchb-buffer-display-other-window () | ||||
| "Do iswitchb in other window." | "Do iswitchb in other window." | ||||