Eu tenho estas linhas no meu .vimrc para ajudar com o recuo:
autocmd BufReadPost * set noexpandtab | retab! 4
autocmd BufWritePre * set expandtab | retab! 4
autocmd BufWritePost * set noexpandtab | retab! 4
No entanto, eles criam muito ruído na história de desfazer. Como eles essencialmente não fazem nada da perspectiva do usuário, eu gostaria de removê-los da história ou, pelo menos, esmagá-los de alguma forma (talvez eles cancelem se forem esmagados juntos?). Tem algum jeito de fazer isso?
Respostas:
Para aqueles que têm esse problema e se perguntam como contorná-lo sem silenciar todos os erros, eis como eu o fiz no meu
.vimrc
:O crédito é para Christian Brabandt e para esta resposta de Randy Morris
fonte
Neoformat
bit é necessário apenas se você estiver usando o plug-in neoformato e causará problemas se você não o tiver.Neoformat
comando não deveria vir no final (ou melhor, em umfinally
bloco)? Caso contrário, não seria executado se:undojoin
gerar um erro.Usar
undojoin
realmente funciona muito bem:No entanto, se você executar
:w
logo após desfazer uma ação, receberá um erro:Este erro pode ser silenciado usando
silent!
o mencionado nos comentários , mas pode ter alguns efeitos colaterais não intencionais:fonte
try|catch
cláusula para o E790 ou simplesmente usar:sil!
para silenciar o aviso.