2009-11-13 5 views
19

Durante l'utilizzo di Vim a volte voglio esaminare una definizione di funzione o una definizione di struct, quindi userò C-] per saltare ad esso. Tuttavia, ci sono alcuni problemi in cui mi imbatto. Prima di tutto, non so come tornare facilmente. Appare il file precedente in cui ero chiuso e ora sono in quello nuovo. C'è un modo per tornare indietro o tenere una pila di file aperti su cui posso tornare indietro o qualcosa del genere?Torna a un file aperto in precedenza in Vim

Un'altra cosa che ho notato è che quando ho un cambiamento nel file corrente devo salvarlo perché, come menzionato un momento fa, il mio file corrente viene chiuso prima che si apra il prossimo.

E a volte voglio vedere il mio codice corrente e la mia intestazione in una volta. C'è un modo per aprire la definizione del tag in una divisione?

+0

Correlato ma non duplicato: [Come ritorno da gf in Vim] (http://stackoverflow.com/q/133626/834176). –

risposta

28

Aggiungi

set hidden 

a voi vimrc. Ti consentirà di cambiare file senza salvarli. Penso che questa sia una delle opzioni 'must have'.

Usa C - o Per tornare alle posizioni precedenti che sono stati salvati automaticamente in un jumplist.

:h jumplist 
5

Per tornare indietro da C-], utilizzare C-T. Il comando :tags mostra lo stack corrente.

Impostare l'opzione autowrite per salvare automaticamente ciò che si sta facendo prima di passare a un nuovo file.

Utilizzare C-W C-] per aprire il tag in una nuova finestra.

Infine, :help tags è la sezione in Guida che spiega tutto questo e altro.

3

Un'altra utile caratteristica che è utile sono i segni maiuscoli. Questi segni non sono locali in un buffer e possono essere utilizzati per passare a loro da tutti i file. Se si contrassegna la linea come "A" utilizzando il comando mA prima di iniziare un'attività di salto lungo e arduo, è possibile tornare rapidamente alla posizione originale digitando "A o" A.