diff --git a/GRUB2/MOD_SRC/grub-2.04/grub-core/normal/menu.c b/GRUB2/MOD_SRC/grub-2.04/grub-core/normal/menu.c index c6fd501b..ac9e835b 100644 --- a/GRUB2/MOD_SRC/grub-2.04/grub-core/normal/menu.c +++ b/GRUB2/MOD_SRC/grub-2.04/grub-core/normal/menu.c @@ -1133,6 +1133,7 @@ show_menu (grub_menu_t menu, int nested, int autobooted) while (1) { + int ndown; int boot_entry; grub_menu_entry_t e; int auto_boot; @@ -1175,6 +1176,16 @@ show_menu (grub_menu_t menu, int nested, int autobooted) if (2 == e->argc && e->args && e->args[1] && grub_strncmp(e->args[1], "VTOY_RUN_RET", 12) == 0) break; + else if (2 == e->argc && e->args && e->args[1] && grub_strncmp(e->args[1], "VTOY_RUN_SET", 12) == 0) { + ndown = (int)grub_strtol(e->args[1] + 12, NULL, 10); + while (ndown > 0) + { + ventoy_menu_push_key(GRUB_TERM_KEY_DOWN); + ndown--; + } + ventoy_menu_push_key('\n'); + break; + } } return GRUB_ERR_NONE; diff --git a/GRUB2/MOD_SRC/grub-2.04/grub-core/ventoy/ventoy_cmd.c b/GRUB2/MOD_SRC/grub-2.04/grub-core/ventoy/ventoy_cmd.c index 11674788..588e51f7 100644 --- a/GRUB2/MOD_SRC/grub-2.04/grub-core/ventoy/ventoy_cmd.c +++ b/GRUB2/MOD_SRC/grub-2.04/grub-core/ventoy/ventoy_cmd.c @@ -6227,6 +6227,66 @@ static char * ventoy_gfxmode_write_hook(struct grub_env_var *var, const char *va return grub_strdup(val); } +static ctrl_var_cfg g_ctrl_vars[] = +{ + { "VTOY_WIN11_BYPASS_CHECK", 0 }, + { "VTOY_LINUX_REMOUNT", 0 }, + { "VTOY_SECONDARY_BOOT_MENU", 1 }, + { NULL, 0 } +}; + +static const char * ventoy_ctrl_var_read_hook(struct grub_env_var *var, const char *val) +{ + int i; + + for (i = 0; g_ctrl_vars[i].name; i++) + { + if (grub_strcmp(g_ctrl_vars[i].name, var->name) == 0) + { + return g_ctrl_vars[i].value ? "1" : "0"; + } + } + + return val; +} + +static char * ventoy_ctrl_var_write_hook(struct grub_env_var *var, const char *val) +{ + int i; + + for (i = 0; g_ctrl_vars[i].name; i++) + { + if (grub_strcmp(g_ctrl_vars[i].name, var->name) == 0) + { + if (val && val[0] == '1' && val[1] == 0) + { + g_ctrl_vars[i].value = 1; + return grub_strdup("1"); + } + else + { + g_ctrl_vars[i].value = 0; + return grub_strdup("0"); + } + } + } + + return grub_strdup(val); +} + +static int ventoy_ctrl_var_init(void) +{ + int i; + + for (i = 0; g_ctrl_vars[i].name; i++) + { + ventoy_env_export(g_ctrl_vars[i].name, g_ctrl_vars[i].value ? "1" : "0"); + grub_register_variable_hook(g_ctrl_vars[i].name, ventoy_ctrl_var_read_hook, ventoy_ctrl_var_write_hook); + } + + return 0; +} + int ventoy_env_init(void) { int i; @@ -6237,6 +6297,8 @@ int ventoy_env_init(void) grub_register_variable_hook("gfxmode", ventoy_gfxmode_read_hook, ventoy_gfxmode_write_hook); grub_register_vtoy_menu_lang_hook(ventoy_menu_lang_read_hook); + ventoy_ctrl_var_init(); + g_part_list_buf = grub_malloc(VTOY_PART_BUF_LEN); g_tree_script_buf = grub_malloc(VTOY_MAX_SCRIPT_BUF); g_list_script_buf = grub_malloc(VTOY_MAX_SCRIPT_BUF); diff --git a/GRUB2/MOD_SRC/grub-2.04/grub-core/ventoy/ventoy_def.h b/GRUB2/MOD_SRC/grub-2.04/grub-core/ventoy/ventoy_def.h index 40f859ee..290f6eaa 100644 --- a/GRUB2/MOD_SRC/grub-2.04/grub-core/ventoy/ventoy_def.h +++ b/GRUB2/MOD_SRC/grub-2.04/grub-core/ventoy/ventoy_def.h @@ -1256,6 +1256,12 @@ typedef struct systemd_menu_ctx int len; }systemd_menu_ctx; +typedef struct ctrl_var_cfg +{ + const char *name; + int value; +}ctrl_var_cfg; + #define vtoy_check_goto_out(p) if (!p) goto out extern char *g_tree_script_buf; diff --git a/INSTALL/grub/debug.cfg b/INSTALL/grub/debug.cfg index 9dd977f4..1bf076d7 100644 --- a/INSTALL/grub/debug.cfg +++ b/INSTALL/grub/debug.cfg @@ -1,7 +1,45 @@ +# +# VTLANG_TEMP_SETTING must be the first +# And the inside item order can not be changed +# +submenu "$VTLANG_CTRL_TEMP_SET" --class=debug_temp_set --class=F5tool { + menuentry "[ $VTOY_WIN11_BYPASS_CHECK ] $VTLANG_WIN11_BYPASS_CHECK" --class=debug_temp_win11_bypass --class=debug_temp_set --class=F5tool \ + VTOY_RUN_SET0 { + if [ "$VTOY_WIN11_BYPASS_CHECK" = "0" ]; then + set VTOY_WIN11_BYPASS_CHECK=1 + else + set VTOY_WIN11_BYPASS_CHECK=0 + fi + } + + menuentry "[ $VTOY_LINUX_REMOUNT ] $VTLANG_LINUX_REMOUNT" --class=debug_temp_linux_remount --class=debug_temp_set --class=F5tool \ + VTOY_RUN_SET1 { + if [ "$VTOY_LINUX_REMOUNT" = "0" ]; then + set VTOY_LINUX_REMOUNT=1 + else + set VTOY_LINUX_REMOUNT=0 + fi + } + + menuentry "[ $VTOY_SECONDARY_BOOT_MENU ] $VTLANG_SECONDARY_BOOT_MENU" --class=debug_temp_second_menu --class=debug_temp_set --class=F5tool \ + VTOY_RUN_SET2 { + if [ "$VTOY_SECONDARY_BOOT_MENU" = "0" ]; then + set VTOY_SECONDARY_BOOT_MENU=1 + else + set VTOY_SECONDARY_BOOT_MENU=0 + fi + } + + menuentry "$VTLANG_RETURN_PREVIOUS" --class=vtoyret VTOY_RET { + echo "Return ..." + } +} + submenu "$VTLANG_MENU_LANG" --class=debug_menu_lang --class=F5tool { source $prefix/menulang.cfg } + source $prefix/power.cfg source $prefix/hwinfo.cfg source $prefix/keyboard.cfg diff --git a/INSTALL/grub/menu/ar_AR.json b/INSTALL/grub/menu/ar_AR.json index bc578185..d2ef6447 100644 --- a/INSTALL/grub/menu/ar_AR.json +++ b/INSTALL/grub/menu/ar_AR.json @@ -68,5 +68,10 @@ "VTLANG_ENTER_REBOOT": "اضغط على مفتاح Enter لإعادة التشغيل", "VTLANG_ENTER_CONTINUE": "اضغط على مفتاح Enter للمتابعة", + "VTLANG_CTRL_TEMP_SET": "Temporary Control Settings", + "VTLANG_WIN11_BYPASS_CHECK": "Bypass check when install Windows 11", + "VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux", + "VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu", + "MENU_STR_XXX": "" } diff --git a/INSTALL/grub/menu/bn_BN.json b/INSTALL/grub/menu/bn_BN.json index 231f185e..29e368cb 100644 --- a/INSTALL/grub/menu/bn_BN.json +++ b/INSTALL/grub/menu/bn_BN.json @@ -82,5 +82,10 @@ "VTLANG_ENTER_REBOOT": "রিবুট করতে এন্টার কী টিপুন", "VTLANG_ENTER_CONTINUE": "চালিয়ে যেতে এন্টার কী টিপুন", + "VTLANG_CTRL_TEMP_SET": "Temporary Control Settings", + "VTLANG_WIN11_BYPASS_CHECK": "Bypass check when install Windows 11", + "VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux", + "VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu", + "MENU_STR_XXX": "" } diff --git a/INSTALL/grub/menu/de_DE.json b/INSTALL/grub/menu/de_DE.json index b159bca9..6b246f21 100644 --- a/INSTALL/grub/menu/de_DE.json +++ b/INSTALL/grub/menu/de_DE.json @@ -82,5 +82,10 @@ "VTLANG_ENTER_REBOOT": "Drücken Sie die Eingabetaste, um neu zu starten", "VTLANG_ENTER_CONTINUE": "Drücken Sie die Eingabetaste, um fortzufahren", + "VTLANG_CTRL_TEMP_SET": "Temporary Control Settings", + "VTLANG_WIN11_BYPASS_CHECK": "Bypass check when install Windows 11", + "VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux", + "VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu", + "MENU_STR_XXX": "" } diff --git a/INSTALL/grub/menu/en_US.json b/INSTALL/grub/menu/en_US.json index 31d1b0d0..5fd6ce81 100644 --- a/INSTALL/grub/menu/en_US.json +++ b/INSTALL/grub/menu/en_US.json @@ -82,5 +82,10 @@ "VTLANG_ENTER_REBOOT": "press Enter key to reboot", "VTLANG_ENTER_CONTINUE": "press Enter key to continue", + "VTLANG_CTRL_TEMP_SET": "Temporary Control Settings", + "VTLANG_WIN11_BYPASS_CHECK": "Bypass check when install Windows 11", + "VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux", + "VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu", + "MENU_STR_XXX": "" } diff --git a/INSTALL/grub/menu/fr_FR.json b/INSTALL/grub/menu/fr_FR.json index debf5eb2..2bcfbb69 100644 --- a/INSTALL/grub/menu/fr_FR.json +++ b/INSTALL/grub/menu/fr_FR.json @@ -82,5 +82,10 @@ "VTLANG_ENTER_REBOOT": "appuyez sur la touche Entrée pour redémarrer", "VTLANG_ENTER_CONTINUE": "appuyez sur la touche Entrée pour continuer", + "VTLANG_CTRL_TEMP_SET": "Temporary Control Settings", + "VTLANG_WIN11_BYPASS_CHECK": "Bypass check when install Windows 11", + "VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux", + "VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu", + "MENU_STR_XXX": "" } diff --git a/INSTALL/grub/menu/hi_HI.json b/INSTALL/grub/menu/hi_HI.json index 3dd9d6b3..2b36dd3d 100644 --- a/INSTALL/grub/menu/hi_HI.json +++ b/INSTALL/grub/menu/hi_HI.json @@ -82,5 +82,10 @@ "VTLANG_ENTER_REBOOT": "रिबूट करने के लिए एंटर कुंजी दबाएं", "VTLANG_ENTER_CONTINUE": "जारी रखने के लिए एंटर कुंजी दबाएं", + "VTLANG_CTRL_TEMP_SET": "Temporary Control Settings", + "VTLANG_WIN11_BYPASS_CHECK": "Bypass check when install Windows 11", + "VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux", + "VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu", + "MENU_STR_XXX": "" } diff --git a/INSTALL/grub/menu/hr_HR.json b/INSTALL/grub/menu/hr_HR.json index dc4c93a1..a494cfe4 100644 --- a/INSTALL/grub/menu/hr_HR.json +++ b/INSTALL/grub/menu/hr_HR.json @@ -82,5 +82,10 @@ "VTLANG_ENTER_REBOOT": "pritisnite tipku Enter za ponovno pokretanje", "VTLANG_ENTER_CONTINUE": "pritisnite tipku Enter za nastavak", + "VTLANG_CTRL_TEMP_SET": "Temporary Control Settings", + "VTLANG_WIN11_BYPASS_CHECK": "Bypass check when install Windows 11", + "VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux", + "VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu", + "MENU_STR_XXX": "" } diff --git a/INSTALL/grub/menu/hu_HU.json b/INSTALL/grub/menu/hu_HU.json index 11fed6ed..542d111d 100644 --- a/INSTALL/grub/menu/hu_HU.json +++ b/INSTALL/grub/menu/hu_HU.json @@ -82,5 +82,10 @@ "VTLANG_ENTER_REBOOT": "nyomja meg az Enter billentyűt az újraindításhoz", "VTLANG_ENTER_CONTINUE": "a folytatáshoz nyomja meg az Enter billentyűt", + "VTLANG_CTRL_TEMP_SET": "Temporary Control Settings", + "VTLANG_WIN11_BYPASS_CHECK": "Bypass check when install Windows 11", + "VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux", + "VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu", + "MENU_STR_XXX": "" } \ No newline at end of file diff --git a/INSTALL/grub/menu/id_ID.json b/INSTALL/grub/menu/id_ID.json index a1b0cd9b..cf487c29 100644 --- a/INSTALL/grub/menu/id_ID.json +++ b/INSTALL/grub/menu/id_ID.json @@ -82,5 +82,10 @@ "VTLANG_ENTER_REBOOT": "tekan tombol Enter untuk reboot", "VTLANG_ENTER_CONTINUE": "tekan tombol Enter untuk melanjutkan", + "VTLANG_CTRL_TEMP_SET": "Temporary Control Settings", + "VTLANG_WIN11_BYPASS_CHECK": "Bypass check when install Windows 11", + "VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux", + "VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu", + "MENU_STR_XXX": "" } diff --git a/INSTALL/grub/menu/ja_JP.json b/INSTALL/grub/menu/ja_JP.json index df63fa64..e64df430 100644 --- a/INSTALL/grub/menu/ja_JP.json +++ b/INSTALL/grub/menu/ja_JP.json @@ -82,5 +82,10 @@ "VTLANG_ENTER_REBOOT": "[Enter]を押して再起動します", "VTLANG_ENTER_CONTINUE": "[Enter]を押して続行します", + "VTLANG_CTRL_TEMP_SET": "Temporary Control Settings", + "VTLANG_WIN11_BYPASS_CHECK": "Bypass check when install Windows 11", + "VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux", + "VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu", + "MENU_STR_XXX": "" } diff --git a/INSTALL/grub/menu/ka_GE.json b/INSTALL/grub/menu/ka_GE.json index 94950d74..98b5c4e9 100644 --- a/INSTALL/grub/menu/ka_GE.json +++ b/INSTALL/grub/menu/ka_GE.json @@ -82,5 +82,10 @@ "VTLANG_ENTER_REBOOT": "დააჭირეთ Enter ღილაკს გადატვირთვისთვის", "VTLANG_ENTER_CONTINUE": "გასაგრძელებლად დააჭირეთ Enter ღილაკს", + "VTLANG_CTRL_TEMP_SET": "Temporary Control Settings", + "VTLANG_WIN11_BYPASS_CHECK": "Bypass check when install Windows 11", + "VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux", + "VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu", + "MENU_STR_XXX": "" } diff --git a/INSTALL/grub/menu/ko_KR.json b/INSTALL/grub/menu/ko_KR.json index 8011bf27..62a6ba86 100644 --- a/INSTALL/grub/menu/ko_KR.json +++ b/INSTALL/grub/menu/ko_KR.json @@ -82,5 +82,10 @@ "VTLANG_ENTER_REBOOT": "Enter 키를 눌러 재부팅", "VTLANG_ENTER_CONTINUE": "계속하려면 Enter 키를 누르십시오", + "VTLANG_CTRL_TEMP_SET": "Temporary Control Settings", + "VTLANG_WIN11_BYPASS_CHECK": "Bypass check when install Windows 11", + "VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux", + "VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu", + "MENU_STR_XXX": "" } diff --git a/INSTALL/grub/menu/pl_PL.json b/INSTALL/grub/menu/pl_PL.json index 438643dc..49c95b12 100644 --- a/INSTALL/grub/menu/pl_PL.json +++ b/INSTALL/grub/menu/pl_PL.json @@ -82,5 +82,10 @@ "VTLANG_ENTER_REBOOT": "naciśnij klawisz Enter, aby ponownie uruchomić", "VTLANG_ENTER_CONTINUE": "naciśnij klawisz Enter, aby kontynuować", + "VTLANG_CTRL_TEMP_SET": "Temporary Control Settings", + "VTLANG_WIN11_BYPASS_CHECK": "Bypass check when install Windows 11", + "VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux", + "VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu", + "MENU_STR_XXX": "" } diff --git a/INSTALL/grub/menu/pt_PT.json b/INSTALL/grub/menu/pt_PT.json index f41fa5b4..36cc3558 100644 --- a/INSTALL/grub/menu/pt_PT.json +++ b/INSTALL/grub/menu/pt_PT.json @@ -82,5 +82,10 @@ "VTLANG_ENTER_REBOOT": "pressione a tecla Enter para reiniciar", "VTLANG_ENTER_CONTINUE": "pressione a tecla Enter para continuar", + "VTLANG_CTRL_TEMP_SET": "Temporary Control Settings", + "VTLANG_WIN11_BYPASS_CHECK": "Bypass check when install Windows 11", + "VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux", + "VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu", + "MENU_STR_XXX": "" } diff --git a/INSTALL/grub/menu/ru_RU.json b/INSTALL/grub/menu/ru_RU.json index 7572d491..23aed380 100644 --- a/INSTALL/grub/menu/ru_RU.json +++ b/INSTALL/grub/menu/ru_RU.json @@ -82,5 +82,10 @@ "VTLANG_ENTER_REBOOT": "нажмите клавишу Enter для перезагрузки", "VTLANG_ENTER_CONTINUE": "нажмите клавишу Enter, чтобы продолжить", + "VTLANG_CTRL_TEMP_SET": "Temporary Control Settings", + "VTLANG_WIN11_BYPASS_CHECK": "Bypass check when install Windows 11", + "VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux", + "VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu", + "MENU_STR_XXX": "" } diff --git a/INSTALL/grub/menu/sr_RS.json b/INSTALL/grub/menu/sr_RS.json index 3286b663..868362ae 100644 --- a/INSTALL/grub/menu/sr_RS.json +++ b/INSTALL/grub/menu/sr_RS.json @@ -1,4 +1,4 @@ -{ + "VTLANG_LANGUAGE_NAME": "Serbian Latin (Srpski)", "VTLANG_STR_HOTKEY_LIST": "L:Језик F1:Help F2:Browse F3:ListView F4:Localboot F5:Tools F6:ExMenu", @@ -82,5 +82,10 @@ "VTLANG_ENTER_REBOOT": "press Enter key to reboot", "VTLANG_ENTER_CONTINUE": "press Enter key to continue", + "VTLANG_CTRL_TEMP_SET": "Temporary Control Settings", + "VTLANG_WIN11_BYPASS_CHECK": "Bypass check when install Windows 11", + "VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux", + "VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu", + "MENU_STR_XXX": "" } diff --git a/INSTALL/grub/menu/ta_IN.json b/INSTALL/grub/menu/ta_IN.json index 08f56a0d..b70e86c7 100644 --- a/INSTALL/grub/menu/ta_IN.json +++ b/INSTALL/grub/menu/ta_IN.json @@ -82,5 +82,10 @@ "VTLANG_ENTER_REBOOT": "மறுதொடக்கம் செய்ய Enter விசையை அழுத்தவும்", "VTLANG_ENTER_CONTINUE": "தொடர Enter விசையை அழுத்தவும்", + "VTLANG_CTRL_TEMP_SET": "Temporary Control Settings", + "VTLANG_WIN11_BYPASS_CHECK": "Bypass check when install Windows 11", + "VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux", + "VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu", + "MENU_STR_XXX": "" } diff --git a/INSTALL/grub/menu/tr_TR.json b/INSTALL/grub/menu/tr_TR.json index 2790507c..cd75f7e1 100644 --- a/INSTALL/grub/menu/tr_TR.json +++ b/INSTALL/grub/menu/tr_TR.json @@ -82,5 +82,10 @@ "VTLANG_ENTER_REBOOT": "yeniden başlatmak için ENTER'a basın", "VTLANG_ENTER_CONTINUE": "devam etmek için ENTER'a basın", + "VTLANG_CTRL_TEMP_SET": "Temporary Control Settings", + "VTLANG_WIN11_BYPASS_CHECK": "Bypass check when install Windows 11", + "VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux", + "VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu", + "MENU_STR_XXX": "" } diff --git a/INSTALL/grub/menu/zh_CN.json b/INSTALL/grub/menu/zh_CN.json index 73e6e621..3bc13113 100644 --- a/INSTALL/grub/menu/zh_CN.json +++ b/INSTALL/grub/menu/zh_CN.json @@ -82,5 +82,10 @@ "VTLANG_ENTER_REBOOT": "按回车键重启", "VTLANG_ENTER_CONTINUE": "按回车键继续", + "VTLANG_CTRL_TEMP_SET": "控制变量设置", + "VTLANG_WIN11_BYPASS_CHECK": "安装 Windows 11 时绕过硬件检查", + "VTLANG_LINUX_REMOUNT": "启动 Linux 系统后挂载 Ventoy 分区", + "VTLANG_SECONDARY_BOOT_MENU": "显示二级启动菜单", + "MENU_STR_XXX": "" } diff --git a/INSTALL/grub/menu/zh_TW.json b/INSTALL/grub/menu/zh_TW.json index ed99f443..c161c9bf 100644 --- a/INSTALL/grub/menu/zh_TW.json +++ b/INSTALL/grub/menu/zh_TW.json @@ -81,6 +81,11 @@ "VTLANG_ENTER_EXIT": "按回車鍵退出", "VTLANG_ENTER_REBOOT": "按回車鍵重啟", "VTLANG_ENTER_CONTINUE": "按回車鍵繼續", + + "VTLANG_CTRL_TEMP_SET": "控制變量設置", + "VTLANG_WIN11_BYPASS_CHECK": "安裝 Windows 11 時繞過硬件檢查", + "VTLANG_LINUX_REMOUNT": "啟動 Linux 系統後掛載 Ventoy 分區", + "VTLANG_SECONDARY_BOOT_MENU": "顯示二級啟動菜單", "MENU_STR_XXX": "" }