Saya memperbarui jawaban saya. Saya tidak yakin Anda dapat menambahkannya ke .vimrc Anda untuk melakukan apa yang Anda inginkan, tetapi saya tahu Anda dapat menjalankan vim dari baris perintah dengan cara yang membuka NERDTree secara otomatis. Coba lihat :)
Steven Kryskalla
Jawaban:
199
Oke, versi sebelumnya agak singkat, tetapi jawaban yang Anda cari adalah menambahkan baris di bawah ini ke dalam ~/.vimrcfile Anda . Ini memberi tahu Vim bahwa Anda ingin mengatur perintah untuk dijalankan ketika Vim dimulai, tetapi karena itu tergantung pada berbagai plugin yang akan dimuat, Anda tidak ingin menjalankannya sampai semua inisialisasi selesai:
autocmd VimEnter * NERDTree
Namun, jika Anda terganggu oleh fakta bahwa kursor selalu dimulai di jendela NERDTree, Anda dapat menambahkan perintah otomatis kedua yang akan memindahkan kursor ke jendela utama:
autocmd VimEnter * NERDTree
autocmd VimEnter * wincmd p
Saya tidak tahu mengapa tetapi ini tidak berhasil untuk saya. Saya harus menelepon: NERDTreeToggle inside vim untuk tetap menunjukkan nerdtree
hgf
Jika Anda menggunakan skrip seperti vimpager, Anda harus memindahkan baris-baris ini ke /.vim/after/plugin/NERD_tree.vimskrip Anda , sehingga tidak mencoba dijalankan dengan plugin dimatikan.
Joshua Olson
9
Anda tidak memerlukan dua autocmd yang terpisah:autocmd VimEnter * NERDTree | wincmd p
Dave James Miller
dapatkah saya menentukan jalur sebenarnya yang ingin saya mulai? - Yup bekerja dengan folder (tidak ada garis miring di bagian akhir)
AturSams
1
Saya lebih suka melakukan hal berikut: autocmd VimEnter * NERDTreedan kemudian autocmd VimEnter * if argc() | wincmd p | endif. Dengan cara itu, kursor berada di NERDTree jika saya belum membuka file tertentu, tetapi jika saya memilih file, itu akan dimulai di jendela utama.
pengguna2275806
20
Saya suka melihat NERDTree hanya ketika saya memulai vim tanpa argumen file, jadi saya menambahkan ini ke .vimrc saya:
Saya menjalankan mesin Unix-y. Saya telah menginstal NERDTree, yang saya perlukan adalah menjalankan NERDTree ketika saya mengetik vim di commandline. Sehingga file browser selalu terbuka ke kiri, seperti di Textmate. Saya tidak tahu apa yang harus dimasukkan ke dalam vimrc untuk melakukan ini, saya mencoba: NERDTree tetapi tampaknya tidak mengenali perintah ...
chutsu
2
Saya pikir saya akan menambahkan bahwa ada: NERDTreeToggle built in pemetaan yang dapat Anda petakan yang membuat fungsi kustom Anda agak berlebihan.
Bagus ... Saya juga menggunakan Vim sebagai pager dan hanya menambahkan argumen untuk menonaktifkan perintah otomatis ... export MANPAGER='col -bx | mvim -c ":set ft=man nonu nolist" -c ":autocmd!" -M -R - > /dev/null 2>&1'
Eddie B
7
" NERD Tree
nmap <silent> <special> <F2> :NERDTreeToggle<RETURN>
Jawaban:
Oke, versi sebelumnya agak singkat, tetapi jawaban yang Anda cari adalah menambahkan baris di bawah ini ke dalam
~/.vimrc
file Anda . Ini memberi tahu Vim bahwa Anda ingin mengatur perintah untuk dijalankan ketika Vim dimulai, tetapi karena itu tergantung pada berbagai plugin yang akan dimuat, Anda tidak ingin menjalankannya sampai semua inisialisasi selesai:Namun, jika Anda terganggu oleh fakta bahwa kursor selalu dimulai di jendela NERDTree, Anda dapat menambahkan perintah otomatis kedua yang akan memindahkan kursor ke jendela utama:
sumber
/.vim/after/plugin/NERD_tree.vim
skrip Anda , sehingga tidak mencoba dijalankan dengan plugin dimatikan.autocmd VimEnter * NERDTree | wincmd p
autocmd VimEnter * NERDTree
dan kemudianautocmd VimEnter * if argc() | wincmd p | endif
. Dengan cara itu, kursor berada di NERDTree jika saya belum membuka file tertentu, tetapi jika saya memilih file, itu akan dimulai di jendela utama.Saya suka melihat NERDTree hanya ketika saya memulai vim tanpa argumen file, jadi saya menambahkan ini ke .vimrc saya:
sumber
Apakah Anda menggunakan sistem Windows atau unix-y?
Jika Anda menggunakan sistem unix-y, Anda memasukkan plugin
~/.vim/plugin
. Inilah tampilan direktori plugin saya:Setelah itu mulai bekerja segera. Coba jalankan vim seperti ini:
Ini harus membuka direktori saat ini dalam tampilan pohon NERD.
Jika Anda menggunakan Windows, Anda meletakkan plugin di sini:
C:\Program Files\Vim\vim70\plugin
Agar NERDTree dimuat secara otomatis saat Anda memulai vim, jalankan seperti ini dari baris perintah:
Anda dapat menyetel alias untuk ini di
.bashrc
:Sekarang setiap kali Anda menjalankan
vimt
(bukanvim
) Anda juga akan membuka NERDTree di sisi kiri jendela.Anda juga dapat menambahkan tombol pintas untuk memulai NERDTree dengan
.vimrc
cara ini:Sekarang ketika Anda menekan
Esc
makat
NERDTree akan terbuka.sumber
alias vimt='vim -c "NERDTree" $1'
Sesuai instruksi NERDTree Anda bisa menggunakan pathogen.vim . Instal dengan:
Tambahkan ini ke .vimrc Anda:
lalu instal NERDTree:
Dan jika Anda ingin membuka NERDTree secara otomatis saat Vim dijalankan, tambahkan yang berikut ini ke .vimrc Anda:
sumber
Jawabannya di sini memiliki masalah kecil.
Jika Anda memanggil
vim --noplugin
atau menggunakan skrip yang menggunakan--noplugin
mode seperti vimpager , itu akan menyebabkan kesalahan ini:Untuk menghindari ini, masukkan perintah
~/.vim/after/plugin/NERD_tree.vim
sebagai gantinya:Dan mungkin juga merupakan ide yang baik untuk menguji yang
NERDtree
tersedia juga, yaitu:sumber
export MANPAGER='col -bx | mvim -c ":set ft=man nonu nolist" -c ":autocmd!" -M -R - > /dev/null 2>&1'
sumber