Vim/gVim - Alternância Intuitiva entre Maiúsculo e Minúsculo

Publicado por Perfil removido em 03/12/2019

[ Hits: 2.023 ]

 


Vim/gVim - Alternância Intuitiva entre Maiúsculo e Minúsculo



Com base nesta dica do Fábio, pesquisando, descobri uma forma de conversão para uppercase e lowercase de forma mais rápida, sem ter que colocar o Vim/gVim em modo visual, e ainda, SEM PRECISAR SELECIONAR. :)

Para mapear os comandos e deixá-los mais intuitivos, uso as combinações Ctrl+setas. E para aplicar o comando na linha toda, uso Alt+setas.

Coloque este arquivo em seu ".vimrc":

"PALAVRAS
"Torna palavra em maiúscula
nnoremap <C-Up> viwU

"Torna palavra em minúscula
nnoremap <C-Down> viwu

"LINHAS
"Torna toda linha em maiúscula (M = Alt)
nnoremap <M-Up> <Esc>0v$<esc>gUU

"Torna toda linha em minúscula
nnoremap <M-Down> <Esc>0v$<esc>guu

No modo normal, posicione o cursor em qualquer ponto da palavra, ou da frase, e aplique.

Bônus

Já a função abaixo, torna a palavra em maiúscula ou minúscula, apenas repetindo o acionamento do mapeamento Ctrl+Seta-direita.

"Selecionar palavra
function! TwiddleCase(str)
  if a:str ==# toupper(a:str)
    let result = tolower(a:str)
  elseif a:str ==# tolower(a:str)
    let result = substitute(a:str,'\(\<\w\+\>\)', '\u\1', 'g')
else
    let result = toupper(a:str)
  endif
return result
endfunction
vnoremap <C-right> y:call setreg('', TwiddleCase(@"), getregtype(''))<CR>gv""Pgv

Aplicação:
  • 1º acionamento: torna a 1ª letra da palavra em maiúscula;
  • 2º acionamento: torna toda a palavra em maiúscula;
  • 3º acionamento: torna toda a palavra em minúscula.

Bastante intuitivo também, mas para aplicar esse comando, precisa selecionar antes a palavra.

É isso! Espero que os mapeamentos acima tornem suas atividades no Vim/gVim úteis e produtivas.

E viva o Linux!

Referências


Outras dicas deste autor

Tocando MP3 no Ubuntu

Visualizando o log do Squid com Squidview

Placa de vídeo Nvidia em notebook HP DV2807NR

Plymouth funcionando corretamente com as placas Intel

Java da Oracle no Debian Wheezy 64 bits

Leitura recomendada

Resolvi meu problema de travamento do Squid (warning! your cache is running out of filedescriptors)

Rodinha do mouse (MWheel) funcionando no Emacs

Instalando impressoras no Linux via CUPS

Desabilitando checagem de sistemas de arquivo na inicialização do Linux

Alterando os botões das janelas no MATE

  

Comentários
[1] Comentário enviado por fabio em 03/12/2019 - 03:23h

Interessante. Já estou usando aqui :)

[2] Comentário enviado por removido em 03/12/2019 - 09:09h


[1] Comentário enviado por fabio em 03/12/2019 - 03:23h

Interessante. Já estou usando aqui :)


:)



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts