DEV Community

Discussion on: [Dicas do VIM] Copiar, cortar e colar no VIM / NeoVim

Collapse
 
voyeg3r profile image
Sérgio Araújo

Seguem algumas contribuições de um usuário um tanto viciado no vim, caso curtam os adendos basta dar uma fuçada no meu perfil em "voyeg3r" aqui mesmo no dev.to

Eu tenho aprendido coisas bem inusitadas no vim. Se por exemplo acho uma função na web e quero testa-la, basta fazer

:@+
Enter fullscreen mode Exit fullscreen mode

Digamos que a função tem o nome "DelDuplicatedLines()", posso simplesmente fazer:

:call DelDuplicatedLines()
Enter fullscreen mode Exit fullscreen mode

Desse modo posso terstar funções sem mesmo gravalas no meu vimrc/init.lua

Quando consigo elaborar um comando complicado tipo "apagar o último parágrafo de todos os arquivos abertos:

:silent! noautocmd argdo :normal Gdap
Enter fullscreen mode Exit fullscreen mode

Eu posso copiar o comando recem executado para a área de transferência com:

:let @+=@:
Enter fullscreen mode Exit fullscreen mode

Às vezes pego transcrições de séries para estudar o Inglês, e para copiar de uma marca "a" até uma marca "b" para o clipboard faço:

:'a,'b y+
Enter fullscreen mode Exit fullscreen mode

E para colar o conteúdo da área de transferência sem a necessidade do "pastetoggle":

inoremap <C-r>+  <C-r><C-o>+
inoremap <S-Insert>  <C-r><C-o>+
Enter fullscreen mode Exit fullscreen mode

Para os usuários do vim tradicional o plugin machakann/vim-highlightedyank faz a região copiada dar uma piscada de modo a lhe dar um feedback do que foi copiado. No caso do neovim um autocomando resolve:

augroup highlight_yank
    autocmd!
    au TextYankPost * silent! lua vim.highlight.on_yank{higroup="IncSearch", timeout=700}
augroup END
Enter fullscreen mode Exit fullscreen mode

Espero de algum modo ter enrriquecido a discusão e passo a seguir o seu perfil doravante!