Quiero enumerar todos los tipos de archivo que Vim reconoce de su ruta de tiempo de ejecución.
Por ejemplo:
ada
arc
c
clojure
common-lisp
elisp
go
python
¿Cómo puedo hacerlo?
Si los necesita para un comando personalizado que toma argumentos de tipo de archivo, puede usarlos :command -complete=filetype
. De lo contrario, puede derivar la lista a través de la globpath()
función usted mismo:
echo join(map(split(globpath(&rtp, 'ftplugin/*.vim'), '\n'), 'fnamemodify(v:val, ":t:r")'), "\n")
Esto obtiene todos los scripts de ftplugin del runtimepath, y luego modifica la especificación del archivo fnamemodify()
para que solo enumere la raíz del nombre del archivo. split()
se convierte en una lista y join()
vuelve a las líneas para :echo
ing.
ftplugin/after
?after/ftplugin
, y sí, porque esos están contenidos en&rtp
.