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?