Pathogen - работают только некоторые плагины vim

Pathogen - работают только некоторые плагины vim

Недавно я установил Pathogen вместе с несколькими плагинами, такими как NerdTree и Solarized, и они оба работают очень хорошо.

Сегодня я попытался установить плагин отступов Ruby (https://github.com/jelera/vim-javascript-syntax) и, к сожалению, это не работает.

Затем я пошел дальше и попытался установить плагин Javascript для отступов и подсветки синтаксиса (https://github.com/vim-ruby/vim-ruby/wiki/VimRubySupport), и вот что забавно - расширенная подсветка синтаксиса (не та, что идет в комплекте с solarized) на самом деле работает, а отступы - нет.

Я думаю, что Pathogen не загружает 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папкой — нет. Любая помощь будет оценена по достоинству!

Редактировать:

Я только что обнаружил, что если я помещаю папку плагина для Ruby в pluginпапку , 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

Ваши имена скриптов не включают даже обычные встроенные файлы ftplugin или синтаксиса, как для Ruby, так и для JavaScript.

Так что я предполагаю, что вы не редактируете файл ruby ​​или javascript. Или, если вы это делаете, Vim не определил файл как ruby ​​или javascript.

Вы можете попробовать вручную задать тип файла на ruby ​​или javascript, или попытаться выяснить, почему ваш Vim не определяет их должным образом. Возможно, вы используете расширение файла, не поддерживаемое автоматическим определением типа файла. Вы можете добавить новые расширения файлов, если хотите (:help new-filetype); но в любом случае, Pathogen отлично загружает файлы ftplugin.

Связанный контент