Liste tous les plugins de type de fichiers connus de Vim


14

Je veux lister tous les types de fichiers que Vim reconnaît depuis son runtimepath.

Par exemple:

ada
arc
c
clojure
common-lisp
elisp
go
python

Comment puis-je le faire?

Réponses:


18

Si vous en avez besoin pour une commande personnalisée qui accepte des arguments de type de fichier, vous pouvez simplement les utiliser :command -complete=filetype. Sinon, vous pouvez dériver la liste via la globpath()fonction vous-même:

echo join(map(split(globpath(&rtp, 'ftplugin/*.vim'), '\n'), 'fnamemodify(v:val, ":t:r")'), "\n")

Cela obtient tous les scripts ftplugin du runtimepath, puis modifie la spécification de fichier via fnamemodify()pour répertorier uniquement la racine du nom de fichier. split()convertit en une liste et join()revient aux lignes pour :echoing.


Est-ce que cela prend aussi des fichiers ftplugin/after?
Profpatsch

2
Vous voulez dire after/ftplugin, et oui, parce que ceux-ci sont contenus dans &rtp.
Ingo Karkat

Cela donne une erreur de syntaxe sur bash et zsh.
mareoraft

3
@mareoraft: Essayez ceci dans Vim, pas dans le shell!
Ingo Karkat
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.