qual è il comando per "Seleziona tutto" in vim e VsVim?


22

Come seleziono tutto il contenuto di un file in Vim e VsVim? Come in altri editor, ctrl+Afa il lavoro per selezionare tutto.


3
La risposta di SibiCoder è buona, ma sarebbe utile sapere cosa intendi fare con il contenuto che hai copiato.
Legge

5
Innanzitutto, "seleziona" del testo in un "buffer", non in un "file". Due, "selezionare" è spesso inutile in Vim, quindi devi essere chiaro su cosa vuoi fare con quella "selezione". Per te e per noi.
Romainl

3
@romainly Penso che l'OP significhi selezionare l'intero file in modalità visiva, considerando che ctrl+ain altri editor evidenzia visivamente l'intero file.
EvergreenTree

@statox Perché hai modificato vsvim ? Non è un grosso problema per me, ma penso che il tag sia perfettamente appropriato e non volevo entrare in una guerra di modifica. (Ti avrei telefonato :chat!, ma non sei stato in quella stanza di recente, quindi non me lo permetterebbe)
James

@DJMcMayhem: è stato un errore: inizialmente ho pensato che vsvimfosse simile vimperatore questo tipo di plugin per altri software e quindi era fuori tema, quindi l'ho rimosso, quindi ho avuto un dubbio, quindi ho controllato meta e ho visto che era in argomento, quindi ho ha approvato la modifica del tag ma ha dimenticato di modificare nuovamente la domanda. Lo sto cambiando proprio ora, mi dispiace per quello.
statox

Risposte:


27

ggVGseleziona tutto il contenuto. ggpassa alla prima riga. Vavvia la modalità visiva. Gpassa all'ultima riga selezionando quindi dalla prima all'ultima riga


15

Insieme alla risposta di SibiCoder, se hai un'idea chiara di ciò che vuoi fare puoi usare quanto segue:

:%X

Dov'è Xun comando, ad esempio:

:%d             -> delete every line
:%y             -> yank every line
:%normal! >>    -> indent every line

Hai anche il comando globale :gche, con il modello di ricerca ^, può fare la stessa cosa:

:g/^/d             -> delete every line
:g/^/y             -> yank every line
:g/^/normal! >>    -> indent every line

Se quello che vuoi è selezionare il testo, allora ggVGva bene, ma tieni presente questi metodi, nel caso tu sappia già qual è il prossimo passo. Si noti che non lascerà il cursore in modalità visiva.

Vedi: :h :%e :h :gper riferimento.


Nota che, anche se la C-Amappatura viene utilizzata in vim (vedi :h CTRL-A), puoi mapparla per fare ciò che fanno gli altri editor:

nnoremap <C-A> ggVG

4

Le altre risposte sono buone. Ecco un'altra alternativa.

Poiché dici che stai usando VsVim, puoi cambiare quali chiavi sono gestite da Visual Studio e quali chiavi sono gestite da vsvim. Vai a

Strumenti -> Opzioni -> VsVim -> Tastiera

Da lì puoi impostare Ctrl-a in modo che sia gestito da Visual Studio, anziché da VsVim.

Anche se non lo consiglio, poiché non sarai in grado di utilizzare vim <C-a>, che trovo essere una funzionalità essenziale. Anche se dipende da te.


0

puoi usare un numero grande come 99999yy per selezionare tutto il contenuto del tuo file


3
I file più grandi delle 100000linee sono possibili, sebbene rari. Inoltre, utilizzando yyli strapperà , non selezionarli .
James

1
certo che hai ragione ma quando selezioni qualcosa è per la maggior parte dei casi tagliare, copiarli o eliminarli :)
Adel Kihal

Questo è quello di cui avevo bisogno. Seleziona tutto e strattona.
Ivan
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.