Forma idiomática para substituir a linha inteira pelo conteúdo da área de transferência

1

Eu uso vim-gtk , então colar da área de transferência é tão simples quanto colar o conteúdo do registro "+ . Para cada linha, eu poderia substituí-lo pelo conteúdo da área de transferência da seguinte forma:

1. V
2. d
3. o
4. <ESC>
5. pasting from clipboard (bound to some shortcut)

As desvantagens que vejo aqui são:

  1. Alternando entre os modos normal e de inserção (etapa 3)
  2. Invadindo registros com conteúdo de lixo (etapa 2)

Então, qual é a maneira idiomática de substituir uma linha pelo conteúdo da área de transferência?

    
por St.Antario 26.09.2016 / 22:33

2 respostas

1

Existem algumas coisas diferentes que você pode fazer. Não sei se algum deles é mais idiomático , mas eles são mais curtos.

  1. dd é um pouco mais idiomático que Vd , então eu recomendaria usar isso. ddO<C-r>+<esc> é um pouco menor que ddO<esc>"+p

  2. Você pode fazer "+pkdd , mas isso não é mais curto. No entanto, ele fica inteiramente no modo normal, o que é legal.

  3. Você pode fazer apenas V"+p , que é o caminho mais curto sem um mapeamento.

É claro que, se você fizer isso com bastante frequência, poderá sempre fazer seu próprio mapeamento usando qualquer um desses métodos. Por exemplo:

nnoremap <leader>p V"+p

<leader> é uma ferramenta para tornar a definição de seus próprios mapeamentos mais conveniente. Por exemplo, se você fosse fazer:

nnoremap p V"+p

você perde a capacidade de chamar o padrão p . Líder é basicamente um namespace para seus próprios mapeamentos. Mais informações podem ser encontradas aqui .

    
por 26.09.2016 / 22:44
0

Preciso disso com muita frequência, escrevi um plug-in para simplificar e permitir velocidade máxima: ReplaceWithRegister .

Este plugin oferece um comando two-in-one gr que substitui o texto coberto por um objeto {motion} / text, linha (s) inteira (s) ou a seleção atual com o conteúdo de um registrador; o texto antigo é apagado no registo do buraco negro, ou seja, desapareceu. Ele manipula de forma transparente muitos casos de canto e permite uma repetição rápida por meio do comando padrão . . Caso você não goste, sua página tem links para alternativas.

Seu caso de uso (substituir uma linha pelo conteúdo da área de transferência) seria "+grr .

    
por 27.09.2016 / 13:16

Tags