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

Publicado por Mauricio Ferrari em 05/08/2020

[ Hits: 2.316 ]

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

Como adicionar PPA no Deepin 20

Comando "sed" com parâmetro que aceita barra " / "

ExFAT no Slackware

Compilando o Vim 8.2 com suporte a clipboard

PhotoQT no Debian, Ubuntu, Linux Mint e derivados

Leitura recomendada

Acessibilidade no VIM

Juntar/unir linhas (JOIN) no VIM

Atualizando / Instalando o VIM 8.2 (Ubuntu/Debian/Mint e Derivados)

Vim - como executar uma linha do texto no terminal

Emulador de terminal no Vim

  

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