หากฉันเพิ่มไฟล์ไปยังไดเรกทอรีเดียวกันที่เปิดอยู่NERDTree
วิธีเดียวที่ฉันสามารถเห็นไฟล์ที่เพิ่มเข้ามาคือถ้าฉันออกจากกลุ่มแล้วเริ่มใหม่อีกครั้ง
มีวิธีที่ฉันสามารถโหลดไฟล์ใหม่ได้NERDTree
หรือไม่?
หากฉันเพิ่มไฟล์ไปยังไดเรกทอรีเดียวกันที่เปิดอยู่NERDTree
วิธีเดียวที่ฉันสามารถเห็นไฟล์ที่เพิ่มเข้ามาคือถ้าฉันออกจากกลุ่มแล้วเริ่มใหม่อีกครั้ง
มีวิธีที่ฉันสามารถโหลดไฟล์ใหม่ได้NERDTree
หรือไม่?
คำตอบ:
คุณสามารถปิดและเปิด NERDTree อีกครั้งหรือกดrเพื่อรีเฟรชรายชื่อไดเรกทอรีปัจจุบันหรือRเพื่อรีเฟรชรายชื่อของไดเรกทอรีราก
คุณเห็น "กดเพื่อขอความช่วยเหลือ" ที่ด้านบนของหน้าต่าง NERDTree หรือไม่ หมายความว่าคุณสามารถกด?ขอความช่วยเหลือได้ หากคุณทำเช่นนั้นคุณจะเห็นรายการทางลัดของ NERDTree อย่างละเอียด นั่นมันเรียบร้อย
โดยทั่วไปปลั๊กอินจำนวนมากมีเอกสารอย่างละเอียดที่คุณสามารถเข้าถึง:help <pluginame>
ได้
?
ช่วยเหลือสามครั้งและไม่เคยเห็นr
!
r
ทางลัด
?
NERDTree ทำรายการทางลัดเหล่านี้ในส่วน "การแมประบบแฟ้ม" มันแสดงรายการ“ r
: รีเฟรชเคอร์เซอร์ dir” และ“ R
: รีเฟรชรูทปัจจุบัน”
ตามที่ @romainl ตอบด้านบน; กดrเพื่อรีเฟรชไดเรกทอรีปัจจุบันหรือRรีเฟรชไดเรกทอรีราก
คุณสามารถพิจารณาเพิ่มไฟล์ใหม่จาก nerdTree เองโดยการกดmจากนั้นaเพิ่มไฟล์ใหม่ (หรือไดเรกทอรีโดยการเพิ่มเครื่องหมายสแลชต่อท้าย) วิธีนี้คุณไม่จำเป็นต้องรีเฟรช nerdTree เพื่อดูไฟล์ที่เพิ่มใหม่
แทนที่จะกดปุ่มRในNERDTree
หน้าต่างฉันใช้แผนที่ที่กำหนดเองที่ทำเพื่อฉัน:
nmap <Leader>r :NERDTreeRefreshRoot
ฉันได้แมปกับLeader+ rแล้ว แต่คุณสามารถแมปกับสิ่งที่คุณต้องการ
คำอธิบาย:
NERDTree
หน้าต่างก่อนR
คีย์)หมายเหตุ:คุณสามารถเพิ่มขั้นตอนสุดท้ายเพื่อรีเฟรช CtrlP พร้อมกับ NERDTree
:NERDTreeRefreshRoot
โดยไม่ต้องเน้นต้นไม้
คุณสามารถกดปุ่ม R ได้โดยใช้ฟังก์ชั่นฟีดคีย์ เช่นนี้
call feedkeys("R")
ฉันได้กำหนดฟังก์ชั่นในไฟล์. vimrc ของฉัน:
fun! ToggleNERDTreeWithRefresh()
:NERDTreeToggle
if(exists("b:NERDTreeType") == 1)
call feedkeys("R")
endif
endf
nmap <silent> <c-l> :call ToggleNERDTreeWithRefresh()<cr>
ดังนั้นเมื่อฉันพิมพ์ctrl+ lNERDTree จะถูกสลับและรีเฟรชไดเรกทอรีราก