Neovim 缓冲区(buffer)相关事件

💡 原文中文,约2000字,阅读约需5分钟。
📝

内容提要

最近使用SpaceVim的标签栏时发现,新增的空内容缓冲区不会显示在标签栏上方。检查源码后发现,标签栏只监听了BufNewFile和BufReadPost事件,而不监听:enew和:new命令。修改源码后增加了对BufNew事件的监听。通过测试发现,BufAdd和BufNew事件会在新增缓冲区时触发。可以使用命令查看Neovim支持的缓冲区事件列表。

🎯

关键要点

  • 在使用SpaceVim的标签栏时发现新增的空内容缓冲区不显示。
  • 标签栏只监听了BufNewFile和BufReadPost事件,未监听:enew和:new命令。
  • 修改源码后增加了对BufNew事件的监听。
  • BufAdd事件在新增缓冲区时触发。
  • BufNew事件用于新增缓冲区和修改缓冲区名称。
  • BufNewFile事件在开始编辑一个不存在的文件时触发。
  • 可以使用命令:echo getcompletion('Buf', 'event')查看Neovim支持的缓冲区事件列表。
  • 通过测试代码可以验证事件的触发时机。
🏷️

标签

➡️

继续阅读