emacs에 neotree를 도입해 보았습니다.
6205 단어 emacs-lispneotreeEmacs
설정
(use-package neotree
:init
(setq-default neo-keymap-style 'concise)
:config
(setq neo-smart-open t)
(setq neo-create-file-auto-open t)
(setq neo-theme (if (display-graphic-p) 'icons 'arrow))
(bind-key [f8] 'neotree-toggle)
(bind-key "RET" 'neotree-enter-hide neotree-mode-map)
(bind-key "a" 'neotree-hidden-file-toggle neotree-mode-map)
(bind-key "<left>" 'neotree-select-up-node neotree-mode-map)
(bind-key "<right>" 'neotree-change-root neotree-mode-map))
;; Change neotree's font size
;; Tips from https://github.com/jaypei/emacs-neotree/issues/218
(defun neotree-text-scale ()
"Text scale for neotree."
(interactive)
(text-scale-adjust 0)
(text-scale-decrease 1)
(message nil))
(add-hook 'neo-after-create-hook
(lambda (_)
(call-interactively 'neotree-text-scale)))
;; neotree enter hide
;; Tips from https://github.com/jaypei/emacs-neotree/issues/77
(defun neo-open-file-hide (full-path &optional arg)
"Open file and hiding neotree.
The description of FULL-PATH & ARG is in `neotree-enter'."
(neo-global--select-mru-window arg)
(find-file full-path)
(neotree-hide))
(defun neotree-enter-hide (&optional arg)
"Neo-open-file-hide if file, Neo-open-dir if dir.
The description of ARG is in `neo-buffer--execute'."
(interactive "P")
(neo-buffer--execute arg 'neo-open-file-hide 'neo-open-dir))
아이콘 대응으로 한다
all-the-icons를 패키지 설치하고
(setq neo-theme (if (display-graphic-p) 'icons 'arrow))
를 설정하는 것만으로 간단하게 실현되었습니다.문자 크기 변경
Github의 issues 보드 설정을 그대로 포장했습니다.
(text-scale-decrease 1)
의 숫자를 크게 하면 보다 축소 사이즈가 됩니다.키 커스터마이징
neotree의 디폴트 키맵은
C-c
를 prefix 로 하고 있습니다만, (setq-default neo-keymap-style 'concise)
를 설정하면 일부의 기능이 원키 조작할 수 있게 됩니다.key-bind
명령
C
neotree-change-root
c
neotree-create-node
+
neotree-create-node
d
neotree-delete-node
r
neotree-rename-node
e
neotree-enter
필자의 경우, dired 설정 과 조작성을 통일하기 위해서 이하의 키 바인드도 추가 설정하고 있습니다.
파일을 열 때 트리 숨기기
neotree는 SPC 키를 누르면 커서의 파일이 다른 버퍼에 미리보기 표시됩니다. 또한 RET 키를 누르면 표시된 다른 버퍼가 활성화되고 편집 가능합니다.
각각 구분하여 편리합니다만, RET 눌러의 경우에는 자동적으로 트리가 숨어 주는 쪽이 나는 좋아하므로, 커스터마이즈 해 보았습니다. 라고 해도 이것도 파크리입니다. 디렉터리에서 RET하면 트리를 확장하고 파일에서 RET했을 때만 트리를 숨기는 ...라는 동작입니다.
Reference
이 문제에 관하여(emacs에 neotree를 도입해 보았습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/minoruGH/items/2034cad4efe8c5dee4d4텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)