diff --git a/core/core-project.el b/core/core-project.el index 9e8538f63..d47d20f78 100644 --- a/core/core-project.el +++ b/core/core-project.el @@ -81,7 +81,7 @@ neo-auto-indent-point t neo-mode-line-type 'none neo-persist-show nil - neo-window-width 28 + neo-window-width 26 neo-show-updir-line nil neo-auto-indent-point t neo-theme 'nerd ; fallback @@ -90,24 +90,23 @@ (evil-set-initial-state 'neotree-mode 'motion) (add-hook 'neo-after-create-hook 'doom-hide-mode-line-mode) - ;; Don't mess with neotree on wg-related window-config changes - (advice-add 'doom/undo-window-change :around 'doom*save-neotree) - (advice-add 'doom/redo-window-change :around 'doom*save-neotree) ;; A custom and simple theme for neotree - (advice-add 'neo-buffer--insert-fold-symbol :override 'doom*neo-theme) + (advice-add 'neo-buffer--insert-fold-symbol :override 'doom*neo-insert-fold-symbol) ;; Shorter pwd in neotree - (advice-add 'neo-buffer--insert-root-entry :filter-args 'doom*neotree-shorten-pwd) + (advice-add 'neo-buffer--insert-root-entry :filter-args 'doom*neo-insert-root-entry) ;; Don't ask for confirmation when creating files (advice-add 'neotree-create-node :around 'doom*neotree-create-node) ;; Prevents messing up the neotree buffer on window changes (advice-add 'doom/evil-window-move :around 'doom*save-neotree) - (defun doom*neotree-no-fringes () - (set-window-fringes neo-global--window 1 0)) + ;; Minimize 'border' between windows (won't work in hook) + (defun doom*neotree-no-fringes () (set-window-fringes neo-global--window 1 0)) (advice-add 'neo-global--select-window :after 'doom*neotree-no-fringes) (add-hook! neotree-mode (set (make-local-variable 'hl-line-sticky-flag) t) + (setq line-spacing 2) + (text-scale-set -1) (hl-line-mode +1)) (map! :map neotree-mode-map :m "\\\\" 'evil-window-prev diff --git a/core/core-vars.el b/core/core-vars.el index 3fa305f65..df6faee57 100644 --- a/core/core-vars.el +++ b/core/core-vars.el @@ -13,7 +13,7 @@ killed by `doom/kill-unreal-buffers', or after `doom/kill-real-buffer').") (defvar doom-ignore-buffers '("*Messages*" "*eval*" "*Completions*" "*Compile-Log*" "*inferior-lisp*" "*Fuzzy Completions*" "*Apropos*" "*Help*" "*cvs*" "*Buffer List*" - "*Ibuffer*" "*NeoTree*" "*NeoTree*" "*esh command on file*" "*WoMan-Log*" + "*Ibuffer*" " *NeoTree*" "*NeoTree*" "*esh command on file*" "*WoMan-Log*" "*compilation*" "*use-package*" "*quickrun*" "*eclim: problems*" "*Flycheck errors*" "*popwin-dummy*" ;; Helm diff --git a/core/defuns/defuns-neotree.el b/core/defuns/defuns-neotree.el index 08b232a25..3bfba40f2 100644 --- a/core/defuns/defuns-neotree.el +++ b/core/defuns/defuns-neotree.el @@ -45,19 +45,16 @@ (apply orig-fun args))) ;;;###autoload -(defun doom*neotree-shorten-pwd (node) - "Shorter pwd in neotree" +(defun doom*neo-insert-root-entry (node) + "Pretty-print pwd in neotree" (list (concat "  " (projectile-project-name)))) ;;;###autoload -(defun doom*neo-theme (name) - "Custom hybrid ascii theme with leading whitespace." - (let ((n-insert-symbol (lambda (n) - (neo-buffer--insert-with-face - n 'neo-expand-btn-face)))) - (or (and (eq name 'open) (funcall n-insert-symbol " -  ")) - (and (eq name 'close) (funcall n-insert-symbol " +  ")) - (and (eq name 'leaf) (funcall n-insert-symbol " "))))) +(defun doom*neo-insert-fold-symbol (name) + "Custom hybrid unicode theme with leading whitespace." + (or (and (eq name 'open) (neo-buffer--insert-with-face " -  " 'neo-expand-btn-face)) + (and (eq name 'close) (neo-buffer--insert-with-face " +  " 'neo-expand-btn-face)) + (and (eq name 'leaf) (neo-buffer--insert-with-face " " 'neo-expand-btn-face)))) (provide 'defuns-neotree) ;;; defuns-neotree.el ends here