如果你使用 (neo)vim 作为你的编辑器,首先你必须理解 buffer、tab 和 window 的概念。
:w 可以将 buffer 中的数据写入,使用 :q! 表示退出并丢弃 buffer 中的内容。每个 buffer 有一个特殊的数字表示,并且有可以有三种状态:active、inactive 和 hidden。
如果此时有一个处于 hidden 状态,并且内容已经被更改的 buffer,使用 :q 命令退出 neovim 时,neovim 会给出一个错误信息,指引我们可以将 buffer 中的内容写入(:wq)或者退出不写入(:q)。
:buffer 或者 :ls: 列出所有 buffer, 每个 buffer 都有一个数字标识# `:ls` 列出所有 buffer
# a 表示 active buffer
# 每个 buffer 有一个数字标识
:ls
1 %a + "docs/开发者笔记/vim buffer.md" line 29
13 #h "~/projects/program/site-generator/docs/开发者笔记/Vscode Neovim.md" line 1
:b <number>: 显示指定数字代表的 buffer:b <partial name>:显示指定文件名称代表的 buffer,支持模糊匹配:new:在水平 split window 创建一个 buffer:vnew: 在竖直 split window 创建一个 buffer:enew: 在新的 window 创建一个 buffer:bp: 切换到前一个 buffer:bn: 切换到后一个 buffer:bf: 切换到第一个 buffer:bl: 切换到最后一个 buffer:bd: 移除一个 buffer:w: 将当前 buffer 中的内容写入文件,保存:q: 退出当前 buffer,如果 buffer 中有未保存的内容,退出失败:q!: 强制退出当前 buffer,不保存 buffer 中的内容:wa: 将所有 buffer 中的变更写入文件,并保存:xa: 将所有 buffer 中的变更写入文件,保存并退出:qa!: 退出,并丢弃 buffer 中的变更:qa: 退出所有 buffer,如果有未保存的 buffer,退出失败以顶部 tab 的形式显示打开的 buffer。并且显示 buffer 的状态,buffer 是否未保存。
支持文件搜索,文件内容搜索和 buffer 搜索。
(完)