X-Git-Url: http://47.100.26.94:8080/?a=blobdiff_plain;f=emacs.d%2Fconfig.org;h=528540128061401d7f639ed876f448d66a0321f2;hb=0e5b840b6bcdf3b43392fc50662602de4ed505ee;hp=5ab2df74376ea43ac5f092ba2f813e94ac788c28;hpb=94e41398d7f8c57c46067a6b7fb4a8eff87d4621;p=dotfiles.git diff --git a/emacs.d/config.org b/emacs.d/config.org index 5ab2df7..5285401 100644 --- a/emacs.d/config.org +++ b/emacs.d/config.org @@ -314,14 +314,13 @@ improve color for org-mode #+END_SRC ** page-break-lines - #+BEGIN_SRC emacs-lisp :tangle yes :results silent - (use-package page-break-lines :ensure t :config - (turn-on-page-break-lines-mode)) - + (global-page-break-lines-mode) + ;; (turn-on-page-break-lines-mode) + ) #+END_SRC ** rainbow-mode @@ -363,7 +362,8 @@ clean mode line, Refer to [[https://www.masteringemacs.org/article/hiding-replac (org-indent-mode . "") ;; default is Fly (flyspell-mode . "") - (irony-mode . "I") + (irony-mode . "") + (page-break-lines-mode . "") ;; Major modes (lisp-interaction-mode . "λ") (hi-lock-mode . "") @@ -1069,7 +1069,7 @@ Toggle an eshell in split window below, refer [[http://www.howardism.org/Technic nil nil) ret)) - (defun sd/toggle-eshell-here () + (defun sd/toggle-project-eshell () "Toggle a eshell buffer vertically" (interactive) (if (sd/window-has-eshell) @@ -1080,20 +1080,26 @@ Toggle an eshell in split window below, refer [[http://www.howardism.org/Technic (delete-window))) (select-window (sd/window-has-eshell))) (progn - (let ((dir default-directory)) + (split-window-vertically (- (/ (window-total-height) 3))) + (other-window 1) + (if (projectile-project-p) + (projectile-run-eshell) + (eshell)) + ;; (let ((dir default-directory)) - (split-window-vertically (- (/ (window-total-height) 3))) - (other-window 1) - (unless (and (boundp 'eshell-buffer-name) (get-buffer eshell-buffer-name)) - (eshell)) - (switch-to-buffer eshell-buffer-name) - (goto-char (point-max)) - (eshell-kill-input) - (insert (format "cd %s" dir)) - (eshell-send-input))))) + ;; (split-window-vertically (- (/ (window-total-height) 3))) + ;; (other-window 1) + ;; (unless (and (boundp 'eshell-buffer-name) (get-buffer eshell-buffer-name)) + ;; (eshell)) + ;; (switch-to-buffer eshell-buffer-name) + ;; (goto-char (point-max)) + ;; (eshell-kill-input) + ;; (insert (format "cd %s" dir)) + ;; (eshell-send-input)) + ))) ;; (global-unset-key (kbd "M-`")) - (global-set-key (kbd "s-e") 'sd/toggle-eshell-here) + (global-set-key (kbd "s-e") 'sd/toggle-project-eshell) #+END_SRC ** exec-path-from-shell @@ -1319,15 +1325,39 @@ When see function by =C-h f=, and visit the source code, I would like the buffer (show-trailing-whitespace . nil) (tab-width . 8) (eval . (whitespace-mode -1)) - (eval . (when buffer-file-name - (setq-local view-no-disable-on-exit t) - (view-mode-enter))))))) + ;; (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) ;; (dir-locals-set-directory-class "~/.emacs.d/elpa" 'emacs) (dir-locals-set-directory-class "~/dotfiles/emacs.d/elpa" 'emacs) (dir-locals-set-directory-class "~/dotfiles/emacs.d/el-get" 'emacs) + + ;; temp-mode.el + ;; Temporary minor mode + ;; Main use is to enable it only in specific buffers to achieve the goal of + ;; buffer-specific keymaps + + ;; (defvar sd/temp-mode-map (make-sparse-keymap) + ;; "Keymap while temp-mode is active.") + + ;; ;;;###autoload + ;; (define-minor-mode sd/temp-mode + ;; "A temporary minor mode to be activated only specific to a buffer." + ;; nil + ;; :lighter " Temp" + ;; sd/temp-mode-map) + + ;; (defun sd/temp-hook () + ;; (if sd/temp-mode + ;; (progn + ;; (define-key sd/temp-mode-map (kbd "q") 'quit-window)))) + + ;; (add-hook 'lispy-mode-hook (lambda () + ;; (sd/temp-hook))) #+END_SRC ** Info plus @@ -2231,10 +2261,10 @@ Use =ESC= to exit minibuffer. Also I map =Super-h= the same as =C-g= (:map projectile-mode-map ("s-t" . projectile-persp-switch-project))) - (defun sd/change-default-directory (buffer dir) - "change defafult directory of buffer to dir" - (with-current-buffer buffer - (cd dir))) + ;; (defun sd/change-default-directory (buffer dir) + ;; "change defafult directory of buffer to dir" + ;; (with-current-buffer buffer + ;; (cd dir))) ;; change default-directory of scratch buffer to projectile-project-root (defun sd/project-switch-action () @@ -2243,7 +2273,11 @@ Use =ESC= to exit minibuffer. Also I map =Super-h= the same as =C-g= (dolist (buffer (buffer-list)) (if (string-match (concat "scratch.*" (projectile-project-name)) (buffer-name buffer)) - (sd/change-default-directory buffer (projectile-project-root))))) + (let ((root (projectile-project-root))) + (with-current-buffer buffer + (cd root))) + ;; (sd/change-default-directory buffer (projectile-project-root)) + ))) #+END_SRC *** project config =super= keybindings @@ -2389,7 +2423,7 @@ Most use =C-o C-o= to switch buffers; =C-o x, v= to split window; =C-o o= to del ("C-o" ido-switch-buffer nil :exit t) ("d" sd/project-or-dired-jump nil :exit t) ("b" ibuffer nil :exit t) - ("e" eshell nil :exit t) + ("e" sd/toggle-project-eshell nil :exit t) ("m" bookmark-jump-other-window nil :exit t) ("M" bookmark-set nil :exit t) ("g" magit-status nil :exit t)