Compare commits

...

65 Commits

Author SHA1 Message Date
longpanda
be78728342 1.0.86 release 2022-12-24 21:19:31 +08:00
Tayfun Akkoyun
3938fbb351 Update tr_TR.json (#2101) 2022-12-24 15:59:32 +08:00
longpanda
a2e7afd893 Update menu language translation 2022-12-24 10:16:13 +08:00
wiz64
27bb4a1168 Update bn_BN.json (#2100) 2022-12-24 10:06:41 +08:00
wiz64
b8b8c7bd66 Update hi_HI.json (#2099) 2022-12-24 10:06:29 +08:00
longpanda
12b51bcf09 Change the prompt format when check device failed. (#2094) 2022-12-24 09:39:27 +08:00
longpanda
911d5dcab9 Remove useless BypassStorageCheck registry when VTOY_WIN11_BYPASS_CHECK is set to 1. (#1873) 2022-12-23 23:41:57 +08:00
longpanda
f597497da6 1. Add VTOY_WIN11_BYPASS_NRO option in Global Control Plugin.
2. Change the default value of VTOY_WIN11_BYPASS_CHECK and VTOY_WIN11_BYPASS_NRO options to 1.
2022-12-23 23:17:39 +08:00
Frede H
54bca8c942 Added Danish (Dansk) to languages.json (#2096) 2022-12-23 16:01:45 +08:00
VenusGirl❤
6b422ad9c1 Update ko_KR.json (#2092) 2022-12-23 15:54:27 +08:00
wiz64
925d057883 Update ru_RU.json (#2091) 2022-12-23 15:54:08 +08:00
longpanda
a377dd6172 Support config ventoy_left/ventoy_top/ventoy_color in theme.txt.
The configuration must be the first line in theme.txt and must be in the following format.
ventoy_left_top_color: "@5%@95%@#0000ff@"

The format is very strict:
1. ventoy_left_top_color must start with no space in front of.
2. left/top/color options must be around with 4 @
2022-12-23 15:52:43 +08:00
longpanda
4707022ef9 Add prompt and wait for key when Ventoy check device failed. (#2094) 2022-12-23 11:42:22 +08:00
Tayfun Akkoyun
e03c73978a Update tr_TR.json (#2090)
New Turkish menu interface lines is translated (VTLANG_CTRL_TEMP_SET,VTLANG_WIN11_BYPASS_CHECK,VTLANG_LINUX_REMOUNT,VTLANG_SECONDARY_BOOT_MENU)
2022-12-22 23:13:49 +08:00
longpanda
f434d1f5d0 Add Temporary Control Settings menu.
Refer https://www.ventoy.net/en/doc_ctrl_settings.html for details.
2022-12-22 22:14:51 +08:00
longpanda
23f8bc8aeb Add resolution_fit option in theme plugin. 2022-12-22 18:26:01 +08:00
wiz64
f2016ab899 Update Actions Image route (#2088) 2022-12-22 14:28:52 +08:00
wiz64
7acbf7e819 Update bn_BN.json (#2085) 2022-12-22 14:28:38 +08:00
Ida Bagus
0135bf1934 Update languages.json (#2087) 2022-12-22 10:04:22 +08:00
wiz64
f2c94bd963 Improve grammar (Readme.md) (#2086) 2022-12-22 10:04:01 +08:00
longpanda
676ae725ae Fix the egrep warning. (#2083) 2022-12-21 19:59:16 +08:00
longpanda
54dd35d277 Merge branch 'master' of https://github.com/ventoy/Ventoy 2022-12-21 13:22:11 +08:00
longpanda
3e75b2df3b VentoyPlugson: Add Windows duplicate file path check for different upper/lower case. 2022-12-21 13:21:54 +08:00
wiz64
2d1230cba4 Update hi_HI.json (#2081) 2022-12-20 21:17:49 +08:00
wiz64
309f85fd35 update ru_RU.json (#2080)
* Update ru_RU.json

* Update ru_RU.json
2022-12-20 21:17:41 +08:00
VenusGirl❤
a13d6d9c0e Update ko_KR.json (#2079) 2022-12-20 21:17:24 +08:00
longpanda
9b7d6cbc3d Add theme plugin duplicate file check. (#2078) 2022-12-20 20:02:06 +08:00
longpanda
bf797ceadb Fix the drive letter case check issue for VentoyPlugson in Windows. (#2078) 2022-12-20 18:46:04 +08:00
longpanda
cd0c7ca884 Extend the donate link width. 2022-12-20 14:05:01 +08:00
longpanda
201f7cc13c Change the MBR partition type to 0x0C when select FAT32 for installation. 2022-12-20 00:16:01 +08:00
longpanda
44a3e23740 Optimization for the implement of menu languages. 2022-12-19 23:49:25 +08:00
9c3e1a6880 update Japanese translation (#2077)
* Remove unnecessary space.

* Unify the translation terms into which used in other files
  (language.json, help/ja_JP.txt...)
2022-12-19 22:21:27 +08:00
wiz64
8a664faa04 Update languages.json (#2076) 2022-12-19 22:20:51 +08:00
Hoàng Điềm Tĩnh
398ba9fb56 Update languages.json (#2075)
I update for Vietnamese lang. Please add to your the next release.
2022-12-19 22:20:34 +08:00
Tayfun Akkoyun
e7a0c2d359 Update languages.json (#2074)
hi master
STR_DONATE parameter is translated for turkish users again
2022-12-19 22:20:07 +08:00
longpanda
22ad828df2 1.0.85 release 2022-12-18 22:11:28 +08:00
longpanda
83f22173a5 menu language update 2022-12-18 17:30:29 +08:00
longpanda
2de7d9ffe0 Suppress some prompt window when install Ventoy. 2022-12-17 23:36:59 +08:00
Tyemak
5c174c4521 Update languages.json (russian translation) (#2070)
* Update languages.json

* Update languages.json
2022-12-17 23:34:03 +08:00
longpanda
c76ece4b74 Fix the format failure when install Ventoy. 2022-12-16 17:03:05 +08:00
longpanda
27eda4d1e7 Fix the issue when booting Peux distro iso file. 2022-12-13 12:17:46 +08:00
longpanda
acf5a84467 Add Arabic menu language. 2022-12-12 11:00:57 +08:00
longpanda
c93e406aa5 Add missing file. 2022-12-11 21:59:09 +08:00
longpanda
1b164e74e4 update pl_PL.json 2022-12-11 10:49:02 +08:00
longpanda
308cb86f83 Fix json syntax error. 2022-12-11 10:30:31 +08:00
longpanda
2ec593d355 Add pl_PL language for menu. 2022-12-11 10:22:39 +08:00
longpanda
594e735b91 Merge branch 'master' of https://github.com/ventoy/Ventoy 2022-12-10 19:27:49 +08:00
longpanda
6203366040 grub2 mode support KNOPPIX 2022-12-10 19:27:38 +08:00
Thomas De Rocker
64f4400305 Update languages.json (#2046) 2022-12-10 17:32:03 +08:00
Alexander Dolidze
d00e08e2e1 added Georgian (ka_GE) translation (json/txt) for grub menu (#2044)
Co-authored-by: Alexander Dolidze <alexander.dolidze@azry.com>
2022-12-10 17:31:48 +08:00
Hugo Carvalho
c6008be394 Update Portuguese(Portugal) Translation (#2039)
* Update languages.json

Update Portuguese (Portugal) language

* Update Portuguese(Portugal) Translation

* Update Portuguese(Portugal) Translation
2022-12-10 17:31:31 +08:00
longpanda
a5c6859f5f Add zh_TW menu language. 2022-12-09 21:36:32 +08:00
longpanda
497d4cc991 update grub2 mod file 2022-12-09 21:33:59 +08:00
VenusGirl❤
7e7687afe3 Update ko_KR.txt (#2038) 2022-12-08 21:11:04 +08:00
Ida Bagus
dd3276badf Update id_ID.json (#2034)
first translation, if they find unrelevant translation, i will update it later
2022-12-08 21:10:49 +08:00
Ida Bagus
4a06f4a694 Update id_ID.txt (#2033)
fix little translation
2022-12-08 21:10:34 +08:00
Silejonu
c73bf256be French translation additions & corrections (#2032)
* Update fr_FR.txt

* Update fr_FR.json
2022-12-08 21:10:17 +08:00
longpanda
21851f7e96 Optimization for booting memtest86-usb.img. 2022-12-05 11:19:46 +08:00
longpanda
f222f8cac9 Auto memdisk plugin support some IMA/IMG files. 2022-12-05 10:51:15 +08:00
gidano
40c4825aac Hungarian translation (#2028)
* Hungarian translation

* Hungarian translation
2022-12-04 18:42:53 +08:00
VenusGirl❤
dd906e0b16 Update ko_KR.txt (#2025) 2022-12-04 17:38:48 +08:00
K.B.Dharun Krishna
324f2b927c grub/*: add Tamil translation (#2023)
* grub/menu: Add Tamil translation

Signed-off-by: K.B.Dharun Krishna <kbdharunkrishna@gmail.com>

* grub/help: Add Tamil translation

Signed-off-by: K.B.Dharun Krishna <kbdharunkrishna@gmail.com>

Signed-off-by: K.B.Dharun Krishna <kbdharunkrishna@gmail.com>
2022-12-04 17:38:32 +08:00
K.B.Dharun Krishna
5797ca3396 grub/help/en_US: Fix typos (#2024)
* grub/help/en_US: Fix typos

* Apply suggestions from code review

* Fix typo in line 15
2022-12-04 17:37:25 +08:00
longpanda
b36b322c03 Update languages.json 2022-12-04 17:33:46 +08:00
longpanda
fd7e34b632 1.0.84 release 2022-12-04 15:33:16 +08:00
121 changed files with 4709 additions and 1393 deletions

View File

@@ -21,7 +21,7 @@ body:
attributes:
label: Ventoy Version
description: What version of ventoy are you running?
placeholder: 1.0.83
placeholder: 1.0.84
validations:
required: true
- type: dropdown

View File

@@ -1491,6 +1491,34 @@ STATIC EFI_STATUS EFIAPI ventoy_wrapper_file_procotol(EFI_FILE_PROTOCOL *File, B
return EFI_SUCCESS;
}
STATIC BOOLEAN EFIAPI ventoy_replace_name_match(CHAR8 *pReplace, CHAR8 *pName)
{
UINTN Len1, Len2;
Len1 = AsciiStrLen(pReplace);
Len2 = AsciiStrLen(pName);
if (Len1 == 0 || Len2 == 0)
{
return FALSE;
}
if (0 == AsciiStriCmp(pReplace, pName))
{
return TRUE;
}
if (Len1 > 2 && Len2 > 2)
{
if ((pReplace[0] != '\\') && (pName[0] == '\\') && (0 == AsciiStriCmp(pReplace, pName + 1)))
{
return TRUE;
}
}
return FALSE;
}
STATIC EFI_STATUS EFIAPI ventoy_wrapper_file_open
(
EFI_FILE_HANDLE This,
@@ -1534,7 +1562,7 @@ STATIC EFI_STATUS EFIAPI ventoy_wrapper_file_open
AsciiSPrint(TmpName, sizeof(TmpName), "%s", Name);
for (j = 0; j < 4; j++)
{
if (0 == AsciiStriCmp(g_file_replace_list[i].old_file_name[j], TmpName))
if (ventoy_replace_name_match(g_file_replace_list[i].old_file_name[j], TmpName))
{
g_original_fclose(*New);
*New = &g_efi_file_replace.WrapperHandle;

View File

@@ -25,10 +25,6 @@
#include <grub/i18n.h>
#include <grub/normal.h>
typedef const char * (*get_vmenu_title_pf)(const char *vMenu);
static get_vmenu_title_pf g_pfvmenu_title = NULL;
static const struct grub_arg_option options[] =
{
{"class", 1, GRUB_ARG_OPTION_REPEATABLE,
@@ -90,8 +86,6 @@ grub_normal_add_menu_entry (int argc, const char **args,
char *menu_title = NULL;
char *menu_sourcecode = NULL;
char *menu_id = NULL;
const char *vmenu = NULL;
const char *vaddr = NULL;
struct grub_menu_entry_class *menu_classes = NULL;
grub_menu_t menu;
@@ -151,17 +145,7 @@ grub_normal_add_menu_entry (int argc, const char **args,
goto fail;
}
if (!g_pfvmenu_title) {
vaddr = grub_env_get("VTOY_VMENU_FUNC_ADDR");
if (vaddr)
g_pfvmenu_title = (get_vmenu_title_pf)(unsigned long)grub_strtoul(vaddr, NULL, 16);
}
if (g_pfvmenu_title && grub_strncmp(args[0], "@VTMENU_", 8) == 0)
vmenu = g_pfvmenu_title(args[0] + 1);
menu_title = grub_strdup (vmenu ? vmenu : args[0]);
menu_title = grub_strdup (args[0]);
if (! menu_title)
goto fail;

View File

@@ -232,6 +232,10 @@ label_set_property (void *vself, const char *name, const char *value)
}
else if (grub_strcmp (value, "@VTOY_HOTKEY_TIP@") == 0) {
value = g_ventoy_hotkey_tip;
} else if (value[0] == '@' && value[1] == '@' && value[2]) {
value = grub_env_get(value + 2);
if (!value)
value = " ";
}
self->template = grub_strdup (value);

View File

@@ -295,6 +295,8 @@ theme_set_string (grub_gfxmenu_view_t view,
if (! view->title_text)
return grub_errno;
}
else if (! grub_strcmp ("ventoy_left_top_color", name))
return grub_errno;
else
{
return grub_error (GRUB_ERR_BAD_ARGUMENT,

View File

@@ -0,0 +1,250 @@
/* env.c - Environment variables */
/*
* GRUB -- GRand Unified Bootloader
* Copyright (C) 2003,2005,2006,2007,2008,2009 Free Software Foundation, Inc.
*
* GRUB is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* GRUB is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
*/
#include <grub/env.h>
#include <grub/env_private.h>
#include <grub/misc.h>
#include <grub/mm.h>
/* The initial context. */
static struct grub_env_context initial_context;
/* The current context. */
struct grub_env_context *grub_current_context = &initial_context;
static grub_env_read_hook_t vtoy_menu_lang_read_hook;
/* Return the hash representation of the string S. */
static unsigned int
grub_env_hashval (const char *s)
{
unsigned int i = 0;
/* XXX: This can be done much more efficiently. */
while (*s)
i += 5 * *(s++);
return i % HASHSZ;
}
static struct grub_env_var *
grub_env_find (const char *name)
{
struct grub_env_var *var;
int idx = grub_env_hashval (name);
/* Look for the variable in the current context. */
for (var = grub_current_context->vars[idx]; var; var = var->next)
if (grub_strcmp (var->name, name) == 0)
return var;
return 0;
}
static void
grub_env_insert (struct grub_env_context *context,
struct grub_env_var *var)
{
int idx = grub_env_hashval (var->name);
/* Insert the variable into the hashtable. */
var->prevp = &context->vars[idx];
var->next = context->vars[idx];
if (var->next)
var->next->prevp = &(var->next);
context->vars[idx] = var;
}
static void
grub_env_remove (struct grub_env_var *var)
{
/* Remove the entry from the variable table. */
*var->prevp = var->next;
if (var->next)
var->next->prevp = var->prevp;
}
grub_err_t
grub_env_set (const char *name, const char *val)
{
struct grub_env_var *var;
/* If the variable does already exist, just update the variable. */
var = grub_env_find (name);
if (var)
{
char *old = var->value;
if (var->write_hook)
var->value = var->write_hook (var, val);
else
var->value = grub_strdup (val);
if (! var->value)
{
var->value = old;
return grub_errno;
}
grub_free (old);
return GRUB_ERR_NONE;
}
/* The variable does not exist, so create a new one. */
var = grub_zalloc (sizeof (*var));
if (! var)
return grub_errno;
var->name = grub_strdup (name);
if (! var->name)
goto fail;
var->value = grub_strdup (val);
if (! var->value)
goto fail;
grub_env_insert (grub_current_context, var);
return GRUB_ERR_NONE;
fail:
grub_free (var->name);
grub_free (var->value);
grub_free (var);
return grub_errno;
}
const char *
grub_env_get (const char *name)
{
struct grub_env_var *var;
if (name && vtoy_menu_lang_read_hook && grub_strncmp(name, "VTLANG_", 7) == 0)
return vtoy_menu_lang_read_hook(NULL, name);
var = grub_env_find (name);
if (! var)
return 0;
if (var->read_hook)
return var->read_hook (var, var->value);
return var->value;
}
void
grub_env_unset (const char *name)
{
struct grub_env_var *var;
var = grub_env_find (name);
if (! var)
return;
if (var->read_hook || var->write_hook)
{
grub_env_set (name, "");
return;
}
grub_env_remove (var);
grub_free (var->name);
grub_free (var->value);
grub_free (var);
}
struct grub_env_var *
grub_env_update_get_sorted (void)
{
struct grub_env_var *sorted_list = 0;
int i;
/* Add variables associated with this context into a sorted list. */
for (i = 0; i < HASHSZ; i++)
{
struct grub_env_var *var;
for (var = grub_current_context->vars[i]; var; var = var->next)
{
struct grub_env_var *p, **q;
for (q = &sorted_list, p = *q; p; q = &((*q)->sorted_next), p = *q)
{
if (grub_strcmp (p->name, var->name) > 0)
break;
}
var->sorted_next = *q;
*q = var;
}
}
return sorted_list;
}
grub_err_t
grub_register_variable_hook (const char *name,
grub_env_read_hook_t read_hook,
grub_env_write_hook_t write_hook)
{
struct grub_env_var *var = grub_env_find (name);
if (! var)
{
if (grub_env_set (name, "") != GRUB_ERR_NONE)
return grub_errno;
var = grub_env_find (name);
/* XXX Insert an assertion? */
}
var->read_hook = read_hook;
var->write_hook = write_hook;
return GRUB_ERR_NONE;
}
grub_err_t
grub_register_vtoy_menu_lang_hook(grub_env_read_hook_t read_hook)
{
vtoy_menu_lang_read_hook = read_hook;
return GRUB_ERR_NONE;
}
grub_err_t
grub_env_export (const char *name)
{
struct grub_env_var *var;
var = grub_env_find (name);
if (! var)
{
grub_err_t err;
err = grub_env_set (name, "");
if (err)
return err;
var = grub_env_find (name);
}
var->global = 1;
return GRUB_ERR_NONE;
}

View File

@@ -362,7 +362,8 @@ static grub_err_t
cmd_append (const char *line, struct syslinux_menu *menu)
{
if (!menu->entries)
return grub_error (GRUB_ERR_BAD_ARGUMENT, "kernel without label");
return GRUB_ERR_NONE;
//return grub_error (GRUB_ERR_BAD_ARGUMENT, "kernel without label");
menu->entries->append = grub_strdup (line);
if (!menu->entries->append)

View File

@@ -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;

View File

@@ -269,12 +269,130 @@ static int ventoy_hwinfo_init(void)
grub_snprintf(str, sizeof(str), "%ld", (long)(total_mem / VTOY_SIZE_1MB));
ventoy_env_export("grub_total_ram", str);
#ifdef GRUB_MACHINE_EFI
ventoy_get_uefi_version(str, sizeof(str));
ventoy_env_export("grub_uefi_version", str);
#else
ventoy_env_export("grub_uefi_version", "NA");
#endif
return 0;
}
static global_var_cfg g_global_vars[] =
{
{ "gfxmode", "1024x768", NULL },
{ ventoy_left_key, "5%", NULL },
{ ventoy_top_key, "95%", NULL },
{ ventoy_color_key, "#0000ff", NULL },
{ NULL, NULL, NULL }
};
static const char * ventoy_global_var_read_hook(struct grub_env_var *var, const char *val)
{
int i;
for (i = 0; g_global_vars[i].name; i++)
{
if (grub_strcmp(g_global_vars[i].name, var->name) == 0)
{
return g_global_vars[i].value;
}
}
return val;
}
static char * ventoy_global_var_write_hook(struct grub_env_var *var, const char *val)
{
int i;
for (i = 0; g_global_vars[i].name; i++)
{
if (grub_strcmp(g_global_vars[i].name, var->name) == 0)
{
grub_check_free(g_global_vars[i].value);
g_global_vars[i].value = grub_strdup(val);
break;
}
}
return grub_strdup(val);
}
int ventoy_global_var_init(void)
{
int i;
for (i = 0; g_global_vars[i].name; i++)
{
g_global_vars[i].value = grub_strdup(g_global_vars[i].defval);
ventoy_env_export(g_global_vars[i].name, g_global_vars[i].defval);
grub_register_variable_hook(g_global_vars[i].name, ventoy_global_var_read_hook, ventoy_global_var_write_hook);
}
return 0;
}
static ctrl_var_cfg g_ctrl_vars[] =
{
{ "VTOY_WIN11_BYPASS_CHECK", 1 },
{ "VTOY_WIN11_BYPASS_NRO", 1 },
{ "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);
}
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;
}

View File

@@ -618,13 +618,13 @@ grub_err_t ventoy_cmd_browser_disk(grub_extcmd_context_t ctxt, int argc, char **
{
browser_ssprintf(&mbuf, "menuentry \"%-10s [%s]\" --class=\"vtoyret\" VTOY_RET {\n "
" echo 'return ...' \n}\n", "<--",
ventoy_get_vmenu_title("VTMENU_BROWER_RETURN"));
ventoy_get_vmenu_title("VTLANG_BROWER_RETURN"));
}
else
{
browser_ssprintf(&mbuf, "menuentry \"[%s]\" --class=\"vtoyret\" VTOY_RET {\n "
" echo 'return ...' \n}\n",
ventoy_get_vmenu_title("VTMENU_BROWER_RETURN"));
ventoy_get_vmenu_title("VTLANG_BROWER_RETURN"));
}
grub_disk_dev_iterate(ventoy_browser_iterate_disk, &mbuf);

View File

@@ -362,6 +362,42 @@ static int ventoy_enum_video_mode(void)
VENTOY_CMD_RETURN(GRUB_ERR_NONE);
}
static int ventoy_pre_parse_data(char *src, int size)
{
char c;
char *pos = NULL;
char buf[256];
if (size < 20 || grub_strncmp(src, "ventoy_left_top_color", 21))
{
return 0;
}
pos = src + 21;
while (*pos && *pos != '\r' && *pos != '\n')
{
pos++;
}
c = *pos;
*pos = 0;
if (grub_strlen(src) > 200)
{
goto end;
}
grub_snprintf(buf, sizeof(buf),
"regexp -s 1:%s -s 2:%s -s 3:%s \"@([^@]*)@([^@]*)@([^@]*)@\" \"%s\"",
ventoy_left_key, ventoy_top_key, ventoy_color_key, src);
grub_script_execute_sourcecode(buf);
end:
*pos = c;
return 0;
}
static grub_file_t ventoy_wrapper_open(grub_file_t rawFile, enum grub_file_type type)
{
int len;
@@ -395,6 +431,7 @@ static grub_file_t ventoy_wrapper_open(grub_file_t rawFile, enum grub_file_type
}
grub_file_read(rawFile, file->data, rawFile->size);
ventoy_pre_parse_data((char *)file->data, (int)rawFile->size);
len = ventoy_fill_data(4096, (char *)file->data + rawFile->size);
g_old_file = rawFile;
@@ -495,6 +532,7 @@ static int ventoy_set_check_result(int ret, const char *msg)
if (ret)
{
grub_cls();
grub_printf(VTOY_WARNING"\n");
grub_printf(VTOY_WARNING"\n");
grub_printf(VTOY_WARNING"\n\n\n");
@@ -502,10 +540,7 @@ static int ventoy_set_check_result(int ret, const char *msg)
grub_printf("This is NOT a standard Ventoy device and is NOT supported (%d).\n", ret);
grub_printf("Error message: <%s>\n\n", msg);
grub_printf("You should follow the instructions in https://www.ventoy.net to use Ventoy.\n");
grub_printf("\n\nWill exit after 10 seconds ...... ");
grub_refresh();
grub_sleep(10);
}
return ret;
@@ -2079,6 +2114,13 @@ static int ventoy_collect_img_files(const char *filename, const struct grub_dirh
img->menu_prefix = "miso";
}
}
else if (img_type_img == type)
{
if (ventoy_plugin_check_memdisk(img->path))
{
img->menu_prefix = "mimg";
}
}
debug("Add %s%s to list %d\n", node->dir, filename, g_ventoy_img_count);
}
@@ -2348,14 +2390,14 @@ static int ventoy_dynamic_tree_menu(img_iterator_node *node)
vtoy_ssprintf(g_tree_script_buf, g_tree_script_pos,
"menuentry \"%-10s [%s]\" --class=\"vtoyret\" VTOY_RET {\n "
" echo 'return ...' \n"
"}\n", "<--", ventoy_get_vmenu_title("VTMENU_RET_TO_LISTVIEW"));
"}\n", "<--", ventoy_get_vmenu_title("VTLANG_RET_TO_LISTVIEW"));
}
else
{
vtoy_ssprintf(g_tree_script_buf, g_tree_script_pos,
"menuentry \"[%s]\" --class=\"vtoyret\" VTOY_RET {\n "
" echo 'return ...' \n"
"}\n", ventoy_get_vmenu_title("VTMENU_RET_TO_LISTVIEW"));
"}\n", ventoy_get_vmenu_title("VTLANG_RET_TO_LISTVIEW"));
}
}
@@ -2936,7 +2978,7 @@ static grub_err_t ventoy_cmd_list_img(grub_extcmd_context_t ctxt, int argc, char
vtoy_ssprintf(g_list_script_buf, g_list_script_pos,
"menuentry \"%s [%s]\" --class=\"vtoyret\" VTOY_RET {\n "
" echo 'return ...' \n"
"}\n", "<--", ventoy_get_vmenu_title("VTMENU_RET_TO_TREEVIEW"));
"}\n", "<--", ventoy_get_vmenu_title("VTLANG_RET_TO_TREEVIEW"));
}
for (cur = g_ventoy_img_list; cur; cur = cur->next)
@@ -3705,14 +3747,14 @@ static grub_err_t ventoy_cmd_sel_auto_install(grub_extcmd_context_t ctxt, int ar
vtoy_ssprintf(buf, pos, "set timeout=%d\n", node->timeout);
}
vtoy_ssprintf(buf, pos, "menuentry \"@VTMENU_NO_AUTOINS_SCRIPT\" --class=\"sel_auto_install\" {\n"
vtoy_ssprintf(buf, pos, "menuentry \"$VTLANG_NO_AUTOINS_SCRIPT\" --class=\"sel_auto_install\" {\n"
" echo %s\n}\n", "");
for (i = 0; i < node->templatenum; i++)
{
vtoy_ssprintf(buf, pos, "menuentry \"%s %s\" --class=\"sel_auto_install\" {\n"
" echo \"\"\n}\n",
ventoy_get_vmenu_title("VTMENU_AUTOINS_USE"),
ventoy_get_vmenu_title("VTLANG_AUTOINS_USE"),
node->templatepath[i].path);
}
@@ -3812,14 +3854,14 @@ static grub_err_t ventoy_cmd_sel_persistence(grub_extcmd_context_t ctxt, int arg
vtoy_ssprintf(buf, pos, "set timeout=%d\n", node->timeout);
}
vtoy_ssprintf(buf, pos, "menuentry \"@VTMENU_NO_PERSISTENCE\" --class=\"sel_persistence\" {\n"
vtoy_ssprintf(buf, pos, "menuentry \"$VTLANG_NO_PERSISTENCE\" --class=\"sel_persistence\" {\n"
" echo %s\n}\n", "");
for (i = 0; i < node->backendnum; i++)
{
vtoy_ssprintf(buf, pos, "menuentry \"%s %s\" --class=\"sel_persistence\" {\n"
" echo \"\"\n}\n",
ventoy_get_vmenu_title("VTMENU_PERSIST_USE"),
ventoy_get_vmenu_title("VTLANG_PERSIST_USE"),
node->backendpath[i].path);
}
@@ -4963,6 +5005,61 @@ int ventoy_load_part_table(const char *diskname)
return 0;
}
static void ventoy_prompt_end(void)
{
int op = 0;
char c;
grub_printf("\n\n\n");
grub_printf(" 1 --- Exit grub\n");
grub_printf(" 2 --- Reboot\n");
grub_printf(" 3 --- Shut down\n");
grub_printf("Please enter your choice: ");
grub_refresh();
while (1)
{
c = grub_getkey();
if (c >= '1' && c <= '3')
{
if (op == 0)
{
op = c - '0';
grub_printf("%c", c);
grub_refresh();
}
}
else if (c == '\r' || c == '\n')
{
if (op)
{
if (op == 1)
{
grub_exit();
}
else if (op == 2)
{
grub_reboot();
}
else if (op == 3)
{
grub_script_execute_sourcecode("halt");
}
}
}
else if (c == '\b')
{
if (op)
{
op = 0;
grub_printf("\rPlease enter your choice: ");
grub_printf("\rPlease enter your choice: ");
grub_refresh();
}
}
}
}
static grub_err_t ventoy_cmd_load_part_table(grub_extcmd_context_t ctxt, int argc, char **args)
{
int ret;
@@ -4973,7 +5070,7 @@ static grub_err_t ventoy_cmd_load_part_table(grub_extcmd_context_t ctxt, int arg
ret = ventoy_load_part_table(args[0]);
if (ret)
{
grub_exit();
ventoy_prompt_end();
}
g_ventoy_disk_part_size[0] = ventoy_get_vtoy_partsize(0);
@@ -6075,26 +6172,26 @@ static grub_err_t ventoy_cmd_show_secondary_menu(grub_extcmd_context_t ctxt, int
fsize = grub_strtoull(args[2], NULL, 10);
vtoy_dummy_menuentry(cmd, pos, len, "@VTMENU_NORMAL_MODE", "second_normal"); seldata[n++] = 1;
vtoy_dummy_menuentry(cmd, pos, len, "$VTLANG_NORMAL_MODE", "second_normal"); seldata[n++] = 1;
if (grub_strcmp(args[1], "Unix") != 0)
{
if (grub_strcmp(args[1], "Windows") == 0)
{
vtoy_dummy_menuentry(cmd, pos, len, "@VTMENU_WIMBOOT_MODE", "second_wimboot"); seldata[n++] = 2;
vtoy_dummy_menuentry(cmd, pos, len, "$VTLANG_WIMBOOT_MODE", "second_wimboot"); seldata[n++] = 2;
}
else
{
vtoy_dummy_menuentry(cmd, pos, len, "@VTMENU_GRUB2_MODE", "second_grub2"); seldata[n++] = 3;
vtoy_dummy_menuentry(cmd, pos, len, "$VTLANG_GRUB2_MODE", "second_grub2"); seldata[n++] = 3;
}
if (fsize <= VTOY_SIZE_1GB)
{
vtoy_dummy_menuentry(cmd, pos, len, "@VTMENU_MEMDISK_MODE", "second_memdisk"); seldata[n++] = 4;
vtoy_dummy_menuentry(cmd, pos, len, "$VTLANG_MEMDISK_MODE", "second_memdisk"); seldata[n++] = 4;
}
}
vtoy_dummy_menuentry(cmd, pos, len, "@VTMENU_FILE_CHKSUM", "second_checksum"); seldata[n++] = 5;
vtoy_dummy_menuentry(cmd, pos, len, "$VTLANG_FILE_CHKSUM", "second_checksum"); seldata[n++] = 5;
do {
g_ventoy_menu_esc = 1;
@@ -6177,15 +6274,31 @@ static grub_err_t ventoy_cmd_fs_ignore_case(grub_extcmd_context_t ctxt, int argc
return 0;
}
static grub_err_t ventoy_cmd_init_menu_lang(grub_extcmd_context_t ctxt, int argc, char **args)
{
(void)ctxt;
(void)argc;
ventoy_plugin_load_menu_lang(1, args[0]);
VENTOY_CMD_RETURN(0);
}
static grub_err_t ventoy_cmd_load_menu_lang(grub_extcmd_context_t ctxt, int argc, char **args)
{
(void)ctxt;
(void)argc;
ventoy_plugin_load_menu_lang(args[0]);
ventoy_plugin_load_menu_lang(0, args[0]);
VENTOY_CMD_RETURN(0);
}
static const char * ventoy_menu_lang_read_hook(struct grub_env_var *var, const char *val)
{
(void)var;
return ventoy_get_vmenu_title(val);
}
int ventoy_env_init(void)
{
int i;
@@ -6193,6 +6306,10 @@ int ventoy_env_init(void)
grub_env_set("vtdebug_flag", "");
grub_register_vtoy_menu_lang_hook(ventoy_menu_lang_read_hook);
ventoy_ctrl_var_init();
ventoy_global_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);
@@ -6232,6 +6349,10 @@ int ventoy_env_init(void)
grub_env_set("VTOY_VMENU_FUNC_ADDR", buf);
grub_env_export("VTOY_VMENU_FUNC_ADDR");
grub_snprintf(buf, sizeof(buf), "%s-%s", GRUB_TARGET_CPU, GRUB_PLATFORM);
grub_env_set("grub_cpu_platform", buf);
grub_env_export("grub_cpu_platform");
return 0;
}
@@ -6399,7 +6520,9 @@ static cmd_para ventoy_cmds[] =
{ "vt_limine_menu", ventoy_cmd_linux_limine_menu, 0, NULL, "", "", NULL },
{ "vt_secondary_recover_mode", ventoy_cmd_secondary_recover_mode, 0, NULL, "", "", NULL },
{ "vt_load_menu_lang", ventoy_cmd_load_menu_lang, 0, NULL, "", "", NULL },
{ "vt_init_menu_lang", ventoy_cmd_init_menu_lang, 0, NULL, "", "", NULL },
{ "vt_cur_menu_lang", ventoy_cmd_cur_menu_lang, 0, NULL, "", "", NULL },
};
int ventoy_register_all_cmd(void)

View File

@@ -77,6 +77,10 @@
#define VTOY_ARCH_CPIO "ventoy_x86.cpio"
#endif
#define ventoy_left_key "VTLE_LFT"
#define ventoy_top_key "VTLE_TOP"
#define ventoy_color_key "VTLE_CLR"
#define ventoy_varg_4(arg) arg[0], arg[1], arg[2], arg[3]
#define ventoy_varg_8(arg) arg[0], arg[1], arg[2], arg[3], arg[4], arg[5], arg[6], arg[7]
@@ -99,6 +103,19 @@
}\
}
#define VTOY_SKIP_SPACE(s) \
while (ventoy_isspace(*s)) \
{\
s++;\
}
#define VTOY_SKIP_SPACE_NEXT(s, initial) \
s += initial;\
while (ventoy_isspace(*s)) \
{\
s++;\
}
typedef enum VTOY_FILE_FLT
{
VTOY_FILE_FLT_ISO = 0, /* .iso */
@@ -1243,6 +1260,19 @@ typedef struct systemd_menu_ctx
int len;
}systemd_menu_ctx;
typedef struct global_var_cfg
{
const char *name;
const char *defval;
char *value;
}global_var_cfg;
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;
@@ -1261,10 +1291,12 @@ grub_err_t ventoy_cmd_browser_disk(grub_extcmd_context_t ctxt, int argc, char **
int ventoy_get_fs_type(const char *fs);
int ventoy_img_name_valid(const char *filename, grub_size_t namelen);
void * ventoy_alloc_chain(grub_size_t size);
int ventoy_plugin_load_menu_lang(const char *lang);
int ventoy_plugin_load_menu_lang(int init, const char *lang);
const char *ventoy_get_vmenu_title(const char *vMenu);
grub_err_t ventoy_cmd_cur_menu_lang(grub_extcmd_context_t ctxt, int argc, char **args);
extern int ventoy_menu_push_key(int code);
int ventoy_ctrl_var_init(void);
int ventoy_global_var_init(void);
#endif /* __VENTOY_DEF_H__ */

View File

@@ -177,10 +177,7 @@ static grub_err_t ventoy_isolinux_initrd_collect(grub_file_t file, const char *p
{
nextline = ventoy_get_line(start);
while (ventoy_isspace(*start))
{
start++;
}
VTOY_SKIP_SPACE(start);
offset = 7; // strlen("initrd=") or "INITRD " or "initrd "
pos = grub_strstr(start, "initrd=");
@@ -438,10 +435,7 @@ static grub_err_t ventoy_grub_cfg_initrd_collect(const char *fileName)
{
nextline = ventoy_get_line(start);
while (ventoy_isspace(*start))
{
start++;
}
VTOY_SKIP_SPACE(start);
if (grub_strncmp(start, "initrd", 6) != 0)
{
@@ -454,10 +448,7 @@ static grub_err_t ventoy_grub_cfg_initrd_collect(const char *fileName)
start++;
}
while (ventoy_isspace(*start))
{
start++;
}
VTOY_SKIP_SPACE(start);
if (*start == '"')
{
@@ -528,10 +519,7 @@ static grub_err_t ventoy_grub_cfg_initrd_collect(const char *fileName)
if (*start == ' ' || *start == '\t')
{
while (ventoy_isspace(*start))
{
start++;
}
VTOY_SKIP_SPACE(start);
}
else
{
@@ -1813,18 +1801,12 @@ static char *ventoy_systemd_conf_tag(char *buf, const char *tag, int optional)
for (start = buf; start; start = nextline)
{
nextline = ventoy_get_line(start);
while (ventoy_isspace(*start))
{
start++;
}
VTOY_SKIP_SPACE(start);
if (grub_strncmp(start, tag, taglen) == 0 && (start[taglen] == ' ' || start[taglen] == '\t'))
{
start += taglen;
while (ventoy_isspace(*start))
{
start++;
}
VTOY_SKIP_SPACE(start);
return start;
}
}
@@ -2038,10 +2020,7 @@ grub_err_t ventoy_cmd_linux_limine_menu(grub_extcmd_context_t ctxt, int argc, ch
for (start = filebuf; start; start = nextline)
{
nextline = ventoy_get_line(start);
while (ventoy_isspace(*start))
{
start++;
}
VTOY_SKIP_SPACE(start);
if (start[0] == ':')
{

View File

@@ -35,6 +35,7 @@
#include <grub/crypto.h>
#include <grub/time.h>
#include <grub/font.h>
#include <grub/video.h>
#include <grub/ventoy.h>
#include "ventoy_def.h"
@@ -59,6 +60,7 @@ static conf_replace *g_conf_replace_head = NULL;
static VTOY_JSON *g_menu_lang_json = NULL;
static int g_theme_id = 0;
static int g_theme_res_fit = 0;
static int g_theme_num = 0;
static theme_list *g_theme_head = NULL;
static int g_theme_random = vtoy_theme_random_boot_second;
@@ -377,6 +379,18 @@ static int ventoy_plugin_theme_entry(VTOY_JSON *json, const char *isodisk)
if (g_theme_num > 0)
{
vtoy_json_get_int(json->pstChild, "default_file", &g_theme_id);
if (g_theme_id == 0)
{
vtoy_json_get_int(json->pstChild, "resolution_fit", &g_theme_res_fit);
if (g_theme_res_fit != 1)
{
g_theme_res_fit = 0;
}
grub_snprintf(val, sizeof(val), "%d", g_theme_res_fit);
ventoy_env_export("vtoy_res_fit", val);
}
if (g_theme_id > g_theme_num || g_theme_id < 0)
{
g_theme_id = 0;
@@ -407,19 +421,19 @@ static int ventoy_plugin_theme_entry(VTOY_JSON *json, const char *isodisk)
value = vtoy_json_get_string_ex(json->pstChild, "ventoy_left");
if (value)
{
ventoy_env_export("VTLE_LFT", value);
ventoy_env_export(ventoy_left_key, value);
}
value = vtoy_json_get_string_ex(json->pstChild, "ventoy_top");
if (value)
{
ventoy_env_export("VTLE_TOP", value);
ventoy_env_export(ventoy_top_key, value);
}
value = vtoy_json_get_string_ex(json->pstChild, "ventoy_color");
if (value)
{
ventoy_env_export("VTLE_CLR", value);
ventoy_env_export(ventoy_color_key, value);
}
node = vtoy_json_find_item(json->pstChild, JSON_TYPE_ARRAY, "fonts");
@@ -3371,7 +3385,7 @@ grub_err_t ventoy_cmd_select_theme_cfg(grub_extcmd_context_t ctxt, int argc, cha
}
pos += grub_snprintf(buf + pos, bufsize - pos,
"menuentry '@VTMENU_RETURN_PREVIOUS' --class=vtoyret VTOY_RET {\n"
"menuentry \"$VTLANG_RETURN_PREVIOUS\" --class=vtoyret VTOY_RET {\n"
"echo 'Return ...'\n"
"}\n");
@@ -3381,13 +3395,19 @@ grub_err_t ventoy_cmd_select_theme_cfg(grub_extcmd_context_t ctxt, int argc, cha
return 0;
}
extern char g_ventoy_theme_path[256];
grub_err_t ventoy_cmd_set_theme(grub_extcmd_context_t ctxt, int argc, char **args)
{
grub_uint32_t i = 0;
grub_uint32_t mod = 0;
grub_uint32_t theme_num = 0;
theme_list *node = g_theme_head;
struct grub_datetime datetime;
struct grub_video_mode_info info;
char buf[64];
char **pThemePath = NULL;
(void)argc;
(void)args;
(void)ctxt;
@@ -3417,41 +3437,82 @@ grub_err_t ventoy_cmd_set_theme(grub_extcmd_context_t ctxt, int argc, char **arg
goto end;
}
grub_memset(&datetime, 0, sizeof(datetime));
grub_get_datetime(&datetime);
if (g_theme_random == vtoy_theme_random_boot_second)
pThemePath = (char **)grub_zalloc(sizeof(char *) * g_theme_num);
if (!pThemePath)
{
grub_divmod32((grub_uint32_t)datetime.second, (grub_uint32_t)g_theme_num, &mod);
}
else if (g_theme_random == vtoy_theme_random_boot_day)
{
grub_divmod32((grub_uint32_t)datetime.day, (grub_uint32_t)g_theme_num, &mod);
}
else if (g_theme_random == vtoy_theme_random_boot_month)
{
grub_divmod32((grub_uint32_t)datetime.month, (grub_uint32_t)g_theme_num, &mod);
goto end;
}
debug("%04d/%02d/%02d %02d:%02d:%02d radom:%d mod:%d\n",
datetime.year, datetime.month, datetime.day,
datetime.hour, datetime.minute, datetime.second,
g_theme_random, mod);
for (i = 0; i < mod && node; i++)
if (g_theme_res_fit)
{
node = node->next;
if (grub_video_get_info(&info) == GRUB_ERR_NONE)
{
debug("get video info success %ux%u\n", info.width, info.height);
grub_snprintf(buf, sizeof(buf), "%ux%u", info.width, info.height);
for (node = g_theme_head; node; node = node->next)
{
if (grub_strstr(node->theme.path, buf))
{
pThemePath[theme_num++] = node->theme.path;
}
}
}
}
debug("random theme %s\n", node->theme.path);
grub_env_set("theme", node->theme.path);
if (theme_num == 0)
{
for (node = g_theme_head; node; node = node->next)
{
pThemePath[theme_num++] = node->theme.path;
}
}
if (theme_num == 1)
{
mod = 0;
debug("Only 1 theme match, no need to random.\n");
}
else
{
grub_memset(&datetime, 0, sizeof(datetime));
grub_get_datetime(&datetime);
if (g_theme_random == vtoy_theme_random_boot_second)
{
grub_divmod32((grub_uint32_t)datetime.second, theme_num, &mod);
}
else if (g_theme_random == vtoy_theme_random_boot_day)
{
grub_divmod32((grub_uint32_t)datetime.day, theme_num, &mod);
}
else if (g_theme_random == vtoy_theme_random_boot_month)
{
grub_divmod32((grub_uint32_t)datetime.month, theme_num, &mod);
}
debug("%04d/%02d/%02d %02d:%02d:%02d theme_num:%d mod:%d\n",
datetime.year, datetime.month, datetime.day,
datetime.hour, datetime.minute, datetime.second,
theme_num, mod);
}
if (argc > 0 && grub_strcmp(args[0], "switch") == 0)
{
grub_snprintf(g_ventoy_theme_path, sizeof(g_ventoy_theme_path), "%s", pThemePath[mod]);
}
else
{
debug("random theme %s\n", pThemePath[mod]);
grub_env_set("theme", pThemePath[mod]);
}
g_ventoy_menu_refresh = 1;
end:
grub_check_free(pThemePath);
VENTOY_CMD_RETURN(GRUB_ERR_NONE);
}
extern char g_ventoy_theme_path[256];
grub_err_t ventoy_cmd_set_theme_path(grub_extcmd_context_t ctxt, int argc, char **args)
{
(void)argc;
@@ -3474,7 +3535,7 @@ const char *ventoy_get_vmenu_title(const char *vMenu)
return vtoy_json_get_string_ex(g_menu_lang_json->pstChild, vMenu);
}
int ventoy_plugin_load_menu_lang(const char *lang)
int ventoy_plugin_load_menu_lang(int init, const char *lang)
{
int ret = 1;
grub_file_t file = NULL;
@@ -3521,16 +3582,19 @@ int ventoy_plugin_load_menu_lang(const char *lang)
if (g_default_menu_mode == 0)
{
grub_snprintf(g_ventoy_hotkey_tip, sizeof(g_ventoy_hotkey_tip), "%s", ventoy_get_vmenu_title("VTMENU_STR_HOTKEY_TREE"));
grub_snprintf(g_ventoy_hotkey_tip, sizeof(g_ventoy_hotkey_tip), "%s", ventoy_get_vmenu_title("VTLANG_STR_HOTKEY_TREE"));
}
else
{
grub_snprintf(g_ventoy_hotkey_tip, sizeof(g_ventoy_hotkey_tip), "%s", ventoy_get_vmenu_title("VTMENU_STR_HOTKEY_LIST"));
grub_snprintf(g_ventoy_hotkey_tip, sizeof(g_ventoy_hotkey_tip), "%s", ventoy_get_vmenu_title("VTLANG_STR_HOTKEY_LIST"));
}
ventoy_menu_push_key(GRUB_TERM_ESC);
ventoy_menu_push_key(GRUB_TERM_ESC);
g_ventoy_menu_refresh = 1;
if (init == 0)
{
ventoy_menu_push_key(GRUB_TERM_ESC);
ventoy_menu_push_key(GRUB_TERM_ESC);
g_ventoy_menu_refresh = 1;
}
ret = 0;
end:

View File

@@ -1090,6 +1090,12 @@ static int ventoy_fill_windows_rtdata(void *buf, char *isopath, int dataflag)
{
data->windows11_bypass_check = 1;
}
env = grub_env_get("VTOY_WIN11_BYPASS_NRO");
if (env && env[0] == '1' && env[1] == 0)
{
data->windows11_bypass_nro = 1;
}
pos = grub_strstr(isopath, "/");
if (!pos)

View File

@@ -0,0 +1,73 @@
/*
* GRUB -- GRand Unified Bootloader
* Copyright (C) 2003,2005,2006,2007,2009 Free Software Foundation, Inc.
*
* GRUB is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* GRUB is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef GRUB_ENV_HEADER
#define GRUB_ENV_HEADER 1
#include <grub/symbol.h>
#include <grub/err.h>
#include <grub/types.h>
#include <grub/menu.h>
struct grub_env_var;
typedef const char *(*grub_env_read_hook_t) (struct grub_env_var *var,
const char *val);
typedef char *(*grub_env_write_hook_t) (struct grub_env_var *var,
const char *val);
struct grub_env_var
{
char *name;
char *value;
grub_env_read_hook_t read_hook;
grub_env_write_hook_t write_hook;
struct grub_env_var *next;
struct grub_env_var **prevp;
struct grub_env_var *sorted_next;
int global;
};
grub_err_t EXPORT_FUNC(grub_env_set) (const char *name, const char *val);
const char *EXPORT_FUNC(grub_env_get) (const char *name);
void EXPORT_FUNC(grub_env_unset) (const char *name);
struct grub_env_var *EXPORT_FUNC(grub_env_update_get_sorted) (void);
#define FOR_SORTED_ENV(var) for (var = grub_env_update_get_sorted (); var; var = var->sorted_next)
grub_err_t EXPORT_FUNC(grub_register_variable_hook) (const char *name,
grub_env_read_hook_t read_hook,
grub_env_write_hook_t write_hook);
grub_err_t EXPORT_FUNC(grub_register_vtoy_menu_lang_hook) (grub_env_read_hook_t read_hook);
grub_err_t grub_env_context_open (void);
grub_err_t grub_env_context_close (void);
grub_err_t EXPORT_FUNC(grub_env_export) (const char *name);
void grub_env_unset_menu (void);
grub_menu_t grub_env_get_menu (void);
void grub_env_set_menu (grub_menu_t nmenu);
grub_err_t
grub_env_extractor_open (int source);
grub_err_t
grub_env_extractor_close (int source);
#endif /* ! GRUB_ENV_HEADER */

View File

@@ -142,7 +142,9 @@ typedef struct ventoy_windows_data
grub_uint32_t auto_install_len;
grub_uint8_t reserved[255 - 4];
grub_uint8_t windows11_bypass_nro;
grub_uint8_t reserved[255 - 5];
/* auto_intall file buf */
/* ...... + auto_install_len */

View File

@@ -12,7 +12,7 @@ make install
PATH=$VT_DIR/GRUB2/INSTALL/bin/:$VT_DIR/GRUB2/INSTALL/sbin/:$PATH
net_modules_legacy="net tftp http"
all_modules_legacy="file setkey date drivemap blocklist regexp newc vga_text ntldr search at_keyboard usb_keyboard gcry_md5 hashsum gzio xzio lzopio lspci pci ext2 xfs ventoy chain read halt iso9660 linux16 test true sleep reboot echo videotest videoinfo videotest_checksum video_colors video_cirrus video_bochs vga vbe video_fb font video gettext extcmd terminal linux minicmd help configfile tr trig boot biosdisk disk ls tar squash4 password_pbkdf2 all_video png jpeg part_gpt part_msdos fat exfat ntfs loopback gzio normal udf gfxmenu gfxterm gfxterm_background gfxterm_menu smbios zfs"
all_modules_legacy="file date drivemap blocklist newc vga_text ntldr search at_keyboard usb_keyboard gcry_md5 hashsum gzio xzio lzopio lspci pci ext2 xfs ventoy chain read halt iso9660 linux16 test true sleep reboot echo videotest videoinfo videotest_checksum video_colors video_cirrus video_bochs vga vbe font video gettext extcmd terminal linux minicmd help configfile tr trig boot biosdisk disk ls tar squash4 password_pbkdf2 all_video png jpeg part_gpt part_msdos fat exfat ntfs loopback gzio normal udf gfxmenu gfxterm gfxterm_background gfxterm_menu smbios"
net_modules_uefi="efinet net tftp http"
all_modules_uefi="file setkey blocklist ventoy test true regexp newc search at_keyboard usb_keyboard gcry_md5 hashsum gzio xzio lzopio ext2 xfs read halt sleep serial terminfo png password_pbkdf2 gcry_sha512 pbkdf2 part_gpt part_msdos ls tar squash4 loopback part_apple minicmd diskfilter linux relocator jpeg iso9660 udf hfsplus halt acpi mmap gfxmenu video_colors trig bitmap_scale gfxterm bitmap font fat exfat ntfs fshelp efifwsetup reboot echo configfile normal terminal gettext chain priority_queue bufio datetime cat extcmd crypto gzio boot all_video efi_gop efi_uga video_bochs video_cirrus video video_fb gfxterm_background gfxterm_menu mouse fwload smbios zfs"

Binary file not shown.

Binary file not shown.

View File

@@ -12,11 +12,11 @@ if [ -f ./ventoy/version ]; then
curver=$(cat ./ventoy/version)
fi
if uname -m | egrep -q 'aarch64|arm64'; then
if uname -m | grep -E -q 'aarch64|arm64'; then
export TOOLDIR=aarch64
elif uname -m | egrep -q 'x86_64|amd64'; then
elif uname -m | grep -E -q 'x86_64|amd64'; then
export TOOLDIR=x86_64
elif uname -m | egrep -q 'mips64'; then
elif uname -m | grep -E -q 'mips64'; then
export TOOLDIR=mips64el
else
export TOOLDIR=i386

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -30,13 +30,13 @@ fi
OLDDIR=$(pwd)
machine=$(uname -m)
if echo $machine | egrep -q 'aarch64|arm64'; then
if echo $machine | grep -E -q 'aarch64|arm64'; then
TOOLDIR=aarch64
elif echo $machine | egrep -q 'x86_64|amd64'; then
elif echo $machine | grep -E -q 'x86_64|amd64'; then
TOOLDIR=x86_64
elif echo $machine | egrep -q 'mips64'; then
elif echo $machine | grep -E -q 'mips64'; then
TOOLDIR=mips64el
elif echo $machine | egrep -q 'i[3-6]86'; then
elif echo $machine | grep -E -q 'i[3-6]86'; then
TOOLDIR=i386
else
echo "Unsupported machine type $machine"
@@ -122,7 +122,7 @@ if echo $DISK | grep -q "[a-z]d[a-z][1-9]"; then
DISK=${DISK:0:-1}
fi
if echo $DISK | egrep -q "/dev/nvme|/dev/mmcblk/dev/nbd"; then
if echo $DISK | grep -E -q "/dev/nvme|/dev/mmcblk/dev/nbd"; then
if echo $DISK | grep -q "p[1-9]$"; then
DISK=${DISK:0:-2}
fi

View File

@@ -23,11 +23,11 @@ fi
OLDDIR=$(pwd)
if uname -m | egrep -q 'aarch64|arm64'; then
if uname -m | grep -E -q 'aarch64|arm64'; then
TOOLDIR=aarch64
elif uname -m | egrep -q 'x86_64|amd64'; then
elif uname -m | grep -E -q 'x86_64|amd64'; then
TOOLDIR=x86_64
elif uname -m | egrep -q 'mips64'; then
elif uname -m | grep -E -q 'mips64'; then
TOOLDIR=mips64el
else
TOOLDIR=i386

Binary file not shown.

View File

@@ -1,7 +1,7 @@
if [ -e "${vtoy_iso_part}${VTOY_CHKSUM_FILE_PATH}.md5" ]; then
set default=0
menuentry "@VTMENU_CHKSUM_MD5_CALC_CHK" --class=checksum_md5 {
menuentry "$VTLANG_CHKSUM_MD5_CALC_CHK" --class=checksum_md5 {
md5sum "${vtoy_iso_part}${VTOY_CHKSUM_FILE_PATH}"
vt_1st_line "${vtoy_iso_part}${VTOY_CHKSUM_FILE_PATH}.md5" vtReadChecksum
@@ -14,21 +14,21 @@ if [ -e "${vtoy_iso_part}${VTOY_CHKSUM_FILE_PATH}.md5" ]; then
echo "$vtReadChecksum"
fi
echo -e "\n\npress ENTER to exit ..."
echo -en "\n\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
}
else
menuentry "@VTMENU_CHKSUM_MD5_CALC" --class=checksum_md5 {
menuentry "$VTLANG_CHKSUM_MD5_CALC" --class=checksum_md5 {
md5sum "${vtoy_iso_part}${VTOY_CHKSUM_FILE_PATH}"
echo -e "\n\npress ENTER to exit ..."
echo -en "\n\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
}
fi
if [ -e "${vtoy_iso_part}${VTOY_CHKSUM_FILE_PATH}.sha1" ]; then
set default=1
menuentry "@VTMENU_CHKSUM_SHA1_CALC_CHK" --class=checksum_sha1 {
menuentry "$VTLANG_CHKSUM_SHA1_CALC_CHK" --class=checksum_sha1 {
sha1sum "${vtoy_iso_part}${VTOY_CHKSUM_FILE_PATH}"
vt_1st_line "${vtoy_iso_part}${VTOY_CHKSUM_FILE_PATH}.sha1" vtReadChecksum
@@ -41,14 +41,14 @@ if [ -e "${vtoy_iso_part}${VTOY_CHKSUM_FILE_PATH}.sha1" ]; then
echo "$vtReadChecksum"
fi
echo -e "\n\npress ENTER to exit ..."
echo -en "\n\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
}
else
menuentry "@VTMENU_CHKSUM_SHA1_CALC" --class=checksum_sha1 {
menuentry "$VTLANG_CHKSUM_SHA1_CALC" --class=checksum_sha1 {
sha1sum "${vtoy_iso_part}${VTOY_CHKSUM_FILE_PATH}"
echo -e "\n\npress ENTER to exit ..."
echo -en "\n\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
}
fi
@@ -57,7 +57,7 @@ fi
if [ -e "${vtoy_iso_part}${VTOY_CHKSUM_FILE_PATH}.sha256" ]; then
set default=2
menuentry "@VTMENU_CHKSUM_SHA256_CALC_CHK" --class=checksum_sha256 {
menuentry "$VTLANG_CHKSUM_SHA256_CALC_CHK" --class=checksum_sha256 {
sha256sum "${vtoy_iso_part}${VTOY_CHKSUM_FILE_PATH}"
vt_1st_line "${vtoy_iso_part}${VTOY_CHKSUM_FILE_PATH}.sha256" vtReadChecksum
@@ -70,14 +70,14 @@ if [ -e "${vtoy_iso_part}${VTOY_CHKSUM_FILE_PATH}.sha256" ]; then
echo "$vtReadChecksum"
fi
echo -e "\n\npress ENTER to exit ..."
echo -en "\n\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
}
else
menuentry "@VTMENU_CHKSUM_SHA256_CALC" --class=checksum_sha256 {
menuentry "$VTLANG_CHKSUM_SHA256_CALC" --class=checksum_sha256 {
sha256sum "${vtoy_iso_part}${VTOY_CHKSUM_FILE_PATH}"
echo -e "\n\npress ENTER to exit ..."
echo -en "\n\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
}
fi
@@ -86,7 +86,7 @@ fi
if [ -e "${vtoy_iso_part}${VTOY_CHKSUM_FILE_PATH}.sha512" ]; then
set default=3
menuentry "@VTMENU_CHKSUM_SHA512_CALC_CHK" --class=checksum_sha512{
menuentry "$VTLANG_CHKSUM_SHA512_CALC_CHK" --class=checksum_sha512{
sha512sum "${vtoy_iso_part}${VTOY_CHKSUM_FILE_PATH}"
vt_1st_line "${vtoy_iso_part}${VTOY_CHKSUM_FILE_PATH}.sha512" vtReadChecksum
@@ -99,19 +99,19 @@ if [ -e "${vtoy_iso_part}${VTOY_CHKSUM_FILE_PATH}.sha512" ]; then
echo "$vtReadChecksum"
fi
echo -e "\n\npress ENTER to exit ..."
echo -en "\n\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
}
else
menuentry "@VTMENU_CHKSUM_SHA512_CALC" --class=checksum_sha512{
menuentry "$VTLANG_CHKSUM_SHA512_CALC" --class=checksum_sha512{
sha512sum "${vtoy_iso_part}${VTOY_CHKSUM_FILE_PATH}"
echo -e "\n\npress ENTER to exit ..."
echo -en "\n\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
}
fi
menuentry '@VTMENU_RETURN_PREVIOUS' --class=vtoyret VTOY_RET {
menuentry "$VTLANG_RETURN_PREVIOUS" --class=vtoyret VTOY_RET {
echo 'Return ...'
}

View File

@@ -1,14 +1,61 @@
#
# VTLANG_CTRL_TEMP_SET 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_WIN11_BYPASS_NRO ] $VTLANG_WIN11_BYPASS_NRO" --class=debug_temp_win11_nro --class=debug_temp_set --class=F5tool \
VTOY_RUN_SET1 {
if [ "$VTOY_WIN11_BYPASS_NRO" = "0" ]; then
set VTOY_WIN11_BYPASS_NRO=1
else
set VTOY_WIN11_BYPASS_NRO=0
fi
}
menuentry "[ $VTOY_LINUX_REMOUNT ] $VTLANG_LINUX_REMOUNT" --class=debug_temp_linux_remount --class=debug_temp_set --class=F5tool \
VTOY_RUN_SET2 {
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_SET3 {
if [ "$VTOY_SECONDARY_BOOT_MENU" = "0" ]; then
set VTOY_SECONDARY_BOOT_MENU=1
else
set VTOY_SECONDARY_BOOT_MENU=0
fi
}
submenu "@VTMENU_MENU_LANG" --class=debug_menu_lang --class=F5tool {
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
submenu "@VTMENU_RESOLUTION_CFG" --class=debug_resolution --class=F5tool {
menuentry '@VTMENU_RETURN_PREVIOUS' --class=vtoyret VTOY_RET {
echo 'Return ...'
submenu "$VTLANG_RESOLUTION_CFG" --class=debug_resolution --class=F5tool {
menuentry "$VTLANG_RETURN_PREVIOUS" --class=vtoyret VTOY_RET {
echo "Return ..."
}
vt_update_cur_video_mode VT_CUR_MODE
@@ -24,192 +71,195 @@ submenu "@VTMENU_RESOLUTION_CFG" --class=debug_resolution --class=F5tool {
menuentry "$vtCurMode $vtActive" --class=debug_videomode --class=debug_resolution --class=F5tool VTOY_RUN_RET {
terminal_output console
set gfxmode=$1
terminal_output gfxterm
terminal_output gfxterm
if [ "$vtoy_res_fit" = "1" ]; then
vt_set_theme switch
fi
}
vt_incr vdid 1
done
}
submenu "@VTMENU_SCREEN_MODE" --class=debug_screen_mode --class=F5tool {
menuentry '@VTMENU_SCREEN_TEXT_MODE' --class=debug_text_mode --class=debug_screen_mode --class=F5tool {
submenu "$VTLANG_SCREEN_MODE" --class=debug_screen_mode --class=F5tool {
menuentry "$VTLANG_SCREEN_TEXT_MODE" --class=debug_text_mode --class=debug_screen_mode --class=F5tool {
terminal_output console
}
menuentry '@VTMENU_SCREEN_GUI_MODE' --class=debug_gui_mode --class=debug_screen_mode --class=F5tool {
menuentry "$VTLANG_SCREEN_GUI_MODE" --class=debug_gui_mode --class=debug_screen_mode --class=F5tool {
terminal_output gfxterm
}
menuentry '@VTMENU_RETURN_PREVIOUS' --class=vtoyret VTOY_RET {
echo 'Return ...'
menuentry "$VTLANG_RETURN_PREVIOUS" --class=vtoyret VTOY_RET {
echo "Return ..."
}
}
if [ -n "$VTOY_THEME_COUNT" -a $VTOY_THEME_COUNT -gt 1 ]; then
submenu "@VTMENU_THEME_SELECT" --class=debug_theme_select --class=F5tool {
submenu "$VTLANG_THEME_SELECT" --class=debug_theme_select --class=F5tool {
vt_select_theme_cfg
}
fi
if [ "$grub_platform" != "pc" ]; then
submenu 'Ventoy UEFI Utilities' --class=debug_util --class=F5tool {
menuentry '@VTMENU_UTIL_SHOW_EFI_DRV' --class=debug_util_efidrv --class=debug_util --class=F5tool {
submenu "$VTLANG_UEFI_UTIL" --class=debug_util --class=F5tool {
menuentry "$VTLANG_UTIL_SHOW_EFI_DRV" --class=debug_util_efidrv --class=debug_util --class=F5tool {
vt_push_pager
chainloader ${vtoy_path}/vtoyutil_${VTOY_EFI_ARCH}.efi env_param=${env_param} ${vtdebug_flag} feature=show_efi_drivers
boot
vt_pop_pager
echo -e "\npress ENTER to exit ..."
echo -en "\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
}
menuentry '@VTMENU_UTIL_FIX_BLINIT_FAIL' --class=debug_util_blinit --class=debug_util --class=F5tool {
menuentry "$VTLANG_UTIL_FIX_BLINIT_FAIL" --class=debug_util_blinit --class=debug_util --class=F5tool {
chainloader ${vtoy_path}/vtoyutil_${VTOY_EFI_ARCH}.efi env_param=${env_param} ${vtdebug_flag} feature=fix_windows_mmap
boot
echo -e "\npress ENTER to exit ..."
echo -en "\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
}
menuentry '@VTMENU_RETURN_PREVIOUS' --class=vtoyret VTOY_RET {
echo 'Return ...'
menuentry "$VTLANG_RETURN_PREVIOUS" --class=vtoyret VTOY_RET {
echo "Return ..."
}
}
fi
submenu '@VTMENU_JSON_CHK_JSON' --class=debug_json --class=F5tool {
menuentry '@VTMENU_JSON_CHK_CONTROL' --class=debug_control --class=debug_json --class=F5tool {
submenu "$VTLANG_JSON_CHK_JSON" --class=debug_json --class=F5tool {
menuentry "$VTLANG_JSON_CHK_CONTROL" --class=debug_control --class=debug_json --class=F5tool {
set pager=1
vt_check_plugin_json $vt_plugin_path control $vtoy_iso_part
echo -e "\npress ENTER to exit ..."
echo -en "\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
unset pager
}
menuentry '@VTMENU_JSON_CHK_THEME' --class=debug_theme --class=debug_json --class=F5tool {
menuentry "$VTLANG_JSON_CHK_THEME" --class=debug_theme --class=debug_json --class=F5tool {
set pager=1
vt_check_plugin_json $vt_plugin_path theme $vtoy_iso_part
echo -e "\npress ENTER to exit ..."
echo -en "\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
unset pager
}
menuentry '@VTMENU_JSON_CHK_AUTOINS' --class=debug_autoinstall --class=debug_json --class=F5tool {
menuentry "$VTLANG_JSON_CHK_AUTOINS" --class=debug_autoinstall --class=debug_json --class=F5tool {
set pager=1
vt_check_plugin_json $vt_plugin_path auto_install $vtoy_iso_part
echo -e "\npress ENTER to exit ..."
echo -en "\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
unset pager
}
menuentry '@VTMENU_JSON_CHK_PERSIST' --class=debug_persistence --class=debug_json --class=F5tool {
menuentry "$VTLANG_JSON_CHK_PERSIST" --class=debug_persistence --class=debug_json --class=F5tool {
set pager=1
vt_check_plugin_json $vt_plugin_path persistence $vtoy_iso_part
echo -e "\n############### dump persistence ###############"
vt_dump_persistence
echo -e "\npress ENTER to exit ..."
echo -en "\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
unset pager
}
menuentry '@VTMENU_JSON_CHK_MENU_ALIAS' --class=debug_menualias --class=debug_json --class=F5tool {
menuentry "$VTLANG_JSON_CHK_MENU_ALIAS" --class=debug_menualias --class=debug_json --class=F5tool {
set pager=1
vt_check_plugin_json $vt_plugin_path menu_alias $vtoy_iso_part
echo -e "\npress ENTER to exit ..."
echo -en "\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
unset pager
}
menuentry '@VTMENU_JSON_CHK_MENU_TIP' --class=debug_menutip --class=debug_json --class=F5tool {
menuentry "$VTLANG_JSON_CHK_MENU_TIP" --class=debug_menutip --class=debug_json --class=F5tool {
set pager=1
vt_check_plugin_json $vt_plugin_path menu_tip $vtoy_iso_part
echo -e "\npress ENTER to exit ..."
echo -en "\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
unset pager
}
menuentry '@VTMENU_JSON_CHK_MENU_CLASS' --class=debug_menuclass --class=debug_json --class=F5tool {
menuentry "$VTLANG_JSON_CHK_MENU_CLASS" --class=debug_menuclass --class=debug_json --class=F5tool {
set pager=1
vt_check_plugin_json $vt_plugin_path menu_class $vtoy_iso_part
echo -e "\npress ENTER to exit ..."
echo -en "\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
unset pager
}
menuentry '@VTMENU_JSON_CHK_INJECTION' --class=debug_injection --class=debug_json --class=F5tool {
menuentry "$VTLANG_JSON_CHK_INJECTION" --class=debug_injection --class=debug_json --class=F5tool {
set pager=1
vt_check_plugin_json $vt_plugin_path injection $vtoy_iso_part
echo -e "\npress ENTER to exit ..."
echo -en "\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
unset pager
}
menuentry '@VTMENU_JSON_CHK_AUTO_MEMDISK' --class=debug_automemdisk --class=debug_json --class=F5tool {
menuentry "$VTLANG_JSON_CHK_AUTO_MEMDISK" --class=debug_automemdisk --class=debug_json --class=F5tool {
set pager=1
vt_check_plugin_json $vt_plugin_path auto_memdisk $vtoy_iso_part
echo -e "\npress ENTER to exit ..."
echo -en "\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
unset pager
}
menuentry '@VTMENU_JSON_CHK_IMG_LIST' --class=debug_imagelist --class=debug_json --class=F5tool {
menuentry "$VTLANG_JSON_CHK_IMG_LIST" --class=debug_imagelist --class=debug_json --class=F5tool {
set pager=1
vt_check_plugin_json $vt_plugin_path image_list $vtoy_iso_part
echo -e "\npress ENTER to exit ..."
echo -en "\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
unset pager
}
menuentry '@VTMENU_JSON_CHK_IMG_BLIST' --class=debug_imageblacklist --class=debug_json --class=F5tool {
menuentry "$VTLANG_JSON_CHK_IMG_BLIST" --class=debug_imageblacklist --class=debug_json --class=F5tool {
set pager=1
vt_check_plugin_json $vt_plugin_path image_blacklist $vtoy_iso_part
echo -e "\npress ENTER to exit ..."
echo -en "\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
unset pager
}
menuentry '@VTMENU_JSON_CHK_CONF_REPLACE' --class=debug_bootconf_replace --class=debug_json --class=F5tool {
menuentry "$VTLANG_JSON_CHK_CONF_REPLACE" --class=debug_bootconf_replace --class=debug_json --class=F5tool {
set pager=1
vt_check_plugin_json $vt_plugin_path conf_replace $vtoy_iso_part
echo -e "\npress ENTER to exit ..."
echo -en "\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
unset pager
}
menuentry '@VTMENU_JSON_CHK_DUD' --class=debug_dud --class=debug_json --class=F5tool {
menuentry "$VTLANG_JSON_CHK_DUD" --class=debug_dud --class=debug_json --class=F5tool {
set pager=1
vt_check_plugin_json $vt_plugin_path dud $vtoy_iso_part
echo -e "\npress ENTER to exit ..."
echo -en "\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
unset pager
}
menuentry '@VTMENU_JSON_CHK_PASSWORD' --class=debug_pwd --class=debug_json --class=F5tool {
menuentry "$VTLANG_JSON_CHK_PASSWORD" --class=debug_pwd --class=debug_json --class=F5tool {
set pager=1
vt_check_plugin_json $vt_plugin_path password $vtoy_iso_part
echo -e "\npress ENTER to exit ..."
echo -en "\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
unset pager
}
menuentry '@VTMENU_RETURN_PREVIOUS' --class=vtoyret VTOY_RET {
echo 'Return ...'
menuentry "$VTLANG_RETURN_PREVIOUS" --class=vtoyret VTOY_RET {
echo "Return ..."
}
}
menuentry '@VTMENU_RETURN_PREVIOUS' --class=vtoyret VTOY_RET {
echo 'Return ...'
menuentry "$VTLANG_RETURN_PREVIOUS" --class=vtoyret VTOY_RET {
echo "Return ..."
}

View File

@@ -16,6 +16,12 @@
#
#************************************************************************************
if [ "$grub_platform" = "pc" ]; then
insmod setkey
insmod regexp
insmod video_fb
fi
function ventoy_pause {
echo "press Enter to continue ......"
read vtTmpPause
@@ -85,7 +91,7 @@ function ventoy_ext_menu {
unset ventoy_new_context
else
echo "ventoy_grub.cfg NOT exist."
echo -e "\npress ENTER to exit ..."
echo -en "\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
fi
}
@@ -846,6 +852,13 @@ function uefi_linux_menu_func {
configfile "mem:${vt_sys_menu_mem_addr}:size:${vt_sys_menu_mem_size}"
fi
fi
if [ $vtback_cfg_find -eq 0 ]; then
if [ -f (loop)/boot/isolinux/syslnx64.cfg ]; then
syslinux_configfile (loop)/boot/isolinux/syslnx64.cfg
set vtback_cfg_find=1
fi
fi
if [ "$vtback_cfg_find" = "0" ]; then
echo " "
@@ -1313,6 +1326,13 @@ function legacy_linux_menu_func {
configfile "mem:${vt_sys_menu_mem_addr}:size:${vt_sys_menu_mem_size}"
fi
fi
if [ $vtback_cfg_find -eq 0 ]; then
if [ -f (loop)/boot/isolinux/syslnx64.cfg ]; then
syslinux_configfile (loop)/boot/isolinux/syslnx64.cfg
set vtback_cfg_find=1
fi
fi
vt_unset_boot_opt
set root=$vtback_root
@@ -1481,7 +1501,7 @@ function iso_common_menuentry {
echo -e "\n $vt_volume_space $vt_chosen_size $vt_chosen_size_mod\n"
echo -e "\n The size of the iso file \"$vt_chosen_size\" is invalid. File corrupted ?\n"
echo -e " 此ISO文件的大小 \"$vt_chosen_size\" 有问题,请确认文件是否损坏。\n"
echo -e "\n press ENTER to continue (请按 回车 键继续) ..."
echo -en "\n$VTLANG_ENTER_CONTINUE ..."
read vtInputKey
fi
fi
@@ -1569,7 +1589,7 @@ function miso_common_menuentry {
function common_unsupport_menuentry {
echo -e "\n The name of the iso file could NOT contain space or non-ascii characters. \n"
echo -e " 文件名中不能有中文或空格 \n"
echo -e "\npress ENTER to exit (请按 回车 键返回) ..."
echo -en "\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
}
@@ -1716,7 +1736,7 @@ function vhd_common_menuentry {
echo -e "!!! WARNING !!!\n"
echo -e "\nPartition1 ($vtoy_iso_fs) is NOT ntfs, the VHD(x) file may not boot normally \n"
echo -e "\nVHD(x) 文件所在分区不是 ntfs 格式, 可能无法正常启动 \n\n"
echo -n "press ENTER to continue boot (请按 回车 键继续) ..."
echo -en "\n$VTLANG_ENTER_CONTINUE ..."
read vtInputKey
fi
fi
@@ -1825,7 +1845,7 @@ function vtoy_unsupport_menuentry {
function only_uefi_tip {
echo -e "\n This IMG file is only supported in UEFI mode. \n"
echo -e "\n press ENTER to exit ..."
echo -en "\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
}
@@ -2083,7 +2103,7 @@ function ventoy_img_openwrt {
ventoy_gui_console
echo -e "\n ventoy_openwrt.xz not found. Please refer https://www.ventoy.net/en/doc_openwrt.html.\n"
echo -e " 未找到 ventoy_openwrt.xz 文件。请参考 https://www.ventoy.net/cn/doc_openwrt.html\n"
echo -e "\n press ENTER to exit (请按 回车 键返回) ..."
echo -en "\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
ventoy_cli_console
return
@@ -2215,7 +2235,7 @@ function ventoy_img_memtest86 {
function img_unsupport_tip {
echo -e "\n This IMG file is NOT supported now. \n"
echo -e " 当前不支持启动此 IMG 文件 \n"
echo -e "\npress ENTER to exit (请按 回车 键返回) ..."
echo -en "\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
}
@@ -2314,14 +2334,15 @@ function img_common_menuentry {
elif [ -f (vtimghd,2)/loader/entries/ubos.conf ]; then
ventoy_img_ubos
elif [ -f (vtimghd,2)/etc/openwrt_version ]; then
ventoy_img_openwrt
elif [ -f (vtimghd,1)/efi/boot/mt86.png ]; then
if [ "$grub_platform" = "pc" ]; then
img_unsupport_tip
else
ventoy_img_memtest86
fi
ventoy_img_openwrt
else
if [ -f (vtimghd,1)/efi/boot/mt86.png ]; then
if [ "$grub_platform" = "pc" ]; then
img_unsupport_tip
fi
fi
#common chain
vt_linux_chain_data "${vtoy_iso_part}${vt_chosen_path}"
ventoy_acpi_param ${vtoy_chain_mem_addr} 512
if [ "$grub_platform" = "pc" ]; then
@@ -2346,6 +2367,28 @@ function img_unsupport_menuentry {
common_unsupport_menuentry
}
function mimg_common_menuentry {
vt_chosen_img_path vt_chosen_path vt_chosen_size vt_chosen_name
if vt_check_password "${vt_chosen_path}"; then
return
fi
echo "memdisk mode boot for $vt_chosen_path"
echo ""
ventoy_debug_pause
if [ "$grub_platform" = "pc" ]; then
legacy_img_memdisk $vtoy_iso_part "$vt_chosen_path"
else
vt_load_img_memdisk "$vtoy_iso_part$vt_chosen_path" vtoy_img_buf
ventoy_cli_console
chainloader ${vtoy_path}/ventoy_${VTOY_EFI_ARCH}.efi memdisk env_param=${env_param} isoefi=${LoadIsoEfiDriver} ${vtdebug_flag} mem:${vtoy_img_buf_addr}:size:${vtoy_img_buf_size}
boot
ventoy_gui_console
fi
}
#############################################################
#############################################################
#############################################################
@@ -2354,7 +2397,7 @@ function img_unsupport_menuentry {
#############################################################
#############################################################
set VENTOY_VERSION="1.0.83"
set VENTOY_VERSION="1.0.86"
#ACPI not compatible with Window7/8, so disable by default
set VTOY_PARAM_NO_ACPI=1
@@ -2457,9 +2500,9 @@ else
fi
if [ -n "$VTOY_MENU_LANGUAGE" ]; then
vt_load_menu_lang "$VTOY_MENU_LANGUAGE"
vt_init_menu_lang "$VTOY_MENU_LANGUAGE"
else
vt_load_menu_lang en_US
vt_init_menu_lang en_US
fi
if [ -n "$VTOY_MENU_TIMEOUT" ]; then
@@ -2512,7 +2555,11 @@ elif [ "$vtoy_display_mode" = "serial_console" ]; then
fi
terminal_input serial console
terminal_output serial console
else
else
if [ "$vtoy_res_fit" = "1" ]; then
terminal_output gfxterm
fi
if [ -n "$vtoy_theme" ]; then
vt_set_theme
else

View File

@@ -0,0 +1,18 @@
L - اختيار اللغة
F1 - عرض معلومات المساعدة
F2 - استعراض وتشغيل الملفات في القرص المحلي
F3 - تبديل وضع القائمة بين Treeview <-> ListView
F4 - تشغيل ويندوز / لينكس على القرص المحلي
F5 - الأدوات المساعده
F6 - تحميل قائمة Grub2 المخصصة
F7 - التبديل بين وضع الواجهة الرسومية <-> وضع النص
m / Ctrl + m - تحقق من صحة الملفات الصور (md5 / sha1 / sha256 / sha512)
d / Ctrl + d - وضع Memdisk (فقط للصغير WinPE / LiveCD ISO / IMG)
w / Ctrl + w - وضع WIMBOOT (فقط للويندوز القياسي ISO)
r / Ctrl + r - وضع Grub2 (يدعم بعض توزيعات لينكس)
i / Ctrl + i - وضع متوافق (فقط للتدقيق)
u / Ctrl + u - تحميل برنامج التشغيل EFI ISO (فقط للتدقيق، غير مستخدم رسمي)
اضغط على ESC للعودة ......

View File

@@ -1,8 +1,8 @@
L - Language Select
F1 - Display this help information
F2 - Browse and boot files in local disk
F1 - Display help information
F2 - Browse and boot files in the local disk
F3 - Switch menu mode between Treeview <-> ListView
F4 - Boot Windows/Linux in local disk
F4 - Boot Windows/Linux on the local disk
F5 - Utilities
F6 - Load Custom Grub2 Menu
F7 - Switch between GUI Mode <-> TEXT Mode
@@ -11,8 +11,8 @@ m/Ctrl+m - Checksum image files (md5/sha1/sha256/sha512)
d/Ctrl+d - Memdisk Mode (Only for small WinPE/LiveCD ISO/IMG)
w/Ctrl+w - WIMBOOT Mode (Only for standard Windows ISO)
r/Ctrl+r - Grub2 Mode (Only for some Linux distros)
i/Ctrl+i - Compatible Mode (Just only for debug)
u/Ctrl+u - Load ISO efi driver (Just only for debug, can not be used officially)
i/Ctrl+i - Compatible Mode (Only for debugging)
u/Ctrl+u - Load ISO EFI driver (Only for debugging, cannot be used officially)

View File

@@ -1,19 +1,19 @@
L - Sélection de la langue
F1 - Afficher cette aide
F2 - Browse and boot files in local disk
F3 - Basculer l'affichage 'Vue en arbre' <-> 'Vue en liste'
F4 - Démarrer le système Windows/Linux local
F1 - Afficher laide
F2 - Démarrer à partir dun disque local
F3 - Basculer laffichage Vue en arbre <-> Vue en liste
F4 - Démarrer un système Windows ou Linux local
F5 - Utilitaires
F6 - Charger le menu Grub2 personnalisé
F6 - Charger le menu GRUB 2 personnalisé
F7 - Basculer entre le mode graphique <-> mode texte
m/Ctrl+m - Somme de contrôle des images (md5/sha1/sha256/sha512)
d/Ctrl+d - Mode Memdisk (Seulement pour WinPE/LiveCD ISO/IMG)
w/Ctrl+w - Mode WIMBOOT (seulement pour les images standards Windows)
r/Ctrl+r - Mode Grub2 (seulement pour quelques Linux)
i/Ctrl+i - Mode Compatible (seulement à fins de tests)
u/Ctrl+u - Load ISO efi driver (Just only for debug, can not be used officially)
d/Ctrl+d - Mode Memdisk (pour WinPE/LiveCD ISO/IMG uniquement)
w/Ctrl+w - Mode WIMBOOT (pour images standards Windows uniquement)
r/Ctrl+r - Mode GRUB 2 (pour quelques distributions Linux uniquement)
i/Ctrl+i - Mode Compatible (pour débug uniquement)
u/Ctrl+u - Charger lISO dun pilote EFI (pour débug uniquement)
Appuyer sur Echap pour sortir ......
Appuyer sur Echap pour sortir

View File

@@ -0,0 +1,19 @@
L - Nyelv kiválasztása
F1 - Jelenítse meg ezt a súgóinformációt
F2 - A helyi lemezen lévő fájlok böngészése és indítása
F3 - Menü mód váltása Fanézet <-> Listanézet között
F4 - Windows/Linux indítása helyi lemezről
F5 - Segédprogramok
F6 - Egyéni Grub2 menü betöltése
F7 - Váltás Grafikus mód <-> Szövege mód között
m/Ctrl+m - Image fájlok ell.összege (md5/sha1/sha256/sha512)
d/Ctrl+d - Memdisk mód (Csak kis WinPE/LiveCD ISO/IMG esetén)
w/Ctrl+w - WIMBOOT mód (Csak szabványos Windows ISO esetében)
r/Ctrl+r - Grub2 mód (Csak néhány Linux disztró esetében)
i/Ctrl+i - Kompatibilis mód (Csak hibakeresésre)
u/Ctrl+u - ISO efi driver betöltés (Csak hibakeresésre, hivatalosan nem használható.)
Nyomjon ESC-et a visszatéréshez ......

View File

@@ -1,8 +1,8 @@
L - Pilih Bahasa
F1 - Tampilkan bantuan informasi ini
F2 - Browse and boot files in local disk
F2 - Jelajah dan jalankan boot berkas pada disk lokal
F3 - Beralih mode menu antara Treeview <-> ListView
F4 - Jalankan (boot) Windows/Linux pada disk lokal
F4 - Jalankan boot ke Windows/Linux pada disk lokal
F5 - Alat Utilitas
F6 - Memuat ubah suai Grub2 Menu
F7 - Beralih antara mode GUI <-> Mode TEXT

View File

@@ -0,0 +1,19 @@
L - ინტერფეისის ენის არჩევა
F1 - დამხმარე ინფორმაციის ჩვენება
F2 - ლოკალური დისკის ფაილების დათვალიერება და ჩატვირთვა
F3 - ჩვენების რეჟიმებს შორის გადართვა 'ხის ხედი' <-> 'სიის ხედი'
F4 - ლოკალური დისკიდან Windows/Linux-ის ჩატვირთვა
F5 - ხელსაწყოები
F6 - მომხმარებლის მიერ შექმნილი Grub2 მენიუს ჩატვირთვა
F7 - ჩვენების რეჟიმის გადართვა 'გრაფიკული' <-> 'ტექსტური'
m/Ctrl+m - ფაილის საკონტროლო ჯამის შემოწმება (md5/sha1/sha256/sha512)
d/Ctrl+d - Memdisk რეჟიმი (განკუთვნილია მხოლოდ პატარა ზომის WinPE/LiveCD ISO/IMG დისტრიბუტივებისთვის)
w/Ctrl+w - WIMBOOT რეჟიმი (განკუთვნილია მხოლოდ სტანდარტული Windows ISO დისტრიბუტივებისთვის)
r/Ctrl+r - Grub2 რეჟიმი (განკუთვნილია მხოლოდ ზოგიერთი Linux დისტრიბუტივებისთვის)
i/Ctrl+i - თავსებადი რეჟიმი (განკუთვნილია მხოლოდ გამართვისთვის)
u/Ctrl+u - ISO EFI დრაივერის ჩატვირთვა (განკუთვნილია მხოლოდ გამართვისთვის, დაუშვებელია ოფიციალური გამოყენება)
დააჭირეთ ESC დაბრუნებისთვის ......

View File

@@ -1,18 +1,18 @@
L - 언어 선택
F1 - 이 도움말 정보 표시
F2 - 로컬 디스크에서 파일 찾아보기 및 부
F2 - 로컬 디스크에서 파일 찾아보기 및 부
F3 - 트리보기 <-> 목록보기 간에 메뉴 모드 전환
F4 - 로컬 디스크에서 Windows/Linux 부
F4 - 로컬 디스크에서 Windows/Linux 부
F5 - 유틸리티
F6 - 사용자 지정 Grub2 메뉴 로드
F6 - 사용자 지정 Grub2 메뉴 불러오기
F7 - GUI 모드 <-> TEXT 모드 간에 전환
m/Ctrl+m - 체크섬 이미지 파일 (md5/sha1/sha256/sha512)
d/Ctrl+d - WIMBOOT 모드 (표준 Windows ISO 전용)
w/Ctrl+w - Memdisk 모드 (작은 WinPE/LiveCD ISO/IMG 전용)
d/Ctrl+d - Memdisk 모드 (작은 WinPE/LiveCD ISO/IMG 전용)
w/Ctrl+w - WIMBOOT 모드 (표준 Windows ISO 전용)
r/Ctrl+r - Grub2 모드 (일부 Linux 배포판에만 해당)
i/Ctrl+i - 호환 모드 (디버그 전용)
u/Ctrl+u - ISO eFi 드라이버 로드 (디버그 전용, 공식적으로 사용할 수 없음)
u/Ctrl+u - ISO EFI 드라이버 불러오기 (디버그 전용, 공식적으로 사용할 수 없음)

View File

@@ -0,0 +1,19 @@
L - Wybierz język
F1 — Wyświetl informacje pomocy
F2 — przeglądanie i uruchamianie plików na dysku lokalnym
F3 — Przełącz tryb menu pomiędzy Treeview <-> ListView
F4 — Uruchom system Windows/Linux na dysku lokalnym
F5 — Narzędzia
F6 — Załaduj niestandardowe menu Grub2
F7 - Przełączanie między trybem GUI <-> trybem TEKST
m/Ctrl+m — Pliki obrazów z sumą kontrolną (md5/sha1/sha256/sha512)
d/Ctrl+d — Tryb Memdisk (tylko dla małych WinPE/LiveCD ISO/IMG)
w/Ctrl+w — tryb WIMBOOT (tylko dla standardowego systemu Windows ISO)
r/Ctrl+r — tryb Grub2 (tylko dla niektórych dystrybucji Linuksa)
i/Ctrl+i — tryb zgodności (tylko do debugowania)
u/Ctrl+u — Załaduj sterownik ISO EFI (tylko do debugowania, nie można go oficjalnie używać)
Naciśnij ESC, aby wrócić...

View File

@@ -1,6 +1,6 @@
L - Selecionar Idioma
L - Selecionar idioma
F1 - Mostra esta informação de ajuda
F2 - Browse and boot files in local disk
F2 - Navegar e arrancar ficheiros em disco local
F3 - Alternar o modo menu entre Vista de árvore <-> Vista de lista
F4 - Arrancar o Windows/Linux em disco local
F5 - Utilitários

View File

@@ -0,0 +1,19 @@
L - மொழி தேர்வு
F1 - இந்த உதவித் தகவலைக் காட்டு
F2 - உள்ளூர் வட்டில் கோப்புகளை உலாவவும் துவக்கவும்
F3 - Treeview (மரப்பார்வை) <-> ListView (பட்டியல்பார்வை) இடையே மெனு பயன்முறையை மாற்றவும்
F4 - விண்டோஸ்/லினக்ஸை உள்ளூர் வட்டில் துவக்கவும்
F5 - பயன்பாடுகள்
F6 - தனிப்பயன் Grub2 மெனுவை ஏற்றவும்
F7 - GUI பயன்முறை <-> TEXT பயன்முறைக்கு இடையில் மாறவும்
m/Ctrl+m - செக்சம் படக் கோப்புகள் (md5/sha1/sha256/sha512)
d/Ctrl+d - Memdisk பயன்முறை (சிறிய WinPE/LiveCD ISO/IMGக்கு மட்டும்)
w/Ctrl+w - WIMBOOT பயன்முறை (நிலையான Windows ISO க்கு மட்டும்)
r/Ctrl+r - Grub2 பயன்முறை (சில லினக்ஸ் டிஸ்ட்ரோக்களுக்கு மட்டும்)
i/Ctrl+i - இணக்கமான பயன்முறை (பிழைத்திருத்தத்திற்கு மட்டும்)
u/Ctrl+u - ISO efi இயக்கியை ஏற்றவும் (பிழைத்திருத்தத்திற்கு மட்டும், அதிகாரப்பூர்வமாக பயன்படுத்த முடியாது)
திரும்புவதற்கு ESC ஐ அழுத்தவும் ......

View File

@@ -0,0 +1,18 @@
L - 選擇語言
F1 - 顯示本説明資訊
F2 - 瀏覽並啟動本地硬碟中的映像檔
F3 - 功能表顯示模式切換。可在清單模式和目錄模式之間自由切換。
F4 - 啟動本地硬碟上的 Windows/Linux 等系統。
F5 - 各類工具
F6 - 載入自訂 GRUB2 選單。
F7 - 介面在文字模式和圖形模式之間切換。
m/Ctrl+m - 計算檔案校驗值md5/sha1/sha256/sha512
d/Ctrl+d - MEMDISK 模式,把檔載入到記憶體啟動(只適用於檔很小的 WinPE/LiveCD等
w/Ctrl+w - WIMBOOT 模式 (只適用於標準的 Windows ISO檔
r/Ctrl+r - Grub2 模式 (只適用於常見的一些 Linux 系統ISO檔
i/Ctrl+i - 相容模式 (只用作調試目的,不能正式使用)
u/Ctrl+u - 載入 ISO efi 驅動(只用作調試目的,不能正式使用)
按 ESC 鍵返回 ......

View File

@@ -1,4 +1,4 @@
menuentry '@VTMENU_HWINFO' --class=debug_hwinfo --class=F5tool {
menuentry "$VTLANG_HWINFO" --class=debug_hwinfo --class=F5tool {
smbios -t 4 -s 0x10 --set=cpu_brand
set system_vendor="-";
@@ -56,6 +56,6 @@ menuentry '@VTMENU_HWINFO' --class=debug_hwinfo --class=F5tool {
echo "BIOS ROM Size $bios_size"
echo -e "\n\n\npress ENTER to exit ..."
echo -en "\n\n\n$VTLANG_ENTER_EXIT ..."
read vtInputKey
}

View File

@@ -26,7 +26,7 @@ sfs: fshelp
reiserfs: fshelp
part_sunpc:
zstd:
gfxmenu: video_colors trig gfxterm bitmap_scale font normal video bitmap
gfxmenu: video_colors trig bitmap_scale gfxterm font normal video bitmap
backtrace:
jfs:
help: extcmd normal
@@ -121,7 +121,7 @@ ehci: cs5536 usb boot
crypto:
part_bsd: part_msdos
cs5536:
ventoy: ext2 fshelp elf btrfs font crypto gcry_md5 exfat udf div extcmd datetime normal video gcry_sha1 mmap iso9660
ventoy: ext2 fshelp elf btrfs crypto font gcry_md5 exfat udf datetime div extcmd normal video gcry_sha1 mmap iso9660
gcry_sha512: crypto
password: crypto normal
fshelp:

View File

@@ -26,7 +26,7 @@ sfs: fshelp
reiserfs: fshelp
part_sunpc:
zstd:
gfxmenu: video_colors trig gfxterm bitmap_scale font normal video bitmap
gfxmenu: video_colors trig bitmap_scale gfxterm font normal video bitmap
backtrace:
jfs:
help: extcmd normal
@@ -124,7 +124,7 @@ crypto:
part_bsd: part_msdos
cs5536: pci
biosdisk:
ventoy: elf fshelp ext2 btrfs font crypto gcry_md5 exfat udf div extcmd datetime normal video gcry_sha1 iso9660 acpi
ventoy: ext2 fshelp elf btrfs crypto font gcry_md5 exfat udf div extcmd datetime normal video gcry_sha1 iso9660 acpi
lsapm:
gcry_sha512: crypto
password: crypto normal

Binary file not shown.

Binary file not shown.

View File

@@ -1,4 +1,4 @@
submenu "@VTMENU_KEYBRD_LAYOUT" --class=debug_krdlayout --class=F5tool {
submenu "$VTLANG_KEYBRD_LAYOUT" --class=debug_krdlayout --class=F5tool {
menuentry QWERTY_USA --class=debug_kbd --class=debug_krdlayout --class=F5tool {
set_keyboard_layout QWERTY_USA
}

View File

@@ -1,6 +1,6 @@
if [ "$grub_platform" = "pc" ]; then
menuentry '@VTMENU_LB_SBOOT_WINDOWS' --class=boot_windows --class=F4boot {
menuentry "$VTLANG_LB_SBOOT_WINDOWS" --class=boot_windows --class=F4boot {
set partid=3
while [ $partid -le 128 ]; do
@@ -38,7 +38,7 @@ if [ "$grub_platform" = "pc" ]; then
fi
}
menuentry '@VTMENU_LB_SBOOT_G4D' --class=boot_g4d --class=F4boot {
menuentry "$VTLANG_LB_SBOOT_G4D" --class=boot_g4d --class=F4boot {
if search -n -s -f /grldr; then
ntldr /grldr
else
@@ -46,19 +46,19 @@ if [ "$grub_platform" = "pc" ]; then
fi
}
menuentry '@VTMENU_LB_SBOOT_HDD1' --class=boot_disk --class=F4boot {
menuentry "$VTLANG_LB_SBOOT_HDD1" --class=boot_disk --class=F4boot {
set root=(hd0,1)
chainloader +1
boot
}
menuentry '@VTMENU_LB_SBOOT_HDD2' --class=boot_disk --class=F4boot {
menuentry "$VTLANG_LB_SBOOT_HDD2" --class=boot_disk --class=F4boot {
set root=(hd1,1)
chainloader +1
boot
}
menuentry '@VTMENU_LB_SBOOT_HDD3' --class=boot_disk --class=F4boot {
menuentry "$VTLANG_LB_SBOOT_HDD3" --class=boot_disk --class=F4boot {
set root=(hd2,1)
chainloader +1
boot
@@ -66,7 +66,7 @@ if [ "$grub_platform" = "pc" ]; then
else
menuentry '@VTMENU_LB_SBOOT_WINDOWS' --class=boot_windows --class=F4boot {
menuentry "$VTLANG_LB_SBOOT_WINDOWS" --class=boot_windows --class=F4boot {
set partid=3
while [ $partid -le 128 ]; do
@@ -102,7 +102,7 @@ else
}
if [ "$grub_cpu" = "i386" ]; then
menuentry '@VTMENU_LB_SBOOT_IA32EFI' --class=boot_uefi --class=F4boot {
menuentry "$VTLANG_LB_SBOOT_IA32EFI" --class=boot_uefi --class=F4boot {
set VTOY_SEARCH_NO_VTOYEFI=1
if search -n -s -f /efi/boot/bootia32.efi; then
unset VTOY_SEARCH_NO_VTOYEFI
@@ -115,7 +115,7 @@ else
fi
}
menuentry '@VTMENU_LB_SBOOT_XORBOOT' --class=boot_xorboot --class=F4boot {
menuentry "$VTLANG_LB_SBOOT_XORBOOT" --class=boot_xorboot --class=F4boot {
set VTOY_SEARCH_NO_VTOYEFI=1
if search -n -s -f /efi/xorboot/xorboot32.xor; then
unset VTOY_SEARCH_NO_VTOYEFI
@@ -132,7 +132,7 @@ else
fi
}
elif [ "$grub_cpu" = "arm64" ]; then
menuentry '@VTMENU_LB_SBOOT_AA64EFI' --class=boot_uefi --class=F4boot {
menuentry "$VTLANG_LB_SBOOT_AA64EFI" --class=boot_uefi --class=F4boot {
set VTOY_SEARCH_NO_VTOYEFI=1
if search -n -s -f /efi/boot/bootaa64.efi; then
unset VTOY_SEARCH_NO_VTOYEFI
@@ -145,7 +145,7 @@ else
fi
}
else
menuentry '@VTMENU_LB_SBOOT_X64EFI' --class=boot_uefi --class=F4boot {
menuentry "$VTLANG_LB_SBOOT_X64EFI" --class=boot_uefi --class=F4boot {
set VTOY_SEARCH_NO_VTOYEFI=1
if search -n -s -f /efi/boot/bootx64.efi; then
unset VTOY_SEARCH_NO_VTOYEFI
@@ -158,7 +158,7 @@ else
fi
}
menuentry '@VTMENU_LB_SBOOT_XORBOOT' --class=boot_xorboot --class=F4boot {
menuentry "$VTLANG_LB_SBOOT_XORBOOT" --class=boot_xorboot --class=F4boot {
set VTOY_SEARCH_NO_VTOYEFI=1
if search -n -s -f /efi/xorboot/xorboot.xor; then
unset VTOY_SEARCH_NO_VTOYEFI
@@ -179,6 +179,6 @@ else
fi
menuentry '@VTMENU_RETURN_PREVIOUS' --class=vtoyret VTOY_RET {
echo 'Return ...'
menuentry "$VTLANG_RETURN_PREVIOUS" --class=vtoyret VTOY_RET {
echo "Return ..."
}

View File

@@ -0,0 +1,78 @@
{
"VTLANG_LANGUAGE_NAME": "Arabic (العربية)",
"VTLANG_STR_HOTKEY_LIST": "L: لغه F1: مساعدة F2: تصفح F3: عرض قائمه F4: اقلا محلي F5: أدوات F6: عوده",
"VTLANG_STR_HOTKEY_TREE": "L: لغه F1: مساعدة F2: تصفح F3: عرض تصنيف F4: اقلاع محلي F5: أدوات F6: عوده",
"VTLANG_RETURN_PREVIOUS": "عودة إلى القائمة السابقة [Esc]",
"VTLANG_MENU_LANG": "اختيار اللغة في القائمة",
"VTLANG_LB_SBOOT_WINDOWS": "البحث والإقلاع على ويندوز",
"VTLANG_LB_SBOOT_G4D": "البحث والإقلاع على Grub4dos",
"VTLANG_LB_SBOOT_HDD1": "الإقلاع على القرص المحلي الأول",
"VTLANG_LB_SBOOT_HDD2": "الإقلاع على القرص المحلي الثاني",
"VTLANG_LB_SBOOT_HDD3": "الإقلاع على القرص المحلي الثالث",
"VTLANG_LB_SBOOT_X64EFI": "البحث والإقلاع على BOOTX64.EFI",
"VTLANG_LB_SBOOT_IA32EFI": "البحث والإقلاع على BOOTIA32.EFI",
"VTLANG_LB_SBOOT_AA64EFI": "البحث والإقلاع على BOOTAA64.EFI",
"VTLANG_LB_SBOOT_XORBOOT": "البحث والإقلاع على xorboot",
"VTLANG_FILE_CHKSUM": "مجموعة التحقق من الملفات",
"VTLANG_CHKSUM_MD5_CALC": "حساب md5sum",
"VTLANG_CHKSUM_SHA1_CALC": "حساب sha1sum",
"VTLANG_CHKSUM_SHA256_CALC": "حساب sha256sum",
"VTLANG_CHKSUM_SHA512_CALC": "حساب sha512sum",
"VTLANG_CHKSUM_MD5_CALC_CHK": "حساب وتحقق md5sum",
"VTLANG_CHKSUM_SHA1_CALC_CHK": "حساب وتحقق sha1sum",
"VTLANG_CHKSUM_SHA256_CALC_CHK": "حساب وتحقق sha256sum",
"VTLANG_CHKSUM_SHA512_CALC_CHK": "حساب وتحقق sha512sum",
"VTLANG_POWER": "الطاقة",
"VTLANG_POWER_REBOOT": "إعادة التشغيل",
"VTLANG_POWER_HALT": "إيقاف",
"VTLANG_POWER_BOOT_EFIFW": "إعادة التشغيل إلى إعداد EFI",
"VTLANG_KEYBRD_LAYOUT": "تخطيطات لوحة المفاتيح",
"VTLANG_HWINFO": "معلومات الأجهزة الأساسية",
"VTLANG_RESOLUTION_CFG": "تكوين الدقة",
"VTLANG_SCREEN_MODE": "وضع عرض الشاشة",
"VTLANG_SCREEN_TEXT_MODE": "القيام بتحديد وضع النص",
"VTLANG_SCREEN_GUI_MODE": "القيام بتحديد وضع الرسومات",
"VTLANG_THEME_SELECT": "اختيار الموضوع",
"VTLANG_UEFI_UTIL": "Ventoy UEFI Utilities",
"VTLANG_UTIL_SHOW_EFI_DRV": "عرض برامج تشغيل EFI",
"VTLANG_UTIL_FIX_BLINIT_FAIL": "إصلاح فشل تهيئة Windows BlinitializeLibrary",
"VTLANG_JSON_CHK_JSON": "التحقق من تكوين json للبرنامج الإضافي (ventoy.json)",
"VTLANG_JSON_CHK_CONTROL": "التحقق من تكوين برنامج الإضافي العام للتحكم",
"VTLANG_JSON_CHK_THEME": "التحقق من تكوين برنامج الإضافي الخاص بالموضوع",
"VTLANG_JSON_CHK_AUTOINS": "التحقق من تكوين برنامج الإضافي للتثبيت التلقائي",
"VTLANG_JSON_CHK_PERSIST": "التحقق من تكوين برنامج الإضافي المستمر",
"VTLANG_JSON_CHK_MENU_ALIAS": "التحقق من تكوين برنامج الإضافي الخاص بالقائمة المستعارة",
"VTLANG_JSON_CHK_MENU_TIP": "التحقق من تكوين برنامج الإضافي الخاص بتلميح القائمة",
"VTLANG_JSON_CHK_MENU_CLASS": "التحقق من تكوين برنامج الإضافي الخاص بفئة القائمة",
"VTLANG_JSON_CHK_INJECTION": "التحقق من تكوين برنامج الإضافي الخاص بالتدخل",
"VTLANG_JSON_CHK_AUTO_MEMDISK": "التحقق من تكوين برنامج الإضافي الخاص بالتثبيت التلقائي لـ memdisk",
"VTLANG_JSON_CHK_IMG_LIST": "التحقق من تكوين برنامج الإضافي الخاص بقائمة الصور",
"VTLANG_JSON_CHK_IMG_BLIST": "التحقق من تكوين برنامج الإضافي الخاص بقائمة سوداء للصور",
"VTLANG_JSON_CHK_CONF_REPLACE": "التحقق من تكوين برنامج الإضافي الخاص باستبدال ملف التكوين للإقلاع",
"VTLANG_JSON_CHK_DUD": "التحقق من تكوين برنامج الإضافي الخاص بـ dud",
"VTLANG_JSON_CHK_PASSWORD": "التحقق من تكوين برنامج الإضافي الخاص بكلمة المرور",
"VTLANG_NORMAL_MODE": "الإقلاع في الوضع العادي",
"VTLANG_WIMBOOT_MODE": "الإقلاع في وضع wimboot",
"VTLANG_GRUB2_MODE": "الإقلاع في وضع grub2",
"VTLANG_MEMDISK_MODE": "الإقلاع في وضع memdisk",
"VTLANG_RET_TO_LISTVIEW": "العودة إلى ListView",
"VTLANG_RET_TO_TREEVIEW": "العودة إلى TreeView",
"VTLANG_NO_AUTOINS_SCRIPT": "الإقلاع بدون قالب التثبيت التلقائي",
"VTLANG_AUTOINS_USE": "الإقلاع مع",
"VTLANG_NO_PERSIST": "الإقلاع بدون الاستمرارية",
"VTLANG_PERSIST_USE": "الإقلاع مع",
"VTLANG_BROWER_RETURN": "العودة",
"VTLANG_ENTER_EXIT": "اضغط على مفتاح Enter للخروج",
"VTLANG_ENTER_REBOOT": "اضغط على مفتاح Enter لإعادة التشغيل",
"VTLANG_ENTER_CONTINUE": "اضغط على مفتاح Enter للمتابعة",
"VTLANG_CTRL_TEMP_SET": "Temporary Control Settings",
"VTLANG_WIN11_BYPASS_CHECK": "Bypass CPU/TPM/SecureBoot check when install Windows 11",
"VTLANG_WIN11_BYPASS_NRO": "Bypass online account requirement when install Windows 11",
"VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux",
"VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu",
"MENU_STR_XXX": ""
}

View File

@@ -1,81 +1,92 @@
{
"VTMENU_LANGUAGE_NAME": "Bengali (বাংলা)",
"VTLANG_LANGUAGE_NAME": "Bengali (বাংলা)",
"VTMENU_STR_HOTKEY_LIST": "L:ভাষা F1:সাহায্য F2:Browser F3:ListView F4:Localboot F5:Tools F6:ExMenu",
"VTMENU_STR_HOTKEY_TREE": "L:ভাষা F1:সাহায্য F2:Browser F3:TreeView F4:Localboot F5:Tools F6:ExMenu",
"VTMENU_RETURN_PREVIOUS": "পূর্ববর্তী মেনুতে ফিরে যান [Esc]",
"VTLANG_STR_HOTKEY_LIST": "L:ভাষা F1:সাহায্য F2:Browser F3:ListView F4:Localboot F5:Tools F6:ExMenu",
"VTLANG_STR_HOTKEY_TREE": "L:ভাষা F1:সাহায্য F2:Browser F3:TreeView F4:Localboot F5:Tools F6:ExMenu",
"VTLANG_RETURN_PREVIOUS": "পূর্ববর্তী মেনুতে ফিরে যান [Esc]",
"VTMENU_MENU_LANG": "মেনু ভাষা নির্বাচন করুন",
"VTLANG_MENU_LANG": "মেনু ভাষা নির্বাচন করুন",
"VTMENU_LB_SBOOT_WINDOWS": "Windows অনুসন্ধান করুন এবং বুট করুন",
"VTMENU_LB_SBOOT_G4D": "Grub4dos অনুসন্ধান করুন এবং বুট করুন",
"VTMENU_LB_SBOOT_HDD1": "১ম(1st) স্থানীয় ডিস্ক বুট করুন",
"VTMENU_LB_SBOOT_HDD2": "২য়(2nd) স্থানীয় ডিস্ক বুট করুন",
"VTMENU_LB_SBOOT_HDD3": "3য়(3rd) স্থানীয় ডিস্ক বুট করুন",
"VTMENU_LB_SBOOT_X64EFI": "BOOTX64.EFI অনুসন্ধান করুন এবং বুট করুন",
"VTMENU_LB_SBOOT_IA32EFI": "BOOTIA32.EFI অনুসন্ধান করুন এবং বুট করুন",
"VTMENU_LB_SBOOT_AA64EFI": "BOOTAA64.EFI অনুসন্ধান করুন এবং বুট করুন",
"VTMENU_LB_SBOOT_XORBOOT": "xorboot অনুসন্ধান করুন এবং বুট করুন",
"VTLANG_LB_SBOOT_WINDOWS": "Windows অনুসন্ধান করুন এবং বুট করুন",
"VTLANG_LB_SBOOT_G4D": "Grub4dos অনুসন্ধান করুন এবং বুট করুন",
"VTLANG_LB_SBOOT_HDD1": "১ম(1st) স্থানীয় ডিস্ক বুট করুন",
"VTLANG_LB_SBOOT_HDD2": "২য়(2nd) স্থানীয় ডিস্ক বুট করুন",
"VTLANG_LB_SBOOT_HDD3": "3য়(3rd) স্থানীয় ডিস্ক বুট করুন",
"VTLANG_LB_SBOOT_X64EFI": "BOOTX64.EFI অনুসন্ধান করুন এবং বুট করুন",
"VTLANG_LB_SBOOT_IA32EFI": "BOOTIA32.EFI অনুসন্ধান করুন এবং বুট করুন",
"VTLANG_LB_SBOOT_AA64EFI": "BOOTAA64.EFI অনুসন্ধান করুন এবং বুট করুন",
"VTLANG_LB_SBOOT_XORBOOT": "xorboot অনুসন্ধান করুন এবং বুট করুন",
"VTMENU_FILE_CHKSUM": "ফাইল চেকসাম",
"VTMENU_CHKSUM_MD5_CALC": "md5sum গণনা করুন",
"VTMENU_CHKSUM_SHA1_CALC": "sha1sum গণনা করুন",
"VTMENU_CHKSUM_SHA256_CALC": "sha256sum গণনা করুন",
"VTMENU_CHKSUM_SHA512_CALC": "sha512sum গণনা করুন",
"VTMENU_CHKSUM_MD5_CALC_CHK": "গণনা করুন এবং md5sum চেক করুন",
"VTMENU_CHKSUM_SHA1_CALC_CHK": "গণনা করুন এবং sha1sum চেক করুন",
"VTMENU_CHKSUM_SHA256_CALC_CHK": "গণনা করুন এবং sha256sum চেক করুন",
"VTMENU_CHKSUM_SHA512_CALC_CHK": "গণনা করুন এবং sha512sum চেক করুন",
"VTLANG_FILE_CHKSUM": "ফাইল চেকসাম",
"VTLANG_CHKSUM_MD5_CALC": "md5sum গণনা করুন",
"VTLANG_CHKSUM_SHA1_CALC": "sha1sum গণনা করুন",
"VTLANG_CHKSUM_SHA256_CALC": "sha256sum গণনা করুন",
"VTLANG_CHKSUM_SHA512_CALC": "sha512sum গণনা করুন",
"VTLANG_CHKSUM_MD5_CALC_CHK": "গণনা করুন এবং md5sum চেক করুন",
"VTLANG_CHKSUM_SHA1_CALC_CHK": "গণনা করুন এবং sha1sum চেক করুন",
"VTLANG_CHKSUM_SHA256_CALC_CHK": "গণনা করুন এবং sha256sum চেক করুন",
"VTLANG_CHKSUM_SHA512_CALC_CHK": "গণনা করুন এবং sha512sum চেক করুন",
"VTMENU_POWER": "পাওয়ার",
"VTMENU_POWER_REBOOT": "রিবুট",
"VTMENU_POWER_HALT": "হল্ট",
"VTMENU_POWER_BOOT_EFIFW": "EFI সেটআপে রিবুট করুন",
"VTLANG_POWER": "পাওয়ার",
"VTLANG_POWER_REBOOT": "রিবুট",
"VTLANG_POWER_HALT": "হল্ট",
"VTLANG_POWER_BOOT_EFIFW": "EFI সেটআপে রিবুট করুন",
"VTMENU_KEYBRD_LAYOUT": "কীবোর্ড লেআউট",
"VTMENU_HWINFO": "হার্ডওয়্যার তথ্য",
"VTLANG_KEYBRD_LAYOUT": "কীবোর্ড লেআউট",
"VTLANG_HWINFO": "হার্ডওয়্যার তথ্য",
"VTMENU_RESOLUTION_CFG": "রেজোলিউশন কনফিগারেশন",
"VTMENU_SCREEN_MODE": "Screen Display মোড",
"VTMENU_SCREEN_TEXT_MODE": "Force Text মোড",
"VTMENU_SCREEN_GUI_MODE": "Force Graphics মোড",
"VTLANG_RESOLUTION_CFG": "রেজোলিউশন কনফিগারেশন",
"VTLANG_SCREEN_MODE": "Screen Display মোড",
"VTLANG_SCREEN_TEXT_MODE": "Force Text মোড",
"VTLANG_SCREEN_GUI_MODE": "Force Graphics মোড",
"VTMENU_THEME_SELECT": "থিম নির্বাচন করুন",
"VTLANG_THEME_SELECT": "থিম নির্বাচন করুন",
"VTMENU_UTIL_SHOW_EFI_DRV": "EFI ড্রাইভার দেখান",
"VTMENU_UTIL_FIX_BLINIT_FAIL": "Windows BlinitializeLibrary ব্যর্থতার সমাধান করুন",
"VTLANG_UEFI_UTIL": "Ventoy UEFI ইউটিলিটিস",
"VTLANG_UTIL_SHOW_EFI_DRV": "EFI ড্রাইভার দেখান",
"VTLANG_UTIL_FIX_BLINIT_FAIL": "Windows BlinitializeLibrary ব্যর্থতার সমাধান করুন",
"VTMENU_JSON_CHK_JSON": "প্লাগইন json কনফিগারেশন পরীক্ষা করুন (ventoy.json)",
"VTMENU_JSON_CHK_CONTROL": "গ্লোবাল কন্ট্রোল প্লাগইন কনফিগারেশন চেক করুন",
"VTMENU_JSON_CHK_THEME": "থিম প্লাগইন কনফিগারেশন পরীক্ষা করুন",
"VTMENU_JSON_CHK_AUTOINS": "অটো ইন্সটল প্লাগইন কনফিগারেশন চেক করুন",
"VTMENU_JSON_CHK_PERSIST": "persistence প্লাগইন কনফিগারেশন পরীক্ষা করুন",
"VTMENU_JSON_CHK_MENU_ALIAS": "menu alias প্লাগইন কনফিগারেশন পরীক্ষা করুন",
"VTMENU_JSON_CHK_MENU_TIP": "menu tip প্লাগইন কনফিগারেশন পরীক্ষা করুন",
"VTMENU_JSON_CHK_MENU_CLASS": "menu class প্লাগইন কনফিগারেশন পরীক্ষা করুন",
"VTMENU_JSON_CHK_INJECTION": "injection প্লাগইন কনফিগারেশন পরীক্ষা করুন",
"VTMENU_JSON_CHK_AUTO_MEMDISK": "auto memdisk প্লাগইন কনফিগারেশন পরীক্ষা করুন",
"VTMENU_JSON_CHK_IMG_LIST": "image list প্লাগইন কনফিগারেশন পরীক্ষা করুন",
"VTMENU_JSON_CHK_IMG_BLIST": "image blacklist প্লাগইন কনফিগারেশন পরীক্ষা করুন",
"VTMENU_JSON_CHK_CONF_REPLACE": "boot conf replace প্লাগইন কনফিগারেশন পরীক্ষা করুন",
"VTMENU_JSON_CHK_DUD": "dud প্লাগইন কনফিগারেশন পরীক্ষা করুন",
"VTMENU_JSON_CHK_PASSWORD": "password প্লাগইন কনফিগারেশন পরীক্ষা করুন",
"VTLANG_JSON_CHK_JSON": "প্লাগইন json কনফিগারেশন পরীক্ষা করুন (ventoy.json)",
"VTLANG_JSON_CHK_CONTROL": "গ্লোবাল কন্ট্রোল প্লাগইন কনফিগারেশন চেক করুন",
"VTLANG_JSON_CHK_THEME": "থিম প্লাগইন কনফিগারেশন পরীক্ষা করুন",
"VTLANG_JSON_CHK_AUTOINS": "অটো ইন্সটল প্লাগইন কনফিগারেশন চেক করুন",
"VTLANG_JSON_CHK_PERSIST": "persistence প্লাগইন কনফিগারেশন পরীক্ষা করুন",
"VTLANG_JSON_CHK_MENU_ALIAS": "menu alias প্লাগইন কনফিগারেশন পরীক্ষা করুন",
"VTLANG_JSON_CHK_MENU_TIP": "menu tip প্লাগইন কনফিগারেশন পরীক্ষা করুন",
"VTLANG_JSON_CHK_MENU_CLASS": "menu class প্লাগইন কনফিগারেশন পরীক্ষা করুন",
"VTLANG_JSON_CHK_INJECTION": "injection প্লাগইন কনফিগারেশন পরীক্ষা করুন",
"VTLANG_JSON_CHK_AUTO_MEMDISK": "auto memdisk প্লাগইন কনফিগারেশন পরীক্ষা করুন",
"VTLANG_JSON_CHK_IMG_LIST": "image list প্লাগইন কনফিগারেশন পরীক্ষা করুন",
"VTLANG_JSON_CHK_IMG_BLIST": "image blacklist প্লাগইন কনফিগারেশন পরীক্ষা করুন",
"VTLANG_JSON_CHK_CONF_REPLACE": "boot conf replace প্লাগইন কনফিগারেশন পরীক্ষা করুন",
"VTLANG_JSON_CHK_DUD": "dud প্লাগইন কনফিগারেশন পরীক্ষা করুন",
"VTLANG_JSON_CHK_PASSWORD": "password প্লাগইন কনফিগারেশন পরীক্ষা করুন",
"VTMENU_NORMAL_MODE": "সাধারণ মোডে বুট করুন",
"VTMENU_WIMBOOT_MODE": "wimboot মোডে বুট করুন",
"VTMENU_GRUB2_MODE": "grub2 মোডে বুট করুন",
"VTMENU_MEMDISK_MODE": "memdisk মোডে বুট করুন",
"VTLANG_NORMAL_MODE": "সাধারণ মোডে বুট করুন",
"VTLANG_WIMBOOT_MODE": "wimboot মোডে বুট করুন",
"VTLANG_GRUB2_MODE": "grub2 মোডে বুট করুন",
"VTLANG_MEMDISK_MODE": "memdisk মোডে বুট করুন",
"VTMENU_RET_TO_LISTVIEW": "ListView-এ ফিরে যান",
"VTMENU_RET_TO_TREEVIEW": "TreeView-এ ফিরে যান",
"VTLANG_RET_TO_LISTVIEW": "ListView-এ ফিরে যান",
"VTLANG_RET_TO_TREEVIEW": "TreeView-এ ফিরে যান",
"VTMENU_NO_AUTOINS_SCRIPT": "auto install মোড বিনা বুট করুন",
"VTMENU_AUTOINS_USE": "দিয়ে বুট করুন",
"VTLANG_NO_AUTOINS_SCRIPT": "auto install মোড বিনা বুট করুন",
"VTLANG_AUTOINS_USE": "দিয়ে বুট করুন",
"VTMENU_NO_PERSIST": "persistence বিনা বুট করুন",
"VTMENU_PERSIST_USE": "দিয়ে বুট করুন",
"VTLANG_NO_PERSIST": "persistence বিনা বুট করুন",
"VTLANG_PERSIST_USE": "দিয়ে বুট করুন",
"VTMENU_BROWER_RETURN": "ফিরে",
"VTLANG_BROWER_RETURN": "ফিরে",
"VTLANG_ENTER_EXIT": "প্রস্থান করার জন্য এন্টার কী টিপুন",
"VTLANG_ENTER_REBOOT": "রিবুট করতে এন্টার কী টিপুন",
"VTLANG_ENTER_CONTINUE": "চালিয়ে যেতে এন্টার কী টিপুন",
"VTLANG_CTRL_TEMP_SET": "অস্থায়ী নিয়ন্ত্রণ সেটিংস",
"VTLANG_WIN11_BYPASS_CHECK": "Windows 11 ইনস্টল করার সময় CPU/TPM/SecureBoot চেক বাইপাস করুন",
"VTLANG_WIN11_BYPASS_NRO": "Windows 11 ইনস্টল করার সময় অনলাইন অ্যাকাউন্টের প্রয়োজন বাইপাস করুন",
"VTLANG_LINUX_REMOUNT": "লিনাক্স বুটের পরে ভেন্টয় পার্টিশনটি মাউন্ট করুন",
"VTLANG_SECONDARY_BOOT_MENU": "গৌণ বুট মেনু দেখান",
"MENU_STR_XXX": ""
}

View File

@@ -1,81 +1,92 @@
{
"VTMENU_LANGUAGE_NAME": "German (Deutsch)",
"VTLANG_LANGUAGE_NAME": "German (Deutsch)",
"VTMENU_STR_HOTKEY_LIST": "L:Sprache F1:Hilfe F2:Browser F3:Listenansicht F4:Lokaler Start F5:Werkzeuge F6:Erweitert",
"VTMENU_STR_HOTKEY_TREE": "L:Sprache F1:Hilfe F2:Browser F3:Listenansicht F4:Lokaler Start F5:Werkzeuge F6:Erweitert",
"VTMENU_RETURN_PREVIOUS": "Zu vorherigem Menü [Esc]",
"VTLANG_STR_HOTKEY_LIST": "L:Sprache F1:Hilfe F2:Browser F3:Listenansicht F4:Lokaler Start F5:Werkzeuge F6:Erweitert",
"VTLANG_STR_HOTKEY_TREE": "L:Sprache F1:Hilfe F2:Browser F3:Listenansicht F4:Lokaler Start F5:Werkzeuge F6:Erweitert",
"VTLANG_RETURN_PREVIOUS": "Zu vorherigem Menü [Esc]",
"VTMENU_MENU_LANG": "Menüsprache auswählen",
"VTLANG_MENU_LANG": "Menüsprache auswählen",
"VTMENU_LB_SBOOT_WINDOWS": "Windows suchen und starten",
"VTMENU_LB_SBOOT_G4D": "Grub4dos suchen und starten",
"VTMENU_LB_SBOOT_HDD1": "Vom ersten lokalen Datenträger starten",
"VTMENU_LB_SBOOT_HDD2": "Vom zweiten lokalen Datenträger starten",
"VTMENU_LB_SBOOT_HDD3": "Vom dritten lokalen Datenträger starten",
"VTMENU_LB_SBOOT_X64EFI": "BOOTX64.EFI suchen und starten",
"VTMENU_LB_SBOOT_IA32EFI": "BOOTIA32.EFI suchen und starten",
"VTMENU_LB_SBOOT_AA64EFI": "BOOTAA64.EFI suchen und starten",
"VTMENU_LB_SBOOT_XORBOOT": "xorboot suchen und starten",
"VTLANG_LB_SBOOT_WINDOWS": "Windows suchen und starten",
"VTLANG_LB_SBOOT_G4D": "Grub4dos suchen und starten",
"VTLANG_LB_SBOOT_HDD1": "Vom ersten lokalen Datenträger starten",
"VTLANG_LB_SBOOT_HDD2": "Vom zweiten lokalen Datenträger starten",
"VTLANG_LB_SBOOT_HDD3": "Vom dritten lokalen Datenträger starten",
"VTLANG_LB_SBOOT_X64EFI": "BOOTX64.EFI suchen und starten",
"VTLANG_LB_SBOOT_IA32EFI": "BOOTIA32.EFI suchen und starten",
"VTLANG_LB_SBOOT_AA64EFI": "BOOTAA64.EFI suchen und starten",
"VTLANG_LB_SBOOT_XORBOOT": "xorboot suchen und starten",
"VTMENU_FILE_CHKSUM": "Dateiprüfsumme",
"VTMENU_CHKSUM_MD5_CALC": "md5sum berechnen",
"VTMENU_CHKSUM_SHA1_CALC": "sha1sum berechnen",
"VTMENU_CHKSUM_SHA256_CALC": "sha256sum berechnen",
"VTMENU_CHKSUM_SHA512_CALC": "sha512sum berechnen",
"VTMENU_CHKSUM_MD5_CALC_CHK": "md5sum berechnen und prüfen",
"VTMENU_CHKSUM_SHA1_CALC_CHK": "sha1sum berechnen und prüfen",
"VTMENU_CHKSUM_SHA256_CALC_CHK": "sha256sum berechnen und prüfen",
"VTMENU_CHKSUM_SHA512_CALC_CHK": "sha512sum berechnen und prüfen",
"VTLANG_FILE_CHKSUM": "Dateiprüfsumme",
"VTLANG_CHKSUM_MD5_CALC": "md5sum berechnen",
"VTLANG_CHKSUM_SHA1_CALC": "sha1sum berechnen",
"VTLANG_CHKSUM_SHA256_CALC": "sha256sum berechnen",
"VTLANG_CHKSUM_SHA512_CALC": "sha512sum berechnen",
"VTLANG_CHKSUM_MD5_CALC_CHK": "md5sum berechnen und prüfen",
"VTLANG_CHKSUM_SHA1_CALC_CHK": "sha1sum berechnen und prüfen",
"VTLANG_CHKSUM_SHA256_CALC_CHK": "sha256sum berechnen und prüfen",
"VTLANG_CHKSUM_SHA512_CALC_CHK": "sha512sum berechnen und prüfen",
"VTMENU_POWER": "Power",
"VTMENU_POWER_REBOOT": "Neustart",
"VTMENU_POWER_HALT": "Herunterfahren",
"VTMENU_POWER_BOOT_EFIFW": "Neustart in EFI-Konfiguration",
"VTLANG_POWER": "Power",
"VTLANG_POWER_REBOOT": "Neustart",
"VTLANG_POWER_HALT": "Herunterfahren",
"VTLANG_POWER_BOOT_EFIFW": "Neustart in EFI-Konfiguration",
"VTMENU_KEYBRD_LAYOUT": "Tastaturlayout",
"VTMENU_HWINFO": "Hardwareinformationen",
"VTLANG_KEYBRD_LAYOUT": "Tastaturlayout",
"VTLANG_HWINFO": "Hardwareinformationen",
"VTMENU_RESOLUTION_CFG": "Auflösungseinstellungen",
"VTMENU_SCREEN_MODE": "Bildschirmanzeigemodus",
"VTMENU_SCREEN_TEXT_MODE": "Textmodus erzwingen",
"VTMENU_SCREEN_GUI_MODE": "Grafikmodus erzwingen",
"VTLANG_RESOLUTION_CFG": "Auflösungseinstellungen",
"VTLANG_SCREEN_MODE": "Bildschirmanzeigemodus",
"VTLANG_SCREEN_TEXT_MODE": "Textmodus erzwingen",
"VTLANG_SCREEN_GUI_MODE": "Grafikmodus erzwingen",
"VTMENU_THEME_SELECT": "Design auswählen",
"VTLANG_THEME_SELECT": "Design auswählen",
"VTMENU_UTIL_SHOW_EFI_DRV": "EFI-Treiber anzeigen",
"VTMENU_UTIL_FIX_BLINIT_FAIL": "Windows BlinitializeLibrary Fehler beheben",
"VTLANG_UEFI_UTIL": "Ventoy UEFI-Dienstprogramme",
"VTLANG_UTIL_SHOW_EFI_DRV": "EFI-Treiber anzeigen",
"VTLANG_UTIL_FIX_BLINIT_FAIL": "Windows BlinitializeLibrary Fehler beheben",
"VTMENU_JSON_CHK_JSON": "Konfiguration des JSON-Plugins prüfen (ventoy.json)",
"VTMENU_JSON_CHK_CONTROL": "Konfiguration des Plugins für die allgemeine Kontrolle prüfen",
"VTMENU_JSON_CHK_THEME": "Konfiguration des Design-Plugins prüfen",
"VTMENU_JSON_CHK_AUTOINS": "Konfiguration des Plugins für die automatische Installation prüfen",
"VTMENU_JSON_CHK_PERSIST": "Konfiguration des Persistenz-Plugins prüfen",
"VTMENU_JSON_CHK_MENU_ALIAS": "Konfiguration des Menü-Alias-Plugin prüfen",
"VTMENU_JSON_CHK_MENU_TIP": "Konfiguration des Menütipp-Plugins prüfen",
"VTMENU_JSON_CHK_MENU_CLASS": "Konfiguration des Menüklassen-Plugins prüfen",
"VTMENU_JSON_CHK_INJECTION": "Konfiguration des Injektions-Plugins prüfen",
"VTMENU_JSON_CHK_AUTO_MEMDISK": "Konfiguration des auto-memdisk-Plugins prüfen",
"VTMENU_JSON_CHK_IMG_LIST": "Konfiguration des Abbild-Listen-Plugins prüfen",
"VTMENU_JSON_CHK_IMG_BLIST": "Konfiguration des Abbild-Sperrlisten-Plugins prüfen",
"VTMENU_JSON_CHK_CONF_REPLACE": "Konfiguration des Boot-Conf-Replace-Plugins prüfen",
"VTMENU_JSON_CHK_DUD": "Konfiguration des dud-Plugins prüfen",
"VTMENU_JSON_CHK_PASSWORD": "Konfiguration des Passwort-Plugins prüfen",
"VTLANG_JSON_CHK_JSON": "Konfiguration des JSON-Plugins prüfen (ventoy.json)",
"VTLANG_JSON_CHK_CONTROL": "Konfiguration des Plugins für die allgemeine Kontrolle prüfen",
"VTLANG_JSON_CHK_THEME": "Konfiguration des Design-Plugins prüfen",
"VTLANG_JSON_CHK_AUTOINS": "Konfiguration des Plugins für die automatische Installation prüfen",
"VTLANG_JSON_CHK_PERSIST": "Konfiguration des Persistenz-Plugins prüfen",
"VTLANG_JSON_CHK_MENU_ALIAS": "Konfiguration des Menü-Alias-Plugin prüfen",
"VTLANG_JSON_CHK_MENU_TIP": "Konfiguration des Menütipp-Plugins prüfen",
"VTLANG_JSON_CHK_MENU_CLASS": "Konfiguration des Menüklassen-Plugins prüfen",
"VTLANG_JSON_CHK_INJECTION": "Konfiguration des Injektions-Plugins prüfen",
"VTLANG_JSON_CHK_AUTO_MEMDISK": "Konfiguration des auto-memdisk-Plugins prüfen",
"VTLANG_JSON_CHK_IMG_LIST": "Konfiguration des Abbild-Listen-Plugins prüfen",
"VTLANG_JSON_CHK_IMG_BLIST": "Konfiguration des Abbild-Sperrlisten-Plugins prüfen",
"VTLANG_JSON_CHK_CONF_REPLACE": "Konfiguration des Boot-Conf-Replace-Plugins prüfen",
"VTLANG_JSON_CHK_DUD": "Konfiguration des dud-Plugins prüfen",
"VTLANG_JSON_CHK_PASSWORD": "Konfiguration des Passwort-Plugins prüfen",
"VTMENU_NORMAL_MODE": "In Normal-Modus starten",
"VTMENU_WIMBOOT_MODE": "In wimboot-Modus starten",
"VTMENU_GRUB2_MODE": "In grub2-Modus starten",
"VTMENU_MEMDISK_MODE": "In memdisk-Modus starten",
"VTLANG_NORMAL_MODE": "In Normal-Modus starten",
"VTLANG_WIMBOOT_MODE": "In wimboot-Modus starten",
"VTLANG_GRUB2_MODE": "In grub2-Modus starten",
"VTLANG_MEMDISK_MODE": "In memdisk-Modus starten",
"VTMENU_RET_TO_LISTVIEW": "Zurück zur Listenansicht",
"VTMENU_RET_TO_TREEVIEW": "Zurück zur Baumansicht",
"VTLANG_RET_TO_LISTVIEW": "Zurück zur Listenansicht",
"VTLANG_RET_TO_TREEVIEW": "Zurück zur Baumansicht",
"VTMENU_NO_AUTOINS_SCRIPT": "Ohne Vorlage für die automatische Installation starten",
"VTMENU_AUTOINS_USE": "Start mit",
"VTLANG_NO_AUTOINS_SCRIPT": "Ohne Vorlage für die automatische Installation starten",
"VTLANG_AUTOINS_USE": "Start mit",
"VTMENU_NO_PERSIST": "Ohne Persistenz starten",
"VTMENU_PERSIST_USE": "Start mit",
"VTLANG_NO_PERSIST": "Ohne Persistenz starten",
"VTLANG_PERSIST_USE": "Start mit",
"VTMENU_BROWER_RETURN": "Zurück",
"VTLANG_BROWER_RETURN": "Zurück",
"VTLANG_ENTER_EXIT": "Drücken Sie zum Beenden die Eingabetaste",
"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": "Temporäre Steuerungseinstellungen",
"VTLANG_WIN11_BYPASS_CHECK": "Umgehen Sie die CPU/TPM/SecureBoot-Prüfung bei der Installation von Windows 11",
"VTLANG_WIN11_BYPASS_NRO": "Umgehen Sie die Online-Kontoanforderung bei der Installation von Windows 11",
"VTLANG_LINUX_REMOUNT": "Mounten Sie die Ventoy-Partition nach dem Booten von Linux",
"VTLANG_SECONDARY_BOOT_MENU": "Sekundäres Bootmenü anzeigen",
"MENU_STR_XXX": ""
}

View File

@@ -1,81 +1,92 @@
{
"VTMENU_LANGUAGE_NAME": "English (English)",
"VTLANG_LANGUAGE_NAME": "English (English)",
"VTMENU_STR_HOTKEY_LIST": "L:Language F1:Help F2:Browse F3:ListView F4:Localboot F5:Tools F6:ExMenu",
"VTMENU_STR_HOTKEY_TREE": "L:Language F1:Help F2:Browse F3:TreeView F4:Localboot F5:Tools F6:ExMenu",
"VTMENU_RETURN_PREVIOUS": "Return to previous menu [Esc]",
"VTLANG_STR_HOTKEY_LIST": "L:Language F1:Help F2:Browse F3:ListView F4:Localboot F5:Tools F6:ExMenu",
"VTLANG_STR_HOTKEY_TREE": "L:Language F1:Help F2:Browse F3:TreeView F4:Localboot F5:Tools F6:ExMenu",
"VTLANG_RETURN_PREVIOUS": "Return to previous menu [Esc]",
"VTMENU_MENU_LANG": "Menu Language Select",
"VTLANG_MENU_LANG": "Menu Language Select",
"VTMENU_LB_SBOOT_WINDOWS": "Search and boot Windows",
"VTMENU_LB_SBOOT_G4D": "Search and boot Grub4dos",
"VTMENU_LB_SBOOT_HDD1": "Boot the 1st local disk",
"VTMENU_LB_SBOOT_HDD2": "Boot the 2nd local disk",
"VTMENU_LB_SBOOT_HDD3": "Boot the 3rd local disk",
"VTMENU_LB_SBOOT_X64EFI": "Search and boot BOOTX64.EFI",
"VTMENU_LB_SBOOT_IA32EFI": "Search and boot BOOTIA32.EFI",
"VTMENU_LB_SBOOT_AA64EFI": "Search and boot BOOTAA64.EFI",
"VTMENU_LB_SBOOT_XORBOOT": "Search and boot xorboot",
"VTLANG_LB_SBOOT_WINDOWS": "Search and boot Windows",
"VTLANG_LB_SBOOT_G4D": "Search and boot Grub4dos",
"VTLANG_LB_SBOOT_HDD1": "Boot the 1st local disk",
"VTLANG_LB_SBOOT_HDD2": "Boot the 2nd local disk",
"VTLANG_LB_SBOOT_HDD3": "Boot the 3rd local disk",
"VTLANG_LB_SBOOT_X64EFI": "Search and boot BOOTX64.EFI",
"VTLANG_LB_SBOOT_IA32EFI": "Search and boot BOOTIA32.EFI",
"VTLANG_LB_SBOOT_AA64EFI": "Search and boot BOOTAA64.EFI",
"VTLANG_LB_SBOOT_XORBOOT": "Search and boot xorboot",
"VTMENU_FILE_CHKSUM": "File checksum",
"VTMENU_CHKSUM_MD5_CALC": "Calculate md5sum",
"VTMENU_CHKSUM_SHA1_CALC": "Calculate sha1sum",
"VTMENU_CHKSUM_SHA256_CALC": "Calculate sha256sum",
"VTMENU_CHKSUM_SHA512_CALC": "Calculate sha512sum",
"VTMENU_CHKSUM_MD5_CALC_CHK": "Calculate and check md5sum",
"VTMENU_CHKSUM_SHA1_CALC_CHK": "Calculate and check sha1sum",
"VTMENU_CHKSUM_SHA256_CALC_CHK": "Calculate and check sha256sum",
"VTMENU_CHKSUM_SHA512_CALC_CHK": "Calculate and check sha512sum",
"VTLANG_FILE_CHKSUM": "File checksum",
"VTLANG_CHKSUM_MD5_CALC": "Calculate md5sum",
"VTLANG_CHKSUM_SHA1_CALC": "Calculate sha1sum",
"VTLANG_CHKSUM_SHA256_CALC": "Calculate sha256sum",
"VTLANG_CHKSUM_SHA512_CALC": "Calculate sha512sum",
"VTLANG_CHKSUM_MD5_CALC_CHK": "Calculate and check md5sum",
"VTLANG_CHKSUM_SHA1_CALC_CHK": "Calculate and check sha1sum",
"VTLANG_CHKSUM_SHA256_CALC_CHK": "Calculate and check sha256sum",
"VTLANG_CHKSUM_SHA512_CALC_CHK": "Calculate and check sha512sum",
"VTMENU_POWER": "Power",
"VTMENU_POWER_REBOOT": "Reboot",
"VTMENU_POWER_HALT": "Halt",
"VTMENU_POWER_BOOT_EFIFW": "Reboot to EFI setup",
"VTLANG_POWER": "Power",
"VTLANG_POWER_REBOOT": "Reboot",
"VTLANG_POWER_HALT": "Halt",
"VTLANG_POWER_BOOT_EFIFW": "Reboot to EFI setup",
"VTMENU_KEYBRD_LAYOUT": "Keyboard Layouts",
"VTMENU_HWINFO": "Hardware Information",
"VTLANG_KEYBRD_LAYOUT": "Keyboard Layouts",
"VTLANG_HWINFO": "Hardware Information",
"VTMENU_RESOLUTION_CFG": "Resolution Configuration",
"VTMENU_SCREEN_MODE": "Screen Display Mode",
"VTMENU_SCREEN_TEXT_MODE": "Force Text Mode",
"VTMENU_SCREEN_GUI_MODE": "Force Graphics Mode",
"VTLANG_RESOLUTION_CFG": "Resolution Configuration",
"VTLANG_SCREEN_MODE": "Screen Display Mode",
"VTLANG_SCREEN_TEXT_MODE": "Force Text Mode",
"VTLANG_SCREEN_GUI_MODE": "Force Graphics Mode",
"VTMENU_THEME_SELECT": "Theme Select",
"VTLANG_THEME_SELECT": "Theme Select",
"VTMENU_UTIL_SHOW_EFI_DRV": "Show EFI Drivers",
"VTMENU_UTIL_FIX_BLINIT_FAIL": "Fixup Windows BlinitializeLibrary Failure",
"VTLANG_UEFI_UTIL": "Ventoy UEFI Utilities",
"VTLANG_UTIL_SHOW_EFI_DRV": "Show EFI Drivers",
"VTLANG_UTIL_FIX_BLINIT_FAIL": "Fixup Windows BlinitializeLibrary Failure",
"VTMENU_JSON_CHK_JSON": "Check plugin json configuration (ventoy.json)",
"VTMENU_JSON_CHK_CONTROL": "Check global control plugin configuration",
"VTMENU_JSON_CHK_THEME": "Check theme plugin configuration",
"VTMENU_JSON_CHK_AUTOINS": "Check auto install plugin configuration",
"VTMENU_JSON_CHK_PERSIST": "Check persistence plugin configuration",
"VTMENU_JSON_CHK_MENU_ALIAS": "Check menu alias plugin configuration",
"VTMENU_JSON_CHK_MENU_TIP": "Check menu tip plugin configuration",
"VTMENU_JSON_CHK_MENU_CLASS": "Check menu class plugin configuration",
"VTMENU_JSON_CHK_INJECTION": "Check injection plugin configuration",
"VTMENU_JSON_CHK_AUTO_MEMDISK": "Check auto memdisk plugin configuration",
"VTMENU_JSON_CHK_IMG_LIST": "Check image list plugin configuration",
"VTMENU_JSON_CHK_IMG_BLIST": "Check image blacklist plugin configuration",
"VTMENU_JSON_CHK_CONF_REPLACE": "Check boot conf replace plugin configuration",
"VTMENU_JSON_CHK_DUD": "Check dud plugin configuration",
"VTMENU_JSON_CHK_PASSWORD": "Check password plugin configuration",
"VTLANG_JSON_CHK_JSON": "Check plugin json configuration (ventoy.json)",
"VTLANG_JSON_CHK_CONTROL": "Check global control plugin configuration",
"VTLANG_JSON_CHK_THEME": "Check theme plugin configuration",
"VTLANG_JSON_CHK_AUTOINS": "Check auto install plugin configuration",
"VTLANG_JSON_CHK_PERSIST": "Check persistence plugin configuration",
"VTLANG_JSON_CHK_MENU_ALIAS": "Check menu alias plugin configuration",
"VTLANG_JSON_CHK_MENU_TIP": "Check menu tip plugin configuration",
"VTLANG_JSON_CHK_MENU_CLASS": "Check menu class plugin configuration",
"VTLANG_JSON_CHK_INJECTION": "Check injection plugin configuration",
"VTLANG_JSON_CHK_AUTO_MEMDISK": "Check auto memdisk plugin configuration",
"VTLANG_JSON_CHK_IMG_LIST": "Check image list plugin configuration",
"VTLANG_JSON_CHK_IMG_BLIST": "Check image blacklist plugin configuration",
"VTLANG_JSON_CHK_CONF_REPLACE": "Check boot conf replace plugin configuration",
"VTLANG_JSON_CHK_DUD": "Check dud plugin configuration",
"VTLANG_JSON_CHK_PASSWORD": "Check password plugin configuration",
"VTMENU_NORMAL_MODE": "Boot in normal mode",
"VTMENU_WIMBOOT_MODE": "Boot in wimboot mode",
"VTMENU_GRUB2_MODE": "Boot in grub2 mode",
"VTMENU_MEMDISK_MODE": "Boot in memdisk mode",
"VTLANG_NORMAL_MODE": "Boot in normal mode",
"VTLANG_WIMBOOT_MODE": "Boot in wimboot mode",
"VTLANG_GRUB2_MODE": "Boot in grub2 mode",
"VTLANG_MEMDISK_MODE": "Boot in memdisk mode",
"VTMENU_RET_TO_LISTVIEW": "Return to ListView",
"VTMENU_RET_TO_TREEVIEW": "Return to TreeView",
"VTLANG_RET_TO_LISTVIEW": "Return to ListView",
"VTLANG_RET_TO_TREEVIEW": "Return to TreeView",
"VTMENU_NO_AUTOINS_SCRIPT": "Boot without auto installation template",
"VTMENU_AUTOINS_USE": "Boot with",
"VTLANG_NO_AUTOINS_SCRIPT": "Boot without auto installation template",
"VTLANG_AUTOINS_USE": "Boot with",
"VTMENU_NO_PERSIST": "Boot without persistence",
"VTMENU_PERSIST_USE": "Boot with",
"VTLANG_NO_PERSIST": "Boot without persistence",
"VTLANG_PERSIST_USE": "Boot with",
"VTMENU_BROWER_RETURN": "Return",
"VTLANG_BROWER_RETURN": "Return",
"VTLANG_ENTER_EXIT": "press Enter key to exit",
"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 CPU/TPM/SecureBoot check when install Windows 11",
"VTLANG_WIN11_BYPASS_NRO": "Bypass online account requirement when install Windows 11",
"VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux",
"VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu",
"MENU_STR_XXX": ""
}

View File

@@ -1,81 +1,92 @@
{
"VTMENU_LANGUAGE_NAME": "French (Français)",
"VTLANG_LANGUAGE_NAME": "French (Français)",
"VTMENU_STR_HOTKEY_LIST": "L:Langue F1:Aider F2:Parcourir F3:AffichageListe F4:Localboot F5:Outils F6:Menu étendu",
"VTMENU_STR_HOTKEY_TREE": "L:Langue F1:Aider F2:Parcourir F3:AffichageListe F4:Localboot F5:Outils F6:Menu étendu",
"VTMENU_RETURN_PREVIOUS": "Retour au menu précédent [Esc]",
"VTLANG_STR_HOTKEY_LIST": "L:Langue F1:Aide F2:Parcourir F3:Affichage liste F4:Démarrage local F5:Outils F6:Menu étendu",
"VTLANG_STR_HOTKEY_TREE": "L:Langue F1:Aide F2:Parcourir F3:Affichage arborescence F4:Démarrage local F5:Outils F6:Menu étendu",
"VTLANG_RETURN_PREVIOUS": "Retour au menu précédent [Echap]",
"VTMENU_MENU_LANG": "Sélection de la langue des menus",
"VTLANG_MENU_LANG": "Sélection de la langue des menus",
"VTMENU_LB_SBOOT_WINDOWS": "Rechercher et démarrer Windows",
"VTMENU_LB_SBOOT_G4D": "Rechercher et démarrer Grub4dos",
"VTMENU_LB_SBOOT_HDD1": "Démarrez le 1er disque local",
"VTMENU_LB_SBOOT_HDD2": "Démarrez le 2ème disque local",
"VTMENU_LB_SBOOT_HDD3": "Démarrez le 3ème disque local",
"VTMENU_LB_SBOOT_X64EFI": "Rechercher et démarrer BOOTX64.EFI",
"VTMENU_LB_SBOOT_IA32EFI": "Rechercher et démarrer BOOTIA32.EFI",
"VTMENU_LB_SBOOT_AA64EFI": "Rechercher et démarrer BOOTAA64.EFI",
"VTMENU_LB_SBOOT_XORBOOT": "Rechercher et démarrer xorboot",
"VTLANG_LB_SBOOT_WINDOWS": "Rechercher et démarrer Windows",
"VTLANG_LB_SBOOT_G4D": "Rechercher et démarrer GRUB4DOS",
"VTLANG_LB_SBOOT_HDD1": "Démarrer depuis le 1er disque local",
"VTLANG_LB_SBOOT_HDD2": "Démarrer depuis le 2e disque local",
"VTLANG_LB_SBOOT_HDD3": "Démarrer depuis le 3e disque local",
"VTLANG_LB_SBOOT_X64EFI": "Rechercher et démarrer BOOTX64.EFI",
"VTLANG_LB_SBOOT_IA32EFI": "Rechercher et démarrer BOOTIA32.EFI",
"VTLANG_LB_SBOOT_AA64EFI": "Rechercher et démarrer BOOTAA64.EFI",
"VTLANG_LB_SBOOT_XORBOOT": "Rechercher et démarrer xorboot",
"VTMENU_FILE_CHKSUM": "Somme de contrôle du fichier",
"VTMENU_CHKSUM_MD5_CALC": "Calculer MD5",
"VTMENU_CHKSUM_SHA1_CALC": "Calculer SHA1",
"VTMENU_CHKSUM_SHA256_CALC": "Calculer SHA256",
"VTMENU_CHKSUM_SHA512_CALC": "Calculer SHA512",
"VTMENU_CHKSUM_MD5_CALC_CHK": "Calculer et vérifier MD5",
"VTMENU_CHKSUM_SHA1_CALC_CHK": "Calculer et vérifier SHA1",
"VTMENU_CHKSUM_SHA256_CALC_CHK": "Calculer et vérifier SHA256",
"VTMENU_CHKSUM_SHA512_CALC_CHK": "Calculer et vérifier SHA512",
"VTLANG_FILE_CHKSUM": "Somme de contrôle du fichier",
"VTLANG_CHKSUM_MD5_CALC": "Calculer MD5",
"VTLANG_CHKSUM_SHA1_CALC": "Calculer SHA1",
"VTLANG_CHKSUM_SHA256_CALC": "Calculer SHA256",
"VTLANG_CHKSUM_SHA512_CALC": "Calculer SHA512",
"VTLANG_CHKSUM_MD5_CALC_CHK": "Calculer et vérifier MD5",
"VTLANG_CHKSUM_SHA1_CALC_CHK": "Calculer et vérifier SHA1",
"VTLANG_CHKSUM_SHA256_CALC_CHK": "Calculer et vérifier SHA256",
"VTLANG_CHKSUM_SHA512_CALC_CHK": "Calculer et vérifier SHA512",
"VTMENU_POWER": "Source d'alimentation",
"VTMENU_POWER_REBOOT": "Redémarrer",
"VTMENU_POWER_HALT": "Éteindre",
"VTMENU_POWER_BOOT_EFIFW": "Redémarrez avec la configuration EFI",
"VTLANG_POWER": "Extinction",
"VTLANG_POWER_REBOOT": "Redémarrer",
"VTLANG_POWER_HALT": "Éteindre",
"VTLANG_POWER_BOOT_EFIFW": "Redémarrer et accéder au menu EFI",
"VTMENU_KEYBRD_LAYOUT": "Dispositions de clavier",
"VTMENU_HWINFO": "Informations sur le matériel",
"VTLANG_KEYBRD_LAYOUT": "Dispositions de clavier",
"VTLANG_HWINFO": "Informations sur le matériel",
"VTMENU_RESOLUTION_CFG": "Configuration de la résolution",
"VTMENU_SCREEN_MODE": "Mode d'affichage",
"VTMENU_SCREEN_TEXT_MODE": "Mode texte",
"VTMENU_SCREEN_GUI_MODE": "Mode graphique",
"VTLANG_RESOLUTION_CFG": "Configuration de la résolution",
"VTLANG_SCREEN_MODE": "Mode daffichage",
"VTLANG_SCREEN_TEXT_MODE": "Mode texte",
"VTLANG_SCREEN_GUI_MODE": "Mode graphique",
"VTMENU_THEME_SELECT": "Sélection de thème",
"VTLANG_THEME_SELECT": "Sélection du thème",
"VTMENU_UTIL_SHOW_EFI_DRV": "Show EFI Drivers",
"VTMENU_UTIL_FIX_BLINIT_FAIL": "Fixup Windows BlinitializeLibrary Failure",
"VTLANG_UEFI_UTIL": "Utilitaires UEFI de Ventoy",
"VTLANG_UTIL_SHOW_EFI_DRV": "Afficher les pilotes EFI",
"VTLANG_UTIL_FIX_BLINIT_FAIL": "Contourner léchec de Windows BlinitializeLibrary",
"VTMENU_JSON_CHK_JSON": "Check plugin json configuration (ventoy.json)",
"VTMENU_JSON_CHK_CONTROL": "Check global control plugin configuration",
"VTMENU_JSON_CHK_THEME": "Check theme plugin configuration",
"VTMENU_JSON_CHK_AUTOINS": "Check auto install plugin configuration",
"VTMENU_JSON_CHK_PERSIST": "Check persistence plugin configuration",
"VTMENU_JSON_CHK_MENU_ALIAS": "Check menu alias plugin configuration",
"VTMENU_JSON_CHK_MENU_TIP": "Check menu tip plugin configuration",
"VTMENU_JSON_CHK_MENU_CLASS": "Check menu class plugin configuration",
"VTMENU_JSON_CHK_INJECTION": "Check injection plugin configuration",
"VTMENU_JSON_CHK_AUTO_MEMDISK": "Check auto memdisk plugin configuration",
"VTMENU_JSON_CHK_IMG_LIST": "Check image list plugin configuration",
"VTMENU_JSON_CHK_IMG_BLIST": "Check image blacklist plugin configuration",
"VTMENU_JSON_CHK_CONF_REPLACE": "Check boot conf replace plugin configuration",
"VTMENU_JSON_CHK_DUD": "Check dud plugin configuration",
"VTMENU_JSON_CHK_PASSWORD": "Check password plugin configuration",
"VTLANG_JSON_CHK_JSON": "Afficher le fichiers de configuration (ventoy.json)",
"VTLANG_JSON_CHK_CONTROL": "Afficher la configuration du plugin de contrôle global",
"VTLANG_JSON_CHK_THEME": "Afficher la configuration du plugin de thème",
"VTLANG_JSON_CHK_AUTOINS": "Afficher la configuration du plugin dinstallation automatique",
"VTLANG_JSON_CHK_PERSIST": "Afficher la configuration du plugin de persistance",
"VTLANG_JSON_CHK_MENU_ALIAS": "Afficher la configuration du plugin des alias du menu",
"VTLANG_JSON_CHK_MENU_TIP": "Afficher la configuration du plugin des astuces du menu",
"VTLANG_JSON_CHK_MENU_CLASS": "Afficher la configuration du plugin des classes du menu",
"VTLANG_JSON_CHK_INJECTION": "Afficher la configuration du plugin dinjection",
"VTLANG_JSON_CHK_AUTO_MEMDISK": "Afficher la configuration du plugin memdisk automatique",
"VTLANG_JSON_CHK_IMG_LIST": "Afficher la configuration du plugin de liste des images",
"VTLANG_JSON_CHK_IMG_BLIST": "Afficher la configuration du plugin de liste noire des images",
"VTLANG_JSON_CHK_CONF_REPLACE": "Afficher la configuration du plugin de substitution des fichiers de démarrage",
"VTLANG_JSON_CHK_DUD": "Afficher la configuration du plugin de disques de mise à jour des pilotes",
"VTLANG_JSON_CHK_PASSWORD": "Afficher la configuration du plugin de mots de passe",
"VTMENU_NORMAL_MODE": "Démarrez en mode normal",
"VTMENU_WIMBOOT_MODE": "Démarrez en mode wimboot",
"VTMENU_GRUB2_MODE": "Démarrez en mode grub2",
"VTMENU_MEMDISK_MODE": "Démarrez en mode memdisk",
"VTLANG_NORMAL_MODE": "Démarrer en mode normal",
"VTLANG_WIMBOOT_MODE": "Démarrer en mode WimBoot",
"VTLANG_GRUB2_MODE": "Démarrer en mode GRUB 2",
"VTLANG_MEMDISK_MODE": "Démarrer en mode Memdisk",
"VTMENU_RET_TO_LISTVIEW": "Revenir à ListView",
"VTMENU_RET_TO_TREEVIEW": "Revenir à TreeView",
"VTLANG_RET_TO_LISTVIEW": "Revenir à laffichage en liste",
"VTLANG_RET_TO_TREEVIEW": "Revenir à laffichage en arborescence",
"VTMENU_NO_AUTOINS_SCRIPT": "Boot without auto installation template",
"VTMENU_AUTOINS_USE": "Boot with",
"VTLANG_NO_AUTOINS_SCRIPT": "Démarrer en ignorant le modèle dauto-installation",
"VTLANG_AUTOINS_USE": "Démarrer en chargeant le modèle dauto-installation",
"VTMENU_NO_PERSIST": "Boot without persistence",
"VTMENU_PERSIST_USE": "Boot with",
"VTLANG_NO_PERSIST": "Démarrer sans persistance",
"VTLANG_PERSIST_USE": "Démarrer avec la persistance",
"VTMENU_BROWER_RETURN": "Revenir",
"VTLANG_BROWER_RETURN": "Retour",
"VTLANG_ENTER_EXIT": "appuyez sur la touche Entrée pour quitter",
"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": "Paramètres de contrôle temporaires",
"VTLANG_WIN11_BYPASS_CHECK": "Ignorer la vérification CPU/TPM/SecureBoot lors de l'installation de Windows 11",
"VTLANG_WIN11_BYPASS_NRO": "Contourner l'exigence de compte en ligne lors de l'installation de Windows 11",
"VTLANG_LINUX_REMOUNT": "Monter la partition Ventoy après le démarrage de Linux",
"VTLANG_SECONDARY_BOOT_MENU": "Afficher le menu de démarrage secondaire",
"MENU_STR_XXX": ""
}

View File

@@ -1,81 +1,92 @@
{
"VTMENU_LANGUAGE_NAME": "Hindi (हिन्दी)",
"VTLANG_LANGUAGE_NAME": "Hindi (हिन्दी)",
"VTMENU_STR_HOTKEY_LIST": "L:भाषा F1:मदद F2:ब्राउज़र F3:ListView F4:स्थानीयबूट F5:उपकरण F6:ExMenu",
"VTMENU_STR_HOTKEY_TREE": "L:भाषा F1:मदद F2:ब्राउज़र F3:TreeView F4:स्थानीयबूट F5:उपकरण F6:ExMenu",
"VTMENU_RETURN_PREVIOUS": "पिछले मेनू पर लौटें [Esc]",
"VTLANG_STR_HOTKEY_LIST": "L:भाषा F1:मदद F2:ब्राउज़र F3:ListView F4:स्थानीयबूट F5:उपकरण F6:ExMenu",
"VTLANG_STR_HOTKEY_TREE": "L:भाषा F1:मदद F2:ब्राउज़र F3:TreeView F4:स्थानीयबूट F5:उपकरण F6:ExMenu",
"VTLANG_RETURN_PREVIOUS": "पिछले मेनू पर लौटें [Esc]",
"VTMENU_MENU_LANG": "मेनू भाषा का चयन करें",
"VTLANG_MENU_LANG": "मेनू भाषा का चयन करें",
"VTMENU_LB_SBOOT_WINDOWS": "Windows खोजें और बूट करें",
"VTMENU_LB_SBOOT_G4D": "Grub4dos खोजें और बूट करें",
"VTMENU_LB_SBOOT_HDD1": "पहली(1st) स्थानीय डिस्क को बूट करें",
"VTMENU_LB_SBOOT_HDD2": "दूसरी(2nd) स्थानीय डिस्क बूट करें",
"VTMENU_LB_SBOOT_HDD3": "तीसरी(3rd) स्थानीय डिस्क बूट करें",
"VTMENU_LB_SBOOT_X64EFI": "BOOTX64.EFI खोजें और बूट करें",
"VTMENU_LB_SBOOT_IA32EFI": "BOOTIA32.EFI खोजें और बूट करें",
"VTMENU_LB_SBOOT_AA64EFI": "BOOTAA64.EFI खोजें और बूट करें",
"VTMENU_LB_SBOOT_XORBOOT": "xorboot खोजें और बूट करें",
"VTLANG_LB_SBOOT_WINDOWS": "Windows खोजें और बूट करें",
"VTLANG_LB_SBOOT_G4D": "Grub4dos खोजें और बूट करें",
"VTLANG_LB_SBOOT_HDD1": "पहली(1st) स्थानीय डिस्क को बूट करें",
"VTLANG_LB_SBOOT_HDD2": "दूसरी(2nd) स्थानीय डिस्क बूट करें",
"VTLANG_LB_SBOOT_HDD3": "तीसरी(3rd) स्थानीय डिस्क बूट करें",
"VTLANG_LB_SBOOT_X64EFI": "BOOTX64.EFI खोजें और बूट करें",
"VTLANG_LB_SBOOT_IA32EFI": "BOOTIA32.EFI खोजें और बूट करें",
"VTLANG_LB_SBOOT_AA64EFI": "BOOTAA64.EFI खोजें और बूट करें",
"VTLANG_LB_SBOOT_XORBOOT": "xorboot खोजें और बूट करें",
"VTMENU_FILE_CHKSUM": "फ़ाइल चेकसम",
"VTMENU_CHKSUM_MD5_CALC": "Md5sum की गणना करें",
"VTMENU_CHKSUM_SHA1_CALC": "sha1sum की गणना करें",
"VTMENU_CHKSUM_SHA256_CALC": "sha256sum की गणना करें",
"VTMENU_CHKSUM_SHA512_CALC": "sha512sum की गणना करें",
"VTMENU_CHKSUM_MD5_CALC_CHK": "md5sum की गणना और जाँच करें",
"VTMENU_CHKSUM_SHA1_CALC_CHK": "sha1sum की गणना और जाँच करें",
"VTMENU_CHKSUM_SHA256_CALC_CHK": "sha256sum की गणना और जाँच करें",
"VTMENU_CHKSUM_SHA512_CALC_CHK": "sha512sum की गणना और जाँच करें",
"VTLANG_FILE_CHKSUM": "फ़ाइल चेकसम",
"VTLANG_CHKSUM_MD5_CALC": "Md5sum की गणना करें",
"VTLANG_CHKSUM_SHA1_CALC": "sha1sum की गणना करें",
"VTLANG_CHKSUM_SHA256_CALC": "sha256sum की गणना करें",
"VTLANG_CHKSUM_SHA512_CALC": "sha512sum की गणना करें",
"VTLANG_CHKSUM_MD5_CALC_CHK": "md5sum की गणना और जाँच करें",
"VTLANG_CHKSUM_SHA1_CALC_CHK": "sha1sum की गणना और जाँच करें",
"VTLANG_CHKSUM_SHA256_CALC_CHK": "sha256sum की गणना और जाँच करें",
"VTLANG_CHKSUM_SHA512_CALC_CHK": "sha512sum की गणना और जाँच करें",
"VTMENU_POWER": "पावर",
"VTMENU_POWER_REBOOT": "रीबूट",
"VTMENU_POWER_HALT": "हाल्ट",
"VTMENU_POWER_BOOT_EFIFW": "EFI सेटअप के लिए रीबूट करें",
"VTLANG_POWER": "पावर",
"VTLANG_POWER_REBOOT": "रीबूट",
"VTLANG_POWER_HALT": "हाल्ट",
"VTLANG_POWER_BOOT_EFIFW": "EFI सेटअप के लिए रीबूट करें",
"VTMENU_KEYBRD_LAYOUT": "कीबोर्ड लेआउट",
"VTMENU_HWINFO": "हार्डवेयर की जानकारी",
"VTLANG_KEYBRD_LAYOUT": "कीबोर्ड लेआउट",
"VTLANG_HWINFO": "हार्डवेयर की जानकारी",
"VTMENU_RESOLUTION_CFG": "रिज़ॉल्यूशन कॉन्फ़िगरेशन",
"VTMENU_SCREEN_MODE": "Screen Display मोड",
"VTMENU_SCREEN_TEXT_MODE": "फोर्स Text मोड",
"VTMENU_SCREEN_GUI_MODE": "फोर्स Graphics मोड",
"VTLANG_RESOLUTION_CFG": "रिज़ॉल्यूशन कॉन्फ़िगरेशन",
"VTLANG_SCREEN_MODE": "Screen Display मोड",
"VTLANG_SCREEN_TEXT_MODE": "फोर्स Text मोड",
"VTLANG_SCREEN_GUI_MODE": "फोर्स Graphics मोड",
"VTMENU_THEME_SELECT": "थीम का चयन",
"VTLANG_THEME_SELECT": "थीम का चयन",
"VTMENU_UTIL_SHOW_EFI_DRV": "EFI ड्राइवर्स दिखाएं",
"VTMENU_UTIL_FIX_BLINIT_FAIL": "Windows BlinitializeLibrary विफलता को ठीक करें",
"VTLANG_UEFI_UTIL": "वेंटोय UEFI यूटिलिटीज",
"VTLANG_UTIL_SHOW_EFI_DRV": "EFI ड्राइवर्स दिखाएं",
"VTLANG_UTIL_FIX_BLINIT_FAIL": "Windows BlinitializeLibrary विफलता को ठीक करें",
"VTMENU_JSON_CHK_JSON": "प्लगइन json विन्यास की जाँच करें (ventoy.json)",
"VTMENU_JSON_CHK_CONTROL": "global control प्लगइन विन्यास की जाँच करें",
"VTMENU_JSON_CHK_THEME": "theme प्लगइन विन्यास की जाँच करें",
"VTMENU_JSON_CHK_AUTOINS": "auto install प्लगइन विन्यास की जाँच करें",
"VTMENU_JSON_CHK_PERSIST": "persistence प्लगइन विन्यास की जाँच करें",
"VTMENU_JSON_CHK_MENU_ALIAS": "menu alias प्लगइन विन्यास की जाँच करें",
"VTMENU_JSON_CHK_MENU_TIP": "menu tip प्लगइन विन्यास की जाँच करें",
"VTMENU_JSON_CHK_MENU_CLASS": "menu class प्लगइन विन्यास की जाँच करें",
"VTMENU_JSON_CHK_INJECTION": "injection प्लगइन विन्यास की जाँच करें",
"VTMENU_JSON_CHK_AUTO_MEMDISK": "auto memdisk प्लगइन विन्यास की जाँच करें",
"VTMENU_JSON_CHK_IMG_LIST": "image list प्लगइन विन्यास की जाँच करें",
"VTMENU_JSON_CHK_IMG_BLIST": "image blacklist प्लगइन विन्यास की जाँच करें",
"VTMENU_JSON_CHK_CONF_REPLACE": "boot conf replace प्लगइन विन्यास की जाँच करें",
"VTMENU_JSON_CHK_DUD": "dud प्लगइन विन्यास की जाँच करें",
"VTMENU_JSON_CHK_PASSWORD": "password प्लगइन विन्यास की जाँच करें",
"VTLANG_JSON_CHK_JSON": "प्लगइन json विन्यास की जाँच करें (ventoy.json)",
"VTLANG_JSON_CHK_CONTROL": "global control प्लगइन विन्यास की जाँच करें",
"VTLANG_JSON_CHK_THEME": "theme प्लगइन विन्यास की जाँच करें",
"VTLANG_JSON_CHK_AUTOINS": "auto install प्लगइन विन्यास की जाँच करें",
"VTLANG_JSON_CHK_PERSIST": "persistence प्लगइन विन्यास की जाँच करें",
"VTLANG_JSON_CHK_MENU_ALIAS": "menu alias प्लगइन विन्यास की जाँच करें",
"VTLANG_JSON_CHK_MENU_TIP": "menu tip प्लगइन विन्यास की जाँच करें",
"VTLANG_JSON_CHK_MENU_CLASS": "menu class प्लगइन विन्यास की जाँच करें",
"VTLANG_JSON_CHK_INJECTION": "injection प्लगइन विन्यास की जाँच करें",
"VTLANG_JSON_CHK_AUTO_MEMDISK": "auto memdisk प्लगइन विन्यास की जाँच करें",
"VTLANG_JSON_CHK_IMG_LIST": "image list प्लगइन विन्यास की जाँच करें",
"VTLANG_JSON_CHK_IMG_BLIST": "image blacklist प्लगइन विन्यास की जाँच करें",
"VTLANG_JSON_CHK_CONF_REPLACE": "boot conf replace प्लगइन विन्यास की जाँच करें",
"VTLANG_JSON_CHK_DUD": "dud प्लगइन विन्यास की जाँच करें",
"VTLANG_JSON_CHK_PASSWORD": "password प्लगइन विन्यास की जाँच करें",
"VTMENU_NORMAL_MODE": "सामान्य मोड में बूट करें",
"VTMENU_WIMBOOT_MODE": "wimboot मोड में बूट करें",
"VTMENU_GRUB2_MODE": "grub2 मोड में बूट करें",
"VTMENU_MEMDISK_MODE": "memdisk मोड में बूट करें",
"VTLANG_NORMAL_MODE": "सामान्य मोड में बूट करें",
"VTLANG_WIMBOOT_MODE": "wimboot मोड में बूट करें",
"VTLANG_GRUB2_MODE": "grub2 मोड में बूट करें",
"VTLANG_MEMDISK_MODE": "memdisk मोड में बूट करें",
"VTMENU_RET_TO_LISTVIEW": "ListView पर वापस जाएँ",
"VTMENU_RET_TO_TREEVIEW": "TreeView पर वापस जाएँ",
"VTLANG_RET_TO_LISTVIEW": "ListView पर वापस जाएँ",
"VTLANG_RET_TO_TREEVIEW": "TreeView पर वापस जाएँ",
"VTMENU_NO_AUTOINS_SCRIPT": "ऑटो इंस्टॉलेशन टेम्पलेट के बिना बूट करें",
"VTMENU_AUTOINS_USE": "के साथ बूट करें",
"VTLANG_NO_AUTOINS_SCRIPT": "ऑटो इंस्टॉलेशन टेम्पलेट के बिना बूट करें",
"VTLANG_AUTOINS_USE": "के साथ बूट करें",
"VTMENU_NO_PERSIST": "बिना persistence के बूट करें",
"VTMENU_PERSIST_USE": "के साथ बूट करें",
"VTLANG_NO_PERSIST": "बिना persistence के बूट करें",
"VTLANG_PERSIST_USE": "के साथ बूट करें",
"VTMENU_BROWER_RETURN": "लौटें",
"VTLANG_BROWER_RETURN": "लौटें",
"VTLANG_ENTER_EXIT": "बाहर निकलने के लिए एंटर कुंजी दबाएं",
"VTLANG_ENTER_REBOOT": "रिबूट करने के लिए एंटर कुंजी दबाएं",
"VTLANG_ENTER_CONTINUE": "जारी रखने के लिए एंटर कुंजी दबाएं",
"VTLANG_CTRL_TEMP_SET": "अस्थायी नियंत्रण सेटिंग्स",
"VTLANG_WIN11_BYPASS_CHECK": "जब विंडोज 11 स्थापित करें, CPU/TPM/SECUREBOOT CHECK को बायपास करें",
"VTLANG_WIN11_BYPASS_NRO": "विंडोज 11 स्थापित करते समय ऑनलाइन खाते की आवश्यकता बाईपास",
"VTLANG_LINUX_REMOUNT": "लिनक्स बूट के बाद वेंटॉय विभाजन को माउंट करें",
"VTLANG_SECONDARY_BOOT_MENU": "द्वितीयक बूट मेनू दिखाएं",
"MENU_STR_XXX": ""
}

View File

@@ -1,81 +1,92 @@
{
"VTMENU_LANGUAGE_NAME": "Croatian (Hrvatski)",
"VTLANG_LANGUAGE_NAME": "Croatian (Hrvatski)",
"VTMENU_STR_HOTKEY_LIST": "L:Jezik F1:Help F2:Browse F3:ListView F4:Localboot F5:Tools F6:ExMenu",
"VTMENU_STR_HOTKEY_TREE": "L:Jezik F1:Help F2:Browse F3:TreeView F4:Localboot F5:Tools F6:ExMenu",
"VTMENU_RETURN_PREVIOUS": "Return to previous menu [Esc]",
"VTLANG_STR_HOTKEY_LIST": "L:Jezik F1:Help F2:Browse F3:ListView F4:Localboot F5:Tools F6:ExMenu",
"VTLANG_STR_HOTKEY_TREE": "L:Jezik F1:Help F2:Browse F3:TreeView F4:Localboot F5:Tools F6:ExMenu",
"VTLANG_RETURN_PREVIOUS": "Return to previous menu [Esc]",
"VTMENU_MENU_LANG": "Menu Language Select",
"VTLANG_MENU_LANG": "Menu Language Select",
"VTMENU_LB_SBOOT_WINDOWS": "Search and boot Windows",
"VTMENU_LB_SBOOT_G4D": "Search and boot Grub4dos",
"VTMENU_LB_SBOOT_HDD1": "Boot the 1st local disk",
"VTMENU_LB_SBOOT_HDD2": "Boot the 2nd local disk",
"VTMENU_LB_SBOOT_HDD3": "Boot the 3rd local disk",
"VTMENU_LB_SBOOT_X64EFI": "Search and boot BOOTX64.EFI",
"VTMENU_LB_SBOOT_IA32EFI": "Search and boot BOOTIA32.EFI",
"VTMENU_LB_SBOOT_AA64EFI": "Search and boot BOOTAA64.EFI",
"VTMENU_LB_SBOOT_XORBOOT": "Search and boot xorboot",
"VTLANG_LB_SBOOT_WINDOWS": "Search and boot Windows",
"VTLANG_LB_SBOOT_G4D": "Search and boot Grub4dos",
"VTLANG_LB_SBOOT_HDD1": "Boot the 1st local disk",
"VTLANG_LB_SBOOT_HDD2": "Boot the 2nd local disk",
"VTLANG_LB_SBOOT_HDD3": "Boot the 3rd local disk",
"VTLANG_LB_SBOOT_X64EFI": "Search and boot BOOTX64.EFI",
"VTLANG_LB_SBOOT_IA32EFI": "Search and boot BOOTIA32.EFI",
"VTLANG_LB_SBOOT_AA64EFI": "Search and boot BOOTAA64.EFI",
"VTLANG_LB_SBOOT_XORBOOT": "Search and boot xorboot",
"VTMENU_FILE_CHKSUM": "File checksum",
"VTMENU_CHKSUM_MD5_CALC": "Calculate md5sum",
"VTMENU_CHKSUM_SHA1_CALC": "Calculate sha1sum",
"VTMENU_CHKSUM_SHA256_CALC": "Calculate sha256sum",
"VTMENU_CHKSUM_SHA512_CALC": "Calculate sha512sum",
"VTMENU_CHKSUM_MD5_CALC_CHK": "Calculate and check md5sum",
"VTMENU_CHKSUM_SHA1_CALC_CHK": "Calculate and check sha1sum",
"VTMENU_CHKSUM_SHA256_CALC_CHK": "Calculate and check sha256sum",
"VTMENU_CHKSUM_SHA512_CALC_CHK": "Calculate and check sha512sum",
"VTLANG_FILE_CHKSUM": "File checksum",
"VTLANG_CHKSUM_MD5_CALC": "Calculate md5sum",
"VTLANG_CHKSUM_SHA1_CALC": "Calculate sha1sum",
"VTLANG_CHKSUM_SHA256_CALC": "Calculate sha256sum",
"VTLANG_CHKSUM_SHA512_CALC": "Calculate sha512sum",
"VTLANG_CHKSUM_MD5_CALC_CHK": "Calculate and check md5sum",
"VTLANG_CHKSUM_SHA1_CALC_CHK": "Calculate and check sha1sum",
"VTLANG_CHKSUM_SHA256_CALC_CHK": "Calculate and check sha256sum",
"VTLANG_CHKSUM_SHA512_CALC_CHK": "Calculate and check sha512sum",
"VTMENU_POWER": "Power",
"VTMENU_POWER_REBOOT": "Reboot",
"VTMENU_POWER_HALT": "Halt",
"VTMENU_POWER_BOOT_EFIFW": "Reboot to EFI setup",
"VTLANG_POWER": "Power",
"VTLANG_POWER_REBOOT": "Reboot",
"VTLANG_POWER_HALT": "Halt",
"VTLANG_POWER_BOOT_EFIFW": "Reboot to EFI setup",
"VTMENU_KEYBRD_LAYOUT": "Keyboard Layouts",
"VTMENU_HWINFO": "Hardware Information",
"VTLANG_KEYBRD_LAYOUT": "Keyboard Layouts",
"VTLANG_HWINFO": "Hardware Information",
"VTMENU_RESOLUTION_CFG": "Resolution Configuration",
"VTMENU_SCREEN_MODE": "Screen Display Mode",
"VTMENU_SCREEN_TEXT_MODE": "Force Text Mode",
"VTMENU_SCREEN_GUI_MODE": "Force Graphics Mode",
"VTLANG_RESOLUTION_CFG": "Resolution Configuration",
"VTLANG_SCREEN_MODE": "Screen Display Mode",
"VTLANG_SCREEN_TEXT_MODE": "Force Text Mode",
"VTLANG_SCREEN_GUI_MODE": "Force Graphics Mode",
"VTMENU_THEME_SELECT": "Theme Select",
"VTLANG_THEME_SELECT": "Theme Select",
"VTMENU_UTIL_SHOW_EFI_DRV": "Show EFI Drivers",
"VTMENU_UTIL_FIX_BLINIT_FAIL": "Fixup Windows BlinitializeLibrary Failure",
"VTLANG_UEFI_UTIL": "Ventoy UEFI Utilities",
"VTLANG_UTIL_SHOW_EFI_DRV": "Show EFI Drivers",
"VTLANG_UTIL_FIX_BLINIT_FAIL": "Fixup Windows BlinitializeLibrary Failure",
"VTMENU_JSON_CHK_JSON": "Check plugin json configuration (ventoy.json)",
"VTMENU_JSON_CHK_CONTROL": "Check global control plugin configuration",
"VTMENU_JSON_CHK_THEME": "Check theme plugin configuration",
"VTMENU_JSON_CHK_AUTOINS": "Check auto install plugin configuration",
"VTMENU_JSON_CHK_PERSIST": "Check persistence plugin configuration",
"VTMENU_JSON_CHK_MENU_ALIAS": "Check menu alias plugin configuration",
"VTMENU_JSON_CHK_MENU_TIP": "Check menu tip plugin configuration",
"VTMENU_JSON_CHK_MENU_CLASS": "Check menu class plugin configuration",
"VTMENU_JSON_CHK_INJECTION": "Check injection plugin configuration",
"VTMENU_JSON_CHK_AUTO_MEMDISK": "Check auto memdisk plugin configuration",
"VTMENU_JSON_CHK_IMG_LIST": "Check image list plugin configuration",
"VTMENU_JSON_CHK_IMG_BLIST": "Check image blacklist plugin configuration",
"VTMENU_JSON_CHK_CONF_REPLACE": "Check boot conf replace plugin configuration",
"VTMENU_JSON_CHK_DUD": "Check dud plugin configuration",
"VTMENU_JSON_CHK_PASSWORD": "Check password plugin configuration",
"VTLANG_JSON_CHK_JSON": "Check plugin json configuration (ventoy.json)",
"VTLANG_JSON_CHK_CONTROL": "Check global control plugin configuration",
"VTLANG_JSON_CHK_THEME": "Check theme plugin configuration",
"VTLANG_JSON_CHK_AUTOINS": "Check auto install plugin configuration",
"VTLANG_JSON_CHK_PERSIST": "Check persistence plugin configuration",
"VTLANG_JSON_CHK_MENU_ALIAS": "Check menu alias plugin configuration",
"VTLANG_JSON_CHK_MENU_TIP": "Check menu tip plugin configuration",
"VTLANG_JSON_CHK_MENU_CLASS": "Check menu class plugin configuration",
"VTLANG_JSON_CHK_INJECTION": "Check injection plugin configuration",
"VTLANG_JSON_CHK_AUTO_MEMDISK": "Check auto memdisk plugin configuration",
"VTLANG_JSON_CHK_IMG_LIST": "Check image list plugin configuration",
"VTLANG_JSON_CHK_IMG_BLIST": "Check image blacklist plugin configuration",
"VTLANG_JSON_CHK_CONF_REPLACE": "Check boot conf replace plugin configuration",
"VTLANG_JSON_CHK_DUD": "Check dud plugin configuration",
"VTLANG_JSON_CHK_PASSWORD": "Check password plugin configuration",
"VTMENU_NORMAL_MODE": "Boot in normal mode",
"VTMENU_WIMBOOT_MODE": "Boot in wimboot mode",
"VTMENU_GRUB2_MODE": "Boot in grub2 mode",
"VTMENU_MEMDISK_MODE": "Boot in memdisk mode",
"VTLANG_NORMAL_MODE": "Boot in normal mode",
"VTLANG_WIMBOOT_MODE": "Boot in wimboot mode",
"VTLANG_GRUB2_MODE": "Boot in grub2 mode",
"VTLANG_MEMDISK_MODE": "Boot in memdisk mode",
"VTMENU_RET_TO_LISTVIEW": "Return to ListView",
"VTMENU_RET_TO_TREEVIEW": "Return to TreeView",
"VTLANG_RET_TO_LISTVIEW": "Return to ListView",
"VTLANG_RET_TO_TREEVIEW": "Return to TreeView",
"VTMENU_NO_AUTOINS_SCRIPT": "Boot without auto installation template",
"VTMENU_AUTOINS_USE": "Boot with",
"VTLANG_NO_AUTOINS_SCRIPT": "Boot without auto installation template",
"VTLANG_AUTOINS_USE": "Boot with",
"VTMENU_NO_PERSIST": "Boot without persistence",
"VTMENU_PERSIST_USE": "Boot with",
"VTLANG_NO_PERSIST": "Boot without persistence",
"VTLANG_PERSIST_USE": "Boot with",
"VTMENU_BROWER_RETURN": "Return",
"VTLANG_BROWER_RETURN": "Return",
"VTLANG_ENTER_EXIT": "pritisnite tipku Enter za izlaz",
"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 CPU/TPM/SecureBoot check when install Windows 11",
"VTLANG_WIN11_BYPASS_NRO": "Bypass online account requirement when install Windows 11",
"VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux",
"VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu",
"MENU_STR_XXX": ""
}

View File

@@ -0,0 +1,92 @@
"VTLANG_LANGUAGE_NAME": "Hungarian (Magyar)",
"VTLANG_STR_HOTKEY_LIST": "L:Nyelv F1:Súgó F2:Tallóz F3:Listanézet F4:Helyi indítás F5:Eszközök F6:Bővített menü",
"VTLANG_STR_HOTKEY_TREE": "L:Nyelv F1:Súgó F2:Tallóz F3:Fanézet F4:Helyi indítás F5:Eszközök F6:Bővített menü",
"VTLANG_RETURN_PREVIOUS": "Vissza az előző menübe [Esc]",
"VTLANG_MENU_LANG": "Menü nyelv kiválasztás",
"VTLANG_LB_SBOOT_WINDOWS": "Keresés és indítás - Windows",
"VTLANG_LB_SBOOT_G4D": "Keresés és indítás - Grub4dos",
"VTLANG_LB_SBOOT_HDD1": "Indítás az 1. helyi lemezről",
"VTLANG_LB_SBOOT_HDD2": "Indítás az 2. helyi lemezről",
"VTLANG_LB_SBOOT_HDD3": "Indítás az 3. helyi lemezről",
"VTLANG_LB_SBOOT_X64EFI": "Keresés és indítás - BOOTX64.EFI",
"VTLANG_LB_SBOOT_IA32EFI": "Keresés és indítás - BOOTIA32.EFI",
"VTLANG_LB_SBOOT_AA64EFI": "Keresés és indítás - BOOTAA64.EFI",
"VTLANG_LB_SBOOT_XORBOOT": "Keresés és indítás - xorboot",
"VTLANG_FILE_CHKSUM": "Fájl ell.összeg",
"VTLANG_CHKSUM_MD5_CALC": "Számítás - md5sum",
"VTLANG_CHKSUM_SHA1_CALC": "Számítás - sha1sum",
"VTLANG_CHKSUM_SHA256_CALC": "Számítás - sha256sum",
"VTLANG_CHKSUM_SHA512_CALC": "Számítás - sha512sum",
"VTLANG_CHKSUM_MD5_CALC_CHK": "Számítás és ellenőrzés - md5sum",
"VTLANG_CHKSUM_SHA1_CALC_CHK": "Számítás és ellenőrzés - sha1sum",
"VTLANG_CHKSUM_SHA256_CALC_CHK": "Számítás és ellenőrzés - sha256sum",
"VTLANG_CHKSUM_SHA512_CALC_CHK": "Számítás és ellenőrzés - sha512sum",
"VTLANG_POWER": "Energia",
"VTLANG_POWER_REBOOT": "Újraindítás",
"VTLANG_POWER_HALT": "Leállítás",
"VTLANG_POWER_BOOT_EFIFW": "Újraindítás - EFI setup",
"VTLANG_KEYBRD_LAYOUT": "Billentyű kiosztások",
"VTLANG_HWINFO": "Hardver információ",
"VTLANG_RESOLUTION_CFG": "Felbontás konfigurációja",
"VTLANG_SCREEN_MODE": "Képernyő megjelenítési mód",
"VTLANG_SCREEN_TEXT_MODE": "Kénysz. szöveges mód",
"VTLANG_SCREEN_GUI_MODE": "Kénysz. grafikus mód",
"VTLANG_THEME_SELECT": "Téma kiválasztása",
"VTLANG_UEFI_UTIL": "Ventoy UEFI Utilities",
"VTLANG_UTIL_SHOW_EFI_DRV": "EFI driverek megjelenítése",
"VTLANG_UTIL_FIX_BLINIT_FAIL": "A Windows BlinitializeLibrary hibájának javítása",
"VTLANG_JSON_CHK_JSON": "Ellenőrizze a plugin json konfigurációt (ventoy.json)",
"VTLANG_JSON_CHK_CONTROL": "Ellenőrizze a globális vezérlő plugin konfigurációt",
"VTLANG_JSON_CHK_THEME": "Ellenőrizze a téma plugin konfigurációt",
"VTLANG_JSON_CHK_AUTOINS": "Ellenőrizze az auto. telepítő plugin konfigurációt",
"VTLANG_JSON_CHK_PERSIST": "A persistence plugin konfigurációjának ellenőrzése",
"VTLANG_JSON_CHK_MENU_ALIAS": "Ellenőrizze a menü alias plugin konfigurációt",
"VTLANG_JSON_CHK_MENU_TIP": "Ellenőrizze a menü tipp plugin konfigurációt",
"VTLANG_JSON_CHK_MENU_CLASS": "Ellenőrizze a menü osztály plugin konfigurációt",
"VTLANG_JSON_CHK_INJECTION": "Injekciós plugin konfiguráció ellenőrzése",
"VTLANG_JSON_CHK_AUTO_MEMDISK": "Auto. memdisk plugin konfiguráció ellenőrzése",
"VTLANG_JSON_CHK_IMG_LIST": "Ellenőrizze a képlista plugin beállításait",
"VTLANG_JSON_CHK_IMG_BLIST": "Ellenőrizze a kép feketelista plugin konfigurációt",
"VTLANG_JSON_CHK_CONF_REPLACE": "Check boot conf cserélje ki a plugin konfigurációt",
"VTLANG_JSON_CHK_DUD": "Ellenőrizze a dud plugin konfigurációt",
"VTLANG_JSON_CHK_PASSWORD": "Ellenőrizze a jelszó plugin konfigurációját",
"VTLANG_NORMAL_MODE": "Indítás normál módban",
"VTLANG_WIMBOOT_MODE": "Indítás wimboot módban",
"VTLANG_GRUB2_MODE": "Indítás grub2 módban",
"VTLANG_MEMDISK_MODE": "Indítás memdisk módban",
"VTLANG_RET_TO_LISTVIEW": "Vissza a Listanézethez",
"VTLANG_RET_TO_TREEVIEW": "Vissza a Fanézethez",
"VTLANG_NO_AUTOINS_SCRIPT": "Indítás auto. telepítési sablon nélkül",
"VTLANG_AUTOINS_USE": "Indítás ezzel",
"VTLANG_NO_PERSIST": "Indítás perzisztencia nélkül",
"VTLANG_PERSIST_USE": "Indítás ezzel",
"VTLANG_BROWER_RETURN": "Vissza",
"VTLANG_ENTER_EXIT": "nyomja meg az Enter billentyűt a kilépéshez",
"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 CPU/TPM/SecureBoot check when install Windows 11",
"VTLANG_WIN11_BYPASS_NRO": "Bypass online account requirement when install Windows 11",
"VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux",
"VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu",
"MENU_STR_XXX": ""
}

View File

@@ -1,81 +1,92 @@
{
"VTMENU_LANGUAGE_NAME": "Indonesian (Bahasa Indonesia)",
"VTLANG_LANGUAGE_NAME": "Indonesian (Bahasa Indonesia)",
"VTMENU_STR_HOTKEY_LIST": "L:Bahasa F1:Help F2:Browse F3:ListView F4:Localboot F5:Tools F6:ExMenu",
"VTMENU_STR_HOTKEY_TREE": "L:Bahasa F1:Help F2:Browse F3:TreeView F4:Localboot F5:Tools F6:ExMenu",
"VTMENU_RETURN_PREVIOUS": "Return to previous menu [Esc]",
"VTLANG_STR_HOTKEY_LIST": "L:Bahasa F1:Bantuan F2:Jelajah F3:ListView F4:boot lokal F5:Alat Utilitas F6:Menu Eksternal",
"VTLANG_STR_HOTKEY_TREE": "L:Bahasa F1:Bantuan F2:Jelajah F3:ListView F4:boot lokal F5:Alat Utilitas F6:Menu Eksternal",
"VTLANG_RETURN_PREVIOUS": "Kembali ke menu sebelumnya [Esc]",
"VTMENU_MENU_LANG": "Menu Language Select",
"VTLANG_MENU_LANG": "Menu Pilihan Bahasa",
"VTMENU_LB_SBOOT_WINDOWS": "Search and boot Windows",
"VTMENU_LB_SBOOT_G4D": "Search and boot Grub4dos",
"VTMENU_LB_SBOOT_HDD1": "Boot the 1st local disk",
"VTMENU_LB_SBOOT_HDD2": "Boot the 2nd local disk",
"VTMENU_LB_SBOOT_HDD3": "Boot the 3rd local disk",
"VTMENU_LB_SBOOT_X64EFI": "Search and boot BOOTX64.EFI",
"VTMENU_LB_SBOOT_IA32EFI": "Search and boot BOOTIA32.EFI",
"VTMENU_LB_SBOOT_AA64EFI": "Search and boot BOOTAA64.EFI",
"VTMENU_LB_SBOOT_XORBOOT": "Search and boot xorboot",
"VTLANG_LB_SBOOT_WINDOWS": "Mencari dan jalankan boot ke Windows",
"VTLANG_LB_SBOOT_G4D": "Mencari dan jalankan boot ke Grub4dos",
"VTLANG_LB_SBOOT_HDD1": "Jalankan boot ke disk lokal 1",
"VTLANG_LB_SBOOT_HDD2": "Jalankan boot ke disk lokal 2",
"VTLANG_LB_SBOOT_HDD3": "Jalankan boot ke disk lokal 3",
"VTLANG_LB_SBOOT_X64EFI": "Jalankan boot ke disk lokal nomor 1 BOOTX64.EFI",
"VTLANG_LB_SBOOT_IA32EFI": "Mencari dan jalankan boot ke BOOTIA32.EFI",
"VTLANG_LB_SBOOT_AA64EFI": "Mencari dan jalankan boot ke BOOTAA64.EFI",
"VTLANG_LB_SBOOT_XORBOOT": "Mencari dan jalankan boot ke xorboot",
"VTMENU_FILE_CHKSUM": "File checksum",
"VTMENU_CHKSUM_MD5_CALC": "Calculate md5sum",
"VTMENU_CHKSUM_SHA1_CALC": "Calculate sha1sum",
"VTMENU_CHKSUM_SHA256_CALC": "Calculate sha256sum",
"VTMENU_CHKSUM_SHA512_CALC": "Calculate sha512sum",
"VTMENU_CHKSUM_MD5_CALC_CHK": "Calculate and check md5sum",
"VTMENU_CHKSUM_SHA1_CALC_CHK": "Calculate and check sha1sum",
"VTMENU_CHKSUM_SHA256_CALC_CHK": "Calculate and check sha256sum",
"VTMENU_CHKSUM_SHA512_CALC_CHK": "Calculate and check sha512sum",
"VTLANG_FILE_CHKSUM": "Berkas checksum",
"VTLANG_CHKSUM_MD5_CALC": "Menghitung md5sum",
"VTLANG_CHKSUM_SHA1_CALC": "Menghitung sha1sum",
"VTLANG_CHKSUM_SHA256_CALC": "Menghitung sha256sum",
"VTLANG_CHKSUM_SHA512_CALC": "Menghitung sha512sum",
"VTLANG_CHKSUM_MD5_CALC_CHK": "Menghitung dan memeriksa md5sum",
"VTLANG_CHKSUM_SHA1_CALC_CHK": "Menghitung dan memeriksa sha1sum",
"VTLANG_CHKSUM_SHA256_CALC_CHK": "Menghitung dan memeriksa sha256sum",
"VTLANG_CHKSUM_SHA512_CALC_CHK": "Menghitung dan memeriksa sha512sum",
"VTMENU_POWER": "Power",
"VTMENU_POWER_REBOOT": "Reboot",
"VTMENU_POWER_HALT": "Halt",
"VTMENU_POWER_BOOT_EFIFW": "Reboot to EFI setup",
"VTLANG_POWER": "Daya",
"VTLANG_POWER_REBOOT": "Memulai ulang",
"VTLANG_POWER_HALT": "Mematikan",
"VTLANG_POWER_BOOT_EFIFW": "Memulai ulang menuju EFI setup",
"VTMENU_KEYBRD_LAYOUT": "Keyboard Layouts",
"VTMENU_HWINFO": "Hardware Information",
"VTLANG_KEYBRD_LAYOUT": "Tata letak Keyboard",
"VTLANG_HWINFO": "Informasi Perangkat Keras",
"VTMENU_RESOLUTION_CFG": "Resolution Configuration",
"VTMENU_SCREEN_MODE": "Screen Display Mode",
"VTMENU_SCREEN_TEXT_MODE": "Force Text Mode",
"VTMENU_SCREEN_GUI_MODE": "Force Graphics Mode",
"VTLANG_RESOLUTION_CFG": "Setelan Resolusi",
"VTLANG_SCREEN_MODE": "Mode Tampilan Layar",
"VTLANG_SCREEN_TEXT_MODE": "Paksa ke Mode Teks",
"VTLANG_SCREEN_GUI_MODE": "Paksa ke Mode Grafis",
"VTMENU_THEME_SELECT": "Theme Select",
"VTLANG_THEME_SELECT": "Pilih Tema",
"VTMENU_UTIL_SHOW_EFI_DRV": "Show EFI Drivers",
"VTMENU_UTIL_FIX_BLINIT_FAIL": "Fixup Windows BlinitializeLibrary Failure",
"VTLANG_UEFI_UTIL": "Ventoy UEFI Utilities",
"VTLANG_UTIL_SHOW_EFI_DRV": "Tampilkan Driver EFI",
"VTLANG_UTIL_FIX_BLINIT_FAIL": "Memperbaiki Kegagalan Windows BlinitializeLibrary",
"VTMENU_JSON_CHK_JSON": "Check plugin json configuration (ventoy.json)",
"VTMENU_JSON_CHK_CONTROL": "Check global control plugin configuration",
"VTMENU_JSON_CHK_THEME": "Check theme plugin configuration",
"VTMENU_JSON_CHK_AUTOINS": "Check auto install plugin configuration",
"VTMENU_JSON_CHK_PERSIST": "Check persistence plugin configuration",
"VTMENU_JSON_CHK_MENU_ALIAS": "Check menu alias plugin configuration",
"VTMENU_JSON_CHK_MENU_TIP": "Check menu tip plugin configuration",
"VTMENU_JSON_CHK_MENU_CLASS": "Check menu class plugin configuration",
"VTMENU_JSON_CHK_INJECTION": "Check injection plugin configuration",
"VTMENU_JSON_CHK_AUTO_MEMDISK": "Check auto memdisk plugin configuration",
"VTMENU_JSON_CHK_IMG_LIST": "Check image list plugin configuration",
"VTMENU_JSON_CHK_IMG_BLIST": "Check image blacklist plugin configuration",
"VTMENU_JSON_CHK_CONF_REPLACE": "Check boot conf replace plugin configuration",
"VTMENU_JSON_CHK_DUD": "Check dud plugin configuration",
"VTMENU_JSON_CHK_PASSWORD": "Check password plugin configuration",
"VTLANG_JSON_CHK_JSON": "Periksa setelan plugin (ventoy.json)",
"VTLANG_JSON_CHK_CONTROL": "Periksa setelan plugin global control",
"VTLANG_JSON_CHK_THEME": "Periksa setelan plugin theme",
"VTLANG_JSON_CHK_AUTOINS": "Periksa setelan plugin auto install",
"VTLANG_JSON_CHK_PERSIST": "Periksa setelan plugin persistence",
"VTLANG_JSON_CHK_MENU_ALIAS": "Periksa setelan plugin menu alias",
"VTLANG_JSON_CHK_MENU_TIP": "Periksa setelan plugin tip",
"VTLANG_JSON_CHK_MENU_CLASS": "Periksa setelan class plugin menu",
"VTLANG_JSON_CHK_INJECTION": "Periksa setelan plugin injection",
"VTLANG_JSON_CHK_AUTO_MEMDISK": "Periksa setelan plugin auto memdisk",
"VTLANG_JSON_CHK_IMG_LIST": "Periksa setelan plugin image list",
"VTLANG_JSON_CHK_IMG_BLIST": "Periksa setelant plugin image blacklis",
"VTLANG_JSON_CHK_CONF_REPLACE": "Periksa setelan plugin boot conf replace",
"VTLANG_JSON_CHK_DUD": "Periksa setelan plugin dud",
"VTLANG_JSON_CHK_PASSWORD": "Periksa setelan plugin password",
"VTMENU_NORMAL_MODE": "Boot in normal mode",
"VTMENU_WIMBOOT_MODE": "Boot in wimboot mode",
"VTMENU_GRUB2_MODE": "Boot in grub2 mode",
"VTMENU_MEMDISK_MODE": "Boot in memdisk mode",
"VTLANG_NORMAL_MODE": "Jalankan boot di mode normal",
"VTLANG_WIMBOOT_MODE": "Jalankan boot di mode wimboot",
"VTLANG_GRUB2_MODE": "Jalankan boot di mode grub2",
"VTLANG_MEMDISK_MODE": "Jalankan boot di mode memdisk",
"VTMENU_RET_TO_LISTVIEW": "Return to ListView",
"VTMENU_RET_TO_TREEVIEW": "Return to TreeView",
"VTLANG_RET_TO_LISTVIEW": "Kembali ke ListView",
"VTLANG_RET_TO_TREEVIEW": "Kembali ke TreeView",
"VTMENU_NO_AUTOINS_SCRIPT": "Boot without auto installation template",
"VTMENU_AUTOINS_USE": "Boot with",
"VTLANG_NO_AUTOINS_SCRIPT": "Jalankan boot tanpa templat instalasi otomatis",
"VTLANG_AUTOINS_USE": "Jalankan boot dengan",
"VTMENU_NO_PERSIST": "Boot without persistence",
"VTMENU_PERSIST_USE": "Boot with",
"VTLANG_NO_PERSIST": "Jalankan boot tanpa persistence",
"VTLANG_PERSIST_USE": "Jalankan boot",
"VTMENU_BROWER_RETURN": "Return",
"VTLANG_BROWER_RETURN": "Kembali",
"VTLANG_ENTER_EXIT": "tekan tombol Enter untuk keluar",
"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 CPU/TPM/SecureBoot check when install Windows 11",
"VTLANG_WIN11_BYPASS_NRO": "Bypass online account requirement when install Windows 11",
"VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux",
"VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu",
"MENU_STR_XXX": ""
}

View File

@@ -1,81 +1,92 @@
{
"VTMENU_LANGUAGE_NAME": "Japanese (日本語)",
"VTLANG_LANGUAGE_NAME": "Japanese (日本語)",
"VTMENU_STR_HOTKEY_LIST": "L:言語 F1:ヘルプ F2:ブラウズ F3:リストビュー F4:Localboot F5:ツール F6:拡張メニュー",
"VTMENU_STR_HOTKEY_TREE": "L:言語 F1:ヘルプ F2:ブラウズ F3:ツリー表示 F4:Localboot F5:ツール F6:拡張メニュー",
"VTMENU_RETURN_PREVIOUS": "前のメニューに戻る [Esc]",
"VTLANG_STR_HOTKEY_LIST": "L:言語 F1:説明 F2:閲覧 F3:表示切替(階層) F4:手許から起動 F5:道具 F6:拡張",
"VTLANG_STR_HOTKEY_TREE": "L:言語 F1:説明 F2:閲覧 F3:表示切替(一覧) F4:手許から起動 F5:道具 F6:拡張",
"VTLANG_RETURN_PREVIOUS": "前に戻る [Esc]",
"VTMENU_MENU_LANG": "メニュー言語選択",
"VTLANG_MENU_LANG": "表示言語",
"VTMENU_LB_SBOOT_WINDOWS": "Windows を検索して起動する",
"VTMENU_LB_SBOOT_G4D": "Grub4dos を検索して起動する",
"VTMENU_LB_SBOOT_HDD1": "最初のローカル ディスクを起動します",
"VTMENU_LB_SBOOT_HDD2": "2 番目のローカル ディスクを起動する",
"VTMENU_LB_SBOOT_HDD3": "3 番目のローカル ディスクを起動する",
"VTMENU_LB_SBOOT_X64EFI": "BOOTX64.EFI を検索して起動する",
"VTMENU_LB_SBOOT_IA32EFI": "BOOTIA32.EFI を検索して起動する",
"VTMENU_LB_SBOOT_AA64EFI": "BOOTAA64.EFI を検索して起動する",
"VTMENU_LB_SBOOT_XORBOOT": "xorboot を検索して起動する",
"VTLANG_LB_SBOOT_WINDOWS": "Windowsを検索して起動する",
"VTLANG_LB_SBOOT_G4D": "GRUB4DOSを検索して起動する",
"VTLANG_LB_SBOOT_HDD1": "最初の機器を起動します",
"VTLANG_LB_SBOOT_HDD2": "2番目の機器を起動する",
"VTLANG_LB_SBOOT_HDD3": "3番目の機器を起動する",
"VTLANG_LB_SBOOT_X64EFI": "BOOTX64.EFIを検索して起動する",
"VTLANG_LB_SBOOT_IA32EFI": "BOOTIA32.EFIを検索して起動する",
"VTLANG_LB_SBOOT_AA64EFI": "BOOTAA64.EFIを検索して起動する",
"VTLANG_LB_SBOOT_XORBOOT": "xorbootを検索して起動する",
"VTMENU_FILE_CHKSUM": "ファイルのチェックサム",
"VTMENU_CHKSUM_MD5_CALC": "MD5 を計算する",
"VTMENU_CHKSUM_SHA1_CALC": "SHA1 を計算する",
"VTMENU_CHKSUM_SHA256_CALC": "SHA256 を計算する",
"VTMENU_CHKSUM_SHA512_CALC": "SHA512 を計算する",
"VTMENU_CHKSUM_MD5_CALC_CHK": "MD5 を計算して確認する",
"VTMENU_CHKSUM_SHA1_CALC_CHK": "SHA1 を計算して確認する",
"VTMENU_CHKSUM_SHA256_CALC_CHK": "SHA256 を計算して確認する",
"VTMENU_CHKSUM_SHA512_CALC_CHK": "SHA512 を計算して確認する",
"VTLANG_FILE_CHKSUM": "検査合計",
"VTLANG_CHKSUM_MD5_CALC": "MD5を算出する",
"VTLANG_CHKSUM_SHA1_CALC": "SHA1を算出する",
"VTLANG_CHKSUM_SHA256_CALC": "SHA256を算出する",
"VTLANG_CHKSUM_SHA512_CALC": "SHA512を算出する",
"VTLANG_CHKSUM_MD5_CALC_CHK": "MD5を算出して検証する",
"VTLANG_CHKSUM_SHA1_CALC_CHK": "SHA1を算出して検証する",
"VTLANG_CHKSUM_SHA256_CALC_CHK": "SHA256を算出して検証する",
"VTLANG_CHKSUM_SHA512_CALC_CHK": "SHA512を算出して検証する",
"VTMENU_POWER": "電源",
"VTMENU_POWER_REBOOT": "リブート",
"VTMENU_POWER_HALT": "電源を切る",
"VTMENU_POWER_BOOT_EFIFW": "再起動して EFI セットアップ",
"VTLANG_POWER": "電源",
"VTLANG_POWER_REBOOT": "再起動",
"VTLANG_POWER_HALT": "電源",
"VTLANG_POWER_BOOT_EFIFW": "再起動してEFIを構成する",
"VTMENU_KEYBRD_LAYOUT": "キーボード・レイアウト",
"VTMENU_HWINFO": "ハードウェア情報",
"VTLANG_KEYBRD_LAYOUT": "鍵盤配列",
"VTLANG_HWINFO": "機器情報",
"VTMENU_RESOLUTION_CFG": "画面解像度",
"VTMENU_SCREEN_MODE": "ディスプレイモード",
"VTMENU_SCREEN_TEXT_MODE": "テキストモード",
"VTMENU_SCREEN_GUI_MODE": "グラフィックモード",
"VTLANG_RESOLUTION_CFG": "画面解像度",
"VTLANG_SCREEN_MODE": "表示の種類",
"VTLANG_SCREEN_TEXT_MODE": "CLI表示を強制する",
"VTLANG_SCREEN_GUI_MODE": "GUI表示を強制する",
"VTMENU_THEME_SELECT": "テーマを選ぶ",
"VTLANG_THEME_SELECT": "外観",
"VTMENU_UTIL_SHOW_EFI_DRV": "Show EFI Drivers",
"VTMENU_UTIL_FIX_BLINIT_FAIL": "Fixup Windows BlinitializeLibrary Failure",
"VTLANG_UEFI_UTIL": "Ventoy UEFI Utilities",
"VTLANG_UTIL_SHOW_EFI_DRV": "EFIドライバを表示する",
"VTLANG_UTIL_FIX_BLINIT_FAIL": "Windowsが「BlinitializeLibrary Failure」で起動しないのを修正する",
"VTMENU_JSON_CHK_JSON": "プラグインの json 構成を確認する (ventoy.json)",
"VTMENU_JSON_CHK_CONTROL": "Global Control プラグインの構成を確認する",
"VTMENU_JSON_CHK_THEME": "Theme プラグインの構成を確認する",
"VTMENU_JSON_CHK_AUTOINS": "Auto install プラグインの構成を確認する",
"VTMENU_JSON_CHK_PERSIST": "Persistence プラグインの構成を確認する",
"VTMENU_JSON_CHK_MENU_ALIAS": "Menu alias プラグインの構成を確認する",
"VTMENU_JSON_CHK_MENU_TIP": "Menu tip プラグインの構成を確認する",
"VTMENU_JSON_CHK_MENU_CLASS": "Menu class プラグインの構成を確認する",
"VTMENU_JSON_CHK_INJECTION": "Injection プラグインの構成を確認する",
"VTMENU_JSON_CHK_AUTO_MEMDISK": "Auto memdisk プラグインの構成を確認する",
"VTMENU_JSON_CHK_IMG_LIST": "Image list プラグインの構成を確認する",
"VTMENU_JSON_CHK_IMG_BLIST": "Image black list プラグインの構成を確認する",
"VTMENU_JSON_CHK_CONF_REPLACE": "Boot conf replace プラグインの構成を確認する",
"VTMENU_JSON_CHK_DUD": "DUD プラグインの構成を確認する",
"VTMENU_JSON_CHK_PASSWORD": "Password プラグインの構成を確認する",
"VTLANG_JSON_CHK_JSON": "拡張機能のJSON構成ファイル (ventoy.json) を検査する",
"VTLANG_JSON_CHK_CONTROL": "拡張機能「global controlの構成を検査する",
"VTLANG_JSON_CHK_THEME": "拡張機能「theme」の構成を検査する",
"VTLANG_JSON_CHK_AUTOINS": "拡張機能「auto installの構成を検査する",
"VTLANG_JSON_CHK_PERSIST": "拡張機能「persistenceの構成を検査する",
"VTLANG_JSON_CHK_MENU_ALIAS": "拡張機能「menu aliasの構成を検査する",
"VTLANG_JSON_CHK_MENU_TIP": "拡張機能「menu tipの構成を検査する",
"VTLANG_JSON_CHK_MENU_CLASS": "拡張機能「menu classの構成を検査する",
"VTLANG_JSON_CHK_INJECTION": "拡張機能「injectionの構成を検査する",
"VTLANG_JSON_CHK_AUTO_MEMDISK": "拡張機能「auto memdiskの構成を検査する",
"VTLANG_JSON_CHK_IMG_LIST": "拡張機能「image listの構成を検査する",
"VTLANG_JSON_CHK_IMG_BLIST": "拡張機能「image blacklistの構成を検査する",
"VTLANG_JSON_CHK_CONF_REPLACE": "拡張機能「boot conf replaceの構成を検査する",
"VTLANG_JSON_CHK_DUD": "拡張機能「dud」の構成を検査する",
"VTLANG_JSON_CHK_PASSWORD": "拡張機能「passwordの構成を検査する",
"VTMENU_NORMAL_MODE": "通常モードで起動",
"VTMENU_WIMBOOT_MODE": "wimboot モードで起動",
"VTMENU_GRUB2_MODE": "grub2 モードで起動",
"VTMENU_MEMDISK_MODE": "memdisk モードで起動",
"VTLANG_NORMAL_MODE": "通常どおり起動",
"VTLANG_WIMBOOT_MODE": "WimBootを介して起動",
"VTLANG_GRUB2_MODE": "GRUB2を介して起動",
"VTLANG_MEMDISK_MODE": "MEMDISKを介して起動",
"VTMENU_RET_TO_LISTVIEW": "リストビューに戻る",
"VTMENU_RET_TO_TREEVIEW": "ツリー ビューに戻る",
"VTLANG_RET_TO_LISTVIEW": "一覧表示に切り替える",
"VTLANG_RET_TO_TREEVIEW": "階層表示に切り替える",
"VTMENU_NO_AUTOINS_SCRIPT": "自動インストール テンプレートを使用しない",
"VTMENU_AUTOINS_USE": "使用する",
"VTLANG_NO_AUTOINS_SCRIPT": "起動後に自動インストールを行わない",
"VTLANG_AUTOINS_USE": "自動インストールを行う",
"VTMENU_NO_PERSIST": "データ永続性を使用しない",
"VTMENU_PERSIST_USE": "使用する",
"VTLANG_NO_PERSIST": "Live環境の永続保管領域を無効にする",
"VTLANG_PERSIST_USE": "有効にする",
"VTMENU_BROWER_RETURN": "戻る",
"VTLANG_BROWER_RETURN": "戻る",
"VTLANG_ENTER_EXIT": "[Enter]を押して終了します",
"VTLANG_ENTER_REBOOT": "[Enter]を押して再起動します",
"VTLANG_ENTER_CONTINUE": "[Enter]を押して続行します",
"VTLANG_CTRL_TEMP_SET": "Temporary Control Settings",
"VTLANG_WIN11_BYPASS_CHECK": "Bypass CPU/TPM/SecureBoot check when install Windows 11",
"VTLANG_WIN11_BYPASS_NRO": "Bypass online account requirement when install Windows 11",
"VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux",
"VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu",
"MENU_STR_XXX": ""
}

View File

@@ -0,0 +1,92 @@
{
"VTLANG_LANGUAGE_NAME": "Georgian (ქართული)",
"VTLANG_STR_HOTKEY_LIST": "L:ენა F1:დახმარება F2:დათვალიერება F3:სიის ხედი F4:ლოკალური ჩატვირთვა F5:ხელსაწყოები F6:გასვლა",
"VTLANG_STR_HOTKEY_TREE": "L:ენა F1:დახმარება F2:დათვალიერება F3:ხის ხედი F4:ლოკალური ჩატვირთვა F5:ხელსაწყოები F6:გასვლა",
"VTLANG_RETURN_PREVIOUS": "წინა მენიუში დაბრუნება [Esc]",
"VTLANG_MENU_LANG": "მენიუს ენის არჩევა",
"VTLANG_LB_SBOOT_WINDOWS": "Windows-ის მოძებნა და ჩატვირთვა",
"VTLANG_LB_SBOOT_G4D": "Grub4dos-ის მოძებნა და ჩატვირთვა",
"VTLANG_LB_SBOOT_HDD1": "1-ლი ლოკალური მყარი დისკიდან ჩატვირთვა",
"VTLANG_LB_SBOOT_HDD2": "მე-2 ლოკალური მყარი დისკიდან ჩატვირთვა",
"VTLANG_LB_SBOOT_HDD3": "მე-3 ლოკალური მყარი დისკიდან ჩატვირთვა",
"VTLANG_LB_SBOOT_X64EFI": "BOOTX64.EFI-ის მოძებნა და ჩატვირთვა",
"VTLANG_LB_SBOOT_IA32EFI": "BOOTIA32.EFI-ის მოძებნა და ჩატვირთვა",
"VTLANG_LB_SBOOT_AA64EFI": "BOOTAA64.EFI-ის მოძებნა და ჩატვირთვა",
"VTLANG_LB_SBOOT_XORBOOT": "xorboot-ის მოძებნა და ჩატვირთვა",
"VTLANG_FILE_CHKSUM": "ფაილის საკონტროლო ჯამი",
"VTLANG_CHKSUM_MD5_CALC": "md5sum გამოთვლა",
"VTLANG_CHKSUM_SHA1_CALC": "sha1sum გამოთვლა",
"VTLANG_CHKSUM_SHA256_CALC": "sha256sum გამოთვლა",
"VTLANG_CHKSUM_SHA512_CALC": "sha512sum გამოთვლა",
"VTLANG_CHKSUM_MD5_CALC_CHK": "md5sum გამოთვლა და შემოწმება",
"VTLANG_CHKSUM_SHA1_CALC_CHK": "sha1sum გამოთვლა და შემოწმება",
"VTLANG_CHKSUM_SHA256_CALC_CHK": "sha256sum გამოთვლა და შემოწმება",
"VTLANG_CHKSUM_SHA512_CALC_CHK": "sha512sum გამოთვლა და შემოწმება",
"VTLANG_POWER": "კომპიუტერის გამორთვა",
"VTLANG_POWER_REBOOT": "კომპიუტერის გადატვირთვა",
"VTLANG_POWER_HALT": "კომპიუტერის გაჩერება",
"VTLANG_POWER_BOOT_EFIFW": "გადატვირთვა EFI კონფიგურაციის რეჟიმში",
"VTLANG_KEYBRD_LAYOUT": "კლავიატურის განლაგებები",
"VTLANG_HWINFO": "ინფორმაცია მოწყობილობების შესახებ",
"VTLANG_RESOLUTION_CFG": "გარჩევადობის კონფიგურაცია",
"VTLANG_SCREEN_MODE": "ჩვენების რეჟიმი",
"VTLANG_SCREEN_TEXT_MODE": "ჩვენების ტექსტური რეჟიმი",
"VTLANG_SCREEN_GUI_MODE": "ჩვენების გრაფიკული რეჟიმი",
"VTLANG_THEME_SELECT": "თემის არჩევა",
"VTLANG_UEFI_UTIL": "Ventoy UEFI Utilities",
"VTLANG_UTIL_SHOW_EFI_DRV": "EFI დრაივერების ჩვენება",
"VTLANG_UTIL_FIX_BLINIT_FAIL": "Windows BlinitializeLibrary ხარვეზის გასწორება",
"VTLANG_JSON_CHK_JSON": "მოდულების json კონფიგურაციის შემოწმება (ventoy.json)",
"VTLANG_JSON_CHK_CONTROL": "global control მოდულის კონფიგურაციის შემოწმება",
"VTLANG_JSON_CHK_THEME": "theme მოდულის კონფიგურაციის შემოწმება",
"VTLANG_JSON_CHK_AUTOINS": "auto install მოდულის კონფიგურაციის შემოწმება",
"VTLANG_JSON_CHK_PERSIST": "persistence მოდულის კონფიგურაციის შემოწმება",
"VTLANG_JSON_CHK_MENU_ALIAS": "menu alias მოდულის კონფიგურაციის შემოწმება",
"VTLANG_JSON_CHK_MENU_TIP": "menu tip მოდულის კონფიგურაციის შემოწმება",
"VTLANG_JSON_CHK_MENU_CLASS": "menu class მოდულის კონფიგურაციის შემოწმება",
"VTLANG_JSON_CHK_INJECTION": "injection მოდულის კონფიგურაციის შემოწმება",
"VTLANG_JSON_CHK_AUTO_MEMDISK": "auto memdisk მოდულის კონფიგურაციის შემოწმება",
"VTLANG_JSON_CHK_IMG_LIST": "image list მოდულის კონფიგურაციის შემოწმება",
"VTLANG_JSON_CHK_IMG_BLIST": "image blacklist მოდულის კონფიგურაციის შემოწმება",
"VTLANG_JSON_CHK_CONF_REPLACE": "boot conf replace მოდულის კონფიგურაციის შემოწმება",
"VTLANG_JSON_CHK_DUD": "dud მოდულის კონფიგურაციის შემოწმება",
"VTLANG_JSON_CHK_PASSWORD": "password მოდულის კონფიგურაციის შემოწმება",
"VTLANG_NORMAL_MODE": "ჩატვირთვა normal რეჟიმში",
"VTLANG_WIMBOOT_MODE": "ჩატვირთვა wimboot რეჟიმში",
"VTLANG_GRUB2_MODE": "ჩატვირთვა grub2 რეჟიმში",
"VTLANG_MEMDISK_MODE": "ჩატვირთვა memdisk რეჟიმში",
"VTLANG_RET_TO_LISTVIEW": "სიის ხედის დაბრუნება",
"VTLANG_RET_TO_TREEVIEW": "ხის ხედის დაბრუნება",
"VTLANG_NO_AUTOINS_SCRIPT": "ჩატვირთვა ავტომატური ინსტალაციის სკრიპტის გარეშე",
"VTLANG_AUTOINS_USE": "ჩატვირთვა ავტომატური ინსტალაციის რეჟიმში",
"VTLANG_NO_PERSIST": "ჩატვირთვა ცვლილებების შენახვის რეჟიმის გარეშე",
"VTLANG_PERSIST_USE": "ჩატვირთვა ცვლილებების შენახვის რეჟიმში",
"VTLANG_BROWER_RETURN": "დაბრუნება",
"VTLANG_ENTER_EXIT": "გასასვლელად დააჭირეთ Enter ღილაკს",
"VTLANG_ENTER_REBOOT": "დააჭირეთ Enter ღილაკს გადატვირთვისთვის",
"VTLANG_ENTER_CONTINUE": "გასაგრძელებლად დააჭირეთ Enter ღილაკს",
"VTLANG_CTRL_TEMP_SET": "Temporary Control Settings",
"VTLANG_WIN11_BYPASS_CHECK": "Bypass CPU/TPM/SecureBoot check when install Windows 11",
"VTLANG_WIN11_BYPASS_NRO": "Bypass online account requirement when install Windows 11",
"VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux",
"VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu",
"MENU_STR_XXX": ""
}

View File

@@ -1,81 +1,92 @@
{
"VTMENU_LANGUAGE_NAME": "Korean (한국어)",
"VTLANG_LANGUAGE_NAME": "Korean (한국어)",
"VTMENU_STR_HOTKEY_LIST": "L:언어 F1:도움말 F2:찾아보기 F3:목록 보기 F4:로컬 부트 F5:도구 F6:확장 메뉴",
"VTMENU_STR_HOTKEY_TREE": "L:언어 F1:도움말 F2:찾아보기 F3:목록 보기 F4:로컬 부트 F5:도구 F6:확장 메뉴",
"VTMENU_RETURN_PREVIOUS": "이전 메뉴로 돌아가기 [Esc]",
"VTLANG_STR_HOTKEY_LIST": "번역: 비너스걸 L:언어 F1:도움말 F2:찾아보기 F3:목록보기 F4:로컬부트 F5:도구 F6:확장메뉴",
"VTLANG_STR_HOTKEY_TREE": "번역: 비너스걸 L:언어 F1:도움말 F2:찾아보기 F3:목록보기 F4:로컬부트 F5:도구 F6:확장메뉴",
"VTLANG_RETURN_PREVIOUS": "이전 메뉴로 돌아가기 [Esc]",
"VTMENU_MENU_LANG": "메뉴 언어 선택 (번역: 비너스걸)",
"VTLANG_MENU_LANG": "메뉴 언어 선택",
"VTMENU_LB_SBOOT_WINDOWS": "Windows 검색 및 부트",
"VTMENU_LB_SBOOT_G4D": "Grub4dos 검색 및 부트",
"VTMENU_LB_SBOOT_HDD1": "첫 번째 로컬 디스크 부트",
"VTMENU_LB_SBOOT_HDD2": "두 번째 로컬 디스크 부트",
"VTMENU_LB_SBOOT_HDD3": "세 번째 로컬 디스크 부트",
"VTMENU_LB_SBOOT_X64EFI": "BOOTX64.EFI 검색 및 부트",
"VTMENU_LB_SBOOT_IA32EFI": "BOOTIA32.EFI 검색 및 부트",
"VTMENU_LB_SBOOT_AA64EFI": "BOOTAA64.EFI 검색 및 부트",
"VTMENU_LB_SBOOT_XORBOOT": "xorboot 검색 및 부트",
"VTLANG_LB_SBOOT_WINDOWS": "Windows 검색 및 부트",
"VTLANG_LB_SBOOT_G4D": "Grub4dos 검색 및 부트",
"VTLANG_LB_SBOOT_HDD1": "첫 번째 로컬 디스크 부트",
"VTLANG_LB_SBOOT_HDD2": "두 번째 로컬 디스크 부트",
"VTLANG_LB_SBOOT_HDD3": "세 번째 로컬 디스크 부트",
"VTLANG_LB_SBOOT_X64EFI": "BOOTX64.EFI 검색 및 부트",
"VTLANG_LB_SBOOT_IA32EFI": "BOOTIA32.EFI 검색 및 부트",
"VTLANG_LB_SBOOT_AA64EFI": "BOOTAA64.EFI 검색 및 부트",
"VTLANG_LB_SBOOT_XORBOOT": "xorboot 검색 및 부트",
"VTMENU_FILE_CHKSUM": "파일 체크섬",
"VTMENU_CHKSUM_MD5_CALC": "md5sum 계산",
"VTMENU_CHKSUM_SHA1_CALC": "sha1sum 계산",
"VTMENU_CHKSUM_SHA256_CALC": "sha256sum 계산",
"VTMENU_CHKSUM_SHA512_CALC": "sha512sum 계산",
"VTMENU_CHKSUM_MD5_CALC_CHK": "md5sum 계산 및 확인",
"VTMENU_CHKSUM_SHA1_CALC_CHK": "sha1sum 계산 및 확인",
"VTMENU_CHKSUM_SHA256_CALC_CHK": "sha256sum 계산 및 확인",
"VTMENU_CHKSUM_SHA512_CALC_CHK": "sha512sum 계산 및 확인",
"VTLANG_FILE_CHKSUM": "파일 체크섬",
"VTLANG_CHKSUM_MD5_CALC": "md5sum 계산",
"VTLANG_CHKSUM_SHA1_CALC": "sha1sum 계산",
"VTLANG_CHKSUM_SHA256_CALC": "sha256sum 계산",
"VTLANG_CHKSUM_SHA512_CALC": "sha512sum 계산",
"VTLANG_CHKSUM_MD5_CALC_CHK": "md5sum 계산 및 확인",
"VTLANG_CHKSUM_SHA1_CALC_CHK": "sha1sum 계산 및 확인",
"VTLANG_CHKSUM_SHA256_CALC_CHK": "sha256sum 계산 및 확인",
"VTLANG_CHKSUM_SHA512_CALC_CHK": "sha512sum 계산 및 확인",
"VTMENU_POWER": "전원",
"VTMENU_POWER_REBOOT": "다시 부트",
"VTMENU_POWER_HALT": "끄기",
"VTMENU_POWER_BOOT_EFIFW": "EFI 설정으로 재부트",
"VTLANG_POWER": "전원",
"VTLANG_POWER_REBOOT": "다시 부트",
"VTLANG_POWER_HALT": "끄기",
"VTLANG_POWER_BOOT_EFIFW": "EFI 설정으로 재부트",
"VTMENU_KEYBRD_LAYOUT": "키보드 레이아웃",
"VTMENU_HWINFO": "하드웨어 정보",
"VTLANG_KEYBRD_LAYOUT": "키보드 레이아웃",
"VTLANG_HWINFO": "하드웨어 정보",
"VTMENU_RESOLUTION_CFG": "해상도 구성",
"VTMENU_SCREEN_MODE": "화면 표시 모드",
"VTMENU_SCREEN_TEXT_MODE": "강제 텍스트 모드",
"VTMENU_SCREEN_GUI_MODE": "강제 그래픽 모드",
"VTLANG_RESOLUTION_CFG": "해상도 구성",
"VTLANG_SCREEN_MODE": "화면 표시 모드",
"VTLANG_SCREEN_TEXT_MODE": "강제 텍스트 모드",
"VTLANG_SCREEN_GUI_MODE": "강제 그래픽 모드",
"VTMENU_THEME_SELECT": "테마 선택",
"VTLANG_THEME_SELECT": "테마 선택",
"VTMENU_UTIL_SHOW_EFI_DRV": "EFI 드라이버 표시",
"VTMENU_UTIL_FIX_BLINIT_FAIL": "Windows 초기화 라이브러리 오류 복구",
"VTLANG_UEFI_UTIL": "Ventoy UEFI 유틸리티",
"VTLANG_UTIL_SHOW_EFI_DRV": "EFI 드라이버 표시",
"VTLANG_UTIL_FIX_BLINIT_FAIL": "Windows 초기화 라이브러리 오류 복구",
"VTMENU_JSON_CHK_JSON": "플러그인 json 구성 확인 (ventoy.json)",
"VTMENU_JSON_CHK_CONTROL": "전역 제어 플러그인 구성 확인",
"VTMENU_JSON_CHK_THEME": "테마 플러그인 구성 확인",
"VTMENU_JSON_CHK_AUTOINS": "자동 설치 플러그인 구성 확인",
"VTMENU_JSON_CHK_PERSIST": "지속성 플러그인 구성 확인",
"VTMENU_JSON_CHK_MENU_ALIAS": "메뉴 별칭 플러그인 구성 확인",
"VTMENU_JSON_CHK_MENU_TIP": "메뉴 팁 플러그인 구성 확인",
"VTMENU_JSON_CHK_MENU_CLASS": "메뉴 클래스 플러그인 구성 확인",
"VTMENU_JSON_CHK_INJECTION": "주입 플러그인 구성 확인",
"VTMENU_JSON_CHK_AUTO_MEMDISK": "자동 메모리 디스크 플러그인 구성 확인",
"VTMENU_JSON_CHK_IMG_LIST": "이미지 목록 플러그인 구성 확인",
"VTMENU_JSON_CHK_IMG_BLIST": "이미지 블랙리스트 플러그인 구성 확인",
"VTMENU_JSON_CHK_CONF_REPLACE": "부팅 구성 대체 플러그인 구성 확인",
"VTMENU_JSON_CHK_DUD": "드라이버 디스크 업데이트 플러그인 구성 확인",
"VTMENU_JSON_CHK_PASSWORD": "암호 플러그인 구성 확인",
"VTLANG_JSON_CHK_JSON": "플러그인 json 구성 확인 (ventoy.json)",
"VTLANG_JSON_CHK_CONTROL": "전역 제어 플러그인 구성 확인",
"VTLANG_JSON_CHK_THEME": "테마 플러그인 구성 확인",
"VTLANG_JSON_CHK_AUTOINS": "자동 설치 플러그인 구성 확인",
"VTLANG_JSON_CHK_PERSIST": "지속성 플러그인 구성 확인",
"VTLANG_JSON_CHK_MENU_ALIAS": "메뉴 별칭 플러그인 구성 확인",
"VTLANG_JSON_CHK_MENU_TIP": "메뉴 팁 플러그인 구성 확인",
"VTLANG_JSON_CHK_MENU_CLASS": "메뉴 클래스 플러그인 구성 확인",
"VTLANG_JSON_CHK_INJECTION": "주입 플러그인 구성 확인",
"VTLANG_JSON_CHK_AUTO_MEMDISK": "자동 메모리 디스크 플러그인 구성 확인",
"VTLANG_JSON_CHK_IMG_LIST": "이미지 목록 플러그인 구성 확인",
"VTLANG_JSON_CHK_IMG_BLIST": "이미지 블랙리스트 플러그인 구성 확인",
"VTLANG_JSON_CHK_CONF_REPLACE": "부팅 구성 대체 플러그인 구성 확인",
"VTLANG_JSON_CHK_DUD": "드라이버 디스크 업데이트 플러그인 구성 확인",
"VTLANG_JSON_CHK_PASSWORD": "암호 플러그인 구성 확인",
"VTMENU_NORMAL_MODE": "정상 모드로 부트",
"VTMENU_WIMBOOT_MODE": "wimboot 모드로 부트",
"VTMENU_GRUB2_MODE": "grub2 모드로 부팅",
"VTMENU_MEMDISK_MODE": "memdisk 모드로 부트",
"VTLANG_NORMAL_MODE": "정상 모드로 부트",
"VTLANG_WIMBOOT_MODE": "wimboot 모드로 부트",
"VTLANG_GRUB2_MODE": "grub2 모드로 부팅",
"VTLANG_MEMDISK_MODE": "memdisk 모드로 부트",
"VTMENU_RET_TO_LISTVIEW": "목록 보기로 돌아가기",
"VTMENU_RET_TO_TREEVIEW": "트리 보기로 돌아가기",
"VTLANG_RET_TO_LISTVIEW": "목록 보기로 돌아가기",
"VTLANG_RET_TO_TREEVIEW": "트리 보기로 돌아가기",
"VTMENU_NO_AUTOINS_SCRIPT": "자동 설치 템플릿 없이 부트",
"VTMENU_AUTOINS_USE": "부팅 대상",
"VTLANG_NO_AUTOINS_SCRIPT": "자동 설치 템플릿 없이 부트",
"VTLANG_AUTOINS_USE": "부팅 대상",
"VTMENU_NO_PERSIST": "지속성 없는 부트",
"VTMENU_PERSIST_USE": "부트 대상",
"VTLANG_NO_PERSIST": "지속성 없는 부트",
"VTLANG_PERSIST_USE": "부트 대상",
"VTMENU_BROWER_RETURN": "돌아가기",
"VTLANG_BROWER_RETURN": "돌아가기",
"VTLANG_ENTER_EXIT": "Enter 키를 눌러 종료",
"VTLANG_ENTER_REBOOT": "Enter 키를 눌러 재부팅",
"VTLANG_ENTER_CONTINUE": "계속하려면 Enter 키를 누르십시오",
"VTLANG_CTRL_TEMP_SET": "임시 제어 설정",
"VTLANG_WIN11_BYPASS_CHECK": "Windows 11을 설치할 때 우회 점검",
"VTLANG_WIN11_BYPASS_NRO": "Windows 11 설치 시 온라인 계정 요구 사항 우회",
"VTLANG_LINUX_REMOUNT": "Linux 부트 후 Ventoy 파티션 마운트",
"VTLANG_SECONDARY_BOOT_MENU": "보조 부트 메뉴 표시",
"MENU_STR_XXX": ""
}

View File

@@ -0,0 +1,92 @@
{
"VTLANG_LANGUAGE_NAME": "Polish (Poland)",
"VTLANG_STR_HOTKEY_LIST": "L:Język F1:Pomoc F2:Przeglądaj F3:ListView F4:Localboot F5:Narzędzia F6:ExMenu",
"VTLANG_STR_HOTKEY_TREE": "L:Język F1:Pomoc F2:Przeglądaj F3:Widok drzewa F4:Localboot F5:Narzędzia F6:ExMenu",
"VTLANG_RETURN_PREVIOUS": "Powrót do poprzedniego menu [Esc]",
"VTLANG_MENU_LANG": "Wybór języka menu",
"VTLANG_LB_SBOOT_WINDOWS": "Wyszukaj i uruchom system Windows",
"VTLANG_LB_SBOOT_G4D": "Wyszukaj i uruchom Grub4dos",
"VTLANG_LB_SBOOT_HDD1": "Uruchom pierwszy dysk lokalny",
"VTLANG_LB_SBOOT_HDD2": "Uruchom drugi dysk lokalny",
"VTLANG_LB_SBOOT_HDD3": "Uruchom trzeci dysk lokalny",
"VTLANG_LB_SBOOT_X64EFI": "Wyszukaj i uruchom BOOTX64.EFI",
"VTLANG_LB_SBOOT_IA32EFI": "Wyszukaj i uruchom BOOTIA32.EFI",
"VTLANG_LB_SBOOT_AA64EFI": "Wyszukaj i uruchom BOOTAA64.EFI",
"VTLANG_LB_SBOOT_XORBOOT": "Wyszukaj i uruchom xorboot",
"VTLANG_FILE_CHKSUM": "Suma kontrolna pliku",
"VTLANG_CHKSUM_MD5_CALC": "Oblicz sumę md5",
"VTLANG_CHKSUM_SHA1_CALC": "Oblicz sumę sha1",
"VTLANG_CHKSUM_SHA256_CALC": "Oblicz sumę sha256",
"VTLANG_CHKSUM_SHA512_CALC": "Oblicz sumę sha512",
"VTLANG_CHKSUM_MD5_CALC_CHK": "Oblicz i sprawdź sumę md5",
"VTLANG_CHKSUM_SHA1_CALC_CHK": "Oblicz i sprawdź sumę sha1",
"VTLANG_CHKSUM_SHA256_CALC_CHK": "Oblicz i sprawdź sumę sha256",
"VTLANG_CHKSUM_SHA512_CALC_CHK": "Oblicz i sprawdź sumę sha512",
"VTLANG_POWER": "Moc",
"VTLANG_POWER_REBOOT": "Uruchom ponownie",
"VTLANG_POWER_HALT": "Zatrzymanie",
"VTLANG_POWER_BOOT_EFIFW": "Uruchom ponownie do konfiguracji EFI",
"VTLANG_KEYBRD_LAYOUT": "Układy klawiatury",
"VTLANG_HWINFO": "Informacje o sprzęcie",
"VTLANG_RESOLUTION_CFG": "Konfiguracja rozdzielczości",
"VTLANG_SCREEN_MODE": "Tryb wyświetlania ekranu",
"VTLANG_SCREEN_TEXT_MODE": "Wymuś tryb tekstowy",
"VTLANG_SCREEN_GUI_MODE": "Wymuś tryb graficzny",
"VTLANG_THEME_SELECT": "Wybór motywu",
"VTLANG_UEFI_UTIL": "Ventoy UEFI Utilities",
"VTLANG_UTIL_SHOW_EFI_DRV": "Pokaż sterowniki EFI",
"VTLANG_UTIL_FIX_BLINIT_FAIL": "Napraw błąd BlinitializeLibrary systemu Windows",
"VTLANG_JSON_CHK_JSON": "Sprawdź konfigurację wtyczki json (ventoy.json)",
"VTLANG_JSON_CHK_CONTROL": "Sprawdź konfigurację wtyczki globalnej kontroli",
"VTLANG_JSON_CHK_THEME": "Sprawdź konfigurację wtyczki motywu",
"VTLANG_JSON_CHK_AUTOINS": "Sprawdź konfigurację automatycznej instalacji wtyczki",
"VTLANG_JSON_CHK_PERSIST": "Sprawdź konfigurację wtyczki trwałości",
"VTLANG_JSON_CHK_MENU_ALIAS": "Sprawdź konfigurację wtyczek aliasów menu",
"VTLANG_JSON_CHK_MENU_TIP": "Sprawdź konfigurację wtyczki podpowiedzi menu",
"VTLANG_JSON_CHK_MENU_CLASS": "Sprawdź konfigurację wtyczki klasy menu",
"VTLANG_JSON_CHK_INJECTION": "Sprawdź konfigurację wtyczki wtrysku",
"VTLANG_JSON_CHK_AUTO_MEMDISK": "Sprawdź automatyczną konfigurację wtyczki memdisk",
"VTLANG_JSON_CHK_IMG_LIST": "Sprawdź konfigurację wtyczki listy obrazów",
"VTLANG_JSON_CHK_IMG_BLIST": "Sprawdź konfigurację wtyczki czarnej listy obrazów",
"VTLANG_JSON_CHK_CONF_REPLACE": "Sprawdź konfigurację bootowania zamień konfigurację wtyczki",
"VTLANG_JSON_CHK_DUD": "Sprawdź konfigurację wtyczki dud",
"VTLANG_JSON_CHK_PASSWORD": "Sprawdź konfigurację wtyczki hasła",
"VTLANG_NORMAL_MODE": "Uruchom w trybie normalnym",
"VTLANG_WIMBOOT_MODE": "Uruchom w trybie Wimboot",
"VTLANG_GRUB2_MODE": "Uruchom w trybie grub2",
"VTLANG_MEMDISK_MODE": "Uruchom w trybie memdisk",
"VTLANG_RET_TO_LISTVIEW": "Powrót do widoku listy",
"VTLANG_RET_TO_TREEVIEW": "Powrót do TreeView",
"VTLANG_NO_AUTOINS_SCRIPT": "Uruchom bez szablonu automatycznej instalacji",
"VTLANG_AUTOINS_USE": "Uruchom z",
"VTLANG_NO_PERSIST": "Uruchom bez trwałości",
"VTLANG_PERSIST_USE": "Uruchom z",
"VTLANG_BROWER_RETURN": "Powrót",
"VTLANG_ENTER_EXIT": "naciśnij klawisz Enter, aby wyjść",
"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 CPU/TPM/SecureBoot check when install Windows 11",
"VTLANG_WIN11_BYPASS_NRO": "Bypass online account requirement when install Windows 11",
"VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux",
"VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu",
"MENU_STR_XXX": ""
}

View File

@@ -1,81 +1,92 @@
{
"VTMENU_LANGUAGE_NAME": "Portuguese (Português de Portugal)",
"VTLANG_LANGUAGE_NAME": "Portuguese (Português de Portugal)",
"VTMENU_STR_HOTKEY_LIST": "L:Língua F1:Ajuda F2:Navegar F3:Exibição de lista F4:Inicialização local F5:Ferramentas F6:ExMenu",
"VTMENU_STR_HOTKEY_TREE": "L:Língua F1:Ajuda F2:Navegar F3:TreeView F4:Inicialização local F5:Ferramentas F6:ExMenu",
"VTMENU_RETURN_PREVIOUS": "Return to previous menu [Esc]",
"VTLANG_STR_HOTKEY_LIST": "L:Idioma F1:Ajuda F2:Navegar F3:Estrutura F4:Arranque local F5:Ferramentas F6:Sair",
"VTLANG_STR_HOTKEY_TREE": "L:Idioma F1:Ajuda F2:Navegar F3:Estrutura F4:Arranque local F5:Ferramentas F6:Sair",
"VTLANG_RETURN_PREVIOUS": "Voltar ao menu anterior [Esc]",
"VTMENU_MENU_LANG": "Seleção de idioma do menu",
"VTLANG_MENU_LANG": "Seleção de idioma do menu",
"VTMENU_LB_SBOOT_WINDOWS": "Pesquise e inicialize o Windows",
"VTMENU_LB_SBOOT_G4D": "Pesquise e inicialize o Grub4dos",
"VTMENU_LB_SBOOT_HDD1": "Inicialize o 1º disco local",
"VTMENU_LB_SBOOT_HDD2": "Inicialize o segundo disco local",
"VTMENU_LB_SBOOT_HDD3": "Inicialize o terceiro disco local",
"VTMENU_LB_SBOOT_X64EFI": "Pesquise e inicialize o BOOTX64.EFI",
"VTMENU_LB_SBOOT_IA32EFI": "Pesquise e inicialize o BOOTIA32.EFI",
"VTMENU_LB_SBOOT_AA64EFI": "Pesquise e inicialize o BOOTAA64.EFI",
"VTMENU_LB_SBOOT_XORBOOT": "Pesquise e inicialize o xorboot",
"VTLANG_LB_SBOOT_WINDOWS": "Pesquisar e iniciar o Windows",
"VTLANG_LB_SBOOT_G4D": "Pesquisar e iniciar o Grub4dos",
"VTLANG_LB_SBOOT_HDD1": "Arrancar o 1º disco local",
"VTLANG_LB_SBOOT_HDD2": "Arrancar o 2º disco local",
"VTLANG_LB_SBOOT_HDD3": "Arrancar o 3º disco local",
"VTLANG_LB_SBOOT_X64EFI": "Pesquisar e iniciar o BOOTX64.EFI",
"VTLANG_LB_SBOOT_IA32EFI": "Pesquisar e iniciar o BOOTIA32.EFI",
"VTLANG_LB_SBOOT_AA64EFI": "Pesquisar e iniciar o BOOTAA64.EFI",
"VTLANG_LB_SBOOT_XORBOOT": "Pesquisar e iniciar o xorboot",
"VTMENU_FILE_CHKSUM": "Soma de verificação do arquivo",
"VTMENU_CHKSUM_MD5_CALC": "Calcular MD5",
"VTMENU_CHKSUM_SHA1_CALC": "Calcular SHA1",
"VTMENU_CHKSUM_SHA256_CALC": "Calcular SHA256",
"VTMENU_CHKSUM_SHA512_CALC": "Calcular SHA512",
"VTMENU_CHKSUM_MD5_CALC_CHK": "Calcular e verificar MD5",
"VTMENU_CHKSUM_SHA1_CALC_CHK": "Calcular e verificar SHA1",
"VTMENU_CHKSUM_SHA256_CALC_CHK": "Calcular e verificar SHA256",
"VTMENU_CHKSUM_SHA512_CALC_CHK": "Calcular e verificar SHA512",
"VTLANG_FILE_CHKSUM": "Checksum do ficheiro",
"VTLANG_CHKSUM_MD5_CALC": "Calcular MD5",
"VTLANG_CHKSUM_SHA1_CALC": "Calcular SHA1",
"VTLANG_CHKSUM_SHA256_CALC": "Calcular SHA256",
"VTLANG_CHKSUM_SHA512_CALC": "Calcular SHA512",
"VTLANG_CHKSUM_MD5_CALC_CHK": "Calcular e verificar MD5",
"VTLANG_CHKSUM_SHA1_CALC_CHK": "Calcular e verificar SHA1",
"VTLANG_CHKSUM_SHA256_CALC_CHK": "Calcular e verificar SHA256",
"VTLANG_CHKSUM_SHA512_CALC_CHK": "Calcular e verificar SHA512",
"VTMENU_POWER": "Fonte de energia",
"VTMENU_POWER_REBOOT": "Reinício",
"VTMENU_POWER_HALT": "Desligar",
"VTMENU_POWER_BOOT_EFIFW": "Reinicie a configuração EFI",
"VTLANG_POWER": "Energia",
"VTLANG_POWER_REBOOT": "Reiniciar",
"VTLANG_POWER_HALT": "Desligar",
"VTLANG_POWER_BOOT_EFIFW": "Reiniciar com a configuração EFI",
"VTMENU_KEYBRD_LAYOUT": "Layouts de teclado",
"VTMENU_HWINFO": "Informações de hardware",
"VTLANG_KEYBRD_LAYOUT": "Esquemas de teclado",
"VTLANG_HWINFO": "Informação do hardware",
"VTMENU_RESOLUTION_CFG": "Configuração de resolução",
"VTMENU_SCREEN_MODE": "Screen Modo de exibição",
"VTMENU_SCREEN_TEXT_MODE": "Modo de texto",
"VTMENU_SCREEN_GUI_MODE": "Modo gráfico",
"VTLANG_RESOLUTION_CFG": "Configuração da resolução",
"VTLANG_SCREEN_MODE": "Modo de exibição",
"VTLANG_SCREEN_TEXT_MODE": "Modo texto",
"VTLANG_SCREEN_GUI_MODE": "Modo gráfico",
"VTMENU_THEME_SELECT": "Seleção de tema",
"VTLANG_THEME_SELECT": "Seleção de tema",
"VTMENU_UTIL_SHOW_EFI_DRV": "Show EFI Drivers",
"VTMENU_UTIL_FIX_BLINIT_FAIL": "Fixup Windows BlinitializeLibrary Failure",
"VTLANG_UEFI_UTIL": "Ventoy UEFI Utilities",
"VTLANG_UTIL_SHOW_EFI_DRV": "Mostrar controladores EFI",
"VTLANG_UTIL_FIX_BLINIT_FAIL": "Corrigir falha BlinitializeLibrary do Windows",
"VTMENU_JSON_CHK_JSON": "Check plugin json configuration (ventoy.json)",
"VTMENU_JSON_CHK_CONTROL": "Check global control plugin configuration",
"VTMENU_JSON_CHK_THEME": "Check theme plugin configuration",
"VTMENU_JSON_CHK_AUTOINS": "Check auto install plugin configuration",
"VTMENU_JSON_CHK_PERSIST": "Check persistence plugin configuration",
"VTMENU_JSON_CHK_MENU_ALIAS": "Check menu alias plugin configuration",
"VTMENU_JSON_CHK_MENU_TIP": "Check menu tip plugin configuration",
"VTMENU_JSON_CHK_MENU_CLASS": "Check menu class plugin configuration",
"VTMENU_JSON_CHK_INJECTION": "Check injection plugin configuration",
"VTMENU_JSON_CHK_AUTO_MEMDISK": "Check auto memdisk plugin configuration",
"VTMENU_JSON_CHK_IMG_LIST": "Check image list plugin configuration",
"VTMENU_JSON_CHK_IMG_BLIST": "Check image blacklist plugin configuration",
"VTMENU_JSON_CHK_CONF_REPLACE": "Check boot conf replace plugin configuration",
"VTMENU_JSON_CHK_DUD": "Check dud plugin configuration",
"VTMENU_JSON_CHK_PASSWORD": "Check password plugin configuration",
"VTLANG_JSON_CHK_JSON": "Verificar configuração do plugin json (ventoy.json)",
"VTLANG_JSON_CHK_CONTROL": "Verificar a configuração do plugin de controlo global",
"VTLANG_JSON_CHK_THEME": "Verificar configuração do plugin do tema",
"VTLANG_JSON_CHK_AUTOINS": "Verificar a configuração do plugin de instalação automática",
"VTLANG_JSON_CHK_PERSIST": "Verificar a configuração do plugin de persistência",
"VTLANG_JSON_CHK_MENU_ALIAS": "Verificar a configuração do plugin do menu alias",
"VTLANG_JSON_CHK_MENU_TIP": "Verificar a configuração do plugin do menu de dica",
"VTLANG_JSON_CHK_MENU_CLASS": "Verificar a configuração do plugin do menu classe",
"VTLANG_JSON_CHK_INJECTION": "Verificar a configuração do plugin de injeção",
"VTLANG_JSON_CHK_AUTO_MEMDISK": "Verificar a configuração do plugin automático do memdisk",
"VTLANG_JSON_CHK_IMG_LIST": "Verificar configuração do plugin da lista de imagens",
"VTLANG_JSON_CHK_IMG_BLIST": "Verificar configuração do plugin da lista negra de imagens",
"VTLANG_JSON_CHK_CONF_REPLACE": "Verificar a configuração do plugin de substituição de conf. de arranque",
"VTLANG_JSON_CHK_DUD": "Verificar configuração do plugin dud",
"VTLANG_JSON_CHK_PASSWORD": "Verificar configuração do plugin palavra-passe",
"VTMENU_NORMAL_MODE": "Inicializar no modo normal",
"VTMENU_WIMBOOT_MODE": "Inicializar no modo wimboot",
"VTMENU_GRUB2_MODE": "Inicializar no modo grub2",
"VTMENU_MEMDISK_MODE": "Inicializar no modo memdisk",
"VTLANG_NORMAL_MODE": "Arrancar no modo normal",
"VTLANG_WIMBOOT_MODE": "Arrancar no modo wimboot",
"VTLANG_GRUB2_MODE": "Arrancar no modo grub2",
"VTLANG_MEMDISK_MODE": "Arrancar no modo memdisk",
"VTMENU_RET_TO_LISTVIEW": "Retornar para ListView",
"VTMENU_RET_TO_TREEVIEW": "Retornar para TreeView",
"VTLANG_RET_TO_LISTVIEW": "Voltar para Lista",
"VTLANG_RET_TO_TREEVIEW": "Voltar para Estrutura",
"VTMENU_NO_AUTOINS_SCRIPT": "Boot without auto installation template",
"VTMENU_AUTOINS_USE": "Boot with",
"VTLANG_NO_AUTOINS_SCRIPT": "Arrancar sem modelo de instalação automática",
"VTLANG_AUTOINS_USE": "Arrancar com",
"VTMENU_NO_PERSIST": "Boot without persistence",
"VTMENU_PERSIST_USE": "Boot with",
"VTLANG_NO_PERSIST": "Arrancar sem persistência",
"VTLANG_PERSIST_USE": "Arrancar com",
"VTMENU_BROWER_RETURN": "Retornar",
"VTLANG_BROWER_RETURN": "Voltar",
"VTLANG_ENTER_EXIT": "pressione a tecla Enter para sair",
"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 CPU/TPM/SecureBoot check when install Windows 11",
"VTLANG_WIN11_BYPASS_NRO": "Bypass online account requirement when install Windows 11",
"VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux",
"VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu",
"MENU_STR_XXX": ""
}

View File

@@ -1,81 +1,92 @@
{
"VTMENU_LANGUAGE_NAME": "Russian (Русский)",
"VTLANG_LANGUAGE_NAME": "Russian (Русский)",
"VTMENU_STR_HOTKEY_LIST": "L:Язык F1:Помощь F2:Просмотр F3:ListView F4:Локальная загрузка F5:Инструменты F6:Выйти из меню",
"VTMENU_STR_HOTKEY_TREE": "L:Язык F1:Помощь F2:Просмотр F3:TreeView F4:Локальная загрузка F5:Инструменты F6:Выйти из меню",
"VTMENU_RETURN_PREVIOUS": "Вернуться в предыдущее меню [Esc]",
"VTLANG_STR_HOTKEY_LIST": "L:Язык F1:Помощь F2:Просмотр F3:ListView F4:Локальная загрузка F5:Инструменты F6:Выйти из меню",
"VTLANG_STR_HOTKEY_TREE": "L:Язык F1:Помощь F2:Просмотр F3:TreeView F4:Локальная загрузка F5:Инструменты F6:Выйти из меню",
"VTLANG_RETURN_PREVIOUS": "Вернуться в предыдущее меню [Esc]",
"VTMENU_MENU_LANG": "Выбор языка меню",
"VTLANG_MENU_LANG": "Выбор языка меню",
"VTMENU_LB_SBOOT_WINDOWS": "Найти и загрузить Windows",
"VTMENU_LB_SBOOT_G4D": "Найти и загрузить Grub4dos",
"VTMENU_LB_SBOOT_HDD1": "Загрузить 1-й локальный диск",
"VTMENU_LB_SBOOT_HDD2": "Загрузить 2-й локальный диск",
"VTMENU_LB_SBOOT_HDD3": "Загрузить 3-й локальный диск",
"VTMENU_LB_SBOOT_X64EFI": "Найти и загрузить OOTX64.EFI",
"VTMENU_LB_SBOOT_IA32EFI": "Найти и загрузить BOOTIA32.EFI",
"VTMENU_LB_SBOOT_AA64EFI": "Найти и загрузить BOOTAA64.EFI",
"VTMENU_LB_SBOOT_XORBOOT": "Найти и загрузить xorboot",
"VTLANG_LB_SBOOT_WINDOWS": "Найти и загрузить Windows",
"VTLANG_LB_SBOOT_G4D": "Найти и загрузить Grub4dos",
"VTLANG_LB_SBOOT_HDD1": "Загрузить 1-й локальный диск",
"VTLANG_LB_SBOOT_HDD2": "Загрузить 2-й локальный диск",
"VTLANG_LB_SBOOT_HDD3": "Загрузить 3-й локальный диск",
"VTLANG_LB_SBOOT_X64EFI": "Найти и загрузить OOTX64.EFI",
"VTLANG_LB_SBOOT_IA32EFI": "Найти и загрузить BOOTIA32.EFI",
"VTLANG_LB_SBOOT_AA64EFI": "Найти и загрузить BOOTAA64.EFI",
"VTLANG_LB_SBOOT_XORBOOT": "Найти и загрузить xorboot",
"VTMENU_FILE_CHKSUM": "Контрольная сумма файла",
"VTMENU_CHKSUM_MD5_CALC": "Вычислить md5sum",
"VTMENU_CHKSUM_SHA1_CALC": "Вычислить sha1sum",
"VTMENU_CHKSUM_SHA256_CALC": "Вычислить sha256sum",
"VTMENU_CHKSUM_SHA512_CALC": "Вычислить sha512sum",
"VTMENU_CHKSUM_MD5_CALC_CHK": "Вычислить и проверить md5sum",
"VTMENU_CHKSUM_SHA1_CALC_CHK": "Вычислить и проверить sha1sum",
"VTMENU_CHKSUM_SHA256_CALC_CHK": "Вычислить и проверить sha256sum",
"VTMENU_CHKSUM_SHA512_CALC_CHK": "Вычислить и проверить sha512sum",
"VTLANG_FILE_CHKSUM": "Контрольная сумма файла",
"VTLANG_CHKSUM_MD5_CALC": "Вычислить md5sum",
"VTLANG_CHKSUM_SHA1_CALC": "Вычислить sha1sum",
"VTLANG_CHKSUM_SHA256_CALC": "Вычислить sha256sum",
"VTLANG_CHKSUM_SHA512_CALC": "Вычислить sha512sum",
"VTLANG_CHKSUM_MD5_CALC_CHK": "Вычислить и проверить md5sum",
"VTLANG_CHKSUM_SHA1_CALC_CHK": "Вычислить и проверить sha1sum",
"VTLANG_CHKSUM_SHA256_CALC_CHK": "Вычислить и проверить sha256sum",
"VTLANG_CHKSUM_SHA512_CALC_CHK": "Вычислить и проверить sha512sum",
"VTMENU_POWER": "Включить",
"VTMENU_POWER_REBOOT": "Перезагрузить",
"VTMENU_POWER_HALT": "Остановить",
"VTMENU_POWER_BOOT_EFIFW": "Перезагрузиться в настройку EFI",
"VTLANG_POWER": "Включить",
"VTLANG_POWER_REBOOT": "Перезагрузить",
"VTLANG_POWER_HALT": "Остановить",
"VTLANG_POWER_BOOT_EFIFW": "Перезагрузиться в настройку EFI",
"VTMENU_KEYBRD_LAYOUT": "Раскладки клавиатуры",
"VTMENU_HWINFO": "Информация об оборудовании",
"VTLANG_KEYBRD_LAYOUT": "Раскладки клавиатуры",
"VTLANG_HWINFO": "Информация об оборудовании",
"VTMENU_RESOLUTION_CFG": "Конфигурация разрешения",
"VTMENU_SCREEN_MODE": "Режим Screen Display",
"VTMENU_SCREEN_TEXT_MODE": "Выбрать текстовый режим",
"VTMENU_SCREEN_GUI_MODE": "Выбрать графический режим",
"VTLANG_RESOLUTION_CFG": "Конфигурация разрешения",
"VTLANG_SCREEN_MODE": "Режим Screen Display",
"VTLANG_SCREEN_TEXT_MODE": "Выбрать текстовый режим",
"VTLANG_SCREEN_GUI_MODE": "Выбрать графический режим",
"VTMENU_THEME_SELECT": "Выбор темы",
"VTLANG_THEME_SELECT": "Выбор темы",
"VTMENU_UTIL_SHOW_EFI_DRV": "Показать драйверы EFI",
"VTMENU_UTIL_FIX_BLINIT_FAIL": "Исправить ошибку Windows BlinitializeLibrary",
"VTLANG_UEFI_UTIL": "UEFI утилиты Вентоя",
"VTLANG_UTIL_SHOW_EFI_DRV": "Показать драйверы EFI",
"VTLANG_UTIL_FIX_BLINIT_FAIL": "Исправить ошибку Windows BlinitializeLibrary",
"VTMENU_JSON_CHK_JSON": "Проверить конфигурацию плагина json (ventoy.json)",
"VTMENU_JSON_CHK_CONTROL": "Проверить конфигурацию плагина global control",
"VTMENU_JSON_CHK_THEME": "Проверить конфигурацию плагина theme",
"VTMENU_JSON_CHK_AUTOINS": "Проверить конфигурацию плагина auto install",
"VTMENU_JSON_CHK_PERSIST": "Проверить конфигурацию плагина persistence",
"VTMENU_JSON_CHK_MENU_ALIAS": "Проверить конфигурацию плагина menu alias",
"VTMENU_JSON_CHK_MENU_TIP": "Проверить конфигурацию плагина menu tip",
"VTMENU_JSON_CHK_MENU_CLASS": "Проверить конфигурацию плагина menu class",
"VTMENU_JSON_CHK_INJECTION": "Проверить конфигурацию плагина injection",
"VTMENU_JSON_CHK_AUTO_MEMDISK": "Проверить конфигурацию плагина auto memdisk",
"VTMENU_JSON_CHK_IMG_LIST": "Проверить конфигурацию плагина image list",
"VTMENU_JSON_CHK_IMG_BLIST": "Проверить конфигурацию плагина image blacklist",
"VTMENU_JSON_CHK_CONF_REPLACE": "Проверить конфигурацию плагина boot conf replace",
"VTMENU_JSON_CHK_DUD": "Проверить конфигурацию плагина dud",
"VTMENU_JSON_CHK_PASSWORD": "Проверить конфигурацию плагина password",
"VTLANG_JSON_CHK_JSON": "Проверить конфигурацию плагина json (ventoy.json)",
"VTLANG_JSON_CHK_CONTROL": "Проверить конфигурацию плагина global control",
"VTLANG_JSON_CHK_THEME": "Проверить конфигурацию плагина theme",
"VTLANG_JSON_CHK_AUTOINS": "Проверить конфигурацию плагина auto install",
"VTLANG_JSON_CHK_PERSIST": "Проверить конфигурацию плагина persistence",
"VTLANG_JSON_CHK_MENU_ALIAS": "Проверить конфигурацию плагина menu alias",
"VTLANG_JSON_CHK_MENU_TIP": "Проверить конфигурацию плагина menu tip",
"VTLANG_JSON_CHK_MENU_CLASS": "Проверить конфигурацию плагина menu class",
"VTLANG_JSON_CHK_INJECTION": "Проверить конфигурацию плагина injection",
"VTLANG_JSON_CHK_AUTO_MEMDISK": "Проверить конфигурацию плагина auto memdisk",
"VTLANG_JSON_CHK_IMG_LIST": "Проверить конфигурацию плагина image list",
"VTLANG_JSON_CHK_IMG_BLIST": "Проверить конфигурацию плагина image blacklist",
"VTLANG_JSON_CHK_CONF_REPLACE": "Проверить конфигурацию плагина boot conf replace",
"VTLANG_JSON_CHK_DUD": "Проверить конфигурацию плагина dud",
"VTLANG_JSON_CHK_PASSWORD": "Проверить конфигурацию плагина password",
"VTMENU_NORMAL_MODE": "Загрузиться в обычном режиме",
"VTMENU_WIMBOOT_MODE": "Загрузиться в режиме wimboot",
"VTMENU_GRUB2_MODE": "Загрузиться в режиме grub2",
"VTMENU_MEMDISK_MODE": "Загрузиться в режиме memdisk",
"VTLANG_NORMAL_MODE": "Загрузиться в обычном режиме",
"VTLANG_WIMBOOT_MODE": "Загрузиться в режиме wimboot",
"VTLANG_GRUB2_MODE": "Загрузиться в режиме grub2",
"VTLANG_MEMDISK_MODE": "Загрузиться в режиме memdisk",
"VTMENU_RET_TO_LISTVIEW": "Вернуться к ListView",
"VTMENU_RET_TO_TREEVIEW": "Вернуться к TreeView",
"VTLANG_RET_TO_LISTVIEW": "Вернуться к ListView",
"VTLANG_RET_TO_TREEVIEW": "Вернуться к TreeView",
"VTMENU_NO_AUTOINS_SCRIPT": "Загрузка без шаблона автоматической установки",
"VTMENU_AUTOINS_USE": "Загрузиться с",
"VTLANG_NO_AUTOINS_SCRIPT": "Загрузка без шаблона автоматической установки",
"VTLANG_AUTOINS_USE": "Загрузиться с",
"VTMENU_NO_PERSIST": "Загрузка без персистентности",
"VTMENU_PERSIST_USE": "Загрузиться с",
"VTLANG_NO_PERSIST": "Загрузка без персистентности",
"VTLANG_PERSIST_USE": "Загрузиться с",
"VTMENU_BROWER_RETURN": "Вернуться",
"VTLANG_BROWER_RETURN": "Вернуться",
"VTLANG_ENTER_EXIT": "нажмите клавишу Enter, чтобы выйти",
"VTLANG_ENTER_REBOOT": "нажмите клавишу Enter для перезагрузки",
"VTLANG_ENTER_CONTINUE": "нажмите клавишу Enter, чтобы продолжить",
"VTLANG_CTRL_TEMP_SET": "Настройки временного управления",
"VTLANG_WIN11_BYPASS_CHECK": "Обойти проверку при установке Windows 11",
"VTLANG_WIN11_BYPASS_NRO": "Обойти требование учетной записи в Интернете при установке Windows 11",
"VTLANG_LINUX_REMOUNT": "Смонтировать раздел Ventoy после загрузки Linux",
"VTLANG_SECONDARY_BOOT_MENU": "Показать вторичное загрузочное меню",
"MENU_STR_XXX": ""
}

View File

@@ -1,81 +1,92 @@
{
"VTMENU_LANGUAGE_NAME": "Serbian Latin (Srpski)",
"VTLANG_LANGUAGE_NAME": "Serbian Latin (Srpski)",
"VTMENU_STR_HOTKEY_LIST": "L:Језик F1:Help F2:Browse F3:ListView F4:Localboot F5:Tools F6:ExMenu",
"VTMENU_STR_HOTKEY_TREE": "L:Језик F1:Help F2:Browse F3:TreeView F4:Localboot F5:Tools F6:ExMenu",
"VTMENU_RETURN_PREVIOUS": "Return to previous menu [Esc]",
"VTLANG_STR_HOTKEY_LIST": "L:Језик F1:Help F2:Browse F3:ListView F4:Localboot F5:Tools F6:ExMenu",
"VTLANG_STR_HOTKEY_TREE": "L:Језик F1:Help F2:Browse F3:TreeView F4:Localboot F5:Tools F6:ExMenu",
"VTLANG_RETURN_PREVIOUS": "Return to previous menu [Esc]",
"VTMENU_MENU_LANG": "Menu Language Select",
"VTLANG_MENU_LANG": "Menu Language Select",
"VTMENU_LB_SBOOT_WINDOWS": "Search and boot Windows",
"VTMENU_LB_SBOOT_G4D": "Search and boot Grub4dos",
"VTMENU_LB_SBOOT_HDD1": "Boot the 1st local disk",
"VTMENU_LB_SBOOT_HDD2": "Boot the 2nd local disk",
"VTMENU_LB_SBOOT_HDD3": "Boot the 3rd local disk",
"VTMENU_LB_SBOOT_X64EFI": "Search and boot BOOTX64.EFI",
"VTMENU_LB_SBOOT_IA32EFI": "Search and boot BOOTIA32.EFI",
"VTMENU_LB_SBOOT_AA64EFI": "Search and boot BOOTAA64.EFI",
"VTMENU_LB_SBOOT_XORBOOT": "Search and boot xorboot",
"VTLANG_LB_SBOOT_WINDOWS": "Search and boot Windows",
"VTLANG_LB_SBOOT_G4D": "Search and boot Grub4dos",
"VTLANG_LB_SBOOT_HDD1": "Boot the 1st local disk",
"VTLANG_LB_SBOOT_HDD2": "Boot the 2nd local disk",
"VTLANG_LB_SBOOT_HDD3": "Boot the 3rd local disk",
"VTLANG_LB_SBOOT_X64EFI": "Search and boot BOOTX64.EFI",
"VTLANG_LB_SBOOT_IA32EFI": "Search and boot BOOTIA32.EFI",
"VTLANG_LB_SBOOT_AA64EFI": "Search and boot BOOTAA64.EFI",
"VTLANG_LB_SBOOT_XORBOOT": "Search and boot xorboot",
"VTMENU_FILE_CHKSUM": "File checksum",
"VTMENU_CHKSUM_MD5_CALC": "Calculate md5sum",
"VTMENU_CHKSUM_SHA1_CALC": "Calculate sha1sum",
"VTMENU_CHKSUM_SHA256_CALC": "Calculate sha256sum",
"VTMENU_CHKSUM_SHA512_CALC": "Calculate sha512sum",
"VTMENU_CHKSUM_MD5_CALC_CHK": "Calculate and check md5sum",
"VTMENU_CHKSUM_SHA1_CALC_CHK": "Calculate and check sha1sum",
"VTMENU_CHKSUM_SHA256_CALC_CHK": "Calculate and check sha256sum",
"VTMENU_CHKSUM_SHA512_CALC_CHK": "Calculate and check sha512sum",
"VTLANG_FILE_CHKSUM": "File checksum",
"VTLANG_CHKSUM_MD5_CALC": "Calculate md5sum",
"VTLANG_CHKSUM_SHA1_CALC": "Calculate sha1sum",
"VTLANG_CHKSUM_SHA256_CALC": "Calculate sha256sum",
"VTLANG_CHKSUM_SHA512_CALC": "Calculate sha512sum",
"VTLANG_CHKSUM_MD5_CALC_CHK": "Calculate and check md5sum",
"VTLANG_CHKSUM_SHA1_CALC_CHK": "Calculate and check sha1sum",
"VTLANG_CHKSUM_SHA256_CALC_CHK": "Calculate and check sha256sum",
"VTLANG_CHKSUM_SHA512_CALC_CHK": "Calculate and check sha512sum",
"VTMENU_POWER": "Power",
"VTMENU_POWER_REBOOT": "Reboot",
"VTMENU_POWER_HALT": "Halt",
"VTMENU_POWER_BOOT_EFIFW": "Reboot to EFI setup",
"VTLANG_POWER": "Power",
"VTLANG_POWER_REBOOT": "Reboot",
"VTLANG_POWER_HALT": "Halt",
"VTLANG_POWER_BOOT_EFIFW": "Reboot to EFI setup",
"VTMENU_KEYBRD_LAYOUT": "Keyboard Layouts",
"VTMENU_HWINFO": "Hardware Information",
"VTLANG_KEYBRD_LAYOUT": "Keyboard Layouts",
"VTLANG_HWINFO": "Hardware Information",
"VTMENU_RESOLUTION_CFG": "Resolution Configuration",
"VTMENU_SCREEN_MODE": "Screen Display Mode",
"VTMENU_SCREEN_TEXT_MODE": "Force Text Mode",
"VTMENU_SCREEN_GUI_MODE": "Force Graphics Mode",
"VTLANG_RESOLUTION_CFG": "Resolution Configuration",
"VTLANG_SCREEN_MODE": "Screen Display Mode",
"VTLANG_SCREEN_TEXT_MODE": "Force Text Mode",
"VTLANG_SCREEN_GUI_MODE": "Force Graphics Mode",
"VTMENU_THEME_SELECT": "Theme Select",
"VTLANG_THEME_SELECT": "Theme Select",
"VTMENU_UTIL_SHOW_EFI_DRV": "Show EFI Drivers",
"VTMENU_UTIL_FIX_BLINIT_FAIL": "Fixup Windows BlinitializeLibrary Failure",
"VTLANG_UEFI_UTIL": "Ventoy UEFI Utilities",
"VTLANG_UTIL_SHOW_EFI_DRV": "Show EFI Drivers",
"VTLANG_UTIL_FIX_BLINIT_FAIL": "Fixup Windows BlinitializeLibrary Failure",
"VTMENU_JSON_CHK_JSON": "Check plugin json configuration (ventoy.json)",
"VTMENU_JSON_CHK_CONTROL": "Check global control plugin configuration",
"VTMENU_JSON_CHK_THEME": "Check theme plugin configuration",
"VTMENU_JSON_CHK_AUTOINS": "Check auto install plugin configuration",
"VTMENU_JSON_CHK_PERSIST": "Check persistence plugin configuration",
"VTMENU_JSON_CHK_MENU_ALIAS": "Check menu alias plugin configuration",
"VTMENU_JSON_CHK_MENU_TIP": "Check menu tip plugin configuration",
"VTMENU_JSON_CHK_MENU_CLASS": "Check menu class plugin configuration",
"VTMENU_JSON_CHK_INJECTION": "Check injection plugin configuration",
"VTMENU_JSON_CHK_AUTO_MEMDISK": "Check auto memdisk plugin configuration",
"VTMENU_JSON_CHK_IMG_LIST": "Check image list plugin configuration",
"VTMENU_JSON_CHK_IMG_BLIST": "Check image blacklist plugin configuration",
"VTMENU_JSON_CHK_CONF_REPLACE": "Check boot conf replace plugin configuration",
"VTMENU_JSON_CHK_DUD": "Check dud plugin configuration",
"VTMENU_JSON_CHK_PASSWORD": "Check password plugin configuration",
"VTLANG_JSON_CHK_JSON": "Check plugin json configuration (ventoy.json)",
"VTLANG_JSON_CHK_CONTROL": "Check global control plugin configuration",
"VTLANG_JSON_CHK_THEME": "Check theme plugin configuration",
"VTLANG_JSON_CHK_AUTOINS": "Check auto install plugin configuration",
"VTLANG_JSON_CHK_PERSIST": "Check persistence plugin configuration",
"VTLANG_JSON_CHK_MENU_ALIAS": "Check menu alias plugin configuration",
"VTLANG_JSON_CHK_MENU_TIP": "Check menu tip plugin configuration",
"VTLANG_JSON_CHK_MENU_CLASS": "Check menu class plugin configuration",
"VTLANG_JSON_CHK_INJECTION": "Check injection plugin configuration",
"VTLANG_JSON_CHK_AUTO_MEMDISK": "Check auto memdisk plugin configuration",
"VTLANG_JSON_CHK_IMG_LIST": "Check image list plugin configuration",
"VTLANG_JSON_CHK_IMG_BLIST": "Check image blacklist plugin configuration",
"VTLANG_JSON_CHK_CONF_REPLACE": "Check boot conf replace plugin configuration",
"VTLANG_JSON_CHK_DUD": "Check dud plugin configuration",
"VTLANG_JSON_CHK_PASSWORD": "Check password plugin configuration",
"VTMENU_NORMAL_MODE": "Boot in normal mode",
"VTMENU_WIMBOOT_MODE": "Boot in wimboot mode",
"VTMENU_GRUB2_MODE": "Boot in grub2 mode",
"VTMENU_MEMDISK_MODE": "Boot in memdisk mode",
"VTLANG_NORMAL_MODE": "Boot in normal mode",
"VTLANG_WIMBOOT_MODE": "Boot in wimboot mode",
"VTLANG_GRUB2_MODE": "Boot in grub2 mode",
"VTLANG_MEMDISK_MODE": "Boot in memdisk mode",
"VTMENU_RET_TO_LISTVIEW": "Return to ListView",
"VTMENU_RET_TO_TREEVIEW": "Return to TreeView",
"VTLANG_RET_TO_LISTVIEW": "Return to ListView",
"VTLANG_RET_TO_TREEVIEW": "Return to TreeView",
"VTMENU_NO_AUTOINS_SCRIPT": "Boot without auto installation template",
"VTMENU_AUTOINS_USE": "Boot with",
"VTLANG_NO_AUTOINS_SCRIPT": "Boot without auto installation template",
"VTLANG_AUTOINS_USE": "Boot with",
"VTMENU_NO_PERSIST": "Boot without persistence",
"VTMENU_PERSIST_USE": "Boot with",
"VTLANG_NO_PERSIST": "Boot without persistence",
"VTLANG_PERSIST_USE": "Boot with",
"VTMENU_BROWER_RETURN": "Return",
"VTLANG_BROWER_RETURN": "Return",
"VTLANG_ENTER_EXIT": "press Enter key to exit",
"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 CPU/TPM/SecureBoot check when install Windows 11",
"VTLANG_WIN11_BYPASS_NRO": "Bypass online account requirement when install Windows 11",
"VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux",
"VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu",
"MENU_STR_XXX": ""
}

View File

@@ -0,0 +1,92 @@
{
"VTLANG_LANGUAGE_NAME": "Tamil (தமிழ்)",
"VTLANG_STR_HOTKEY_LIST": "L:மொழி F1:உதவி F2:உலாவுக F3:பட்டியல்பார்வை F4:லோக்கல்பூட் F5:கருவிகள் F6:ExMenu",
"VTLANG_STR_HOTKEY_TREE": "L:மொழி F1:உதவி F2:உலாவுக F3:மரப்பார்வை F4:லோக்கல்பூட் F5:கருவிகள் F6:ExMenu",
"VTLANG_RETURN_PREVIOUS": "முந்தைய மெனுவுக்குத் திரும்பு [Esc]",
"VTLANG_MENU_LANG": "மெனு மொழி தேர்வு",
"VTLANG_LB_SBOOT_WINDOWS": "விண்டோஸைத் தேடி துவக்கவும்",
"VTLANG_LB_SBOOT_G4D": "Grub4dos ஐத் தேடி துவக்கவும்",
"VTLANG_LB_SBOOT_HDD1": "1வது உள்ளூர் வட்டை துவக்கவும்",
"VTLANG_LB_SBOOT_HDD2": "2வது உள்ளூர் வட்டை துவக்கவும்",
"VTLANG_LB_SBOOT_HDD3": "3வது உள்ளூர் வட்டை துவக்கவும்",
"VTLANG_LB_SBOOT_X64EFI": "BOOTX64.EFI ஐத் தேடி துவக்கவும்",
"VTLANG_LB_SBOOT_IA32EFI": "BOOTIA32.EFI ஐத் தேடி துவக்கவும்",
"VTLANG_LB_SBOOT_AA64EFI": "BOOTAA64.EFI ஐத் தேடி துவக்கவும்",
"VTLANG_LB_SBOOT_XORBOOT": "xorboot ஐத் தேடி துவக்கவும்",
"VTLANG_FILE_CHKSUM": "கோப்பு செக்சம்",
"VTLANG_CHKSUM_MD5_CALC": "md5sum ஐக் கணக்கிடவும்",
"VTLANG_CHKSUM_SHA1_CALC": "sha1sum ஐக் கணக்கிடவும்",
"VTLANG_CHKSUM_SHA256_CALC": "sha256sum ஐக் கணக்கிடவும்",
"VTLANG_CHKSUM_SHA512_CALC": "sha512sum ஐக் கணக்கிடவும்",
"VTLANG_CHKSUM_MD5_CALC_CHK": "md5sum ஐக் கணக்கிட்டு சரிபார்க்கவும்",
"VTLANG_CHKSUM_SHA1_CALC_CHK": "sha1sum ஐக் கணக்கிட்டு சரிபார்க்கவும்",
"VTLANG_CHKSUM_SHA256_CALC_CHK": "sha256sum ஐக் கணக்கிட்டு சரிபார்க்கவும்",
"VTLANG_CHKSUM_SHA512_CALC_CHK": "sha512sum ஐக் கணக்கிட்டு சரிபார்க்கவும்",
"VTLANG_POWER": "பவர்",
"VTLANG_POWER_REBOOT": "மறுதொடக்கம்",
"VTLANG_POWER_HALT": "நிறுத்து",
"VTLANG_POWER_BOOT_EFIFW": "EFI அமைப்பிற்கு மீண்டும் துவக்கவும்",
"VTLANG_KEYBRD_LAYOUT": "விசைப்பலகை தளவமைப்புகள்",
"VTLANG_HWINFO": "வன்பொருள் தகவல்",
"VTLANG_RESOLUTION_CFG": "தீர்மானம் கட்டமைப்பு",
"VTLANG_SCREEN_MODE": "திரை காட்சி பயன்முறை",
"VTLANG_SCREEN_TEXT_MODE": "கட்டாய உரை பயன்முறை",
"VTLANG_SCREEN_GUI_MODE": "கட்டாய கிராபிக்ஸ் பயன்முறை",
"VTLANG_THEME_SELECT": "தீம் தேர்வு",
"VTLANG_UEFI_UTIL": "Ventoy UEFI Utilities",
"VTLANG_UTIL_SHOW_EFI_DRV": "EFI இயக்கிகளைக் காட்டு",
"VTLANG_UTIL_FIX_BLINIT_FAIL": "Windows BlinitializeLibrary தோல்வியைச் சரிசெய்தல்",
"VTLANG_JSON_CHK_JSON": "செருகுநிரல் json உள்ளமைவைச் சரிபார்க்கவும் (ventoy.json)",
"VTLANG_JSON_CHK_CONTROL": "உலகளாவிய கட்டுப்பாட்டு செருகுநிரல் உள்ளமைவைச் சரிபார்க்கவும்",
"VTLANG_JSON_CHK_THEME": "தீம் செருகுநிரல் உள்ளமைவைச் சரிபார்க்கவும்",
"VTLANG_JSON_CHK_AUTOINS": "தானாக நிறுவும் செருகுநிரல் உள்ளமைவைச் சரிபார்க்கவும்",
"VTLANG_JSON_CHK_PERSIST": "நிலைத்தன்மை செருகுநிரல் உள்ளமைவைச் சரிபார்க்கவும்",
"VTLANG_JSON_CHK_MENU_ALIAS": "மெனு மாற்று செருகுநிரல் உள்ளமைவைச் சரிபார்க்கவும்",
"VTLANG_JSON_CHK_MENU_TIP": "மெனு முனை செருகுநிரல் உள்ளமைவைச் சரிபார்க்கவும்",
"VTLANG_JSON_CHK_MENU_CLASS": "மெனு வகுப்பு செருகுநிரல் உள்ளமைவைச் சரிபார்க்கவும்",
"VTLANG_JSON_CHK_INJECTION": "ஊசி செருகுநிரல் உள்ளமைவைச் சரிபார்க்கவும்",
"VTLANG_JSON_CHK_AUTO_MEMDISK": "ஆட்டோ மெம்டிஸ்க் செருகுநிரல் உள்ளமைவைச் சரிபார்க்கவும்",
"VTLANG_JSON_CHK_IMG_LIST": "பட பட்டியல் செருகுநிரல் உள்ளமைவை சரிபார்க்கவும்",
"VTLANG_JSON_CHK_IMG_BLIST": "படத்தின் தடுப்புப்பட்டியல் செருகுநிரல் உள்ளமைவைச் சரிபார்க்கவும்",
"VTLANG_JSON_CHK_CONF_REPLACE": "பூட் conf சொருகி உள்ளமைவை மாற்றுவதை சரிபார்க்கவும்",
"VTLANG_JSON_CHK_DUD": "dud செருகுநிரல் உள்ளமைவை சரிபார்க்கவும்",
"VTLANG_JSON_CHK_PASSWORD": "கடவுச்சொல் செருகுநிரல் உள்ளமைவைச் சரிபார்க்கவும்",
"VTLANG_NORMAL_MODE": "சாதாரண பயன்முறையில் துவக்கவும்",
"VTLANG_WIMBOOT_MODE": "wimboot பயன்முறையில் துவக்கவும்",
"VTLANG_GRUB2_MODE": "grub2 பயன்முறையில் துவக்கவும்",
"VTLANG_MEMDISK_MODE": "memdisk பயன்முறையில் துவக்கவும்",
"VTLANG_RET_TO_LISTVIEW": "பட்டியல்பார்வை பக்கத்துக்குத் திரும்பு",
"VTLANG_RET_TO_TREEVIEW": "மரப்பார்வை பக்கத்துக்குத் திரும்பு",
"VTLANG_NO_AUTOINS_SCRIPT": "தானியங்கி நிறுவல் டெம்ப்ளேட் இல்லாமல் துவக்கவும்",
"VTLANG_AUTOINS_USE": "துவக்கவும் இத்துடன்",
"VTLANG_NO_PERSIST": "விடாமுயற்சி இல்லாமல் துவக்கவும்",
"VTLANG_PERSIST_USE": "துவக்கவும் இத்துடன்",
"VTLANG_BROWER_RETURN": "திரும்பு",
"VTLANG_ENTER_EXIT": "வெளியேற Enter விசையை அழுத்தவும்",
"VTLANG_ENTER_REBOOT": "மறுதொடக்கம் செய்ய Enter விசையை அழுத்தவும்",
"VTLANG_ENTER_CONTINUE": "தொடர Enter விசையை அழுத்தவும்",
"VTLANG_CTRL_TEMP_SET": "Temporary Control Settings",
"VTLANG_WIN11_BYPASS_CHECK": "Bypass CPU/TPM/SecureBoot check when install Windows 11",
"VTLANG_WIN11_BYPASS_NRO": "Bypass online account requirement when install Windows 11",
"VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux",
"VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu",
"MENU_STR_XXX": ""
}

View File

@@ -1,81 +1,92 @@
{
"VTMENU_LANGUAGE_NAME": "Turkish (Türkçe)",
"VTLANG_LANGUAGE_NAME": "Turkish (Türkçe)",
"VTMENU_STR_HOTKEY_LIST": "L:Dil F1:Yardım F2:Gözat F3:Liste Görünümü F4:Önyükleme Seçenekleri F5:Araçlar F6:Grub2 Menü",
"VTMENU_STR_HOTKEY_TREE": "L:Dil F1:Yardım F2:Gözat F3:Ağaç Görünümü F4:Önyükleme Seçenekleri F5:Araçlar F6:Grub2 Menü",
"VTMENU_RETURN_PREVIOUS": "Önceki menüye geri dön [Esc]",
"VTLANG_STR_HOTKEY_LIST": "L:Dil F1:Yardım F2:Gözat F3:Liste Görünümü F4:Önyükleme Seçenekleri F5:Araçlar F6:Grub2 Menü",
"VTLANG_STR_HOTKEY_TREE": "L:Dil F1:Yardım F2:Gözat F3:Ağaç Görünümü F4:Önyükleme Seçenekleri F5:Araçlar F6:Grub2 Menü",
"VTLANG_RETURN_PREVIOUS": "Önceki menüye geri dön [Esc]",
"VTMENU_MENU_LANG": "Menü Dili Seçimi",
"VTLANG_MENU_LANG": "Menü Dili Seçimi",
"VTMENU_LB_SBOOT_WINDOWS": "Windows'u bul ve Önyükle",
"VTMENU_LB_SBOOT_G4D": "Grub4dos'u bul ve Önyükle",
"VTMENU_LB_SBOOT_HDD1": "1. Yerel diskten Önyükleme yap",
"VTMENU_LB_SBOOT_HDD2": "2. Yerel diskten Önyükleme yap",
"VTMENU_LB_SBOOT_HDD3": "3. Yerel diskten Önyükleme yap",
"VTMENU_LB_SBOOT_X64EFI": "BOOTX64.EFI'yi bul ve Önyükleme yap",
"VTMENU_LB_SBOOT_IA32EFI": "BOOTIA32.EFI'yi bul ve Önyükleme yap",
"VTMENU_LB_SBOOT_AA64EFI": "BOOTAA64.EFI'yi bul ve Önyükleme yap",
"VTMENU_LB_SBOOT_XORBOOT": "XORBOOT'u bul ve Önyükleme yap",
"VTLANG_LB_SBOOT_WINDOWS": "Windows'u bul ve Önyükle",
"VTLANG_LB_SBOOT_G4D": "Grub4dos'u bul ve Önyükle",
"VTLANG_LB_SBOOT_HDD1": "1. Yerel diskten Önyükleme yap",
"VTLANG_LB_SBOOT_HDD2": "2. Yerel diskten Önyükleme yap",
"VTLANG_LB_SBOOT_HDD3": "3. Yerel diskten Önyükleme yap",
"VTLANG_LB_SBOOT_X64EFI": "BOOTX64.EFI'yi bul ve Önyükleme yap",
"VTLANG_LB_SBOOT_IA32EFI": "BOOTIA32.EFI'yi bul ve Önyükleme yap",
"VTLANG_LB_SBOOT_AA64EFI": "BOOTAA64.EFI'yi bul ve Önyükleme yap",
"VTLANG_LB_SBOOT_XORBOOT": "XORBOOT'u bul ve Önyükleme yap",
"VTMENU_FILE_CHKSUM": "Dosya Doğrulama",
"VTMENU_CHKSUM_MD5_CALC": "md5sum değerini hesapla",
"VTMENU_CHKSUM_SHA1_CALC": "sha1sum değerini hesapla",
"VTMENU_CHKSUM_SHA256_CALC": "sha256sum değerini hesapla",
"VTMENU_CHKSUM_SHA512_CALC": "sha512sum değerini hesapla",
"VTMENU_CHKSUM_MD5_CALC_CHK": "md5sum hesapla ve kontrol et",
"VTMENU_CHKSUM_SHA1_CALC_CHK": "sha1sum hesapla ve kontrol et",
"VTMENU_CHKSUM_SHA256_CALC_CHK": "sha256sum hesapla ve kontrol et",
"VTMENU_CHKSUM_SHA512_CALC_CHK": "sha512sum hesapla ve kontrol et",
"VTLANG_FILE_CHKSUM": "Dosya Doğrulama",
"VTLANG_CHKSUM_MD5_CALC": "md5sum değerini hesapla",
"VTLANG_CHKSUM_SHA1_CALC": "sha1sum değerini hesapla",
"VTLANG_CHKSUM_SHA256_CALC": "sha256sum değerini hesapla",
"VTLANG_CHKSUM_SHA512_CALC": "sha512sum değerini hesapla",
"VTLANG_CHKSUM_MD5_CALC_CHK": "md5sum hesapla ve kontrol et",
"VTLANG_CHKSUM_SHA1_CALC_CHK": "sha1sum hesapla ve kontrol et",
"VTLANG_CHKSUM_SHA256_CALC_CHK": "sha256sum hesapla ve kontrol et",
"VTLANG_CHKSUM_SHA512_CALC_CHK": "sha512sum hesapla ve kontrol et",
"VTMENU_POWER": "Güç Seçenekleri",
"VTMENU_POWER_REBOOT": "Yeniden Başlat",
"VTMENU_POWER_HALT": "Bilgisayarı Kapat",
"VTMENU_POWER_BOOT_EFIFW": "EFI BIOS Ayarları ile Yeniden Başlat",
"VTLANG_POWER": "Güç Seçenekleri",
"VTLANG_POWER_REBOOT": "Yeniden Başlat",
"VTLANG_POWER_HALT": "Bilgisayarı Kapat",
"VTLANG_POWER_BOOT_EFIFW": "EFI BIOS Ayarları ile Yeniden Başlat",
"VTMENU_KEYBRD_LAYOUT": "Klavye düzenleri",
"VTMENU_HWINFO": "Donanım Bilgisi",
"VTLANG_KEYBRD_LAYOUT": "Klavye düzenleri",
"VTLANG_HWINFO": "Donanım Bilgisi",
"VTMENU_RESOLUTION_CFG": "Çözünürlük Yapılandırması",
"VTMENU_SCREEN_MODE": "Ekran Görüntüleme Modu",
"VTMENU_SCREEN_TEXT_MODE": "Metin Modu'nu Dene",
"VTMENU_SCREEN_GUI_MODE": "Grafik Modu'nu Dene",
"VTLANG_RESOLUTION_CFG": "Çözünürlük Yapılandırması",
"VTLANG_SCREEN_MODE": "Ekran Görüntüleme Modu",
"VTLANG_SCREEN_TEXT_MODE": "Metin Modu'nu Dene",
"VTLANG_SCREEN_GUI_MODE": "Grafik Modu'nu Dene",
"VTMENU_THEME_SELECT": "Tema Seçimi",
"VTLANG_THEME_SELECT": "Tema Seçimi",
"VTMENU_UTIL_SHOW_EFI_DRV": "EFI Sürücülerini Göster",
"VTMENU_UTIL_FIX_BLINIT_FAIL": "Windows BlinitializeLibrary Hatasını Düzelt",
"VTLANG_UEFI_UTIL": "Ventoy UEFI Utilities",
"VTLANG_UTIL_SHOW_EFI_DRV": "EFI Sürücülerini Göster",
"VTLANG_UTIL_FIX_BLINIT_FAIL": "Windows BlinitializeLibrary Hatasını Düzelt",
"VTMENU_JSON_CHK_JSON": "json (ventoy.json) Yapılandırma Dosyası Ayarlarını kontrol et",
"VTMENU_JSON_CHK_CONTROL": "(Global Control Plugin) yapılandırma ayarları",
"VTMENU_JSON_CHK_THEME": "(Theme Plugin) yapılandırma ayarları",
"VTMENU_JSON_CHK_AUTOINS": "(Auto Install Plugin) yapılandırma ayarları",
"VTMENU_JSON_CHK_PERSIST": "(Persistence Plugin) yapılandırma ayarları",
"VTMENU_JSON_CHK_MENU_ALIAS": "(Menu Alias Plugin) yapılandırma ayarları",
"VTMENU_JSON_CHK_MENU_TIP": "(Menu Tip Plugin) yapılandırma ayarları",
"VTMENU_JSON_CHK_MENU_CLASS": "(Menu Class Plugin) yapılandırma ayarları",
"VTMENU_JSON_CHK_INJECTION": "(Injection Plugin) yapılandırma ayarları",
"VTMENU_JSON_CHK_AUTO_MEMDISK": "(Auto Memdisk Plugin) yapılandırma ayarları",
"VTMENU_JSON_CHK_IMG_LIST": "(Image List Plugin) yapılandırma ayarları",
"VTMENU_JSON_CHK_IMG_BLIST": "(Image Blacklist Plugin) yapılandırma ayarları",
"VTMENU_JSON_CHK_CONF_REPLACE": "(Check Boot Conf Replace Plugin) yapılandırma ayarları",
"VTMENU_JSON_CHK_DUD": "(Dud Plugin) yapılandırma ayarları",
"VTMENU_JSON_CHK_PASSWORD": "(Password Plugin) yapılandırma ayarları",
"VTLANG_JSON_CHK_JSON": "json (ventoy.json) Yapılandırma Dosyası Ayarlarını kontrol et",
"VTLANG_JSON_CHK_CONTROL": "(Global Control Plugin) yapılandırma ayarları",
"VTLANG_JSON_CHK_THEME": "(Theme Plugin) yapılandırma ayarları",
"VTLANG_JSON_CHK_AUTOINS": "(Auto Install Plugin) yapılandırma ayarları",
"VTLANG_JSON_CHK_PERSIST": "(Persistence Plugin) yapılandırma ayarları",
"VTLANG_JSON_CHK_MENU_ALIAS": "(Menu Alias Plugin) yapılandırma ayarları",
"VTLANG_JSON_CHK_MENU_TIP": "(Menu Tip Plugin) yapılandırma ayarları",
"VTLANG_JSON_CHK_MENU_CLASS": "(Menu Class Plugin) yapılandırma ayarları",
"VTLANG_JSON_CHK_INJECTION": "(Injection Plugin) yapılandırma ayarları",
"VTLANG_JSON_CHK_AUTO_MEMDISK": "(Auto Memdisk Plugin) yapılandırma ayarları",
"VTLANG_JSON_CHK_IMG_LIST": "(Image List Plugin) yapılandırma ayarları",
"VTLANG_JSON_CHK_IMG_BLIST": "(Image Blacklist Plugin) yapılandırma ayarları",
"VTLANG_JSON_CHK_CONF_REPLACE": "(Check Boot Conf Replace Plugin) yapılandırma ayarları",
"VTLANG_JSON_CHK_DUD": "(Dud Plugin) yapılandırma ayarları",
"VTLANG_JSON_CHK_PASSWORD": "(Password Plugin) yapılandırma ayarları",
"VTMENU_NORMAL_MODE": "NORMAL(ISO) Mod'da ÖnYükleme Yap",
"VTMENU_WIMBOOT_MODE": "WIMBOOT(WIM) Mod'da Önyükleme Yap",
"VTMENU_GRUB2_MODE": "GRUB2 Mod'da Önyükleme Yap",
"VTMENU_MEMDISK_MODE": "MEMDISK Modunda ÖnYükleme Yap",
"VTLANG_NORMAL_MODE": "NORMAL(ISO) Mod'da ÖnYükleme Yap",
"VTLANG_WIMBOOT_MODE": "WIMBOOT(WIM) Mod'da Önyükleme Yap",
"VTLANG_GRUB2_MODE": "GRUB2 Mod'da Önyükleme Yap",
"VTLANG_MEMDISK_MODE": "MEMDISK Modunda ÖnYükleme Yap",
"VTMENU_RET_TO_LISTVIEW": "Liste Görünümü Moduna Geri Dön",
"VTMENU_RET_TO_TREEVIEW": "Ağaç Görünümü Moduna Geri Dön",
"VTLANG_RET_TO_LISTVIEW": "Liste Görünümü Moduna Geri Dön",
"VTLANG_RET_TO_TREEVIEW": "Ağaç Görünümü Moduna Geri Dön",
"VTMENU_NO_AUTOINS_SCRIPT": "Otomatik yükleme şablonu(autoinstalltemplate.xml) olmadan Önyükleme yap",
"VTMENU_AUTOINS_USE": "ile Önyükleme Yap",
"VTLANG_NO_AUTOINS_SCRIPT": "Otomatik yükleme şablonu(autoinstalltemplate.xml) olmadan Önyükleme yap",
"VTLANG_AUTOINS_USE": "ile Önyükleme Yap",
"VTMENU_NO_PERSIST": "Kalıcı ayar dosyası(persistence.dat) olmadan Önyükleme Yap",
"VTMENU_PERSIST_USE": "ile Önyükleme Yap",
"VTLANG_NO_PERSIST": "Kalıcı ayar dosyası(persistence.dat) olmadan Önyükleme Yap",
"VTLANG_PERSIST_USE": "ile Önyükleme Yap",
"VTMENU_BROWER_RETURN": "Geri Dön",
"VTLANG_BROWER_RETURN": "Geri Dön",
"VTLANG_ENTER_EXIT": ıkmak için ENTER tuşuna basın",
"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": "Geçici Kontrol Ayarları",
"VTLANG_WIN11_BYPASS_CHECK": "Windows11'i yüklerken, TPM/CPU/RAM kontrollerini atla",
"VTLANG_WIN11_BYPASS_NRO": "Windows11'i yüklerken, çevrimiçi hesap gereksinimini(OOBE) atla",
"VTLANG_LINUX_REMOUNT": "Linux sistemi önyükledikten sonra, Ventoy bölümünü bağla",
"VTLANG_SECONDARY_BOOT_MENU": "İkincil önyükleme menüsünü göster",
"MENU_STR_XXX": ""
}

View File

@@ -1,81 +1,92 @@
{
"VTMENU_LANGUAGE_NAME": "Chinese Simplified (简体中文)",
"VTLANG_LANGUAGE_NAME": "Chinese Simplified (简体中文)",
"VTMENU_STR_HOTKEY_LIST": "L:语言 F1:帮助 F2:本地浏览 F3:列表模式 F4:本地启动 F5:工具 F6:扩展菜单",
"VTMENU_STR_HOTKEY_TREE": "L:语言 F1:帮助 F2:本地浏览 F3:树形模式 F4:本地启动 F5:工具 F6:扩展菜单",
"VTMENU_RETURN_PREVIOUS": "返回上一级菜单 [Esc]",
"VTLANG_STR_HOTKEY_LIST": "L:语言 F1:帮助 F2:本地浏览 F3:列表模式 F4:本地启动 F5:工具 F6:扩展菜单",
"VTLANG_STR_HOTKEY_TREE": "L:语言 F1:帮助 F2:本地浏览 F3:树形模式 F4:本地启动 F5:工具 F6:扩展菜单",
"VTLANG_RETURN_PREVIOUS": "返回上一级菜单 [Esc]",
"VTMENU_MENU_LANG": "菜单语言",
"VTLANG_MENU_LANG": "菜单语言",
"VTMENU_LB_SBOOT_WINDOWS": "搜索并启动 Windows",
"VTMENU_LB_SBOOT_G4D": "搜索并启动 Grub4dos",
"VTMENU_LB_SBOOT_HDD1": "启动本地硬盘1中的系统",
"VTMENU_LB_SBOOT_HDD2": "启动本地硬盘2中的系统",
"VTMENU_LB_SBOOT_HDD3": "启动本地硬盘3中的系统",
"VTMENU_LB_SBOOT_X64EFI": "搜索并启动 BOOTX64.EFI",
"VTMENU_LB_SBOOT_IA32EFI": "搜索并启动 BOOTIA32.EFI",
"VTMENU_LB_SBOOT_AA64EFI": "搜索并启动 BOOTAA64.EFI",
"VTMENU_LB_SBOOT_XORBOOT": "搜索并启动 xorboot",
"VTLANG_LB_SBOOT_WINDOWS": "搜索并启动 Windows",
"VTLANG_LB_SBOOT_G4D": "搜索并启动 Grub4dos",
"VTLANG_LB_SBOOT_HDD1": "启动本地硬盘1中的系统",
"VTLANG_LB_SBOOT_HDD2": "启动本地硬盘2中的系统",
"VTLANG_LB_SBOOT_HDD3": "启动本地硬盘3中的系统",
"VTLANG_LB_SBOOT_X64EFI": "搜索并启动 BOOTX64.EFI",
"VTLANG_LB_SBOOT_IA32EFI": "搜索并启动 BOOTIA32.EFI",
"VTLANG_LB_SBOOT_AA64EFI": "搜索并启动 BOOTAA64.EFI",
"VTLANG_LB_SBOOT_XORBOOT": "搜索并启动 xorboot",
"VTMENU_FILE_CHKSUM": "文件校验",
"VTMENU_CHKSUM_MD5_CALC": "计算 MD5 校验值",
"VTMENU_CHKSUM_SHA1_CALC": "计算 SHA1 校验值",
"VTMENU_CHKSUM_SHA256_CALC": "计算 SHA256 校验值",
"VTMENU_CHKSUM_SHA512_CALC": "计算 SHA512 校验值",
"VTMENU_CHKSUM_MD5_CALC_CHK": "计算并检查 MD5 校验值",
"VTMENU_CHKSUM_SHA1_CALC_CHK": "计算并检查 SHA1 校验值",
"VTMENU_CHKSUM_SHA256_CALC_CHK": "计算并检查 SHA256 校验值",
"VTMENU_CHKSUM_SHA512_CALC_CHK": "计算并检查 SHA512 校验值",
"VTLANG_FILE_CHKSUM": "文件校验",
"VTLANG_CHKSUM_MD5_CALC": "计算 MD5 校验值",
"VTLANG_CHKSUM_SHA1_CALC": "计算 SHA1 校验值",
"VTLANG_CHKSUM_SHA256_CALC": "计算 SHA256 校验值",
"VTLANG_CHKSUM_SHA512_CALC": "计算 SHA512 校验值",
"VTLANG_CHKSUM_MD5_CALC_CHK": "计算并检查 MD5 校验值",
"VTLANG_CHKSUM_SHA1_CALC_CHK": "计算并检查 SHA1 校验值",
"VTLANG_CHKSUM_SHA256_CALC_CHK": "计算并检查 SHA256 校验值",
"VTLANG_CHKSUM_SHA512_CALC_CHK": "计算并检查 SHA512 校验值",
"VTMENU_POWER": "电源",
"VTMENU_POWER_REBOOT": "重启",
"VTMENU_POWER_HALT": "关机",
"VTMENU_POWER_BOOT_EFIFW": "重启进入 UEFI 设置菜单",
"VTLANG_POWER": "电源",
"VTLANG_POWER_REBOOT": "重启",
"VTLANG_POWER_HALT": "关机",
"VTLANG_POWER_BOOT_EFIFW": "重启进入 UEFI 设置菜单",
"VTMENU_KEYBRD_LAYOUT": "键盘布局",
"VTMENU_HWINFO": "硬件信息",
"VTLANG_KEYBRD_LAYOUT": "键盘布局",
"VTLANG_HWINFO": "硬件信息",
"VTMENU_RESOLUTION_CFG": "屏幕分辨率",
"VTMENU_SCREEN_MODE": "显示模式",
"VTMENU_SCREEN_TEXT_MODE": "文本模式",
"VTMENU_SCREEN_GUI_MODE": "图形模式",
"VTLANG_RESOLUTION_CFG": "屏幕分辨率",
"VTLANG_SCREEN_MODE": "显示模式",
"VTLANG_SCREEN_TEXT_MODE": "文本模式",
"VTLANG_SCREEN_GUI_MODE": "图形模式",
"VTMENU_THEME_SELECT": "主题选择",
"VTLANG_THEME_SELECT": "主题选择",
"VTMENU_UTIL_SHOW_EFI_DRV": "显示 UEFI 驱动",
"VTMENU_UTIL_FIX_BLINIT_FAIL": "修复 Windows BlinitializeLibrary 错误",
"VTLANG_UEFI_UTIL": "Ventoy UEFI 工具",
"VTLANG_UTIL_SHOW_EFI_DRV": "显示 UEFI 驱动",
"VTLANG_UTIL_FIX_BLINIT_FAIL": "修复 Windows BlinitializeLibrary 错误",
"VTMENU_JSON_CHK_JSON": "检查插件配置文件 (ventoy.json)",
"VTMENU_JSON_CHK_CONTROL": "配置检查 —— 全局控制插件",
"VTMENU_JSON_CHK_THEME": "配置检查 —— 主题插件",
"VTMENU_JSON_CHK_AUTOINS": "配置检查 —— 自动安装插件",
"VTMENU_JSON_CHK_PERSIST": "配置检查 —— 持久化插件",
"VTMENU_JSON_CHK_MENU_ALIAS": "配置检查 —— 菜单别名插件",
"VTMENU_JSON_CHK_MENU_TIP": "配置检查 —— 菜单提示插件",
"VTMENU_JSON_CHK_MENU_CLASS": "配置检查 —— 菜单类型插件",
"VTMENU_JSON_CHK_INJECTION": "配置检查 —— 文件注入插件",
"VTMENU_JSON_CHK_AUTO_MEMDISK": "配置检查 —— 自动内存盘模式插件",
"VTMENU_JSON_CHK_IMG_LIST": "配置检查 —— 文件列表插件(白名单)",
"VTMENU_JSON_CHK_IMG_BLIST": "配置检查 —— 文件列表插件(黑名单)",
"VTMENU_JSON_CHK_CONF_REPLACE": "配置检查 —— 启动配置替换插件",
"VTMENU_JSON_CHK_DUD": "配置检查 —— Driver Update Disk插件",
"VTMENU_JSON_CHK_PASSWORD": "配置检查 —— 密码插件",
"VTLANG_JSON_CHK_JSON": "检查插件配置文件 (ventoy.json)",
"VTLANG_JSON_CHK_CONTROL": "配置检查 —— 全局控制插件",
"VTLANG_JSON_CHK_THEME": "配置检查 —— 主题插件",
"VTLANG_JSON_CHK_AUTOINS": "配置检查 —— 自动安装插件",
"VTLANG_JSON_CHK_PERSIST": "配置检查 —— 持久化插件",
"VTLANG_JSON_CHK_MENU_ALIAS": "配置检查 —— 菜单别名插件",
"VTLANG_JSON_CHK_MENU_TIP": "配置检查 —— 菜单提示插件",
"VTLANG_JSON_CHK_MENU_CLASS": "配置检查 —— 菜单类型插件",
"VTLANG_JSON_CHK_INJECTION": "配置检查 —— 文件注入插件",
"VTLANG_JSON_CHK_AUTO_MEMDISK": "配置检查 —— 自动内存盘模式插件",
"VTLANG_JSON_CHK_IMG_LIST": "配置检查 —— 文件列表插件(白名单)",
"VTLANG_JSON_CHK_IMG_BLIST": "配置检查 —— 文件列表插件(黑名单)",
"VTLANG_JSON_CHK_CONF_REPLACE": "配置检查 —— 启动配置替换插件",
"VTLANG_JSON_CHK_DUD": "配置检查 —— Driver Update Disk插件",
"VTLANG_JSON_CHK_PASSWORD": "配置检查 —— 密码插件",
"VTMENU_NORMAL_MODE": "以正常模式启动",
"VTMENU_WIMBOOT_MODE": "以 wimboot 模式启动",
"VTMENU_GRUB2_MODE": "以 grub2 模式启动",
"VTMENU_MEMDISK_MODE": "以内存盘模式启动",
"VTLANG_NORMAL_MODE": "以正常模式启动",
"VTLANG_WIMBOOT_MODE": "以 wimboot 模式启动",
"VTLANG_GRUB2_MODE": "以 grub2 模式启动",
"VTLANG_MEMDISK_MODE": "以内存盘模式启动",
"VTMENU_RET_TO_LISTVIEW": "返回到列表模式",
"VTMENU_RET_TO_TREEVIEW": "返回到树形模式",
"VTLANG_RET_TO_LISTVIEW": "返回到列表模式",
"VTLANG_RET_TO_TREEVIEW": "返回到树形模式",
"VTMENU_NO_AUTOINS_SCRIPT": "不使用自动安装脚本",
"VTMENU_AUTOINS_USE": "使用",
"VTLANG_NO_AUTOINS_SCRIPT": "不使用自动安装脚本",
"VTLANG_AUTOINS_USE": "使用",
"VTMENU_NO_PERSIST": "不使用持久化数据文件",
"VTMENU_PERSIST_USE": "使用",
"VTLANG_NO_PERSIST": "不使用持久化数据文件",
"VTLANG_PERSIST_USE": "使用",
"VTMENU_BROWER_RETURN": "返回",
"VTLANG_BROWER_RETURN": "返回",
"VTLANG_ENTER_EXIT": "按回车键退出",
"VTLANG_ENTER_REBOOT": "按回车键重启",
"VTLANG_ENTER_CONTINUE": "按回车键继续",
"VTLANG_CTRL_TEMP_SET": "控制变量设置",
"VTLANG_WIN11_BYPASS_CHECK": "安装 Windows 11 时绕过 TPM/安全启动 等硬件检查",
"VTLANG_WIN11_BYPASS_NRO": "安装 Windows 11 时绕过在线账户的要求",
"VTLANG_LINUX_REMOUNT": "启动 Linux 系统后挂载 Ventoy 分区",
"VTLANG_SECONDARY_BOOT_MENU": "显示二级启动菜单",
"MENU_STR_XXX": ""
}

View File

@@ -0,0 +1,92 @@
{
"VTLANG_LANGUAGE_NAME": "Chinese Traditional (正體中文)",
"VTLANG_STR_HOTKEY_LIST": "L:語言 F1:說明 F2:本地瀏覽 F3:清單模式 F4:本地啟動 F5:工具 F6:擴展選單",
"VTLANG_STR_HOTKEY_TREE": "L:語言 F1:說明 F2:本地瀏覽 F3:樹形模式 F4:本地啟動 F5:工具 F6:擴展選單",
"VTLANG_RETURN_PREVIOUS": "返回上一級選單 [Esc]",
"VTLANG_MENU_LANG": "功能表語言",
"VTLANG_LB_SBOOT_WINDOWS": "搜尋並啟動 Windows",
"VTLANG_LB_SBOOT_G4D": "搜尋並啟動 Grub4dos",
"VTLANG_LB_SBOOT_HDD1": "啟動本地硬碟1中的系統",
"VTLANG_LB_SBOOT_HDD2": "啟動本地硬碟2中的系統",
"VTLANG_LB_SBOOT_HDD3": "啟動本地硬碟3中的系統",
"VTLANG_LB_SBOOT_X64EFI": "搜尋並啟動 BOOTX64.EFI",
"VTLANG_LB_SBOOT_IA32EFI": "搜尋並啟動 BOOTIA32.EFI",
"VTLANG_LB_SBOOT_AA64EFI": "搜尋並啟動 BOOTAA64.EFI",
"VTLANG_LB_SBOOT_XORBOOT": "搜尋並啟動 xorboot",
"VTLANG_FILE_CHKSUM": "檔案校驗",
"VTLANG_CHKSUM_MD5_CALC": "計算 MD5 校驗值",
"VTLANG_CHKSUM_SHA1_CALC": "計算 SHA1 校驗值",
"VTLANG_CHKSUM_SHA256_CALC": "計算 SHA256 校驗值",
"VTLANG_CHKSUM_SHA512_CALC": "計算 SHA512 校驗值",
"VTLANG_CHKSUM_MD5_CALC_CHK": "計算並檢查 MD5 校驗值",
"VTLANG_CHKSUM_SHA1_CALC_CHK": "計算並檢查 SHA1 校驗值",
"VTLANG_CHKSUM_SHA256_CALC_CHK": "計算並檢查 SHA256 校驗值",
"VTLANG_CHKSUM_SHA512_CALC_CHK": "計算並檢查 SHA512 校驗值",
"VTLANG_POWER": "電源",
"VTLANG_POWER_REBOOT": "重啟",
"VTLANG_POWER_HALT": "關機",
"VTLANG_POWER_BOOT_EFIFW": "重啟進入 UEFI 設定選單",
"VTLANG_KEYBRD_LAYOUT": "鍵盤配置",
"VTLANG_HWINFO": "硬體資訊",
"VTLANG_RESOLUTION_CFG": "螢幕解析度",
"VTLANG_SCREEN_MODE": "顯示模式",
"VTLANG_SCREEN_TEXT_MODE": "文字模式",
"VTLANG_SCREEN_GUI_MODE": "圖形模式",
"VTLANG_THEME_SELECT": "主題選擇",
"VTLANG_UEFI_UTIL": "Ventoy UEFI 實用程序",
"VTLANG_UTIL_SHOW_EFI_DRV": "顯示 UEFI 驅動",
"VTLANG_UTIL_FIX_BLINIT_FAIL": "修復 Windows BlinitializeLibrary 錯誤",
"VTLANG_JSON_CHK_JSON": "檢查外掛程式設定檔 (ventoy.json)",
"VTLANG_JSON_CHK_CONTROL": "配置檢查 —— 全域控制外掛程式",
"VTLANG_JSON_CHK_THEME": "配置檢查 —— 主題外掛程式",
"VTLANG_JSON_CHK_AUTOINS": "配置檢查 —— 自動安裝外掛程式",
"VTLANG_JSON_CHK_PERSIST": "配置檢查 —— 持久化外掛程式",
"VTLANG_JSON_CHK_MENU_ALIAS": "配置檢查 —— 功能表別名外掛程式",
"VTLANG_JSON_CHK_MENU_TIP": "配置檢查 —— 功能表提示外掛程式",
"VTLANG_JSON_CHK_MENU_CLASS": "配置檢查 —— 功能表類型外掛程式",
"VTLANG_JSON_CHK_INJECTION": "配置檢查 —— 檔注入外掛程式",
"VTLANG_JSON_CHK_AUTO_MEMDISK": "配置檢查 —— 自動內存檔模式外掛程式",
"VTLANG_JSON_CHK_IMG_LIST": "配置檢查 —— 檔清單外掛程式(白名單)",
"VTLANG_JSON_CHK_IMG_BLIST": "配置檢查 —— 檔清單外掛程式(黑名單)",
"VTLANG_JSON_CHK_CONF_REPLACE": "配置檢查 —— 啟動配置替換外掛程式",
"VTLANG_JSON_CHK_DUD": "配置檢查 —— Driver Update Disk外掛程式",
"VTLANG_JSON_CHK_PASSWORD": "配置檢查 —— 密碼外掛程式",
"VTLANG_NORMAL_MODE": "以正常模式啟動",
"VTLANG_WIMBOOT_MODE": "以 wimboot 模式啟動",
"VTLANG_GRUB2_MODE": "以 grub2 模式啟動",
"VTLANG_MEMDISK_MODE": "以內存檔模式啟動",
"VTLANG_RET_TO_LISTVIEW": "返回到清單模式",
"VTLANG_RET_TO_TREEVIEW": "返回到樹形模式",
"VTLANG_NO_AUTOINS_SCRIPT": "不使用自動安裝腳本",
"VTLANG_AUTOINS_USE": "使用",
"VTLANG_NO_PERSIST": "不使用持久化資料檔案",
"VTLANG_PERSIST_USE": "使用",
"VTLANG_BROWER_RETURN": "返回",
"VTLANG_ENTER_EXIT": "按回車鍵退出",
"VTLANG_ENTER_REBOOT": "按回車鍵重啟",
"VTLANG_ENTER_CONTINUE": "按回車鍵繼續",
"VTLANG_CTRL_TEMP_SET": "控制變量設置",
"VTLANG_WIN11_BYPASS_CHECK": "安裝 Windows 11 時繞過TPM/安全啟動等硬件檢查",
"VTLANG_WIN11_BYPASS_NRO": "安裝 Windows 11 時繞過在線賬戶的要求",
"VTLANG_LINUX_REMOUNT": "啟動 Linux 系統後掛載 Ventoy 分區",
"VTLANG_SECONDARY_BOOT_MENU": "顯示二級啟動菜單",
"MENU_STR_XXX": ""
}

View File

@@ -1,25 +1,25 @@
submenu "@VTMENU_POWER" --class=debug_power --class=F5tool {
menuentry "@VTMENU_POWER_REBOOT" --class=debug_reboot --class=debug_power --class=F5tool {
submenu "$VTLANG_POWER" --class=debug_power --class=F5tool {
menuentry "$VTLANG_POWER_REBOOT" --class=debug_reboot --class=debug_power --class=F5tool {
echo -e '\n\nSystem is rebooting ... \n'
sleep 1
reboot
}
menuentry "@VTMENU_POWER_HALT" --class=debug_halt --class=debug_power --class=F5tool {
menuentry "$VTLANG_POWER_HALT" --class=debug_halt --class=debug_power --class=F5tool {
echo -e '\n\nSystem is halting ... \n'
sleep 1
halt
}
if [ "$grub_platform" != "pc" ]; then
menuentry '@VTMENU_POWER_BOOT_EFIFW' --class=debug_efisetup --class=debug_power --class=F5tool {
menuentry '$VTLANG_POWER_BOOT_EFIFW' --class=debug_efisetup --class=debug_power --class=F5tool {
echo -e '\n\nRebooting to enter UEFI firmware setup ... \n'
sleep 1
fwsetup
}
fi
menuentry '@VTMENU_RETURN_PREVIOUS' --class=vtoyret VTOY_RET {
echo 'Return ...'
menuentry "$VTLANG_RETURN_PREVIOUS" --class=vtoyret VTOY_RET {
echo "Return ..."
}
}

View File

@@ -434,7 +434,7 @@ elif [ "$MODE" = "install" -a -n "$NONDESTRUCTIVE" ]; then
PART1_BLKID=$(blkid $PART1)
blkid $PART1
if echo $PART1_BLKID | egrep -q -i 'TYPE=ntfs|TYPE=.ntfs'; then
if echo $PART1_BLKID | grep -E -q -i 'TYPE=ntfs|TYPE=.ntfs'; then
echo "Partition 1 contains NTFS filesystem"
which ntfsresize
@@ -452,7 +452,7 @@ elif [ "$MODE" = "install" -a -n "$NONDESTRUCTIVE" ]; then
echo "###[FAIL] ntfsresize failed."
exit 1
fi
elif echo $PART1_BLKID | egrep -q -i 'TYPE=ext[2-4]|TYPE=.ext[2-4]'; then
elif echo $PART1_BLKID | grep -E -q -i 'TYPE=ext[2-4]|TYPE=.ext[2-4]'; then
echo "Partition 1 contains EXT filesystem"
which resize2fs

Binary file not shown.

Binary file not shown.

View File

@@ -91,20 +91,20 @@ cd ../../
#tar menu txt & update menulang.cfg
cd $tmpmnt/grub/
vtlangtitle=$(grep VTMENU_LANGUAGE_NAME menu/zh_CN.json | awk -F\" '{print $4}')
vtlangtitle=$(grep VTLANG_LANGUAGE_NAME menu/zh_CN.json | awk -F\" '{print $4}')
echo "menuentry \"zh_CN - $vtlangtitle\" --class=menu_lang_item --class=debug_menu_lang --class=F5tool {" >> menulang.cfg
echo " vt_load_menu_lang zh_CN" >> menulang.cfg
echo "}" >> menulang.cfg
ls -1 menu/ | grep -v 'zh_CN' | sort | while read vtlang; do
vtlangname=${vtlang%.*}
vtlangtitle=$(grep VTMENU_LANGUAGE_NAME menu/$vtlang | awk -F\" '{print $4}')
vtlangtitle=$(grep VTLANG_LANGUAGE_NAME menu/$vtlang | awk -F\" '{print $4}')
echo "menuentry \"$vtlangname - $vtlangtitle\" --class=menu_lang_item --class=debug_menu_lang --class=F5tool {" >> menulang.cfg
echo " vt_load_menu_lang $vtlangname" >> menulang.cfg
echo "}" >> menulang.cfg
done
echo "menuentry '@VTMENU_RETURN_PREVIOUS' --class=vtoyret VTOY_RET {" >> menulang.cfg
echo " echo 'Return ...'" >> menulang.cfg
echo "menuentry \"$VTLANG_RETURN_PREVIOUS\" --class=vtoyret VTOY_RET {" >> menulang.cfg
echo " echo \"Return ...\"" >> menulang.cfg
echo "}" >> menulang.cfg
tar czf menu.tar.gz ./menu/

View File

@@ -59,6 +59,7 @@
"STR_PART_FS":"نظام الملفات",
"STR_PART_CLUSTER":"حجم الكتلة",
"STR_PART_CLUSTER_DEFAULT":"القيمة الافتراضية للنظام",
"STR_DONATE":"يتبرع",
"STRXXX":""
},
@@ -122,8 +123,8 @@
"STR_PART_FS":"File System",
"STR_PART_CLUSTER":"Cluster Size",
"STR_PART_CLUSTER_DEFAULT":"System Default Value",
"STR_DONATE":"Ianə",
"STRXXX":""
},
{
@@ -186,7 +187,8 @@
"STR_PART_FS":"파일 시스템",
"STR_PART_CLUSTER":"클러스터 크기",
"STR_PART_CLUSTER_DEFAULT":"시스템 기본값",
"STR_DONATE":"기부",
"STRXXX":""
},
{
@@ -249,9 +251,74 @@
"STR_PART_FS":"文件系统",
"STR_PART_CLUSTER":"簇大小",
"STR_PART_CLUSTER_DEFAULT":"系统默认值",
"STR_DONATE":"捐助",
"STRXXX":""
},
{
"name":"Danish (Dansk)",
"FontFamily":"Courier New",
"FontSize":16,
"Author":"fhdk",
"STR_ERROR":"Fejl",
"STR_WARNING":"Advarsel",
"STR_INFO":"Info",
"STR_INCORRECT_DIR":"Skal udføres i den rette mappe!",
"STR_INCORRECT_TREE_DIR":"Udfør ikke her, download pakke udgivelsen og udfør i den mappe.",
"STR_DEVICE":"Enhed",
"STR_LOCAL_VER":"Pakke Version",
"STR_DISK_VER":"Enhed Version",
"STR_STATUS":"Status - KLAR",
"STR_INSTALL":"Installer",
"STR_UPDATE":"Opdater",
"STR_UPDATE_TIP":"Updatering er sikker, Data indhold bevares uændret.#@Fortsæt?",
"STR_INSTALL_TIP":"Alle data på enheden slettes og kan ikke gendannes.#@Fortsæt?",
"STR_INSTALL_TIP2":"BEKRÆFT! Alle data på enheden slettes og kan ikke gendannes.#@Fortsæt?",
"STR_INSTALL_SUCCESS":"SÅDAN!#@Ventoy er nu overført til enheden.",
"STR_INSTALL_FAILED":"Der opstod en fejl under overførslen. Fjern og indsæt enheden på ny for at prøve igen. Læs log.txt for detaljer. Hvis det gantager sig, Se FAQ på den officielle web.",
"STR_UPDATE_SUCCESS":"SÅDAN!#@Ventoy er nu opdaterert på enheden",
"STR_UPDATE_FAILED":"Der opstod en fejl opdateringen. Fjern og indsæt enheden på ny for at prøve igen. Læs log.txt for detaljer. Hvis det gantager sig, Se FAQ på den officielle web.",
"STR_WAIT_PROCESS":"Programmet er optaget, vent venligst...",
"STR_MENU_OPTION":"Valg",
"STR_MENU_SECURE_BOOT":"Secure Boot Support",
"STR_MENU_PART_CFG":"Partition Opsætning",
"STR_BTN_OK":"OK",
"STR_BTN_CANCEL":"Afbryd",
"STR_PRESERVE_SPACE":"Efterlad reserveret plads på enheden",
"STR_SPACE_VAL_INVALID":"Ugyldig værdi for reserveret plads",
"STR_MENU_CLEAR":"Fjern Ventoy",
"STR_CLEAR_SUCCESS":"Ventoy er nu fjernet fra enheden.",
"STR_CLEAR_FAILED":"Der opstod en fejl under fjernelse fra enheden. Fjern og indsæt enheden på ny for at prøve igen. Læs log.txt for detaljer.",
"STR_MENU_PART_STYLE":"Partition Type",
"STR_DISK_2TB_MBR_ERROR":"Vælg GPT for enheder over 2TB",
"STR_SHOW_ALL_DEV":"Vis Alle Enheder",
"STR_PART_ALIGN_4KB":"Juster partitioner til 4KB blokke.",
"STR_WEB_COMMUNICATION_ERR":"Kommunikationsfejl:",
"STR_WEB_REMOTE_ABNORMAL":"Kommunikationsfejl: Uventet server",
"STR_WEB_REQUEST_TIMEOUT":"Kommunikationsfejl: Server svarer ikke",
"STR_WEB_SERVICE_UNAVAILABLE":"Kommunikationsfejl: Server ikke tilgængelig",
"STR_WEB_TOKEN_MISMATCH":"Baggrundsstatus er opdateret. Prøv igen seenere.",
"STR_WEB_SERVICE_BUSY":"Webservice er optaget, prøv igen senere.",
"STR_MENU_VTSI_CREATE":"Opret VTSI File",
"STR_VTSI_CREATE_TIP":"Der skrives ikke til enheden, der bliver blot dannet en VTSI fil#@Fortsæt?",
"STR_VTSI_CREATE_SUCCESS":"VTSI fil oprettet!#@Du kan nu skrive til enheden ved at bruge Rufus(3.15+) og dermed færddiggøre enheds opsætningen.",
"STR_VTSI_CREATE_FAILED":"Oprettelse af VTSI mislykkedes.",
"STR_MENU_PART_RESIZE":"Ikke-Destruktiv overførsel",
"STR_PART_RESIZE_TIP":"Ventoy vil forsøge en ikke-destruktion overførsel om muligt. #@Fortsæt?",
"STR_PART_RESIZE_SUCCESS":"SÅDAN!#@ Den ikke-destruktive overførsel var perfekt.",
"STR_PART_RESIZE_FAILED":"Ikke-Destruktiv overførsel fejlede, Læs log.txt for detaljer.",
"STR_PART_RESIZE_UNSUPPORTED":"Ikke-Destruktiv overførsel er afbrudt. Betingelser er ikke opfyldt. Læs log.txt for detaljer.",
"STR_INSTALL_YES_TIP1":"Advarsel: Data vil gå tabt!",
"STR_INSTALL_YES_TIP2":"Indtast ordet YES for at bekræfte en ny overførsel istedet for en opdatring.",
"STR_PART_VENTOY_FS":"Fil System For Ventoy Partition",
"STR_PART_FS":"Fil System",
"STR_PART_CLUSTER":"Klynge størrelse",
"STR_PART_CLUSTER_DEFAULT":"System Standard Værdi",
"STR_DONATE":"Donering",
"STRXXX":""
},
{
"name":"English (English)",
"FontFamily":"Courier New",
@@ -312,6 +379,7 @@
"STR_PART_FS":"File System",
"STR_PART_CLUSTER":"Cluster Size",
"STR_PART_CLUSTER_DEFAULT":"System Default Value",
"STR_DONATE":"Donate",
"STRXXX":""
},
@@ -320,6 +388,7 @@
"FontFamily": "Courier New",
"FontSize": 16,
"Author": "44f33",
"STR_ERROR": "შეცდომა",
"STR_WARNING": "გაფრთხილება",
"STR_INFO": "ინფორმაცია",
@@ -374,6 +443,7 @@
"STR_PART_FS":"File System",
"STR_PART_CLUSTER":"Cluster Size",
"STR_PART_CLUSTER_DEFAULT":"System Default Value",
"STR_DONATE":"შემოწირულობა",
"STRXXX": ""
},
@@ -437,6 +507,7 @@
"STR_PART_FS":"File System",
"STR_PART_CLUSTER":"Cluster Size",
"STR_PART_CLUSTER_DEFAULT":"System Default Value",
"STR_DONATE":"اهداء",
"STRXXX":""
},
@@ -500,6 +571,7 @@
"STR_PART_FS":"System plików",
"STR_PART_CLUSTER":"Wielkość klastra",
"STR_PART_CLUSTER_DEFAULT":"Wartość domyślna systemu",
"STR_DONATE":"Podarować",
"STRXXX":""
},
@@ -563,6 +635,7 @@
"STR_PART_FS":"Sistema de arquivo",
"STR_PART_CLUSTER":"Tamanho do cluster",
"STR_PART_CLUSTER_DEFAULT":"Valor padrão do sistema",
"STR_DONATE":"Doar",
"STRXXX":""
},
@@ -626,6 +699,7 @@
"STR_PART_FS":"Dosya Sistemi",
"STR_PART_CLUSTER":"Sektör Boyutu",
"STR_PART_CLUSTER_DEFAULT":"Sistem varsayılan değeri",
"STR_DONATE":"Ventoy'a Bağış yap",
"STRXXX":""
},
@@ -689,6 +763,7 @@
"STR_PART_FS":"Dateisystem",
"STR_PART_CLUSTER":"Clustergröße",
"STR_PART_CLUSTER_DEFAULT":"Systemstandardwert",
"STR_DONATE":"Spenden",
"STRXXX":""
},
@@ -752,6 +827,7 @@
"STR_PART_FS":"File System",
"STR_PART_CLUSTER":"Cluster Size",
"STR_PART_CLUSTER_DEFAULT":"System Default Value",
"STR_DONATE":"Donate",
"STRXXX":""
},
@@ -815,7 +891,8 @@
"STR_PART_FS":"Système de fichiers",
"STR_PART_CLUSTER":"Taille de cluster",
"STR_PART_CLUSTER_DEFAULT":"Valeur par défaut du système",
"STR_DONATE":"Faire un don",
"STRXXX":""
},
{
@@ -878,6 +955,7 @@
"STR_PART_FS":"Souborový systém",
"STR_PART_CLUSTER":"Velikost clusteru",
"STR_PART_CLUSTER_DEFAULT":"Výchozí hodnota systému",
"STR_DONATE":"Darovat",
"STRXXX":""
},
@@ -940,6 +1018,7 @@
"STR_PART_FS":"File System",
"STR_PART_CLUSTER":"Cluster Size",
"STR_PART_CLUSTER_DEFAULT":"System Default Value",
"STR_DONATE":"Darovať",
"STRXXX":""
},
@@ -1003,6 +1082,7 @@
"STR_PART_FS":"Sistema de archivos",
"STR_PART_CLUSTER":"Tamaño de cluster",
"STR_PART_CLUSTER_DEFAULT":"Valor predeterminado del sistema",
"STR_DONATE":"Donar",
"STRXXX":""
},
@@ -1066,70 +1146,72 @@
"STR_PART_FS":"Sistema de archivos",
"STR_PART_CLUSTER":"Tamaño de cluster",
"STR_PART_CLUSTER_DEFAULT":"Valor predeterminado del sistema",
"STR_DONATE":"Donar",
"STRXXX":""
},
{
"name":"Russian (Pусский)",
"name":"Russian (Русский)",
"FontFamily":"Courier New",
"FontSize":16,
"Author":"BL4CKH47H4CK3R, Teraskull, thehugonote, wiz64, dmitrygribenchuk",
"Author":"Dmitry Yerokhin, BL4CKH47H4CK3R, Teraskull, thehugonote, wiz64, dmitrygribenchuk, Темак",
"STR_ERROR":"Ошибка",
"STR_WARNING":"Предупреждение",
"STR_WARNING":"Внимание",
"STR_INFO":"Информация",
"STR_INCORRECT_DIR":"Пожалуйста, запустите в другом каталоге!",
"STR_INCORRECT_TREE_DIR":"Не запускайте меня здесь, пожалуйста, загрузите выпущенный установочный пакет и запустите его в другом месте.",
"STR_INCORRECT_DIR":"Запустите в другой папке!",
"STR_INCORRECT_TREE_DIR":"Не запускайте приложение здесь, загрузите установочный пакет и запустите его в другом месте.",
"STR_DEVICE":"Устройство",
"STR_LOCAL_VER":"Ventoy в пакете",
"STR_DISK_VER":"Ventoy на устройстве",
"STR_STATUS":"Статус - ГОТОВ",
"STR_LOCAL_VER":"Вентой в пакете",
"STR_DISK_VER":"Вентой на накопителе",
"STR_STATUS":"Состояние — ГОТОВ",
"STR_INSTALL":"Установить",
"STR_UPDATE":"Обновить",
"STR_UPDATE_TIP":"Обновление безопасно, ISO-файлы останутся без изменений.#@Продолжить?",
"STR_INSTALL_TIP":"Диск будет отформатирован и все данные будут потеряны.#@Продолжить?",
"STR_INSTALL_TIP2":"Диск будет отформатирован и все данные будут потеряны.#@Вы действительно хотите продолжить?",
"STR_INSTALL_SUCCESS":"Поздравляем!#@Ventoy был успешно установлен на устройство.",
"STR_INSTALL_FAILED":"Во время установки Ventoy произошла ошибка. Переподключите устройство и попробуйте снова. Проверьте файл log.txt для получения подробной информации.",
"STR_UPDATE_SUCCESS":"Поздравляем!#@Ventoy был успешно обновлен на устройстве.",
"STR_UPDATE_FAILED":"Во время обновления Ventoy произошла ошибка. Переподключите устройство и попробуйте снова. Проверьте файл log.txt для получения подробной информации.",
"STR_WAIT_PROCESS":"Процесс запущен, пожалуйста подождите...",
"STR_MENU_OPTION":"Опции",
"STR_UPDATE_TIP":"Обновление безопасно, ISO-образы останутся без изменений.#@Продолжить?",
"STR_INSTALL_TIP":"Это действие отформатирует накопитель, все данные на нём будут уничтожены.#@Продолжить?",
"STR_INSTALL_TIP2":"Это действие отформатирует накопитель, все данные на нём будут уничтожены.#@Вы действительно хотите продолжить?",
"STR_INSTALL_SUCCESS":"Поздравляем!#@Установка Вентоя на устройстве успешно выполнена.",
"STR_INSTALL_FAILED":"Ошибка при установке. Переподключите USB-накопитель и попробуйте снова. См. файл log.txt с подробностями. Если ошибка не исчезает, см. «FAQ» на официальном сайте.",
"STR_UPDATE_SUCCESS":"Поздравляем!#@Обновление Вентоя на устройстве успешно выполнено.",
"STR_UPDATE_FAILED":"Ошибка при обновлении Вентоя. Переподключите USB-накопитель и попробуйте снова. См. файл log.txt с подробностями. Если ошибка не исчезает, см. «FAQ» на официальном сайте.",
"STR_WAIT_PROCESS":"Действие запущено, подождите...",
"STR_MENU_OPTION":"Настройки",
"STR_MENU_SECURE_BOOT":"Поддержка Secure Boot",
"STR_MENU_PART_CFG":"Дополнительный раздел",
"STR_BTN_OK":"ОК",
"STR_BTN_OK":"OK",
"STR_BTN_CANCEL":"Отмена",
"STR_PRESERVE_SPACE":"Создать дополнительный раздел в конце диска",
"STR_SPACE_VAL_INVALID":"Неверное значение размера раздела",
"STR_MENU_CLEAR":"Удалить Ventoy",
"STR_CLEAR_SUCCESS":"Ventoy был успешно удалён с устройства.",
"STR_CLEAR_FAILED":"Во время удаления Ventoy произошла ошибка. Переподключите устройство и попробуйте снова. Проверьте файл log.txt для получения подробной информации.",
"STR_SPACE_VAL_INVALID":"Недействительное значение размера раздела",
"STR_MENU_CLEAR":"Удалить Вентой",
"STR_CLEAR_SUCCESS":"Удаление Вентоя с устройства успешно выполнено.",
"STR_CLEAR_FAILED":"Ошибка при удалении Вентоя. Переподключите USB-накопитель и попробуйте снова. См. файл log.txt с подробностями.",
"STR_MENU_PART_STYLE":"Стиль разметки разделов",
"STR_DISK_2TB_MBR_ERROR":"Пожалуйста, выберите GPT для дисков более 2ТБ",
"STR_SHOW_ALL_DEV":"Показать все устройства",
"STR_PART_ALIGN_4KB":"Выровнять разделы с размером 4КБ",
"STR_DISK_2TB_MBR_ERROR":"Для накопителей объёмом более 2 ТБ выберите GPT",
"STR_SHOW_ALL_DEV":"Показывать все устройства",
"STR_PART_ALIGN_4KB":"Выравнивать разделы с кластерами по 4 КБ",
"STR_WEB_COMMUNICATION_ERR":"Ошибка связи:",
"STR_WEB_REMOTE_ABNORMAL":"Ошибка связи: Удаленное соединение недействительно",
"STR_WEB_REQUEST_TIMEOUT":"Ошибка связи: Истекло время ожидания запроса",
"STR_WEB_SERVICE_UNAVAILABLE":"Ошибка связи: Служба недоступна",
"STR_WEB_TOKEN_MISMATCH":"Статус демона обновлен. Повторите попытку позже.",
"STR_WEB_REMOTE_ABNORMAL":"Ошибка связи: удалённое соединение недействительно",
"STR_WEB_REQUEST_TIMEOUT":"Ошибка связи: истекло время ожидания запроса",
"STR_WEB_SERVICE_UNAVAILABLE":"Ошибка связи: служба недоступна",
"STR_WEB_TOKEN_MISMATCH":"Состояние службы обновлено, повторите попытку позже.",
"STR_WEB_SERVICE_BUSY":"Служба занята, повторите попытку позже.",
"STR_MENU_VTSI_CREATE":"Создать файл VTSI",
"STR_VTSI_CREATE_TIP":"На этот раз Ventoy не будет установлен на устройство, а будет только создан файл VTSI#@Продолжить?",
"STR_VTSI_CREATE_SUCCESS":"Файл VTSI создан успешно!#@Вы можете использовать Rufus(3.15+), чтобы записать его на устройство, для завершения установки Ventoy.",
"STR_VTSI_CREATE_FAILED":"Ошибка создания файла VTSI.",
"STR_MENU_VTSI_CREATE":"Создать файл .vtsi",
"STR_VTSI_CREATE_TIP":"Вместо установки Вентоя на накопитель будет создан только vtsi-файл.#@Продолжить?",
"STR_VTSI_CREATE_SUCCESS":"Файл .vtsi успешно создан.#@Вы можете записать его на накопитель с помощью приложения Rufus (v3.15+), чтобы завершить установку Вентоя.",
"STR_VTSI_CREATE_FAILED":"Ошибка создания vtsi-файла.",
"STR_MENU_PART_RESIZE":"Неразрушающая установка",
"STR_PART_RESIZE_TIP":"Ventoy попробует неразрушающую установку, если это возможно. #@Продолжить?",
"STR_PART_RESIZE_SUCCESS":"Поздравляем!#@Неразрушающая установка Ventoy успешно завершена.",
"STR_PART_RESIZE_FAILED":"Не удалось выполнить неразрушающую установку, проверьте файл log.txt для получения подробной информации.",
"STR_PART_RESIZE_UNSUPPORTED":"Неразрушающая установка Ventoy остановлена, поскольку некоторые условия не могут быть выполнены. Проверьте файл log.txt для получения подробной информации.",
"STR_INSTALL_YES_TIP1":"Предупреждение: Данные будут потеряны!",
"STR_INSTALL_YES_TIP2":"Пожалуйста, введите YES в текстовое поле ниже, чтобы подтвердить, что вы действительно хотите выполнить новую установку вместо обновления.",
"STR_PART_VENTOY_FS":"Файловая система для Ventoy раздела",
"STR_PART_FS":"Файловая система",
"STR_PART_CLUSTER":"Размер кластера",
"STR_PART_RESIZE_TIP":"Вентой попробует выполнить неразрушающую установку. #@Продолжить?",
"STR_PART_RESIZE_SUCCESS":"Поздравляем!#@Неразрушающая установка Вентоя успешно выполнена.",
"STR_PART_RESIZE_FAILED":"Не удалось выполнить неразрушающую установку, см. файл log.txt с подробностями.",
"STR_PART_RESIZE_UNSUPPORTED":"Неразрушающая установка Вентоя остановлена из-за несоответствия некоторым требованиям. См. файл log.txt с подробностями.",
"STR_INSTALL_YES_TIP1":"ВНИМАНИЕ: все данные будут потеряны!",
"STR_INSTALL_YES_TIP2":"Введите «YES» в текстовом поле ниже, чтобы подтвердить, что вы действительно хотите выполнить новую установку, а не обновление.",
"STR_PART_VENTOY_FS":"Файловая система для раздела Вентоя",
"STR_PART_FS":"Тип:",
"STR_PART_CLUSTER":"Размер кластера:",
"STR_PART_CLUSTER_DEFAULT":"Системное значение по умолчанию",
"STR_DONATE":"Пожертвовать",
"STRXXX":""
},
{
@@ -1192,6 +1274,7 @@
"STR_PART_FS":"ফাইল সিস্টেম",
"STR_PART_CLUSTER":"ক্লাস্টারের আকার",
"STR_PART_CLUSTER_DEFAULT":"সিস্টেমের ডিফল্ট মান",
"STR_DONATE":"দান করুন",
"STRXXX":""
},
@@ -1255,6 +1338,7 @@
"STR_PART_FS":"फाइल सिस्टम",
"STR_PART_CLUSTER":"क्लस्टर साइज",
"STR_PART_CLUSTER_DEFAULT":"सिस्टम डिफ़ॉल्ट मान",
"STR_DONATE":"दान करें",
"STRXXX":""
},
@@ -1275,13 +1359,13 @@
"STR_STATUS":"Status - KLAAR",
"STR_INSTALL":"Installeren",
"STR_UPDATE":"Bijwerken",
"STR_UPDATE_TIP":"Upgraden is veilig: ISO-bestanden blijven ongewijzigd.#@Doorgaan?",
"STR_UPDATE_TIP":"Bijwerken is veilig: ISO-bestanden blijven ongewijzigd.#@Doorgaan?",
"STR_INSTALL_TIP":"Het apparaat wordt geformatteerd en alle gegevens gaan verloren.#@Doorgaan?",
"STR_INSTALL_TIP2":"Het apparaat wordt geformatteerd en alle gegevens gaan verloren.#@Doorgaan? (Dubbelcheck)",
"STR_INSTALL_SUCCESS":"Gefeliciteerd!#@Ventoy is met succes op het apparaat geïnstalleerd.",
"STR_INSTALL_FAILED":"Er is een fout opgetreden tijdens de installatie. U kunt het USB-apparaat opnieuw aansluiten en het nogmaals proberen. Controleer log.txt voor details.",
"STR_INSTALL_FAILED":"Er is een fout opgetreden tijdens de installatie. U kunt het USB-apparaat opnieuw aansluiten en het nogmaals proberen. Controleer log.txt voor details. Raadpleeg de FAQ op de officiële website als het blijft mislukken.",
"STR_UPDATE_SUCCESS":"Gefeliciteerd!#@Ventoy is met succes bijgewerkt op het apparaat.",
"STR_UPDATE_FAILED":"Er is een fout opgetreden tijdens de update. U kunt het USB-apparaat opnieuw aansluiten en het nogmaals proberen. Controleer log.txt voor details.",
"STR_UPDATE_FAILED":"Er is een fout opgetreden tijdens de update. U kunt het USB-apparaat opnieuw aansluiten en het nogmaals proberen. Controleer log.txt voor details. Raadpleeg de FAQ op de officiële website als het blijft mislukken.",
"STR_WAIT_PROCESS":"Ventoy is nog bezig, even geduld...",
"STR_MENU_OPTION":"Opties",
"STR_MENU_SECURE_BOOT":"Ondersteuning voor Secure Boot",
@@ -1294,7 +1378,7 @@
"STR_CLEAR_SUCCESS":"Ventoy is met succes verwijderd van het apparaat.",
"STR_CLEAR_FAILED":"Er is een fout opgetreden bij het verwijderen van Ventoy. U kunt het USB-apparaat opnieuw aansluiten en het nogmaals proberen. Controleer log.txt voor details.",
"STR_MENU_PART_STYLE":"Partitietabel",
"STR_DISK_2TB_MBR_ERROR":"Selecteer GPT als partitietabel voor apparaten groter dan 2 TB",
"STR_DISK_2TB_MBR_ERROR":"Selecteer GPT voor apparaten groter dan 2 TB",
"STR_SHOW_ALL_DEV":"Alle apparaten weergeven",
"STR_PART_ALIGN_4KB":"Partities uitlijnen met 4 KB",
"STR_WEB_COMMUNICATION_ERR":"Communicatiefout:",
@@ -1302,7 +1386,7 @@
"STR_WEB_REQUEST_TIMEOUT":"Communicatiefout: time-out van verzoek",
"STR_WEB_SERVICE_UNAVAILABLE":"Communicatiefout: service niet beschikbaar",
"STR_WEB_TOKEN_MISMATCH":"Daemon-status bijgewerkt, probeer het later opnieuw.",
"STR_WEB_SERVICE_BUSY":"Service is bezet, probeer het later opnieuw.",
"STR_WEB_SERVICE_BUSY":"Service is bezet. Probeer het later opnieuw.",
"STR_MENU_VTSI_CREATE":"VTSI-bestand genereren",
"STR_VTSI_CREATE_TIP":"Deze keer wordt er niet naar het apparaat geschreven, maar wordt er alleen een VTSI-bestand gegenereerd#@Doorgaan?",
"STR_VTSI_CREATE_SUCCESS":"VTSI-bestand met succes aangemaakt!#@U kunt Rufus(3.15+) gebruiken om het bestand naar het apparaat te schrijven om de installatie van Ventoy te voltooien.",
@@ -1312,13 +1396,14 @@
"STR_PART_RESIZE_SUCCESS":"Gefeliciteerd!#@De niet-destructieve installatie van Ventoy is met succes voltooid.",
"STR_PART_RESIZE_FAILED":"Niet-destructieve installatie mislukt. Controleer log.txt voor details.",
"STR_PART_RESIZE_UNSUPPORTED":"De niet-destructieve installatie van Ventoy is gestopt omdat aan sommige voorwaarden niet kan worden voldaan. Controleer log.txt voor details.",
"STR_INSTALL_YES_TIP1":"Warning: Data will be lost!",
"STR_INSTALL_YES_TIP2":"Please enter YES in the text box below to confirm that you indeed want to do a fresh install instead of upgrade.",
"STR_INSTALL_YES_TIP1":"Waarschuwing: alle gegevens zullen verloren gaan!",
"STR_INSTALL_YES_TIP2":"Vul in het onderstaande tekstvak YES in om te bevestigen dat u inderdaad een nieuwe installatie wilt uitvoeren in plaats van een upgrade.",
"STR_PART_VENTOY_FS":"Bestandssysteem voor Ventoy-partitie",
"STR_PART_FS":"Bestandssysteem",
"STR_PART_CLUSTER":"Clustergrootte",
"STR_PART_CLUSTER_DEFAULT":"Standaardwaarde systeem",
"STR_DONATE":"Doneer",
"STRXXX":""
},
{
@@ -1381,7 +1466,8 @@
"STR_PART_FS":"Sistemul de fișiere",
"STR_PART_CLUSTER":"Dimensiunea clusterului",
"STR_PART_CLUSTER_DEFAULT":"Valoarea implicită a sistemului",
"STR_DONATE":"Donează",
"STRXXX":""
},
{
@@ -1444,6 +1530,7 @@
"STR_PART_FS":"ファイルシステム",
"STR_PART_CLUSTER":"クラスターサイズ",
"STR_PART_CLUSTER_DEFAULT":"システムのデフォルト値",
"STR_DONATE":"寄付",
"STRXXX":""
},
@@ -1507,6 +1594,7 @@
"STR_PART_FS":"File System",
"STR_PART_CLUSTER":"Dimensione del grappolo",
"STR_PART_CLUSTER_DEFAULT":"Valore predefinito di sistema",
"STR_DONATE":"Donare",
"STRXXX":""
},
@@ -1570,6 +1658,7 @@
"STR_PART_FS":"File System",
"STR_PART_CLUSTER":"Cluster Size",
"STR_PART_CLUSTER_DEFAULT":"System Default Value",
"STR_DONATE":"Donirajte",
"STRXXX":""
},
@@ -1633,10 +1722,11 @@
"STR_PART_FS":"File System",
"STR_PART_CLUSTER":"Cluster Size",
"STR_PART_CLUSTER_DEFAULT":"System Default Value",
"STR_DONATE":"Adományoz",
"STRXXX":""
},
{
{
"name":"Traditional Chinese正體中文",
"FontFamily":"新細明體",
"FontSize":14,
@@ -1696,6 +1786,7 @@
"STR_PART_FS":"文件系統",
"STR_PART_CLUSTER":"簇的大小",
"STR_PART_CLUSTER_DEFAULT":"系統默認值",
"STR_DONATE":"捐助",
"STRXXX":""
},
@@ -1759,6 +1850,7 @@
"STR_PART_FS":"File System",
"STR_PART_CLUSTER":"Cluster Size",
"STR_PART_CLUSTER_DEFAULT":"System Default Value",
"STR_DONATE":"Donate",
"STRXXX":""
},
@@ -1767,7 +1859,7 @@
"FontFamily":"Courier New",
"FontSize":16,
"Author":"Bojan Maksimović, panickingkernel, Zoran Jankov",
"STR_ERROR":"Грешка",
"STR_WARNING":"Упозорење",
"STR_INFO":"Информација",
@@ -1822,6 +1914,7 @@
"STR_PART_FS":"File System",
"STR_PART_CLUSTER":"Cluster Size",
"STR_PART_CLUSTER_DEFAULT":"System Default Value",
"STR_DONATE":"Донирајте",
"STRXXX":""
},
@@ -1885,7 +1978,8 @@
"STR_PART_FS":"File System",
"STR_PART_CLUSTER":"Cluster Size",
"STR_PART_CLUSTER_DEFAULT":"System Default Value",
"STR_DONATE":"บริจาค",
"STRXXX":""
},
{
@@ -1893,7 +1987,7 @@
"FontFamily":"Courier New",
"FontSize":16,
"Author":"Stein-Ove Bøthun",
"STR_ERROR":"Feil",
"STR_WARNING":"Advarsel",
"STR_INFO":"Info",
@@ -1948,14 +2042,15 @@
"STR_PART_FS":"File System",
"STR_PART_CLUSTER":"Cluster Size",
"STR_PART_CLUSTER_DEFAULT":"System Default Value",
"STR_DONATE":"donere",
"STRXXX":""
},
{
"name":"Vietnamese (Tiếng Việt)",
"FontFamily":"Tahoma",
"FontSize":14,
"Author":"Nguyen Quoc Hoang - cuumay.com",
"Author":"Nguyen Quoc Hoang - cuumay.win",
"STR_ERROR":"Lỗi",
"STR_WARNING":"Cảnh báo",
@@ -2005,12 +2100,13 @@
"STR_PART_RESIZE_SUCCESS":"Chúc mừng bạn!#@Thiết bị đã được cài Ventoy thành công theo cách cài đặt không phá hủy.",
"STR_PART_RESIZE_FAILED":"Đã xảy ra lỗi trong quá trình cài Ventoy theo cách cài đặt không phá hủy. Xem chi tiết ở tệp log.txt.",
"STR_PART_RESIZE_UNSUPPORTED":"Cài Ventoy theo cách cài đặt không phá hủy đã bị dừng lại vì chưa đúng điều kiện. Xem chi tiết ở tệp log.txt.",
"STR_INSTALL_YES_TIP1":"Warning: Data will be lost!",
"STR_INSTALL_YES_TIP2":"Please enter YES in the text box below to confirm that you indeed want to do a fresh install instead of upgrade.",
"STR_PART_VENTOY_FS":"File System For Ventoy Partition",
"STR_PART_FS":"File System",
"STR_PART_CLUSTER":"Cluster Size",
"STR_PART_CLUSTER_DEFAULT":"System Default Value",
"STR_INSTALL_YES_TIP1":"Cảnh báo: Dữ liệu sẽ bị mất !",
"STR_INSTALL_YES_TIP2":"Vui lòng nhập YES vào textbox bên dưới để xác nhận bạn muốn cài mới thay vì cài nâng cấp.",
"STR_PART_VENTOY_FS":"Hệ thống tập tin cho Phân vùng Ventoy",
"STR_PART_FS":"Hệ thống tập tin",
"STR_PART_CLUSTER":"Cỡ Cluster",
"STR_PART_CLUSTER_DEFAULT":"Theo mặc định hệ thống",
"STR_DONATE":"Thưởng tác giả",
"STRXXX":""
},
@@ -2074,6 +2170,7 @@
"STR_PART_FS":"File System",
"STR_PART_CLUSTER":"Cluster Size",
"STR_PART_CLUSTER_DEFAULT":"System Default Value",
"STR_DONATE":"paaukoti",
"STRXXX":""
},
@@ -2137,7 +2234,8 @@
"STR_PART_FS":"File System",
"STR_PART_CLUSTER":"Cluster Size",
"STR_PART_CLUSTER_DEFAULT":"System Default Value",
"STR_DONATE":"донира",
"STRXXX":""
},
{
@@ -2200,6 +2298,7 @@
"STR_PART_FS":"File System",
"STR_PART_CLUSTER":"Cluster Size",
"STR_PART_CLUSTER_DEFAULT":"System Default Value",
"STR_DONATE":"לִתְרוֹם",
"STRXXX":""
},
@@ -2211,7 +2310,7 @@
"STR_ERROR":"Erro",
"STR_WARNING":"Aviso",
"STR_INFO":"Info",
"STR_INFO":"Informação",
"STR_INCORRECT_DIR":"Execute na pasta correta!",
"STR_INCORRECT_TREE_DIR":"Não me execute aqui, transfira o pacote de instalação e execute lá.",
"STR_DEVICE":"Dispositivo",
@@ -2252,18 +2351,19 @@
"STR_VTSI_CREATE_TIP":"Desta vez não irá gravar no dispositivo, mas apenas gerar um ficheiro VTSI#@Continuar?",
"STR_VTSI_CREATE_SUCCESS":"Ficheiro VTSI criado com sucesso!#@Pode utilizar o Rufus(3.15+) para o gravar no dispositivo de modo a completar a instalação do Ventoy.",
"STR_VTSI_CREATE_FAILED":"Falha no ficheiro VTSI criado.",
"STR_MENU_PART_RESIZE":"Non-destructive Install",
"STR_PART_RESIZE_TIP":"Ventoy will try non-destructive installation if possible. #@Continue?",
"STR_PART_RESIZE_SUCCESS":"Congratulations!#@Ventoy non-destructive installation successfully finished.",
"STR_PART_RESIZE_FAILED":"Non-destructive installation failed, Check log.txt for details.",
"STR_PART_RESIZE_UNSUPPORTED":"Ventoy non-destructive installation stopped because some conditions cannot be met. Check log.txt for details.",
"STR_INSTALL_YES_TIP1":"Warning: Data will be lost!",
"STR_INSTALL_YES_TIP2":"Please enter YES in the text box below to confirm that you indeed want to do a fresh install instead of upgrade.",
"STR_PART_VENTOY_FS":"File System For Ventoy Partition",
"STR_PART_FS":"File System",
"STR_PART_CLUSTER":"Cluster Size",
"STR_PART_CLUSTER_DEFAULT":"System Default Value",
"STR_MENU_PART_RESIZE":"Instalação não destrutiva",
"STR_PART_RESIZE_TIP":"O Ventoy tentará uma instalação não destrutiva, se possível. #@Continuar?",
"STR_PART_RESIZE_SUCCESS":"Parabéns!#@Instalação não destrutiva do Ventoy concluída com sucesso.",
"STR_PART_RESIZE_FAILED":"Falha na instalação não destrutiva. Leia o ficheiro log.txt para mais detalhes.",
"STR_PART_RESIZE_UNSUPPORTED":"A instalação não destrutiva do Ventoy foi interrompida porque algumas condições não podem ser cumpridas. Leia o ficheiro log.txt para mais detalhes.",
"STR_INSTALL_YES_TIP1":"Aviso: Os dados serão perdidos!",
"STR_INSTALL_YES_TIP2":"Escreva YES na caixa de texto abaixo para confirmar que deseja de facto fazer uma nova instalação em vez de uma atualização.",
"STR_PART_VENTOY_FS":"Sistema de ficheiros para a partição Ventoy",
"STR_PART_FS":"Sistema de ficheiros",
"STR_PART_CLUSTER":"Tamanho do cluster",
"STR_PART_CLUSTER_DEFAULT":"Valor predefinido do sistema",
"STR_DONATE":"Doar",
"STRXXX":""
},
{
@@ -2323,9 +2423,10 @@
"STR_INSTALL_YES_TIP1":"Peringatan: Data akan hilang!",
"STR_INSTALL_YES_TIP2":"Silakan ketik YES pada kotak tulis di bawah untuk meyakinkan bahwa anda memang untuk melakukan pemasangan baru ketimbang memperbaruinya",
"STR_PART_VENTOY_FS":"Berkas Sistem Untuk Partisi Ventoy",
"STR_PART_FS":"File System",
"STR_PART_CLUSTER":"Cluster Size",
"STR_PART_CLUSTER_DEFAULT":"System Default Value",
"STR_PART_FS":"Berkas Sistem",
"STR_PART_CLUSTER":"Ukuran Kelompok",
"STR_PART_CLUSTER_DEFAULT":"Nilai Standar Sistem",
"STR_DONATE":"Donasi sukarela",
"STRXXX":""
},
@@ -2389,6 +2490,7 @@
"STR_PART_FS":"File System",
"STR_PART_CLUSTER":"Cluster Size",
"STR_PART_CLUSTER_DEFAULT":"System Default Value",
"STR_DONATE":"Donere",
"STRXXX":""
},
@@ -2397,7 +2499,7 @@
"FontFamily":"Courier New",
"FontSize":16,
"Author":"Teraskull, thehugonote, dmitrygribenchuk",
"STR_ERROR":"Помилка",
"STR_WARNING":"Попередження",
"STR_INFO":"Інформація",
@@ -2452,6 +2554,7 @@
"STR_PART_FS":"Файлова система",
"STR_PART_CLUSTER":"Розмір кластера",
"STR_PART_CLUSTER_DEFAULT":"Системне значення за умовчанням",
"STR_DONATE":"Пожертвуйте",
"STRXXX":""
},
@@ -2515,9 +2618,11 @@
"STR_PART_FS":"Σύστημα αρχείων",
"STR_PART_CLUSTER":"Μέγεθος συμπλέγματος",
"STR_PART_CLUSTER_DEFAULT":"Προεπιλεγμένη τιμή συστήματος",
"STR_DONATE":"Προσφέρω",
"STRXXX":""
},
{
"name":"Swedish (Svenska)",
"FontFamily":"Courier New",
@@ -2578,6 +2683,7 @@
"STR_PART_FS":"Filsystem",
"STR_PART_CLUSTER":"Klusterstorlek",
"STR_PART_CLUSTER_DEFAULT":"Systemets standardvärde",
"STR_DONATE":"Donera",
"STRXXX":""
},
@@ -2641,6 +2747,7 @@
"STR_PART_FS":"File System",
"STR_PART_CLUSTER":"Cluster Size",
"STR_PART_CLUSTER_DEFAULT":"System Default Value",
"STR_DONATE":"Donirajte",
"STRXXX":""
},
@@ -2704,6 +2811,7 @@
"STR_PART_FS":"File System",
"STR_PART_CLUSTER":"Cluster Size",
"STR_PART_CLUSTER_DEFAULT":"System Default Value",
"STR_DONATE":"Дарете",
"STRXXX":""
},
@@ -2712,7 +2820,7 @@
"FontFamily":"Courier New",
"FontSize":16,
"Author":"Egho",
"STR_ERROR":"Սխալ",
"STR_WARNING":"Զգուշացում",
"STR_INFO":"Տեղեկություն",
@@ -2767,6 +2875,7 @@
"STR_PART_FS":"File System",
"STR_PART_CLUSTER":"Cluster Size",
"STR_PART_CLUSTER_DEFAULT":"System Default Value",
"STR_DONATE":"Նվիրաբերել",
"STRXXX":""
},
@@ -2830,6 +2939,7 @@
"STR_PART_FS":"File System",
"STR_PART_CLUSTER":"Cluster Size",
"STR_PART_CLUSTER_DEFAULT":"System Default Value",
"STR_DONATE":"Lahjoittaa",
"STRXXX":""
},
@@ -2893,6 +3003,7 @@
"STR_PART_FS":"File System",
"STR_PART_CLUSTER":"Cluster Size",
"STR_PART_CLUSTER_DEFAULT":"System Default Value",
"STR_DONATE":"Doa",
"STRXXX":""
},
@@ -2956,6 +3067,7 @@
"STR_PART_FS":"File System",
"STR_PART_CLUSTER":"Cluster Size",
"STR_PART_CLUSTER_DEFAULT":"System Default Value",
"STR_DONATE":"Donar",
"STRXXX":""
},
@@ -3020,6 +3132,7 @@
"STR_PART_FS":"File System",
"STR_PART_CLUSTER":"Cluster Size",
"STR_PART_CLUSTER_DEFAULT":"System Default Value",
"STR_DONATE":"შემოწირულობა",
"STRXXX":""
},
@@ -3083,7 +3196,8 @@
"STR_PART_FS":"கோப்பு முறைமை",
"STR_PART_CLUSTER":"கொத்து அளவு",
"STR_PART_CLUSTER_DEFAULT":"கணினி இயல்புநிலை மதிப்பு",
"STR_DONATE":"தானம் செய்",
"STRXXX":""
},
{
@@ -3106,9 +3220,9 @@
"STR_UPDATE_TIP":"Абнаўленне бяспечна, ISO-файлы застануцца без змен. #@Працягнуць?",
"STR_INSTALL_TIP":"Дыск будзе адфарматаваны і ўсе дадзеныя будуць страчаныя. #@Працягнуць?",
"STR_INSTALL_TIP2":"Дыск будзе адфарматаваны і ўсе дадзеныя будуць страчаныя. #@ Вы сапраўды жадаеце працягнуць?",
"STR_INSTALL_SUCCESS":"Віншуем! # @ Ventoy быў паспяхова ўстаноўлены на прыладу.",
"STR_INSTALL_SUCCESS":"Віншуем! #@ Ventoy быў паспяхова ўстаноўлены на прыладу.",
"STR_INSTALL_FAILED":"Падчас усталёўкі Ventoy адбылася памылка. Перападлучыце прыладу і паспрабуйце зноў. Праверце файл log.txt для атрымання падрабязнай інфармацыі.",
"STR_UPDATE_SUCCESS":"Віншуем! # @ Ventoy быў паспяхова абноўлены на прыладзе.",
"STR_UPDATE_SUCCESS":"Віншуем! #@ Ventoy быў паспяхова абноўлены на прыладзе.",
"STR_UPDATE_FAILED":"Падчас абнаўлення Ventoy адбылася памылка. Перападлучыце прыладу і паспрабуйце зноў. Праверце файл log.txt для атрымання падрабязнай інфармацыі.",
"STR_WAIT_PROCESS":"Працэс запушчаны, калі ласка пачакайце...",
"STR_MENU_OPTION":"Параметры",
@@ -3133,11 +3247,11 @@
"STR_WEB_SERVICE_BUSY":"Служба занятая, паспрабуйце пазней.",
"STR_MENU_VTSI_CREATE":"Стварыць файл VTSI",
"STR_VTSI_CREATE_TIP":"На гэты раз Ventoy не будзе ўсталяваны на прыладу, а будзе толькі створаны файл VTSI#@Працягнуць?",
"STR_VTSI_CREATE_SUCCESS":"Файл VTSI створаны паспяхова! # @ Вы можаце выкарыстоўваць Rufus (3.15 +), каб запісаць яго на прыладу, для завяршэння ўстаноўкі Ventoy.",
"STR_VTSI_CREATE_SUCCESS":"Файл VTSI створаны паспяхова! #@ Вы можаце выкарыстоўваць Rufus (3.15 +), каб запісаць яго на прыладу, для завяршэння ўстаноўкі Ventoy.",
"STR_VTSI_CREATE_FAILED":"Памылка стварэння файла VTSI.",
"STR_MENU_PART_RESIZE":"Неразбуральная ўстаноўка",
"STR_PART_RESIZE_TIP":"Ventoy паспрабуе неразбуральную ўстаноўку, калі гэта магчыма. #@Працягнуць?",
"STR_PART_RESIZE_SUCCESS":"Віншуем! # @ Неразбуральная ўстаноўка Ventoy паспяхова завершана.",
"STR_PART_RESIZE_SUCCESS":"Віншуем! #@ Неразбуральная ўстаноўка Ventoy паспяхова завершана.",
"STR_PART_RESIZE_FAILED":"Не атрымалася выканаць неразбуральную ўстаноўку, праверце файл log.txt для атрымання падрабязнай інфармацыі.",
"STR_PART_RESIZE_UNSUPPORTED":"Неразбуральная ўстаноўка Ventoy спынена, паколькі некаторыя ўмовы не могуць быць выкананы. Праверце файл log.txt для атрымання падрабязнай інфармацыі.",
"STR_INSTALL_YES_TIP1":"Папярэджанне: Дадзеныя будуць страчаныя!",
@@ -3146,7 +3260,8 @@
"STR_PART_FS":"Файлавая сістэма",
"STR_PART_CLUSTER":"Памер кластара",
"STR_PART_CLUSTER_DEFAULT":"Сістэмнае значэнне па змаўчанні",
"STR_DONATE":"Ахвяраваць",
"STRXXX":""
}
]

View File

@@ -22,6 +22,12 @@ if [ -f ./www.tar.xz ]; then
rm -f ./www.tar.xz
fi
VV=$(grep -m1 '\?v=' ./www/index.html | sed 's/.*v=\([0-9][0-9]*\).*/\1/g')
let VV++
echo V=$VV
sed "s/\?v=[0-9][0-9]*/?v=$VV/g" -i ./www/index.html
[ -f ./www/helplist ] && rm -f ./www/helplist
ls -1 ../INSTALL/grub/help/ | while read line; do
echo -n ${line:0:5} >> ./www/helplist

View File

@@ -70,6 +70,7 @@
#define VTOY_JSON_TOKEN_ERR_RET "{ \"result\" : \"tokenerror\" }"
#define VTOY_JSON_EXIST_RET "{ \"result\" : \"exist\" }"
#define VTOY_JSON_TIMEOUT_RET "{ \"result\" : \"timeout\" }"
#define VTOY_JSON_DUPLICATE "{ \"result\" : \"duplicate\" }"
#define VTOY_JSON_BUSY_RET "{ \"result\" : \"busy\" }"
#define VTOY_JSON_INUSE_RET "{ \"result\" : \"inuse\" }"
#define VTOY_JSON_NOTFOUND_RET "{ \"result\" : \"notfound\" }"

View File

@@ -638,7 +638,8 @@ int CheckRuntimeEnvironment(char Letter, ventoy_disk *disk)
return 1;
}
if (_stricmp(FsName, "NTFS") == 0)
/* Fix: enable for all file system on Windows */
/* if (_stricmp(FsName, "NTFS") == 0) */
{
disk->pathcase = 1;
}

View File

@@ -21,6 +21,7 @@
#include <stdint.h>
#include <string.h>
#include <stdarg.h>
#include <stddef.h>
#include <errno.h>
#include <time.h>
@@ -97,6 +98,9 @@ static char *g_pub_save_buffer = NULL;
static pthread_mutex_t g_api_mutex;
static struct mg_context *g_ventoy_http_ctx = NULL;
#define ventoy_is_real_exist_common(xpath, xnode, xtype) \
ventoy_path_is_real_exist(xpath, xnode, offsetof(xtype, path), offsetof(xtype, next))
static int ventoy_is_kbd_valid(const char *key)
{
int i = 0;
@@ -170,6 +174,40 @@ static void ventoy_free_path_node_list(path_node *list)
}
}
static int ventoy_path_is_real_exist(const char *path, void *head, size_t pathoff, size_t nextoff)
{
char *node = NULL;
const char *nodepath = NULL;
const char *realpath = NULL;
char pathbuf[MAX_PATH];
if (strchr(path, '*'))
{
return 0;
}
realpath = ventoy_real_path(path);
scnprintf(pathbuf, sizeof(pathbuf), "%s", realpath);
node = (char *)head;
while (node)
{
nodepath = node + pathoff;
if (NULL == strchr(nodepath, '*'))
{
realpath = ventoy_real_path(nodepath);
if (strcmp(pathbuf, realpath) == 0)
{
return 1;
}
}
memcpy(&node, node + nextoff, sizeof(node));
}
return 0;
}
static path_node * ventoy_path_node_add_array(VTOY_JSON *array)
{
path_node *head = NULL;
@@ -519,6 +557,8 @@ void ventoy_data_default_control(data_control *data)
data->max_search_level = -1;
data->menu_timeout = 0;
data->secondary_menu_timeout = 0;
data->win11_bypass_check = 1;
data->win11_bypass_nro = 1;
strlcpy(data->default_kbd_layout, "QWERTY_USA");
strlcpy(data->menu_language, "en_US");
@@ -539,6 +579,7 @@ int ventoy_data_cmp_control(data_control *data1, data_control *data2)
data1->filter_vhd != data2->filter_vhd ||
data1->filter_vtoy != data2->filter_vtoy ||
data1->win11_bypass_check != data2->win11_bypass_check ||
data1->win11_bypass_nro != data2->win11_bypass_nro ||
data1->linux_remount != data2->linux_remount ||
data1->password_asterisk != data2->password_asterisk ||
data1->secondary_menu != data2->secondary_menu ||
@@ -587,6 +628,7 @@ int ventoy_data_save_control(data_control *data, const char *title, char *buf, i
VTOY_JSON_FMT_CTRL_INT(L2, "VTOY_FILE_FLT_VHD", filter_vhd);
VTOY_JSON_FMT_CTRL_INT(L2, "VTOY_FILE_FLT_VTOY", filter_vtoy);
VTOY_JSON_FMT_CTRL_INT(L2, "VTOY_WIN11_BYPASS_CHECK", win11_bypass_check);
VTOY_JSON_FMT_CTRL_INT(L2, "VTOY_WIN11_BYPASS_NRO", win11_bypass_nro);
VTOY_JSON_FMT_CTRL_INT(L2, "VTOY_LINUX_REMOUNT", linux_remount);
VTOY_JSON_FMT_CTRL_INT(L2, "VTOY_SECONDARY_BOOT_MENU", secondary_menu);
VTOY_JSON_FMT_CTRL_INT(L2, "VTOY_SHOW_PASSWORD_ASTERISK", password_asterisk);
@@ -635,6 +677,7 @@ int ventoy_data_json_control(data_control *ctrl, char *buf, int buflen)
VTOY_JSON_FMT_SINT("filter_vhd", ctrl->filter_vhd);
VTOY_JSON_FMT_SINT("filter_vtoy", ctrl->filter_vtoy);
VTOY_JSON_FMT_SINT("win11_bypass_check", ctrl->win11_bypass_check);
VTOY_JSON_FMT_SINT("win11_bypass_nro", ctrl->win11_bypass_nro);
VTOY_JSON_FMT_SINT("linux_remount", ctrl->linux_remount);
VTOY_JSON_FMT_SINT("secondary_menu", ctrl->secondary_menu);
VTOY_JSON_FMT_SINT("password_asterisk", ctrl->password_asterisk);
@@ -703,6 +746,7 @@ static int ventoy_api_save_control(struct mg_connection *conn, VTOY_JSON *json)
VTOY_JSON_INT("filter_vhd", ctrl->filter_vhd);
VTOY_JSON_INT("filter_vtoy", ctrl->filter_vtoy);
VTOY_JSON_INT("win11_bypass_check", ctrl->win11_bypass_check);
VTOY_JSON_INT("win11_bypass_nro", ctrl->win11_bypass_nro);
VTOY_JSON_INT("linux_remount", ctrl->linux_remount);
VTOY_JSON_INT("secondary_menu", ctrl->secondary_menu);
VTOY_JSON_INT("password_asterisk", ctrl->password_asterisk);
@@ -781,13 +825,18 @@ int ventoy_data_save_theme(data_theme *data, const char *title, char *buf, int b
{
VTOY_JSON_FMT_ITEM_PATH_LN(L3, node->path);
}
VTOY_JSON_FMT_ARY_ENDEX_LN(L2);
if (def->default_file != data->default_file)
{
VTOY_JSON_FMT_SINT_LN(L2, "default_file", data->default_file);
}
if (def->resolution_fit != data->resolution_fit)
{
VTOY_JSON_FMT_SINT_LN(L2, "resolution_fit", data->resolution_fit);
}
}
else
{
@@ -850,6 +899,7 @@ int ventoy_data_json_theme(data_theme *data, char *buf, int buflen)
VTOY_JSON_FMT_OBJ_BEGIN();
VTOY_JSON_FMT_SINT("default_file", data->default_file);
VTOY_JSON_FMT_SINT("resolution_fit", data->resolution_fit);
VTOY_JSON_FMT_SINT("display_mode", data->display_mode);
VTOY_JSON_FMT_STRN("gfxmode", data->gfxmode);
@@ -901,6 +951,7 @@ static int ventoy_api_save_theme(struct mg_connection *conn, VTOY_JSON *json)
data = g_data_theme + index;
VTOY_JSON_INT("default_file", data->default_file);
VTOY_JSON_INT("resolution_fit", data->resolution_fit);
VTOY_JSON_INT("display_mode", data->display_mode);
VTOY_JSON_STR("gfxmode", data->gfxmode);
VTOY_JSON_STR("ventoy_left", data->ventoy_left);
@@ -913,6 +964,7 @@ static int ventoy_api_save_theme(struct mg_connection *conn, VTOY_JSON *json)
return 0;
}
static int ventoy_api_theme_add_file(struct mg_connection *conn, VTOY_JSON *json)
{
int ret;
@@ -928,6 +980,12 @@ static int ventoy_api_theme_add_file(struct mg_connection *conn, VTOY_JSON *json
path = VTOY_JSON_STR_EX("path");
if (path)
{
if (ventoy_is_real_exist_common(path, data->filelist, path_node))
{
ventoy_json_result(conn, VTOY_JSON_DUPLICATE);
return 0;
}
node = zalloc(sizeof(path_node));
if (node)
{
@@ -974,7 +1032,6 @@ static int ventoy_api_theme_del_file(struct mg_connection *conn, VTOY_JSON *json
return 0;
}
static int ventoy_api_theme_add_font(struct mg_connection *conn, VTOY_JSON *json)
{
int ret;
@@ -983,13 +1040,19 @@ static int ventoy_api_theme_add_font(struct mg_connection *conn, VTOY_JSON *json
path_node *node = NULL;
path_node *cur = NULL;
data_theme *data = NULL;
vtoy_json_get_int(json, "index", &index);
data = g_data_theme + index;
path = VTOY_JSON_STR_EX("path");
if (path)
{
if (ventoy_is_real_exist_common(path, data->fontslist, path_node))
{
ventoy_json_result(conn, VTOY_JSON_DUPLICATE);
return 0;
}
node = zalloc(sizeof(path_node));
if (node)
{
@@ -1192,6 +1255,12 @@ static int ventoy_api_alias_add(struct mg_connection *conn, VTOY_JSON *json)
alias = VTOY_JSON_STR_EX("alias");
if (path && alias)
{
if (ventoy_is_real_exist_common(path, data->list, data_alias_node))
{
ventoy_json_result(conn, VTOY_JSON_DUPLICATE);
return 0;
}
node = zalloc(sizeof(data_alias_node));
if (node)
{
@@ -1437,6 +1506,12 @@ static int ventoy_api_tip_add(struct mg_connection *conn, VTOY_JSON *json)
tip = VTOY_JSON_STR_EX("tip");
if (path && tip)
{
if (ventoy_is_real_exist_common(path, data->list, data_tip_node))
{
ventoy_json_result(conn, VTOY_JSON_DUPLICATE);
return 0;
}
node = zalloc(sizeof(data_tip_node));
if (node)
{
@@ -1786,6 +1861,12 @@ static int ventoy_api_auto_memdisk_add(struct mg_connection *conn, VTOY_JSON *js
path = VTOY_JSON_STR_EX("path");
if (path)
{
if (ventoy_is_real_exist_common(path, data->list, path_node))
{
ventoy_json_result(conn, VTOY_JSON_DUPLICATE);
return 0;
}
node = zalloc(sizeof(path_node));
if (node)
{
@@ -1968,6 +2049,12 @@ static int ventoy_api_image_list_add(struct mg_connection *conn, VTOY_JSON *json
path = VTOY_JSON_STR_EX("path");
if (path)
{
if (ventoy_is_real_exist_common(path, data->list, path_node))
{
ventoy_json_result(conn, VTOY_JSON_DUPLICATE);
return 0;
}
node = zalloc(sizeof(path_node));
if (node)
{
@@ -2223,6 +2310,12 @@ static int ventoy_api_password_add(struct mg_connection *conn, VTOY_JSON *json)
pwd = VTOY_JSON_STR_EX("pwd");
if (path && pwd)
{
if (ventoy_is_real_exist_common(path, data->list, menu_password))
{
ventoy_json_result(conn, VTOY_JSON_DUPLICATE);
return 0;
}
node = zalloc(sizeof(menu_password));
if (node)
{
@@ -2628,6 +2721,12 @@ static int ventoy_api_dud_add(struct mg_connection *conn, VTOY_JSON *json)
path = VTOY_JSON_STR_EX("path");
if (path && array)
{
if (ventoy_is_real_exist_common(path, data->list, dud_node))
{
ventoy_json_result(conn, VTOY_JSON_DUPLICATE);
return 0;
}
node = zalloc(sizeof(dud_node));
if (node)
{
@@ -2983,6 +3082,12 @@ static int ventoy_api_auto_install_add(struct mg_connection *conn, VTOY_JSON *js
path = VTOY_JSON_STR_EX("path");
if (path && array)
{
if (ventoy_is_real_exist_common(path, data->list, auto_install_node))
{
ventoy_json_result(conn, VTOY_JSON_DUPLICATE);
return 0;
}
node = zalloc(sizeof(auto_install_node));
if (node)
{
@@ -3325,6 +3430,12 @@ static int ventoy_api_persistence_add(struct mg_connection *conn, VTOY_JSON *jso
path = VTOY_JSON_STR_EX("path");
if (path && array)
{
if (ventoy_is_real_exist_common(path, data->list, persistence_node))
{
ventoy_json_result(conn, VTOY_JSON_DUPLICATE);
return 0;
}
node = zalloc(sizeof(persistence_node));
if (node)
{
@@ -3618,6 +3729,12 @@ static int ventoy_api_injection_add(struct mg_connection *conn, VTOY_JSON *json)
archive = VTOY_JSON_STR_EX("archive");
if (path && archive)
{
if (ventoy_is_real_exist_common(path, data->list, injection_node))
{
ventoy_json_result(conn, VTOY_JSON_DUPLICATE);
return 0;
}
node = zalloc(sizeof(injection_node));
if (node)
{
@@ -4019,6 +4136,10 @@ static int ventoy_parse_control(VTOY_JSON *json, void *p)
{
CONTROL_PARSE_INT_DEF_0(child, data->win11_bypass_check);
}
else if (strcmp(child->pcName, "VTOY_WIN11_BYPASS_NRO") == 0)
{
CONTROL_PARSE_INT_DEF_0(child, data->win11_bypass_nro);
}
else if (strcmp(child->pcName, "VTOY_LINUX_REMOUNT") == 0)
{
CONTROL_PARSE_INT_DEF_0(child, data->linux_remount);
@@ -4148,6 +4269,7 @@ static int ventoy_parse_theme(VTOY_JSON *json, void *p)
vtoy_json_get_string(child, "ventoy_color", sizeof(data->ventoy_color), data->ventoy_color);
vtoy_json_get_int(child, "default_file", &(data->default_file));
vtoy_json_get_int(child, "resolution_fit", &(data->resolution_fit));
vtoy_json_get_string(child, "gfxmode", sizeof(data->gfxmode), data->gfxmode);
vtoy_json_get_string(child, "serial_param", sizeof(data->serial_param), data->serial_param);
@@ -4175,6 +4297,7 @@ static int ventoy_parse_theme(VTOY_JSON *json, void *p)
if (node)
{
data->default_file = 0;
data->resolution_fit = 0;
pnode = zalloc(sizeof(path_node));
if (pnode)

View File

@@ -75,6 +75,7 @@ typedef struct data_control
int filter_vhd;
int filter_vtoy;
int win11_bypass_check;
int win11_bypass_nro;
int menu_timeout;
int secondary_menu_timeout;
int linux_remount;
@@ -100,6 +101,7 @@ typedef struct path_node
typedef struct data_theme
{
int default_file;
int resolution_fit;
path_node *filelist;
int display_mode;
char gfxmode[32];

View File

@@ -1 +1 @@
20221204 12:35:33
20221204 15:15:33

View File

@@ -1 +1 @@
bn_BNde_DEen_USfr_FRhi_HIhr_HRid_IDja_JPko_KRpt_PTru_RUsr_RStr_TRzh_CN
ar_ARbn_BNde_DEen_USfr_FRhi_HIhr_HRhu_HUid_IDja_JPka_GEko_KRpl_PLpt_PTru_RUsr_RSta_INtr_TRzh_CNzh_TW

View File

@@ -757,7 +757,7 @@
<footer class="main-footer">
<div class="pull-right hidden-xs">
<b id="plugson_build_date">20221204 12:35:33</b>
<b id="plugson_build_date">20221204 15:15:33</b>
</div>
<strong><a href="https://www.ventoy.net" target="_blank">https://www.ventoy.net</a></strong>
</footer>
@@ -777,10 +777,10 @@
<script src="/static/js/jQuery-2.1.4.min.js"></script>
<!-- jquery validate -->
<script src="/static/js/jquery.validate.min.js"></script>
<script src="/static/js/jquery.validate.vtoymethods.js?v=100"></script>
<script src="/static/js/jquery.validate.vtoymethods.js?v=109"></script>
<script src="/static/js/jquery.vtoy.alert.js?v=100"></script>
<script src="/static/js/vtoy.js?v=100"></script>
<script src="/static/js/jquery.vtoy.alert.js?v=109"></script>
<script src="/static/js/vtoy.js?v=109"></script>
<script src="/static/js/md5.min.js"></script>
<!-- Bootstrap 3.3.5 -->

View File

@@ -1 +1 @@
bn_BNde_DEen_USfr_FRhi_HIhr_HRid_IDja_JPko_KRpt_PTru_RUsr_RStr_TRzh_CN
ar_ARbn_BNde_DEen_USfr_FRhi_HIhr_HRhu_HUid_IDja_JPka_GEko_KRpl_PLpt_PTru_RUsr_RSta_INtr_TRzh_CNzh_TW

View File

@@ -359,9 +359,13 @@
template: call_array,
type: type
}, function(e) {
list.push(data);
FillAutoInsTable(list);
Message.success(g_vtoy_cur_language.STR_SAVE_SUCCESS);
if (e.result === 'success') {
list.push(data);
FillAutoInsTable(list);
Message.success(g_vtoy_cur_language.STR_SAVE_SUCCESS);
} else if (e.result === 'duplicate') {
Message.error(g_vtoy_cur_language.STR_DUPLICATE_PATH);
}
});
}

View File

@@ -131,9 +131,13 @@
index: current_tab_index,
path: data.path,
}, function(e) {
list.push(data);
FillMemdiskTable(list);
Message.success(g_vtoy_cur_language.STR_SAVE_SUCCESS);
if (e.result === 'success') {
list.push(data);
FillMemdiskTable(list);
Message.success(g_vtoy_cur_language.STR_SAVE_SUCCESS);
} else if (e.result === 'duplicate') {
Message.error(g_vtoy_cur_language.STR_DUPLICATE_PATH);
}
});
}

View File

@@ -151,7 +151,6 @@
<code>HKEY_LOCAL_MACHINE\SYSTEM\Setup\LabConfig\BypassTPMCheck</code><br/>
<code>HKEY_LOCAL_MACHINE\SYSTEM\Setup\LabConfig\BypassSecureBootCheck</code><br/>
<code>HKEY_LOCAL_MACHINE\SYSTEM\Setup\LabConfig\BypassCPUCheck</code><br/>
<code>HKEY_LOCAL_MACHINE\SYSTEM\Setup\LabConfig\BypassStorageCheck</code><br/>
</td>
</tr>
<tr id="tr_title_desc_en">
@@ -172,6 +171,53 @@
</div><!-- /.box-body -->
</div><!-- /.box -->
<div class="box box-primary box-solid">
<div class="box-header with-border">
<h3 class="box-title" style="font-size: 14px;font-weight: bold;">VTOY_WIN11_BYPASS_NRO
<span id="id_span_desc_cn"> —— 绕过Windows 11 在线账户需求</span></h3>
<div class="box-tools pull-right">
<button class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button>
</div><!-- /.box-tools -->
</div><!-- /.box-header -->
<div class="box-body no-padding">
<table class="table table-bordered no-padding">
<tr style="font-weight:bold;">
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
<td>
<label class="radio-inline">
<input type="radio" id="id_ctrl_bypass_nro_radio0" name="id_ctrl_bypass_nro_radio" data-type="0" value="0"/> <span style="font-weight:bold;">0</span>
</label>&nbsp;&nbsp;&nbsp;&nbsp;
<label class="radio-inline">
<input type="radio" id="id_ctrl_bypass_nro_radio1" name="id_ctrl_bypass_nro_radio" data-type="1" value="1"/> <span style="font-weight:bold;">1</span>
</label>
</td>
</tr>
<tr id="tr_title_desc_cn">
<td class="td_ctrl_col" id="td_title_desc">选项说明</td>
<td>
<code style="font-weight: bold;">0</code> 不绕过Windows 11安装时的在线账户需求。<br/>
<code style="font-weight: bold;">1</code> 绕过Windows 11安装时的在线账户需求。<br/><br/>
该选项只对标准Windows 11 ISO文件有效对于其他镜像文件无效。
当设置为1时Ventoy 会在安装时创建以下注册表项用来绕过 Windows 11 安装时对在线账户的需求。<br/>
<code>HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\OOBE\BypassNRO</code><br/>
</td>
</tr>
<tr id="tr_title_desc_en">
<td class="td_ctrl_col" id="td_title_desc">Option Description</td>
<td>
<code style="font-weight: bold;">0</code> Do not bypass Windows 11 online account requirement.<br/>
<code style="font-weight: bold;">1</code> Bypass Windows 11 online account requirement. <br/><br/>
This option only avaliable for standard Windows 11 ISO files.
When set to 1, Ventoy will create the following registry to bypass Windows 11 online account requirement when install. <br/>
<code>HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\OOBE\BypassNRO</code>
</td>
</tr>
</table>
</div><!-- /.box-body -->
</div><!-- /.box -->
@@ -1060,6 +1106,7 @@
var level;
data.win11_bypass_check = parseInt($('input:radio[name=id_ctrl_bypass_win11_radio]:checked').val());
data.win11_bypass_nro = parseInt($('input:radio[name=id_ctrl_bypass_nro_radio]:checked').val());
data.linux_remount = parseInt($('input:radio[name=id_ctrl_linux_remount_radio]:checked').val());
data.secondary_menu = parseInt($('input:radio[name=id_ctrl_secondary_radio]:checked').val());
data.password_asterisk = parseInt($('input:radio[name=id_ctrl_asterisk_radio]:checked').val());
@@ -1096,6 +1143,8 @@
function VtoyFillCurrentPageItem(data) {
//VTOY_WIN11_BYPASS_CHECK
$('input:radio[name=id_ctrl_bypass_win11_radio]')[data.win11_bypass_check].checked = true;
//VTOY_WIN11_BYPASS_NRO
$('input:radio[name=id_ctrl_bypass_nro_radio]')[data.win11_bypass_nro].checked = true;
$('input:radio[name=id_ctrl_linux_remount_radio]')[data.linux_remount].checked = true;
$('input:radio[name=id_ctrl_secondary_radio]')[data.secondary_menu].checked = true;
$('input:radio[name=id_ctrl_asterisk_radio]')[data.password_asterisk].checked = true;
@@ -1202,6 +1251,7 @@
method : 'save_control',
index: current_tab_index,
win11_bypass_check: data.win11_bypass_check,
win11_bypass_nro: data.win11_bypass_nro,
linux_remount:data.linux_remount,
secondary_menu:data.secondary_menu,
password_asterisk:data.password_asterisk,

View File

@@ -203,9 +203,13 @@
dud: call_array,
type: type
}, function(e) {
list.push(data);
FillDudTable(list);
Message.success(g_vtoy_cur_language.STR_SAVE_SUCCESS);
if (e.result === 'success') {
list.push(data);
FillDudTable(list);
Message.success(g_vtoy_cur_language.STR_SAVE_SUCCESS);
} else if (e.result === 'duplicate') {
Message.error(g_vtoy_cur_language.STR_DUPLICATE_PATH);
}
});
}

View File

@@ -221,9 +221,13 @@
index: current_tab_index,
path: data.path,
}, function(e) {
list.push(data);
FillImageListTable(list);
Message.success(g_vtoy_cur_language.STR_SAVE_SUCCESS);
if (e.result === 'success') {
list.push(data);
FillImageListTable(list);
Message.success(g_vtoy_cur_language.STR_SAVE_SUCCESS);
} else if (e.result === 'duplicate') {
Message.error(g_vtoy_cur_language.STR_DUPLICATE_PATH);
}
});
}

View File

@@ -158,9 +158,13 @@
archive: data.archive,
type: type
}, function(e) {
list.push(data);
FillInjectionTable(list);
Message.success(g_vtoy_cur_language.STR_SAVE_SUCCESS);
if (e.result === 'success') {
list.push(data);
FillInjectionTable(list);
Message.success(g_vtoy_cur_language.STR_SAVE_SUCCESS);
} else if (e.result === 'duplicate') {
Message.error(g_vtoy_cur_language.STR_DUPLICATE_PATH);
}
});
}

View File

@@ -152,9 +152,13 @@
alias: data.alias,
type: type
}, function(e) {
list.push(data);
FillAliasTable(list);
Message.success(g_vtoy_cur_language.STR_SAVE_SUCCESS);
if (e.result === 'success') {
list.push(data);
FillAliasTable(list);
Message.success(g_vtoy_cur_language.STR_SAVE_SUCCESS);
} else if (e.result === 'duplicate') {
Message.error(g_vtoy_cur_language.STR_DUPLICATE_PATH);
}
});
}

View File

@@ -178,9 +178,13 @@
class: data.class,
type: type
}, function(e) {
list.push(data);
FillClassTable(list);
Message.success(g_vtoy_cur_language.STR_SAVE_SUCCESS);
if (e.result === 'success') {
list.push(data);
FillClassTable(list);
Message.success(g_vtoy_cur_language.STR_SAVE_SUCCESS);
} else if (e.result === 'duplicate') {
Message.error(g_vtoy_cur_language.STR_DUPLICATE_PATH);
}
});
}

View File

@@ -244,9 +244,13 @@
tip: data.tip,
type: type
}, function(e) {
list.push(data);
FillTipTable(list);
Message.success(g_vtoy_cur_language.STR_SAVE_SUCCESS);
if (e.result === 'success') {
list.push(data);
FillTipTable(list);
Message.success(g_vtoy_cur_language.STR_SAVE_SUCCESS);
} else if (e.result === 'duplicate') {
Message.error(g_vtoy_cur_language.STR_DUPLICATE_PATH);
}
});
}

View File

@@ -464,9 +464,13 @@ function VtoySetPassword(common, type, cb, data) {
path: data.path,
pwd: data.pwd
}, function(e) {
list.push(data);
FillMenuPwdTable(list);
Message.success(g_vtoy_cur_language.STR_SAVE_SUCCESS);
if (e.result === 'success') {
list.push(data);
FillMenuPwdTable(list);
Message.success(g_vtoy_cur_language.STR_SAVE_SUCCESS);
} else if (e.result === 'duplicate') {
Message.error(g_vtoy_cur_language.STR_DUPLICATE_PATH);
}
});
}

View File

@@ -358,9 +358,13 @@
backend: call_array,
type: type
}, function(e) {
list.push(data);
FillPersistenceTable(list);
Message.success(g_vtoy_cur_language.STR_SAVE_SUCCESS);
if (e.result === 'success') {
list.push(data);
FillPersistenceTable(list);
Message.success(g_vtoy_cur_language.STR_SAVE_SUCCESS);
} else if (e.result === 'duplicate') {
Message.error(g_vtoy_cur_language.STR_DUPLICATE_PATH);
}
});
}

View File

@@ -71,6 +71,50 @@
</div><!-- /.box-body -->
</div><!-- /.box -->
<div class="box box-primary box-solid" id='resolution_fit_div'>
<div class="box-header with-border">
<h3 class="box-title" style="font-size: 14px;font-weight: bold;">resolution_fit
<span id="id_span_desc_cn"> —— 按照分辨率过滤</span></h3>
<div class="box-tools pull-right">
<button class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button>
</div><!-- /.box-tools -->
</div><!-- /.box-header -->
<div class="box-body no-padding">
<table class="table table-bordered no-padding">
<tr style="font-weight:bold;">
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
<td>
<label class="radio-inline">
<input type="radio" id="id_ctrl_radio_res_fit0" name="id_ctrl_radio_res_fit" data-type="0" value="0"> <span style="font-weight:bold;">0</span>
</label>&nbsp;&nbsp;&nbsp;&nbsp;
<label class="radio-inline">
<input type="radio" id="id_ctrl_radio_res_fit1" name="id_ctrl_radio_res_fit" data-type="1" value="1"> <span style="font-weight:bold;">1</span>
</label>
</td>
</tr>
<tr id="tr_title_desc_cn">
<td class="td_ctrl_col" id="td_title_desc">选项说明</td>
<td>当设置多个主题时,在随机选择时是否按照当前分辨率过滤。&nbsp;&nbsp;
<code style="font-weight: bold;">0</code> 不过滤 &nbsp;&nbsp;
<code style="font-weight: bold;">1</code> 过滤 <br/>
注意,这个选项必须在上面设置了多个主题配置文件,同时 "默认" 设置为 “随机选择” 时才有效,其他情况下均无效。<br/>
关于这个选项的详细解释,请参考 <a href="https://www.ventoy.net/cn/plugin_theme.html#vtoy_theme_res_fit">resolution_fit 选项说明</a>
</td>
</tr>
<tr id="tr_title_desc_en">
<td class="td_ctrl_col">Option Description</td>
<td>
Filter by current resolution when you set more than one themes. &nbsp;&nbsp;
<code style="font-weight: bold;">0</code> No filter &nbsp;&nbsp
<code style="font-weight: bold;">1</code> Filter <br/>
You can refer <a href="https://www.ventoy.net/en/plugin_theme.html#vtoy_theme_res_fit">About resolution_fit</a> for details about this option.
</td>
</tr>
</table>
</div><!-- /.box-body -->
</div><!-- /.box -->
<div class="box box-primary box-solid">
<div class="box-header with-border">
@@ -239,6 +283,8 @@
} else {
data.display_mode = 0;
}
data.resolution_fit = parseInt($('input:radio[name=id_ctrl_radio_res_fit]:checked').val());
}
function VtoySaveCurrentPage() {
@@ -249,6 +295,7 @@
method : 'save_theme',
index: current_tab_index,
display_mode: data.display_mode,
resolution_fit: data.resolution_fit,
gfxmode: data.gfxmode,
default_file: data.default_file
}, function(e) {
@@ -269,6 +316,12 @@
var $tbl = $("#id_theme_tbl_file tbody");
$tbl.empty();
if (list.length > 1) {
$('#resolution_fit_div').show();
} else {
$('#resolution_fit_div').hide();
}
for (var i = 0; i < list.length; i++) {
var $tr;
td1 = '<td>' + (i + 1) + '</td>';
@@ -365,6 +418,8 @@
$('select[id=id_theme_sel_dismode').val('GUI');
}
$('input:radio[name=id_ctrl_radio_res_fit]')[data.resolution_fit].checked = true;
FillThemeFileTable(data.filelist, data.default_file);
FillThemeFontTable(data.fontslist);
}
@@ -403,9 +458,13 @@
index: current_tab_index,
path: data.path
}, function(e) {
list.push(data);
FillThemeFileTable(list, m_data_theme[current_tab_index].default_file);
Message.success(g_vtoy_cur_language.STR_SAVE_SUCCESS);
if (e.result === 'success') {
list.push(data);
FillThemeFileTable(list, m_data_theme[current_tab_index].default_file);
Message.success(g_vtoy_cur_language.STR_SAVE_SUCCESS);
} else if (e.result === 'duplicate') {
Message.error(g_vtoy_cur_language.STR_DUPLICATE_PATH);
}
});
}
@@ -428,9 +487,13 @@
index: current_tab_index,
path: data.path
}, function(e) {
list.push(data);
FillThemeFontTable(list);
Message.success(g_vtoy_cur_language.STR_SAVE_SUCCESS);
if (e.result === 'success') {
list.push(data);
FillThemeFontTable(list);
Message.success(g_vtoy_cur_language.STR_SAVE_SUCCESS);
} else if (e.result === 'duplicate') {
Message.error(g_vtoy_cur_language.STR_DUPLICATE_PATH);
}
});
}
@@ -507,6 +570,8 @@
$('select[id=id_theme_sel_gfxmode]').change(VtoySaveCurrentPage);
$('select[id=id_theme_sel_dismode]').change(VtoySaveCurrentPage);
$('#id_ctrl_radio_res_fit0').change(VtoySaveCurrentPage);
$('#id_ctrl_radio_res_fit1').change(VtoySaveCurrentPage);
$('#id_tab_theme a[href="#tab_0"]').click(OnClickMultiModeTab);
$('#id_tab_theme a[href="#tab_1"]').click(OnClickMultiModeTab);

View File

@@ -33,6 +33,8 @@ function ventoy_get_ulen(str) {
function ventoy_common_check_path(path) {
var curdir
if (path.indexOf('//') >= 0) {
return false;
}
@@ -41,7 +43,12 @@ function ventoy_common_check_path(path) {
return false;
}
if (path.substr(0, g_current_dir.length) != g_current_dir) {
curdir = path.substr(0, g_current_dir.length);
if (curdir.match("^[a-z]:$")) {
curdir = curdir.toUpperCase();
}
if (curdir != g_current_dir) {
return false;
}

View File

@@ -7,7 +7,7 @@
<img src="https://img.shields.io/github/license/ventoy/Ventoy?style=for-the-badge">
<img src="https://img.shields.io/github/stars/ventoy/Ventoy?style=for-the-badge">
<img src="https://img.shields.io/github/downloads/ventoy/Ventoy/total.svg?style=for-the-badge">
<img src="https://img.shields.io/github/workflow/status/ventoy/Ventoy/Ventoy%20CI?label=actions&logo=github&style=for-the-badge">
<img src="https://img.shields.io/github/actions/workflow/status/ventoy/Ventoy/ci.yml?label=actions&logo=github&style=for-the-badge">
</p>
<h4 align="left">
@@ -27,7 +27,7 @@ Most type of OS supported(Windows/WinPE/Linux/Unix/ChromeOS/Vmware/Xen...) <br/>
Windows 7, Windows 8, Windows 8.1, Windows 10, Windows 11, Windows Server 2012, Windows Server 2012 R2, Windows Server 2016, Windows Server 2019, Windows Server 2022, WinPE
**Linux**
Debian, Ubuntu, CentOS(6/7/8/9), RHEL(6/7/8/9), Deepin, Fedora, Rocky Linux, AlmaLinux, EuroLinux(6/7/8/9), openEuler, OpenAnolis, SLES, openSUSE, MX Linux, Manjaro, Linux Mint, Endless OS, Elementary OS, Solus, Linx, Zorin, antiX, PClinuxOS, Arch, ArcoLinux, ArchLabs, BlackArch, Obarun, Artix Linux, Puppy Linux, Tails, Slax, Kali, Mageia, Slackware, Q4OS, Archman, Gentoo, Pentoo, NixOS, Kylin, openKylin, Ubuntu Kylin, KylinSec, Lubuntu, Xubuntu, Kubuntu, Ubuntu MATE, Ubuntu Budgie, Ubuntu Studio, Bluestar, OpenMandriva, ExTiX, Netrunner, ALT Linux, Nitrux, Peppermint, KDE neon, Linux Lite, Parrot OS, Qubes, Pop OS, ROSA, Void Linux, Star Linux, EndeavourOS, MakuluLinux, Voyager, Feren, ArchBang, LXLE, Knoppix, Calculate Linux, Clear Linux, Pure OS, Oracle Linux, Trident, Septor, Porteus, Devuan, GoboLinux, 4MLinux, Simplicity Linux, Zeroshell, Android-x86, netboot.xyz, Slitaz, SuperGrub2Disk, Proxmox VE, Kaspersky Rescue, SystemRescueCD, MemTest86, MemTest86+, MiniTool Partition Wizard, Parted Magic, veket, Sabayon, Scientific, alpine, ClearOS, CloneZilla, Berry Linux, Trisquel, Ataraxia Linux, Minimal Linux Live, BackBox Linux, Emmabuntüs, ESET SysRescue Live,Nova Linux, AV Linux, RoboLinux, NuTyX, IPFire, SELKS, ZStack, Enso Linux, Security Onion, Network Security Toolkit, Absolute Linux, TinyCore, Springdale Linux, Frost Linux, Shark Linux, LinuxFX, Snail Linux, Astra Linux, Namib Linux, Resilient Linux, Virage Linux, Blackweb Security OS, R-DriveImage, O-O.DiskImage, Macrium, ToOpPy LINUX, GNU Guix, YunoHost, foxclone, siduction, Adelie Linux, Elive, Pardus, CDlinux, AcademiX, Austrumi, Zenwalk, Anarchy, DuZeru, BigLinux, OpenMediaVault, Ubuntu DP, Exe GNU/Linux, 3CX Phone System, KANOTIX, Grml, Karoshi, PrimTux, ArchStrike, CAELinux, Cucumber, Fatdog, ForLEx, Hanthana, Kwort, MiniNo, Redcore, Runtu, Asianux, Clu Linux Live, Uruk, OB2D, BlueOnyx, Finnix, HamoniKR, Parabola, LinHES, LinuxConsole, BEE free, Untangle, Pearl, Thinstation, TurnKey, tuxtrans, Neptune, HefftorLinux, GeckoLinux, Mabox Linux, Zentyal, Maui, Reborn OS, SereneLinux , SkyWave Linux, Kaisen Linux, Regata OS, TROM-Jaro, DRBL Linux, Chalet OS, Chapeau, Desa OS, BlankOn, OpenMamba, Frugalware, Kibojoe Linux, Revenge OS, Tsurugi Linux, Drauger OS, Hash Linux, gNewSense, Ikki Boot, SteamOS, Hyperbola, VyOS, EasyNAS, SuperGamer, Live Raizo, Swift Linux, RebeccaBlackOS, Daphile, CRUX, Univention, Ufficio Zero, Rescuezilla, Phoenix OS, Garuda Linux, Mll, NethServer, OSGeoLive, Easy OS, Volumio, FreedomBox, paldo, UBOS, Recalbox, batocera, Lakka, LibreELEC, Pardus Topluluk, Pinguy, KolibriOS, Elastix, Arya, Omoikane, Omarine, Endian Firewall, Hamara, Rocks Cluster, MorpheusArch, Redo, Slackel, SME Server, APODIO, Smoothwall, Dragora, Linspire, Secure-K OS, Peach OSI, Photon, Plamo, SuperX, Bicom, Ploplinux, HP SPP, LliureX, Freespire, DietPi, BOSS, Webconverger, Lunar, TENS, Source Mage, RancherOS, T2, Vine, Pisi, blackPanther, mAid, Acronis, Active.Boot, AOMEI, Boot.Repair, CAINE, DaRT, EasyUEFI, R-Drive, PrimeOS, Avira Rescue System, bitdefender, Checkra1n Linux, Lenovo Diagnostics, Clover, Bliss-OS, Lenovo BIOS Update, Arcabit Rescue Disk, MiyoLinux, TeLOS, Kerio Control, RED OS, OpenWrt, MocaccinoOS, EasyStartup, Pyabr, Refracta, Eset SysRescue, Linpack Xtreme, Archcraft, NHVBOOT, pearOS, SeaTools, Easy Recovery Essentional, iKuai, StorageCraft SCRE, ZFSBootMenu, TROMjaro, BunsenLabs, Todo en Uno, ChallengerOS, Nobara, Holo, CachyOS, ......
Debian, Ubuntu, CentOS(6/7/8/9), RHEL(6/7/8/9), Deepin, Fedora, Rocky Linux, AlmaLinux, EuroLinux(6/7/8/9), openEuler, OpenAnolis, SLES, openSUSE, MX Linux, Manjaro, Linux Mint, Endless OS, Elementary OS, Solus, Linx, Zorin, antiX, PClinuxOS, Arch, ArcoLinux, ArchLabs, BlackArch, Obarun, Artix Linux, Puppy Linux, Tails, Slax, Kali, Mageia, Slackware, Q4OS, Archman, Gentoo, Pentoo, NixOS, Kylin, openKylin, Ubuntu Kylin, KylinSec, Lubuntu, Xubuntu, Kubuntu, Ubuntu MATE, Ubuntu Budgie, Ubuntu Studio, Bluestar, OpenMandriva, ExTiX, Netrunner, ALT Linux, Nitrux, Peppermint, KDE neon, Linux Lite, Parrot OS, Qubes, Pop OS, ROSA, Void Linux, Star Linux, EndeavourOS, MakuluLinux, Voyager, Feren, ArchBang, LXLE, Knoppix, Calculate Linux, Clear Linux, Pure OS, Oracle Linux, Trident, Septor, Porteus, Devuan, GoboLinux, 4MLinux, Simplicity Linux, Zeroshell, Android-x86, netboot.xyz, Slitaz, SuperGrub2Disk, Proxmox VE, Kaspersky Rescue, SystemRescueCD, MemTest86, MemTest86+, MiniTool Partition Wizard, Parted Magic, veket, Sabayon, Scientific, alpine, ClearOS, CloneZilla, Berry Linux, Trisquel, Ataraxia Linux, Minimal Linux Live, BackBox Linux, Emmabuntüs, ESET SysRescue Live,Nova Linux, AV Linux, RoboLinux, NuTyX, IPFire, SELKS, ZStack, Enso Linux, Security Onion, Network Security Toolkit, Absolute Linux, TinyCore, Springdale Linux, Frost Linux, Shark Linux, LinuxFX, Snail Linux, Astra Linux, Namib Linux, Resilient Linux, Virage Linux, Blackweb Security OS, R-DriveImage, O-O.DiskImage, Macrium, ToOpPy LINUX, GNU Guix, YunoHost, foxclone, siduction, Adelie Linux, Elive, Pardus, CDlinux, AcademiX, Austrumi, Zenwalk, Anarchy, DuZeru, BigLinux, OpenMediaVault, Ubuntu DP, Exe GNU/Linux, 3CX Phone System, KANOTIX, Grml, Karoshi, PrimTux, ArchStrike, CAELinux, Cucumber, Fatdog, ForLEx, Hanthana, Kwort, MiniNo, Redcore, Runtu, Asianux, Clu Linux Live, Uruk, OB2D, BlueOnyx, Finnix, HamoniKR, Parabola, LinHES, LinuxConsole, BEE free, Untangle, Pearl, Thinstation, TurnKey, tuxtrans, Neptune, HefftorLinux, GeckoLinux, Mabox Linux, Zentyal, Maui, Reborn OS, SereneLinux , SkyWave Linux, Kaisen Linux, Regata OS, TROM-Jaro, DRBL Linux, Chalet OS, Chapeau, Desa OS, BlankOn, OpenMamba, Frugalware, Kibojoe Linux, Revenge OS, Tsurugi Linux, Drauger OS, Hash Linux, gNewSense, Ikki Boot, SteamOS, Hyperbola, VyOS, EasyNAS, SuperGamer, Live Raizo, Swift Linux, RebeccaBlackOS, Daphile, CRUX, Univention, Ufficio Zero, Rescuezilla, Phoenix OS, Garuda Linux, Mll, NethServer, OSGeoLive, Easy OS, Volumio, FreedomBox, paldo, UBOS, Recalbox, batocera, Lakka, LibreELEC, Pardus Topluluk, Pinguy, KolibriOS, Elastix, Arya, Omoikane, Omarine, Endian Firewall, Hamara, Rocks Cluster, MorpheusArch, Redo, Slackel, SME Server, APODIO, Smoothwall, Dragora, Linspire, Secure-K OS, Peach OSI, Photon, Plamo, SuperX, Bicom, Ploplinux, HP SPP, LliureX, Freespire, DietPi, BOSS, Webconverger, Lunar, TENS, Source Mage, RancherOS, T2, Vine, Pisi, blackPanther, mAid, Acronis, Active.Boot, AOMEI, Boot.Repair, CAINE, DaRT, EasyUEFI, R-Drive, PrimeOS, Avira Rescue System, bitdefender, Checkra1n Linux, Lenovo Diagnostics, Clover, Bliss-OS, Lenovo BIOS Update, Arcabit Rescue Disk, MiyoLinux, TeLOS, Kerio Control, RED OS, OpenWrt, MocaccinoOS, EasyStartup, Pyabr, Refracta, Eset SysRescue, Linpack Xtreme, Archcraft, NHVBOOT, pearOS, SeaTools, Easy Recovery Essentional, iKuai, StorageCraft SCRE, ZFSBootMenu, TROMjaro, BunsenLabs, Todo en Uno, ChallengerOS, Nobara, Holo, CachyOS, Peux OS, ......
**Unix**
DragonFly FreeBSD pfSense GhostBSD FreeNAS TrueNAS XigmaNAS FuryBSD OPNsense HardenedBSD MidnightBSD ClonOS EmergencyBootKit
@@ -40,7 +40,7 @@ VMware ESXi, Citrix XenServer, Xen XCP-ng
# Subscription Service
Ventoy is an open source software under GPLv3 license.
But Ventoy project need to pay for the server hosting, domain name, bandwidth, many USB sticks for test, large capacity of HDD (for downloading ISO files) and so on.
But the Ventoy project needs to pay for the server hosting, domain name, bandwidth, many USB sticks for testing, large capacity of HDD (for downloading ISO files) and so on.
For the better and sustainable development of Ventoy, I provide the [【subscription service】](https://www.ventoy.net/en/doc_subscription.html).

View File

@@ -0,0 +1,526 @@
/******************************************************************************
* AlertSuppress.c
*
* Copyright (c) 2022, longpanda <admin@ventoy.net>
* Copyright (c) 2011-2022 Pete Batard <pete@akeo.ie>
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, see <http://www.gnu.org/licenses/>.
*
*/
#include <Windows.h>
#include <winternl.h>
#include <commctrl.h>
#include <initguid.h>
#include <vds.h>
#include "Ventoy2Disk.h"
#define sfree(p) do {if (p != NULL) {free((void*)(p)); p = NULL;}} while(0)
#define wconvert(p) wchar_t* w ## p = utf8_to_wchar(p)
#define walloc(p, size) wchar_t* w ## p = (p == NULL)?NULL:(wchar_t*)calloc(size, sizeof(wchar_t))
#define wfree(p) sfree(w ## p)
#define static_strcpy(dst, src) strcpy_s(dst, sizeof(dst), src)
#define static_strcat(dst, src) strcat_s(dst, sizeof(dst), src)
#define wchar_to_utf8_no_alloc(wsrc, dest, dest_size) \
WideCharToMultiByte(CP_UTF8, 0, wsrc, -1, dest, dest_size, NULL, NULL)
#define utf8_to_wchar_no_alloc(src, wdest, wdest_size) \
MultiByteToWideChar(CP_UTF8, 0, src, -1, wdest, wdest_size)
/*
* Converts an UTF8 string to UTF-16 (allocate returned string)
* Returns NULL on error
*/
static __inline wchar_t* utf8_to_wchar(const char* str)
{
int size = 0;
wchar_t* wstr = NULL;
if (str == NULL)
return NULL;
// Convert the empty string too
if (str[0] == 0)
return (wchar_t*)calloc(1, sizeof(wchar_t));
// Find out the size we need to allocate for our converted string
size = MultiByteToWideChar(CP_UTF8, 0, str, -1, NULL, 0);
if (size <= 1) // An empty string would be size 1
return NULL;
if ((wstr = (wchar_t*)calloc(size, sizeof(wchar_t))) == NULL)
return NULL;
if (utf8_to_wchar_no_alloc(str, wstr, size) != size) {
sfree(wstr);
return NULL;
}
return wstr;
}
static char g_FormatDiskTitle[256];
static char g_FormatDiskButton[256];
static char g_LocNotAvaliableTitle[256]; //Location is not available
static char g_InsertDiskTitle[256]; // Insert disk
static char system_dir[MAX_PATH], sysnative_dir[MAX_PATH];
static HWINEVENTHOOK ap_weh = NULL;
static __inline UINT GetSystemDirectoryU(char* lpBuffer, UINT uSize)
{
UINT ret = 0, err = ERROR_INVALID_DATA;
// coverity[returned_null]
walloc(lpBuffer, uSize);
ret = GetSystemDirectoryW(wlpBuffer, uSize);
err = GetLastError();
if ((ret != 0) && ((ret = wchar_to_utf8_no_alloc(wlpBuffer, lpBuffer, uSize)) == 0)) {
err = GetLastError();
}
wfree(lpBuffer);
SetLastError(err);
return ret;
}
static char* ToLocaleName(DWORD lang_id)
{
static char mui_str[LOCALE_NAME_MAX_LENGTH];
wchar_t wmui_str[LOCALE_NAME_MAX_LENGTH];
if (LCIDToLocaleName(lang_id, wmui_str, LOCALE_NAME_MAX_LENGTH, 0) > 0) {
wchar_to_utf8_no_alloc(wmui_str, mui_str, LOCALE_NAME_MAX_LENGTH);
}
else {
static_strcpy(mui_str, "en-US");
}
return mui_str;
}
static __inline int LoadStringU(HINSTANCE hInstance, UINT uID, LPSTR lpBuffer, int nBufferMax)
{
int ret;
DWORD err = ERROR_INVALID_DATA;
if (nBufferMax == 0) {
// read-only pointer to resource mode is not supported
SetLastError(ERROR_INVALID_PARAMETER);
return 0;
}
// coverity[returned_null]
walloc(lpBuffer, nBufferMax);
ret = LoadStringW(hInstance, uID, wlpBuffer, nBufferMax);
err = GetLastError();
if ((ret > 0) && ((ret = wchar_to_utf8_no_alloc(wlpBuffer, lpBuffer, nBufferMax)) == 0)) {
err = GetLastError();
}
wfree(lpBuffer);
SetLastError(err);
return ret;
}
/*
* typedefs for the function prototypes. Use the something like:
* PF_DECL(FormatEx);
* which translates to:
* FormatEx_t pfFormatEx = NULL;
* in your code, to declare the entrypoint and then use:
* PF_INIT(FormatEx, Fmifs);
* which translates to:
* pfFormatEx = (FormatEx_t) GetProcAddress(GetDLLHandle("fmifs"), "FormatEx");
* to make it accessible.
*/
#define MAX_LIBRARY_HANDLES 64
extern HMODULE OpenedLibrariesHandle[MAX_LIBRARY_HANDLES];
extern UINT16 OpenedLibrariesHandleSize;
#define OPENED_LIBRARIES_VARS HMODULE OpenedLibrariesHandle[MAX_LIBRARY_HANDLES]; uint16_t OpenedLibrariesHandleSize = 0
#define CLOSE_OPENED_LIBRARIES while(OpenedLibrariesHandleSize > 0) FreeLibrary(OpenedLibrariesHandle[--OpenedLibrariesHandleSize])
static __inline HMODULE GetLibraryHandle(char* szLibraryName) {
HMODULE h = NULL;
wchar_t* wszLibraryName = NULL;
int size;
if (szLibraryName == NULL || szLibraryName[0] == 0)
goto out;
size = MultiByteToWideChar(CP_UTF8, 0, szLibraryName, -1, NULL, 0);
if ((size <= 1) || ((wszLibraryName = (wchar_t*)calloc(size, sizeof(wchar_t))) == NULL) ||
(MultiByteToWideChar(CP_UTF8, 0, szLibraryName, -1, wszLibraryName, size) != size))
goto out;
// If the library is already opened, just return a handle (that doesn't need to be freed)
if ((h = GetModuleHandleW(wszLibraryName)) != NULL)
goto out;
// Sanity check
if (OpenedLibrariesHandleSize >= MAX_LIBRARY_HANDLES) {
Log("Error: MAX_LIBRARY_HANDLES is too small");
goto out;
}
h = LoadLibraryExW(wszLibraryName, NULL, LOAD_LIBRARY_SEARCH_SYSTEM32);
// Some Windows 7 platforms (most likely the ones missing KB2533623 per the
// official LoadLibraryEx doc) can return ERROR_INVALID_PARAMETER when using
// the Ex() version. If that's the case, fallback to using LoadLibraryW().
if ((h == NULL) && (SCODE_CODE(GetLastError()) == ERROR_INVALID_PARAMETER))
h = LoadLibraryW(wszLibraryName);
if (h != NULL)
OpenedLibrariesHandle[OpenedLibrariesHandleSize++] = h;
else
Log("Unable to load '%S.dll': %u", wszLibraryName, LASTERR);
out:
free(wszLibraryName);
return h;
}
#define PF_TYPE(api, ret, proc, args) typedef ret (api *proc##_t)args
#define PF_DECL(proc) static proc##_t pf##proc = NULL
#define PF_TYPE_DECL(api, ret, proc, args) PF_TYPE(api, ret, proc, args); PF_DECL(proc)
#define PF_INIT(proc, name) if (pf##proc == NULL) pf##proc = \
(proc##_t) GetProcAddress(GetLibraryHandle(#name), #proc)
#define PF_INIT_OR_OUT(proc, name) do {PF_INIT(proc, name); \
if (pf##proc == NULL) {Log("Unable to locate %s() in '%s.dll': %u", \
#proc, #name, LASTERR); goto out;} } while(0)
#define PF_INIT_OR_SET_STATUS(proc, name) do {PF_INIT(proc, name); \
if ((pf##proc == NULL) && (NT_SUCCESS(status))) status = STATUS_NOT_IMPLEMENTED; } while(0)
static BOOL is_x64(void)
{
BOOL ret = FALSE;
PF_TYPE_DECL(WINAPI, BOOL, IsWow64Process, (HANDLE, PBOOL));
// Detect if we're running a 32 or 64 bit system
if (sizeof(uintptr_t) < 8) {
PF_INIT(IsWow64Process, Kernel32);
if (pfIsWow64Process != NULL) {
(*pfIsWow64Process)(GetCurrentProcess(), &ret);
}
}
else {
ret = TRUE;
}
return ret;
}
static __inline UINT GetSystemWindowsDirectoryU(char* lpBuffer, UINT uSize)
{
UINT ret = 0, err = ERROR_INVALID_DATA;
// coverity[returned_null]
walloc(lpBuffer, uSize);
ret = GetSystemWindowsDirectoryW(wlpBuffer, uSize);
err = GetLastError();
if ((ret != 0) && ((ret = wchar_to_utf8_no_alloc(wlpBuffer, lpBuffer, uSize)) == 0)) {
err = GetLastError();
}
wfree(lpBuffer);
SetLastError(err);
return ret;
}
static __inline HMODULE LoadLibraryU(LPCSTR lpFileName)
{
HMODULE ret;
DWORD err = ERROR_INVALID_DATA;
wconvert(lpFileName);
ret = LoadLibraryW(wlpFileName);
err = GetLastError();
wfree(lpFileName);
SetLastError(err);
return ret;
}
#pragma pack(1)
typedef struct {
WORD dlgVer;
WORD signature;
DWORD helpID;
DWORD exStyle;
DWORD style;
WORD cDlgItems;
short x;
short y;
short cx;
short cy;
//sz_Or_Ord menu;
//sz_Or_Ord windowClass;
//WCHAR title[titleLen];
//WORD pointsize;
//WORD weight;
//BYTE italic;
//BYTE charset;
//WCHAR typeface[stringLen];
} DLGTEMPLATEEX;
#pragma pack()
static BOOL LoadDialogCaption(HMODULE hMui, DWORD ID, CHAR* title, DWORD len)
{
BOOL bRet = FALSE;
int WordNum = 0;
HRSRC hDlg = NULL;
DLGTEMPLATEEX* pDlgTempEx = NULL;
HGLOBAL hTemplate = NULL;
WORD* pWordData = NULL;
hDlg = FindResource(hMui, MAKEINTRESOURCE(1024), RT_DIALOG);
if (hDlg)
{
hTemplate = LoadResource(hMui, hDlg);
if (hTemplate)
{
pDlgTempEx = (DLGTEMPLATEEX*)LockResource(hTemplate);
if (pDlgTempEx)
{
if (pDlgTempEx->signature != 0xFFFF)
{
return FALSE;
}
pWordData = (WORD *)(pDlgTempEx + 1);
//skip menu
if (*pWordData == 0x0000)
{
pWordData += 1;
}
else if (*pWordData == 0xFFFF)
{
pWordData += 2;
}
else
{
while (*pWordData++)
{
;
}
}
//skip windowClass
if (*pWordData == 0x0000)
{
pWordData += 1;
}
else if (*pWordData == 0xFFFF)
{
pWordData += 2;
}
else
{
while (*pWordData++)
{
;
}
}
wchar_to_utf8_no_alloc(pWordData, title, len);
bRet = TRUE;
}
}
}
return bRet;
}
BOOL SetAlertPromptMessages(void)
{
HMODULE hMui;
char mui_path[MAX_PATH];
if (GetSystemDirectoryU(system_dir, sizeof(system_dir)) == 0) {
Log("Could not get system directory: %u", LASTERR);
static_strcpy(system_dir, "C:\\Windows\\System32");
}
// Construct Sysnative ourselves as there is no GetSysnativeDirectory() call
// By default (64bit app running on 64 bit OS or 32 bit app running on 32 bit OS)
// Sysnative and System32 are the same
static_strcpy(sysnative_dir, system_dir);
// But if the app is 32 bit and the OS is 64 bit, Sysnative must differ from System32
#if (defined(VTARCH_X86) || defined(VTARCH_ARM))
if (is_x64()) {
if (GetSystemWindowsDirectoryU(sysnative_dir, sizeof(sysnative_dir)) == 0) {
Log("Could not get Windows directory: %u", LASTERR);
static_strcpy(sysnative_dir, "C:\\Windows");
}
static_strcat(sysnative_dir, "\\Sysnative");
}
#endif
Log("system_dir=<%s>", system_dir);
Log("sysnative_dir=<%s>", sysnative_dir);
sprintf_s(mui_path, MAX_PATH, "%s\\%s\\shell32.dll.mui", sysnative_dir, ToLocaleName(GetUserDefaultUILanguage()));
hMui = LoadLibraryU(mui_path);
if (hMui)
{
Log("LoadLibrary shell32.dll.mui SUCCESS");
}
else
{
Log("LoadLibrary shell32.dll.mui FAILED");
return FALSE;
}
// String Table:
// 4097 = "You need to format the disk in drive %c: before you can use it." (dialog text)
// 4125 = "Microsoft Windows" (dialog title)
// 4126 = "Format disk" (button)
if (LoadStringU(hMui, 4125, g_FormatDiskTitle, sizeof(g_FormatDiskTitle)) <= 0) {
static_strcpy(g_FormatDiskTitle, "Microsoft Windows");
Log("Warning: Could not locate localized format prompt title string in '%s': %u", mui_path, LASTERR);
}
if (LoadStringU(hMui, 4126, g_FormatDiskButton, sizeof(g_FormatDiskButton)) <= 0) {
static_strcpy(g_FormatDiskButton, "Format disk");
Log("Warning: Could not locate localized format prompt button string in '%s': %u", mui_path, LASTERR);
}
// 32964 = "Location is not available"
if (LoadStringU(hMui, 32964, g_LocNotAvaliableTitle, sizeof(g_LocNotAvaliableTitle)) <= 0) {
static_strcpy(g_LocNotAvaliableTitle, "Location is not available");
Log("Warning: Could not locate localized format prompt title string in '%s': %u", mui_path, LASTERR);
}
if (!LoadDialogCaption(hMui, 1024, g_InsertDiskTitle, sizeof(g_InsertDiskTitle)))
{
static_strcpy(g_InsertDiskTitle, "Insert disk");
Log("Warning: Could not locate insert disk title string in '%s': %u", mui_path, LASTERR);
}
FreeLibrary(hMui);
return TRUE;
}
static __inline int GetWindowTextU(HWND hWnd, char* lpString, int nMaxCount)
{
int ret = 0;
DWORD err = ERROR_INVALID_DATA;
if (nMaxCount < 0)
return 0;
// Handle the empty string as GetWindowTextW() returns 0 then
if ((lpString != NULL) && (nMaxCount > 0))
lpString[0] = 0;
// coverity[returned_null]
walloc(lpString, nMaxCount);
ret = GetWindowTextW(hWnd, wlpString, nMaxCount);
err = GetLastError();
// coverity[var_deref_model]
if ((ret != 0) && ((ret = wchar_to_utf8_no_alloc(wlpString, lpString, nMaxCount)) == 0)) {
err = GetLastError();
}
wfree(lpString);
lpString[nMaxCount - 1] = 0;
SetLastError(err);
return ret;
}
/*
* The following function calls are used to automatically detect and close the native
* Windows format prompt "You must format the disk in drive X:". To do that, we use
* an event hook that gets triggered whenever a window is placed in the foreground.
* In that hook, we look for a dialog that has style WS_POPUPWINDOW and has the relevant
* title. However, because the title in itself is too generic (the expectation is that
* it will be "Microsoft Windows") we also enumerate all the child controls from that
* prompt, using another callback, until we find one that contains the text we expect
* for the "Format disk" button.
* Oh, and since all of these strings are localized, we must first pick them up from
* the relevant mui's.
*/
static BOOL CALLBACK AlertPromptCallback(HWND hWnd, LPARAM lParam)
{
char str[128];
BOOL* found = (BOOL*)lParam;
if (GetWindowTextU(hWnd, str, sizeof(str)) == 0)
return TRUE;
if (strcmp(str, g_FormatDiskButton) == 0)
*found = TRUE;
return TRUE;
}
static volatile BOOL g_AlertPromptHookEnable = FALSE;
void SetAlertPromptHookEnable(BOOL enable)
{
g_AlertPromptHookEnable = enable;
}
static void CALLBACK AlertPromptHook(HWINEVENTHOOK hWinEventHook, DWORD Event, HWND hWnd, LONG idObject, LONG idChild, DWORD dwEventThread, DWORD dwmsEventTime)
{
char str[128];
BOOL found;
if (Event != EVENT_SYSTEM_FOREGROUND)
{
return;
}
if (!g_AlertPromptHookEnable)
{
return;
}
//GetWindowTextU(hWnd, str, sizeof(str));
//Log("###### EVENT_SYSTEM_FOREGROUND Windows prompt <%s> #######", str);
if (GetWindowLongPtr(hWnd, GWL_STYLE) & WS_POPUPWINDOW) {
str[0] = 0;
GetWindowTextU(hWnd, str, sizeof(str));
if (strcmp(str, g_FormatDiskTitle) == 0)
{
found = FALSE;
EnumChildWindows(hWnd, AlertPromptCallback, (LPARAM)&found);
if (found)
{
SendMessage(hWnd, WM_COMMAND, (WPARAM)IDCANCEL, (LPARAM)0);
Log("###### Detect 'Windows format' prompt, now close it. #######");
}
}
else if (strcmp(str, g_LocNotAvaliableTitle) == 0)
{
SendMessage(hWnd, WM_COMMAND, (WPARAM)IDCANCEL, (LPARAM)0);
Log("###### Detect 'Location is not available' prompt, now close it. #######");
}
else if (strcmp(str, g_InsertDiskTitle) == 0)
{
SendMessage(hWnd, WM_COMMAND, (WPARAM)IDCANCEL, (LPARAM)0);
Log("###### Detect 'Insert disk' prompt, now close it. #######");
}
}
}
BOOL SetAlertPromptHook(void)
{
if (ap_weh != NULL)
return TRUE; // No need to set again if active
ap_weh = SetWinEventHook(EVENT_SYSTEM_FOREGROUND, EVENT_SYSTEM_FOREGROUND, NULL,
AlertPromptHook, 0, 0, WINEVENT_OUTOFCONTEXT | WINEVENT_SKIPOWNPROCESS);
return (ap_weh != NULL);
}
BOOL AlertSuppressInit(void)
{
BOOL bRet;
SetAlertPromptMessages();
bRet = SetAlertPromptHook();
Log("SetAlertPromptHook %s", bRet ? "SUCCESS" : "FAILED");
return TRUE;
}

Some files were not shown because too many files have changed in this diff Show More