Ich möchte alle Dateitypen auflisten, die Vim anhand seines Laufzeitpfads erkennt.
Beispielsweise:
ada
arc
c
clojure
common-lisp
elisp
go
python
Wie kann ich es tun?
Ich möchte alle Dateitypen auflisten, die Vim anhand seines Laufzeitpfads erkennt.
Beispielsweise:
ada
arc
c
clojure
common-lisp
elisp
go
python
Wie kann ich es tun?
Antworten:
Wenn Sie diese für einen benutzerdefinierten Befehl benötigen, der Dateitypargumente akzeptiert, können Sie sie einfach verwenden :command -complete=filetype. Ansonsten können Sie die Liste über die globpath()Funktion selbst ableiten :
echo join(map(split(globpath(&rtp, 'ftplugin/*.vim'), '\n'), 'fnamemodify(v:val, ":t:r")'), "\n")
Dadurch werden alle ftplugin-Skripte vom Laufzeitpfad abgerufen und die Dateispezifikation über so geändert fnamemodify(), dass nur das Stammverzeichnis des Dateinamens aufgeführt wird. split()konvertiert in eine Liste und join()zurück zu den Zeilen für :echoing.
after/ftplugin, und ja, weil diese enthalten sind &rtp.
ftplugin/after?