如何忽略 vim 撤消历史记录中的自动命令?

如何忽略 vim 撤消历史记录中的自动命令?

我有以下自动命令,它基本上会删除每行末尾的空格。不幸的是,每次保存时,它都会在撤消中插入一个步骤以跳转到文件开头,这非常烦人。有没有办法让 vim 忽略以下命令中的跳转,以便撤消时光标保持在原位?

autocmd BufWritePre *
    \ let s:bufwritepre_currline = line('.') |
    \ let s:bufwritepre_currcol = col('.')   |
    \ silent %s/\s*$//                       |
    \ call cursor(s:bufwritepre_currline, s:bufwritepre_currcol)

相关内容