Neovim 代码编辑器
Neovim 是由 Bill Joy 早在 1976 年创建的经典 vi 编辑器 的现代化重构版本。它是一款模态编辑器,输入内容的插入模式 (Insert Mode) 与执行操作的命令模式 (Command Mode) 严格分离。一旦你掌握了其深邃快捷指令集的冰山一角,编辑代码就会像拥有超能力一般高效。不过,它确实也有一定的学习门槛!
如果你完全没有接触过 Vim 风格的编辑方式,强烈建议在 YouTube 上观看 ThePrimeagen 的 Vim As Your Editor 系列视频。它会带你入门基础操作。请做好心理准备:与传统主流编辑器相比,掌握 Vim 的基本熟练度需要花费更多时间,但一旦掌握,带来的生产力回报也巨大得多。
Neovim 具备近乎无限的可配置性。如果你热衷折腾,完全可以从零打造自己的 Neovim 配置。Typecraft 的从零配置 Neovim 课程 和 ThePrimeagen 的配置教程 都非常优秀。
不过,Omarchy 开箱即自带了完整的 Neovim 环境 —— omarchy-nvim 软件包 —— 它经过了精心的调优,旨在为你展现开箱即用的最佳体验。你一行配置都不用写!它基于著名的 LazyVim 插件与配置分发套件构建,体验极佳。
LazyVim 基础用法
在这篇简短介绍中我们无法展开讲解整个 Vim,但可以为你梳理 LazyVim 的核心操作逻辑与常用命令。
首先,Neovim 拥有“前导键 (Leader Key)”的概念,它是触发各类复合命令的核心入口。LazyVim 将前导键设为了 Space(空格键)。按下空格键稍等片刻,屏幕下方就会内联弹出当前可用的所有命令选项。
以下是我日常高频使用的一些基础命令:
Space Space- 在当前目录下模糊搜索文件。Space S G- 使用 ripgrep 全局搜索文件内容并提供实时预览。Space E- 打开/关闭侧边栏文件树。Ctrl + W W- 在侧边栏文件树与主编辑器之间切换焦点。Shift + H- 向左切换已打开的标签页(Vim 中称为 Buffer 缓冲区)。Shift + L- 向右切换已打开的标签页。Space B D- 关闭当前标签页。Space B O- 关闭除当前标签页外的所有其他标签页。Space G G- 在当前目录下以浮动窗口启动 LazyGit。Space U W- 切换自动换行 (Soft Wrap)。
在文件树中(按下 Space E 呼出,Ctrl + W W 跳转过去),你可以使用 a 在当前目录新建文件,使用 A 新建子目录。在文件树中按下 ? 可以查看所有操作命令。
如果你想理解 Vim 基础的语法结构,可以阅读我写的三段式语法解析,了解如何打出华丽的操作连招!
你可以在 LazyVim 快捷键页面 查看所有可用的按键绑定。
启动 Neovim
你可以通过 Super + Shift + N 启动 Neovim(该快捷键用于启动默认编辑器,出厂默认即为 Neovim),但通常更便捷的方式是在终端中进入项目目录后直接输入 n。n 是 nvim 的别名,默认会打开当前所在目录。打开单个文件可以使用 n myfile.txt。
使用 Neovim 编辑系统超级用户文件
如果你需要编辑只有 root 权限才能修改的系统文件,并希望保留所有插件和配置,可以运行 sudoedit /etc/sudoers.d/00-sudo-only-file。