NvChad 官方终端插件 (NvTerm) 使用教程
1. 项目的目录结构及介绍
NvTerm 项目的目录结构如下:
nvterm/
├── lua/
│ └── nvterm/
│ ├── init.lua
│ └── stylua.toml
├── LICENSE
├── README.md
lua/nvterm/
: 包含插件的主要逻辑文件。init.lua
: 插件的入口文件,负责初始化和配置。stylua.toml
: 用于代码格式化的配置文件。
LICENSE
: 项目的许可证文件,采用 GPL-3.0 许可证。README.md
: 项目的说明文档,包含安装和使用说明。
2. 项目的启动文件介绍
项目的启动文件是 lua/nvterm/init.lua
,该文件负责插件的初始化和配置。以下是启动文件的主要内容:
-- 初始化插件
require("nvterm").setup()
-- 配置终端
local terminal = require("nvterm.terminal")
local ft_cmds = {
python = "python3 ",
-- 其他文件类型的命令
}
-- 设置快捷键
local mappings = {
{ 'n', '<C-l>', function () terminal.send(ft_cmds[vim.bo.filetype]) end },
{ {'n', 't'}, '<A-h>', function () terminal.toggle('horizontal') end },
{ {'n', 't'}, '<A-v>', function () terminal.toggle('vertical') end },
{ {'n', 't'}, '<A-i>', function () terminal.toggle('float') end },
}
3. 项目的配置文件介绍
项目的配置文件是 lua/nvterm/init.lua
中的 setup
函数。以下是默认配置的示例:
require("nvterm").setup({
terminals = {
shell = vim.o.shell,
list = {},
type_opts = {
float = {
relative = 'editor',
row = 0.3,
col = 0.25,
width = 0.5,
height = 0.4,
border = "single",
},
horizontal = {
location = "rightbelow",
split_ratio = 0.3,
},
vertical = {
location = "rightbelow",
split_ratio = 0.5,
},
},
},
behavior = {
autoclose_on_quit = {
enabled = false,
confirm = true,
},
close_on_exit = true,
auto_insert = true,
},
})
terminals
: 配置终端的类型和位置。shell
: 默认的 shell 类型。list
: 终端列表。type_opts
: 不同类型终端的选项。
behavior
: 配置终端的行为。autoclose_on_quit
: 退出时自动关闭终端的设置。close_on_exit
: 退出时关闭终端。auto_insert
: 自动插入模式。
通过以上配置,可以自定义 NvTerm 插件的行为和外观,以满足不同的需求。