병원체 - vim 플러그인 중 일부만 작동함

병원체 - vim 플러그인 중 일부만 작동함

그래서 최근에는 NerdTree 및 Solarized와 같은 몇 가지 플러그인과 함께 Pathogen을 설치했는데 둘 다 정말 잘 작동합니다.

오늘은 Ruby 들여쓰기 플러그인(https://github.com/jelera/vim-javascript-syntax) 안타깝게도 작동하지 않습니다.

그런 다음 Javascript 들여쓰기/구문 강조 플러그인을 설치하려고 했습니다(https://github.com/vim-ruby/vim-ruby/wiki/VimRubySupport) 그리고 여기에 재미있는 점이 있습니다. 고급 구문 강조 표시(solarized와 함께 제공되는 구문 강조 표시가 아님)는 실제로 작동하지만 들여쓰기는 작동하지 않습니다.

병원체가 폴더를 로드하지 않는 것 같아요 ftplugin. 출력 은 다음과 같습니다 :scriptnames.

  1: /usr/share/vim/vimrc
  2: /usr/share/vim/vim74/debian.vim
  3: /usr/share/vim/vim74/syntax/syntax.vim
  4: /usr/share/vim/vim74/syntax/synload.vim
  5: /usr/share/vim/vim74/syntax/syncolor.vim
  6: /usr/share/vim/vim74/filetype.vim
  7: ~/.vimrc
  8: ~/.vim/autoload/pathogen.vim
  9: /usr/share/vim/vim74/ftoff.vim
 10: ~/.vim/bundle/vim-javascript/ftdetect/javascript.vim
 11: ~/.vim/bundle/vim-ruby/ftdetect/ruby.vim
 12: /usr/share/vim/vim74/syntax/nosyntax.vim
 13: /usr/share/vim/vim74/ftplugin.vim
 14: /usr/share/vim/vim74/indent.vim
 15: /usr/share/vim/vim74/macros/matchit.vim
 16: ~/.vim/bundle/vim-colors-solarized/colors/solarized.vim
 17: ~/.vim/bundle/MatchTagAlways/plugin/MatchTagAlways.vim
 18: ~/.vim/bundle/nerdtree/plugin/NERD_tree.vim
 19: ~/.vim/bundle/nerdtree/autoload/nerdtree.vim
 20: ~/.vim/bundle/nerdtree/lib/nerdtree/path.vim
 21: ~/.vim/bundle/nerdtree/lib/nerdtree/menu_controller.vim
 22: ~/.vim/bundle/nerdtree/lib/nerdtree/menu_item.vim
 23: ~/.vim/bundle/nerdtree/lib/nerdtree/key_map.vim
 24: ~/.vim/bundle/nerdtree/lib/nerdtree/bookmark.vim
 25: ~/.vim/bundle/nerdtree/lib/nerdtree/tree_file_node.vim
 26: ~/.vim/bundle/nerdtree/lib/nerdtree/tree_dir_node.vim
 27: ~/.vim/bundle/nerdtree/lib/nerdtree/opener.vim
 28: ~/.vim/bundle/nerdtree/lib/nerdtree/creator.vim
 29: ~/.vim/bundle/nerdtree/lib/nerdtree/flag_set.vim
 30: ~/.vim/bundle/nerdtree/lib/nerdtree/nerdtree.vim
 31: ~/.vim/bundle/nerdtree/lib/nerdtree/ui.vim
 32: ~/.vim/bundle/nerdtree/lib/nerdtree/event.vim
 33: ~/.vim/bundle/nerdtree/lib/nerdtree/notifier.vim
 34: ~/.vim/bundle/nerdtree/autoload/nerdtree/ui_glue.vim
 35: ~/.vim/bundle/nerdtree/nerdtree_plugin/exec_menuitem.vim
 36: ~/.vim/bundle/nerdtree/nerdtree_plugin/fs_menu.vim
 37: /usr/share/vim/vim74/plugin/getscriptPlugin.vim
 38: /usr/share/vim/vim74/plugin/gzip.vim
 39: /usr/share/vim/vim74/plugin/matchparen.vim
 40: /usr/share/vim/vim74/plugin/netrwPlugin.vim
 41: /usr/share/vim/vim74/plugin/rrhelper.vim
 42: /usr/share/vim/vim74/plugin/spellfile.vim
 43: /usr/share/vim/vim74/plugin/tarPlugin.vim
 44: /usr/share/vim/vim74/plugin/tohtml.vim
 45: /usr/share/vim/vim74/plugin/vimballPlugin.vim
 46: /usr/share/vim/vim74/plugin/zipPlugin.vim

.vimrc내 파일 의 첫 번째 줄은 다음과 같습니다 .

     execute pathogen#infect()
     syntax on
     filetype plugin indent on

plugin폴더가 포함된 모든 플러그인은 작동하지만 ftplugin폴더가 포함된 플러그인은 작동하지 않는 것으로 나타났습니다 . 어떤 도움이라도 주시면 감사하겠습니다!

편집하다:

plugin방금 Ruby용 플러그인 폴더를 폴더 에 넣으면 목록 bundle에 올바르게 표시된다는 것을 알았습니다 :scriptnames.

 16: ~/.vim/plugin/vim-ruby/autoload/rubycomplete.vim
 17: ~/.vim/plugin/vim-ruby/compiler/eruby.vim
 18: ~/.vim/plugin/vim-ruby/compiler/rake.vim
 19: ~/.vim/plugin/vim-ruby/compiler/rspec.vim
 20: ~/.vim/plugin/vim-ruby/compiler/ruby.vim
 21: ~/.vim/plugin/vim-ruby/compiler/rubyunit.vim
 22: ~/.vim/plugin/vim-ruby/ftdetect/ruby.vim
 23: ~/.vim/plugin/vim-ruby/ftplugin/eruby.vim

다음 오류가 발생합니다.

Error: Rubycomplete requires vim compiled with +ruby
Error: falling back to syntax completion

하지만 들여쓰기가 여전히 작동하지 않습니다.

답변1

귀하의 스크립트 이름에는 Ruby 또는 javascript에 대한 일반적인 내장 ftplugin 또는 구문 파일도 포함되어 있지 않습니다.

내 생각엔, 당신은 루비나 자바스크립트 파일을 편집하고 있지 않은 것 같습니다. 또는 만약 그렇다면 Vim은 해당 파일을 Ruby 또는 JavaScript로 감지하지 못했습니다.

파일 형식을 Ruby 또는 javascript로 수동으로 설정해 보거나 Vim이 해당 파일 형식을 제대로 감지하지 못하는 이유를 알아보세요. 자동 파일 형식 감지에서 지원하는 파일 확장자를 사용하고 있지 않을 수 있습니다. 원하는 경우 새 파일 확장자를 추가할 수 있습니다(:help new-filetype). 하지만 어쨌든 Pathogen은 ftplugin 파일을 잘 로드합니다.

관련 정보