Parfois, je veux modifier un certain bloc visuel de texte sur plusieurs lignes.
Par exemple, je prendrais un texte qui ressemble à ceci:
name
comment
phone
email
Et fais comme ça
vendor_name
vendor_comment
vendor_phone
vendor_email
Actuellement, la façon dont je le ferais maintenant est ...
- Sélectionnez les 4 lignes d'un bloc en appuyant sur Vpuis sur jquatre fois.
- Retrait avec >.
- Remontez une lettre avec h.
- Passez en mode visuel bloqué avec Ctrlv.
- Sélectionnez quatre lignes vers le bas en appuyant jquatre fois. À ce stade, vous avez sélectionné un bloc visuel 4x1 d'espaces blancs (quatre lignes et une colonne).
- Appuyez sur C. Remarquez ceci à peu près en retrait à gauche d'une colonne.
- Tapez un
" vendor_"
sans le devis. Remarquez l'espace supplémentaire que nous avons dû remettre. - Appuyez sur Esc. C'est l'une des rares fois que j'utilise Escpour sortir du mode d'insertion. Ctrlcne modifierait que la première ligne.
- Répétez l'étape 1.
- Retrait dans l'autre sens avec <.
Je n'ai pas besoin de mettre en retrait s'il y a au moins une colonne d'espace avant les mots. Je n'aurais pas besoin de l'espace blanc si je n'avais pas à effacer le bloc visuel avec c.
Mais si je dois effacer, existe-t-il un moyen de faire ce que j'ai effectué ci-dessus sans créer les espaces nécessaires avec indentation?
Aussi pourquoi l'édition de plusieurs lignes à la fois ne fonctionne-t-elle qu'en quittant le mode d'insertion avec Escover Ctrlc?
Voici un exemple plus compliqué:
name = models.CharField( max_length = 135 )
comment = models.TextField( blank = True )
phone = models.CharField( max_length = 135, blank = True )
email = models.EmailField( blank = True )
à
name = models.whatever.CharField( max_length = 135 )
comment = models.whatever.TextField( blank = True )
phone = models.whatever.CharField( max_length = 135, blank = True )
email = models.whatever.EmailField( blank = True )
Dans cet exemple, je voudrais effectuer le bloc visuel vertical sur le .
, puis le réinsérer en mode insertion, c'est-à-dire taper .whatever.
. J'espère que vous pouvez maintenant voir l'inconvénient de cette méthode. Je me limite à sélectionner uniquement une colonne de texte qui sont toutes identiques en position verticale .
:s/models\./\0whatever./