แก้ไข: แนะนำการแมปแบบสมมาตรอย่างดีสำหรับเคสแยกแนวตั้งเนื่องจาก Vim โดยค่าเริ่มต้นมีการแมปสองกรณีสำหรับเคสแยกแนวนอน
มีหลายวิธีในการแก้ไข "ไฟล์ภายใต้เคอร์เซอร์" และในขณะที่คุณสามารถทำการแมปgfเพื่อแก้ไขในแท็บใหม่ได้อย่างที่ @ alexander-myshov กล่าวถึงนั่นหมายความว่าคุณมีสองวิธีในการแก้ไขในแท็บใหม่ แต่ไม่มีวิธี แก้ไขในหน้าต่างปัจจุบันซึ่งบางครั้งคุณอาจต้องการทำเช่นกัน ไม่ยากที่จะใช้การแมปมาตรฐาน แต่ถ้าคุณต้องการทำการแมปหนึ่งไปยังgfอีกอันฉันขอแนะนำให้สลับการแมปเพื่อให้คุณไม่สูญเสียการแมปใดรายการหนึ่ง
วิธีแก้ไขชื่อไฟล์บางส่วนใต้เคอร์เซอร์
- gf - แก้ไขไฟล์ที่มีอยู่ใต้เคอร์เซอร์ในหน้าต่างเดียวกัน
- C-Wf - แก้ไขไฟล์ที่มีอยู่ใต้เคอร์เซอร์ในหน้าต่างแยก
- C-WC-F - แก้ไขไฟล์ที่มีอยู่ใต้เคอร์เซอร์ในหน้าต่างแยก
- C-Wgf - แก้ไขไฟล์ที่มีอยู่ภายใต้เคอร์เซอร์ในแท็บใหม่
ไม่มีการแมปมาตรฐานเพื่อแก้ไขไฟล์ที่มีอยู่ภายใต้เคอร์เซอร์ในแนวตั้งแยก แต่คุณสามารถทำได้โดยแยกหน้าต่างในแนวตั้งก่อนแล้วจึงแก้ไขไฟล์ภายใต้เคอร์เซอร์ในหน้าต่างปัจจุบัน
- C-Wv+ gf- แก้ไขไฟล์ที่มีอยู่ภายใต้เคอร์เซอร์ในหน้าต่างที่แยกในแนวตั้ง
ดังที่คุณเห็นด้านบนมีการแมปเริ่มต้นสองรายการสำหรับแก้ไขไฟล์ภายใต้เคอร์เซอร์ในแนวนอน ดังนั้นคุณสามารถทำการแมปหนึ่งใหม่ไปยัง keystring ด้านบนขยายกลุ่มของแผนที่เพื่อครอบคลุมตัวแยกแนวตั้ง คุณสามารถผูกอะไรแน่นอน nnoremap <C-W><C-F> <C-W>vgf
แต่นี้ดูเหมือนว่าจะเสร็จสมบูรณ์สมมาตรอย่าง: ตอนนี้คุณมี
- gf - แก้ไขไฟล์ที่มีอยู่ใต้เคอร์เซอร์ในหน้าต่างเดียวกัน
- C-Wf - แก้ไขไฟล์ที่มีอยู่ใต้เคอร์เซอร์ในหน้าต่างแยก
- C-WC-F - แก้ไขไฟล์ที่มีอยู่ใต้เคอร์เซอร์ในหน้าต่างที่แยกในแนวตั้ง
- C-Wgf - แก้ไขไฟล์ที่มีอยู่ภายใต้เคอร์เซอร์ในแท็บใหม่
คุณยังสามารถไปที่บรรทัดใดบรรทัดหนึ่งในไฟล์ได้หากชื่อไฟล์ใต้เคอร์เซอร์ตามด้วยหมายเลขบรรทัด ถ้าคุณมี
filename:10
คุณสามารถแก้ไขไฟล์และมีการย้ายเคอร์เซอร์ไปที่เส้น gF10 สิ่งที่เทียบเท่าจะเป็นจริงสำหรับC-WFการแบ่งและC-WgFสำหรับแท็บ การทำสมมาตรให้เสร็จเพื่อแยกแนวตั้งนั้นไม่ได้ตรงไปตรงมา แต่ฉันขอแนะนำว่าC-WC-S-Fแผนที่ที่ได้รับด้วยการnnoremap <C-W><C-S-F> <C-W>vgF
เลียนแบบFหรือShift+ fจากแผนที่เริ่มต้นในฐานะผู้สมัคร
นี่:
คือตัวอย่างคุณสามารถใช้อักขระใด ๆ ที่ไม่ใช่อักขระชื่อไฟล์ (ดู:h 'isfname'
)
คำสั่งทั้งหมดเหล่านี้มาพร้อมกับซอสแอปเปิ้ลเช่น
- ขยาย wildchars
- ดูในสถานที่มากกว่าไดเรกทอรีปัจจุบันตาม
'path'
ตัวเลือกของคุณ
- เพิ่มนามสกุลไฟล์ให้กับชื่อไฟล์ตาม
'suffixesadd'
ตัวเลือกของคุณ
- มิฉะนั้นแก้ไขชื่อไฟล์ที่กำหนดเพื่อค้นหาการแข่งขันตาม
'includeexpr'
ตัวเลือกของคุณ
อ่านเพิ่มเติมที่:help gf
และหัวข้อความช่วยเหลือสำหรับตัวเลือกต่างๆเหล่านี้
หากชื่อไฟล์ใต้เคอร์เซอร์ตั้งชื่อไฟล์ที่ไม่มีอยู่คุณอาจใช้คำสั่งแก้ไขมาตรฐานได้ดีกว่า<cfile>
เช่น
:edit <cfile> // edit non-existent file under cursor in current window
:split <cfile> // edit non-existent file under cursor in split window
:vsplit <cfile> // edit non-existent file under cursor in vertical split window
:tabe <cfile> // edit non-existent file under cursor in new tabpage
และด้วยหลักสูตรเหล่านี้คุณสามารถใช้สิ่งต่าง ๆ เช่น:spl+10 filename
ย้ายเคอร์เซอร์ไปยังบรรทัดที่ต้องการหรือ:tabe+/cologne filename
เพื่อย้ายเคอร์เซอร์ไปที่การเกิดขึ้นครั้งแรกของรูปแบบ
'hidden'
ตัวเลือก (set hidden
) ช่วยให้คุณสามารถนำทางไปจากบัฟเฟอร์ที่ไม่ได้บันทึก สำหรับฉันนี่เป็นตัวสนับสนุนการผลิตขนาดใหญ่และมีความสำคัญต่อการหยุดพึ่งพาการแยกและแท็บมากมาย