Come si ricarica il file .vimrc senza riavviare vim?
Si può modificare il file .vimrc
e ricaricarlo senza dover riavviare Vim?
Si può modificare il file .vimrc
e ricaricarlo senza dover riavviare Vim?
Se lo si sta modificando, si può ricaricare con:
:so %
``` ```
:so $MYVIMRC
%
sta per il nome del file corrente (vedi :h current-file
) e :so
è l'abbreviazione di :source
, che legge il contenuto del file specificato e lo tratta come codice Vim.
In generale, per ricaricare il .vimrc attualmente attivo, usare quanto segue (vedi Daily Vim ):
&001
Ancora meglio, configurate Vim per osservare le modifiche nel vostro .vimrc
e ricaricate automaticamente il config.
augroup myvimrc
au!
au BufWritePost .vimrc,_vimrc,vimrc,.gvimrc,_gvimrc,gvimrc so $MYVIMRC | if has('gui_running') | so $MYGVIMRC | endif
augroup END
``` &001
Source: [ questa risposta su SO ](https://stackoverflow.com/a/2403926/261251) &003
Nota: questo particolare metodo osserva per le molte varianti dei nomi dei file di configurazione di Vim in modo che sia compatibile con GUI Vim, Windows Vim, ecc.
" Quickly edit/reload this configuration file
nnoremap gev :e $MYVIMRC<CR>
nnoremap gsv :so $MYVIMRC<CR>
``` ```
if has ('autocmd') " Remain compatible with earlier versions
augroup vimrc " Source vim configuration upon save
autocmd! BufWritePost $MYVIMRC source % | echom "Reloaded " . $MYVIMRC | redraw
autocmd! BufWritePost $MYGVIMRC if has('gui_running') | so % | echom "Reloaded " . $MYGVIMRC | endif | redraw
augroup END
endif " has autocmd
Per ricaricare automaticamente al momento del salvataggio, aggiungere quanto segue al vostro $MYVIMRC
:
:so %
``` &001
e poi, per l'ultima volta, digitare:
&001 &001
La prossima volta che salvate il vostro `vimrc`, esso verrà ricaricato automaticamente.
**Caratteristiche:**
- Dice all'utente cosa è successo (anche registrandosi su `:messages`)
- Gestisce vari nomi per i file di configurazione
- Assicura che corrisponderà solo al file di configurazione reale (ignora le copie in altre directory, o un diff `fugitive://`)
- Non genererà un errore se si utilizza `vim-tiny`
Naturalmente, la ricarica automatica avverrà solo se si modifica il vostro `vimrc` in vim.
Un'alternativa al ricordo/tipizzazione :so $MYVIMRC
è rappresentata da queste mappature. Permettono di modificare rapidamente vimrc (ev
) o il sorgente vimrc (sv
).
" Quickly open/reload vim
nnoremap <leader>ev :split $MYVIMRC<CR>
nnoremap <leader>sv :source $MYVIMRC<CR>