Neovim专用GitHub风格主题插件
github-nvim-theme为Neovim提供多种GitHub风格配色方案,包括暗色、亮色和色盲友好版本。该插件支持最新Neovim特性,如TreeSitter和LSP,并遵循GitHub的VSCode主题设计。它支持多种插件和状态栏,具有高度可配置性,支持模板覆盖、编译和实时重载。这个主题插件为Neovim用户带来GitHub风格的视觉体验和性能优化。
[!警告] 如果您自定义或配置颜色,或者升级配色方案后发现外观没有变化,请运行
:GithubThemeCompile
命令来编译配色方案。我们正在积极解决这个问题,感谢您的耐心等待。
订阅此讨论
或查看:h github-theme-changelog
以获取有关重大变更和弃用的更新。
*_default
配色方案,之前在changelog-23042023中被弃用github-nvim-theme | github-vscode-theme | Github Web UI | Primer |
---|---|---|---|
github_dark | Github Dark | - | - |
github_light | Github Light | - | - |
github_dark_dimmed | Github Dark Dimmed | Dark dimmed | dark_dimmed |
github_dark_default | Github Dark Default | Dark default | dark |
github_light_default | Github Light Default | Light default | light |
github_dark_high_contrast | Github Dark High Contrast | Dark high contrast | dark_high_contrast |
github_light_high_contrast | Github Light High Contrast | Light high contrast | light_high_contrast |
github_dark_colorblind | Github Dark Colorblind (Beta) | Dark Protanopia & Deuteranopia | dark_colorblind |
github_light_colorblind | Github Light Colorblind (Beta) | Light Protanopia & Deuteranopia | light_colorblind |
github_dark_tritanopia | - | Dark Tritanopia | dark_tritanopia |
github_light_tritanopia | - | Light Tritanopia | light_tritanopia |
[!注意] 在macOS上,默认终端(即
Terminal.app
)不支持真彩色24位RGB颜色。请使用Iterm2
或其他支持真彩色的终端。
使用您喜欢的包管理器安装主题:
使用vim-plug安装:
[object Object],[object Object]
或使用dein:
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
或使用minpac:
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
或使用Packer.nvim:
在您的init.lua
或plugins.lua
中添加以下内容
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
或使用lazy.nvim:
在您的init.lua
或plugins.lua
中添加以下内容
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
只需使用内置命令 :colorscheme
设置配色方案
[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
如果您不想更改默认选项和设置,则无需调用 setup
。
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
如果你想更改上述任何默认选项,只需指定你想更改的选项。未指定的选项将使用其默认值。例如,如果你只想更改某些语法项的样式:
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
要查看Github Theme配置设置的详细说明,请参考内置帮助:help github-nvim-theme
或
Usage。
Github Theme的模块存储各种插件和其他neovim模块的配置信息。要启用模块,
可以将模块设置为true
,或者如果模块有额外的配置信息,则将enable
设置为true
。
默认情况下,模块将被启用。要更改此行为,请将options.module_default
更改为false
。
要查看模块列表,请参阅Usage或:help
以获取更多信息。
你可以更改github-theme的颜色palette
和高亮group
。这里是一个简短的例子:
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
-- 模板使用规格。规格中包含可访问的调色板字段 IncSearch = { bg = 'palette.cyan' }, }, github_dark = { -- 与规格和调色板一样,特定样式的值将优先于'all'中的值使用。 PmenuSel = { bg = '#73daca', fg = 'bg0' }, }, }
require('github-theme').setup({ palettes = palettes, specs = specs, groups = groups })
-- 必须在加载前调用setup vim.cmd('colorscheme github_dark')
要查找为vim定义的语法高亮组列表,请使用帮助`:help group-name`和`:help nvim-treesitter-highlights`(用于treesitter)。如果你还想了解GitHub Theme如何定义这些高亮组,可以查看[syntax.lua]获取vim语法信息,[treesitter.lua]获取treesitter信息。这些文件列出了所有高亮组,并附有描述注释。另一个值得注意的文件是[editor.lua],它负责vim外观的高亮组(背景、光标行、标签栏等)。
要获取更多信息,请查看[Usage](https://github.com/projekt0n/github-nvim-theme/blob/main/./Usage.md#configuration)或帮助文件`:help github-nvim-theme`以获取更详细的信息。
[editor.lua]: https://github.com/projekt0n/github-nvim-theme/blob/main/lua/github-theme/group/editor.lua
[syntax.lua]: https://github.com/projekt0n/github-nvim-theme/blob/main/lua/github-theme/group/syntax.lua
[treesitter.lua]: https://github.com/projekt0n/github-nvim-theme/blob/main/lua/github-theme/group/modules/treesitter.lua
### 自定义模板值
GitHub Theme的`palettes`和`specs`可以用你自己的值进行扩展。这对于想要区分用于多个组定义的规格值的用户很有用。通过一个例子可以更好地理解这一点。
`bg0`用作深色替代背景色。它在多个区域使用(非当前文件、状态栏、普通浮动窗口等)。如果你想让非活动颜色与浮动窗口/状态栏颜色不同,可以在`specs`表中定义自己的值。
```lua
require('github-theme').setup({
palettes = {
-- 带有黑色背景的自定义duskfox
github_dark = {
bg1 = '#000000', -- 黑色背景
bg0 = '#1d1d2b', -- 替代背景(浮动窗口、状态栏等)
bg3 = '#121820', -- 比原版暗55%
sel0 = '#131b24', -- 比原版暗55%
},
},
specs = {
all = {
inactive = 'bg0', -- 其他样式的默认值
},
github_dark_dimmed = {
inactive = '#090909', -- 略微比黑色背景亮一些
},
},
groups = {
all = {
NormalNC = { fg = 'fg1', bg = 'inactive' }, -- 非当前窗口
},
},
})
GitHub Theme提供了一些API和实用类,让你可以获取GitHub Theme的数据。
你可以获取每个配色方案使用的调色板:
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
有关调色板的更多信息,请参阅Usage。
你可以获取每个配色方案使用的规格:
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
有关规格的更多信息,请参阅Usage。
GitHub Theme内部使用颜色库来操作颜色。你也可以使用这个库。
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
有很多有用的函数可以在不同的色彩空间中操作和处理颜色。
有关Color
的更多信息,请参阅Usage。
GitHub Theme是一个高度可定制和可配置的配色方案。然而,这会带来复杂性和执行时间的代价。
GitHub Theme预先计算你的配置结果,并将Lua字节码保存在缓存中,以便下次加载时使用。 这显著提高了GitHub Theme的执行速度。对配置的更改将自动重新计算和缓存。
默认情况下,GitHub Theme将编译结果写入系统的cache
目录。在Unix系统上,这是
$XDG_CACHE_HOME/nvim/github-theme
,在Windows上,这是%localappdata%\\Temp\\nvim\\github-theme
。
GitHub Theme提供了一些函数来处理GitHub Theme编译器。
[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Github 主题使得修改配置并查看结果变得容易。为此,Github 主题提供了以下命令:
GithubThemeInteractive
该命令会为当前缓冲区添加一个在 BufferWritePost
事件上执行的自动命令。这个自动命令会清除 Github 主题的内部状态,并从新保存的文件中重新加载配置。然后它会重置配色方案。
Lualine 通过检查 vim.g.colors_name
的值(使用 :colorscheme
命令时设置)来确定要加载的主题。在调用 setup 之前设置你的配色方案。
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
使用 vim 命令 :AirlineThemes
设置你的 airline 配色方案。
本节将帮助你确定某段语法应用了哪个高亮组。这些方法可以显示当前光标位置(光标下)正在使用的高亮组。
[!提示] 在 Neovim v0.9.0 及更高版本中,你可以使用内置命令
:Inspect
或 Lua 函数vim.show_pos()
。
如果 treesitter 是相关语言的高亮方法,你可以使用命令::TSHighlightCapturesUnderCursor
。这个命令来自 treesitter playground 插件。确保你已安装此插件以及 nvim-treesitter。
undercurls
要让 undercurls 显示并带有颜色,请在你的 Tmux 配置文件中添加以下内容:
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
本项目基于 MIT 许可证发布。 更多信息请查看 LICENSE 或访问 opensource.org
全能AI智能助手,随时解答生活与工作的多样问题
问小白,由元石科技研发的AI智能助手,快速准确地解答各种生活和工作问题,包括但不限于搜索、规划和社交互动,帮助用户在日常生活中提高效率,轻松管理个人事务。
实时语音翻译/同声传译工具
Transly是一个多场景的AI大语言模型驱动的同声传译、专业翻译助手,它拥有超精准的音频识别翻译能力,几乎零延迟的使用体验和支持多国语言可以让你带它走遍全球,无论你是留学生、商务人士、韩剧美剧爱好者,还是出国游玩、多国会议、跨国追星等等,都可以满足你所有需要同传的场景需求,线上线下通用,扫除语言障碍,让全世界的语言交流不再有国界。
一键生成PPT和Word,让学习生活更轻松
讯飞智文是一个利用 AI 技术的项目,能够帮助用户生成 PPT 以及各类文档。无论是商业领域的市场分析报告、年度目标制定,还是学生群体的职业生涯规划、实习避坑指南,亦或是活动策划、旅游攻略等内容,它都能提供支持,帮助用户精准表达,轻松呈现各种信息。
深度推理能力全新升级,全面对标OpenAI o1
科大讯飞的星火大模型,支持语言理解、知识问答和文本创作等多功能,适用于多种文件和业务场景,提升办公和日常生活的效率。讯飞星火是一个提供丰富智能服务的平台,涵盖科技资讯、图像创作、写作辅助、编程解答、科研文献解读等功能,能为不同需求的用户提供便捷高效的帮助,助力用户轻松获取信息、解决问题,满足多样化使用场景。
一种基于大语言模型的高效单流解耦语音令牌文本到语音合成模型
Spark-TTS 是一个基于 PyTorch 的开源文本到语音合成项目,由多个知名机构联合参与。该项目提供了高效的 LLM(大语言模型)驱动的语音合成方案,支持语音克隆和语音创建功能,可通过命令行界面(CLI)和 Web UI 两种方式使用。用户可以根据需求调整语音的性别、音高、速度等参数,生成高质量的语音。该项目适用于多种场景,如有声读物制作、智能语音助手开发等。
字节跳动发布的AI编程神器IDE
Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。
AI助力,做PPT更简单!
咔片是一款轻量化在线演示设计工具,借助 AI 技术,实现从内容生成到智能设计的一站式 PPT 制作服务。支持多种文档格式导入生成 PPT,提供海量模板、智能美化、素材替换等功能,适用于销售、教师、学生等各类人群,能高效制作出高品质 PPT,满足不同场景演示需求。
选题、配图、成文,一站式创作,让内容运营更高效
讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。
专业的AI公文写作平台,公文写作神器
AI 材料星,专业的 AI 公文写作辅助平台,为体制内工作人员提供高效的公文写作解决方案。拥有海量公文文库、9 大核心 AI 功能,支持 30 + 文稿类型生成,助力快速完成领导讲话、工作总结、述职报告等材料,提升办公效率,是体制打工人的得力写作神器。
OpenAI Agents SDK,助力开发者便捷使用 OpenAI 相关功能。
openai-agents-python 是 OpenAI 推出的一款强大 Python SDK,它为开发者提供了与 OpenAI 模型交互的高效工具,支持工具调用、结果处理、追踪等功能,涵盖多种应用场景,如研究助手、财务研究等,能显著提升开发效率,让开发者更轻松地利用 OpenAI 的技术优势。
最新AI工具、AI资讯
独家AI资源、AI项目落地
微信扫一扫关注公众号