如何禁用vim';临时通知

如何禁用vim';临时通知,vim,Vim,我有一个vim脚本,它会在保存之前更改缓冲区中的某些内容 但该脚本将触发VIM打印如下通知 "file.txt" 112L, 4391C written 1 change; before #46 0 seconds ago Press ENTER or type command to continue 我怎样才能阻止它 以下是脚本: --script.lua function update() local b = vim.buffer() for i = 1, 10 do l

我有一个vim脚本,它会在保存之前更改缓冲区中的某些内容

但该脚本将触发VIM打印如下通知

"file.txt" 112L, 4391C written
1 change; before #46  0 seconds ago
Press ENTER or type command to continue
我怎样才能阻止它

以下是脚本:

--script.lua

function update()
  local b = vim.buffer()
  for i = 1, 10 do
    local line = b[i]
    if line and line:match('updated_on:.*') then
      b[i] = line:gsub('updated_on:.*', 'updated_on: '..os.date())
      break
    end
  end
end
function undo()
  vim.command'call UndoIt()'
end
vim.command"autocmd BufWritePre * lua update()"
vim.command"autocmd BufWritePost * lua undo()"
--script.vim

function! UndoIt()
  let l:winview = winsaveview()
  undo
  call winrestview(l:winview)
endfunction

在脚本中,找出写入的位置,并在该命令之前添加
silent

例如,如果写入是通过
write
命令完成的,则将
write
替换为
silent write


有关详细信息,请参见
:h:silent

您可以先向我们展示脚本。谢谢您的回复。我在上面添加了我的脚本。你可以看到我不是自己写的。我只是在保存前更改缓冲区,然后在保存后将其撤消。那么我应该把静默放在哪里呢?刚刚试过~it's work~我只是在lua调用之前添加了静默,比如
vim.command“autocmd BufWritePre*silent lua update()”