Я хочу перечислить все типы файлов, которые Vim распознает по пути выполнения.
Например:
ada
arc
c
clojure
common-lisp
elisp
go
python
Как мне это сделать?
Если они вам нужны для пользовательской команды, которая принимает аргументы типа файла, вы можете просто использовать :command -complete=filetype
. Иначе, вы можете получить список с помощью функции globpath()
самостоятельно:
echo join(map(split(globpath(&rtp, 'ftplugin/*.vim'), '\n'), 'fnamemodify(v:val, ":t:r")'), "\n")
Это получает все сценарии ftplugin из runtimepath, а затем изменяет спецификацию файла с помощью fnamemodify()
чтобы вывести только корень имени файла. split()
преобразуется в List, и join()
возвращается к строкам для :echo
ing.