Odpowiedzi:
W porządku, poprzednia wersja była nieco lakoniczna, ale odpowiedzią, której szukasz, jest dodanie poniższej linii do ~/.vimrc
pliku. Mówi Vimowi, że chcesz ustawić polecenie uruchamiane podczas uruchamiania Vima, ale ponieważ zależy to od różnych wtyczek, które mają być załadowane, nie chcesz go uruchamiać, dopóki cała inicjalizacja nie zostanie zakończona:
autocmd VimEnter * NERDTree
Jeśli jednak denerwuje Cię fakt, że kursor zawsze zaczyna się w oknie NERDTree, możesz dodać drugą autokomendę, która przeniesie kursor do głównego okna:
autocmd VimEnter * NERDTree
autocmd VimEnter * wincmd p
/.vim/after/plugin/NERD_tree.vim
skryptu, aby nie próbował wykonywać się z wyłączonymi wtyczkami.
autocmd VimEnter * NERDTree | wincmd p
autocmd VimEnter * NERDTree
a następnie autocmd VimEnter * if argc() | wincmd p | endif
. W ten sposób kursor znajduje się na NERDTree, jeśli nie otworzyłem określonego pliku, ale jeśli wybrałem plik, zaczyna się w oknie głównym.
Czy korzystasz z systemu Windows lub unix-y?
Jeśli jesteś w systemie unix-y, umieszczasz wtyczki ~/.vim/plugin
. Oto jak wygląda mój katalog wtyczek:
$ ls ~/.vim/plugin
NERD_tree.vim scratch.vim scratchfind.vim
Po tym od razu zaczyna działać. Spróbuj uruchomić Vima w ten sposób:
$ vim .
Powinien otworzyć bieżący katalog w widoku drzewa NERD.
Jeśli używasz systemu Windows, umieść wtyczki tutaj: C:\Program Files\Vim\vim70\plugin
Aby NERDTree ładował się automatycznie po uruchomieniu vima, uruchom go w ten sposób z linii poleceń:
$ vim -c "NERDTree" some_file.txt
Możesz ustawić dla tego alias w .bashrc
:
alias vimt='vim -c "NERDTree" $1'
Teraz za każdym razem, gdy uruchomisz vimt
(zamiast vim
), otworzysz także NERDTree po lewej stronie okna.
Możesz także dodać klawisz skrótu, aby uruchomić NERDTree w .vimrc
ten sposób:
function OpenNERDTree()
execute ":NERDTree"
endfunction
command -nargs=0 OpenNERDTree :call OpenNERDTree()
nmap <ESC>t :OpenNERDTree<CR>
Teraz, gdy trafisz Esc
wówczas t
będzie to pop otwarte NERDTree.
alias vimt='vim -c "NERDTree" $1'
Zgodnie z instrukcjami NERDTree możesz po prostu użyć pathogen.vim . Zainstaluj go za pomocą:
mkdir -p ~/.vim/autoload ~/.vim/bundle; \
curl -Sso ~/.vim/autoload/pathogen.vim \
https://raw.github.com/tpope/vim-pathogen/master/autoload/pathogen.vim
Dodaj to do swojego .vimrc:
execute pathogen#infect()
następnie zainstaluj NERDTree:
cd ~/.vim/bundle
git clone https://github.com/scrooloose/nerdtree.git
A jeśli chcesz automatycznie otwierać NERDTree podczas uruchamiania Vima, dodaj do swojego .vimrc:
autocmd vimenter * NERDTree
Odpowiedzi tutaj mają niewielki problem.
Jeśli wywołasz vim --noplugin
lub użyjesz skryptu, który używa --noplugin
trybu, takiego jak vimpager , spowoduje to ten błąd:
Error detected while processing VimEnter Auto commands for "*":
E492: Not an editor command: NERDTree
Aby tego uniknąć, wpisz polecenie ~/.vim/after/plugin/NERD_tree.vim
:
autocmd VimEnter * NERDTree
Dobrym pomysłem może być również przetestowanie, które NERDtree
jest również dostępne, tj .:
if exists("loaded_nerd_tree")
autocmd VimEnter * NERDTree
endif
export MANPAGER='col -bx | mvim -c ":set ft=man nonu nolist" -c ":autocmd!" -M -R - > /dev/null 2>&1'
" NERD Tree
nmap <silent> <special> <F2> :NERDTreeToggle<RETURN>