Pathogen - apenas alguns plugins do vim funcionam

Pathogen - apenas alguns plugins do vim funcionam

Recentemente instalei o Pathogen junto com alguns plugins como NerdTree e Solarized e ambos funcionam muito bem.

Hoje tentei instalar o plugin de indentação Ruby (https://github.com/jelera/vim-javascript-syntax) e infelizmente não funciona.

Então tentei instalar o plugin Javascript de recuo/destaque de sintaxe (https://github.com/vim-ruby/vim-ruby/wiki/VimRubySupport), e aqui está o engraçado: o realce de sintaxe avançado (não aquele que vem junto com o solarized) realmente funciona, mas não o recuo.

Acho que o Pathogen não carrega ftplugina pasta. Aqui está :scriptnameso resultado:

  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

E aqui estão as primeiras linhas dos meus .vimrcarquivos:

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

Percebi que todos os plug-ins que contêm pluginpasta funcionam, enquanto os plug-ins com ftpluginpasta não. Qualquer ajuda seria apreciada!

Editar:

Acabei de descobrir que se eu colocar a pasta do plugin para Ruby na pluginpasta, bundleela aparecerá corretamente na :scriptnameslista.

 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

e lança o seguinte erro:

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

mas o recuo ainda não funciona.

Responder1

Seus nomes de script não incluem nem mesmo os arquivos ftplugin ou de sintaxe integrados usuais, tanto para Ruby quanto para JavaScript.

Então, meu palpite é que você não está editando um arquivo Ruby ou JavaScript. Ou, se estiver, o Vim não detectou o arquivo como ruby ​​ou javascript.

Você pode tentar definir manualmente o tipo de arquivo para Ruby ou JavaScript ou tentar descobrir por que seu Vim não os está detectando corretamente. Talvez você não esteja usando uma extensão de arquivo suportada pela detecção automática de tipo de arquivo. Você pode adicionar novas extensões de arquivo se desejar (:help new-filetype); mas de qualquer forma, o Pathogen carrega arquivos ftplugin perfeitamente.

informação relacionada