Pathogen - nur einige der Vim-Plugins funktionieren

Pathogen - nur einige der Vim-Plugins funktionieren

Ich habe vor Kurzem Pathogen zusammen mit einigen Plugins wie NerdTree und Solarized installiert und beide funktionieren wirklich gut.

Heute habe ich versucht, das Ruby-Einrückungs-Plugin zu installieren (https://github.com/jelera/vim-javascript-syntax) und leider funktioniert es nicht.

Dann habe ich versucht, das Javascript-Einrückungs-/Syntax-Highlighting-Plugin zu installieren (https://github.com/vim-ruby/vim-ruby/wiki/VimRubySupport), und hier ist das Komische – die erweiterte Syntaxhervorhebung (nicht die, die mit solarized einhergeht) funktioniert tatsächlich, aber nicht die Einrückung.

Ich glaube, der Pathogen lädt ftpluginden Ordner nicht. Hier ist :scriptnamesdie Ausgabe:

  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

Und hier sind die ersten Zeilen meiner .vimrcDateien:

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

Mir ist aufgefallen, dass alle Plugins, die Ordner enthalten plugin, funktionieren, während Plugins mit ftpluginOrdnern nicht funktionieren. Für jede Hilfe wäre ich dankbar!

Bearbeiten:

Ich habe gerade herausgefunden, dass wenn ich den Plugin-Ordner für Ruby in plugineinen Ordner statt in einen anderen lege bundle, er korrekt in der Liste angezeigt wird :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

und gibt folgenden Fehler aus:

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

aber die Einrückung funktioniert immer noch nicht.

Antwort1

Ihre Skriptnamen enthalten nicht einmal die üblichen integrierten Ftplugin- oder Syntaxdateien, weder für Ruby noch für JavaScript.

Ich vermute also, dass Sie keine Ruby- oder JavaScript-Datei bearbeiten. Oder, falls doch, hat Vim die Datei nicht als Ruby- oder JavaScript-Datei erkannt.

Sie können versuchen, den Dateityp manuell auf Ruby oder JavaScript einzustellen, oder versuchen, herauszufinden, warum Ihr Vim sie nicht richtig erkennt. Möglicherweise verwenden Sie eine Dateierweiterung, die von der automatischen Dateityperkennung nicht unterstützt wird. Sie können neue Dateierweiterungen hinzufügen, wenn Sie möchten (:help new-filetype); Pathogen lädt ftplugin-Dateien jedoch trotzdem problemlos.

verwandte Informationen