ถ้าฉันเปิดไฟล์ด้วยvim dir/to/my/file.c
ฉันจะเปิดไดเรกทอรีdir/to/my
ใน filebrowser ของกลุ่มได้อย่างไร?
ถ้าฉันเปิดไฟล์ด้วยvim dir/to/my/file.c
ฉันจะเปิดไดเรกทอรีdir/to/my
ใน filebrowser ของกลุ่มได้อย่างไร?
คำตอบ:
ลอง:Ex[plore]
ดู จาก:help Ex
:
: สำรวจจะเปิดเบราว์เซอร์ไดเรกทอรีท้องถิ่นในไดเรกทอรีของไฟล์ปัจจุบัน (หรือในไดเรกทอรี [dir] ถ้าระบุ) หน้าต่างจะถูกแยกต่อเมื่อไฟล์ถูกแก้ไขมิฉะนั้นหน้าต่างการเรียกดูจะเข้าแทนที่หน้าต่างนั้น โดยปกติการแยกจะถูกถ่ายในแนวนอน
โดยส่วนตัวแล้วฉันชอบ:
:Sex
คำสั่ง มันเป็นหน้าต่างแยกสำหรับคุณและวางคุณลงในไดเรกทอรีปัจจุบัน
:Sex dir/to/my
ทำงานเกินไป
:Vex
เพื่อเปิดไดเรกทอรีในแนวตั้งได้
Tex
เป็นสิ่งที่ฉันกำลังมองหา (มากกว่าtabe.
)
คุณสามารถใช้:
:e %:h
ข้อมูลเพิ่มเติมเกี่ยวกับการขยายอยู่ที่นี่: http://vimdoc.sourceforge.net/htmldoc/eval.html#expand ()
ดังที่ได้กล่าวไปแล้วคุณสามารถทำ ": สำรวจ" และมันจะเปิดตัวสำรวจไฟล์สำหรับไดเรกทอรีของไฟล์ปัจจุบัน
อย่างไรก็ตามหากคุณต้องการระบุไดเรกทอรีอย่างชัดเจนคุณสามารถใช้ctrl+ rบนบรรทัด: -command เพื่ออ่านเนื้อหาของการลงทะเบียนใด ๆ และ% register เป็นชื่อไฟล์ปัจจุบันรวมถึงเส้นทางหากจำเป็น ดังนั้นให้ทำดังนี้: e ctrl+ r% แล้วถอยกลับเหนือชื่อไฟล์แล้วกด Enter
มีวิธีอื่นที่จะทำ แต่นี่คือวิธีที่ฉันมักจะใช้
:e %
[แท็บ] ซึ่งจะขยาย% ให้คุณ
สำหรับการเปิด Windows Explorer แสดงไดเรกทอรีของไฟล์ปัจจุบัน:
:!start explorer /select,%:p
(ที่มา: http://vim.wikia.com/wiki/Open_Windows_Explorer_showing_directory_of_current_buffer )
: e dir / ถึง / my /
: e. เปิดไดเร็กทอรีที่คุณเรียกใช้เป็นกลุ่มในตอนแรก
Vim browser 'c' ตั้งค่าไดเรกทอรีทำงาน
ฉันไม่แน่ใจว่ามีวิธีการข้ามไปยังไดเรกทอรีของไฟล์ที่คุณกำลังแก้ไขโดยอัตโนมัติหรือไม่
หากคุณแก้ไขด้วยpwd
คำสั่งบนยูนิกซ์มันจะเปิดไดเรกทอรีปัจจุบันที่คุณอยู่
:e `pwd`
สิ่งนี้จะไม่ทำงานเหมือนที่คุณต้องการหากคุณทำชั่วcd
ขณะหนึ่ง
:e `dirname %`
dirname ขยายไปยังไดเร็กทอรีซึ่งเป็นไฟล์ปัจจุบัน
หากคุณต้องการเปลือกจริงคุณจะต้อง:lcd %:p:h
เรียกใช้:shell
แล้วเรียกคืนไดเรกทอรีการทำงานหลังจากที่คุณออก