J'ai ces lignes dans mon .vimrc pour aider à l'indentation:
autocmd BufReadPost * set noexpandtab | retab! 4
autocmd BufWritePre * set expandtab | retab! 4
autocmd BufWritePost * set noexpandtab | retab! 4
Cependant, ils créent beaucoup de bruit dans l'histoire de l'annulation. Puisqu'ils ne font essentiellement rien du point de vue de l'utilisateur, je voudrais les supprimer de l'histoire ou à tout le moins les écraser (peut-être qu'ils s'annulent s'ils sont écrasés ensemble?). Existe-t-il un moyen de le faire?
Réponses:
Pour ceux qui ont ce problème et se demandent comment contourner ce problème sans faire taire toutes les erreurs, voici comment je l'ai fait dans mon
.vimrc
:Le crédit va à Christian Brabandt et cette réponse de Randy Morris
la source
Neoformat
bit n'est nécessaire que si vous utilisez le plugin neoformat , et causera des problèmes si vous ne l'avez pas.Neoformat
commande ne devrait-elle pas venir à la fin (ou plutôt dans unfinally
bloc)? Sinon, il ne serait pas exécuté s'il:undojoin
renvoie une erreur.L'utilisation
undojoin
fonctionne plutôt bien:Cependant, si vous exécutez
:w
juste après avoir annulé une action, vous obtiendrez une erreur:Cette erreur peut être réduite au silence en utilisant
silent!
comme mentionné dans les commentaires , mais peut avoir des effets secondaires non intentionnels:la source
try|catch
clause pour E790 ou simplement utiliser:sil!
pour désactiver l'avertissement.