2011-09-28 15 views
5

C'è già una domanda su come copy text in commandline in Vim. Ci sono due risposte alternative:Come copiare il testo dalla modalità riga di comando in Vim durante la ricerca

  1. ":p
  2. Ctrl + F poi trovare il comando precedente.

Ma questi metodi non funzionano quando il comando precedente è una ricerca. Cioè se si entra in modalità di comando con / o ? quindi non è possibile accedere al termine di ricerca utilizzato con questi metodi.

C'è un modo per copiare anche il testo per il testo di ricerca?

+2

'Ctrl' +' F' apre la finestra della riga di comando per i comandi precedenti quando si immette un comando e per le ricerche precedenti se si inserisce una ricerca. Un'altra parola, ':', 'Ctrl' +' F' è la stessa di 'q:', '/', 'Ctrl' +' F' e '?', 'Ctrl' +' F' sono gli stessi di 'q /' e 'q?', rispettivamente. –

risposta

5

Credo che stiate cercando il registro /. È possibile utilizzare "/p per incollare l'ultima ricerca. Mentre sulla riga di comando è possibile utilizzare <c-r> seguito da un registro per inserire i contenuti del registro specificato. esempio: <c-r>/ incollerà l'ultima ricerca.

Si consiglia inoltre di utilizzare q/ per eseguire modifiche più estese delle ricerche precedenti.

:h registers 
:h q/ 
:h c_CTRL-R 
1

Simile al the answer alla domanda "How to copy text from commandline mode in Vim", utilizzare il registro / per incollare il più recente modello di ricerca ,

"/p 

Tutta la storia delle ricerche può essere esplorato utilizzando la riga di comando finestra (vedere :help cmdwin). Per aprirlo per la modifica di stringhe di ricerca dalla modalità normale , utilizzare i q/ o q? comandi, di fare lo stesso quando si inserisce un modello di ricerca per le / o ? comandi, premere la combinazione di tasti specificata da cedit opzione (Ctrl + F per impostazione predefinita).

Problemi correlati