1

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

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

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

Я думаю, что 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 ответ1

0

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

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

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .