เป็นกลุ่มไวยากรณ์เน้นไฟล์ของฉันในวิธีที่ตลกและฉันต้องการที่จะรู้ว่าไฟล์ไวยากรณ์ใดรับผิดชอบต่อพฤติกรรมนี้ ฉันจะค้นหาไฟล์ไวยากรณ์ที่ vim โหลดได้อย่างไร
เป็นกลุ่มไวยากรณ์เน้นไฟล์ของฉันในวิธีที่ตลกและฉันต้องการที่จะรู้ว่าไฟล์ไวยากรณ์ใดรับผิดชอบต่อพฤติกรรมนี้ ฉันจะค้นหาไฟล์ไวยากรณ์ที่ vim โหลดได้อย่างไร
คำตอบ:
หากต้องการค้นหาไฟล์ที่ Vim โหลดจริงให้เรียกใช้งาน
:scriptnames
              :echo b:current_syntaxหากต้องการดูไวยากรณ์ในปัจจุบันมีผลการดำเนินการ หากต้องการดูรายการไวยากรณ์ในปัจจุบันมีผลทำตาม Ingo :syntax listปัญหาและดำเนินการ หลังอาจช่วยถ้ารายการไวยากรณ์จากไฟล์ไวยากรณ์มากกว่าหนึ่งไฟล์มีผลตามที่ระบุไว้ Ingo
                    /usr/share/vim/vim73/filetype.vimปรับเปลี่ยน หลังจากใช้คำสั่งดังกล่าวฉันรู้ว่ามันถูกใช้รุ่น MacVim ~/Applications/MacVim.app/Contents/Resources/vim/runtime/filetype.vimที่ หากคุณติดตั้ง MacVim ตรวจสอบให้แน่ใจว่าคุณแก้ไขไฟล์ที่ถูกต้อง
                    /usr/share/vim/vim81/syntax/cf.vimสำหรับฉัน) ฉันติดตั้ง cf.vim ที่กำหนดเองเพราะมาตรฐานเป็นวันที่  :scriptnamesแสดงไฟล์ทั้งสอง ค่าเริ่มต้นต่ำกว่าในรายการสคริปต์ แม้กระนั้นอดีตกำลังถูกใช้ ถ้าคุณดูที่มียาม/usr/share/vim/vim81/syntax/cf.vim if exists("b:current_syntax") finish endifดังนั้นในกรณีของฉันscriptnamesมีประโยชน์ แต่ฉันต้องขุดลึกลงไปอีกนิด
                    ไวยากรณ์สำหรับบัฟเฟอร์ปัจจุบันสามารถสอบถามผ่าน
:setlocal syntax?
โดยปกติแล้ว (แต่ไม่จำเป็น) จะสอดคล้องกับ filetype ของบัฟเฟอร์ ( :setlocal filetype?)
เพื่อให้มองลึก
:syntax list
แสดงนิยามไวยากรณ์ทั้งหมด (บางไวยากรณ์ (สามารถ) รวมถึงไวยากรณ์ของภาษาอื่นเช่นjavaมีhtmlสำหรับมาร์กอัพข้อคิดเห็น JavaDoc)
คุณสามารถดูประเภทไฟล์ที่ใช้และโดยในปัจจุบัน
:verbose set ft ?
ปลั๊กอินที่ใช้จัดการประเภทไฟล์นั้นมักอยู่ที่
:e $VIMRUNTIME\ftplugin