NvChad 接口¶
关于mappings.lua
的几句话
在 NvChad 的官方文档中,提到了诸如<leader>
之类的命令,以及其他普通读者可能不理解的按键。原因是默认的mappings.lua
文件(../nvim/lua/core/mappings.lua
)。
这个文件及其描述的按键映射在这里概述。需要明确的是,您可以使用自定义的mappings.lua
文件(../nvim/lua/custom/mappings.lua
)覆盖任何按键映射。
为了避免在您现在阅读的文档中造成混淆,我们将假设您使用的是默认的mappings.lua
文件,并将替换您需要使用的实际命令来访问函数。标准按键引用是
- leader = 空格
- A = Alt
- C = Ctrl
- S = Shift
如果一个命令指定<leader>uu
作为示例,我们将用实际的按键组合替换它:空格uu.
这将在下一节使用 NvChad中再次介绍
一旦 Neovim 安装完毕并且 NvChad 配置输入完毕,我们的 IDE 应该看起来像这样
该界面已经包含了一些高级功能,例如指示 git 仓库的状态,但可以通过使用语言服务器进一步增强,并通过覆盖一些基本配置来自定义。构成它的基本模块在下面详细介绍。
Tabufline¶
用户界面呈现一个名为Tabufline
的顶栏,用于管理打开的缓冲区。Tabufline
仅在您打开多个文件时才会显示。打开的缓冲区显示文件类型图标、文件名及其状态。状态用图标表示。
如果,如截图所示,我们有一个红色的x
,则表示可以关闭该文件,因为它已保存。如果图标是一个绿色的点.
,则表示需要保存该文件,并且关闭命令Shift + : + q 将产生一个警告:“自上次更改后没有写入”。
右侧是设置黑暗或光明主题的图标。通过鼠标点击它,我们可以选择我们想要的主题。
在右边我们还有关闭编辑器的图标。
中间部分 - 打开的缓冲区¶
编辑器的中心部分由该时刻在编辑器上处于活动状态的缓冲区(index.en.md)组成。为了引入一些额外的功能,我们可以通过在示例中再打开一个文件(index.it.md)在两个文件中同时工作。
在编辑器中,我们将有第一个缓冲区处于前台,第二个缓冲区在 Tabufline 中列出。现在,如果我们使用Shift + : + vsplit 命令分割第一个缓冲区并选择右侧缓冲区,然后点击 Tabufline 中第二个文件(index.it.md)的名称,这将在右侧缓冲区中打开,我们可以并排使用这两个文件。
状态行¶
在底部,我们找到了状态行,它处理状态信息。在右侧,我们找到了编辑器状态。我们不能忘记我们正在使用文本编辑器,特别是它保留了 Vim 的哲学和操作。可能的状态是
- NORMAL
- INSERT
- COMMAND
- VISUAL
编辑文档从NORMAL模式开始,您在其中打开文件,然后您可以切换到INSERT模式进行编辑,完成后使用Esc 退出并返回到NORMAL模式。
现在要保存文件,您可以在状态行中输入:
,然后输入w
(write)来写入它,然后使用Esc 返回到NORMAL模式。状态指示在学习如何使用它时非常有用,特别是对于不熟悉 Vim 工作流程的人来说。
然后我们找到打开文件的名称,如果我们正在使用 git 仓库,我们将有指示仓库状态的信息。这是由于lewis6991/gitsigns.nvim 插件。
转到右侧,我们找到了我们从哪个文件夹打开编辑器的名称。在使用 LSP 的情况下,这指示被视为workspace
的文件夹,因此在诊断期间进行评估,并跟踪光标在文件中的位置。
集成帮助¶
NvChad 和 Neovim 提供了一些有用的命令,用于显示预设的按键组合和可用选项。
如果单独按下空格 键,它将提供关联命令的图例,如以下屏幕截图所示
要查看编辑器中包含的所有命令,我们可以使用空格 + wK 命令,这将产生以下结果
然后通过按下d,我们可以显示剩余的命令
正如我们所看到的,几乎所有命令都涉及文档或缓冲区内的导航。不包含用于打开文件的命令。这些由 Neovim 提供。
要查看 Neovim 的所有选项,可以使用 Shift + : + options 命令,它会以类别索引的形式呈现选项树。
这为我们提供了一种通过内置帮助在使用编辑器时学习命令以及深入研究可用选项的方法。
NvimTree¶
为了处理文件,我们需要一个文件资源管理器,这由 kyazdani42/nvim-tree.lua 插件提供。通过组合键 Ctrl + n,我们可以打开 NvimTree。
可以在 专用页面 上找到 NvimTree 命令和功能的详细描述。
现在我们已经探索了界面组件,可以继续使用 NvChad。
作者:Franco Colussi
贡献者:Steven Spencer,Ganna Zhyrnova