segunda-feira, 31 de julho de 2023

A especial forma de apagar texto no editor Vim

Post image

Índice de conteúdo:

  1. Teclas de movimento
  2. Exemplo de alguns comandos que servem para apagar
  3. Deletar um caractere
  4. Apagar por Palavras
  5. Apagar uma parte numa linha
  6. Apagar linhas de texto
  7. Posts anteriores sobre o Vim no Onda Linux
    1. Vim - O editor de texto Unix e LInux
    2. Editor Vim - Os primeiros passos
    3. Leitura recomendada: Navegar no editor Vim

Uma das coisas que fazemos constantemente quando estamos editando um documento é apagar caracteres, apagar palavras, apagar frases ou mesmo todo o texto.

O editor Vim tem uma forma muito especial de lidar com isso, como também para outras exigências de edição que facilitam muito no momento de editar um documento.

Teclas de movimento

O vim conta com uma funcionalidade poderosa que são as teclas de movimento.

Devemos em primeiro lugar certificarmos de que nos encontramos no modo normal e em caso de dúvida premimos <Esc>

Nos exemplos apresentados refiro-me à deslocações usando as teclas h j k e l mas devemos usar as teclas de movimento mais apropriadas em cada caso de forma a nos facilitar o trabalho.

Estas são algumas teclas de movimento. De cada vez que uma dessas teclas é premida, produz o movimento indicado nas figuras abaixo:

  • w move o cursor até o início da próxima palavra.

    Posição inicial.

    Posição final.

  • e move o cursor até o fim da palavra onde se encontra.

    Posição inicial.

    Posição final.

  • $ move o cursor até o fim da linha.

    Posição inicial.

    Posição final.

  • 0 move o cursor até ao início da linha.

    Posição inicial.

    Posição final.

    Movendo o cursor para o início da linha.

Normalmente os comandos que operam mudanças no texto são feitos de um operador e de um movimento.

Exemplo: d + movimento, onde d é o operador de apagar e movimento é o movimento sobre o qual o operador cumpre o objetivo de apagar.

Utilizam-se também contadores, quando digitamos um número com um operador, o operador é repetido esse número de vezes.

Exemplo: d + número + movimento, onde d é o operador de apagar, o número é o contador e movimento é o movimento sobre o qual o operador cumpre o objetivo de apagar o número de vezes ditado pelo contador.

Alguns comandos para apagar estando em modo normal

Aqui estão alguns dos comandos para apagar texto no Vim:
ComandoFunção
dl ou xApaga o caractere encima do qual o cursor se encontra.
dh ou XApaga o caractere à esquerda do qual o cursor se encontra.
dwApaga uma palavra.
d2wApaga duas palavras seguidas.
d5wApaga cinco palavras seguidas.
d$Deleta desde a posição inicial do cursor até ao final da linha.
d0Apaga desde a posição inicial do cursor até ao início da linha.
ddApaga uma linha inteira, estando o cursor em qualquer ponto da linha que se quer apagar.
2ddApaga duas linhas seguidas, estando o cursor em qualquer ponto da linha onde se executa o comando.
dggApaga tudo, desde o ponto onde se encontra o cursor até ao início do documento.
dGApaga tudo, desde o ponto onde se encontra o cursor até ao fim do documento.

  • Operador
  • Contador
  • Movimento

Alguns caracteres estão a mais no texto

Para apagar os caracteres que estão a mais vamos fazer o seguinte:

  1. Confirmar se estamos no modo normal, premir <Esc>
  2. Caps Lock não deve estar ativada.
  3. j ou k para navegar até a linha onde se econtra o caractere.
  4. h ou l para posicionar o cursor encima do caractere a ser apagado
  5. x para deletar o caractere
----------------------------------------------------------------

TEXTO

----------------------------------------------------------------

Algumas palavraas soobre o ediotor Vim.

Vim é um programa editor de texto bwaseado em linha de comando.

Você pode usar o Vim presciindinndo do mouse.

Na época de seu primeiro lançamento, o nome "Vim" era um acrônimo para "Vi IMitation"

O nome do Vim mudou para "Vi IMproved" no final de 1993.

Algumas palavras estão a mais no texto

Para apagar as palavras que estão a mais vamos fazer o seguinte:

  1. Confirmar se estamos no modo normal, premir <Esc>
  2. Caps Lock não deve estar ativada.
  3. j ou k para navegar até a linha onde se econtra a palavra ou palavras que queremos apagar.
  4. h ou l para posicionar o cursor encima do primeiro caractere da palavra a ser apagada
  5. dw ou d2w ou d3w para deletar uma palavra, duas ou três, conforme o caso.
----------------------------------------------------------------

TEXTO

----------------------------------------------------------------

Algumas palavras sobre o editor Vim.

Vim é um programa programa editor de texto baseado em linha de de comando.

Você pode usar usar o Vim prescindindo do mouse.

Na época época época de seu primeiro lançamento, o nome "Vim" era era um acrônimo para "Vi IMitation"

O nome do Vim mudou para "Vi IMproved" no final de 1993.

Algumas linhas têm partes de texto repetidos

Para apagar as partes repetidas vamos fazer o seguinte:

  1. Confirmar se estamos no modo normal, premir <Esc>
  2. Caps Lock não deve estar ativada.
  3. j ou k para navegar até a linha onde se econtra a parte do texto que queremos apagar.
  4. h ou l para posicionar o cursor encima do primeiro caractere da parte da linha a ser apagada
  5. d$ para deletar a porção de texto a partir desse ponto nessa linha.
----------------------------------------------------------------

TEXTO

----------------------------------------------------------------

Algumas palavras sobre o editor Vim.

Vim é um programa editor de texto baseado em linha de de comando. é um programa editor

Você pode usar usar o Vim prescindindo do mouse.

Na época de seu primeiro lançamento, o nome "Vim" era um acrônimo para "Vi IMitation" o nome "Vim" era era um acrônimo para "Vi IMitation"

O nome do Vim mudou para "Vi IMproved" no final de 1993.

Algumas linhas repetidas no texto.

Para apagar as linhas repetidas vamos fazer o seguinte:

  1. Confirmar se estamos no modo normal, premir <Esc>
  2. Caps Lock não deve estar ativada.
  3. j ou k para navegar até a linha que queremos apagar.
  4. dd ou dd2 para deletar uma linha inteira ou duas linhas.
----------------------------------------------------------------

TEXTO

----------------------------------------------------------------

Algumas palavras sobre o editor Vim.

Vim é um programa editor de texto baseado em linha de comando.

Vim é um programa editor de texto baseado em linha de comando.

Você pode usar o Vim prescindindo do mouse.

Na época de seu primeiro lançamento, o nome "Vim" era um acrônimo para "Vi IMitation"

O nome do Vim mudou para "Vi IMproved" no final de 1993.

O nome do Vim mudou para "Vi IMproved" no final de 1993.

E assim concluimos sobre como deletar em Vim. Deletar por caracteres, por palavras, por porção de texto numa linha e apagar linhas completas. Existem outras formas, mas considero estas apresentadas como sendo as mais naturais e mais práticas.

Índice de conteúdo:

  1. Teclas de movimento
  2. Exemplo de alguns comandos que servem para apagar
  3. Deletar um caractere
  4. Apagar por Palavras
  5. Apagar uma parte numa linha
  6. Apagar linhas de texto
  7. Posts anteriores sobre o Vim no Onda Linux
    1. Vim - O editor de texto Unix e LInux
    2. Editor Vim - Os primeiros passos
    3. Leitura recomendada: Navegar no editor Vim

segunda-feira, 24 de julho de 2023

Navegar no editor Vim

Imagem do post

Índice de conteúdo:

Saber navegar com o cursor no documento em Vim é muito importante porque o seu domínio facilita muito no momento de edição. Poder deslocar a uma determinada linha, a uma palavra, para o início do documento ou para a última linha do documento ajuda na rapidez e eficiência no momento de inserir texto, apagar ou substituir.

Vamos navegar o cursor por caracteres, por palavras, por linhas de texto e por páginas no monitor usando mais de um método.

Os modos que vamos usarVoltar ao Índice

Para qualquer destes modos iniciamos com o Esc

  • Modo normal ou modo de comando é o modo padrão ao iniciarmos o Vim. Caso não estejamos em modo de comando, podemos passar para esse modo pressionando a tecla Esc. Aqui as instruções ao Vim são dadas somente teclando.
  • Vim em modo normal ou de comando.
  • Modo de linha-de-comando, partimos do modo normal do Vim ou modo de comando, com a diferença que iniciamos o modo linha-de-comando com :
  • Vim em modo de linha de comando
  • Um exemplo de uso da linha-de-comando para vermos na parte esquerda do editor os números das linhas. Para isso usamos o seguinte comando: set number Enter
  • Comando set number em Vim editor.

    Para desfazer o comando set number usamos o comando set nonumber ou o comando set number! <Enter>

    Desfazendo o comando set number em Vim editor com set nonumber
    Desfazendo o comando set number em Vim editor com set number!

    Vamos usar este texto nos exemplos

    Algumas palavras sobre o editor Vim.

    No meu primeiro contacto com o editor Vim, achei-o um pouco esquisito.

    Tentava inserir texto da mesma forma que fazia noutros editores e não conseguia.

    Me estavam faltando algumas informações básicas de como usar o Vim e após algumas leituras comecei a gostar deste editor. Espero que você também venha a gostar do Vim após alguma familiarização com este editor.

    Vim é um programa editor de texto baseado em linha de comando, o que significa que você pode usá-lo para editar texto sem usar o mouse.

    Na época de seu primeiro lançamento, o nome "Vim" era um acrônimo para "Vi IMitation", mas mudou para "Vi IMproved" no final de 1993.

    Vim é da autoria de Bram Moolenaar e representa um clone melhorado do Vi, um editor de texto criado para os Sistema Operativo Unix por Bill Joy em 1976.

    A primeira versão do Vim lançada ao público foi em 1991.

    O Vim foi projetado para uso tanto em uma interface de linha de comando quanto como um aplicativo independente em uma interface gráfica do usuário, este vem com o nome de GVim.

    Se quiseres podes seguir comigo. Copie o texto de exemplo, abra o editor Vim e cole-o.

    1. Abra o terminal crie um documento com o nome de texto_exemplo.txt
    2. Criando em Vim editor o documento texto_treino.txt
    3. O documento criado é aberto em Vim mas ainda está vazio. Os tildes ~ que se apresentam no documento correspondem a linhas vazias ou sem conteúdo.
    4. Documento texto_exemplo.txt criado mas vazio por enquanto.
    5. Cole o texto copiado em Vim usando as teclas Ctrl + Shift + v e de seguida grave o documento criado com o comando :w. Se houver alguma dúvida em como gravar o documento veja este post: Gravar o documento e sair do Vim
    6. Texto copiado para o Vim no documento texto_exemplo.txt
      Documento texto_exemplo.txt criado e gravado no disco

    Posição inicial do cursor

    Ao abrirmos um documento em Vim pela primeira vez, o cursor se encontra posicionado no início da primeira linha do texto.

    Quando fecharmos um documento que foi aberto em Vim e abrirmos de novo o mesmo documento, o cursor se posiciona no início da primeira linha em que nos encontrávamos antes de sairmos do Vim pela última vez.

    Movimentos apenas premindo as teclas abaixo indicadas

    • j cada vez que premirmos esta tecla descemos o cursor uma linha de texto.
    • k cada vez que premirmos esta tecla subimos o cursor uma linha de texto.
    • h cada vez que premirmos esta tecla retrocedemos o cursor um caractere na mesma linha de texto.
    • l cada vez que premirmos esta tecla avançamos o cursor um caractere na mesma linha de texto.

    Movimentos usando a combinação das teclas acima referidas e números

    Em Vim podemos também deslocar o cursor usando uma combinação de números com as teclas de movimento. Para cada caso usamos um número que corresponde ao número da linha ou caractere onde queremos posicionar o cursor.

    • 3 j descemos o cursor 3 linhas contando a partir da sua posição inicial no texto.
    • 3 k retrocedemos o cursor 3 linhas contando a partir da sua posição inicial no texto.
    • 5 l movemos o cursor 5 caracteres à direita contando a partir da sua posição inicial no texto.
    • 5 h movemos o cursor 5 caracteres à esquerda contando a partir da sua posição inicial no texto.
    Teclas de navegação em texto.

    Navegação para o início e final de uma linha

    • 0 estando no meio ou no final de uma linha podemos nos mover para o início da linha teclando 0.
    • $ estando no meio ou no início de uma linha podemos nos mover para o final da linha teclando $.

    Podemos navegar no editor Vim por palavras:

    • w cada vez que premirmos a tecla w minúsculo o cursor avança uma palavra até o início da próxima palavra.
    • e cada vez que premirmos a tecla e minúsculo o cursor avança até o fim da palavra onde se encontra, incluindo o último caractere.
    • b cada vez que premirmos b minúsculo o cursor recua uma palavra.
    • W cada vez que premirmos o W maiúsculo o cursor avança uma palavra.
    • B cada vez que premirmos o B maiúsculo o cursor recua uma palavra.

    O Vim tem dessas coisas que facilitam a vida. Também aqui podemos usar uma combinação de números e das letras atrás referidas para navegar pelas palavras

    • 4 w w minúsculo o cursor avança 4 palavras.
    • 4 b b minúsculo o cursor recua 4 palavras.
    • 5 W W maiúsculo o cursor avança 5 palavras.
    • 5 B B maiúsculo o cursor recua 5 palavras.

    A diferença essencial na deslocação do cursor por palavras usando letras minúsculas ou maiúsculas é que no primeiro caso o cursor para sobre as pontuações enquanto que navegando sobre palavras com w e b maiúsculas isso não acontece.

    Estando em modo normal ou modo de comando:

    Pressiona-se w para navegar o cursor por palavras situadas à direita

    Navegação por palavras situadas a direita

    Para retroceder por palavras use a tecla b para navegar o cursor por palavras situadas à esquerda.

    Navegar o cursor por palavras retrocedendo, indo para a esquerda.

    Agora faça o mesmo movimento mas desta vez usando maiúsculo W

    Navegando o cursor por palavras usando  w maiúsculo

    Faça o mesmo movimento mas desta vez usando b maiúsculo B

    Navegando o cursor por palavras usando b maiúsculo

    Navegar o cursor para a última linha do texto

    • Shift g em modo normal, o g maiúsculo desloca o cursor para a última linha do texto.
    • : $ Enter em modo de linha-de-comando desloca o cursor para a última linha do texto.
    • Navegando o cursor para a última linha do texto usando a linha de comando.

    Navegar o cursor para a primeira linha do texto

    • g g em modo normal, o gg desloca o cursor para a primeira linha do texto.
    • : 0 Enter em modo de linha-de-comando, desloca o cursor para a primeira linha do texto.
    • Entrando em modo de linha de comando e dando o comando para a deslocação do cursor para o início do texto.

    Pressionando Ctrl + f para descer uma página

    Teclas Ctrl mais f para deslocar o cursor uma página abaixo

    Pressionando Ctrl + b para subir uma página

    Teclas Ctrl mais b para retroceder, deslocar o cursor uma página acima

    Abordamos a navegação por linhas, caracteres, por palavras e por páginas de texto, mostrando mais de uma forma de navegarmos no documento. Com os movimentos básicos do cursor no editor Vim aqui abordados e exemplificados, estamos em condições de navegar por outras funcionalidades do Vim.

    Índice de conteúdo:

    Posts anteriores sobre o Vim no Onda Linux

    1. Vim - O editor de texto Unix e LInux
    2. Editor Vim - Os primeiros passos

segunda-feira, 17 de julho de 2023

Editor Vim - Os primeiros passos

post-head, imagem principal para o início do post

Índice de conteúdo:

Os modos do Vim

O Vim tem dois modos principais que são o modo Normal também conhecido por modo de Comando e o modo de Inserção. O modo Normal é o modo padrão quando iniciamos o Vim e nesse modo podemos usar comandos básicos do editor como sendo navegar no documento movendo o cursor usando as teclas h, j, k, l, copiar, colar, apagar, mudar de modo, etc.

O modo de inserção é usado para inserir texto no documento. Para entrarmos no modo de inserção premimos a tecla "i" e para entrarmos em modo de comando ou modo normal premimos a tecla ESC.

Também entre outros temos o modo de Linha-de-comando e o modo Visual. Com o modo de Linha-de-comando podemos entrar texto na parte inferior da janela do editor, como por exemplo, usar ":" seguido de w ou q para gravar o documento e para sair do vim, também este modo serve para efetuar buscas no documento e substituir palavras ou blocos de texto. O modo Visual é o modo de seleção de texto.

Vamos iniciar os nossos primeiros passos com o editor Vim. Caso não tenhas visto o post anterior sobre o Vim, convido-te a dar uma espreitadela: Vim - O editor de texto Unix e LInux

Abrir e fechar o editor VimVoltar ao Índice

Usamos exclusivamente o teclado para interagir com o editor Vim.

Abrir Terminal premindo tecla Super e digitando terminal na caixa de pesquisa:

Abrir Terminal usando a tecla Super e começando a digitar 'terminal'

Caixa de pesquisa do Gnome

Terminal

Teclar vim e premir Enter:

Teclar vim e premir enter

Ao abrir, esta é a forma como se apresenta o Vim. Esta é a forma em modo Comando ou Normal. Enquanto não alterarmos o modo comando para Insert não conseguimos introduzir texto da forma como estamos habituados noutros editores.

Editor Vim aberto pela primeira vez.

Como não foi feita nenhuma alteração, saímos do Vim teclando o comando :q <Enter>

Se já digitaste :q, antes da premir Enter poderás ver que a linha de comando mostra no lado inferior esquerdo a indicação :q junto ao cursor. Saindo do vim editor, comando :q

Os círculos coloridos indicam a ordem em que as teclas devem ser premidas.

Saindo do Vim usando comando :q

Criar um documento e entrar em modo de inserção de textoVoltar ao Índice

Criar um documento

Podemos usar um dos seguintes processos para criar um documento com o nome vim-primeiros-passos.txt, poderás escolher outro nome. Isto é só para exemplificar.

$ vim vim-primeiros-passos.txt<Enter>

Com o comando acima e após premirmos Enter, o Vim abre-se e disponibiliza logo de imediato o vim-primeiros-passos.txt para edição, mas se saíres do Vim (comando :q <Enter>) o documento não será gravado no disco. Para que seja gravado terá que ser usado o comando :w <Enter>

$ touch vim-primeiros-passos.txt. <Enter>

No processo acima o documento é criado no disco e podemos abri-lo com o Vim:

$ vim vim-primeiros-passos.txt <Enter>

Criando um documento em vim: vim-primeiros-passos.txt

O documento criado e aberto em Vim. Logo ao abrir, o Vim se encontra em modo de Comando. Para editar o documento precisamos entrar em modo INSERT.

O documento 'vim-primeiros-passos.txt' criado, aberto em vim, ainda sem nenhum texto.

Entramos em modo INSERT premindo a tecla i para que possamos inserir texto no documento.

Editor vim em modo INSERT para editar o documento criado. Após premirmos a tecla i, na linha de status, parte inferior esquerdo vemos a indicação INSERT
Entrando em modo Insert

Agora podemos começar a experimentar o modo INSERT inserindo algum texto no documento.

Imagem de texto inserido no editor.

Para navegarmos no texto entramos em modo de Comando premindo a tecla Esc

Entrando em modo de comando em vim premindo a tecla Esc

Navegar no texto

Navegação na vertical:

  • Tecla k move o cursor para cima
  • Tecla j move o cursor para baixo

Navegação na horizontal:

  • Tecla h move o cursor para esquerda
  • Tecla l move o cursor para direita

Todos estes movimentos podem também ser feitos usando as teclas de direcção mas como estamos usando o Vim, vamos usar a navegação no modo Vim (h, j, k, l)

Teclas de navegação em texto.

Indicação do número de linhas na barra de status. Ao navegarmos no documento no documento vai-nos aparecendo uma indicação na parte inferior da janela do Vim uma indicação do número de linha e número de caracteres até o ponto onde o cursor se encontra.

indicação na barra de status do editor Vim

Na imagem logo acima vemos uma indicação na barra de status: 1,23-22

  • 1 - Representa o número da linha em que o cursor se encontra.
  • 23 - Representa o número de caracteres que é 22 mais o número de acentos, cedilhas ou tildes.
  • 22 - Representa o número de caracteres incluindo espaços até o ponto em que o cursor se encontra.
Indicando o número de linhas junto ao cursor. Explicando o significado dos números na barra de status.

A linha 1 tem 135 caracteres.

Indicando o número de linhas junto ao cursor.

A linha 5 tem 151 caracteres.

Indicando o número de linhas junto ao cursor. A linha 5 tem 151 caracteres

A linha 7 tem 233 caracteres.

Gravar o documento e sair do VimVoltar ao Índice

Grava-se o documento passando do modo INSERT para o modo Comando premindo <Esc> e em seguida :w <Enter>

Gravar o documento, editor Vim
Gravar um documento. Editor Vim

Os círculos coloridos indicam a ordem em que as teclas devem ser premidas.

Gravar um documento

Para sairmos do editor Vim temos de estar em modo Comando, teclamos :q <Enter>

Sair do editor Vim

Os círculos coloridos indicam a ordem em que as teclas devem ser premidas.

Saindo do Vim usando comando :q

Mas também podemos fazer as duas operações, gravar e sair do Vim num só comando:

:wq <Enter>

Também podemos sair do vim sem gravar o documento:

:q! <Enter>

Aqui dou por concluída esta fase introdutória sobre como criar um documento, editar, navegar com o cursor no documento, gravar e sair do editor Vim. Vamos continuar com o editor Vim.

Índice de conteúdo: