Frage

Ich werde durch meine vim dotfiles sie aufzuräumen. Ich habe bemerkt, dass ich im Laufe der Zeit verschiedene Dateityp spezifische Einstellungen in verschiedener inkonsistenter Weise hinzugefügt habe. Nehmen wir an, ich für Python bin Customizing:

  • au BufRead,BufNewFile *.py (do something). Ich weiß nicht so, weil einige Python-Dateien nicht die Py Kündigung haben könnten.

  • au FileType python (do something). Dies scheint eine bessere Option, da es nicht auf die Datei, um die Py Kündigung mit abhängt. Der Nachteil ist, dass Vim nicht über einige Dateitypen kennen. Ich kann machen Vim zusätzliche Dateitypen erkennen, aber ich habe auch verschiedene inkonsistent Möglichkeiten, es zu tun: a. .vim/filetype.vim Datei, ein anderer in .vim/after/filetype.vim und verschiedene set filetype Befehle in .vimrc

  • Fügen Sie eine .vim/ftplugin/python.vim Datei mit Dateityp spezifischen Einstellungen. Ich verstehe die $VIMRUNTIME/ftplugin/python.vim kann außer Kraft setzen, was Einstellungen, die ich hier machen. Ein Problem ist, dass ich bin mir nicht sicher, wie diese wirkt mit .vim/filetype.vim und .vim/after/filetype.vim.

  • ein .vim/after/ftplugin/python.vim hinzufügen. Ich verstehe, dass dies nach $VIMRUNTIME/ftplugin/python.vim geladen wird, so dass es Einstellungen von dort überschreiben kann. Wie im vorherigen Verfahren bin ich nicht sicher, wie es mit den filetype.vim Dateien in Wechselwirkung tritt.

Also ich habe mindestens vier Möglichkeiten, dies zu tun, nicht Syntaxdateien und Dateityp-spezifische Plug-in zu erwähnen. Es scheint mir der beste Weg, dies zu tun ist meine Datei des Typs spezifische Einstellungen in after/ftplugin zu setzen, so dass sie überschrieben nicht bekommen, und filetypes.vim in after aus dem gleichen Grund.

Doch bevor ich gehe ich mag fragen, ob jemand Vorschläge über die beste Art und Weise hat mit Dateityp spezifischen Einstellungen zu befassen.

War es hilfreich?

Lösung

Ich speichere meine Python-spezifische Einstellungen in $HOME/.vim/ftplugin/python.vim , da ich nichts tun, um Konflikt mit $VIMRUNTIME/ftplugin/python.vim .

Wenn man sich diese Einstellungen in einer ftplugin Datei hält overrule was die ftplugins mit Vim Verteilung einrichten, dann $HOME/.vim/after/ftplugin/python.vim ist, was Sie wollen, wie es gelesen wird after diese.

In ähnlichen $HOME/.vim/filetype.vim wird vor $VIMRUNTIME/filetype.vim bezogen werden und das wiederum vor $HOME/.vim/after/filetype.vim bezogen werden.

:scriptnames alle sourced Skriptnamen auflisten, in der Reihenfolge, wie sie wurden zunächst bezogen.

:help filetype bietet ziemlich umfassende Informationen über all dies.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top