A Vim, per seleccionar tot el text d'un fitxer, utilitzeu ggVG comanda en mode NORMAL. Després de seleccionar el text, es poden realitzar fàcilment operacions com copiar, suprimir, canviar o enganxar en tot el text.
Si utilitzeu un sistema operatiu basat en GUI, heu d'estar familiaritzat amb el ctrl+a tecles de drecera per seleccionar tot el contingut d'un fitxer o finestra. A Vim, no podeu utilitzar les mateixes tecles per seleccionar tot el text. En canvi, ofereix un conjunt diferent de tecles (ggVG) per seleccionar-ho tot en un fitxer. En aquesta guia, exploraré com seleccionar text a Vim i com fer-ho més fàcil amb l'assignació de tecles.
Nota: Les ordres de Vim esmentades en aquesta guia es realitzen a macOS. Com que Vim és un editor de text multiplataforma, les ordres també funcionaran sense cap error a Linux i Windows.
Seleccioneu Tot a Vim
Per seleccionar-ho tot a Vim, premeu el botó Esc per entrar al mode NORMAL i escriviu l'ordre que es mostra a continuació:
ggVG
A l'ordre anterior, s'utilitza una combinació de cinc tecles. Desglossem-ho.
- bona partida s'utilitza per posar el cursor a l'inici de la primera línia.
- EN s'utilitza per canviar el mode actual al mode VISUAL LINE.
- G s'utilitza per posar el cursor al començament de l'última línia.
Després de seleccionar-ho tot, utilitzeu les ordres esmentades a la taula següent per realitzar l'operació desitjada.
i | Copiar tot el text |
d | Per esborrar tot el text |
c | Per canviar tot el text |
s | Substituir un patró específic per una cadena |
Seleccioneu Tot a Vim amb ctrl+a Mapa
Bé, inclòs jo, a ningú li agradaria utilitzar un conjunt d'ordres de Vim una mica difícil de recordar per seleccionar tot el text d'un fitxer. No obstant això, el ctrl+a (a Linux i Windows) les claus s'utilitzen universalment i són fàcils de recordar. Per tant, preferiria fer un mapa ctrl+a tecles amb el ggVG comandament.
Obriu el vimrc fitxer, col·loqueu-hi la línia següent i deseu-lo fent servir el fitxer :wq comanda o prement el botó majúscules+zz claus.
nnoremap < C-a > ggVG
A l'ordre anterior, nnoremap s'utilitza per mapejar la clau de manera no recursiva en el mode NORMAL mentre
Copia i elimina totes les línies d'un fitxer
El % L'ordre és una altra ordre útil per realitzar operacions sobre tot el fitxer. Per exemple, per copiar totes les línies del fitxer, utilitzeu :%y comandament. El % indica el nom del fitxer actual i i està copiant tot el text del fitxer. De la mateixa manera, per eliminar totes les línies, utilitzeu el botó :%d comandament.
: % i 'Copieu totes les línies d'un fitxer:%d ' Esborra totes les línies en a dossier
: % s /< patró >/< substitució > 'Substituïu un patró per una corda
La mateixa funcionalitat també es pot aconseguir amb el bona partida i G ordres. Però depèn de la posició del cursor. Porta el cursor al principi del fitxer utilitzant bona partida i premeu yG per copiar totes les línies. De la mateixa manera, col·loqueu el cursor al final utilitzant G i premeu ygg per copiar totes les línies. Per eliminar les línies, substituïu i amb d .
A més, el yy i dd les ordres també es compten com a número de línia. Per copiar quatre línies, premeu 4yy i es copiaran quatre línies des de la posició del cursor. La còpia i supressió de totes les funcionalitats del fitxer es pot aconseguir si passem un nombre gran com 99999 amb qualsevol yy o dd comandament. Per exemple, 99999aa i 99999dd les ordres copiaran i suprimiran tot el contingut del fitxer.
Copieu tot el text al porta-retalls del sistema
Per enganxar el text copiat de Vim a aplicacions del sistema, com ara editors de text o navegadors, utilitzeu bona partida “ *yG comandament. Normalment, Vim copia el text al registre sense nom predeterminat, al qual es pot accedir mitjançant :reg “” . Tanmateix, Vim no us permetrà enganxar el text fora de l'editor de Vim. Utilitzar el ' *i comanda, per transferir el seleccionat text al porta-retalls del sistema operatiu.
bona partida '*yG ' Copia al porta-retalls del sistema
A l'ordre anterior, * és un registre del sistema, que és un petit espai d'emmagatzematge per contenir dades. Hi ha dos registres del sistema + i * i tots dos es poden utilitzar per copiar contingut al porta-retalls del sistema. Podeu utilitzar aquesta ordre de manera diferent quan esteu en mode COMANDA.
: % i+ 'Copieu al porta-retalls del sistema
Aquí, % representa tot el fitxer, i és per agafar, i + és el registre del sistema. Malgrat això, * també es pot emprar amb la mateixa finalitat.
De la mateixa manera, si heu copiat alguna cosa al porta-retalls, per enganxar-la a l'ús de Vim, “+p.
Conclusió
A Vim, l'ordre ggVG s'utilitza per seleccionar-ho tot en un fitxer. Després de seleccionar totes les línies, es poden realitzar diverses operacions, com ara copiar, canviar o esborrar. Tanmateix, aquestes operacions també es poden realitzar mitjançant la línia d'ordres amb el % signe. Recomano mapejar una clau (tecles) per dur a terme l'operació de seleccionar-ho tot a Vim.