Liberando o ctrl+s e o ctrl+q para o VIM

Publicado por Mauricio Ferrari em 05/08/2020

[ Hits: 2.457 ]

Blog: https://www.youtube.com/@LinuxDicasPro

 


Liberando o ctrl+s e o ctrl+q para o VIM



Após seguir as dicas para customização do editor VIM aqui do VOL, resolvi fazer uns aprimoramentos por minha conta para inserir no .vimrc e assim personalizar ainda mais os comandos do programa.

A minha ideia era basicamente essa:
  • Usar o ctrl + q para executar o :q! para sair sem salvar.
  • Usar o ctrl + s para executar o :w para salvar o documento.

Com base no meu aprendizado, criei essa instrução no .vimrc:

" Salvar
nnoremap <c-s> :w<cr>
inoremap <c-s> <c-o>:w<cr>

" Sair
nnoremap <c-q> :q!<cr>
inoremap <c-q> <c-o>:q!<cr>

Ok, vamos explicar um pouco isso. A primeira instrução é para o modo normal, a segunda é para o modo inserir. O resto fica assim:
  • <c-s> = O ctrl + s que você vai usar.
  • <c-o> = Modo inserção, que será aberto no modo inserir.
  • :w = comando para salvar.
  • <cr> = Tem relação com o Enter. Necessário.
  • <c-q> = O ctrl + q que você vai usar.
  • :q! = Para sair sem salvar.

Beleza, tudo pronto. O problema é que na hora de testar, o ctrl + q não vai funcionar e o ctrl + s vai travar o programa. E agora?

O problema é que o ctrl + s é usado para ativar o Scroll Lock no terminal e o ctrl + q é o atalho que desativa o recurso no terminal.

Para desativar esse recurso e liberar as combinações, é necessário inserir no .bashrc:

stty -ixon

Pronto, agora é só verificar se algum plugin que você possa ter instalado também está usando o <c-s> ou algo similar para desativar, pois esse também irá atrapalhar. Após os ajustes, é só abrir o vim e usar os comandos.

Outras dicas deste autor

Melhores listas de IPTV para adicionar no Hypnotix ou IPTVnator

makepkg - ERROR: Can't make output package in current directory [Resolvido]

Correção do warning: setlocale: LC_ALL: cannot change locale (pt_BR.UTF-8) no ArchLinux, Manjaro, BigLinux, Junest (mini Arch Linux)

gcc: fatal error: cannot execute 'cc1plus': execvp: [...] - Como resolver no Linux Mint 20

Inserindo Scripts Durante a Inicialização e o Desligamento do Sistema no KDE

Leitura recomendada

Vim - fazer JOIN de múltiplas linhas

Vim - substituindo somente no bloco selecionado

Habilitar highlight na busca do Vim

Instalar o VIM 9.1 no Debian 12

Integrar Área de Transferência do Vim com Ambiente Gráfico

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts