<p align="center">
<img src="https://github.com/scottmckendry/cyberdream.nvim/assets/39483124/e758f47a-32eb-4eac-a008-eb59272badef">
<b><i>一个高对比度、未来感十足且充满活力的 neovim 主题</i></b>
</p>
<p align="center">
<a href="https://github.com/scottmckendry/cyberdream.nvim/issues">
<img alt="问题" src="https://img.shields.io/github/issues/scottmckendry/cyberdream.nvim?style=for-the-badge&logo=github&color=%23ffbd5e">
</a>
<a href="https://github.com/scottmckendry/cyberdream.nvim/blob/main/LICENSE">
<img alt="许可证" src="https://img.shields.io/github/license/scottmckendry/cyberdream.nvim?style=for-the-badge&logo=github&color=%235ef1ff">
</a>
<a href="https://github.com/scottmckendry/cyberdream.nvim/stars">
<img alt="星标" src="https://img.shields.io/github/stars/scottmckendry/cyberdream.nvim?style=for-the-badge&logo=github&color=%23bd5eff">
</a>
<br>
<a href="https://dotfyle.com/plugins/scottmckendry/cyberdream.nvim">
<img src="https://dotfyle.com/plugins/scottmckendry/cyberdream.nvim/shield?style=for-the-badge" />
</a>
</p>
<hr>
<table align="center">
<tr>
<td>
<img src="https://github.com/scottmckendry/cyberdream.nvim/assets/39483124/f9dc6523-f458-48df-8837-09d5c131a5c7">
</td>
<td>
<img src="https://github.com/scottmckendry/cyberdream.nvim/assets/39483124/0a0595a9-4d4d-4fc3-9bb3-dab2eb3b3e04"
</td>
</tr>
<tr>
<td>
<img src="https://github.com/scottmckendry/cyberdream.nvim/assets/39483124/ac6f5b6e-458b-4087-bbe3-745c1033cfb0"
</td>
<td>
<img src="https://github.com/scottmckendry/cyberdream.nvim/assets/39483124/e7721a7d-26a9-4bcb-b72b-18c44defd7c6"
</td>
</tr>
<tr>
<td>
<img src="https://github.com/scottmckendry/cyberdream.nvim/assets/39483124/18c40e4c-e1f7-40c6-be82-f82c011338bd"
</td>
<td>
<img src="https://github.com/scottmckendry/cyberdream.nvim/assets/39483124/80def4be-476e-4f1d-9e2a-cd141264fecd"
</td>
</tr>
</table>
🚀 特性
- 透明优先设计 - 所有设计决策都以透明为首要考虑。
- 高对比度 - 颜色经过精心挑选,既协调又不刺眼,同时易于区分。
- 终端支持 - 包含多个终端主题,以增强您的cyberdream体验。
- 扩展支持 - 开箱即用支持多种流行插件。可以开启或关闭以最大化性能。
<details>
<summary><b>支持的插件/扩展</b></summary>
| 插件 | 亮点 |
| ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------- |
| [alpha-nvim](https://github.com/goolord/alpha-nvim) | [alpha](lua/cyberdream/extensions/alpha.lua) |
| [dashboard-nvim](https://github.com/nvimdev/dashboard-nvim) | [dashboard](lua/cyberdream/extensions/dashboard.lua) |
| [fzf-lua](https://github.com/ibhagwan/fzf-lua) | [fzflua](lua/cyberdream/extensions/fzflua.lua) |
| [gitsigns.nvim](https://github.com/lewis6991/gitsigns.nvim) | [gitsigns](lua/cyberdream/extensions/gitsigns.lua) |
| [gitpad.nvim](https://github.com/yujinyuz/gitpad.nvim) | [gitpad](lua/cyberdream/extensions/gitpad.lua) |
| [grapple.nvim](https://github.com/cbochs/grapple.nvim) | [grapple](lua/cyberdream/extensions/grapple.lua) |
| [grug-far.nvim](https://github.com/MagicDuck/grug-far.nvim) | [grugfar](lua/cyberdream/extensions/grugfar.lua) |
| [heirline-components.nvim](https://github.com/Zeioth/heirline-components.nvim) | [heirline](lua/cyberdream/extensions/heirline.lua) |
| [helpview.nvim](https://github.com/OXY2DEV/helpview.nvim) | [helpview](lua/cyberdream/extensions/helpview.lua) |
| [hop.nvim](https://github.com/phaazon/hop.nvim) | [hop](lua/cyberdream/extensions/hop.lua) |
| [indent-blankline.nvim](https://github.com/lukas-reineke/indent-blankline.nvim) | [indentblankline](lua/cyberdream/extensions/indentblankline.lua) |
| [kubectl.nvim](https://github.com/ramilito/kubectl.nvim) | [kubectl](lua/cyberdream/extensions/kubectl.lua) |
| [lazy.nvim](https://github.com/folke/lazy.nvim) | [lazy](lua/cyberdream/extensions/lazy.lua) |
| [leap.nvim](https://github.com/ggandor/leap.nvim) | [leap](lua/cyberdream/extensions/leap.lua) |
| [lualine.nvim](https://github.com/nvim-lualine/lualine.nvim) | [lualine](lua/cyberdream/extensions/lualine.lua) |
| [markview.nvim](https://github.com/OXY2DEV/markview.nvim) | [markview](lua/cyberdream/extensions/markview.lua) |
| [mini.nvim](https://github.com/echasnovski/mini.nvim) | [mini](lua/cyberdream/extensions/mini.lua) |
| [noice.nvim](https://github.com/folke/noice.nvim) | [noice](lua/cyberdream/extensions/noice.lua) |
| [nvim-cmp](https://github.com/hrsh7th/nvim-cmp) | [cmp](lua/cyberdream/extensions/cmp.lua) |
| [nvim-notify](https://github.com/rcarriga/nvim-notify) | [notify](lua/cyberdream/extensions/notify.lua) |
| [nvim-treesitter](https://github.com/nvim-treesitter/nvim-treesitter) | [treesitter](lua/cyberdream/extensions/treesitter.lua) |
| [nvim-treesitter-context](https://github.com/nvim-treesitter/nvim-treesitter-context) | [treesittercontext](lua/cyberdream/extensions/treesittercontext.lua) |
| [rainbow-delimiters.nvim](https://github.com/HiPhish/rainbow-delimiters.nvim) | [rainbow_delimiters](lua/cyberdream/extensions/rainbow_delimiters.lua) |
| [render-markdown.nvim](https://github.com/MeanderingProgrammer/render-markdown.nvim) | [markdown](lua/cyberdream/extensions/markdown.lua) |
| [telescope.nvim](https://github.com/nvim-telescope/telescope.nvim) | [telescope](lua/cyberdream/extensions/telescope.lua) |
| [trouble.nvim](https://github.com/folke/trouble.nvim) | [trouble](lua/cyberdream/extensions/trouble.lua) |
| [which-key.nvim](https://github.com/folke/which-key.nvim) | [whichkey](lua/cyberdream/extensions/whichkey.lua) |
📦 安装
Lazy<sup>1</sup>:
{
"scottmckendry/cyberdream.nvim",
lazy = false,
priority = 1000,
}
Packer:
use { "scottmckendry/cyberdream.nvim" }
Lualine (可选):
{
require("lualine").setup({
-- ... 其他配置
options = {
theme = "auto", -- "auto" 将根据当前配色方案动态设置主题
},
-- ... 其他配置
})
}
可以参考我的个人 lualine 配置 这里 作为示例。
🚀 使用
vim.cmd("colorscheme cyberdream")
⚙️ 配置
调用 setup
是可选的,但它允许你根据自己的喜好配置主题。
以下是所有可用配置选项及其默认值的示例:
require("cyberdream").setup({
-- 启用透明背景
transparent = false,
-- 启用斜体注释
italic_comments = false,
-- 将所有填充字符替换为 ' ' 以获得极致简洁的外观
hide_fillchars = false,
-- 现代无边框 telescope 主题 - 也适用于 fzf-lua
borderless_telescope = true,
-- 设置 `:terminal` 中使用的终端颜色
terminal_colors = true,
-- 使用缓存来提高性能 - 警告:实验性功能 - 请做好意外情况的准备!
-- 早期测试显示启动时间提升了 60-70%。你的实际体验可能有所不同。禁用动态明/暗主题切换。
cache = false, -- 使用 :CyberdreamBuildCache 生成缓存,使用 :CyberdreamClearCache 清除缓存
theme = {
variant = "default", -- 使用 "light" 选择浅色变体。也接受 "auto" 来根据 `vim.o.background` 的当前值自动设置深色或浅色
highlights = {
-- 要覆盖的高亮组,也可以添加新的组
-- 查看 `:h highlight-groups` 获取高亮组列表,或运行 `:hi` 查看所有组及其当前值
-- 示例:
Comment = { fg = "#696969", bg = "NONE", italic = true },
-- 完整列表可以在 `lua/cyberdream/theme.lua` 中找到
},
-- 使用调色板完全覆盖高亮组
overrides = function(colors) -- 注意:此函数会使 `highlights` 选项失效
-- 示例:
return {
Comment = { fg = colors.green, bg = "NONE", italic = true },
["@property"] = { fg = colors.magenta, bold = true },
}
end,
-- 完全覆盖某个颜色
colors = {
-- 查看颜色列表请参考 `lua/cyberdream/colours.lua`
-- 示例:
bg = "#000000",
green = "#00ff00",
magenta = "#ff00ff",
},
},
-- 禁用或启用配色方案扩展
extensions = {
telescope = true,
notify = true,
mini = true,
...
},
})
[!注意]
完整的扩展列表请参见 config.lua
中的表格。
🎁 额外内容
我们精心准备了一些额外内容来增强你的 cyberdream 体验。主要是终端主题和一些其他好东西!

🧑🍳 使用方法
在 setup
函数旁边包含这些内容,为主题添加额外功能。
映射一个键来切换亮色和暗色模式
-- 添加一个自定义键绑定来切换配色方案
vim.api.nvim_set_keymap("n", "<leader>tt", ":CyberdreamToggleMode<CR>", { noremap = true, silent = true })
创建一个 autocmd
来挂钩切换事件并运行自定义代码
-- 事件数据属性将包含一个字符串,分别为 "default" 或 "light"
vim.api.nvim_create_autocmd("User", {
pattern = "CyberdreamToggleMode",
callback = function(event)
-- 在这里添加你的自定义代码!
-- 例如,通知用户配色方案已切换
print("切换到 " .. event.data .. " 模式!")
end,
})

🎨 调色板
<details>
<summary><b>深色</b></summary>
🖌 | 十六进制 | 颜色 |
---|
 | #16181a | 背景 |
 | #1e2124 | 备用背景 |
 | #3c4048 | 高亮背景 |
 | #ffffff | 前景 |
 | #7b8496 | 灰色 |
 | #5ea1ff | 蓝色 |
 | #5eff6c | 绿色 |
 | #5ef1ff | 青色 |
 | #ff6e5e | 红色 |
 | #f1ff5e | 黄色 |
 | #ff5ef1 | 品红 |
 | #ff5ea0 | 粉色 |
 | #ffbd5e | 橙色 |
 | #bd5eff | 紫色 |
</details>
<details>
<summary><b>浅色</b></summary>
| 🖌 | 十六进制 | 颜色 |
| --------------------------------------------------------- | --------- | ------------ |
|  | `#ffffff` | 背景 |
|  | `#eaeaea` | 备用背景 |
|  | `#acacac` | 高亮背景 |
|  | `#16181a` | 前景 |
|  | `#7b8496` | 灰色 |
|  | `#0057d1` | 蓝色 |
|  | `#008b0c` | 绿色 |
|  | `#008c99` | 青色 |
|  | `#d11500` | 红色 |
|  | `#997b00` | 黄色 |
|  | `#d100bf` | 洋红色 |
|  | `#f40064` | 粉色 |
|  | `#d17c00` | 橙色 |
|  | `#a018ff` | 紫色 |
</details>
🤝 贡献
欢迎贡献!请阅读贡献指南以开始。
<hr>
<sub>1. 对于Lazyvim用户,请参考LazyVim文档以获取具体说明。</sub>