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

Publicado por Perfil removido em 03/12/2019

[ Hits: 2.243 ]

 


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

Instalando Google Chrome no Ubuntu 24.04 LTS

Origens de spam - Investigando e colhendo informações

Configurar mouse em notebook no FreeBSD 7.2

Temas e extensões: Resolvendo problemas de instalação no Firefox

Instalando pacotes RPM e resolvendo as dependências em modo texto

Leitura recomendada

Melhorando o Xterm no Slackware

Arch Linux: Firefox em português Brasil

Dica para otimizar Ubuntu padrão com Gnome em low-cost notebooks/UMPCs

Geany - Abrindo várias instâncias em diferentes ambientes de trabalho

Proxy em ambiente texto (shell)

  

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