Verwenden Sie ein einzelnes ftplugin für mehr als einen Dateityp
10
Ich habe ein ftplugin, unter &runtimepath/ftplugin/c.vimdem alle meine bevorzugten Optionen für c-Dateien festgelegt sind. Ich möchte jedoch auch die gleichen Einstellungen für cppDateien verwenden. Ich könnte die Einstellungen einfach kopieren, aber das scheint überflüssig. Gibt es eine Möglichkeit, ein ftplugin für mehr als einen Dateityp zu laden?
Das Standard-Ftplugin ( /usr/share/vim/vim74/ftplugin/cpp.vimauf meinem System) sollte dies bereits tun:
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
finish
endif
" Behaves just like C
runtime! ftplugin/c.vim ftplugin/c_*.vim ftplugin/c/*.vim
runtimesollte relativ sein zu runtimepath:
Es kann mehrere {file}Argumente geben, die durch Leerzeichen getrennt sind. Jedes {file}wird im ersten Verzeichnis von 'runtimepath', dann im zweiten Verzeichnis usw. gesucht .
Wenn ich ein erstelle ~/.vim/ftplugin/c.vim, wird dies auch für C ++ - Dateien ausgeführt, ohne etwas zu tun!
Wenn Sie diese Datei nicht in Ihrer Vim-Version haben, können Sie ~/.vim/ftplugin/cpp.vimmit der runtime!Anweisung eine neue Datei erstellen .
Wenn Sie sich auf einem UNIX-y-System befinden, können Sie einen Symlink verwenden:
Innerhalb von cpp.vim setzen Sie:
<sfile>
Erweitert sich auf die aktuell bezogene Datei und:h
bedeutet den Kopf davon.quelle
:runtime! ftplugin/css*.vim ftplugin/css/*.vim
wäre IMO eine bessere Lösung , es sei denn, Sie möchten eine ganz bestimmte Datei laden .