2010-04-17 14:18:40 +0000 2010-04-17 14:18:40 +0000
545
545

Come si ricarica il file .vimrc senza riavviare vim?

Si può modificare il file .vimrc e ricaricarlo senza dover riavviare Vim?

Risposte (4)

681
681
681
2010-04-17 14:24:51 +0000

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

79
79
79
2012-04-28 09:32:28 +0000

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.
11
11
11
2016-09-02 14:12:06 +0000

Mappature delle chiavi

" 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

Soluzione completamente automatizzata

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.
5
5
5
2015-06-17 10:36:59 +0000

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>