ฉันต้องการแสดงรายการประเภทไฟล์ทั้งหมดที่ Vim รู้จักจาก runtimepath
ตัวอย่างเช่น:
ada
arc
c
clojure
common-lisp
elisp
go
python
ฉันจะทำมันได้อย่างไร
ฉันต้องการแสดงรายการประเภทไฟล์ทั้งหมดที่ Vim รู้จักจาก runtimepath
ตัวอย่างเช่น:
ada
arc
c
clojure
common-lisp
elisp
go
python
ฉันจะทำมันได้อย่างไร
คำตอบ:
หากคุณต้องการเหล่านั้นสำหรับคำสั่งที่กำหนดเองที่ใช้อาร์กิวเมนต์ filetype :command -complete=filetypeคุณก็สามารถใช้ มิฉะนั้นคุณสามารถรับรายการผ่านglobpath()ฟังก์ชั่นของตัวเอง:
echo join(map(split(globpath(&rtp, 'ftplugin/*.vim'), '\n'), 'fnamemodify(v:val, ":t:r")'), "\n")
สิ่งนี้ได้รับสคริปต์ ftplugin ทั้งหมดจาก runtimepath แล้วแก้ไข filespec ผ่านfnamemodify()เพื่อแสดงรายการเฉพาะรากของชื่อไฟล์ split()แปลงเป็นรายการและjoin()กลับไปที่สายสำหรับ:echoไอเอ็นจี
after/ftplugin &rtp
ftplugin/afterด้วยหรือไม่