Editar dados colunares no vim

4
Data

Name                     Age
Madhavan                 29
saravana<Tab Press>      !

Como posso editar esses dados no vim de maneira tabular?

Quando eu pressiono a tecla tab da coluna 1 na linha 3, o cursor deve se mover para a posição da marca de exclamação.

Nota: A marca exclamadora é apenas uma posição do marcador onde desejo que o cursor vá e não é o caractere real no lugar.

Isso pode ser feito usando o modo org-table no emacs, mas às vezes é um exagero.

Então, estou procurando maneiras mais simples no vim / shell?

    
por Madhavan Kumar 12.07.2015 / 17:50

3 respostas

0

  1. Mova o cursor para o caractere mais alto (se você estiver selecionando as linhas mais abaixo, abaixo, se estiver indo para cima) antes do qual deseja inserir o texto
  2. Entre no Modo de bloqueio visual pressionando Ctrl + v (a menos que você tenha mapeado a ação de colar para ele, e nesse caso você provavelmente já sabe como inserir a coluna)
  3. Selecione a coluna usando as teclas de seta e
  4. Pressione Shift + i (alternando para o modo de inserção)
  5. Digite o texto que você deseja inserir (será exibido apenas na primeira linha)
  6. Pressione esc duas vezes. Caso você queira excluir o texto, siga as etapas 1 a 3 e simplesmente selecione todo o texto que deseja excluir, depois pressione x e pronto!

Nota: Se você precisar de funções mais específicas, você pode pesquisar plugins vim, outra opção é exportar a coluna xx em outro arquivo (com cut ou awk) se você quiser mais soluções.

    
por 12.07.2015 / 17:59
0

Você quer se mover por cada célula. Assim, no modo normal, o comando w ou b ajudará você a avançar ou retroceder em cada palavra.

Para obter o mesmo recurso no modo de inserção, você pode usar o mapa.

    :imap  <Tab> <Esc>wi

Coloque isso na linha de comando.

Quando você está editando, você pode pressionar a guia para ir para a próxima célula. O mapeamento que fiz sairá do modo de inserção, depois avançará para a próxima palavra (w) e depois mudará para o modo de inserção. Espero que isso seja o que você queria.

    
por 25.04.2016 / 09:34
-1

Você pode fazer isso:

$vim +number_line file

e depois de pressionar Shift + A . Alternativamente, você pode fazer /word_to_find e então pressionar i para editar.

    
por 12.07.2015 / 18:12

Tags