Vim bietet keine Möglichkeit, alle möglichen Plugin-Optionen zu kennen.
Als Plugin-Autor kann ich Ihnen sagen, dass dies ziemlich komplex ist, da es viele verschiedene Möglichkeiten gibt, fortzufahren. Zum Beispiel denken wir entweder, dass wir, wenn der Endbenutzer keinen Wert für eine Option angegeben hat .vimrc
, diese Option erzwingen, dass sie existiert und einem Standardwert entspricht, oder wir können sagen: "Nehmen Sie entweder den von den Endbenutzer oder verwenden Sie einen fest codierten Standardwert ".
Bei diesem ersten Ansatz kann der Endbenutzer die Liste der verfügbaren Optionen mit einem c_CTRL-D
, oder c_TAB
usw. anzeigen.
Immer mehr Plugins organisieren alle ihre Optionen in Wörterbüchern. dh anstatt g:plugin_foo_option
und zu haben g:plugin_bar_option
, haben wir g:plugin.foo_option
und g:plugin.bar_option
. Dadurch wird vermieden, dass die Liste g:
der globalen Optionen verschmutzt wird , aber wir verlieren die automatische Vervollständigung der Befehlszeile (ich kann eventuell ein Problem mit dem Thema auf vim github eröffnen).
Bisher habe ich nur über globale Optionen gesprochen. Die meisten Plugins versuchen nicht, spezifischere Optionen zu unterstützen, selbst wenn sie dies hätten tun sollen. Zum Beispiel bedauere ich, dass weder YouCompleteMe noch Alternate noch viele andere Plugins projektspezifische Optionen anstelle globaler Optionen verwenden. In der Tat möchte ich je nach Projekt, an dem ich arbeite, die jeweiligen Optionen auf unterschiedliche Werte setzen. Leider ist dies kein Workflow, den sie berücksichtigt haben. In meinen Plugins können viele Optionen auf Projektbasis oder auf Pufferbasis spezialisiert werden. In letzter Zeit habe ich mir ein Experiment zu diesem Thema ausgedacht. Aber selbst mit dem üblichen und einfachen g:plugin_option
+ b:plugin_option
Paar ist es nahezu unmöglich, alle verfügbaren Optionen zu kennen.
Manchmal versuche ich, Befehle anzubieten, mit denen ich Optionen festlegen kann, wie ich es mit Build-Tools-Wrappern getan habe, oder sogar einige Optionen im Menü anzuzeigen (wenn ich gvim verwende), aber es ist wirklich alles andere als perfekt.
Ich befürchte, dass die Dokumentation das Beste ist, was es gibt. Sie können sogar versuchen, eine :h pluginname^D
. Es ist wahrscheinlich der beste verfügbare Ansatz.