In vim, come faccio a tornare dove ero prima di fare una ricerca?
Domanda
Programmazione in vim mi capita spesso di andare a cercare qualcosa, copialo, poi tornare da dove ero, inserire, modificare.
Il problema è che dopo mi cerca e trova, ho bisogno del manuale di trovare la mia strada di nuovo a dove ero.
C'è un modo automatico per tornare dove ero quando ho avviato la mia ultima ricerca?
Soluzione
Ctrl+O mi prende alla posizione precedente.Non so la posizione prima della ricerca.
Edit:Inoltre, `. prendete l'ultima modifica che hai fatto.
Altri suggerimenti
Utilizzare ``
per tornare alla posizione esatta che si erano prima di voi cercato/saltato, o ''
per saltare all'inizio della riga che si erano prima di te cercato/saltato.
Io l'ho sempre fatto da che impostazione di un marchio.
In command mode, premere m [lettera].Per esempio, m a imposta un segno al corrente di linea utilizzando un come il marchio identificatore.
Per tornare al segno premere '[lettera].Per esempio, e ' un si torna a marchio impostato nel passaggio 1.
Per vedere tutti i marchi che attualmente impostata, tipo di :marchi.
Su un po ' estranei nota, ho appena scoperto un'altra bella cosa segna.
Diciamo che saltare a marchio b facendo 'b.Vim imposta automaticamente il marchio ' (che è un single-citazione da qualsiasi linea in cui ti trovavi prima di saltare a marco b.
Che significa che si può fare 'b per passare a segno, quindi fare '' (2 singoli apici) per tornare alla whever che erano prima.
L'ho scoperto casualmente utilizzando il :marchi comando, che mostra un elenco di tutti i marchi.
Si dovrebbe davvero leggere :help jumplist
si spiega tutto questo molto bene.
CTRL+O e CTRL+I, per saltare avanti e indietro.
Il modo più semplice è quello di impostare un contrassegno, con m[letter]
, per poi tornare ad essa con '[letter]
Io uso questo:
nnoremap / ms/
nnoremap ? ms?
Quindi se faccio la ricerca di qualcosa tramite /
o ?
, Posso tornare rapidamente `s
.Si potrebbe sostituire la lettera s
per ogni lettera che ti piace.