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

Publicado por Perfil removido em 03/12/2019

[ Hits: 1.975 ]

 


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

Utilizar o Monodevelop via proxy

Instalando modem SmartLink SL2800 no Slackware 12

Instalando o driver da Nvidia no Mandriva 2008.1

Bloqueando pasta no Linux

Mudando o Splash Screen do KDE

Leitura recomendada

xsession: Warning: unable to write to /tmp [Resolvido]

Configurar repositório APT local no Debian sem a necessidade de configurar o Apache

Resolução da tela mudando sozinha [Resolvido]

Atalho de teclado para aumentar e diminuir o brilho da tela

Remover os ícones lixeira, home, etc da área de trabalho no Debian

  

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