❐block.nvim
截图是在
Kitty
终端上使用 font_family FiraCode Nerd Font
字体和 dracula
配色方案拍摄的。
⚡️ 要求
Neovim 稳定版及以上(未测试向后兼容性)。
🚀 使用方法
:Block
切换当前缓冲区
:BlockOn
开启当前缓冲区
:BlockOff
关闭当前缓冲区
📦 安装
lazy.nvim
{
"HampusHauffman/block.nvim",
config = function()
require("block").setup({})
end
},
⚙️ 配置 / 设置
要更改默认值,可以修改以下任意值:
---@field percent number -- 颜色变化幅度。0.8 表示每个方框比上一个暗 20%,1.2 表示亮 20%。
---@field depth number -- 颜色变化深度。默认为 4。超过此深度颜色将重置。注意第一个颜色来自 "Normal" 高亮,所以 4 表示 3 种新颜色。
---@field automatic boolean -- 当 treesitter 找到当前文件的解析器时自动开启。
---@field colors string [] | nil -- 自定义颜色列表。设置后将忽略 percent 和 depth。
---@field bg string? -- 如果你想使用不同于默认 "Normal" 高亮的背景色。
require("block").setup({
percent = 0.8,
depth = 4,
colors = nil,
automatic = false,
-- bg = nil,
-- colors = {
-- "#ff0000"
-- "#00ff00"
-- "#0000ff"
-- },
})
🤔 动机
这个插件是我一直想要但在 Neovim 中没有找到现有实现的功能。 我希望它能帮助提高深层嵌套代码的可读性。
📝 待办事项
- 进行错误测试并修复社区发现的问题
- 添加 Vim 文档以说明使用方法
- 处理多字符字符,如表情符号
- 可能添加虚拟行以进一步提高可见性
这是一个手动设置颜色的示例。
贡献
目前开发已暂停,因为我正在换工作。我仍会查看收到的 PR。我知道存在一些性能问题,我打算在将来修复,但目前没有时间。