首页 > 其他分享 >在Neovim中配置基于事件触发的自动保存

在Neovim中配置基于事件触发的自动保存

时间:2022-10-29 16:07:28浏览次数:78  
标签:Neovim 触发 基于 silent InsertLeave 保存 vim write



tags: Vim Tips

配置

采用纯​​lua​​​脚本的方式进行​​vim​​中自动保存的配置, 参考了 Stack Overflow 的一个回答​1​​, 如下:

vim.api.nvim_create_autocmd({ "InsertLeave" }, {
callback = function()
vim.fn.execute("silent! write")
vim.notify("Autosaved!", vim.log.levels.INFO, {})
end,
})

事件采用了​​InsertLeave​​​, 即当编辑器离开插入模式, 便触发保存, 通过​​Neovim​​​的内置函数​​vim.fn.execute​​完成调用.

并且, 在执行​​write​​​之前调用了​​silent!​​​不显示错误信息, 所以这里就需要注意, 如果保存了一个未命名的新文件, 并不会提示错误, 但是其实并没有完成保存.
j
这里不加​​​pattern​​​参数的话默认是对全局生效, 注意这里我还加了一个提示弹窗, 通过​​notify​​插件来完成,

ref


  1. ​https://stackoverflow.com/a/27387138/17838258​​; ↩︎


标签:Neovim,触发,基于,silent,InsertLeave,保存,vim,write
From: https://blog.51cto.com/u_15366127/5806204

相关文章

  • 实验7:基于REST API的SDN北向应用实践
    (一)基本要求编写Python程序,调用OpenDaylight的北向接口实现以下功能利用Mininet平台搭建下图所示网络拓扑,并连接OpenDaylight;下发指令删除s1上的流表数据。delet......
  • 实验7:基于REST API的SDN北向应用实践
    实验7:基于RESTAPI的SDN北向应用实践一、实验目的1.能够编写程序调用OpenDaylightRESTAPI实现特定网络功能;2.能够编写程序调用RyuRESTAPI实现特定网络功能。二、实......
  • 基于python指定包的安装路径方法(linux)
    通常python安装包都会被默认装在/usr/local/pythonx/lib/site-packages(linux),但是我们有时想自定义包的安装路径,比如自己项目的某个路径,这样在部署的时候就不用再安装了,大......
  • 分布式锁中-基于Zookeeper的实现是怎样
    Zookeeper(后续简称ZK)是一个分布式的,开放源码的分布式应用程序协调服务,通常以集群模式运转,其协调能力可以理解为是基于观察者设计模式来实现的;ZK服务会使用Znode存储使用者的......
  • 基于matlab的蓝色车牌定位与识别---定位
    基于matlab的蓝色车牌定位与识别---定位   接着昨天的工作继续。定位的过程有些是基于车牌的颜色进行定位的,自己则根据数字图像一些形态学的方法进行定位的。 ......
  • 实验7:基于REST API的SDN北向应用实践
    实验7:基于RESTAPI的SDN北向应用实践一、实验目的能够编写程序调用OpenDaylightRESTAPI实现特定网络功能;能够编写程序调用RyuRESTAPI实现特定网络功能。二、实验......
  • 实验7:基于REST API的SDN北向应用实践
    实验7:基于RESTAPI的SDN北向应用实践一、实验目的1.能够编写程序调用OpenDaylightRESTAPI实现特定网络功能;2.能够编写程序调用RyuRESTAPI实现特定网络功能。二、实......
  • 实验7:基于REST API的SDN北向应用实践
    实验7:基于RESTAPI的SDN北向应用实践一、实验目的能够编写程序调用OpenDaylightRESTAPI实现特定网络功能;能够编写程序调用RyuRESTAPI实现特定网络功能。二、实验......
  • 基于C语言的通用型数据结构与容器库
    仓库地址:github:https://github.com/hellototoro/hlibcgitee:https://gitee.com/totorohello/hlibclist双向序列容器,用于将它们的元素保持为线性排列,并允许在序列的任何......
  • 第三十章 使用 CSP 进行基于标签的开发 - 控制流
    第三十章使用CSP进行基于标签的开发-控制流控制流CSP标记语言提供了几个标记来促进对页面执行的控制。虽然不像直接的服务器端标记那样通用,但这些标记可以使某些任......