เมื่อใช้ปลั๊กอิน NERDTreeพฤติกรรมเริ่มต้นคือการเปิดไฟล์ใหม่และทำให้บัฟเฟอร์ NERDTree เปิดอยู่ สิ่งที่ฉันต้องการจะทำคือการรักษาพฤติกรรมเริ่มต้นนี้ แต่ยังเอาชนะเมื่อฉันต้องการดังนั้นบัฟเฟอร์ NERDTree จะถูกปิดหลังจากที่ฉันเปิดไฟล์
ฉันรู้ว่าฉันสามารถใช้let NERDTreeQuitOnOpen=1
เพื่อปิดบัฟเฟอร์ NERDTree โดยอัตโนมัติเมื่อฉันเปิดไฟล์ใหม่ แต่ตัวเลือกนี้จะแทนที่พฤติกรรมเริ่มต้นโดยสิ้นเชิง (ซึ่งไม่ใช่สิ่งที่ฉันต้องการ)
เป็นการดีที่ฉันต้องการทราบว่ามีคุณลักษณะในตัวใน NERDTree ที่จะทำสิ่งที่ฉันต้องการ (ฉันค้นหามาแล้วแต่ไม่พบอะไรแบบนั้นดังนั้นฉันคิดว่ามันไม่มีอยู่จริง)
และถ้านั่นไม่อยู่ฉันมีสองความคิด:
คนแรกคือการสร้างฟังก์ชั่นซึ่งจะกำหนด
NERDTreeQuitOnOpen
ที่จะ1
เปิดไฟล์นั้นตั้งค่าอีกครั้งเพื่อNERDTreeQuitOnOpen
0
สิ่งที่สองคือการสร้างการแมปต่อไปนี้:
map d<CR> <CR> :NERDTree <CR> :bd<CR>
ซึ่งเปิดไฟล์ (ก่อน<CR>
), กลับไปที่ NERDTree buffer (:NERDTree <CR>
) และปิด buffer นี้ (:bd <CR>
) ฉันควรปรับปรุงเพื่อให้การแมปมีอยู่ในบัฟเฟอร์ NERDTree เท่านั้น แต่ฉันรู้สึกว่านั่นเป็นวิธีแก้ปัญหาที่น่าเกลียดและฉันสามารถปรับปรุงได้
ความคิดใดจะดีที่สุดและทำไม หรือมีตัวเลือกที่ดียิ่งขึ้น?
map d<cr> <cr>:NERDTreeClose<cr>
ทำแผนที่?