O Vim insere automaticamente um comentário quando inicio uma nova linha a partir de uma linha comentada, porque defini formatoptions=tcroql
. Por exemplo (o cursor é *
):
// this is a comment*
e depois de pressionar <Enter>
(modo de inserção) ou o
(modo normal), fico com:
// this is a comment
// *
Esse recurso é muito útil ao escrever comentários longos com várias linhas, mas geralmente quero apenas um comentário com uma única linha. Agora, se eu quiser terminar a série de comentários, tenho várias opções:
- acertar
<Esc>S
- bateu
<BS>
três vezes
Ambos oferecem três pressionamentos de tecla, somados a <Enter>
isso, significam quatro pressionamentos de tecla para uma nova linha, o que eu acho demais. Idealmente, gostaria de apertar <Enter>
uma segunda vez para ficar com:
// this is a comment
*
É importante que a solução também funcione com diferentes níveis de indentação, ou seja,
int main(void) {
// this is a comment*
}
acertar <Enter>
int main(void) {
// this is a comment
// *
}
acertar <Enter>
int main(void) {
// this is a comment
*
}
Acho que vi esse recurso em algum editor de texto há alguns anos, mas não me lembro qual era. Alguém está ciente de uma solução que fará isso por mim no Vim? Ponteiros na direção certa sobre como rolar minha própria solução também são muito bem-vindos.