Vim tarafından bilinen tüm dosya türü eklentilerini listele


14

Vim'in tanıdığı tüm dosya türlerini runtimepath'tan listelemek istiyorum.

Örneğin:

ada
arc
c
clojure
common-lisp
elisp
go
python

Nasıl yapabilirim?

Yanıtlar:


18

Filetype argümanlarını alan özel bir komut için bunlara ihtiyacınız varsa, bunu kullanabilirsiniz :command -complete=filetype. Aksi takdirde, listeyi globpath()kendiniz işlevle türetebilirsiniz :

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

Bu, tüm ftplugin komut dosyalarını runtimepath'tan alır ve sonra dosyapec'ini fnamemodify()yalnızca dosya adının kökünü listelemek için değiştirir . split()bir listeye dönüştürür ve ing join()için satırlara geri döner :echo.


Bu dosyaları ftplugin/afterda alıyor mu?
Profpatsch

2
Demek istiyorsun after/ftpluginve evet, çünkü bunlar içinde &rtp.
Ingo Karkat

Bu, hem bash hem de zsh üzerinde bir sözdizimi hatası verir.
mareoraft

3
@mareoraft: Bunu Vim'in içinde dene, kabuğun içinde değil!
Ingo Karkat
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.