2015-02-09 16 views
6

Di solito visualizzo un blocco e lo copia/ritaglia da qualche altra parte, quindi mi sono ritrovato sempre a formattare il testo incollato, quindi c'è un modo per selezionare visivamente nuovamente il testo.In vim, come selezionare selezionare il testo incollato in precedenza

+1

come indentazione e cose del genere. Anche se questo può essere raggiunto tramite 'gg = G'. A proposito, hai visto questo q/a: https://stackoverflow.com/questions/4312664/is-there-a-vim-command-to-select-pasted-text?rq=1 – three

+1

Dovresti provare '[p 'e'] p'. – romainl

risposta

5

Ogni comando che modifica il buffer (e gli yanks) imposterà i segni '[ e '] nell'area modificata. Così si può riformattare il blocco incollato tramite:

`[v`]= 

Alcune persone arrivano al punto di utilizzare il seguente mapping per riselezionare ultimo blocco modificata del testo:

nnoremap <expr> gV '`[' . getregtype()[0] . '`]' 

Con questa mappatura si può solo fare gV= e formatta il testo appena incollato.

Tuttavia se si dispone del plug-in unimpaired.vim e si sta incollando in linea è possibile utilizzare il comando =p fornito. Ciò incollerà e riformatterà il testo in un colpo solo. Fornisce anche altri comandi di pasta alternativi >p, ad esempio, incollerà un livello di rientro più profondo.

+0

Ottima risposta, maestro di vim! – Rn2dy

0

Il modo in cui utilizzo è semplice. Il cursore si trova all'inizio del testo incollato dopo aver incollato. La stampa V per passare alla selezione visiva, la stampa '] per andare alla fine del incollato.

Sono 3 tasti premuti. Se è troppo lungo, allora si può fare la mappatura per p

map p pV'[ 
map P PV'[ 
+0

funziona se si incolla solo una volta. – Rn2dy

0

Per la modalità visiva, gv è il modo standard per riselezionare la zona precedente.

Se si desidera passare dalla posizione iniziale a quella finale dell'area, è sufficiente premere o.

Come altre risposte lo hanno menzionato, è possibile applicare il comando standard = in questa area selezionata.

Funziona bene dopo una pasta p o P.

Il vantaggio è che non è necessario alcun mapping personalizzato.

+0

probabilmente non esattamente quello che ho chiesto – Rn2dy

Problemi correlati