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