it-swarm.it

Vim: modo più veloce per selezionare blocchi di testo in modalità visiva

Uso vim da un po 'di tempo e sono consapevole che selezionare blocchi di testo in modalità visiva è semplice come SHIFT+V e spostando il tasto freccia su o giù riga per riga fino a quando non raggiungo la fine del blocco di testo che desidero selezionare.

La mia domanda è: c'è un modo più veloce in modalità visiva per selezionare un blocco di testo, ad esempio SHIFT+V seguito specificando il numero di riga in cui desidero interrompere la selezione? (attraverso :35 ad esempio, dove 35 è il numero di riga che voglio selezionare fino a - questo ovviamente non funziona, quindi la mia domanda è scoprire come se si può fare qualcosa di simile a questo ...)

175
Calvin Cheng

Oltre a ciò che altri hanno detto, puoi anche espandere la tua selezione usando le ricerche di pattern.

Per esempio, v/foo selezionerà dalla posizione corrente alla prossima istanza di "pippo". Se in realtà si desidera espandere l'istanza successiva di "pippo", ad esempio sulla riga 35, premere semplicemente n per espandere la selezione all'istanza successiva e così via.

aggiornare

Non lo faccio spesso, ma so che alcune persone usano ampiamente i segni per effettuare selezioni visive. Ad esempio, se sono sulla riga 5 e voglio selezionare la riga 35, potrei premere ma per posizionare il segno a sulla riga 5, quindi :35 per passare alla linea 35. Shift + v per accedere alla modalità visiva lineare e infine `a per selezionare indietro per contrassegnare a.

192
Jay
G                       Goto line [count], default last line, on the first
                        non-blank character linewise.  If 'startofline' not
                        set, keep the same column.
                        G is a one of jump-motions.

V35G raggiunge ciò che desideri

106
bheeshmar

Vim è una lingua. Per capire davvero Vim, devi conoscere la lingua. Molti comandi sono verbi e vim ha anche oggetti e preposizioni.

V100G
V100gg

Ciò significa "selezionare la riga corrente fino alla riga 100 inclusa".

Gli oggetti di testo sono dove c'è molta potenza. Introducono più oggetti con preposizioni.

Vap

Ciò significa "seleziona attorno al paragrafo corrente", ovvero seleziona il paragrafo corrente e la riga vuota che lo segue.

V2ap

Questo significa "selezionare attorno al paragrafo corrente e al paragrafo successivo".

}V-2ap

Questo significa "vai alla fine del paragrafo corrente e poi selezionalo visivamente e il paragrafo precedente".

Comprendere Vim come lingua ti aiuterà a ottenere il miglior chilometraggio.

Dopo aver selezionato verso il basso, è possibile combinare con altri comandi:

Vapd

Con il comando sopra, puoi selezionare intorno a un paragrafo ed eliminarlo. Cambia d in y per copiare o in c per cambiare o in p per incollare.

Una volta capito come funzionano tutti questi comandi, alla fine non sarà necessario selezionare visivamente nulla. Invece di selezionare visivamente e quindi eliminare un paragrafo, puoi semplicemente eliminare il paragrafo con il comando dap.

79
kzh

v35G selezionerà tutto dal cursore fino alla riga 35.

v ti mette in modalità di selezione, 35 specifica il numero di riga in cui si desidera G.

Puoi anche usare v} che selezionerà tutto fino all'inizio del paragrafo successivo.

37
michaelmichael

Per selezionare il numero di righe:

shift + v 9j - seleziona 10 righe

14
mateusz.fiolka

Shift+V n j o Shift+V n k

Seleziona la riga corrente e le righe n successive/precedenti. Lo trovo molto utile.

8
Peng Zhang

v 35 j

testo aggiunto per un minimo di 30 caratteri

6
µBio
4
Paul

Puoi sempre usare solo numeri precedenti per ripetere le azioni:

  • In modalità visiva, digitare 35 e il cursore si sposterà verso il basso 35 volte, selezionando le successive 35 righe
  • In modalità normale:
    • elimina 35 righe 35dd
    • incolla 35 volte 35p
    • annulla 35 modifiche 35u
    • eccetera.
3
jackson

v%

selezionerà l'intero blocco.

Gioca anche con:

v}, vp, vs, ecc.

Vedi aiuto:

:help text-objects

che elenca i diversi modi per selezionare lettere, parole, frasi, paragrafi, blocchi e così via.

3
bjfletcher

Puoi premere vi} per selezionare il blocco circondato da {} parentesi dove si trova attualmente il cursore.

Non importa dove ti trovi all'interno di quel blocco (assicurati solo di essere in quello più esterno). Inoltre puoi cambiare { a tutto ciò che ha una coppia come ) o ].

2
iggy

} significa spostare il cursore sul paragrafo successivo. quindi usa v} per selezionare l'intero paragrafo.

1
mabeiyi

Per selezionare tutto in modalità visiva: digitare Esc per accertarsi di essere in modalità normale

:0 

digitare INVIO per andare all'inizio del file

vG
0
Sergio Abreu

Potrebbe esserti utile sapere:

Per selezionare la stessa quantità di righe, ad esempio, utilizzare 1v Avresti dovuto apportare alcune modifiche per poter utilizzare 1v, in senso antiorario o lineare.

Oggi ho visto questo fantastico suggerimento da qui :

 :5mark < | 10mark > | normal gvV
 :5mark < | 10mark > | normal gv

È inoltre possibile ripristinare i limiti del blocco visivo in questo modo:

m< .......... sets the visual mode start point
m> .......... sets the visual mode end point
0
SergioAraujo