Ventoy 主题插件
当你第一眼看到Ventoy的时候,你是什么感觉?不是很漂亮对吧?现在你可以定制你自己的主题了!
Ventoy 的启动菜单是基于 grub2 的,所以所有 grub2 的主题都可以应用在 Ventoy上面。
这个网站上收集了很多非常漂亮的 grub 主题 —— GRUB Themes - Gnome-look.org
- Json 配置参数
推荐使用 VentoyPlugson 工具进行配置,无需手动创建、编辑json文件。请参考 VentoyPlugson
关于 ventoy.json 的位置以及相关说明,请首先参考 插件入口 (*必读)
在镜像分区 /ventoy/ventoy.json
中定义了一个 theme
结构用于描述关于主题的配置参数。
注意你不需要对这里列出来的每一项都做配置,可以只对其中的一项或几项做特殊配置,其他的会使用默认值.
{ "theme": { "file": "/ventoy/theme/blur/theme.txt", "gfxmode": "1920x1080", "display_mode": "GUI", "serial_param": "--unit=0 --speed=9600", "ventoy_left": "5%", "ventoy_top": "95%", "ventoy_color": "#0000ff", "fonts": [ "/ventoy/theme/blur/Hack-12.pf2", "/ventoy/theme/blur/Hack-14.pf2", "/ventoy/theme/blur/Hack-16.pf2" ] } }
关键字 | 类型 | 说明 |
---|---|---|
file |
STRING/STRING ARRAY |
theme.txt 文件的全路径。可以是1个字符串,也可以是字符串数组,例如:"file": [ "/ventoy/theme1/theme.txt", "/ventoy/theme2/theme.txt", "/ventoy/theme3/theme.txt", "/ventoy/theme4/theme.txt" ]当设置为数组时,可以通过 default_file 选项来控制启动时使用哪个主题,也可以随机选择。同时最新版本的 Ventoy 在启动后还可以通过菜单在这些主题之间进行切换,请参考下面的 主题切换。 |
default_file |
INTEGER |
注意该选项只有在 file 是一个数组的时候才有效。其值为一个整数,默认值为0,含义如下:0 : 表示启动时随机选择某个主题生效。(此为默认值)1 : 表示启动时选择第1个主题生效。2 : 表示启动时选择第2个主题生效。3 : 表示启动时选择第3个主题生效。...... |
gfxmode |
STRING |
可选的,可以不设置。grub2 的 gfxmode 参数,默认为 "1024x768" |
display_mode |
STRING |
可选的,可以不设置。菜单显示模式,可以设置为 GUI CLI serial serial_console 默认为 GUI GUI和CLI 分别对应图形模式和文本模式。在有极个别的机器上Ventoy的背景菜单无法显示,或者显示后菜单移动极其缓慢,这种情况可以默认设置为文本模式。 不过,不管GUI还是CLI都是基于VGA显示设备的,如果你的机器上只有串口,你可以设置为 serial 当然,如果既有串口也有VGA设备,则也可以设置为 serial_console 注意:如果菜单名称(文件名)里有中文的话,在文本或serial模式下是无法显示的。 |
serial_param |
STRING |
可选的,可以不设置。只在 display_mode 设置为 serial 或 serial_console 时才生效这个参数用来配置串口的端口号以及波特率等参数,--unit=0 对应 com1 --unit=1 对应 com2 详细描述请参考 https://www.gnu.org/software/grub/manual/grub/grub.html#serial |
ventoy_left |
STRING |
可选的,可以不设置。ventoy版本信息的 X 位置, 默认为 "5%" |
ventoy_top |
STRING |
可选的,可以不设置。ventoy版本信息的 Y 位置, 默认为 "95%" |
ventoy_color |
STRING |
可选的,可以不设置。ventoy版本信息的颜色, 默认为 "#0000ff" |
fonts |
STRING ARRAY |
可选的,可以不设置。数组中的每一项代表一个字体文件的全路径,Ventoy在启动时会依次加载这些字体文件。 |
- 文本模式 <==> 图形模式 切换
默认情况下 Ventoy 是图形模式,但在个别比较特殊的机器上可能会有显示问题,比如花屏、卡顿之类的。这种情况下你可以切换为文本模式。
Ventoy 文本模式和图形模式在功能上是一样的,只是图形模式更漂亮一点,再有就是文本模式中文会显示为 ?? 问号。
有以下几种方式可以切换显示模式:
- 通过
F5 Tools-->Screen Display Mode-->Force Text Mode
菜单切换。这个是一次性的,每次启动都需要重新设置 - 通过按
F7
快捷键来切换。这个和方法1效果是一样的,更方便一些。反复按可以在文本模式和图形模式之间来回切换。 - 通过本文中的主题插件设置,这样可以把默认模式切换成文本模式,不需要每次都切换。
- 主题切换 (1.0.62+)
如果设置了多个主题,则可以通过 F5 Tools --> Theme Select
菜单切换主题(立即生效),如下图所示。
不过需要说明的是,通过这个菜单选择的主题只针对当前启动的环境有效,不会保存,因此下一次启动还是会根据 default_file
固定选择或者是随机选择某个主题。
- 热键提示
为了能正常显示热键提示,你需要把下面这几个 hbox 的定义添加到新的 theme.txt 文件中。你也可以修改里面的位置和颜色属性。
+ hbox{ left = 30% top = 95% width = 10% height = 25 + label {text = "@VTOY_HOTKEY_TIP@" color = "blue" align = "left"} } + hbox{ left = 90% top = 5 width = 10% height = 25 + label {text = "@VTOY_MEM_DISK@" color = "red" align = "left"} }
- Ventoy 版本信息
默认情况下,在界面的左下角会显示Ventoy的版本信息,比如 1.0.10 UEFI www.ventoy.net
这个信息是在代码中固定实现的,你可以通过 ventoy_left/ventoy_top/ventoy_color 变量来调整它的位置和颜色。
如果你想完全删除它,我鼓励你去阅读Ventoy的源代码,修改之后重新编译。我想这也是开源的意义所在。
- 分别针对不同的 BIOS 模式设置不同的主题
theme 支持多模式,可以分别针对 x86 Legacy BIOS、IA32 UEFI、x86_64 UEFI 和 ARM64 UEFI 模式分别设置不同的主题,甚至可以有的使用图形模式,另一些使用文本模式。
详细说明请参考 多模式选项
- 主题示例
https://gbatemp.net/threads/medicat-usb-a-multiboot-linux-usb-for-pc-repair.361577/