2009-05-25 18 views
102

Voglio sapere se c'è qualche modo con il quale posso incollare testo recuperato alla finestra di comando. Per es. se ho strappato una parola e voglio farlo in qualche punto, non posso semplicemente incollare la parola usando 'p'. Tuttavia, se lo copio negli appunti, Shift-Insert incollerà la stessa cosa.Come copiare testo recuperato al prompt dei comandi VI

C'è qualche ritoccare la calibrazione disponibile che mi permettesse di incollare testo recuperato al prompt dei comandi vim? Sto usando gvim su Windows.

risposta

147

tenta di utilizzare

<ctrl+r>" 

dove "sta per il registro di default.

+7

Si noti che questo funziona anche in modalità inserimento normale, non solo sulla riga di comando. – user55400

+22

Se si usa '*' invece di '" ', si otterrà invece il contenuto degli appunti di sistema (che potrebbe essere utile) –

34

<C-R>" incollerà buffer predefinito. In alternativa, è possibile utilizzare q: per aprire un buffer per il comando successivo. Tentare :help q:

+8

Holy crap,' q: 'è oltre il fantastico – Hubro

12

Nella modalità normale, premere :, quindi ctrl-r e quindi ".

+2

Tecnicamente, una volta premuto:, non sei più in modalità normale – graywh

+0

@graywh - buon punto! – Rook

3

È possibile eseguire il yank negli Appunti utilizzando il buffer con nome *. Per esempio, questo copierà la linea corrente negli appunti:

"*yy 

in modo da poter copiare una linea con questo, e poi incollarlo con shift-inserto nella linea di comando.

Allo stesso modo, è possibile incollare dagli Appunti in questo modo:

"*p 
2

del appunti +, su Mac, almeno. Quindi scrivere "+yy per annotare una riga negli Appunti e "+p da incollare. Sebbene tu possa sempre usare Command-C e Command-V.

5

Se è solo una parola che si desidera copiare, è possibile utilizzare <C-r><C-w>

  1. posizionare il cursore sopra la parola
  2. Quindi è possibile digitare qualcosa come :vim <C-r><C-w> *
9

Per salvare fai un passo indietro, se il tuo cursore è sulla parola che vuoi usare in Ex, usa:

<ctl-r><ctl-w> 

Questo rifugge lo yank per incollare nella riga di comando; invece, si incolla la parola sotto il proprio cursore direttamente sulla riga di comando. Es .:

:%s/<ctl-r><ctl-w>/foo/g 
Problemi correlati