ฉันต้องการแสดงรายการประเภทไฟล์ทั้งหมดที่ 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
ด้วยหรือไม่