diff options
author | Jesús <heckyel@hyperbola.info> | 2019-01-22 18:36:08 -0500 |
---|---|---|
committer | Jesús <heckyel@hyperbola.info> | 2019-01-22 18:36:08 -0500 |
commit | 70ee129a0a0269da3e01ea30015cffc7ec1a1492 (patch) | |
tree | ae32ca08daa670879284e56c41b70776d9fe7a0a | |
parent | 323b9b6e0190498bec58f5b7de4aaafdd0b29bef (diff) | |
download | emacs-personal-70ee129a0a0269da3e01ea30015cffc7ec1a1492.tar.lz emacs-personal-70ee129a0a0269da3e01ea30015cffc7ec1a1492.tar.xz emacs-personal-70ee129a0a0269da3e01ea30015cffc7ec1a1492.zip |
Fix the following functions might not be defined at runtime
- off-p
- shrink-path-dirs
- neo-buffer--insert-root-entry
Fix functions are not known to be defined
- shrink-root-entry
- projectile-project-root
FS #2
-rw-r--r-- | modules/init-neotree.el | 91 |
1 files changed, 50 insertions, 41 deletions
diff --git a/modules/init-neotree.el b/modules/init-neotree.el index ff38aa8..5f34831 100644 --- a/modules/init-neotree.el +++ b/modules/init-neotree.el @@ -28,59 +28,68 @@ ("d" . neotree-delete-node) ("r" . neotree-rename-node))) :config - (setq neo-create-file-auto-open nil - neo-auto-indent-point nil - neo-autorefresh t - neo-smart-open t - neo-mode-line-type 'none - neo-window-width 25 - neo-show-updir-line nil - neo-theme (if (display-graphic-p) 'icons 'arrow) - neo-banner-message nil - neo-confirm-create-file #'off-p - neo-confirm-create-directory #'off-p - neo-show-hidden-files nil - neo-keymap-style 'concise - neo-hidden-regexp-list - '(;; vcs folders - "^\\.\\(git\\|hg\\|svn\\)$" - ;; compiled files - "\\.\\(pyc\\|o\\|elc\\|lock\\|css.map\\)$" - ;; generated files, caches or local pkgs - "^\\(node_modules\\|vendor\\|.\\(project\\|cask\\|yardoc\\|sass-cache\\)\\)$" - ;; org-mode folders - "^\\.\\(sync\\|export\\|attach\\)$" - "~$" - "^#.*#$")) + (when (and (require 'neotree nil t) + (fboundp 'off-p)) + (setq neo-create-file-auto-open nil + neo-auto-indent-point nil + neo-autorefresh t + neo-smart-open t + neo-mode-line-type 'none + neo-window-width 25 + neo-show-updir-line nil + neo-theme (if (display-graphic-p) 'icons 'arrow) + neo-banner-message nil + neo-confirm-create-file #'off-p + neo-confirm-create-directory #'off-p + neo-show-hidden-files nil + neo-keymap-style 'concise + neo-hidden-regexp-list + '(;; vcs folders + "^\\.\\(git\\|hg\\|svn\\)$" + ;; compiled files + "\\.\\(pyc\\|o\\|elc\\|lock\\|css.map\\)$" + ;; generated files, caches or local pkgs + "^\\(node_modules\\|vendor\\|.\\(project\\|cask\\|yardoc\\|sass-cache\\)\\)$" + ;; org-mode folders + "^\\.\\(sync\\|export\\|attach\\)$" + "~$" + "^#.*#$"))) (when (bound-and-true-p winner-mode) (push neo-buffer-name winner-boring-buffers)) (defun shrink-root-entry (node) "shrink-print pwd in neotree" - (insert (propertize (concat (shrink-path-dirs node) "\n") 'face `(:inherit (,neo-root-dir-face))))) + (when (and (require 'neotree nil t) + (fboundp 'shrink-path-dirs)) + (insert (propertize (concat (shrink-path-dirs node) "\n") 'face `(:inherit (,neo-root-dir-face)))))) - (advice-add #'neo-buffer--insert-root-entry :override #'shrink-root-entry)) + (when (and (require 'neotree nil t) + (fboundp 'neo-buffer--insert-root-entry) + (fboundp 'shrink-root-entry)) + (advice-add #'neo-buffer--insert-root-entry :override #'shrink-root-entry)) + ) (defun neotree-project-dir-toggle () "Open NeoTree using the project root, using find-file-in-project or the current buffer directory." (interactive) - (let ((project-dir - (ignore-errors + (when (and (require 'neotree nil t) + (fboundp 'projectile-project-root)) + (let ((project-dir + (ignore-errors ;;; Pick one: projectile or find-file-in-project - (projectile-project-root))) - (file-name (buffer-file-name)) - (neo-smart-open t)) - (if (and (fboundp 'neo-global--window-exists-p) - (neo-global--window-exists-p)) - (neotree-hide) - (progn - (neotree-show) - (if project-dir - (neotree-dir project-dir)) - (if file-name - (neotree-find file-name)))))) - + (projectile-project-root))) + (file-name (buffer-file-name)) + (neo-smart-open t)) + (if (and (fboundp 'neo-global--window-exists-p) + (neo-global--window-exists-p)) + (neotree-hide) + (progn + (neotree-show) + (if project-dir + (neotree-dir project-dir)) + (if file-name + (neotree-find file-name))))))) (provide 'init-neotree) |