Problemas com o Vim quando copiar / colar em massa (yank / putting)

0

Estou usando o Vim há cerca de 7 meses, codifico principalmente em javascript, mas ocasionalmente em bash ou python. Eu peguei muitos truques para usá-lo e muitas vezes sai do "se eu não posso fazer isso, descobrir como" ou "se eu acho que algo pode ser melhorado descobrir como". Eu acho muito difícil fazer grandes reestruturações de arquivos, movendo blocos de código de lugar em um arquivo para outro. Eu tentei usar :vsplit para tornar as coisas um pouco mais fáceis. Mas ainda parece desajeitado. Qual é a melhor maneira, ou uma maneira de mover blocos relativamente grandes (10 a 30 linhas) de código, ao redor de um arquivo?

    
por allouis 27.08.2013 / 10:44

1 resposta

0

A maneira mais básica seria:

  1. corte o bloco que você deseja mover diretamente ( di{ , por exemplo) ou após uma seleção visual ( vipd , por exemplo).

  2. mova para onde você quer que o bloco seja e cole.

E eu não vejo nada "desajeitado" sobre isso.

Como você faz isso agora e por que é desajeitado?

Enfim, contemple a beleza dos comandos Ex:

:'<,'>m33    <-- move the currently selected text to after line 33
:50,62m19    <-- move lines 50 to 62 to after line 19
:-23,+15m13  <-- move 13th line above to 15th line below to after line 13
:'{,'}m'a    <-- move the current paragraph to after mark a
:?^foo?,'bm. <-- move 1st line matching ^foo upward to mark b to after the current line

Oh deus… Veja :exusage , :help :move e :help range .

Note que o Vim tem maneiras de ajudar você a navegar:

  • marca, ma para colocar a marca a , 'a para saltar para a marca a , consulte :help mark-motions
  • o jumplist, <C-o> para voltar, <C-i> para avançar, ver :help jumplist
por 27.08.2013 / 11:37

Tags