Muitas vezes, eu escrevo remarcações no VIM, e haverá parágrafos nessas remarcações. Para ajudar na minha edição, configurei meu Vim para quebrar uma linha em 80 caracteres. Funciona bem se eu continuar digitando, mas o problema é que, se eu precisar fazer alguma correção, isso se torna muito irritante.
demo (extraído da lógica de primeira ordem da wikipedia):
The adjective "first-order" distinguishes first-order logic from higher-order logic
in which there are predicates having predicates or functions as arguments. In first-order
theories, predicates are often associated with sets. In interpreted higher-order
theories, predicates may be interpreted as sets of sets.
Por enquanto, tudo bem. Mas quando eu revisar o artigo, posso decidir adicionar algo no meio, dizer:
The adjective "first-order" distinguishes first-order logic from higher-order logic
in which there are predicates having predicates or functions as arguments,
or in which one or both of predicate quantifiers or function quantifiers are permitted.
In first-order theories, predicates are often associated with sets. In interpreted higher-order
theories, predicates may be interpreted as sets of sets.
a linha de aviso 3 é a que eu quero agrupar. Se eu fizer isso no VIM, precisarei juntar manualmente as linhas e refazer a quebra do parágrafo inteiro.
Alguém tem idéia de como fazer o VIM fazer isso automaticamente?
fonte
Eu daria uma olhada
:help 'textwidth'
. Ele quebrará automaticamente as linhas enquanto você digita. No entanto, isso não funciona se você estiver editando o meio de uma linha.Pessoalmente, prefiro deixar de
textwidth
lado, por isso criei uma função que se juntará automaticamente e dividirá um parágrafo. (Basicamente, formate-o automaticamente para 80 caracteres) É assim:Em seguida, tenho um mapeamento para chamá-lo sempre que preciso:
Essa função funciona muito bem
formatoptions+=jr
para formatar comentários no código também! Basta colocar o cursor na primeira linha com mais de 80 caracteres e chamar a função.(Nota: eu não fiz essa função geral fazer comprimentos diferentes de 80, mas acho que você só precisa alterar os anos 80 e 81 se quiser fazer outra coisa)
Veja
:help 'textwidth'
e:help 'formatoptions'
para mais informações.fonte
textwidth
formatará automaticamente conforme você digita. Minha função não. Prefiro controlar quando o vim envolve as coisas, por isso funciona para mim. Mas se você está procurando especificamente um formatador conforme você digita, sim; não se encaixa perfeitamente no seu fluxo de trabalho.Por uma questão de integridade, gostaria de mencionar a opção baseada em plug-in.
Se você usar algo como ALE, que suporta a execução de seus buffers por meio de um embelezador ao salvar, você pode permitir que o Prettier manipule novamente o código.
Eu consegui isso colocando isso em
~/.vim/ftplugin/markdown.vim
:... e colocando isso em
~/.vimrc
:fonte