Às vezes, quero editar um determinado bloco visual de texto em várias linhas.
Por exemplo, eu pegaria um texto assim:
name
comment
phone
email
E fazer parecer assim
vendor_name
vendor_comment
vendor_phone
vendor_email
Atualmente, o jeito que eu faria agora é ...
- Selecione todas as 4 linhas de um bloco pressionando Ve depois jquatro vezes.
- Recuar com >.
- Volte uma letra com h.
- Vá para bloquear o modo visual com Ctrlv.
- Selecione quatro linhas abaixo pressionando jquatro vezes. Nesse ponto, você selecionou blocos visuais 4x1 de espaço em branco (quatro linhas e uma coluna).
- Pressione C. Observe isso praticamente recuado à esquerda por uma coluna.
- Digite a
" vendor_"
sem a citação. Observe o espaço extra que tivemos que colocar de volta. - Pressione Esc. Essa é uma das poucas vezes em que uso Escpara sair do modo de inserção.Ctrlceditaria apenas a primeira linha.
- Repita a etapa 1.
- Recuar para o outro lado com <.
Não preciso recuar se houver pelo menos uma coluna de espaço em branco antes das palavras. Eu não precisaria do espaço em branco se não tivesse que limpar o bloco visual comc .
Mas se eu tiver que limpar, existe uma maneira de fazer o que fiz acima sem criar o espaço em branco necessário com recuo?
Além disso, por que a edição de várias linhas ao mesmo tempo funciona apenas saindo do modo de inserção com Escmais de Ctrlc?
Aqui está um exemplo mais complicado:
name = models.CharField( max_length = 135 )
comment = models.TextField( blank = True )
phone = models.CharField( max_length = 135, blank = True )
email = models.EmailField( blank = True )
para
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 )
Neste exemplo, eu executaria o bloco visual vertical sobre o .
e, em seguida, o reinserria durante o modo de inserção, ou seja, tipo .whatever.
. Espero que agora você possa ver a desvantagem deste método. Estou limitado a selecionar apenas uma coluna de texto que seja igual na posição vertical .
:s/models\./\0whatever./