Sto cercando di ridurre il numero di cose che devo fare quando apro VIM. Ho i seguenti tre scenari di cui vorrei tenere conto:
1. Apri vim con una directory specificata
vim .
Per questo caso, vorrei aprire NERDTree, con questo nel mio ~/.vimrc
:
autocmd vimenter * NERDTree
2. Apri vim con una directory specificata, su un monitor di grandi dimensioni
vim . --large
Qui vorrei aprire NERDTree e fare alcune suddivisioni dello schermo:
autocmd vimenter * NERDTree
autocmd vimenter * wincmd w
autocmd vimenter * wincmd v
autocmd vimenter * wincmd v
3. Apri vim con un nome file specifico
vim ~/vimrc
Per questo caso, vorrei non eseguire nessuno dei messaggi di autocmd
cui sopra.
Modifica: implementazione finale
Grazie alla risposta di FDinoff.
if argc() == 1 && arv(0) == '.' " `vim .` called
autocmd vimenter * NERDTree " Start up NERDTree
autocmd vimenter * wincmd w " Jump to split that file is open in
if !empty($L)
autocmd vimenter * wincmd v
autocmd vimenter * wincmd v
endif
endif
ed eseguirlo con L=t vim .
, vim .
ovim specific_file