chore(i18n): restructure root-level locale keys into namespaces
This commit is contained in:
@@ -73,6 +73,23 @@ interface Props {
|
||||
|
||||
const builtinProxyPolicies = ["DIRECT", "REJECT", "REJECT-DROP", "PASS"];
|
||||
|
||||
const PROXY_STRATEGY_LABEL_KEYS: Record<string, string> = {
|
||||
select: "proxy.strategies.select",
|
||||
"url-test": "proxy.strategies.url-test",
|
||||
fallback: "proxy.strategies.fallback",
|
||||
"load-balance": "proxy.strategies.load-balance",
|
||||
relay: "proxy.strategies.relay",
|
||||
};
|
||||
|
||||
const PROXY_POLICY_LABEL_KEYS: Record<string, string> =
|
||||
builtinProxyPolicies.reduce(
|
||||
(acc, policy) => {
|
||||
acc[policy] = `proxy.policies.${policy}`;
|
||||
return acc;
|
||||
},
|
||||
{} as Record<string, string>,
|
||||
);
|
||||
|
||||
const normalizeDeleteSeq = (input?: unknown): string[] => {
|
||||
if (!Array.isArray(input)) {
|
||||
return [];
|
||||
@@ -121,6 +138,20 @@ export const GroupsEditorViewer = (props: Props) => {
|
||||
const { mergeUid, proxiesUid, profileUid, property, open, onClose, onSave } =
|
||||
props;
|
||||
const { t } = useTranslation();
|
||||
const translateStrategy = useCallback(
|
||||
(value: string) =>
|
||||
PROXY_STRATEGY_LABEL_KEYS[value]
|
||||
? t(PROXY_STRATEGY_LABEL_KEYS[value])
|
||||
: value,
|
||||
[t],
|
||||
);
|
||||
const translatePolicy = useCallback(
|
||||
(value: string) =>
|
||||
PROXY_POLICY_LABEL_KEYS[value]
|
||||
? t(PROXY_POLICY_LABEL_KEYS[value])
|
||||
: value,
|
||||
[t],
|
||||
);
|
||||
const themeMode = useThemeMode();
|
||||
const [prevData, setPrevData] = useState("");
|
||||
const [currData, setCurrData] = useState("");
|
||||
@@ -452,9 +483,10 @@ export const GroupsEditorViewer = (props: Props) => {
|
||||
"relay",
|
||||
]}
|
||||
value={field.value}
|
||||
getOptionLabel={translateStrategy}
|
||||
renderOption={(props, option) => (
|
||||
<li {...props} title={t(option)}>
|
||||
{option}
|
||||
<li {...props} title={translateStrategy(option)}>
|
||||
{translateStrategy(option)}
|
||||
</li>
|
||||
)}
|
||||
onChange={(_, value) => value && field.onChange(value)}
|
||||
@@ -518,10 +550,11 @@ export const GroupsEditorViewer = (props: Props) => {
|
||||
onChange={(_, value) => value && field.onChange(value)}
|
||||
renderInput={(params) => <TextField {...params} />}
|
||||
renderOption={(props, option) => (
|
||||
<li {...props} title={t(option)}>
|
||||
{option}
|
||||
<li {...props} title={translatePolicy(option)}>
|
||||
{translatePolicy(option)}
|
||||
</li>
|
||||
)}
|
||||
getOptionLabel={translatePolicy}
|
||||
/>
|
||||
</Item>
|
||||
)}
|
||||
|
||||
@@ -240,8 +240,21 @@ const rules: {
|
||||
},
|
||||
];
|
||||
|
||||
const RULE_TYPE_LABEL_KEYS: Record<string, string> = Object.fromEntries(
|
||||
rules.map((rule) => [rule.name, `ruleEditor.ruleTypes.${rule.name}`]),
|
||||
);
|
||||
|
||||
const builtinProxyPolicies = ["DIRECT", "REJECT", "REJECT-DROP", "PASS"];
|
||||
|
||||
const PROXY_POLICY_LABEL_KEYS: Record<string, string> =
|
||||
builtinProxyPolicies.reduce(
|
||||
(acc, policy) => {
|
||||
acc[policy] = `proxy.policies.${policy}`;
|
||||
return acc;
|
||||
},
|
||||
{} as Record<string, string>,
|
||||
);
|
||||
|
||||
export const RulesEditorViewer = (props: Props) => {
|
||||
const { groupsUid, mergeUid, profileUid, property, open, onClose, onSave } =
|
||||
props;
|
||||
@@ -527,15 +540,19 @@ export const RulesEditorViewer = (props: Props) => {
|
||||
renderInput={(params) => <TextField {...params} />}
|
||||
options={rules}
|
||||
value={ruleType}
|
||||
getOptionLabel={(option) => option.name}
|
||||
renderOption={(props, option) => (
|
||||
<li
|
||||
{...props}
|
||||
title={t(`ruleEditor.ruleTypes.${option.name}`)}
|
||||
>
|
||||
{option.name}
|
||||
</li>
|
||||
)}
|
||||
getOptionLabel={(option) =>
|
||||
t(RULE_TYPE_LABEL_KEYS[option.name] ?? option.name)
|
||||
}
|
||||
renderOption={(props, option) => {
|
||||
const label = t(
|
||||
RULE_TYPE_LABEL_KEYS[option.name] ?? option.name,
|
||||
);
|
||||
return (
|
||||
<li {...props} title={label}>
|
||||
{label}
|
||||
</li>
|
||||
);
|
||||
}}
|
||||
onChange={(_, value) => value && setRuleType(value)}
|
||||
/>
|
||||
</Item>
|
||||
@@ -588,11 +605,17 @@ export const RulesEditorViewer = (props: Props) => {
|
||||
renderInput={(params) => <TextField {...params} />}
|
||||
options={proxyPolicyList}
|
||||
value={proxyPolicy}
|
||||
renderOption={(props, option) => (
|
||||
<li {...props} title={t(option)}>
|
||||
{option}
|
||||
</li>
|
||||
)}
|
||||
getOptionLabel={(option) =>
|
||||
t(PROXY_POLICY_LABEL_KEYS[option] ?? option)
|
||||
}
|
||||
renderOption={(props, option) => {
|
||||
const label = t(PROXY_POLICY_LABEL_KEYS[option] ?? option);
|
||||
return (
|
||||
<li {...props} title={label}>
|
||||
{label}
|
||||
</li>
|
||||
);
|
||||
}}
|
||||
onChange={(_, value) => value && setProxyPolicy(value)}
|
||||
/>
|
||||
</Item>
|
||||
|
||||
@@ -24,8 +24,16 @@ import { changeClashCore, restartCore } from "@/services/cmds";
|
||||
import { showNotice } from "@/services/noticeService";
|
||||
|
||||
const VALID_CORE = [
|
||||
{ name: "Mihomo", core: "verge-mihomo", chip: "Release Version" },
|
||||
{ name: "Mihomo Alpha", core: "verge-mihomo-alpha", chip: "Alpha Version" },
|
||||
{
|
||||
name: "Mihomo",
|
||||
core: "verge-mihomo",
|
||||
chipKey: "system.labels.releaseVersion",
|
||||
},
|
||||
{
|
||||
name: "Mihomo Alpha",
|
||||
core: "verge-mihomo-alpha",
|
||||
chipKey: "system.labels.alphaVersion",
|
||||
},
|
||||
];
|
||||
|
||||
export function ClashCoreViewer({ ref }: { ref?: Ref<DialogRef> }) {
|
||||
@@ -157,7 +165,7 @@ export function ClashCoreViewer({ ref }: { ref?: Ref<DialogRef> }) {
|
||||
{changingCore === each.core ? (
|
||||
<CircularProgress size={20} sx={{ mr: 1 }} />
|
||||
) : (
|
||||
<Chip label={t(`${each.chip}`)} size="small" />
|
||||
<Chip label={t(each.chipKey)} size="small" />
|
||||
)}
|
||||
</ListItemButton>
|
||||
))}
|
||||
|
||||
@@ -75,10 +75,10 @@ export function ControllerViewer({ ref }: { ref?: Ref<DialogRef> }) {
|
||||
await patchInfo({ "external-controller": "" });
|
||||
}
|
||||
|
||||
showNotice.success("Configuration saved successfully");
|
||||
showNotice.success("settings.common.notifications.saveSuccess");
|
||||
setOpen(false);
|
||||
} catch (err) {
|
||||
showNotice.error("Failed to save configuration", err, 4000);
|
||||
showNotice.error("settings.common.notifications.saveFailed", err, 4000);
|
||||
} finally {
|
||||
setIsSaving(false);
|
||||
}
|
||||
|
||||
@@ -140,10 +140,10 @@ export const HeaderConfiguration = forwardRef<ClashHeaderConfigingRef>(
|
||||
manual: true,
|
||||
onSuccess: () => {
|
||||
setOpen(false);
|
||||
showNotice.success("Configuration saved successfully");
|
||||
showNotice.success("settings.common.notifications.saveSuccess");
|
||||
},
|
||||
onError: () => {
|
||||
showNotice.error("Failed to save configuration");
|
||||
showNotice.error("settings.common.notifications.saveFailed");
|
||||
},
|
||||
},
|
||||
);
|
||||
|
||||
@@ -65,13 +65,11 @@ export function useSystemState() {
|
||||
disablingTunMode = true;
|
||||
patchVerge({ enable_tun_mode: false })
|
||||
.then(() => {
|
||||
showNotice.info(
|
||||
"TUN Mode automatically disabled due to service unavailable",
|
||||
);
|
||||
showNotice.info("system.notifications.tunMode.autoDisabled");
|
||||
})
|
||||
.catch((err) => {
|
||||
console.error("[useVerge] 自动关闭TUN模式失败:", err);
|
||||
showNotice.error("Failed to disable TUN Mode automatically");
|
||||
showNotice.error("system.notifications.tunMode.autoDisableFailed");
|
||||
})
|
||||
.finally(() => {
|
||||
const tid = setTimeout(() => {
|
||||
|
||||
@@ -7,14 +7,14 @@ import { useSystemState } from "./use-system-state";
|
||||
|
||||
const executeWithErrorHandling = async (
|
||||
operation: () => Promise<void>,
|
||||
loadingMessage: string,
|
||||
successMessage?: string,
|
||||
loadingKey: string,
|
||||
successKey?: string,
|
||||
) => {
|
||||
try {
|
||||
showNotice.info(loadingMessage);
|
||||
showNotice.info(loadingKey);
|
||||
await operation();
|
||||
if (successMessage) {
|
||||
showNotice.success(successMessage);
|
||||
if (successKey) {
|
||||
showNotice.success(successKey);
|
||||
}
|
||||
} catch (err) {
|
||||
showNotice.error(err);
|
||||
@@ -28,14 +28,14 @@ export const useServiceInstaller = () => {
|
||||
const installServiceAndRestartCore = useCallback(async () => {
|
||||
await executeWithErrorHandling(
|
||||
() => installService(),
|
||||
"Installing Service...",
|
||||
"Service Installed Successfully",
|
||||
"service.status.installing",
|
||||
"service.notifications.installSuccess",
|
||||
);
|
||||
|
||||
await executeWithErrorHandling(
|
||||
() => restartCore(),
|
||||
"Restarting Core...",
|
||||
"Clash Core Restarted",
|
||||
"core.status.restarting",
|
||||
"settings.clash.notifications.restartSuccess",
|
||||
);
|
||||
|
||||
await mutateSystemState();
|
||||
|
||||
@@ -7,14 +7,14 @@ import { useSystemState } from "./use-system-state";
|
||||
|
||||
const executeWithErrorHandling = async (
|
||||
operation: () => Promise<void>,
|
||||
loadingMessage: string,
|
||||
successMessage?: string,
|
||||
loadingKey: string,
|
||||
successKey?: string,
|
||||
) => {
|
||||
try {
|
||||
showNotice.info(loadingMessage);
|
||||
showNotice.info(loadingKey);
|
||||
await operation();
|
||||
if (successMessage) {
|
||||
showNotice.success(successMessage);
|
||||
if (successKey) {
|
||||
showNotice.success(successKey);
|
||||
}
|
||||
} catch (err) {
|
||||
showNotice.error(err);
|
||||
@@ -27,18 +27,18 @@ export const useServiceUninstaller = () => {
|
||||
|
||||
const uninstallServiceAndRestartCore = useCallback(async () => {
|
||||
try {
|
||||
await executeWithErrorHandling(() => stopCore(), "Stopping Core...");
|
||||
await executeWithErrorHandling(() => stopCore(), "core.status.stopping");
|
||||
await executeWithErrorHandling(
|
||||
() => uninstallService(),
|
||||
"Uninstalling Service...",
|
||||
"Service Uninstalled Successfully",
|
||||
"service.status.uninstalling",
|
||||
"service.notifications.uninstallSuccess",
|
||||
);
|
||||
} catch (ignore) {
|
||||
} finally {
|
||||
await executeWithErrorHandling(
|
||||
() => restartCore(),
|
||||
"Restarting Core...",
|
||||
"Clash Core Restarted",
|
||||
"core.status.restarting",
|
||||
"settings.clash.notifications.restartSuccess",
|
||||
);
|
||||
await mutateSystemState();
|
||||
}
|
||||
|
||||
@@ -1,139 +1,4 @@
|
||||
{
|
||||
"Proxies": "الوكلاء",
|
||||
"rule": "قاعدة",
|
||||
"global": "عالمي",
|
||||
"direct": "مباشر",
|
||||
"script": "سكريبت",
|
||||
"DOMAIN": "مطابقة اسم المجال الكامل",
|
||||
"DOMAIN-SUFFIX": "مطابقة لاحقة المجال",
|
||||
"DOMAIN-KEYWORD": "مطابقة كلمة مفتاحية في المجال",
|
||||
"DOMAIN-REGEX": "مطابقة المجال باستخدام التعبيرات العادية",
|
||||
"GEOSITE": "مطابقة المجالات ضمن Geosite",
|
||||
"GEOIP": "مطابقة رمز البلد لعنوان IP",
|
||||
"SRC-GEOIP": "مطابقة رمز البلد لعنوان IP المصدر",
|
||||
"IP-ASN": "مطابقة ASN لعنوان IP",
|
||||
"SRC-IP-ASN": "مطابقة ASN لعنوان IP المصدر",
|
||||
"IP-CIDR": "مطابقة نطاق عنوان IP",
|
||||
"IP-CIDR6": "مطابقة نطاق عناوين IPv6",
|
||||
"SRC-IP-CIDR": "مطابقة نطاق عنوان IP المصدر",
|
||||
"IP-SUFFIX": "مطابقة لاحقة عنوان IP",
|
||||
"SRC-IP-SUFFIX": "مطابقة لاحقة عنوان IP المصدر",
|
||||
"SRC-PORT": "مطابقة نطاق المنفذ المصدر",
|
||||
"DST-PORT": "مطابقة نطاق المنفذ الوجهة",
|
||||
"IN-PORT": "مطابقة المنفذ الوارد",
|
||||
"DSCP": "علامة DSCP (لـ tproxy على UDP فقط)",
|
||||
"PROCESS-NAME": "مطابقة اسم العملية (اسم حزمة Android)",
|
||||
"PROCESS-PATH": "مطابقة المسار الكامل للعملية",
|
||||
"PROCESS-NAME-REGEX": "مطابقة اسم العملية باستخدام التعبيرات العادية (اسم حزمة Android)",
|
||||
"PROCESS-PATH-REGEX": "مطابقة المسار الكامل للعملية باستخدام التعبيرات العادية",
|
||||
"NETWORK": "مطابقة بروتوكول النقل (TCP/UDP)",
|
||||
"UID": "مطابقة معرف المستخدم في Linux",
|
||||
"IN-TYPE": "مطابقة نوع الإدخال",
|
||||
"IN-USER": "مطابقة اسم المستخدم للإدخال",
|
||||
"IN-NAME": "مطابقة اسم الإدخال",
|
||||
"SUB-RULE": "قاعدة فرعية",
|
||||
"RULE-SET": "مطابقة مجموعة القواعد",
|
||||
"AND": "منطقي AND",
|
||||
"OR": "منطقي OR",
|
||||
"NOT": "منطقي NOT",
|
||||
"MATCH": "مطابقة جميع الطلبات",
|
||||
"DIRECT": "البيانات تخرج مباشرة",
|
||||
"REJECT": "رفض الطلبات",
|
||||
"REJECT-DROP": "تجاهل الطلبات",
|
||||
"PASS": "تخطي هذه القاعدة عند المطابقة",
|
||||
"select": "اختيار الوكيل يدويًا",
|
||||
"url-test": "اختيار الوكيل بناءً على تأخير اختبار الرابط",
|
||||
"fallback": "التبديل إلى وكيل آخر عند حدوث خطأ",
|
||||
"load-balance": "توزيع التحميل بين الوكلاء",
|
||||
"relay": "التمرير عبر سلسلة الوكلاء المحددة",
|
||||
"Timeout": "مهلة",
|
||||
"Type": "النوع",
|
||||
"Close All Connections": "Close All Connections",
|
||||
"Rule": "قاعدة",
|
||||
"TUN Mode automatically disabled due to service unavailable": "TUN Mode automatically disabled due to service unavailable",
|
||||
"Failed to disable TUN Mode automatically": "Failed to disable TUN Mode automatically",
|
||||
"active": "نشط",
|
||||
"unknown": "غير معروف",
|
||||
"Install": "تثبيت",
|
||||
"Uninstall": "إلغاء التثبيت",
|
||||
"System Proxy": "وكيل النظام",
|
||||
"Release Version": "إصدار مستقر",
|
||||
"Alpha Version": "إصدار ألفا",
|
||||
"theme.light": "سمة فاتحة",
|
||||
"theme.dark": "سمة داكنة",
|
||||
"theme.system": "سمة النظام",
|
||||
"Exit": "خروج",
|
||||
"Profile Imported Successfully": "تم استيراد الملف الشخصي بنجاح",
|
||||
"Stopping Core...": "Stopping Core...",
|
||||
"Restarting Core...": "Restarting Core...",
|
||||
"Installing Service...": "جاري تثبيت الخدمة...",
|
||||
"Uninstalling Service...": "Uninstalling Service...",
|
||||
"Service Installed Successfully": "تم تثبيت الخدمة بنجاح",
|
||||
"Service Uninstalled Successfully": "تم إلغاء تثبيت الخدمة بنجاح",
|
||||
"Import Subscription Successful": "تم استيراد الاشتراك بنجاح",
|
||||
"Profile": "الملف الشخصي",
|
||||
"Dashboard": "لوحة التحكم",
|
||||
"Restart App": "إعادة تشغيل التطبيق",
|
||||
"Restart Clash Core": "إعادة تشغيل نواة Clash",
|
||||
"TUN Mode": "وضع TUN",
|
||||
"Copy Env": "نسخ البيئة",
|
||||
"Conf Dir": "مجلد الإعدادات",
|
||||
"Core Dir": "مجلد النواة",
|
||||
"Logs Dir": "مجلد السجلات",
|
||||
"Open Dir": "فتح المجلد",
|
||||
"More": "المزيد",
|
||||
"LightWeight Mode": "وضع الأداء الخفيف",
|
||||
"Config Validation Failed": "فشل التحقق من تكوين الاشتراك، يرجى فحص ملف التكوين، تم التراجع عن التغييرات، تفاصيل الخطأ:",
|
||||
"Boot Config Validation Failed": "فشل التحقق من التكوين عند الإقلاع، تم استخدام التكوين الافتراضي، يرجى فحص ملف التكوين، تفاصيل الخطأ:",
|
||||
"Core Change Config Validation Failed": "فشل التحقق من التكوين عند تغيير النواة، تم استخدام التكوين الافتراضي، يرجى فحص ملف التكوين، تفاصيل الخطأ:",
|
||||
"Config Validation Process Terminated": "تم إنهاء عملية التحقق",
|
||||
"Script Syntax Error": "خطأ في بناء جملة السكريبت، تم التراجع عن التغييرات",
|
||||
"Script Missing Main": "خطأ في السكريبت، تم التراجع عن التغييرات",
|
||||
"File Not Found": "الملف غير موجود، تم التراجع عن التغييرات",
|
||||
"Script File Error": "خطأ في ملف السكريبت، تم التراجع عن التغييرات",
|
||||
"Core Changed Successfully": "تم تغيير النواة بنجاح",
|
||||
"Failed to Change Core": "فشل تغيير النواة",
|
||||
"YAML Syntax Error": "YAML syntax error, changes reverted",
|
||||
"YAML Read Error": "YAML read error, changes reverted",
|
||||
"YAML Mapping Error": "YAML mapping error, changes reverted",
|
||||
"YAML Key Error": "YAML key error, changes reverted",
|
||||
"YAML Error": "YAML error, changes reverted",
|
||||
"Merge File Syntax Error": "Merge file syntax error, changes reverted",
|
||||
"Merge File Mapping Error": "Merge file mapping error, changes reverted",
|
||||
"Merge File Key Error": "Merge file key error, changes reverted",
|
||||
"Merge File Error": "Merge file error, changes reverted",
|
||||
"Service Administrator Prompt": "يتطلب Clash Verge امتيازات المسؤول لإعادة تثبيت خدمة النظام",
|
||||
"Update with Clash proxy successfully": "Update with Clash proxy successfully",
|
||||
"Update failed even with Clash proxy": "Update failed even with Clash proxy",
|
||||
"Profile Imported with Clash proxy": "Profile Imported with Clash proxy",
|
||||
"Pending": "Pending",
|
||||
"Yes": "Yes",
|
||||
"No": "No",
|
||||
"Failed": "Failed",
|
||||
"Completed": "Completed",
|
||||
"Disallowed ISP": "Disallowed ISP",
|
||||
"Originals Only": "Originals Only",
|
||||
"No (IP Banned By Disney+)": "No (IP Banned By Disney+)",
|
||||
"Unsupported Country/Region": "Unsupported Country/Region",
|
||||
"Failed (Network Connection)": "Failed (Network Connection)",
|
||||
"DashboardToggledTitle": "Dashboard Toggled",
|
||||
"DashboardToggledBody": "Dashboard visibility toggled by hotkey",
|
||||
"ClashModeChangedTitle": "Clash Mode Changed",
|
||||
"ClashModeChangedBody": "Switched to {mode} mode",
|
||||
"SystemProxyToggledTitle": "System Proxy Toggled",
|
||||
"SystemProxyToggledBody": "System proxy state toggled by hotkey",
|
||||
"TunModeToggledTitle": "TUN Mode Toggled",
|
||||
"TunModeToggledBody": "TUN mode toggled by hotkey",
|
||||
"LightweightModeEnteredTitle": "Lightweight Mode",
|
||||
"LightweightModeEnteredBody": "Entered lightweight mode by hotkey",
|
||||
"AppQuitTitle": "APP Quit",
|
||||
"AppQuitBody": "APP quit by hotkey",
|
||||
"AppHiddenTitle": "APP Hidden",
|
||||
"AppHiddenBody": "APP window hidden by hotkey",
|
||||
"Configuration saved successfully": "Configuration saved successfully",
|
||||
"Failed to save configuration": "Failed to save configuration",
|
||||
"Open App Log": "Open App Log",
|
||||
"Open Core Log": "Open Core Log",
|
||||
"common": {
|
||||
"editorModes": {
|
||||
"visualization": "تصور",
|
||||
@@ -856,7 +721,9 @@
|
||||
},
|
||||
"common": {
|
||||
"notifications": {
|
||||
"copySuccess": "تم النسخ بنجاح"
|
||||
"copySuccess": "تم النسخ بنجاح",
|
||||
"saveSuccess": "Configuration saved successfully",
|
||||
"saveFailed": "Failed to save configuration"
|
||||
}
|
||||
},
|
||||
"misc": {
|
||||
@@ -1122,6 +989,18 @@
|
||||
"testAll": "اختبار الكل",
|
||||
"new": "جديد"
|
||||
}
|
||||
},
|
||||
"statuses": {
|
||||
"pending": "Pending",
|
||||
"yes": "Yes",
|
||||
"no": "No",
|
||||
"failed": "Failed",
|
||||
"completed": "Completed",
|
||||
"disallowedIsp": "Disallowed ISP",
|
||||
"originalsOnly": "Originals Only",
|
||||
"noDisney": "No (IP Banned By Disney+)",
|
||||
"unsupportedRegion": "Unsupported Country/Region",
|
||||
"failedNetwork": "Failed (Network Connection)"
|
||||
}
|
||||
},
|
||||
"proxies": {
|
||||
@@ -1237,6 +1116,11 @@
|
||||
"forceRefreshCompleted": "Force refresh completed",
|
||||
"emergencyRefreshFailed": "Emergency refresh failed: {{message}}"
|
||||
}
|
||||
},
|
||||
"notifications": {
|
||||
"importSuccess": "تم استيراد الملف الشخصي بنجاح",
|
||||
"importSubscriptionSuccess": "تم استيراد الاشتراك بنجاح",
|
||||
"importWithClashProxy": "Profile Imported with Clash proxy"
|
||||
}
|
||||
},
|
||||
"connections": {
|
||||
@@ -1292,5 +1176,79 @@
|
||||
"memoryUsage": "استهلاك الذاكرة"
|
||||
}
|
||||
}
|
||||
},
|
||||
"proxy": {
|
||||
"strategies": {
|
||||
"select": "اختيار الوكيل يدويًا",
|
||||
"url-test": "اختيار الوكيل بناءً على تأخير اختبار الرابط",
|
||||
"fallback": "التبديل إلى وكيل آخر عند حدوث خطأ",
|
||||
"load-balance": "توزيع التحميل بين الوكلاء",
|
||||
"relay": "التمرير عبر سلسلة الوكلاء المحددة"
|
||||
}
|
||||
},
|
||||
"system": {
|
||||
"notifications": {
|
||||
"tunMode": {
|
||||
"autoDisabled": "TUN Mode automatically disabled due to service unavailable",
|
||||
"autoDisableFailed": "Failed to disable TUN Mode automatically"
|
||||
}
|
||||
},
|
||||
"labels": {
|
||||
"releaseVersion": "إصدار مستقر",
|
||||
"alphaVersion": "إصدار ألفا"
|
||||
}
|
||||
},
|
||||
"core": {
|
||||
"status": {
|
||||
"stopping": "Stopping Core...",
|
||||
"restarting": "Restarting Core..."
|
||||
},
|
||||
"notifications": {
|
||||
"changeSuccess": "تم تغيير النواة بنجاح",
|
||||
"changeFailed": "فشل تغيير النواة"
|
||||
}
|
||||
},
|
||||
"service": {
|
||||
"status": {
|
||||
"installing": "جاري تثبيت الخدمة...",
|
||||
"uninstalling": "Uninstalling Service..."
|
||||
},
|
||||
"notifications": {
|
||||
"installSuccess": "تم تثبيت الخدمة بنجاح",
|
||||
"uninstallSuccess": "تم إلغاء تثبيت الخدمة بنجاح"
|
||||
}
|
||||
},
|
||||
"validation": {
|
||||
"config": {
|
||||
"failed": "فشل التحقق من تكوين الاشتراك، يرجى فحص ملف التكوين، تم التراجع عن التغييرات، تفاصيل الخطأ:",
|
||||
"bootFailed": "فشل التحقق من التكوين عند الإقلاع، تم استخدام التكوين الافتراضي، يرجى فحص ملف التكوين، تفاصيل الخطأ:",
|
||||
"coreChangeFailed": "فشل التحقق من التكوين عند تغيير النواة، تم استخدام التكوين الافتراضي، يرجى فحص ملف التكوين، تفاصيل الخطأ:",
|
||||
"processTerminated": "تم إنهاء عملية التحقق"
|
||||
},
|
||||
"script": {
|
||||
"syntaxError": "خطأ في بناء جملة السكريبت، تم التراجع عن التغييرات",
|
||||
"missingMain": "خطأ في السكريبت، تم التراجع عن التغييرات",
|
||||
"fileNotFound": "الملف غير موجود، تم التراجع عن التغييرات",
|
||||
"fileError": "خطأ في ملف السكريبت، تم التراجع عن التغييرات"
|
||||
},
|
||||
"yaml": {
|
||||
"syntaxError": "YAML syntax error, changes reverted",
|
||||
"readError": "YAML read error, changes reverted",
|
||||
"mappingError": "YAML mapping error, changes reverted",
|
||||
"keyError": "YAML key error, changes reverted",
|
||||
"generalError": "YAML error, changes reverted"
|
||||
},
|
||||
"merge": {
|
||||
"syntaxError": "Merge file syntax error, changes reverted",
|
||||
"mappingError": "Merge file mapping error, changes reverted",
|
||||
"keyError": "Merge file key error, changes reverted",
|
||||
"generalError": "Merge file error, changes reverted"
|
||||
}
|
||||
},
|
||||
"updates": {
|
||||
"notifications": {
|
||||
"withClashProxySuccess": "Update with Clash proxy successfully",
|
||||
"withClashProxyFailed": "Update failed even with Clash proxy"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,139 +1,4 @@
|
||||
{
|
||||
"Proxies": "Proxies",
|
||||
"rule": "Regel",
|
||||
"global": "Global",
|
||||
"direct": "Direktverbindung",
|
||||
"script": "Skript",
|
||||
"DOMAIN": "Vollständigen Domainnamen übereinstimmen",
|
||||
"DOMAIN-SUFFIX": "Domain-Suffix übereinstimmen",
|
||||
"DOMAIN-KEYWORD": "Domain-Schlüsselwort übereinstimmen",
|
||||
"DOMAIN-REGEX": "Domain-Regulärer Ausdruck übereinstimmen",
|
||||
"GEOSITE": "Domainnamen in Geosite übereinstimmen",
|
||||
"GEOIP": "IP-Ländercode übereinstimmen",
|
||||
"SRC-GEOIP": "Quell-IP-Ländercode übereinstimmen",
|
||||
"IP-ASN": "IP-ASN übereinstimmen",
|
||||
"SRC-IP-ASN": "Quell-IP-ASN übereinstimmen",
|
||||
"IP-CIDR": "IP-Adressbereich übereinstimmen",
|
||||
"IP-CIDR6": "IP-Adressbereich übereinstimmen",
|
||||
"SRC-IP-CIDR": "Quell-IP-Adressbereich übereinstimmen",
|
||||
"IP-SUFFIX": "IP-Suffix-Bereich übereinstimmen",
|
||||
"SRC-IP-SUFFIX": "Quell-IP-Suffix-Bereich übereinstimmen",
|
||||
"SRC-PORT": "Quellportbereich der Anfrage übereinstimmen",
|
||||
"DST-PORT": "Zielportbereich der Anfrage übereinstimmen",
|
||||
"IN-PORT": "Eingangsport übereinstimmen",
|
||||
"DSCP": "DSCP-Markierung (nur für TPROXY UDP-Eingang)",
|
||||
"PROCESS-NAME": "Prozessnamen übereinstimmen (Android-Paketname)",
|
||||
"PROCESS-PATH": "Vollständigen Prozesspfad übereinstimmen",
|
||||
"PROCESS-NAME-REGEX": "Regulärer Ausdruck für vollständigen Prozessnamen übereinstimmen (Android-Paketname)",
|
||||
"PROCESS-PATH-REGEX": "Regulärer Ausdruck für vollständigen Prozesspfad übereinstimmen",
|
||||
"NETWORK": "Übertragungsprotokoll übereinstimmen (TCP/UDP)",
|
||||
"UID": "Linux-USER-ID übereinstimmen",
|
||||
"IN-TYPE": "Eingangstyp übereinstimmen",
|
||||
"IN-USER": "Eingangsbenutzername übereinstimmen",
|
||||
"IN-NAME": "Eingangsname übereinstimmen",
|
||||
"SUB-RULE": "Unterregel",
|
||||
"RULE-SET": "Regelsatz übereinstimmen",
|
||||
"AND": "Logisches UND",
|
||||
"OR": "Logisches ODER",
|
||||
"NOT": "Logisches NICHT",
|
||||
"MATCH": "Alle Anfragen übereinstimmen",
|
||||
"DIRECT": "Direktverbindung",
|
||||
"REJECT": "Anfrage ablehnen",
|
||||
"REJECT-DROP": "Anfrage verwerfen",
|
||||
"PASS": "Diese Regel überspringen",
|
||||
"select": "Proxy manuell auswählen",
|
||||
"url-test": "Proxy basierend auf URL-Latenztest auswählen",
|
||||
"fallback": "Bei Nichtverfügbarkeit zu einem anderen Proxy wechseln",
|
||||
"load-balance": "Proxy basierend auf Lastverteilung zuweisen",
|
||||
"relay": "Basierend auf definiertem Proxy-Kette weiterleiten",
|
||||
"Timeout": "Timeout",
|
||||
"Type": "Typ",
|
||||
"Close All Connections": "Close All Connections",
|
||||
"Rule": "Regel",
|
||||
"TUN Mode automatically disabled due to service unavailable": "TUN Mode automatically disabled due to service unavailable",
|
||||
"Failed to disable TUN Mode automatically": "Failed to disable TUN Mode automatically",
|
||||
"active": "Aktiviert",
|
||||
"unknown": "Unbekannt",
|
||||
"Install": "Installieren",
|
||||
"Uninstall": "Deinstallieren",
|
||||
"System Proxy": "Systemproxy",
|
||||
"Release Version": "Stabile Version",
|
||||
"Alpha Version": "Vorschauversion",
|
||||
"theme.light": "Light",
|
||||
"theme.dark": "Dark",
|
||||
"theme.system": "System",
|
||||
"Exit": "Beenden",
|
||||
"Profile Imported Successfully": "Abonnement erfolgreich importiert",
|
||||
"Stopping Core...": "Kern wird gestoppt...",
|
||||
"Restarting Core...": "Kern wird neu gestartet...",
|
||||
"Installing Service...": "Service wird installiert...",
|
||||
"Uninstalling Service...": "Service wird deinstalliert...",
|
||||
"Service Installed Successfully": "Service erfolgreich installiert",
|
||||
"Service Uninstalled Successfully": "Service erfolgreich deinstalliert",
|
||||
"Import Subscription Successful": "Abonnement erfolgreich importiert",
|
||||
"Profile": "Konfiguration",
|
||||
"Dashboard": "Dashboard",
|
||||
"Restart App": "App neu starten",
|
||||
"Restart Clash Core": "Clash-Kern neu starten",
|
||||
"TUN Mode": "TUN-Modus",
|
||||
"Copy Env": "Umgebungsvariablen kopieren",
|
||||
"Conf Dir": "Konfigurationsverzeichnis",
|
||||
"Core Dir": "Kernverzeichnis",
|
||||
"Logs Dir": "Protokollverzeichnis",
|
||||
"Open Dir": "Verzeichnis öffnen",
|
||||
"More": "Mehr",
|
||||
"LightWeight Mode": "Leichtgewichtiger Modus",
|
||||
"Config Validation Failed": "Abonnement-Konfigurationsüberprüfung fehlgeschlagen. Bitte überprüfen Sie die Abonnement-Konfigurationsdatei. Die Änderungen wurden rückgängig gemacht. Fehlerdetails: ",
|
||||
"Boot Config Validation Failed": "Start-Abonnement-Konfigurationsüberprüfung fehlgeschlagen. Die Standardkonfiguration wurde verwendet, um die App zu starten. Bitte überprüfen Sie die Abonnement-Konfigurationsdatei. Fehlerdetails: ",
|
||||
"Core Change Config Validation Failed": "Konfigurationsüberprüfung beim Wechsel des Kerns fehlgeschlagen. Die Standardkonfiguration wurde verwendet, um die App zu starten. Bitte überprüfen Sie die Abonnement-Konfigurationsdatei. Fehlerdetails: ",
|
||||
"Config Validation Process Terminated": "Validierungsprozess abgebrochen",
|
||||
"Script Syntax Error": "Skript-Syntaxfehler. Die Änderungen wurden rückgängig gemacht.",
|
||||
"Script Missing Main": "Skriptfehler. Die Änderungen wurden rückgängig gemacht.",
|
||||
"File Not Found": "Datei nicht gefunden. Die Änderungen wurden rückgängig gemacht.",
|
||||
"Script File Error": "Skript-Dateifehler. Die Änderungen wurden rückgängig gemacht.",
|
||||
"Core Changed Successfully": "Kern erfolgreich gewechselt",
|
||||
"Failed to Change Core": "Kernwechsel fehlgeschlagen",
|
||||
"YAML Syntax Error": "YAML-Syntaxfehler. Die Änderungen wurden rückgängig gemacht.",
|
||||
"YAML Read Error": "YAML-Lesefehler. Die Änderungen wurden rückgängig gemacht.",
|
||||
"YAML Mapping Error": "YAML-Mappingfehler. Die Änderungen wurden rückgängig gemacht.",
|
||||
"YAML Key Error": "YAML-Schlüsselfehler. Die Änderungen wurden rückgängig gemacht.",
|
||||
"YAML Error": "YAML-Fehler. Die Änderungen wurden rückgängig gemacht.",
|
||||
"Merge File Syntax Error": "Syntaxfehler in der Überdeckungsdatei. Die Änderungen wurden rückgängig gemacht.",
|
||||
"Merge File Mapping Error": "Mappingfehler in der Überdeckungsdatei. Die Änderungen wurden rückgängig gemacht.",
|
||||
"Merge File Key Error": "Schlüsselfehler in der Überdeckungsdatei. Die Änderungen wurden rückgängig gemacht.",
|
||||
"Merge File Error": "Fehler in der Überdeckungsdatei. Die Änderungen wurden rückgängig gemacht.",
|
||||
"Service Administrator Prompt": "Clash Verge benötigt Administratorrechte, um den Systemdienst zu installieren.",
|
||||
"Update with Clash proxy successfully": "Aktualisierung mit Clash-Proxy erfolgreich",
|
||||
"Update failed even with Clash proxy": "Aktualisierung auch mit Clash-Proxy fehlgeschlagen",
|
||||
"Profile Imported with Clash proxy": "Abonnement mit Clash-Proxy importiert",
|
||||
"Pending": "Wartend auf Prüfung",
|
||||
"Yes": "Unterstützt",
|
||||
"No": "Nicht unterstützt",
|
||||
"Failed": "Test fehlgeschlagen",
|
||||
"Completed": "Prüfung abgeschlossen",
|
||||
"Disallowed ISP": "Nicht zugelassener Internetdienstanbieter",
|
||||
"Originals Only": "Nur Original",
|
||||
"No (IP Banned By Disney+)": "No (IP Banned By Disney+)",
|
||||
"Unsupported Country/Region": "Nicht unterstütztes Land/Region",
|
||||
"Failed (Network Connection)": "Failed (Network Connection)",
|
||||
"DashboardToggledTitle": "Dashboard Toggled",
|
||||
"DashboardToggledBody": "Dashboard visibility toggled by hotkey",
|
||||
"ClashModeChangedTitle": "Clash Mode Changed",
|
||||
"ClashModeChangedBody": "Switched to {mode} mode",
|
||||
"SystemProxyToggledTitle": "System Proxy Toggled",
|
||||
"SystemProxyToggledBody": "System proxy state toggled by hotkey",
|
||||
"TunModeToggledTitle": "TUN Mode Toggled",
|
||||
"TunModeToggledBody": "TUN mode toggled by hotkey",
|
||||
"LightweightModeEnteredTitle": "Lightweight Mode",
|
||||
"LightweightModeEnteredBody": "Entered lightweight mode by hotkey",
|
||||
"AppQuitTitle": "APP Quit",
|
||||
"AppQuitBody": "APP quit by hotkey",
|
||||
"AppHiddenTitle": "APP Hidden",
|
||||
"AppHiddenBody": "APP window hidden by hotkey",
|
||||
"Configuration saved successfully": "Zufalls-Konfiguration erfolgreich gespeichert",
|
||||
"Failed to save configuration": "Failed to save configuration",
|
||||
"Open App Log": "Open App Log",
|
||||
"Open Core Log": "Open Core Log",
|
||||
"common": {
|
||||
"editorModes": {
|
||||
"visualization": "Visualisierung",
|
||||
@@ -856,7 +721,9 @@
|
||||
},
|
||||
"common": {
|
||||
"notifications": {
|
||||
"copySuccess": "Kopieren erfolgreich"
|
||||
"copySuccess": "Kopieren erfolgreich",
|
||||
"saveSuccess": "Zufalls-Konfiguration erfolgreich gespeichert",
|
||||
"saveFailed": "Failed to save configuration"
|
||||
}
|
||||
},
|
||||
"misc": {
|
||||
@@ -1122,6 +989,18 @@
|
||||
"testAll": "Alle testen",
|
||||
"new": "Neu"
|
||||
}
|
||||
},
|
||||
"statuses": {
|
||||
"pending": "Wartend auf Prüfung",
|
||||
"yes": "Unterstützt",
|
||||
"no": "Nicht unterstützt",
|
||||
"failed": "Test fehlgeschlagen",
|
||||
"completed": "Prüfung abgeschlossen",
|
||||
"disallowedIsp": "Nicht zugelassener Internetdienstanbieter",
|
||||
"originalsOnly": "Nur Original",
|
||||
"noDisney": "No (IP Banned By Disney+)",
|
||||
"unsupportedRegion": "Nicht unterstütztes Land/Region",
|
||||
"failedNetwork": "Failed (Network Connection)"
|
||||
}
|
||||
},
|
||||
"proxies": {
|
||||
@@ -1237,6 +1116,11 @@
|
||||
"forceRefreshCompleted": "Force refresh completed",
|
||||
"emergencyRefreshFailed": "Emergency refresh failed: {{message}}"
|
||||
}
|
||||
},
|
||||
"notifications": {
|
||||
"importSuccess": "Abonnement erfolgreich importiert",
|
||||
"importSubscriptionSuccess": "Abonnement erfolgreich importiert",
|
||||
"importWithClashProxy": "Abonnement mit Clash-Proxy importiert"
|
||||
}
|
||||
},
|
||||
"connections": {
|
||||
@@ -1292,5 +1176,79 @@
|
||||
"memoryUsage": "Kern-Speichernutzung"
|
||||
}
|
||||
}
|
||||
},
|
||||
"proxy": {
|
||||
"strategies": {
|
||||
"select": "Proxy manuell auswählen",
|
||||
"url-test": "Proxy basierend auf URL-Latenztest auswählen",
|
||||
"fallback": "Bei Nichtverfügbarkeit zu einem anderen Proxy wechseln",
|
||||
"load-balance": "Proxy basierend auf Lastverteilung zuweisen",
|
||||
"relay": "Basierend auf definiertem Proxy-Kette weiterleiten"
|
||||
}
|
||||
},
|
||||
"system": {
|
||||
"notifications": {
|
||||
"tunMode": {
|
||||
"autoDisabled": "TUN Mode automatically disabled due to service unavailable",
|
||||
"autoDisableFailed": "Failed to disable TUN Mode automatically"
|
||||
}
|
||||
},
|
||||
"labels": {
|
||||
"releaseVersion": "Stabile Version",
|
||||
"alphaVersion": "Vorschauversion"
|
||||
}
|
||||
},
|
||||
"core": {
|
||||
"status": {
|
||||
"stopping": "Kern wird gestoppt...",
|
||||
"restarting": "Kern wird neu gestartet..."
|
||||
},
|
||||
"notifications": {
|
||||
"changeSuccess": "Kern erfolgreich gewechselt",
|
||||
"changeFailed": "Kernwechsel fehlgeschlagen"
|
||||
}
|
||||
},
|
||||
"service": {
|
||||
"status": {
|
||||
"installing": "Service wird installiert...",
|
||||
"uninstalling": "Service wird deinstalliert..."
|
||||
},
|
||||
"notifications": {
|
||||
"installSuccess": "Service erfolgreich installiert",
|
||||
"uninstallSuccess": "Service erfolgreich deinstalliert"
|
||||
}
|
||||
},
|
||||
"validation": {
|
||||
"config": {
|
||||
"failed": "Abonnement-Konfigurationsüberprüfung fehlgeschlagen. Bitte überprüfen Sie die Abonnement-Konfigurationsdatei. Die Änderungen wurden rückgängig gemacht. Fehlerdetails: ",
|
||||
"bootFailed": "Start-Abonnement-Konfigurationsüberprüfung fehlgeschlagen. Die Standardkonfiguration wurde verwendet, um die App zu starten. Bitte überprüfen Sie die Abonnement-Konfigurationsdatei. Fehlerdetails: ",
|
||||
"coreChangeFailed": "Konfigurationsüberprüfung beim Wechsel des Kerns fehlgeschlagen. Die Standardkonfiguration wurde verwendet, um die App zu starten. Bitte überprüfen Sie die Abonnement-Konfigurationsdatei. Fehlerdetails: ",
|
||||
"processTerminated": "Validierungsprozess abgebrochen"
|
||||
},
|
||||
"script": {
|
||||
"syntaxError": "Skript-Syntaxfehler. Die Änderungen wurden rückgängig gemacht.",
|
||||
"missingMain": "Skriptfehler. Die Änderungen wurden rückgängig gemacht.",
|
||||
"fileNotFound": "Datei nicht gefunden. Die Änderungen wurden rückgängig gemacht.",
|
||||
"fileError": "Skript-Dateifehler. Die Änderungen wurden rückgängig gemacht."
|
||||
},
|
||||
"yaml": {
|
||||
"syntaxError": "YAML-Syntaxfehler. Die Änderungen wurden rückgängig gemacht.",
|
||||
"readError": "YAML-Lesefehler. Die Änderungen wurden rückgängig gemacht.",
|
||||
"mappingError": "YAML-Mappingfehler. Die Änderungen wurden rückgängig gemacht.",
|
||||
"keyError": "YAML-Schlüsselfehler. Die Änderungen wurden rückgängig gemacht.",
|
||||
"generalError": "YAML-Fehler. Die Änderungen wurden rückgängig gemacht."
|
||||
},
|
||||
"merge": {
|
||||
"syntaxError": "Syntaxfehler in der Überdeckungsdatei. Die Änderungen wurden rückgängig gemacht.",
|
||||
"mappingError": "Mappingfehler in der Überdeckungsdatei. Die Änderungen wurden rückgängig gemacht.",
|
||||
"keyError": "Schlüsselfehler in der Überdeckungsdatei. Die Änderungen wurden rückgängig gemacht.",
|
||||
"generalError": "Fehler in der Überdeckungsdatei. Die Änderungen wurden rückgängig gemacht."
|
||||
}
|
||||
},
|
||||
"updates": {
|
||||
"notifications": {
|
||||
"withClashProxySuccess": "Aktualisierung mit Clash-Proxy erfolgreich",
|
||||
"withClashProxyFailed": "Aktualisierung auch mit Clash-Proxy fehlgeschlagen"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,139 +1,4 @@
|
||||
{
|
||||
"Proxies": "Proxies",
|
||||
"rule": "rule",
|
||||
"global": "global",
|
||||
"direct": "direct",
|
||||
"script": "script",
|
||||
"DOMAIN": "Matches the full domain name",
|
||||
"DOMAIN-SUFFIX": "Matches the domain suffix",
|
||||
"DOMAIN-KEYWORD": "Matches the domain keyword",
|
||||
"DOMAIN-REGEX": "Matches the domain using regular expressions",
|
||||
"GEOSITE": "Matches domains within the Geosite",
|
||||
"GEOIP": "Matches the country code of the IP address",
|
||||
"SRC-GEOIP": "Matches the country code of the source IP address",
|
||||
"IP-ASN": "Matches the IP address's ASN",
|
||||
"SRC-IP-ASN": "Matches the source IP address's ASN",
|
||||
"IP-CIDR": "Matches the IP address range",
|
||||
"IP-CIDR6": "Matches the IPv6 address range",
|
||||
"SRC-IP-CIDR": "Matches the source IP address range",
|
||||
"IP-SUFFIX": "Matches the IP address suffix range",
|
||||
"SRC-IP-SUFFIX": "Matches the source IP address suffix range",
|
||||
"SRC-PORT": "Matches the source port range",
|
||||
"DST-PORT": "Matches the destination port range",
|
||||
"IN-PORT": "Matches the inbound port",
|
||||
"DSCP": "DSCP marking (only for tproxy UDP inbound)",
|
||||
"PROCESS-NAME": "Matches the process name (Android package name)",
|
||||
"PROCESS-PATH": "Matches the full process path",
|
||||
"PROCESS-NAME-REGEX": "Matches the full process name using regular expressions (Android package name)",
|
||||
"PROCESS-PATH-REGEX": "Matches the full process path using regular expressions",
|
||||
"NETWORK": "Matches the transport protocol (tcp/udp)",
|
||||
"UID": "Matches the Linux USER ID",
|
||||
"IN-TYPE": "Matches the inbound type",
|
||||
"IN-USER": "Matches the inbound username",
|
||||
"IN-NAME": "Matches the inbound name",
|
||||
"SUB-RULE": "Sub-rule",
|
||||
"RULE-SET": "Matches the rule set",
|
||||
"AND": "Logical AND",
|
||||
"OR": "Logical OR",
|
||||
"NOT": "Logical NOT",
|
||||
"MATCH": "Matches all requests",
|
||||
"DIRECT": "Data goes directly outbound",
|
||||
"REJECT": "Intercepts requests",
|
||||
"REJECT-DROP": "Discards requests",
|
||||
"PASS": "Skips this rule when matched",
|
||||
"select": "Select proxy manually",
|
||||
"url-test": "Select proxy based on URL test delay",
|
||||
"fallback": "Switch to another proxy on error",
|
||||
"load-balance": "Distribute proxy based on load balancing",
|
||||
"relay": "Pass through the defined proxy chain",
|
||||
"Timeout": "Timeout",
|
||||
"Type": "Type",
|
||||
"Close All Connections": "Close All Connections",
|
||||
"Rule": "Rule",
|
||||
"TUN Mode automatically disabled due to service unavailable": "TUN Mode automatically disabled due to service unavailable",
|
||||
"Failed to disable TUN Mode automatically": "Failed to disable TUN Mode automatically",
|
||||
"active": "active",
|
||||
"unknown": "unknown",
|
||||
"Install": "Install",
|
||||
"Uninstall": "Uninstall",
|
||||
"System Proxy": "System Proxy",
|
||||
"Release Version": "Release Version",
|
||||
"Alpha Version": "Alpha Version",
|
||||
"theme.light": "Light",
|
||||
"theme.dark": "Dark",
|
||||
"theme.system": "System",
|
||||
"Exit": "Exit",
|
||||
"Profile Imported Successfully": "Profile Imported Successfully",
|
||||
"Stopping Core...": "Stopping Core...",
|
||||
"Restarting Core...": "Restarting Core...",
|
||||
"Installing Service...": "Installing Service...",
|
||||
"Uninstalling Service...": "Uninstalling Service...",
|
||||
"Service Installed Successfully": "Service Installed Successfully",
|
||||
"Service Uninstalled Successfully": "Service Uninstalled Successfully",
|
||||
"Import Subscription Successful": "Import subscription successful",
|
||||
"Profile": "Profile",
|
||||
"Dashboard": "Dashboard",
|
||||
"Restart App": "Restart App",
|
||||
"Restart Clash Core": "Restart Clash Core",
|
||||
"TUN Mode": "TUN Mode",
|
||||
"Copy Env": "Copy Env",
|
||||
"Conf Dir": "Conf Dir",
|
||||
"Core Dir": "Core Dir",
|
||||
"Logs Dir": "Logs Dir",
|
||||
"Open Dir": "Open Dir",
|
||||
"More": "More",
|
||||
"LightWeight Mode": "Lightweight Mode",
|
||||
"Config Validation Failed": "Subscription configuration validation failed. Please check the subscription configuration file; modifications have been rolled back.",
|
||||
"Boot Config Validation Failed": "Boot subscription configuration validation failed. Started with the default configuration; please check the subscription configuration file.",
|
||||
"Core Change Config Validation Failed": "Configuration validation failed when switching the kernel. Started with the default configuration; please check the subscription configuration file.",
|
||||
"Config Validation Process Terminated": "The validation process has been terminated.",
|
||||
"Script Syntax Error": "Script syntax error, changes reverted",
|
||||
"Script Missing Main": "Script error, changes reverted",
|
||||
"File Not Found": "File missing, changes reverted",
|
||||
"Script File Error": "Script file error, changes reverted",
|
||||
"Core Changed Successfully": "Core changed successfully",
|
||||
"Failed to Change Core": "Failed to change core",
|
||||
"YAML Syntax Error": "YAML syntax error, changes reverted",
|
||||
"YAML Read Error": "YAML read error, changes reverted",
|
||||
"YAML Mapping Error": "YAML mapping error, changes reverted",
|
||||
"YAML Key Error": "YAML key error, changes reverted",
|
||||
"YAML Error": "YAML error, changes reverted",
|
||||
"Merge File Syntax Error": "Merge file syntax error, changes reverted",
|
||||
"Merge File Mapping Error": "Merge file mapping error, changes reverted",
|
||||
"Merge File Key Error": "Merge file key error, changes reverted",
|
||||
"Merge File Error": "Merge file error, changes reverted",
|
||||
"Service Administrator Prompt": "Clash Verge requires administrator privileges to reinstall the system service",
|
||||
"Update with Clash proxy successfully": "Update with Clash proxy successfully",
|
||||
"Update failed even with Clash proxy": "Update failed even with Clash proxy",
|
||||
"Profile Imported with Clash proxy": "Profile Imported with Clash proxy",
|
||||
"Pending": "Pending",
|
||||
"Yes": "Yes",
|
||||
"No": "No",
|
||||
"Failed": "Failed",
|
||||
"Completed": "Completed",
|
||||
"Disallowed ISP": "Disallowed ISP",
|
||||
"Originals Only": "Originals Only",
|
||||
"No (IP Banned By Disney+)": "No (IP Banned By Disney+)",
|
||||
"Unsupported Country/Region": "Unsupported Country/Region",
|
||||
"Failed (Network Connection)": "Failed (Network Connection)",
|
||||
"DashboardToggledTitle": "Dashboard Toggled",
|
||||
"DashboardToggledBody": "Dashboard visibility toggled by hotkey",
|
||||
"ClashModeChangedTitle": "Clash Mode Changed",
|
||||
"ClashModeChangedBody": "Switched to {mode} mode",
|
||||
"SystemProxyToggledTitle": "System Proxy Toggled",
|
||||
"SystemProxyToggledBody": "System proxy state toggled by hotkey",
|
||||
"TunModeToggledTitle": "TUN Mode Toggled",
|
||||
"TunModeToggledBody": "TUN mode toggled by hotkey",
|
||||
"LightweightModeEnteredTitle": "Lightweight Mode",
|
||||
"LightweightModeEnteredBody": "Entered lightweight mode by hotkey",
|
||||
"AppQuitTitle": "APP Quit",
|
||||
"AppQuitBody": "APP quit by hotkey",
|
||||
"AppHiddenTitle": "APP Hidden",
|
||||
"AppHiddenBody": "APP window hidden by hotkey",
|
||||
"Configuration saved successfully": "Configuration saved successfully",
|
||||
"Failed to save configuration": "Failed to save configuration",
|
||||
"Open App Log": "Open App Log",
|
||||
"Open Core Log": "Open Core Log",
|
||||
"common": {
|
||||
"editorModes": {
|
||||
"visualization": "Visualization",
|
||||
@@ -856,7 +721,9 @@
|
||||
},
|
||||
"common": {
|
||||
"notifications": {
|
||||
"copySuccess": "Copy Success"
|
||||
"copySuccess": "Copy Success",
|
||||
"saveSuccess": "Configuration saved successfully",
|
||||
"saveFailed": "Failed to save configuration"
|
||||
}
|
||||
},
|
||||
"misc": {
|
||||
@@ -1122,6 +989,18 @@
|
||||
"testAll": "Test All",
|
||||
"new": "New"
|
||||
}
|
||||
},
|
||||
"statuses": {
|
||||
"pending": "Pending",
|
||||
"yes": "Yes",
|
||||
"no": "No",
|
||||
"failed": "Failed",
|
||||
"completed": "Completed",
|
||||
"disallowedIsp": "Disallowed ISP",
|
||||
"originalsOnly": "Originals Only",
|
||||
"noDisney": "No (IP Banned By Disney+)",
|
||||
"unsupportedRegion": "Unsupported Country/Region",
|
||||
"failedNetwork": "Failed (Network Connection)"
|
||||
}
|
||||
},
|
||||
"proxies": {
|
||||
@@ -1237,6 +1116,11 @@
|
||||
"forceRefreshCompleted": "Force refresh completed",
|
||||
"emergencyRefreshFailed": "Emergency refresh failed: {{message}}"
|
||||
}
|
||||
},
|
||||
"notifications": {
|
||||
"importSuccess": "Profile Imported Successfully",
|
||||
"importSubscriptionSuccess": "Import subscription successful",
|
||||
"importWithClashProxy": "Profile Imported with Clash proxy"
|
||||
}
|
||||
},
|
||||
"connections": {
|
||||
@@ -1292,5 +1176,79 @@
|
||||
"memoryUsage": "Memory Usage"
|
||||
}
|
||||
}
|
||||
},
|
||||
"proxy": {
|
||||
"strategies": {
|
||||
"select": "Select proxy manually",
|
||||
"url-test": "Select proxy based on URL test delay",
|
||||
"fallback": "Switch to another proxy on error",
|
||||
"load-balance": "Distribute proxy based on load balancing",
|
||||
"relay": "Pass through the defined proxy chain"
|
||||
}
|
||||
},
|
||||
"system": {
|
||||
"notifications": {
|
||||
"tunMode": {
|
||||
"autoDisabled": "TUN Mode automatically disabled due to service unavailable",
|
||||
"autoDisableFailed": "Failed to disable TUN Mode automatically"
|
||||
}
|
||||
},
|
||||
"labels": {
|
||||
"releaseVersion": "Release Version",
|
||||
"alphaVersion": "Alpha Version"
|
||||
}
|
||||
},
|
||||
"core": {
|
||||
"status": {
|
||||
"stopping": "Stopping Core...",
|
||||
"restarting": "Restarting Core..."
|
||||
},
|
||||
"notifications": {
|
||||
"changeSuccess": "Core changed successfully",
|
||||
"changeFailed": "Failed to change core"
|
||||
}
|
||||
},
|
||||
"service": {
|
||||
"status": {
|
||||
"installing": "Installing Service...",
|
||||
"uninstalling": "Uninstalling Service..."
|
||||
},
|
||||
"notifications": {
|
||||
"installSuccess": "Service Installed Successfully",
|
||||
"uninstallSuccess": "Service Uninstalled Successfully"
|
||||
}
|
||||
},
|
||||
"validation": {
|
||||
"config": {
|
||||
"failed": "Subscription configuration validation failed. Please check the subscription configuration file; modifications have been rolled back.",
|
||||
"bootFailed": "Boot subscription configuration validation failed. Started with the default configuration; please check the subscription configuration file.",
|
||||
"coreChangeFailed": "Configuration validation failed when switching the kernel. Started with the default configuration; please check the subscription configuration file.",
|
||||
"processTerminated": "The validation process has been terminated."
|
||||
},
|
||||
"script": {
|
||||
"syntaxError": "Script syntax error, changes reverted",
|
||||
"missingMain": "Script error, changes reverted",
|
||||
"fileNotFound": "File missing, changes reverted",
|
||||
"fileError": "Script file error, changes reverted"
|
||||
},
|
||||
"yaml": {
|
||||
"syntaxError": "YAML syntax error, changes reverted",
|
||||
"readError": "YAML read error, changes reverted",
|
||||
"mappingError": "YAML mapping error, changes reverted",
|
||||
"keyError": "YAML key error, changes reverted",
|
||||
"generalError": "YAML error, changes reverted"
|
||||
},
|
||||
"merge": {
|
||||
"syntaxError": "Merge file syntax error, changes reverted",
|
||||
"mappingError": "Merge file mapping error, changes reverted",
|
||||
"keyError": "Merge file key error, changes reverted",
|
||||
"generalError": "Merge file error, changes reverted"
|
||||
}
|
||||
},
|
||||
"updates": {
|
||||
"notifications": {
|
||||
"withClashProxySuccess": "Update with Clash proxy successfully",
|
||||
"withClashProxyFailed": "Update failed even with Clash proxy"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,139 +1,4 @@
|
||||
{
|
||||
"Proxies": "Proxies",
|
||||
"rule": "Regla",
|
||||
"global": "Global",
|
||||
"direct": "Conexión directa",
|
||||
"script": "Script",
|
||||
"DOMAIN": "Coincidir con el nombre de dominio completo",
|
||||
"DOMAIN-SUFFIX": "Coincidir con el sufijo del nombre de dominio",
|
||||
"DOMAIN-KEYWORD": "Coincidir con la palabra clave del nombre de dominio",
|
||||
"DOMAIN-REGEX": "Coincidir con la expresión regular del nombre de dominio",
|
||||
"GEOSITE": "Coincidir con los nombres de dominio en Geosite",
|
||||
"GEOIP": "Coincidir con el código de país del IP",
|
||||
"SRC-GEOIP": "Coincidir con el código de país del IP de origen",
|
||||
"IP-ASN": "Coincidir con el ASN del IP",
|
||||
"SRC-IP-ASN": "Coincidir con el ASN del IP de origen",
|
||||
"IP-CIDR": "Coincidir con el rango de direcciones IP",
|
||||
"IP-CIDR6": "Coincidir con el rango de direcciones IP",
|
||||
"SRC-IP-CIDR": "Coincidir con el rango de direcciones IP de origen",
|
||||
"IP-SUFFIX": "Coincidir con el rango de sufijos de IP",
|
||||
"SRC-IP-SUFFIX": "Coincidir con el rango de sufijos de IP de origen",
|
||||
"SRC-PORT": "Coincidir con el rango de puertos de origen de la solicitud",
|
||||
"DST-PORT": "Coincidir con el rango de puertos de destino de la solicitud",
|
||||
"IN-PORT": "Coincidir con el puerto de entrada",
|
||||
"DSCP": "Etiqueta DSCP (solo para entradas UDP TPROXY)",
|
||||
"PROCESS-NAME": "Coincidir con el nombre del proceso (nombre del paquete de Android)",
|
||||
"PROCESS-PATH": "Coincidir con la ruta completa del proceso",
|
||||
"PROCESS-NAME-REGEX": "Coincidir con el nombre completo del proceso mediante expresiones regulares (nombre del paquete de Android)",
|
||||
"PROCESS-PATH-REGEX": "Coincidir con la ruta completa del proceso mediante expresiones regulares",
|
||||
"NETWORK": "Coincidir con el protocolo de transporte (TCP/UDP)",
|
||||
"UID": "Coincidir con el ID de usuario de Linux",
|
||||
"IN-TYPE": "Coincidir con el tipo de entrada",
|
||||
"IN-USER": "Coincidir con el nombre de usuario de entrada",
|
||||
"IN-NAME": "Coincidir con el nombre de entrada",
|
||||
"SUB-RULE": "Subregla",
|
||||
"RULE-SET": "Coincidir con el conjunto de reglas",
|
||||
"AND": "Y lógico",
|
||||
"OR": "O lógico",
|
||||
"NOT": "No lógico",
|
||||
"MATCH": "Coincidir con todas las solicitudes",
|
||||
"DIRECT": "Conexión directa",
|
||||
"REJECT": "Rechazar solicitud",
|
||||
"REJECT-DROP": "Descartar solicitud",
|
||||
"PASS": "Saltar esta regla",
|
||||
"select": "Seleccionar proxy manualmente",
|
||||
"url-test": "Seleccionar proxy según la prueba de latencia de la URL",
|
||||
"fallback": "Cambiar a otro proxy cuando no esté disponible",
|
||||
"load-balance": "Asignar proxy según el equilibrio de carga",
|
||||
"relay": "Transferir según la cadena de proxy definida",
|
||||
"Timeout": "Tiempo de espera",
|
||||
"Type": "Tipo",
|
||||
"Close All Connections": "Close All Connections",
|
||||
"Rule": "Regla",
|
||||
"TUN Mode automatically disabled due to service unavailable": "TUN Mode automatically disabled due to service unavailable",
|
||||
"Failed to disable TUN Mode automatically": "Failed to disable TUN Mode automatically",
|
||||
"active": "Activado",
|
||||
"unknown": "Desconocido",
|
||||
"Install": "Instalar",
|
||||
"Uninstall": "Desinstalar",
|
||||
"System Proxy": "Proxy del sistema",
|
||||
"Release Version": "Versión estable",
|
||||
"Alpha Version": "Versión de vista previa",
|
||||
"theme.light": "Light",
|
||||
"theme.dark": "Dark",
|
||||
"theme.system": "System",
|
||||
"Exit": "Salir",
|
||||
"Profile Imported Successfully": "Suscripción importada con éxito",
|
||||
"Stopping Core...": "Deteniendo núcleo...",
|
||||
"Restarting Core...": "Reiniciando núcleo...",
|
||||
"Installing Service...": "Instalando servicio...",
|
||||
"Uninstalling Service...": "Desinstalando servicio...",
|
||||
"Service Installed Successfully": "Servicio instalado con éxito",
|
||||
"Service Uninstalled Successfully": "Servicio desinstalado con éxito",
|
||||
"Import Subscription Successful": "Suscripción importada con éxito",
|
||||
"Profile": "Configuración",
|
||||
"Dashboard": "Panel de control",
|
||||
"Restart App": "Reiniciar aplicación",
|
||||
"Restart Clash Core": "Reiniciar el núcleo de Clash",
|
||||
"TUN Mode": "Modo TUN",
|
||||
"Copy Env": "Copiar variables de entorno",
|
||||
"Conf Dir": "Directorio de configuración",
|
||||
"Core Dir": "Directorio del núcleo",
|
||||
"Logs Dir": "Directorio de registros",
|
||||
"Open Dir": "Abrir directorio",
|
||||
"More": "Más",
|
||||
"LightWeight Mode": "Modo ligero",
|
||||
"Config Validation Failed": "Error de validación de la configuración de la suscripción. Compruebe el archivo de configuración de la suscripción. Los cambios se han deshecho. Detalles del error: ",
|
||||
"Boot Config Validation Failed": "Error de validación de la configuración de la suscripción de arranque. Se ha iniciado con la configuración predeterminada. Compruebe el archivo de configuración de la suscripción. Detalles del error: ",
|
||||
"Core Change Config Validation Failed": "Error de validación de la configuración al cambiar el núcleo. Se ha iniciado con la configuración predeterminada. Compruebe el archivo de configuración de la suscripción. Detalles del error: ",
|
||||
"Config Validation Process Terminated": "Proceso de validación terminado",
|
||||
"Script Syntax Error": "Error de sintaxis en el script. Los cambios se han deshecho",
|
||||
"Script Missing Main": "Error en el script. Los cambios se han deshecho",
|
||||
"File Not Found": "Archivo no encontrado. Los cambios se han deshecho",
|
||||
"Script File Error": "Error en el archivo de script. Los cambios se han deshecho",
|
||||
"Core Changed Successfully": "Núcleo cambiado con éxito",
|
||||
"Failed to Change Core": "No se pudo cambiar el núcleo",
|
||||
"YAML Syntax Error": "Error de sintaxis YAML. Los cambios se han deshecho",
|
||||
"YAML Read Error": "Error al leer el archivo YAML. Los cambios se han deshecho",
|
||||
"YAML Mapping Error": "Error de mapeo YAML. Los cambios se han deshecho",
|
||||
"YAML Key Error": "Error de clave YAML. Los cambios se han deshecho",
|
||||
"YAML Error": "Error YAML. Los cambios se han deshecho",
|
||||
"Merge File Syntax Error": "Error de sintaxis en el archivo de sobrescritura. Los cambios se han deshecho",
|
||||
"Merge File Mapping Error": "Error de mapeo en el archivo de sobrescritura. Los cambios se han deshecho",
|
||||
"Merge File Key Error": "Error de clave en el archivo de sobrescritura. Los cambios se han deshecho",
|
||||
"Merge File Error": "Error en el archivo de sobrescritura. Los cambios se han deshecho",
|
||||
"Service Administrator Prompt": "Clash Verge requiere permisos de administrador para instalar el servicio del sistema",
|
||||
"Update with Clash proxy successfully": "Actualización con el proxy de Clash exitosa",
|
||||
"Update failed even with Clash proxy": "Error al actualizar incluso con el proxy de Clash",
|
||||
"Profile Imported with Clash proxy": "Suscripción importada con el proxy de Clash",
|
||||
"Pending": "Pendiente de detección",
|
||||
"Yes": "Soportado",
|
||||
"No": "No soportado",
|
||||
"Failed": "Prueba fallida",
|
||||
"Completed": "Detección completada",
|
||||
"Disallowed ISP": "Proveedor de servicios de Internet no permitido",
|
||||
"Originals Only": "Solo originales",
|
||||
"No (IP Banned By Disney+)": "No (IP Banned By Disney+)",
|
||||
"Unsupported Country/Region": "País/región no soportado",
|
||||
"Failed (Network Connection)": "Failed (Network Connection)",
|
||||
"DashboardToggledTitle": "Dashboard Toggled",
|
||||
"DashboardToggledBody": "Dashboard visibility toggled by hotkey",
|
||||
"ClashModeChangedTitle": "Clash Mode Changed",
|
||||
"ClashModeChangedBody": "Switched to {mode} mode",
|
||||
"SystemProxyToggledTitle": "System Proxy Toggled",
|
||||
"SystemProxyToggledBody": "System proxy state toggled by hotkey",
|
||||
"TunModeToggledTitle": "TUN Mode Toggled",
|
||||
"TunModeToggledBody": "TUN mode toggled by hotkey",
|
||||
"LightweightModeEnteredTitle": "Lightweight Mode",
|
||||
"LightweightModeEnteredBody": "Entered lightweight mode by hotkey",
|
||||
"AppQuitTitle": "APP Quit",
|
||||
"AppQuitBody": "APP quit by hotkey",
|
||||
"AppHiddenTitle": "APP Hidden",
|
||||
"AppHiddenBody": "APP window hidden by hotkey",
|
||||
"Configuration saved successfully": "Configuración aleatoria guardada correctamente",
|
||||
"Failed to save configuration": "Failed to save configuration",
|
||||
"Open App Log": "Open App Log",
|
||||
"Open Core Log": "Open Core Log",
|
||||
"common": {
|
||||
"editorModes": {
|
||||
"visualization": "Visualización",
|
||||
@@ -856,7 +721,9 @@
|
||||
},
|
||||
"common": {
|
||||
"notifications": {
|
||||
"copySuccess": "Copia exitosa"
|
||||
"copySuccess": "Copia exitosa",
|
||||
"saveSuccess": "Configuración aleatoria guardada correctamente",
|
||||
"saveFailed": "Failed to save configuration"
|
||||
}
|
||||
},
|
||||
"misc": {
|
||||
@@ -1122,6 +989,18 @@
|
||||
"testAll": "Probar todo",
|
||||
"new": "Nuevo"
|
||||
}
|
||||
},
|
||||
"statuses": {
|
||||
"pending": "Pendiente de detección",
|
||||
"yes": "Soportado",
|
||||
"no": "No soportado",
|
||||
"failed": "Prueba fallida",
|
||||
"completed": "Detección completada",
|
||||
"disallowedIsp": "Proveedor de servicios de Internet no permitido",
|
||||
"originalsOnly": "Solo originales",
|
||||
"noDisney": "No (IP Banned By Disney+)",
|
||||
"unsupportedRegion": "País/región no soportado",
|
||||
"failedNetwork": "Failed (Network Connection)"
|
||||
}
|
||||
},
|
||||
"proxies": {
|
||||
@@ -1237,6 +1116,11 @@
|
||||
"forceRefreshCompleted": "Force refresh completed",
|
||||
"emergencyRefreshFailed": "Emergency refresh failed: {{message}}"
|
||||
}
|
||||
},
|
||||
"notifications": {
|
||||
"importSuccess": "Suscripción importada con éxito",
|
||||
"importSubscriptionSuccess": "Suscripción importada con éxito",
|
||||
"importWithClashProxy": "Suscripción importada con el proxy de Clash"
|
||||
}
|
||||
},
|
||||
"connections": {
|
||||
@@ -1292,5 +1176,79 @@
|
||||
"memoryUsage": "Uso de memoria del núcleo"
|
||||
}
|
||||
}
|
||||
},
|
||||
"proxy": {
|
||||
"strategies": {
|
||||
"select": "Seleccionar proxy manualmente",
|
||||
"url-test": "Seleccionar proxy según la prueba de latencia de la URL",
|
||||
"fallback": "Cambiar a otro proxy cuando no esté disponible",
|
||||
"load-balance": "Asignar proxy según el equilibrio de carga",
|
||||
"relay": "Transferir según la cadena de proxy definida"
|
||||
}
|
||||
},
|
||||
"system": {
|
||||
"notifications": {
|
||||
"tunMode": {
|
||||
"autoDisabled": "TUN Mode automatically disabled due to service unavailable",
|
||||
"autoDisableFailed": "Failed to disable TUN Mode automatically"
|
||||
}
|
||||
},
|
||||
"labels": {
|
||||
"releaseVersion": "Versión estable",
|
||||
"alphaVersion": "Versión de vista previa"
|
||||
}
|
||||
},
|
||||
"core": {
|
||||
"status": {
|
||||
"stopping": "Deteniendo núcleo...",
|
||||
"restarting": "Reiniciando núcleo..."
|
||||
},
|
||||
"notifications": {
|
||||
"changeSuccess": "Núcleo cambiado con éxito",
|
||||
"changeFailed": "No se pudo cambiar el núcleo"
|
||||
}
|
||||
},
|
||||
"service": {
|
||||
"status": {
|
||||
"installing": "Instalando servicio...",
|
||||
"uninstalling": "Desinstalando servicio..."
|
||||
},
|
||||
"notifications": {
|
||||
"installSuccess": "Servicio instalado con éxito",
|
||||
"uninstallSuccess": "Servicio desinstalado con éxito"
|
||||
}
|
||||
},
|
||||
"validation": {
|
||||
"config": {
|
||||
"failed": "Error de validación de la configuración de la suscripción. Compruebe el archivo de configuración de la suscripción. Los cambios se han deshecho. Detalles del error: ",
|
||||
"bootFailed": "Error de validación de la configuración de la suscripción de arranque. Se ha iniciado con la configuración predeterminada. Compruebe el archivo de configuración de la suscripción. Detalles del error: ",
|
||||
"coreChangeFailed": "Error de validación de la configuración al cambiar el núcleo. Se ha iniciado con la configuración predeterminada. Compruebe el archivo de configuración de la suscripción. Detalles del error: ",
|
||||
"processTerminated": "Proceso de validación terminado"
|
||||
},
|
||||
"script": {
|
||||
"syntaxError": "Error de sintaxis en el script. Los cambios se han deshecho",
|
||||
"missingMain": "Error en el script. Los cambios se han deshecho",
|
||||
"fileNotFound": "Archivo no encontrado. Los cambios se han deshecho",
|
||||
"fileError": "Error en el archivo de script. Los cambios se han deshecho"
|
||||
},
|
||||
"yaml": {
|
||||
"syntaxError": "Error de sintaxis YAML. Los cambios se han deshecho",
|
||||
"readError": "Error al leer el archivo YAML. Los cambios se han deshecho",
|
||||
"mappingError": "Error de mapeo YAML. Los cambios se han deshecho",
|
||||
"keyError": "Error de clave YAML. Los cambios se han deshecho",
|
||||
"generalError": "Error YAML. Los cambios se han deshecho"
|
||||
},
|
||||
"merge": {
|
||||
"syntaxError": "Error de sintaxis en el archivo de sobrescritura. Los cambios se han deshecho",
|
||||
"mappingError": "Error de mapeo en el archivo de sobrescritura. Los cambios se han deshecho",
|
||||
"keyError": "Error de clave en el archivo de sobrescritura. Los cambios se han deshecho",
|
||||
"generalError": "Error en el archivo de sobrescritura. Los cambios se han deshecho"
|
||||
}
|
||||
},
|
||||
"updates": {
|
||||
"notifications": {
|
||||
"withClashProxySuccess": "Actualización con el proxy de Clash exitosa",
|
||||
"withClashProxyFailed": "Error al actualizar incluso con el proxy de Clash"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,139 +1,4 @@
|
||||
{
|
||||
"Proxies": "پراکسیها",
|
||||
"rule": "قانون",
|
||||
"global": "جهانی",
|
||||
"direct": "مستقیم",
|
||||
"script": "اسکریپت",
|
||||
"DOMAIN": "مطابقت با نام کامل دامنه",
|
||||
"DOMAIN-SUFFIX": "مطابقت با پسوند دامنه",
|
||||
"DOMAIN-KEYWORD": "مطابقت با کلمه کلیدی دامنه",
|
||||
"DOMAIN-REGEX": "مطابقت با دامنه با استفاده از عبارات منظم",
|
||||
"GEOSITE": "مطابقت با دامنههای درون Geosite",
|
||||
"GEOIP": "مطابقت با کد کشور IP",
|
||||
"SRC-GEOIP": "مطابقت با کد کشور IP مبدا",
|
||||
"IP-ASN": "مطابقت با ASN آدرس IP",
|
||||
"SRC-IP-ASN": "مطابقت با ASN آدرس IP مبدا",
|
||||
"IP-CIDR": "مطابقت با محدوده آدرس IP",
|
||||
"IP-CIDR6": "مطابقت با محدوده آدرس IPv6",
|
||||
"SRC-IP-CIDR": "مطابقت با محدوده آدرس IP مبدا",
|
||||
"IP-SUFFIX": "مطابقت با محدوده پسوند آدرس IP",
|
||||
"SRC-IP-SUFFIX": "مطابقت با محدوده پسوند آدرس IP مبدا",
|
||||
"SRC-PORT": "مطابقت با محدوده پورت مبدا",
|
||||
"DST-PORT": "مطابقت با محدوده پورت مقصد",
|
||||
"IN-PORT": "مطابقت با پورت ورودی",
|
||||
"DSCP": "علامتگذاری DSCP (فقط برای tproxy UDP ورودی)",
|
||||
"PROCESS-NAME": "مطابقت با نام فرآیند (نام بسته Android)",
|
||||
"PROCESS-PATH": "مطابقت با مسیر کامل فرآیند",
|
||||
"PROCESS-NAME-REGEX": "مطابقت با نام فرآیند با استفاده از عبارات منظم (نام بسته Android)",
|
||||
"PROCESS-PATH-REGEX": "مطابقت با مسیر کامل فرآیند با استفاده از عبارات منظم",
|
||||
"NETWORK": "مطابقت با پروتکل انتقال (tcp/udp)",
|
||||
"UID": "مطابقت با شناسه کاربری Linux",
|
||||
"IN-TYPE": "مطابقت با نوع ورودی",
|
||||
"IN-USER": "مطابقت با نام کاربری ورودی",
|
||||
"IN-NAME": "مطابقت با نام ورودی",
|
||||
"SUB-RULE": "قانون فرعی",
|
||||
"RULE-SET": "مطابقت با مجموعه قوانین",
|
||||
"AND": "منطق AND",
|
||||
"OR": "منطق OR",
|
||||
"NOT": "منطق NOT",
|
||||
"MATCH": "مطابقت با تمام درخواستها",
|
||||
"DIRECT": "دادهها به صورت مستقیم خروجی میشوند",
|
||||
"REJECT": "درخواستها را متوقف میکند",
|
||||
"REJECT-DROP": "درخواستها را نادیده میگیرد",
|
||||
"PASS": "این قانون را در صورت تطابق نادیده میگیرد",
|
||||
"select": "انتخاب پروکسی به صورت دستی",
|
||||
"url-test": "انتخاب پروکسی بر اساس تأخیر آزمایش URL",
|
||||
"fallback": "تعویض به پروکسی دیگر در صورت بروز خطا",
|
||||
"load-balance": "توزیع پراکسی بر اساس توازن بار",
|
||||
"relay": "عبور از زنجیره پروکسی تعریف شده",
|
||||
"Timeout": "زمان قطع",
|
||||
"Type": "نوع",
|
||||
"Close All Connections": "Close All Connections",
|
||||
"Rule": "قانون",
|
||||
"TUN Mode automatically disabled due to service unavailable": "TUN Mode automatically disabled due to service unavailable",
|
||||
"Failed to disable TUN Mode automatically": "Failed to disable TUN Mode automatically",
|
||||
"active": "فعال",
|
||||
"unknown": "ناشناخته",
|
||||
"Install": "نصب",
|
||||
"Uninstall": "حذف نصب",
|
||||
"System Proxy": "پراکسی سیستم",
|
||||
"Release Version": "نسخه نهایی",
|
||||
"Alpha Version": "نسخه آلفا",
|
||||
"theme.light": "روشن",
|
||||
"theme.dark": "تاریک",
|
||||
"theme.system": "سیستم",
|
||||
"Exit": "خروج",
|
||||
"Profile Imported Successfully": "پروفایل با موفقیت وارد شد",
|
||||
"Stopping Core...": "Stopping Core...",
|
||||
"Restarting Core...": "Restarting Core...",
|
||||
"Installing Service...": "در حال نصب سرویس...",
|
||||
"Uninstalling Service...": "Uninstalling Service...",
|
||||
"Service Installed Successfully": "سرویس با موفقیت نصب شد",
|
||||
"Service Uninstalled Successfully": "سرویس با موفقیت حذف نصب شد",
|
||||
"Import Subscription Successful": "وارد کردن اشتراک با موفقیت انجام شد",
|
||||
"Profile": "پروفایل",
|
||||
"Dashboard": "داشبورد",
|
||||
"Restart App": "راهاندازی مجدد برنامه",
|
||||
"Restart Clash Core": "راهاندازی مجدد هسته Clash",
|
||||
"TUN Mode": "حالت TUN",
|
||||
"Copy Env": "کپی متغیرهای محیطی",
|
||||
"Conf Dir": "پوشه پیکربندی",
|
||||
"Core Dir": "پوشه هسته",
|
||||
"Logs Dir": "پوشه لاگها",
|
||||
"Open Dir": "باز کردن پوشه",
|
||||
"More": "بیشتر",
|
||||
"LightWeight Mode": "در فارسی",
|
||||
"Config Validation Failed": "اعتبارسنجی پیکربندی اشتراک ناموفق بود، فایل پیکربندی را بررسی کنید، تغییرات برگشت داده شد، جزئیات خطا:",
|
||||
"Boot Config Validation Failed": "اعتبارسنجی پیکربندی هنگام راهاندازی ناموفق بود، پیکربندی پیشفرض استفاده شد، فایل پیکربندی را بررسی کنید، جزئیات خطا:",
|
||||
"Core Change Config Validation Failed": "اعتبارسنجی پیکربندی هنگام تغییر هسته ناموفق بود، پیکربندی پیشفرض استفاده شد، فایل پیکربندی را بررسی کنید، جزئیات خطا:",
|
||||
"Config Validation Process Terminated": "فرآیند اعتبارسنجی متوقف شد",
|
||||
"Script Syntax Error": "خطای نحوی اسکریپت، تغییرات برگشت داده شد",
|
||||
"Script Missing Main": "خطای اسکریپت، تغییرات برگشت داده شد",
|
||||
"File Not Found": "فایل یافت نشد، تغییرات برگشت داده شد",
|
||||
"Script File Error": "خطای فایل اسکریپت، تغییرات برگشت داده شد",
|
||||
"Core Changed Successfully": "هسته با موفقیت تغییر کرد",
|
||||
"Failed to Change Core": "تغییر هسته ناموفق بود",
|
||||
"YAML Syntax Error": "YAML syntax error, changes reverted",
|
||||
"YAML Read Error": "YAML read error, changes reverted",
|
||||
"YAML Mapping Error": "YAML mapping error, changes reverted",
|
||||
"YAML Key Error": "YAML key error, changes reverted",
|
||||
"YAML Error": "YAML error, changes reverted",
|
||||
"Merge File Syntax Error": "Merge file syntax error, changes reverted",
|
||||
"Merge File Mapping Error": "Merge file mapping error, changes reverted",
|
||||
"Merge File Key Error": "Merge file key error, changes reverted",
|
||||
"Merge File Error": "Merge file error, changes reverted",
|
||||
"Service Administrator Prompt": "Clash Verge برای نصب مجدد سرویس سیستم به امتیازات مدیر نیاز دارد",
|
||||
"Update with Clash proxy successfully": "Update with Clash proxy successfully",
|
||||
"Update failed even with Clash proxy": "Update failed even with Clash proxy",
|
||||
"Profile Imported with Clash proxy": "Profile Imported with Clash proxy",
|
||||
"Pending": "Pending",
|
||||
"Yes": "Yes",
|
||||
"No": "No",
|
||||
"Failed": "Failed",
|
||||
"Completed": "Completed",
|
||||
"Disallowed ISP": "Disallowed ISP",
|
||||
"Originals Only": "Originals Only",
|
||||
"No (IP Banned By Disney+)": "No (IP Banned By Disney+)",
|
||||
"Unsupported Country/Region": "Unsupported Country/Region",
|
||||
"Failed (Network Connection)": "Failed (Network Connection)",
|
||||
"DashboardToggledTitle": "Dashboard Toggled",
|
||||
"DashboardToggledBody": "Dashboard visibility toggled by hotkey",
|
||||
"ClashModeChangedTitle": "Clash Mode Changed",
|
||||
"ClashModeChangedBody": "Switched to {mode} mode",
|
||||
"SystemProxyToggledTitle": "System Proxy Toggled",
|
||||
"SystemProxyToggledBody": "System proxy state toggled by hotkey",
|
||||
"TunModeToggledTitle": "TUN Mode Toggled",
|
||||
"TunModeToggledBody": "TUN mode toggled by hotkey",
|
||||
"LightweightModeEnteredTitle": "Lightweight Mode",
|
||||
"LightweightModeEnteredBody": "Entered lightweight mode by hotkey",
|
||||
"AppQuitTitle": "APP Quit",
|
||||
"AppQuitBody": "APP quit by hotkey",
|
||||
"AppHiddenTitle": "APP Hidden",
|
||||
"AppHiddenBody": "APP window hidden by hotkey",
|
||||
"Configuration saved successfully": "Configuration saved successfully",
|
||||
"Failed to save configuration": "Failed to save configuration",
|
||||
"Open App Log": "Open App Log",
|
||||
"Open Core Log": "Open Core Log",
|
||||
"common": {
|
||||
"editorModes": {
|
||||
"visualization": "تجسم",
|
||||
@@ -856,7 +721,9 @@
|
||||
},
|
||||
"common": {
|
||||
"notifications": {
|
||||
"copySuccess": "کپی با موفقیت انجام شد"
|
||||
"copySuccess": "کپی با موفقیت انجام شد",
|
||||
"saveSuccess": "Configuration saved successfully",
|
||||
"saveFailed": "Failed to save configuration"
|
||||
}
|
||||
},
|
||||
"misc": {
|
||||
@@ -1122,6 +989,18 @@
|
||||
"testAll": "آزمون همه",
|
||||
"new": "جدید"
|
||||
}
|
||||
},
|
||||
"statuses": {
|
||||
"pending": "Pending",
|
||||
"yes": "Yes",
|
||||
"no": "No",
|
||||
"failed": "Failed",
|
||||
"completed": "Completed",
|
||||
"disallowedIsp": "Disallowed ISP",
|
||||
"originalsOnly": "Originals Only",
|
||||
"noDisney": "No (IP Banned By Disney+)",
|
||||
"unsupportedRegion": "Unsupported Country/Region",
|
||||
"failedNetwork": "Failed (Network Connection)"
|
||||
}
|
||||
},
|
||||
"proxies": {
|
||||
@@ -1237,6 +1116,11 @@
|
||||
"forceRefreshCompleted": "Force refresh completed",
|
||||
"emergencyRefreshFailed": "Emergency refresh failed: {{message}}"
|
||||
}
|
||||
},
|
||||
"notifications": {
|
||||
"importSuccess": "پروفایل با موفقیت وارد شد",
|
||||
"importSubscriptionSuccess": "وارد کردن اشتراک با موفقیت انجام شد",
|
||||
"importWithClashProxy": "Profile Imported with Clash proxy"
|
||||
}
|
||||
},
|
||||
"connections": {
|
||||
@@ -1292,5 +1176,79 @@
|
||||
"memoryUsage": "استفاده از حافظه"
|
||||
}
|
||||
}
|
||||
},
|
||||
"proxy": {
|
||||
"strategies": {
|
||||
"select": "انتخاب پروکسی به صورت دستی",
|
||||
"url-test": "انتخاب پروکسی بر اساس تأخیر آزمایش URL",
|
||||
"fallback": "تعویض به پروکسی دیگر در صورت بروز خطا",
|
||||
"load-balance": "توزیع پراکسی بر اساس توازن بار",
|
||||
"relay": "عبور از زنجیره پروکسی تعریف شده"
|
||||
}
|
||||
},
|
||||
"system": {
|
||||
"notifications": {
|
||||
"tunMode": {
|
||||
"autoDisabled": "TUN Mode automatically disabled due to service unavailable",
|
||||
"autoDisableFailed": "Failed to disable TUN Mode automatically"
|
||||
}
|
||||
},
|
||||
"labels": {
|
||||
"releaseVersion": "نسخه نهایی",
|
||||
"alphaVersion": "نسخه آلفا"
|
||||
}
|
||||
},
|
||||
"core": {
|
||||
"status": {
|
||||
"stopping": "Stopping Core...",
|
||||
"restarting": "Restarting Core..."
|
||||
},
|
||||
"notifications": {
|
||||
"changeSuccess": "هسته با موفقیت تغییر کرد",
|
||||
"changeFailed": "تغییر هسته ناموفق بود"
|
||||
}
|
||||
},
|
||||
"service": {
|
||||
"status": {
|
||||
"installing": "در حال نصب سرویس...",
|
||||
"uninstalling": "Uninstalling Service..."
|
||||
},
|
||||
"notifications": {
|
||||
"installSuccess": "سرویس با موفقیت نصب شد",
|
||||
"uninstallSuccess": "سرویس با موفقیت حذف نصب شد"
|
||||
}
|
||||
},
|
||||
"validation": {
|
||||
"config": {
|
||||
"failed": "اعتبارسنجی پیکربندی اشتراک ناموفق بود، فایل پیکربندی را بررسی کنید، تغییرات برگشت داده شد، جزئیات خطا:",
|
||||
"bootFailed": "اعتبارسنجی پیکربندی هنگام راهاندازی ناموفق بود، پیکربندی پیشفرض استفاده شد، فایل پیکربندی را بررسی کنید، جزئیات خطا:",
|
||||
"coreChangeFailed": "اعتبارسنجی پیکربندی هنگام تغییر هسته ناموفق بود، پیکربندی پیشفرض استفاده شد، فایل پیکربندی را بررسی کنید، جزئیات خطا:",
|
||||
"processTerminated": "فرآیند اعتبارسنجی متوقف شد"
|
||||
},
|
||||
"script": {
|
||||
"syntaxError": "خطای نحوی اسکریپت، تغییرات برگشت داده شد",
|
||||
"missingMain": "خطای اسکریپت، تغییرات برگشت داده شد",
|
||||
"fileNotFound": "فایل یافت نشد، تغییرات برگشت داده شد",
|
||||
"fileError": "خطای فایل اسکریپت، تغییرات برگشت داده شد"
|
||||
},
|
||||
"yaml": {
|
||||
"syntaxError": "YAML syntax error, changes reverted",
|
||||
"readError": "YAML read error, changes reverted",
|
||||
"mappingError": "YAML mapping error, changes reverted",
|
||||
"keyError": "YAML key error, changes reverted",
|
||||
"generalError": "YAML error, changes reverted"
|
||||
},
|
||||
"merge": {
|
||||
"syntaxError": "Merge file syntax error, changes reverted",
|
||||
"mappingError": "Merge file mapping error, changes reverted",
|
||||
"keyError": "Merge file key error, changes reverted",
|
||||
"generalError": "Merge file error, changes reverted"
|
||||
}
|
||||
},
|
||||
"updates": {
|
||||
"notifications": {
|
||||
"withClashProxySuccess": "Update with Clash proxy successfully",
|
||||
"withClashProxyFailed": "Update failed even with Clash proxy"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,139 +1,4 @@
|
||||
{
|
||||
"Proxies": "Proksi",
|
||||
"rule": "aturan",
|
||||
"global": "global",
|
||||
"direct": "langsung",
|
||||
"script": "skrip",
|
||||
"DOMAIN": "Cocok dengan nama domain lengkap",
|
||||
"DOMAIN-SUFFIX": "Cocok dengan sufiks domain",
|
||||
"DOMAIN-KEYWORD": "Cocok dengan kata kunci domain",
|
||||
"DOMAIN-REGEX": "Cocok dengan domain menggunakan ekspresi reguler",
|
||||
"GEOSITE": "Cocok dengan domain dalam Geosite",
|
||||
"GEOIP": "Cocok dengan kode negara alamat IP",
|
||||
"SRC-GEOIP": "Cocok dengan kode negara alamat IP sumber",
|
||||
"IP-ASN": "Cocok dengan ASN alamat IP",
|
||||
"SRC-IP-ASN": "Cocok dengan ASN alamat IP sumber",
|
||||
"IP-CIDR": "Cocok dengan rentang alamat IP",
|
||||
"IP-CIDR6": "Cocok dengan rentang alamat IPv6",
|
||||
"SRC-IP-CIDR": "Cocok dengan rentang alamat IP sumber",
|
||||
"IP-SUFFIX": "Cocok dengan rentang sufiks alamat IP",
|
||||
"SRC-IP-SUFFIX": "Cocok dengan rentang sufiks alamat IP sumber",
|
||||
"SRC-PORT": "Cocok dengan rentang port sumber",
|
||||
"DST-PORT": "Cocok dengan rentang port tujuan",
|
||||
"IN-PORT": "Cocok dengan port masuk",
|
||||
"DSCP": "Penandaan DSCP (hanya untuk tproxy UDP masuk)",
|
||||
"PROCESS-NAME": "Cocok dengan nama proses (nama paket Android)",
|
||||
"PROCESS-PATH": "Cocok dengan jalur proses lengkap",
|
||||
"PROCESS-NAME-REGEX": "Cocok dengan nama proses lengkap menggunakan ekspresi reguler (nama paket Android)",
|
||||
"PROCESS-PATH-REGEX": "Cocok dengan jalur proses lengkap menggunakan ekspresi reguler",
|
||||
"NETWORK": "Cocok dengan protokol transportasi (tcp/udp)",
|
||||
"UID": "Cocok dengan ID PENGGUNA Linux",
|
||||
"IN-TYPE": "Cocok dengan jenis masuk",
|
||||
"IN-USER": "Cocok dengan nama pengguna masuk",
|
||||
"IN-NAME": "Cocok dengan nama masuk",
|
||||
"SUB-RULE": "Sub-aturan",
|
||||
"RULE-SET": "Cocok dengan set aturan",
|
||||
"AND": "Logika DAN",
|
||||
"OR": "Logika ATAU",
|
||||
"NOT": "Logika TIDAK",
|
||||
"MATCH": "Cocok dengan semua permintaan",
|
||||
"DIRECT": "Data langsung keluar",
|
||||
"REJECT": "Mencegat permintaan",
|
||||
"REJECT-DROP": "Membuang permintaan",
|
||||
"PASS": "Lewati aturan ini saat cocok",
|
||||
"select": "Pilih proksi secara manual",
|
||||
"url-test": "Pilih proksi berdasarkan keterlambatan tes URL",
|
||||
"fallback": "Beralih ke proksi lain saat terjadi kesalahan",
|
||||
"load-balance": "Distribusikan proksi berdasarkan penyeimbangan beban",
|
||||
"relay": "Lewatkan melalui rantai proksi yang ditentukan",
|
||||
"Timeout": "Waktu Habis",
|
||||
"Type": "Jenis",
|
||||
"Close All Connections": "Close All Connections",
|
||||
"Rule": "Aturan",
|
||||
"TUN Mode automatically disabled due to service unavailable": "TUN Mode automatically disabled due to service unavailable",
|
||||
"Failed to disable TUN Mode automatically": "Failed to disable TUN Mode automatically",
|
||||
"active": "aktif",
|
||||
"unknown": "tidak diketahui",
|
||||
"Install": "Instal",
|
||||
"Uninstall": "Copot",
|
||||
"System Proxy": "Proksi Sistem",
|
||||
"Release Version": "Versi Rilis",
|
||||
"Alpha Version": "Versi Alpha",
|
||||
"theme.light": "Terang",
|
||||
"theme.dark": "Gelap",
|
||||
"theme.system": "Sistem",
|
||||
"Exit": "Keluar",
|
||||
"Profile Imported Successfully": "Profil Berhasil Diimpor",
|
||||
"Stopping Core...": "Stopping Core...",
|
||||
"Restarting Core...": "Restarting Core...",
|
||||
"Installing Service...": "Memasang Layanan...",
|
||||
"Uninstalling Service...": "Uninstalling Service...",
|
||||
"Service Installed Successfully": "Layanan Berhasil Diinstal",
|
||||
"Service Uninstalled Successfully": "Layanan Berhasil Dicopot",
|
||||
"Import Subscription Successful": "Berlangganan Berhasil Diimpor",
|
||||
"Profile": "Profil",
|
||||
"Dashboard": "Dasbor",
|
||||
"Restart App": "Mulai Ulang Aplikasi",
|
||||
"Restart Clash Core": "Mulai Ulang Core Clash",
|
||||
"TUN Mode": "Mode TUN",
|
||||
"Copy Env": "Salin Env",
|
||||
"Conf Dir": "Direktori Konfigurasi",
|
||||
"Core Dir": "Direktori Core",
|
||||
"Logs Dir": "Direktori Log",
|
||||
"Open Dir": "Buka Direktori",
|
||||
"More": "Lainnya",
|
||||
"LightWeight Mode": "Mode Ringan",
|
||||
"Config Validation Failed": "Validasi konfigurasi langganan gagal, periksa file konfigurasi, perubahan dibatalkan, detail kesalahan:",
|
||||
"Boot Config Validation Failed": "Validasi konfigurasi saat boot gagal, menggunakan konfigurasi default, periksa file konfigurasi, detail kesalahan:",
|
||||
"Core Change Config Validation Failed": "Validasi konfigurasi saat ganti inti gagal, menggunakan konfigurasi default, periksa file konfigurasi, detail kesalahan:",
|
||||
"Config Validation Process Terminated": "Proses validasi dihentikan",
|
||||
"Script Syntax Error": "Kesalahan sintaks skrip, perubahan dibatalkan",
|
||||
"Script Missing Main": "Kesalahan skrip, perubahan dibatalkan",
|
||||
"File Not Found": "File tidak ditemukan, perubahan dibatalkan",
|
||||
"Script File Error": "Kesalahan file skrip, perubahan dibatalkan",
|
||||
"Core Changed Successfully": "Inti berhasil diubah",
|
||||
"Failed to Change Core": "Gagal mengubah inti",
|
||||
"YAML Syntax Error": "YAML syntax error, changes reverted",
|
||||
"YAML Read Error": "YAML read error, changes reverted",
|
||||
"YAML Mapping Error": "YAML mapping error, changes reverted",
|
||||
"YAML Key Error": "YAML key error, changes reverted",
|
||||
"YAML Error": "YAML error, changes reverted",
|
||||
"Merge File Syntax Error": "Merge file syntax error, changes reverted",
|
||||
"Merge File Mapping Error": "Merge file mapping error, changes reverted",
|
||||
"Merge File Key Error": "Merge file key error, changes reverted",
|
||||
"Merge File Error": "Merge file error, changes reverted",
|
||||
"Service Administrator Prompt": "Clash Verge memerlukan hak administrator untuk menginstal ulang layanan sistem",
|
||||
"Update with Clash proxy successfully": "Update with Clash proxy successfully",
|
||||
"Update failed even with Clash proxy": "Update failed even with Clash proxy",
|
||||
"Profile Imported with Clash proxy": "Profile Imported with Clash proxy",
|
||||
"Pending": "Pending",
|
||||
"Yes": "Yes",
|
||||
"No": "No",
|
||||
"Failed": "Failed",
|
||||
"Completed": "Completed",
|
||||
"Disallowed ISP": "Disallowed ISP",
|
||||
"Originals Only": "Originals Only",
|
||||
"No (IP Banned By Disney+)": "No (IP Banned By Disney+)",
|
||||
"Unsupported Country/Region": "Unsupported Country/Region",
|
||||
"Failed (Network Connection)": "Failed (Network Connection)",
|
||||
"DashboardToggledTitle": "Dashboard Toggled",
|
||||
"DashboardToggledBody": "Dashboard visibility toggled by hotkey",
|
||||
"ClashModeChangedTitle": "Clash Mode Changed",
|
||||
"ClashModeChangedBody": "Switched to {mode} mode",
|
||||
"SystemProxyToggledTitle": "System Proxy Toggled",
|
||||
"SystemProxyToggledBody": "System proxy state toggled by hotkey",
|
||||
"TunModeToggledTitle": "TUN Mode Toggled",
|
||||
"TunModeToggledBody": "TUN mode toggled by hotkey",
|
||||
"LightweightModeEnteredTitle": "Lightweight Mode",
|
||||
"LightweightModeEnteredBody": "Entered lightweight mode by hotkey",
|
||||
"AppQuitTitle": "APP Quit",
|
||||
"AppQuitBody": "APP quit by hotkey",
|
||||
"AppHiddenTitle": "APP Hidden",
|
||||
"AppHiddenBody": "APP window hidden by hotkey",
|
||||
"Configuration saved successfully": "Configuration saved successfully",
|
||||
"Failed to save configuration": "Failed to save configuration",
|
||||
"Open App Log": "Open App Log",
|
||||
"Open Core Log": "Open Core Log",
|
||||
"common": {
|
||||
"editorModes": {
|
||||
"visualization": "Visualisasi",
|
||||
@@ -856,7 +721,9 @@
|
||||
},
|
||||
"common": {
|
||||
"notifications": {
|
||||
"copySuccess": "Salin Berhasil"
|
||||
"copySuccess": "Salin Berhasil",
|
||||
"saveSuccess": "Configuration saved successfully",
|
||||
"saveFailed": "Failed to save configuration"
|
||||
}
|
||||
},
|
||||
"misc": {
|
||||
@@ -1122,6 +989,18 @@
|
||||
"testAll": "Tes Semua",
|
||||
"new": "Baru"
|
||||
}
|
||||
},
|
||||
"statuses": {
|
||||
"pending": "Pending",
|
||||
"yes": "Yes",
|
||||
"no": "No",
|
||||
"failed": "Failed",
|
||||
"completed": "Completed",
|
||||
"disallowedIsp": "Disallowed ISP",
|
||||
"originalsOnly": "Originals Only",
|
||||
"noDisney": "No (IP Banned By Disney+)",
|
||||
"unsupportedRegion": "Unsupported Country/Region",
|
||||
"failedNetwork": "Failed (Network Connection)"
|
||||
}
|
||||
},
|
||||
"proxies": {
|
||||
@@ -1237,6 +1116,11 @@
|
||||
"forceRefreshCompleted": "Force refresh completed",
|
||||
"emergencyRefreshFailed": "Emergency refresh failed: {{message}}"
|
||||
}
|
||||
},
|
||||
"notifications": {
|
||||
"importSuccess": "Profil Berhasil Diimpor",
|
||||
"importSubscriptionSuccess": "Berlangganan Berhasil Diimpor",
|
||||
"importWithClashProxy": "Profile Imported with Clash proxy"
|
||||
}
|
||||
},
|
||||
"connections": {
|
||||
@@ -1292,5 +1176,79 @@
|
||||
"memoryUsage": "Penggunaan Memori"
|
||||
}
|
||||
}
|
||||
},
|
||||
"proxy": {
|
||||
"strategies": {
|
||||
"select": "Pilih proksi secara manual",
|
||||
"url-test": "Pilih proksi berdasarkan keterlambatan tes URL",
|
||||
"fallback": "Beralih ke proksi lain saat terjadi kesalahan",
|
||||
"load-balance": "Distribusikan proksi berdasarkan penyeimbangan beban",
|
||||
"relay": "Lewatkan melalui rantai proksi yang ditentukan"
|
||||
}
|
||||
},
|
||||
"system": {
|
||||
"notifications": {
|
||||
"tunMode": {
|
||||
"autoDisabled": "TUN Mode automatically disabled due to service unavailable",
|
||||
"autoDisableFailed": "Failed to disable TUN Mode automatically"
|
||||
}
|
||||
},
|
||||
"labels": {
|
||||
"releaseVersion": "Versi Rilis",
|
||||
"alphaVersion": "Versi Alpha"
|
||||
}
|
||||
},
|
||||
"core": {
|
||||
"status": {
|
||||
"stopping": "Stopping Core...",
|
||||
"restarting": "Restarting Core..."
|
||||
},
|
||||
"notifications": {
|
||||
"changeSuccess": "Inti berhasil diubah",
|
||||
"changeFailed": "Gagal mengubah inti"
|
||||
}
|
||||
},
|
||||
"service": {
|
||||
"status": {
|
||||
"installing": "Memasang Layanan...",
|
||||
"uninstalling": "Uninstalling Service..."
|
||||
},
|
||||
"notifications": {
|
||||
"installSuccess": "Layanan Berhasil Diinstal",
|
||||
"uninstallSuccess": "Layanan Berhasil Dicopot"
|
||||
}
|
||||
},
|
||||
"validation": {
|
||||
"config": {
|
||||
"failed": "Validasi konfigurasi langganan gagal, periksa file konfigurasi, perubahan dibatalkan, detail kesalahan:",
|
||||
"bootFailed": "Validasi konfigurasi saat boot gagal, menggunakan konfigurasi default, periksa file konfigurasi, detail kesalahan:",
|
||||
"coreChangeFailed": "Validasi konfigurasi saat ganti inti gagal, menggunakan konfigurasi default, periksa file konfigurasi, detail kesalahan:",
|
||||
"processTerminated": "Proses validasi dihentikan"
|
||||
},
|
||||
"script": {
|
||||
"syntaxError": "Kesalahan sintaks skrip, perubahan dibatalkan",
|
||||
"missingMain": "Kesalahan skrip, perubahan dibatalkan",
|
||||
"fileNotFound": "File tidak ditemukan, perubahan dibatalkan",
|
||||
"fileError": "Kesalahan file skrip, perubahan dibatalkan"
|
||||
},
|
||||
"yaml": {
|
||||
"syntaxError": "YAML syntax error, changes reverted",
|
||||
"readError": "YAML read error, changes reverted",
|
||||
"mappingError": "YAML mapping error, changes reverted",
|
||||
"keyError": "YAML key error, changes reverted",
|
||||
"generalError": "YAML error, changes reverted"
|
||||
},
|
||||
"merge": {
|
||||
"syntaxError": "Merge file syntax error, changes reverted",
|
||||
"mappingError": "Merge file mapping error, changes reverted",
|
||||
"keyError": "Merge file key error, changes reverted",
|
||||
"generalError": "Merge file error, changes reverted"
|
||||
}
|
||||
},
|
||||
"updates": {
|
||||
"notifications": {
|
||||
"withClashProxySuccess": "Update with Clash proxy successfully",
|
||||
"withClashProxyFailed": "Update failed even with Clash proxy"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,139 +1,4 @@
|
||||
{
|
||||
"Proxies": "Proxies",
|
||||
"rule": "ルール",
|
||||
"global": "グローバル",
|
||||
"direct": "直接接続",
|
||||
"script": "スクリプト",
|
||||
"DOMAIN": "完全なドメイン名を一致させる",
|
||||
"DOMAIN-SUFFIX": "ドメインサフィックスを一致させる",
|
||||
"DOMAIN-KEYWORD": "ドメインキーワードを一致させる",
|
||||
"DOMAIN-REGEX": "ドメイン正規表現を一致させる",
|
||||
"GEOSITE": "Geosite内のドメインを一致させる",
|
||||
"GEOIP": "IPの所属国コードを一致させる",
|
||||
"SRC-GEOIP": "送信元IPの所属国コードを一致させる",
|
||||
"IP-ASN": "IPの所属ASNを一致させる",
|
||||
"SRC-IP-ASN": "送信元IPの所属ASNを一致させる",
|
||||
"IP-CIDR": "IPアドレス範囲を一致させる",
|
||||
"IP-CIDR6": "IPアドレス範囲を一致させる",
|
||||
"SRC-IP-CIDR": "送信元IPアドレス範囲を一致させる",
|
||||
"IP-SUFFIX": "IPサフィックス範囲を一致させる",
|
||||
"SRC-IP-SUFFIX": "送信元IPサフィックス範囲を一致させる",
|
||||
"SRC-PORT": "送信元ポート範囲を一致させる",
|
||||
"DST-PORT": "宛先ポート範囲を一致させる",
|
||||
"IN-PORT": "入力ポートを一致させる",
|
||||
"DSCP": "DSCPマーク(TPROXY UDP入力のみ)",
|
||||
"PROCESS-NAME": "プロセス名を一致させる(Androidパッケージ名)",
|
||||
"PROCESS-PATH": "完全なプロセスパスを一致させる",
|
||||
"PROCESS-NAME-REGEX": "完全なプロセス名を正規表現で一致させる(Androidパッケージ名)",
|
||||
"PROCESS-PATH-REGEX": "完全なプロセスパスを正規表現で一致させる",
|
||||
"NETWORK": "トランスポートプロトコルを一致させる (TCP/UDP)",
|
||||
"UID": "LinuxユーザーIDを一致させる",
|
||||
"IN-TYPE": "入力タイプを一致させる",
|
||||
"IN-USER": "入力ユーザー名を一致させる",
|
||||
"IN-NAME": "入力名を一致させる",
|
||||
"SUB-RULE": "サブルール",
|
||||
"RULE-SET": "ルールセットを一致させる",
|
||||
"AND": "論理積",
|
||||
"OR": "論理和",
|
||||
"NOT": "論理否定",
|
||||
"MATCH": "すべてのリクエストを一致させる",
|
||||
"DIRECT": "直接接続",
|
||||
"REJECT": "リクエストを拒否",
|
||||
"REJECT-DROP": "リクエストを破棄",
|
||||
"PASS": "このルールをスキップ",
|
||||
"select": "手動でプロキシを選択",
|
||||
"url-test": "URLテストによる遅延でプロキシを選択",
|
||||
"fallback": "利用不可の場合は別のプロキシに切り替える",
|
||||
"load-balance": "負荷分散によりプロキシを割り当てる",
|
||||
"relay": "定義されたプロキシチェーンに沿って転送する",
|
||||
"Timeout": "タイムアウト時間",
|
||||
"Type": "タイプ",
|
||||
"Close All Connections": "Close All Connections",
|
||||
"Rule": "ルール",
|
||||
"TUN Mode automatically disabled due to service unavailable": "TUN Mode automatically disabled due to service unavailable",
|
||||
"Failed to disable TUN Mode automatically": "Failed to disable TUN Mode automatically",
|
||||
"active": "アクティブ",
|
||||
"unknown": "不明",
|
||||
"Install": "インストール",
|
||||
"Uninstall": "アンインストール",
|
||||
"System Proxy": "システムプロキシ",
|
||||
"Release Version": "正式版",
|
||||
"Alpha Version": "プレビュー版",
|
||||
"theme.light": "ライト",
|
||||
"theme.dark": "ダーク",
|
||||
"theme.system": "システム",
|
||||
"Exit": "終了",
|
||||
"Profile Imported Successfully": "プロファイルのインポートに成功しました。",
|
||||
"Stopping Core...": "コアを停止中...",
|
||||
"Restarting Core...": "コアを再起動中...",
|
||||
"Installing Service...": "サービスをインストール中...",
|
||||
"Uninstalling Service...": "サービスをアンインストール中...",
|
||||
"Service Installed Successfully": "サービスのインストールに成功しました。",
|
||||
"Service Uninstalled Successfully": "サービスのアンインストールに成功しました。",
|
||||
"Import Subscription Successful": "サブスクリプションのインポートに成功しました。",
|
||||
"Profile": "プロファイル",
|
||||
"Dashboard": "ダッシュボード",
|
||||
"Restart App": "アプリケーションを再起動",
|
||||
"Restart Clash Core": "Clashコアを再起動",
|
||||
"TUN Mode": "TUNモード",
|
||||
"Copy Env": "環境変数をコピー",
|
||||
"Conf Dir": "設定ディレクトリ",
|
||||
"Core Dir": "コアディレクトリ",
|
||||
"Logs Dir": "ログディレクトリ",
|
||||
"Open Dir": "ディレクトリを開く",
|
||||
"More": "もっと見る",
|
||||
"LightWeight Mode": "軽量モード",
|
||||
"Config Validation Failed": "プロファイル設定の検証に失敗しました。プロファイル設定ファイルを確認してください。変更は取り消されました。エラー詳細:",
|
||||
"Boot Config Validation Failed": "起動時のプロファイル設定の検証に失敗しました。デフォルト設定で起動しました。プロファイル設定ファイルを確認してください。エラー詳細:",
|
||||
"Core Change Config Validation Failed": "コアを切り替える際の設定検証に失敗しました。デフォルト設定で起動しました。プロファイル設定ファイルを確認してください。エラー詳細:",
|
||||
"Config Validation Process Terminated": "検証プロセスが中断されました。",
|
||||
"Script Syntax Error": "スクリプトの構文エラーがあります。変更は取り消されました。",
|
||||
"Script Missing Main": "スクリプトにメイン関数がありません。変更は取り消されました。",
|
||||
"File Not Found": "ファイルが見つかりません。変更は取り消されました。",
|
||||
"Script File Error": "スクリプトファイルにエラーがあります。変更は取り消されました。",
|
||||
"Core Changed Successfully": "コアの切り替えに成功しました。",
|
||||
"Failed to Change Core": "コアの切り替えに失敗しました。",
|
||||
"YAML Syntax Error": "YAML構文エラーがあります。変更は取り消されました。",
|
||||
"YAML Read Error": "YAMLファイルの読み取りエラーがあります。変更は取り消されました。",
|
||||
"YAML Mapping Error": "YAMLマッピングエラーがあります。変更は取り消されました。",
|
||||
"YAML Key Error": "YAMLキーエラーがあります。変更は取り消されました。",
|
||||
"YAML Error": "YAMLエラーがあります。変更は取り消されました。",
|
||||
"Merge File Syntax Error": "上書きファイルの構文エラーがあります。変更は取り消されました。",
|
||||
"Merge File Mapping Error": "上書きファイルのマッピングエラーがあります。変更は取り消されました。",
|
||||
"Merge File Key Error": "上書きファイルのキーエラーがあります。変更は取り消されました。",
|
||||
"Merge File Error": "上書きファイルにエラーがあります。変更は取り消されました。",
|
||||
"Service Administrator Prompt": "Clash Vergeはシステムサービスをインストールするために管理者権限が必要です。",
|
||||
"Update with Clash proxy successfully": "Clashプロキシを使用して更新に成功しました。",
|
||||
"Update failed even with Clash proxy": "Clashプロキシを使用しても更新に失敗しました。",
|
||||
"Profile Imported with Clash proxy": "Clashプロキシを使用してプロファイルのインポートに成功しました。",
|
||||
"Pending": "検査待ち",
|
||||
"Yes": "サポートする",
|
||||
"No": "サポートしない",
|
||||
"Failed": "テストに失敗しました。",
|
||||
"Completed": "検査完了",
|
||||
"Disallowed ISP": "許可されていないインターネットサービスプロバイダー",
|
||||
"Originals Only": "オリジナルのみ",
|
||||
"No (IP Banned By Disney+)": "No (IP Banned By Disney+)",
|
||||
"Unsupported Country/Region": "サポートされていない国/地域",
|
||||
"Failed (Network Connection)": "Failed (Network Connection)",
|
||||
"DashboardToggledTitle": "Dashboard Toggled",
|
||||
"DashboardToggledBody": "Dashboard visibility toggled by hotkey",
|
||||
"ClashModeChangedTitle": "Clash Mode Changed",
|
||||
"ClashModeChangedBody": "Switched to {mode} mode",
|
||||
"SystemProxyToggledTitle": "System Proxy Toggled",
|
||||
"SystemProxyToggledBody": "System proxy state toggled by hotkey",
|
||||
"TunModeToggledTitle": "TUN Mode Toggled",
|
||||
"TunModeToggledBody": "TUN mode toggled by hotkey",
|
||||
"LightweightModeEnteredTitle": "Lightweight Mode",
|
||||
"LightweightModeEnteredBody": "Entered lightweight mode by hotkey",
|
||||
"AppQuitTitle": "APP Quit",
|
||||
"AppQuitBody": "APP quit by hotkey",
|
||||
"AppHiddenTitle": "APP Hidden",
|
||||
"AppHiddenBody": "APP window hidden by hotkey",
|
||||
"Configuration saved successfully": "ランダム設定を保存完了",
|
||||
"Failed to save configuration": "Failed to save configuration",
|
||||
"Open App Log": "Open App Log",
|
||||
"Open Core Log": "Open Core Log",
|
||||
"common": {
|
||||
"editorModes": {
|
||||
"visualization": "可視化",
|
||||
@@ -856,7 +721,9 @@
|
||||
},
|
||||
"common": {
|
||||
"notifications": {
|
||||
"copySuccess": "コピー成功"
|
||||
"copySuccess": "コピー成功",
|
||||
"saveSuccess": "ランダム設定を保存完了",
|
||||
"saveFailed": "Failed to save configuration"
|
||||
}
|
||||
},
|
||||
"misc": {
|
||||
@@ -1122,6 +989,18 @@
|
||||
"testAll": "すべてテスト",
|
||||
"new": "新規作成"
|
||||
}
|
||||
},
|
||||
"statuses": {
|
||||
"pending": "検査待ち",
|
||||
"yes": "サポートする",
|
||||
"no": "サポートしない",
|
||||
"failed": "テストに失敗しました。",
|
||||
"completed": "検査完了",
|
||||
"disallowedIsp": "許可されていないインターネットサービスプロバイダー",
|
||||
"originalsOnly": "オリジナルのみ",
|
||||
"noDisney": "No (IP Banned By Disney+)",
|
||||
"unsupportedRegion": "サポートされていない国/地域",
|
||||
"failedNetwork": "Failed (Network Connection)"
|
||||
}
|
||||
},
|
||||
"proxies": {
|
||||
@@ -1237,6 +1116,11 @@
|
||||
"forceRefreshCompleted": "Force refresh completed",
|
||||
"emergencyRefreshFailed": "Emergency refresh failed: {{message}}"
|
||||
}
|
||||
},
|
||||
"notifications": {
|
||||
"importSuccess": "プロファイルのインポートに成功しました。",
|
||||
"importSubscriptionSuccess": "サブスクリプションのインポートに成功しました。",
|
||||
"importWithClashProxy": "Clashプロキシを使用してプロファイルのインポートに成功しました。"
|
||||
}
|
||||
},
|
||||
"connections": {
|
||||
@@ -1292,5 +1176,79 @@
|
||||
"memoryUsage": "コアメモリ使用量"
|
||||
}
|
||||
}
|
||||
},
|
||||
"proxy": {
|
||||
"strategies": {
|
||||
"select": "手動でプロキシを選択",
|
||||
"url-test": "URLテストによる遅延でプロキシを選択",
|
||||
"fallback": "利用不可の場合は別のプロキシに切り替える",
|
||||
"load-balance": "負荷分散によりプロキシを割り当てる",
|
||||
"relay": "定義されたプロキシチェーンに沿って転送する"
|
||||
}
|
||||
},
|
||||
"system": {
|
||||
"notifications": {
|
||||
"tunMode": {
|
||||
"autoDisabled": "TUN Mode automatically disabled due to service unavailable",
|
||||
"autoDisableFailed": "Failed to disable TUN Mode automatically"
|
||||
}
|
||||
},
|
||||
"labels": {
|
||||
"releaseVersion": "正式版",
|
||||
"alphaVersion": "プレビュー版"
|
||||
}
|
||||
},
|
||||
"core": {
|
||||
"status": {
|
||||
"stopping": "コアを停止中...",
|
||||
"restarting": "コアを再起動中..."
|
||||
},
|
||||
"notifications": {
|
||||
"changeSuccess": "コアの切り替えに成功しました。",
|
||||
"changeFailed": "コアの切り替えに失敗しました。"
|
||||
}
|
||||
},
|
||||
"service": {
|
||||
"status": {
|
||||
"installing": "サービスをインストール中...",
|
||||
"uninstalling": "サービスをアンインストール中..."
|
||||
},
|
||||
"notifications": {
|
||||
"installSuccess": "サービスのインストールに成功しました。",
|
||||
"uninstallSuccess": "サービスのアンインストールに成功しました。"
|
||||
}
|
||||
},
|
||||
"validation": {
|
||||
"config": {
|
||||
"failed": "プロファイル設定の検証に失敗しました。プロファイル設定ファイルを確認してください。変更は取り消されました。エラー詳細:",
|
||||
"bootFailed": "起動時のプロファイル設定の検証に失敗しました。デフォルト設定で起動しました。プロファイル設定ファイルを確認してください。エラー詳細:",
|
||||
"coreChangeFailed": "コアを切り替える際の設定検証に失敗しました。デフォルト設定で起動しました。プロファイル設定ファイルを確認してください。エラー詳細:",
|
||||
"processTerminated": "検証プロセスが中断されました。"
|
||||
},
|
||||
"script": {
|
||||
"syntaxError": "スクリプトの構文エラーがあります。変更は取り消されました。",
|
||||
"missingMain": "スクリプトにメイン関数がありません。変更は取り消されました。",
|
||||
"fileNotFound": "ファイルが見つかりません。変更は取り消されました。",
|
||||
"fileError": "スクリプトファイルにエラーがあります。変更は取り消されました。"
|
||||
},
|
||||
"yaml": {
|
||||
"syntaxError": "YAML構文エラーがあります。変更は取り消されました。",
|
||||
"readError": "YAMLファイルの読み取りエラーがあります。変更は取り消されました。",
|
||||
"mappingError": "YAMLマッピングエラーがあります。変更は取り消されました。",
|
||||
"keyError": "YAMLキーエラーがあります。変更は取り消されました。",
|
||||
"generalError": "YAMLエラーがあります。変更は取り消されました。"
|
||||
},
|
||||
"merge": {
|
||||
"syntaxError": "上書きファイルの構文エラーがあります。変更は取り消されました。",
|
||||
"mappingError": "上書きファイルのマッピングエラーがあります。変更は取り消されました。",
|
||||
"keyError": "上書きファイルのキーエラーがあります。変更は取り消されました。",
|
||||
"generalError": "上書きファイルにエラーがあります。変更は取り消されました。"
|
||||
}
|
||||
},
|
||||
"updates": {
|
||||
"notifications": {
|
||||
"withClashProxySuccess": "Clashプロキシを使用して更新に成功しました。",
|
||||
"withClashProxyFailed": "Clashプロキシを使用しても更新に失敗しました。"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,139 +1,4 @@
|
||||
{
|
||||
"Proxies": "프록시",
|
||||
"rule": "규칙",
|
||||
"global": "전역",
|
||||
"direct": "직접",
|
||||
"script": "스크립트",
|
||||
"DOMAIN": "전체 도메인 이름과 일치",
|
||||
"DOMAIN-SUFFIX": "도메인 접미사와 일치",
|
||||
"DOMAIN-KEYWORD": "도메인 키워드와 일치",
|
||||
"DOMAIN-REGEX": "정규 표현식을 사용한 도메인 일치",
|
||||
"GEOSITE": "Geosite 내의 도메인과 일치",
|
||||
"GEOIP": "IP 주소의 국가 코드와 일치",
|
||||
"SRC-GEOIP": "소스 IP 주소의 국가 코드와 일치",
|
||||
"IP-ASN": "IP 주소의 ASN과 일치",
|
||||
"SRC-IP-ASN": "소스 IP 주소의 ASN과 일치",
|
||||
"IP-CIDR": "IP 주소 범위와 일치",
|
||||
"IP-CIDR6": "IPv6 주소 범위와 일치",
|
||||
"SRC-IP-CIDR": "소스 IP 주소 범위와 일치",
|
||||
"IP-SUFFIX": "IP 주소 접미사 범위와 일치",
|
||||
"SRC-IP-SUFFIX": "소스 IP 주소 접미사 범위와 일치",
|
||||
"SRC-PORT": "소스 포트 범위와 일치",
|
||||
"DST-PORT": "대상 포트 범위와 일치",
|
||||
"IN-PORT": "인바운드 포트와 일치",
|
||||
"DSCP": "DSCP 마킹(tproxy UDP 인바운드만 해당)",
|
||||
"PROCESS-NAME": "프로세스 이름과 일치(안드로이드 패키지 이름)",
|
||||
"PROCESS-PATH": "전체 프로세스 경로와 일치",
|
||||
"PROCESS-NAME-REGEX": "정규 표현식을 사용한 전체 프로세스 이름 일치(안드로이드 패키지 이름)",
|
||||
"PROCESS-PATH-REGEX": "정규 표현식을 사용한 전체 프로세스 경로 일치",
|
||||
"NETWORK": "전송 프로토콜과 일치(tcp/udp)",
|
||||
"UID": "Linux 사용자 ID와 일치",
|
||||
"IN-TYPE": "인바운드 유형과 일치",
|
||||
"IN-USER": "인바운드 사용자 이름과 일치",
|
||||
"IN-NAME": "인바운드 이름과 일치",
|
||||
"SUB-RULE": "하위 규칙",
|
||||
"RULE-SET": "규칙 세트와 일치",
|
||||
"AND": "논리 AND",
|
||||
"OR": "논리 OR",
|
||||
"NOT": "논리 NOT",
|
||||
"MATCH": "모든 요청과 일치",
|
||||
"DIRECT": "데이터가 직접 아웃바운드로 이동",
|
||||
"REJECT": "요청 차단",
|
||||
"REJECT-DROP": "요청 폐기",
|
||||
"PASS": "일치할 경우 이 규칙 건너뛰기",
|
||||
"select": "수동으로 프록시 선택",
|
||||
"url-test": "URL 테스트 지연을 기준으로 프록시 선택",
|
||||
"fallback": "오류 발생 시 다른 프록시로 전환",
|
||||
"load-balance": "부하 분산에 따라 프록시 분배",
|
||||
"relay": "정의된 프록시 체인을 통과",
|
||||
"Timeout": "타임아웃",
|
||||
"Type": "유형",
|
||||
"Close All Connections": "Close All Connections",
|
||||
"Rule": "규칙",
|
||||
"TUN Mode automatically disabled due to service unavailable": "TUN Mode automatically disabled due to service unavailable",
|
||||
"Failed to disable TUN Mode automatically": "Failed to disable TUN Mode automatically",
|
||||
"active": "active",
|
||||
"unknown": "unknown",
|
||||
"Install": "Install",
|
||||
"Uninstall": "Uninstall",
|
||||
"System Proxy": "시스템 프록시",
|
||||
"Release Version": "Release Version",
|
||||
"Alpha Version": "Alpha Version",
|
||||
"theme.light": "Light",
|
||||
"theme.dark": "Dark",
|
||||
"theme.system": "System",
|
||||
"Exit": "Exit",
|
||||
"Profile Imported Successfully": "Profile Imported Successfully",
|
||||
"Stopping Core...": "Stopping Core...",
|
||||
"Restarting Core...": "Restarting Core...",
|
||||
"Installing Service...": "Installing Service...",
|
||||
"Uninstalling Service...": "Uninstalling Service...",
|
||||
"Service Installed Successfully": "Service Installed Successfully",
|
||||
"Service Uninstalled Successfully": "Service Uninstalled Successfully",
|
||||
"Import Subscription Successful": "구독 가져오기 성공",
|
||||
"Profile": "Profile",
|
||||
"Dashboard": "Dashboard",
|
||||
"Restart App": "Restart App",
|
||||
"Restart Clash Core": "Restart Clash Core",
|
||||
"TUN Mode": "TUN Mode",
|
||||
"Copy Env": "Copy Env",
|
||||
"Conf Dir": "Conf Dir",
|
||||
"Core Dir": "Core Dir",
|
||||
"Logs Dir": "Logs Dir",
|
||||
"Open Dir": "Open Dir",
|
||||
"More": "More",
|
||||
"LightWeight Mode": "Lightweight Mode",
|
||||
"Config Validation Failed": "설정 검증 실패",
|
||||
"Boot Config Validation Failed": "부팅 설정 검증 실패",
|
||||
"Core Change Config Validation Failed": "코어 변경 설정 검증 실패",
|
||||
"Config Validation Process Terminated": "설정 검증 프로세스 종료됨",
|
||||
"Script Syntax Error": "스크립트 구문 오류",
|
||||
"Script Missing Main": "스크립트 메인 없음",
|
||||
"File Not Found": "파일을 찾을 수 없음",
|
||||
"Script File Error": "스크립트 파일 오류",
|
||||
"Core Changed Successfully": "코어 변경 성공",
|
||||
"Failed to Change Core": "코어 변경 실패",
|
||||
"YAML Syntax Error": "YAML 구문 오류",
|
||||
"YAML Read Error": "YAML 읽기 오류",
|
||||
"YAML Mapping Error": "YAML 매핑 오류",
|
||||
"YAML Key Error": "YAML 키 오류",
|
||||
"YAML Error": "YAML 오류",
|
||||
"Merge File Syntax Error": "병합 파일 구문 오류",
|
||||
"Merge File Mapping Error": "병합 파일 매핑 오류",
|
||||
"Merge File Key Error": "병합 파일 키 오류",
|
||||
"Merge File Error": "병합 파일 오류",
|
||||
"Service Administrator Prompt": "Clash Verge requires administrator privileges to reinstall the system service",
|
||||
"Update with Clash proxy successfully": "Clash 프록시로 업데이트 성공",
|
||||
"Update failed even with Clash proxy": "Clash 프록시로도 업데이트 실패",
|
||||
"Profile Imported with Clash proxy": "Profile Imported with Clash proxy",
|
||||
"Pending": "Pending",
|
||||
"Yes": "Yes",
|
||||
"No": "No",
|
||||
"Failed": "실패",
|
||||
"Completed": "Completed",
|
||||
"Disallowed ISP": "Disallowed ISP",
|
||||
"Originals Only": "Originals Only",
|
||||
"No (IP Banned By Disney+)": "No (IP Banned By Disney+)",
|
||||
"Unsupported Country/Region": "Unsupported Country/Region",
|
||||
"Failed (Network Connection)": "Failed (Network Connection)",
|
||||
"DashboardToggledTitle": "Dashboard Toggled",
|
||||
"DashboardToggledBody": "Dashboard visibility toggled by hotkey",
|
||||
"ClashModeChangedTitle": "Clash Mode Changed",
|
||||
"ClashModeChangedBody": "Switched to {mode} mode",
|
||||
"SystemProxyToggledTitle": "System Proxy Toggled",
|
||||
"SystemProxyToggledBody": "System proxy state toggled by hotkey",
|
||||
"TunModeToggledTitle": "TUN Mode Toggled",
|
||||
"TunModeToggledBody": "TUN mode toggled by hotkey",
|
||||
"LightweightModeEnteredTitle": "Lightweight Mode",
|
||||
"LightweightModeEnteredBody": "Entered lightweight mode by hotkey",
|
||||
"AppQuitTitle": "APP Quit",
|
||||
"AppQuitBody": "APP quit by hotkey",
|
||||
"AppHiddenTitle": "APP Hidden",
|
||||
"AppHiddenBody": "APP window hidden by hotkey",
|
||||
"Configuration saved successfully": "Configuration saved successfully",
|
||||
"Failed to save configuration": "Failed to save configuration",
|
||||
"Open App Log": "Open App Log",
|
||||
"Open Core Log": "Open Core Log",
|
||||
"common": {
|
||||
"editorModes": {
|
||||
"visualization": "시각화",
|
||||
@@ -856,7 +721,9 @@
|
||||
},
|
||||
"common": {
|
||||
"notifications": {
|
||||
"copySuccess": "복사 성공"
|
||||
"copySuccess": "복사 성공",
|
||||
"saveSuccess": "Configuration saved successfully",
|
||||
"saveFailed": "Failed to save configuration"
|
||||
}
|
||||
},
|
||||
"misc": {
|
||||
@@ -1122,6 +989,18 @@
|
||||
"testAll": "모두 테스트",
|
||||
"new": "새로 만들기"
|
||||
}
|
||||
},
|
||||
"statuses": {
|
||||
"pending": "Pending",
|
||||
"yes": "Yes",
|
||||
"no": "No",
|
||||
"failed": "실패",
|
||||
"completed": "Completed",
|
||||
"disallowedIsp": "Disallowed ISP",
|
||||
"originalsOnly": "Originals Only",
|
||||
"noDisney": "No (IP Banned By Disney+)",
|
||||
"unsupportedRegion": "Unsupported Country/Region",
|
||||
"failedNetwork": "Failed (Network Connection)"
|
||||
}
|
||||
},
|
||||
"proxies": {
|
||||
@@ -1237,6 +1116,11 @@
|
||||
"forceRefreshCompleted": "Force refresh completed",
|
||||
"emergencyRefreshFailed": "Emergency refresh failed: {{message}}"
|
||||
}
|
||||
},
|
||||
"notifications": {
|
||||
"importSuccess": "Profile Imported Successfully",
|
||||
"importSubscriptionSuccess": "구독 가져오기 성공",
|
||||
"importWithClashProxy": "Profile Imported with Clash proxy"
|
||||
}
|
||||
},
|
||||
"connections": {
|
||||
@@ -1292,5 +1176,79 @@
|
||||
"memoryUsage": "메모리 사용량"
|
||||
}
|
||||
}
|
||||
},
|
||||
"proxy": {
|
||||
"strategies": {
|
||||
"select": "수동으로 프록시 선택",
|
||||
"url-test": "URL 테스트 지연을 기준으로 프록시 선택",
|
||||
"fallback": "오류 발생 시 다른 프록시로 전환",
|
||||
"load-balance": "부하 분산에 따라 프록시 분배",
|
||||
"relay": "정의된 프록시 체인을 통과"
|
||||
}
|
||||
},
|
||||
"system": {
|
||||
"notifications": {
|
||||
"tunMode": {
|
||||
"autoDisabled": "TUN Mode automatically disabled due to service unavailable",
|
||||
"autoDisableFailed": "Failed to disable TUN Mode automatically"
|
||||
}
|
||||
},
|
||||
"labels": {
|
||||
"releaseVersion": "Release Version",
|
||||
"alphaVersion": "Alpha Version"
|
||||
}
|
||||
},
|
||||
"core": {
|
||||
"status": {
|
||||
"stopping": "Stopping Core...",
|
||||
"restarting": "Restarting Core..."
|
||||
},
|
||||
"notifications": {
|
||||
"changeSuccess": "코어 변경 성공",
|
||||
"changeFailed": "코어 변경 실패"
|
||||
}
|
||||
},
|
||||
"service": {
|
||||
"status": {
|
||||
"installing": "Installing Service...",
|
||||
"uninstalling": "Uninstalling Service..."
|
||||
},
|
||||
"notifications": {
|
||||
"installSuccess": "Service Installed Successfully",
|
||||
"uninstallSuccess": "Service Uninstalled Successfully"
|
||||
}
|
||||
},
|
||||
"validation": {
|
||||
"config": {
|
||||
"failed": "설정 검증 실패",
|
||||
"bootFailed": "부팅 설정 검증 실패",
|
||||
"coreChangeFailed": "코어 변경 설정 검증 실패",
|
||||
"processTerminated": "설정 검증 프로세스 종료됨"
|
||||
},
|
||||
"script": {
|
||||
"syntaxError": "스크립트 구문 오류",
|
||||
"missingMain": "스크립트 메인 없음",
|
||||
"fileNotFound": "파일을 찾을 수 없음",
|
||||
"fileError": "스크립트 파일 오류"
|
||||
},
|
||||
"yaml": {
|
||||
"syntaxError": "YAML 구문 오류",
|
||||
"readError": "YAML 읽기 오류",
|
||||
"mappingError": "YAML 매핑 오류",
|
||||
"keyError": "YAML 키 오류",
|
||||
"generalError": "YAML 오류"
|
||||
},
|
||||
"merge": {
|
||||
"syntaxError": "병합 파일 구문 오류",
|
||||
"mappingError": "병합 파일 매핑 오류",
|
||||
"keyError": "병합 파일 키 오류",
|
||||
"generalError": "병합 파일 오류"
|
||||
}
|
||||
},
|
||||
"updates": {
|
||||
"notifications": {
|
||||
"withClashProxySuccess": "Clash 프록시로 업데이트 성공",
|
||||
"withClashProxyFailed": "Clash 프록시로도 업데이트 실패"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,139 +1,4 @@
|
||||
{
|
||||
"Proxies": "Прокси",
|
||||
"rule": "правила",
|
||||
"global": "глобальный",
|
||||
"direct": "прямой",
|
||||
"script": "скриптовый",
|
||||
"DOMAIN": "Соответствует полному доменному имени",
|
||||
"DOMAIN-SUFFIX": "Соответствует суффиксу домена",
|
||||
"DOMAIN-KEYWORD": "Соответствует ключевому слову домена",
|
||||
"DOMAIN-REGEX": "Соответствует домену с использованием регулярных выражений",
|
||||
"GEOSITE": "Соответствует доменам в Geosite",
|
||||
"GEOIP": "Соответствует коду страны IP-адреса",
|
||||
"SRC-GEOIP": "Соответствует коду страны исходного IP-адреса",
|
||||
"IP-ASN": "Соответствует ASN IP-адреса",
|
||||
"SRC-IP-ASN": "Соответствует ASN исходного IP-адреса",
|
||||
"IP-CIDR": "Соответствует диапазону IP-адресов",
|
||||
"IP-CIDR6": "Соответствует диапазону IPv6-адресов",
|
||||
"SRC-IP-CIDR": "Соответствует диапазону исходных IP-адресов",
|
||||
"IP-SUFFIX": "Соответствует диапазону суффиксов IP-адресов",
|
||||
"SRC-IP-SUFFIX": "Соответствует диапазону суффиксов исходных IP-адресов",
|
||||
"SRC-PORT": "Соответствует диапазону исходных портов",
|
||||
"DST-PORT": "Соответствует диапазону целевых портов",
|
||||
"IN-PORT": "Соответствует входящему порту",
|
||||
"DSCP": "Маркировка DSCP (только для tproxy UDP входящего)",
|
||||
"PROCESS-NAME": "Соответствует имени процесса (имя пакета Android)",
|
||||
"PROCESS-PATH": "Соответствует полному пути процесса",
|
||||
"PROCESS-NAME-REGEX": "Соответствует имени процесса с использованием регулярных выражений (имя пакета Android)",
|
||||
"PROCESS-PATH-REGEX": "Соответствует полному пути процесса с использованием регулярных выражений",
|
||||
"NETWORK": "Соответствует транспортному протоколу (tcp/udp)",
|
||||
"UID": "Соответствует USER ID в Linux",
|
||||
"IN-TYPE": "Соответствует типу входящего соединения",
|
||||
"IN-USER": "Соответствует имени пользователя входящего соединения",
|
||||
"IN-NAME": "Соответствует имени входящего соединения",
|
||||
"SUB-RULE": "Подправило",
|
||||
"RULE-SET": "Соответствует набору правил",
|
||||
"AND": "Логическое И",
|
||||
"OR": "Логическое ИЛИ",
|
||||
"NOT": "Логическое НЕ",
|
||||
"MATCH": "Соответствует всем запросам",
|
||||
"DIRECT": "Данные направляются напрямую наружу",
|
||||
"REJECT": "Перехватывает запросы",
|
||||
"REJECT-DROP": "Отклоняет запросы",
|
||||
"PASS": "Пропускает это правило при совпадении",
|
||||
"select": "Выбор прокси вручную",
|
||||
"url-test": "Выбор прокси на основе задержки теста URL",
|
||||
"fallback": "Переключение на другой прокси при ошибке",
|
||||
"load-balance": "Распределение прокси на основе балансировки нагрузки",
|
||||
"relay": "Передача через определенную цепочку прокси",
|
||||
"Timeout": "Таймаут",
|
||||
"Type": "Тип",
|
||||
"Close All Connections": "Close All Connections",
|
||||
"Rule": "Правило",
|
||||
"TUN Mode automatically disabled due to service unavailable": "TUN Mode automatically disabled due to service unavailable",
|
||||
"Failed to disable TUN Mode automatically": "Failed to disable TUN Mode automatically",
|
||||
"active": "Активированный",
|
||||
"unknown": "неизвестный",
|
||||
"Install": "Установить",
|
||||
"Uninstall": "Удалить",
|
||||
"System Proxy": "Системный прокси",
|
||||
"Release Version": "Официальная версия",
|
||||
"Alpha Version": "Альфа-версия",
|
||||
"theme.light": "Светлая",
|
||||
"theme.dark": "Тёмная",
|
||||
"theme.system": "Системная",
|
||||
"Exit": "Выход",
|
||||
"Profile Imported Successfully": "Профиль успешно импортирован",
|
||||
"Stopping Core...": "Stopping Core...",
|
||||
"Restarting Core...": "Restarting Core...",
|
||||
"Installing Service...": "Установка службы...",
|
||||
"Uninstalling Service...": "Uninstalling Service...",
|
||||
"Service Installed Successfully": "Служба успешно установлена",
|
||||
"Service Uninstalled Successfully": "Служба успешно удалена",
|
||||
"Import Subscription Successful": "Подписка успешно импортирована",
|
||||
"Profile": "Профиль",
|
||||
"Dashboard": "Панель управления",
|
||||
"Restart App": "Перезапустить приложение",
|
||||
"Restart Clash Core": "Перезапустить ядро Clash",
|
||||
"TUN Mode": "Режим TUN",
|
||||
"Copy Env": "Копировать переменные окружения",
|
||||
"Conf Dir": "Директория конфигурации",
|
||||
"Core Dir": "Директория ядра",
|
||||
"Logs Dir": "Директория логов",
|
||||
"Open Dir": "Открыть директорию",
|
||||
"More": "Ещё",
|
||||
"LightWeight Mode": "LightWeight Mode",
|
||||
"Config Validation Failed": "Ошибка проверки конфигурации подписки, проверьте файл конфигурации, изменения отменены, ошибка:",
|
||||
"Boot Config Validation Failed": "Ошибка проверки конфигурации при запуске, используется конфигурация по умолчанию, проверьте файл конфигурации, ошибка:",
|
||||
"Core Change Config Validation Failed": "Ошибка проверки конфигурации при смене ядра, используется конфигурация по умолчанию, проверьте файл конфигурации, ошибка:",
|
||||
"Config Validation Process Terminated": "Процесс проверки прерван",
|
||||
"Script Syntax Error": "Ошибка синтаксиса скрипта, изменения отменены",
|
||||
"Script Missing Main": "Ошибка скрипта, изменения отменены",
|
||||
"File Not Found": "Файл не найден, изменения отменены",
|
||||
"Script File Error": "Ошибка файла скрипта, изменения отменены",
|
||||
"Core Changed Successfully": "Ядро успешно изменено",
|
||||
"Failed to Change Core": "Не удалось сменить ядро",
|
||||
"YAML Syntax Error": "Ошибка синтаксиса YAML, откат изменений",
|
||||
"YAML Read Error": "Ошибка чтения YAML, откат изменений",
|
||||
"YAML Mapping Error": "Ошибка YAML Mapping, откат изменений",
|
||||
"YAML Key Error": "Ошибка ключа YAML, откат изменений",
|
||||
"YAML Error": "Ошибка YAML, откат изменений",
|
||||
"Merge File Syntax Error": "Ошибка синтаксиса Merge File, откат изменений",
|
||||
"Merge File Mapping Error": "Ошибка сопоставления в Merge File, откат изменений",
|
||||
"Merge File Key Error": "Ошибка ключа в Merge File, откат изменений",
|
||||
"Merge File Error": "Ошибка Merge File, откат изменений",
|
||||
"Service Administrator Prompt": "Clash Verge требует прав администратора для переустановки системной службы",
|
||||
"Update with Clash proxy successfully": "Update with Clash proxy successfully",
|
||||
"Update failed even with Clash proxy": "Update failed even with Clash proxy",
|
||||
"Profile Imported with Clash proxy": "Profile Imported with Clash proxy",
|
||||
"Pending": "В ожидании",
|
||||
"Yes": "Да",
|
||||
"No": "Нет",
|
||||
"Failed": "Ошибка",
|
||||
"Completed": "Завершено",
|
||||
"Disallowed ISP": "ISP заблокирован",
|
||||
"Originals Only": "Только Originals",
|
||||
"No (IP Banned By Disney+)": "Нет (IP забанен Disney+)",
|
||||
"Unsupported Country/Region": "Страна/регион не поддерживается",
|
||||
"Failed (Network Connection)": "Ошибка подключения",
|
||||
"DashboardToggledTitle": "Dashboard Toggled",
|
||||
"DashboardToggledBody": "Dashboard visibility toggled by hotkey",
|
||||
"ClashModeChangedTitle": "Clash Mode Changed",
|
||||
"ClashModeChangedBody": "Switched to {mode} mode",
|
||||
"SystemProxyToggledTitle": "System Proxy Toggled",
|
||||
"SystemProxyToggledBody": "System proxy state toggled by hotkey",
|
||||
"TunModeToggledTitle": "TUN Mode Toggled",
|
||||
"TunModeToggledBody": "TUN mode toggled by hotkey",
|
||||
"LightweightModeEnteredTitle": "Lightweight Mode",
|
||||
"LightweightModeEnteredBody": "Entered lightweight mode by hotkey",
|
||||
"AppQuitTitle": "APP Quit",
|
||||
"AppQuitBody": "APP quit by hotkey",
|
||||
"AppHiddenTitle": "APP Hidden",
|
||||
"AppHiddenBody": "APP window hidden by hotkey",
|
||||
"Configuration saved successfully": "Configuration saved successfully",
|
||||
"Failed to save configuration": "Failed to save configuration",
|
||||
"Open App Log": "Open App Log",
|
||||
"Open Core Log": "Open Core Log",
|
||||
"common": {
|
||||
"editorModes": {
|
||||
"visualization": "Визуализация",
|
||||
@@ -856,7 +721,9 @@
|
||||
},
|
||||
"common": {
|
||||
"notifications": {
|
||||
"copySuccess": "Скопировано"
|
||||
"copySuccess": "Скопировано",
|
||||
"saveSuccess": "Configuration saved successfully",
|
||||
"saveFailed": "Failed to save configuration"
|
||||
}
|
||||
},
|
||||
"misc": {
|
||||
@@ -1122,6 +989,18 @@
|
||||
"testAll": "Тестировать все",
|
||||
"new": "Новый"
|
||||
}
|
||||
},
|
||||
"statuses": {
|
||||
"pending": "В ожидании",
|
||||
"yes": "Да",
|
||||
"no": "Нет",
|
||||
"failed": "Ошибка",
|
||||
"completed": "Завершено",
|
||||
"disallowedIsp": "ISP заблокирован",
|
||||
"originalsOnly": "Только Originals",
|
||||
"noDisney": "Нет (IP забанен Disney+)",
|
||||
"unsupportedRegion": "Страна/регион не поддерживается",
|
||||
"failedNetwork": "Ошибка подключения"
|
||||
}
|
||||
},
|
||||
"proxies": {
|
||||
@@ -1237,6 +1116,11 @@
|
||||
"forceRefreshCompleted": "Force refresh completed",
|
||||
"emergencyRefreshFailed": "Emergency refresh failed: {{message}}"
|
||||
}
|
||||
},
|
||||
"notifications": {
|
||||
"importSuccess": "Профиль успешно импортирован",
|
||||
"importSubscriptionSuccess": "Подписка успешно импортирована",
|
||||
"importWithClashProxy": "Profile Imported with Clash proxy"
|
||||
}
|
||||
},
|
||||
"connections": {
|
||||
@@ -1292,5 +1176,79 @@
|
||||
"memoryUsage": "Использование памяти"
|
||||
}
|
||||
}
|
||||
},
|
||||
"proxy": {
|
||||
"strategies": {
|
||||
"select": "Выбор прокси вручную",
|
||||
"url-test": "Выбор прокси на основе задержки теста URL",
|
||||
"fallback": "Переключение на другой прокси при ошибке",
|
||||
"load-balance": "Распределение прокси на основе балансировки нагрузки",
|
||||
"relay": "Передача через определенную цепочку прокси"
|
||||
}
|
||||
},
|
||||
"system": {
|
||||
"notifications": {
|
||||
"tunMode": {
|
||||
"autoDisabled": "TUN Mode automatically disabled due to service unavailable",
|
||||
"autoDisableFailed": "Failed to disable TUN Mode automatically"
|
||||
}
|
||||
},
|
||||
"labels": {
|
||||
"releaseVersion": "Официальная версия",
|
||||
"alphaVersion": "Альфа-версия"
|
||||
}
|
||||
},
|
||||
"core": {
|
||||
"status": {
|
||||
"stopping": "Stopping Core...",
|
||||
"restarting": "Restarting Core..."
|
||||
},
|
||||
"notifications": {
|
||||
"changeSuccess": "Ядро успешно изменено",
|
||||
"changeFailed": "Не удалось сменить ядро"
|
||||
}
|
||||
},
|
||||
"service": {
|
||||
"status": {
|
||||
"installing": "Установка службы...",
|
||||
"uninstalling": "Uninstalling Service..."
|
||||
},
|
||||
"notifications": {
|
||||
"installSuccess": "Служба успешно установлена",
|
||||
"uninstallSuccess": "Служба успешно удалена"
|
||||
}
|
||||
},
|
||||
"validation": {
|
||||
"config": {
|
||||
"failed": "Ошибка проверки конфигурации подписки, проверьте файл конфигурации, изменения отменены, ошибка:",
|
||||
"bootFailed": "Ошибка проверки конфигурации при запуске, используется конфигурация по умолчанию, проверьте файл конфигурации, ошибка:",
|
||||
"coreChangeFailed": "Ошибка проверки конфигурации при смене ядра, используется конфигурация по умолчанию, проверьте файл конфигурации, ошибка:",
|
||||
"processTerminated": "Процесс проверки прерван"
|
||||
},
|
||||
"script": {
|
||||
"syntaxError": "Ошибка синтаксиса скрипта, изменения отменены",
|
||||
"missingMain": "Ошибка скрипта, изменения отменены",
|
||||
"fileNotFound": "Файл не найден, изменения отменены",
|
||||
"fileError": "Ошибка файла скрипта, изменения отменены"
|
||||
},
|
||||
"yaml": {
|
||||
"syntaxError": "Ошибка синтаксиса YAML, откат изменений",
|
||||
"readError": "Ошибка чтения YAML, откат изменений",
|
||||
"mappingError": "Ошибка YAML Mapping, откат изменений",
|
||||
"keyError": "Ошибка ключа YAML, откат изменений",
|
||||
"generalError": "Ошибка YAML, откат изменений"
|
||||
},
|
||||
"merge": {
|
||||
"syntaxError": "Ошибка синтаксиса Merge File, откат изменений",
|
||||
"mappingError": "Ошибка сопоставления в Merge File, откат изменений",
|
||||
"keyError": "Ошибка ключа в Merge File, откат изменений",
|
||||
"generalError": "Ошибка Merge File, откат изменений"
|
||||
}
|
||||
},
|
||||
"updates": {
|
||||
"notifications": {
|
||||
"withClashProxySuccess": "Update with Clash proxy successfully",
|
||||
"withClashProxyFailed": "Update failed even with Clash proxy"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,139 +1,4 @@
|
||||
{
|
||||
"Proxies": "Vekil'ler",
|
||||
"rule": "kural",
|
||||
"global": "küresel",
|
||||
"direct": "doğrudan",
|
||||
"script": "betik",
|
||||
"DOMAIN": "Tam alan adıyla eşleşir",
|
||||
"DOMAIN-SUFFIX": "Alan adı sonekiyle eşleşir",
|
||||
"DOMAIN-KEYWORD": "Alan adı anahtar kelimesiyle eşleşir",
|
||||
"DOMAIN-REGEX": "Alan adını düzenli ifadeler kullanarak eşleştirir",
|
||||
"GEOSITE": "Geosite içindeki alan adlarıyla eşleşir",
|
||||
"GEOIP": "IP adresinin ülke koduyla eşleşir",
|
||||
"SRC-GEOIP": "Kaynak IP adresinin ülke koduyla eşleşir",
|
||||
"IP-ASN": "IP adresinin ASN'siyle eşleşir",
|
||||
"SRC-IP-ASN": "Kaynak IP adresinin ASN'siyle eşleşir",
|
||||
"IP-CIDR": "IP adresi aralığıyla eşleşir",
|
||||
"IP-CIDR6": "IPv6 adresi aralığıyla eşleşir",
|
||||
"SRC-IP-CIDR": "Kaynak IP adresi aralığıyla eşleşir",
|
||||
"IP-SUFFIX": "IP adresi sonek aralığıyla eşleşir",
|
||||
"SRC-IP-SUFFIX": "Kaynak IP adresi sonek aralığıyla eşleşir",
|
||||
"SRC-PORT": "Kaynak port aralığıyla eşleşir",
|
||||
"DST-PORT": "Hedef port aralığıyla eşleşir",
|
||||
"IN-PORT": "Gelen port ile eşleşir",
|
||||
"DSCP": "DSCP işaretlemesi (sadece tvekil UDP girişi için)",
|
||||
"PROCESS-NAME": "İşlem adıyla eşleşir (Android paket adı)",
|
||||
"PROCESS-PATH": "Tam işlem yoluyla eşleşir",
|
||||
"PROCESS-NAME-REGEX": "Tam işlem adını düzenli ifadeler kullanarak eşleştirir (Android paket adı)",
|
||||
"PROCESS-PATH-REGEX": "Tam işlem yolunu düzenli ifadeler kullanarak eşleştirir",
|
||||
"NETWORK": "Taşıma protokolüyle eşleşir (tcp/udp)",
|
||||
"UID": "Linux KULLANICI ID'siyle eşleşir",
|
||||
"IN-TYPE": "Gelen bağlantı tipiyle eşleşir",
|
||||
"IN-USER": "Gelen bağlantı kullanıcı adıyla eşleşir",
|
||||
"IN-NAME": "Gelen bağlantı adıyla eşleşir",
|
||||
"SUB-RULE": "Alt kural",
|
||||
"RULE-SET": "Kural setiyle eşleşir",
|
||||
"AND": "Mantıksal VE",
|
||||
"OR": "Mantıksal VEYA",
|
||||
"NOT": "Mantıksal DEĞİL",
|
||||
"MATCH": "Tüm isteklerle eşleşir",
|
||||
"DIRECT": "Veri doğrudan dışarı gider",
|
||||
"REJECT": "İstekleri engeller",
|
||||
"REJECT-DROP": "İstekleri atar",
|
||||
"PASS": "Eşleştiğinde bu kuralı atlar",
|
||||
"select": "Vekil'i manuel olarak seçin",
|
||||
"url-test": "URL testi gecikmesine göre vekil seçin",
|
||||
"fallback": "Hata durumunda başka bir vekil'e geçin",
|
||||
"load-balance": "Yük dengelemeye göre vekil dağıtın",
|
||||
"relay": "Tanımlanan vekil zincirinden geçirin",
|
||||
"Timeout": "Zaman Aşımı",
|
||||
"Type": "Tip",
|
||||
"Close All Connections": "Close All Connections",
|
||||
"Rule": "Kural",
|
||||
"TUN Mode automatically disabled due to service unavailable": "TUN Mode automatically disabled due to service unavailable",
|
||||
"Failed to disable TUN Mode automatically": "Failed to disable TUN Mode automatically",
|
||||
"active": "aktif",
|
||||
"unknown": "bilinmiyor",
|
||||
"Install": "Kur",
|
||||
"Uninstall": "Kaldır",
|
||||
"System Proxy": "Sistem Vekil'i",
|
||||
"Release Version": "Sürüm Versiyonu",
|
||||
"Alpha Version": "Alfa Versiyonu",
|
||||
"theme.light": "Açık",
|
||||
"theme.dark": "Koyu",
|
||||
"theme.system": "Sistem",
|
||||
"Exit": "Çıkış",
|
||||
"Profile Imported Successfully": "Profil Başarıyla İçe Aktarıldı",
|
||||
"Stopping Core...": "Stopping Core...",
|
||||
"Restarting Core...": "Restarting Core...",
|
||||
"Installing Service...": "Hizmet Kuruluyor...",
|
||||
"Uninstalling Service...": "Uninstalling Service...",
|
||||
"Service Installed Successfully": "Hizmet Başarıyla Kuruldu",
|
||||
"Service Uninstalled Successfully": "Hizmet Başarıyla Kaldırıldı",
|
||||
"Import Subscription Successful": "Abonelik içe aktarımı başarılı",
|
||||
"Profile": "Profil",
|
||||
"Dashboard": "Kontrol Paneli",
|
||||
"Restart App": "Uygulamayı Yeniden Başlat",
|
||||
"Restart Clash Core": "Clash Çekirdeğini Yeniden Başlat",
|
||||
"TUN Mode": "TUN Modu",
|
||||
"Copy Env": "Env Kopyala",
|
||||
"Conf Dir": "Yapılandırma Dizini",
|
||||
"Core Dir": "Çekirdek Dizini",
|
||||
"Logs Dir": "Günlük Dizini",
|
||||
"Open Dir": "Dizin Aç",
|
||||
"More": "Daha Fazla",
|
||||
"LightWeight Mode": "Hafif Mod",
|
||||
"Config Validation Failed": "Abonelik yapılandırması doğrulaması başarısız oldu. Lütfen abonelik yapılandırma dosyasını kontrol edin; değişiklikler geri alındı.",
|
||||
"Boot Config Validation Failed": "Başlangıç abonelik yapılandırması doğrulaması başarısız oldu. Varsayılan yapılandırma ile başlatıldı; lütfen abonelik yapılandırma dosyasını kontrol edin.",
|
||||
"Core Change Config Validation Failed": "Çekirdek değiştirilirken yapılandırma doğrulaması başarısız oldu. Varsayılan yapılandırma ile başlatıldı; lütfen abonelik yapılandırma dosyasını kontrol edin.",
|
||||
"Config Validation Process Terminated": "Doğrulama işlemi sonlandırıldı.",
|
||||
"Script Syntax Error": "Betik sözdizimi hatası, değişiklikler geri alındı",
|
||||
"Script Missing Main": "Betik hatası, değişiklikler geri alındı",
|
||||
"File Not Found": "Dosya eksik, değişiklikler geri alındı",
|
||||
"Script File Error": "Betik dosyası hatası, değişiklikler geri alındı",
|
||||
"Core Changed Successfully": "Çekirdek başarıyla değiştirildi",
|
||||
"Failed to Change Core": "Çekirdek değiştirilemedi",
|
||||
"YAML Syntax Error": "YAML sözdizimi hatası, değişiklikler geri alındı",
|
||||
"YAML Read Error": "YAML okuma hatası, değişiklikler geri alındı",
|
||||
"YAML Mapping Error": "YAML eşleme hatası, değişiklikler geri alındı",
|
||||
"YAML Key Error": "YAML anahtar hatası, değişiklikler geri alındı",
|
||||
"YAML Error": "YAML hatası, değişiklikler geri alındı",
|
||||
"Merge File Syntax Error": "Birleştirme dosyası sözdizimi hatası, değişiklikler geri alındı",
|
||||
"Merge File Mapping Error": "Birleştirme dosyası eşleme hatası, değişiklikler geri alındı",
|
||||
"Merge File Key Error": "Birleştirme dosyası anahtar hatası, değişiklikler geri alındı",
|
||||
"Merge File Error": "Birleştirme dosyası hatası, değişiklikler geri alındı",
|
||||
"Service Administrator Prompt": "Clash Verge sistem hizmetini yeniden kurmak için yönetici ayrıcalıkları gerektiriyor",
|
||||
"Update with Clash proxy successfully": "Clash vekil ile güncelleme başarılı",
|
||||
"Update failed even with Clash proxy": "Clash vekil ile bile güncelleme başarısız oldu",
|
||||
"Profile Imported with Clash proxy": "Profil Clash vekil ile içe aktarıldı",
|
||||
"Pending": "Beklemede",
|
||||
"Yes": "Evet",
|
||||
"No": "Hayır",
|
||||
"Failed": "Başarısız",
|
||||
"Completed": "Tamamlandı",
|
||||
"Disallowed ISP": "İzin Verilmeyen ISP",
|
||||
"Originals Only": "Yalnızca Orijinaller",
|
||||
"No (IP Banned By Disney+)": "Hayır (IP Disney+ Tarafından Yasaklandı)",
|
||||
"Unsupported Country/Region": "Desteklenmeyen Ülke/Bölge",
|
||||
"Failed (Network Connection)": "Başarısız (Ağ Bağlantısı)",
|
||||
"DashboardToggledTitle": "Dashboard Toggled",
|
||||
"DashboardToggledBody": "Dashboard visibility toggled by hotkey",
|
||||
"ClashModeChangedTitle": "Clash Mode Changed",
|
||||
"ClashModeChangedBody": "Switched to {mode} mode",
|
||||
"SystemProxyToggledTitle": "System Proxy Toggled",
|
||||
"SystemProxyToggledBody": "System proxy state toggled by hotkey",
|
||||
"TunModeToggledTitle": "TUN Mode Toggled",
|
||||
"TunModeToggledBody": "TUN mode toggled by hotkey",
|
||||
"LightweightModeEnteredTitle": "Lightweight Mode",
|
||||
"LightweightModeEnteredBody": "Entered lightweight mode by hotkey",
|
||||
"AppQuitTitle": "APP Quit",
|
||||
"AppQuitBody": "APP quit by hotkey",
|
||||
"AppHiddenTitle": "APP Hidden",
|
||||
"AppHiddenBody": "APP window hidden by hotkey",
|
||||
"Configuration saved successfully": "Configuration saved successfully",
|
||||
"Failed to save configuration": "Failed to save configuration",
|
||||
"Open App Log": "Open App Log",
|
||||
"Open Core Log": "Open Core Log",
|
||||
"common": {
|
||||
"editorModes": {
|
||||
"visualization": "Görselleştirme",
|
||||
@@ -856,7 +721,9 @@
|
||||
},
|
||||
"common": {
|
||||
"notifications": {
|
||||
"copySuccess": "Kopyalama Başarılı"
|
||||
"copySuccess": "Kopyalama Başarılı",
|
||||
"saveSuccess": "Configuration saved successfully",
|
||||
"saveFailed": "Failed to save configuration"
|
||||
}
|
||||
},
|
||||
"misc": {
|
||||
@@ -1122,6 +989,18 @@
|
||||
"testAll": "Tümünü Test Et",
|
||||
"new": "Yeni"
|
||||
}
|
||||
},
|
||||
"statuses": {
|
||||
"pending": "Beklemede",
|
||||
"yes": "Evet",
|
||||
"no": "Hayır",
|
||||
"failed": "Başarısız",
|
||||
"completed": "Tamamlandı",
|
||||
"disallowedIsp": "İzin Verilmeyen ISP",
|
||||
"originalsOnly": "Yalnızca Orijinaller",
|
||||
"noDisney": "Hayır (IP Disney+ Tarafından Yasaklandı)",
|
||||
"unsupportedRegion": "Desteklenmeyen Ülke/Bölge",
|
||||
"failedNetwork": "Başarısız (Ağ Bağlantısı)"
|
||||
}
|
||||
},
|
||||
"proxies": {
|
||||
@@ -1237,6 +1116,11 @@
|
||||
"forceRefreshCompleted": "Force refresh completed",
|
||||
"emergencyRefreshFailed": "Emergency refresh failed: {{message}}"
|
||||
}
|
||||
},
|
||||
"notifications": {
|
||||
"importSuccess": "Profil Başarıyla İçe Aktarıldı",
|
||||
"importSubscriptionSuccess": "Abonelik içe aktarımı başarılı",
|
||||
"importWithClashProxy": "Profil Clash vekil ile içe aktarıldı"
|
||||
}
|
||||
},
|
||||
"connections": {
|
||||
@@ -1292,5 +1176,79 @@
|
||||
"memoryUsage": "Çekirdek Kullanımı"
|
||||
}
|
||||
}
|
||||
},
|
||||
"proxy": {
|
||||
"strategies": {
|
||||
"select": "Vekil'i manuel olarak seçin",
|
||||
"url-test": "URL testi gecikmesine göre vekil seçin",
|
||||
"fallback": "Hata durumunda başka bir vekil'e geçin",
|
||||
"load-balance": "Yük dengelemeye göre vekil dağıtın",
|
||||
"relay": "Tanımlanan vekil zincirinden geçirin"
|
||||
}
|
||||
},
|
||||
"system": {
|
||||
"notifications": {
|
||||
"tunMode": {
|
||||
"autoDisabled": "TUN Mode automatically disabled due to service unavailable",
|
||||
"autoDisableFailed": "Failed to disable TUN Mode automatically"
|
||||
}
|
||||
},
|
||||
"labels": {
|
||||
"releaseVersion": "Sürüm Versiyonu",
|
||||
"alphaVersion": "Alfa Versiyonu"
|
||||
}
|
||||
},
|
||||
"core": {
|
||||
"status": {
|
||||
"stopping": "Stopping Core...",
|
||||
"restarting": "Restarting Core..."
|
||||
},
|
||||
"notifications": {
|
||||
"changeSuccess": "Çekirdek başarıyla değiştirildi",
|
||||
"changeFailed": "Çekirdek değiştirilemedi"
|
||||
}
|
||||
},
|
||||
"service": {
|
||||
"status": {
|
||||
"installing": "Hizmet Kuruluyor...",
|
||||
"uninstalling": "Uninstalling Service..."
|
||||
},
|
||||
"notifications": {
|
||||
"installSuccess": "Hizmet Başarıyla Kuruldu",
|
||||
"uninstallSuccess": "Hizmet Başarıyla Kaldırıldı"
|
||||
}
|
||||
},
|
||||
"validation": {
|
||||
"config": {
|
||||
"failed": "Abonelik yapılandırması doğrulaması başarısız oldu. Lütfen abonelik yapılandırma dosyasını kontrol edin; değişiklikler geri alındı.",
|
||||
"bootFailed": "Başlangıç abonelik yapılandırması doğrulaması başarısız oldu. Varsayılan yapılandırma ile başlatıldı; lütfen abonelik yapılandırma dosyasını kontrol edin.",
|
||||
"coreChangeFailed": "Çekirdek değiştirilirken yapılandırma doğrulaması başarısız oldu. Varsayılan yapılandırma ile başlatıldı; lütfen abonelik yapılandırma dosyasını kontrol edin.",
|
||||
"processTerminated": "Doğrulama işlemi sonlandırıldı."
|
||||
},
|
||||
"script": {
|
||||
"syntaxError": "Betik sözdizimi hatası, değişiklikler geri alındı",
|
||||
"missingMain": "Betik hatası, değişiklikler geri alındı",
|
||||
"fileNotFound": "Dosya eksik, değişiklikler geri alındı",
|
||||
"fileError": "Betik dosyası hatası, değişiklikler geri alındı"
|
||||
},
|
||||
"yaml": {
|
||||
"syntaxError": "YAML sözdizimi hatası, değişiklikler geri alındı",
|
||||
"readError": "YAML okuma hatası, değişiklikler geri alındı",
|
||||
"mappingError": "YAML eşleme hatası, değişiklikler geri alındı",
|
||||
"keyError": "YAML anahtar hatası, değişiklikler geri alındı",
|
||||
"generalError": "YAML hatası, değişiklikler geri alındı"
|
||||
},
|
||||
"merge": {
|
||||
"syntaxError": "Birleştirme dosyası sözdizimi hatası, değişiklikler geri alındı",
|
||||
"mappingError": "Birleştirme dosyası eşleme hatası, değişiklikler geri alındı",
|
||||
"keyError": "Birleştirme dosyası anahtar hatası, değişiklikler geri alındı",
|
||||
"generalError": "Birleştirme dosyası hatası, değişiklikler geri alındı"
|
||||
}
|
||||
},
|
||||
"updates": {
|
||||
"notifications": {
|
||||
"withClashProxySuccess": "Clash vekil ile güncelleme başarılı",
|
||||
"withClashProxyFailed": "Clash vekil ile bile güncelleme başarısız oldu"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,139 +1,4 @@
|
||||
{
|
||||
"Proxies": "Прокси",
|
||||
"rule": "кагыйдә",
|
||||
"global": "глобаль",
|
||||
"direct": "туры",
|
||||
"script": "скриптлы",
|
||||
"DOMAIN": "Домен исеменең тулы туры килүе",
|
||||
"DOMAIN-SUFFIX": "Домен суффиксына туры килү",
|
||||
"DOMAIN-KEYWORD": "Доменда төп сүзгә туры килү",
|
||||
"DOMAIN-REGEX": "Доменны регекс аша туры китерү",
|
||||
"GEOSITE": "Geosite исемлегендәге доменга туры килү",
|
||||
"GEOIP": "IP-адресның ил коды буенча туры килү",
|
||||
"SRC-GEOIP": "Чыганак IP-адресның ил коды буенча туры килү",
|
||||
"IP-ASN": "IP-адрес ASN'ы буенча туры килү",
|
||||
"SRC-IP-ASN": "Чыганак IP-адрес ASN'ы буенча туры килү",
|
||||
"IP-CIDR": "IP-адреслар диапазонына туры килү",
|
||||
"IP-CIDR6": "IPv6 адреслар диапазонына туры килү",
|
||||
"SRC-IP-CIDR": "Чыганак IP-адреслар диапазонына туры килү",
|
||||
"IP-SUFFIX": "IP-адрес суффиксына туры килү",
|
||||
"SRC-IP-SUFFIX": "Чыганак IP-адрес суффиксына туры килү",
|
||||
"SRC-PORT": "Чыганак портлар диапазонына туры килү",
|
||||
"DST-PORT": "Максат портлар диапазонына туры килү",
|
||||
"IN-PORT": "Керүче портка туры килү",
|
||||
"DSCP": "DSCP тамгалавы (tproxy UDP өчен)",
|
||||
"PROCESS-NAME": "Процесс исеменә туры килү (Android пакет исеме)",
|
||||
"PROCESS-PATH": "Процесс юлына туры килү",
|
||||
"PROCESS-NAME-REGEX": "Процесс исемен регекс белән туры китерү (Android пакет исеме)",
|
||||
"PROCESS-PATH-REGEX": "Процесс юлын регекс белән туры китерү",
|
||||
"NETWORK": "Транспорт протоколына (tcp/udp) туры килү",
|
||||
"UID": "Linux USER ID'га туры килү",
|
||||
"IN-TYPE": "Керүче тоташу төренә туры килү",
|
||||
"IN-USER": "Керүче тоташу кулланучысына туры килү",
|
||||
"IN-NAME": "Керүче тоташу исеменә туры килү",
|
||||
"SUB-RULE": "Кушымча кагыйдә",
|
||||
"RULE-SET": "Кагыйдәләр тупланмасына туры килү",
|
||||
"AND": "Логик ҺӘМ",
|
||||
"OR": "Логик ЯКИ",
|
||||
"NOT": "Логик ТҮГЕЛ",
|
||||
"MATCH": "Барлык сорауларга туры килә",
|
||||
"DIRECT": "Туры чыгу",
|
||||
"REJECT": "Сорауларны тоткарлау",
|
||||
"REJECT-DROP": "Сорауларны кире кагу",
|
||||
"PASS": "Туры килсә дә, бу кагыйдәне урап узу",
|
||||
"select": "Проксины кулдан сайлау",
|
||||
"url-test": "URL-тест задержкасына карап прокси сайлау",
|
||||
"fallback": "Хата булган очракта башка проксига күчү",
|
||||
"load-balance": "Трафикны баланслау нигезендә прокси тарату",
|
||||
"relay": "Билгеле прокси чылбыры аша тапшыру",
|
||||
"Timeout": "Таймаут",
|
||||
"Type": "Төр",
|
||||
"Close All Connections": "Close All Connections",
|
||||
"Rule": "Кагыйдә",
|
||||
"TUN Mode automatically disabled due to service unavailable": "TUN Mode automatically disabled due to service unavailable",
|
||||
"Failed to disable TUN Mode automatically": "Failed to disable TUN Mode automatically",
|
||||
"active": "Актив",
|
||||
"unknown": "Билгесез",
|
||||
"Install": "Урнаштыру",
|
||||
"Uninstall": "Салдыру",
|
||||
"System Proxy": "Системалы прокси",
|
||||
"Release Version": "Рәсми версия",
|
||||
"Alpha Version": "Альфа-версия",
|
||||
"theme.light": "Якты",
|
||||
"theme.dark": "Караңгы",
|
||||
"theme.system": "Система",
|
||||
"Exit": "Чыгу",
|
||||
"Profile Imported Successfully": "Профиль уңышлы импортланды",
|
||||
"Stopping Core...": "Stopping Core...",
|
||||
"Restarting Core...": "Restarting Core...",
|
||||
"Installing Service...": "Хезмәт урнаштырыла...",
|
||||
"Uninstalling Service...": "Uninstalling Service...",
|
||||
"Service Installed Successfully": "Сервис уңышлы урнаштырылды",
|
||||
"Service Uninstalled Successfully": "Сервис уңышлы салдырылды",
|
||||
"Import Subscription Successful": "Import subscription successful",
|
||||
"Profile": "Профиль",
|
||||
"Dashboard": "Панель",
|
||||
"Restart App": "Кушымтаны яңадан ачу",
|
||||
"Restart Clash Core": "Clash ядрони яңадан башлап ачу",
|
||||
"TUN Mode": "TUN режимы",
|
||||
"Copy Env": "Env күчереп алу",
|
||||
"Conf Dir": "Кушымта папкасы",
|
||||
"Core Dir": "Ядро папкасы",
|
||||
"Logs Dir": "Логлар папкасы",
|
||||
"Open Dir": "Папканы ачу",
|
||||
"More": "Башҡа",
|
||||
"LightWeight Mode": "Җиңел Режим",
|
||||
"Config Validation Failed": "Язылу көйләү тикшерүе уңышсыз, көйләү файлын тикшерегез, үзгәрешләр кире кайтарылды, хата:",
|
||||
"Boot Config Validation Failed": "Йөкләү вакытында көйләү тикшерүе уңышсыз, стандарт көйләү кулланылды, көйләү файлын тикшерегез, хата:",
|
||||
"Core Change Config Validation Failed": "Ядро алыштырганда көйләү тикшерүе уңышсыз, стандарт көйләү кулланылды, көйләү файлын тикшерегез, хата:",
|
||||
"Config Validation Process Terminated": "Тикшерү процессы туктатылды",
|
||||
"Script Syntax Error": "Скрипт синтаксик хатасы, үзгәрешләр кире кайтарылды",
|
||||
"Script Missing Main": "Скрипт хатасы, үзгәрешләр кире кайтарылды",
|
||||
"File Not Found": "Файл табылмады, үзгәрешләр кире кайтарылды",
|
||||
"Script File Error": "Скрипт файлы хатасы, үзгәрешләр кире кайтарылды",
|
||||
"Core Changed Successfully": "Ядро уңышлы алыштырылды",
|
||||
"Failed to Change Core": "Ядро алыштыру уңышсыз булды",
|
||||
"YAML Syntax Error": "YAML syntax error, changes reverted",
|
||||
"YAML Read Error": "YAML read error, changes reverted",
|
||||
"YAML Mapping Error": "YAML mapping error, changes reverted",
|
||||
"YAML Key Error": "YAML key error, changes reverted",
|
||||
"YAML Error": "YAML error, changes reverted",
|
||||
"Merge File Syntax Error": "Merge file syntax error, changes reverted",
|
||||
"Merge File Mapping Error": "Merge file mapping error, changes reverted",
|
||||
"Merge File Key Error": "Merge file key error, changes reverted",
|
||||
"Merge File Error": "Merge file error, changes reverted",
|
||||
"Service Administrator Prompt": "Clash Verge система хезмәтен яңадан урнаштыру өчен администратор хокукларын таләп итә",
|
||||
"Update with Clash proxy successfully": "Update with Clash proxy successfully",
|
||||
"Update failed even with Clash proxy": "Update failed even with Clash proxy",
|
||||
"Profile Imported with Clash proxy": "Profile Imported with Clash proxy",
|
||||
"Pending": "Pending",
|
||||
"Yes": "Yes",
|
||||
"No": "No",
|
||||
"Failed": "Failed",
|
||||
"Completed": "Completed",
|
||||
"Disallowed ISP": "Disallowed ISP",
|
||||
"Originals Only": "Originals Only",
|
||||
"No (IP Banned By Disney+)": "No (IP Banned By Disney+)",
|
||||
"Unsupported Country/Region": "Unsupported Country/Region",
|
||||
"Failed (Network Connection)": "Failed (Network Connection)",
|
||||
"DashboardToggledTitle": "Dashboard Toggled",
|
||||
"DashboardToggledBody": "Dashboard visibility toggled by hotkey",
|
||||
"ClashModeChangedTitle": "Clash Mode Changed",
|
||||
"ClashModeChangedBody": "Switched to {mode} mode",
|
||||
"SystemProxyToggledTitle": "System Proxy Toggled",
|
||||
"SystemProxyToggledBody": "System proxy state toggled by hotkey",
|
||||
"TunModeToggledTitle": "TUN Mode Toggled",
|
||||
"TunModeToggledBody": "TUN mode toggled by hotkey",
|
||||
"LightweightModeEnteredTitle": "Lightweight Mode",
|
||||
"LightweightModeEnteredBody": "Entered lightweight mode by hotkey",
|
||||
"AppQuitTitle": "APP Quit",
|
||||
"AppQuitBody": "APP quit by hotkey",
|
||||
"AppHiddenTitle": "APP Hidden",
|
||||
"AppHiddenBody": "APP window hidden by hotkey",
|
||||
"Configuration saved successfully": "Configuration saved successfully",
|
||||
"Failed to save configuration": "Failed to save configuration",
|
||||
"Open App Log": "Open App Log",
|
||||
"Open Core Log": "Open Core Log",
|
||||
"common": {
|
||||
"editorModes": {
|
||||
"visualization": "Визуализация",
|
||||
@@ -856,7 +721,9 @@
|
||||
},
|
||||
"common": {
|
||||
"notifications": {
|
||||
"copySuccess": "Күчерелде"
|
||||
"copySuccess": "Күчерелде",
|
||||
"saveSuccess": "Configuration saved successfully",
|
||||
"saveFailed": "Failed to save configuration"
|
||||
}
|
||||
},
|
||||
"misc": {
|
||||
@@ -1122,6 +989,18 @@
|
||||
"testAll": "Барчасын тестлау",
|
||||
"new": "Яңа"
|
||||
}
|
||||
},
|
||||
"statuses": {
|
||||
"pending": "Pending",
|
||||
"yes": "Yes",
|
||||
"no": "No",
|
||||
"failed": "Failed",
|
||||
"completed": "Completed",
|
||||
"disallowedIsp": "Disallowed ISP",
|
||||
"originalsOnly": "Originals Only",
|
||||
"noDisney": "No (IP Banned By Disney+)",
|
||||
"unsupportedRegion": "Unsupported Country/Region",
|
||||
"failedNetwork": "Failed (Network Connection)"
|
||||
}
|
||||
},
|
||||
"proxies": {
|
||||
@@ -1237,6 +1116,11 @@
|
||||
"forceRefreshCompleted": "Force refresh completed",
|
||||
"emergencyRefreshFailed": "Emergency refresh failed: {{message}}"
|
||||
}
|
||||
},
|
||||
"notifications": {
|
||||
"importSuccess": "Профиль уңышлы импортланды",
|
||||
"importSubscriptionSuccess": "Import subscription successful",
|
||||
"importWithClashProxy": "Profile Imported with Clash proxy"
|
||||
}
|
||||
},
|
||||
"connections": {
|
||||
@@ -1292,5 +1176,79 @@
|
||||
"memoryUsage": "Хәтер куллану"
|
||||
}
|
||||
}
|
||||
},
|
||||
"proxy": {
|
||||
"strategies": {
|
||||
"select": "Проксины кулдан сайлау",
|
||||
"url-test": "URL-тест задержкасына карап прокси сайлау",
|
||||
"fallback": "Хата булган очракта башка проксига күчү",
|
||||
"load-balance": "Трафикны баланслау нигезендә прокси тарату",
|
||||
"relay": "Билгеле прокси чылбыры аша тапшыру"
|
||||
}
|
||||
},
|
||||
"system": {
|
||||
"notifications": {
|
||||
"tunMode": {
|
||||
"autoDisabled": "TUN Mode automatically disabled due to service unavailable",
|
||||
"autoDisableFailed": "Failed to disable TUN Mode automatically"
|
||||
}
|
||||
},
|
||||
"labels": {
|
||||
"releaseVersion": "Рәсми версия",
|
||||
"alphaVersion": "Альфа-версия"
|
||||
}
|
||||
},
|
||||
"core": {
|
||||
"status": {
|
||||
"stopping": "Stopping Core...",
|
||||
"restarting": "Restarting Core..."
|
||||
},
|
||||
"notifications": {
|
||||
"changeSuccess": "Ядро уңышлы алыштырылды",
|
||||
"changeFailed": "Ядро алыштыру уңышсыз булды"
|
||||
}
|
||||
},
|
||||
"service": {
|
||||
"status": {
|
||||
"installing": "Хезмәт урнаштырыла...",
|
||||
"uninstalling": "Uninstalling Service..."
|
||||
},
|
||||
"notifications": {
|
||||
"installSuccess": "Сервис уңышлы урнаштырылды",
|
||||
"uninstallSuccess": "Сервис уңышлы салдырылды"
|
||||
}
|
||||
},
|
||||
"validation": {
|
||||
"config": {
|
||||
"failed": "Язылу көйләү тикшерүе уңышсыз, көйләү файлын тикшерегез, үзгәрешләр кире кайтарылды, хата:",
|
||||
"bootFailed": "Йөкләү вакытында көйләү тикшерүе уңышсыз, стандарт көйләү кулланылды, көйләү файлын тикшерегез, хата:",
|
||||
"coreChangeFailed": "Ядро алыштырганда көйләү тикшерүе уңышсыз, стандарт көйләү кулланылды, көйләү файлын тикшерегез, хата:",
|
||||
"processTerminated": "Тикшерү процессы туктатылды"
|
||||
},
|
||||
"script": {
|
||||
"syntaxError": "Скрипт синтаксик хатасы, үзгәрешләр кире кайтарылды",
|
||||
"missingMain": "Скрипт хатасы, үзгәрешләр кире кайтарылды",
|
||||
"fileNotFound": "Файл табылмады, үзгәрешләр кире кайтарылды",
|
||||
"fileError": "Скрипт файлы хатасы, үзгәрешләр кире кайтарылды"
|
||||
},
|
||||
"yaml": {
|
||||
"syntaxError": "YAML syntax error, changes reverted",
|
||||
"readError": "YAML read error, changes reverted",
|
||||
"mappingError": "YAML mapping error, changes reverted",
|
||||
"keyError": "YAML key error, changes reverted",
|
||||
"generalError": "YAML error, changes reverted"
|
||||
},
|
||||
"merge": {
|
||||
"syntaxError": "Merge file syntax error, changes reverted",
|
||||
"mappingError": "Merge file mapping error, changes reverted",
|
||||
"keyError": "Merge file key error, changes reverted",
|
||||
"generalError": "Merge file error, changes reverted"
|
||||
}
|
||||
},
|
||||
"updates": {
|
||||
"notifications": {
|
||||
"withClashProxySuccess": "Update with Clash proxy successfully",
|
||||
"withClashProxyFailed": "Update failed even with Clash proxy"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,139 +1,4 @@
|
||||
{
|
||||
"Proxies": "代理",
|
||||
"rule": "规则",
|
||||
"global": "全局",
|
||||
"direct": "直连",
|
||||
"script": "脚本",
|
||||
"DOMAIN": "匹配完整域名",
|
||||
"DOMAIN-SUFFIX": "匹配域名后缀",
|
||||
"DOMAIN-KEYWORD": "匹配域名关键字",
|
||||
"DOMAIN-REGEX": "匹配域名正则表达式",
|
||||
"GEOSITE": "匹配 Geosite 内的域名",
|
||||
"GEOIP": "匹配 IP 所属国家代码",
|
||||
"SRC-GEOIP": "匹配来源 IP 所属国家代码",
|
||||
"IP-ASN": "匹配 IP 所属 ASN",
|
||||
"SRC-IP-ASN": "匹配来源 IP 所属 ASN",
|
||||
"IP-CIDR": "匹配 IP 地址范围",
|
||||
"IP-CIDR6": "匹配 IP 地址范围",
|
||||
"SRC-IP-CIDR": "匹配来源 IP 地址范围",
|
||||
"IP-SUFFIX": "匹配 IP 后缀范围",
|
||||
"SRC-IP-SUFFIX": "匹配来源 IP 后缀范围",
|
||||
"SRC-PORT": "匹配请求来源端口范围",
|
||||
"DST-PORT": "匹配请求目标端口范围",
|
||||
"IN-PORT": "匹配入站端口",
|
||||
"DSCP": "DSCP标记(仅限 TPROXY UDP 入站)",
|
||||
"PROCESS-NAME": "匹配进程名称(Android 包名)",
|
||||
"PROCESS-PATH": "匹配完整进程路径",
|
||||
"PROCESS-NAME-REGEX": "正则匹配完整进程名称(Android 包名)",
|
||||
"PROCESS-PATH-REGEX": "正则匹配完整进程路径",
|
||||
"NETWORK": "匹配传输协议 (TCP/UDP)",
|
||||
"UID": "匹配 Linux USER ID",
|
||||
"IN-TYPE": "匹配入站类型",
|
||||
"IN-USER": "匹配入站用户名",
|
||||
"IN-NAME": "匹配入站名称",
|
||||
"SUB-RULE": "子规则",
|
||||
"RULE-SET": "匹配规则集",
|
||||
"AND": "逻辑和",
|
||||
"OR": "逻辑或",
|
||||
"NOT": "逻辑非",
|
||||
"MATCH": "匹配所有请求",
|
||||
"DIRECT": "直连",
|
||||
"REJECT": "拦截请求",
|
||||
"REJECT-DROP": "抛弃请求",
|
||||
"PASS": "跳过此规则",
|
||||
"select": "手动选择代理",
|
||||
"url-test": "根据URL测试延迟选择代理",
|
||||
"fallback": "不可用时切换到另一个代理",
|
||||
"load-balance": "根据负载均衡分配代理",
|
||||
"relay": "根据定义的代理链传递",
|
||||
"Timeout": "超时时间",
|
||||
"Type": "类型",
|
||||
"Close All Connections": "关闭所有连接",
|
||||
"Rule": "规则",
|
||||
"TUN Mode automatically disabled due to service unavailable": "由于服务不可用,TUN 模式已自动关闭",
|
||||
"Failed to disable TUN Mode automatically": "自动关闭 TUN 模式失败",
|
||||
"active": "已激活",
|
||||
"unknown": "未知",
|
||||
"Install": "安装",
|
||||
"Uninstall": "卸载",
|
||||
"System Proxy": "系统代理",
|
||||
"Release Version": "正式版",
|
||||
"Alpha Version": "预览版",
|
||||
"theme.light": "浅色",
|
||||
"theme.dark": "深色",
|
||||
"theme.system": "系统",
|
||||
"Exit": "退出",
|
||||
"Profile Imported Successfully": "导入订阅成功",
|
||||
"Stopping Core...": "停止内核中...",
|
||||
"Restarting Core...": "重启内核中...",
|
||||
"Installing Service...": "安装服务中...",
|
||||
"Uninstalling Service...": "卸载服务中...",
|
||||
"Service Installed Successfully": "已成功安装服务",
|
||||
"Service Uninstalled Successfully": "已成功卸载服务",
|
||||
"Import Subscription Successful": "导入订阅成功",
|
||||
"Profile": "配置",
|
||||
"Dashboard": "仪表板",
|
||||
"Restart App": "重启应用",
|
||||
"Restart Clash Core": "重启 Clash 核心",
|
||||
"TUN Mode": "TUN 模式",
|
||||
"Copy Env": "复制环境变量",
|
||||
"Conf Dir": "配置目录",
|
||||
"Core Dir": "核心目录",
|
||||
"Logs Dir": "日志目录",
|
||||
"Open Dir": "打开目录",
|
||||
"More": "更多",
|
||||
"LightWeight Mode": "轻量模式",
|
||||
"Config Validation Failed": "订阅配置校验失败,请检查订阅配置文件,变更已撤销,错误详情:",
|
||||
"Boot Config Validation Failed": "启动订阅配置校验失败,已使用默认配置启动;请检查订阅配置文件,错误详情:",
|
||||
"Core Change Config Validation Failed": "切换内核时配置校验失败,已使用默认配置启动;请检查订阅配置文件,错误详情:",
|
||||
"Config Validation Process Terminated": "验证进程被终止",
|
||||
"Script Syntax Error": "脚本语法错误,变更已撤销",
|
||||
"Script Missing Main": "脚本错误,变更已撤销",
|
||||
"File Not Found": "文件丢失,变更已撤销",
|
||||
"Script File Error": "脚本文件错误,变更已撤销",
|
||||
"Core Changed Successfully": "内核切换成功",
|
||||
"Failed to Change Core": "无法切换内核",
|
||||
"YAML Syntax Error": "YAML语法错误,变更已撤销",
|
||||
"YAML Read Error": "YAML读取错误,变更已撤销",
|
||||
"YAML Mapping Error": "YAML映射错误,变更已撤销",
|
||||
"YAML Key Error": "YAML键错误,变更已撤销",
|
||||
"YAML Error": "YAML错误,变更已撤销",
|
||||
"Merge File Syntax Error": "覆写文件语法错误,变更已撤销",
|
||||
"Merge File Mapping Error": "覆写文件映射错误,变更已撤销",
|
||||
"Merge File Key Error": "覆写文件键错误,变更已撤销",
|
||||
"Merge File Error": "覆写文件错误,变更已撤销",
|
||||
"Service Administrator Prompt": "Clash Verge 需要管理员权限安装系统服务",
|
||||
"Update with Clash proxy successfully": "使用 Clash 代理更新成功",
|
||||
"Update failed even with Clash proxy": "使用 Clash 代理更新也失败",
|
||||
"Profile Imported with Clash proxy": "使用 Clash 代理导入订阅成功",
|
||||
"Pending": "待检测",
|
||||
"Yes": "支持",
|
||||
"No": "不支持",
|
||||
"Failed": "测试失败",
|
||||
"Completed": "检测完成",
|
||||
"Disallowed ISP": "不允许的 ISP",
|
||||
"Originals Only": "仅限原创",
|
||||
"No (IP Banned By Disney+)": "不支持(IP被Disney+禁止)",
|
||||
"Unsupported Country/Region": "不支持的国家/地区",
|
||||
"Failed (Network Connection)": "测试失败(网络连接问题)",
|
||||
"DashboardToggledTitle": "仪表盘已切换",
|
||||
"DashboardToggledBody": "已通过快捷键切换仪表盘显示状态",
|
||||
"ClashModeChangedTitle": "Clash 模式切换",
|
||||
"ClashModeChangedBody": "已切换为 {mode} 模式",
|
||||
"SystemProxyToggledTitle": "系统代理切换",
|
||||
"SystemProxyToggledBody": "已通过快捷键切换系统代理状态",
|
||||
"TunModeToggledTitle": "TUN 模式切换",
|
||||
"TunModeToggledBody": "已通过快捷键切换 TUN 模式",
|
||||
"LightweightModeEnteredTitle": "轻量模式",
|
||||
"LightweightModeEnteredBody": "已通过快捷键进入轻量模式",
|
||||
"AppQuitTitle": "应用退出",
|
||||
"AppQuitBody": "已通过快捷键退出应用",
|
||||
"AppHiddenTitle": "应用隐藏",
|
||||
"AppHiddenBody": "已通过快捷键隐藏应用窗口",
|
||||
"Configuration saved successfully": "配置保存成功",
|
||||
"Failed to save configuration": "配置保存失败",
|
||||
"Open App Log": "应用日志",
|
||||
"Open Core Log": "内核日志",
|
||||
"common": {
|
||||
"editorModes": {
|
||||
"visualization": "可视化",
|
||||
@@ -856,7 +721,9 @@
|
||||
},
|
||||
"common": {
|
||||
"notifications": {
|
||||
"copySuccess": "复制成功"
|
||||
"copySuccess": "复制成功",
|
||||
"saveSuccess": "配置保存成功",
|
||||
"saveFailed": "配置保存失败"
|
||||
}
|
||||
},
|
||||
"misc": {
|
||||
@@ -1122,6 +989,18 @@
|
||||
"testAll": "测试全部",
|
||||
"new": "新建"
|
||||
}
|
||||
},
|
||||
"statuses": {
|
||||
"pending": "待检测",
|
||||
"yes": "支持",
|
||||
"no": "不支持",
|
||||
"failed": "测试失败",
|
||||
"completed": "检测完成",
|
||||
"disallowedIsp": "不允许的 ISP",
|
||||
"originalsOnly": "仅限原创",
|
||||
"noDisney": "不支持(IP被Disney+禁止)",
|
||||
"unsupportedRegion": "不支持的国家/地区",
|
||||
"failedNetwork": "测试失败(网络连接问题)"
|
||||
}
|
||||
},
|
||||
"proxies": {
|
||||
@@ -1237,6 +1116,11 @@
|
||||
"forceRefreshCompleted": "数据已强制刷新",
|
||||
"emergencyRefreshFailed": "紧急刷新失败: {{message}}"
|
||||
}
|
||||
},
|
||||
"notifications": {
|
||||
"importSuccess": "导入订阅成功",
|
||||
"importSubscriptionSuccess": "导入订阅成功",
|
||||
"importWithClashProxy": "使用 Clash 代理导入订阅成功"
|
||||
}
|
||||
},
|
||||
"connections": {
|
||||
@@ -1292,5 +1176,79 @@
|
||||
"memoryUsage": "内核占用"
|
||||
}
|
||||
}
|
||||
},
|
||||
"proxy": {
|
||||
"strategies": {
|
||||
"select": "手动选择代理",
|
||||
"url-test": "根据URL测试延迟选择代理",
|
||||
"fallback": "不可用时切换到另一个代理",
|
||||
"load-balance": "根据负载均衡分配代理",
|
||||
"relay": "根据定义的代理链传递"
|
||||
}
|
||||
},
|
||||
"system": {
|
||||
"notifications": {
|
||||
"tunMode": {
|
||||
"autoDisabled": "由于服务不可用,TUN 模式已自动关闭",
|
||||
"autoDisableFailed": "自动关闭 TUN 模式失败"
|
||||
}
|
||||
},
|
||||
"labels": {
|
||||
"releaseVersion": "正式版",
|
||||
"alphaVersion": "预览版"
|
||||
}
|
||||
},
|
||||
"core": {
|
||||
"status": {
|
||||
"stopping": "停止内核中...",
|
||||
"restarting": "重启内核中..."
|
||||
},
|
||||
"notifications": {
|
||||
"changeSuccess": "内核切换成功",
|
||||
"changeFailed": "无法切换内核"
|
||||
}
|
||||
},
|
||||
"service": {
|
||||
"status": {
|
||||
"installing": "安装服务中...",
|
||||
"uninstalling": "卸载服务中..."
|
||||
},
|
||||
"notifications": {
|
||||
"installSuccess": "已成功安装服务",
|
||||
"uninstallSuccess": "已成功卸载服务"
|
||||
}
|
||||
},
|
||||
"validation": {
|
||||
"config": {
|
||||
"failed": "订阅配置校验失败,请检查订阅配置文件,变更已撤销,错误详情:",
|
||||
"bootFailed": "启动订阅配置校验失败,已使用默认配置启动;请检查订阅配置文件,错误详情:",
|
||||
"coreChangeFailed": "切换内核时配置校验失败,已使用默认配置启动;请检查订阅配置文件,错误详情:",
|
||||
"processTerminated": "验证进程被终止"
|
||||
},
|
||||
"script": {
|
||||
"syntaxError": "脚本语法错误,变更已撤销",
|
||||
"missingMain": "脚本错误,变更已撤销",
|
||||
"fileNotFound": "文件丢失,变更已撤销",
|
||||
"fileError": "脚本文件错误,变更已撤销"
|
||||
},
|
||||
"yaml": {
|
||||
"syntaxError": "YAML语法错误,变更已撤销",
|
||||
"readError": "YAML读取错误,变更已撤销",
|
||||
"mappingError": "YAML映射错误,变更已撤销",
|
||||
"keyError": "YAML键错误,变更已撤销",
|
||||
"generalError": "YAML错误,变更已撤销"
|
||||
},
|
||||
"merge": {
|
||||
"syntaxError": "覆写文件语法错误,变更已撤销",
|
||||
"mappingError": "覆写文件映射错误,变更已撤销",
|
||||
"keyError": "覆写文件键错误,变更已撤销",
|
||||
"generalError": "覆写文件错误,变更已撤销"
|
||||
}
|
||||
},
|
||||
"updates": {
|
||||
"notifications": {
|
||||
"withClashProxySuccess": "使用 Clash 代理更新成功",
|
||||
"withClashProxyFailed": "使用 Clash 代理更新也失败"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,139 +1,4 @@
|
||||
{
|
||||
"Proxies": "代理",
|
||||
"rule": "規則",
|
||||
"global": "全域",
|
||||
"direct": "直連",
|
||||
"script": "指令碼",
|
||||
"DOMAIN": "配對完整網域",
|
||||
"DOMAIN-SUFFIX": "配對網域後綴",
|
||||
"DOMAIN-KEYWORD": "配對網域關鍵字",
|
||||
"DOMAIN-REGEX": "配對網域正規表示式",
|
||||
"GEOSITE": "配對 Geosite 內的網域",
|
||||
"GEOIP": "配對 IP 所屬國家代碼",
|
||||
"SRC-GEOIP": "配對來源 IP 所屬國家代碼",
|
||||
"IP-ASN": "配對 IP 所屬 ASN",
|
||||
"SRC-IP-ASN": "配對來源 IP 所屬 ASN",
|
||||
"IP-CIDR": "配對 IP 位址範圍",
|
||||
"IP-CIDR6": "配對 IP 位址範圍",
|
||||
"SRC-IP-CIDR": "配對來源 IP 位址範圍",
|
||||
"IP-SUFFIX": "配對 IP 後綴範圍",
|
||||
"SRC-IP-SUFFIX": "配對來源 IP 後綴範圍",
|
||||
"SRC-PORT": "配對請求來源連接埠範圍",
|
||||
"DST-PORT": "配對請求目標連接埠範圍",
|
||||
"IN-PORT": "配對傳入連接埠",
|
||||
"DSCP": "DSCP標記(僅限 TPROXY UDP 傳入)",
|
||||
"PROCESS-NAME": "配對程序名稱(Android 應用程式套件名稱)",
|
||||
"PROCESS-PATH": "配對完整程序路徑",
|
||||
"PROCESS-NAME-REGEX": "正規表示式配對完整程序名稱(Android 應用程式套件名稱)",
|
||||
"PROCESS-PATH-REGEX": "正規表示式配對完整程序路徑",
|
||||
"NETWORK": "配對傳輸協定 (TCP/UDP)",
|
||||
"UID": "配對 Linux 使用者 ID",
|
||||
"IN-TYPE": "配對傳入類型",
|
||||
"IN-USER": "配對傳入使用者名稱",
|
||||
"IN-NAME": "配對傳入名稱",
|
||||
"SUB-RULE": "子規則",
|
||||
"RULE-SET": "配對規則集",
|
||||
"AND": "邏輯 AND",
|
||||
"OR": "邏輯 OR",
|
||||
"NOT": "邏輯 NOT",
|
||||
"MATCH": "配對所有請求",
|
||||
"DIRECT": "直連",
|
||||
"REJECT": "拒絕請求",
|
||||
"REJECT-DROP": "丟棄請求",
|
||||
"PASS": "跳過此規則",
|
||||
"select": "手動選擇代理",
|
||||
"url-test": "根據網址測試延遲選擇代理",
|
||||
"fallback": "切換至另一個備用代理",
|
||||
"load-balance": "根據負載平衡分配代理",
|
||||
"relay": "根據定義的代理鏈傳送",
|
||||
"Timeout": "逾時",
|
||||
"Type": "類型",
|
||||
"Close All Connections": "關閉全部連線",
|
||||
"Rule": "規則",
|
||||
"TUN Mode automatically disabled due to service unavailable": "由於服務不可使用,虛擬網路介面卡模式已自動停用",
|
||||
"Failed to disable TUN Mode automatically": "自動停用虛擬網路介面卡模式失敗",
|
||||
"active": "作用中",
|
||||
"unknown": "未知",
|
||||
"Install": "安裝",
|
||||
"Uninstall": "解除安裝",
|
||||
"System Proxy": "系統代理",
|
||||
"Release Version": "正式版",
|
||||
"Alpha Version": "預覽版",
|
||||
"theme.light": "淺色",
|
||||
"theme.dark": "深色",
|
||||
"theme.system": "系統",
|
||||
"Exit": "離開",
|
||||
"Profile Imported Successfully": "匯入設定檔成功",
|
||||
"Stopping Core...": "內核停止中...",
|
||||
"Restarting Core...": "內核重啟中...",
|
||||
"Installing Service...": "安裝服務中...",
|
||||
"Uninstalling Service...": "服務解除安裝中...",
|
||||
"Service Installed Successfully": "已成功安裝服務",
|
||||
"Service Uninstalled Successfully": "已成功解除安裝服務",
|
||||
"Import Subscription Successful": "匯入訂閱成功",
|
||||
"Profile": "配置",
|
||||
"Dashboard": "儀表板",
|
||||
"Restart App": "重啟應用程式",
|
||||
"Restart Clash Core": "重啟 Clash 內核",
|
||||
"TUN Mode": "虛擬網路介面卡模式",
|
||||
"Copy Env": "複製環境變數",
|
||||
"Conf Dir": "配置目錄",
|
||||
"Core Dir": "內核目錄",
|
||||
"Logs Dir": "日誌目錄",
|
||||
"Open Dir": "開啟目錄",
|
||||
"More": "更多",
|
||||
"LightWeight Mode": "輕量模式",
|
||||
"Config Validation Failed": "訂閱配置校驗失敗,請檢查訂閱配置文件,變更已撤銷,錯誤詳情:",
|
||||
"Boot Config Validation Failed": "啟動訂閱配置校驗失敗,已使用預設配置啟動;請檢查訂閱配置文件,錯誤詳情:",
|
||||
"Core Change Config Validation Failed": "切換內核時配置校驗失敗,已使用預設配置啟動;請檢查訂閱配置文件,錯誤詳情:",
|
||||
"Config Validation Process Terminated": "驗證程序被終止",
|
||||
"Script Syntax Error": "指令碼語法錯誤,變更已撤銷",
|
||||
"Script Missing Main": "指令碼錯誤,變更已撤銷",
|
||||
"File Not Found": "檔案遺失,變更已撤銷",
|
||||
"Script File Error": "指令碼檔案錯誤,變更已撤銷",
|
||||
"Core Changed Successfully": "內核切換成功",
|
||||
"Failed to Change Core": "無法切換內核",
|
||||
"YAML Syntax Error": "YAML 語法錯誤,變更已撤銷",
|
||||
"YAML Read Error": "YAML 讀取錯誤,變更已撤銷",
|
||||
"YAML Mapping Error": "YAML 映射錯誤,變更已撤銷",
|
||||
"YAML Key Error": "YAML 鍵錯誤,變更已撤銷",
|
||||
"YAML Error": "YAML 錯誤,變更已撤銷",
|
||||
"Merge File Syntax Error": "覆寫檔案語法錯誤,變更已撤銷",
|
||||
"Merge File Mapping Error": "覆寫檔案映射錯誤,變更已撤銷",
|
||||
"Merge File Key Error": "覆寫檔案鍵錯誤,變更已撤銷",
|
||||
"Merge File Error": "覆寫檔案錯誤,變更已撤銷",
|
||||
"Service Administrator Prompt": "Clash Verge 需要管理員權限安裝系統服務",
|
||||
"Update with Clash proxy successfully": "使用 Clash 代理更新成功",
|
||||
"Update failed even with Clash proxy": "使用 Clash 代理更新也失敗",
|
||||
"Profile Imported with Clash proxy": "使用 Clash 代理匯入訂閱成功",
|
||||
"Pending": "待檢測",
|
||||
"Yes": "支援",
|
||||
"No": "不支援",
|
||||
"Failed": "測試失敗",
|
||||
"Completed": "檢測完成",
|
||||
"Disallowed ISP": "不允許的網際網路服務供應商",
|
||||
"Originals Only": "僅限原創",
|
||||
"No (IP Banned By Disney+)": "不支援(IP被Disney+禁止)",
|
||||
"Unsupported Country/Region": "不支援的國家/地區",
|
||||
"Failed (Network Connection)": "測試失敗(網路連線問題)",
|
||||
"DashboardToggledTitle": "儀錶板已切換",
|
||||
"DashboardToggledBody": "已透過快速鍵切換儀錶板顯示狀態",
|
||||
"ClashModeChangedTitle": "Clash模式切換",
|
||||
"ClashModeChangedBody": "已切換為 {mode} 模式",
|
||||
"SystemProxyToggledTitle": "系統代理切換",
|
||||
"SystemProxyToggledBody": "已透過快速鍵切換系統代理狀態",
|
||||
"TunModeToggledTitle": "TUN模式切換",
|
||||
"TunModeToggledBody": "已透過快速鍵切換TUN模式",
|
||||
"LightweightModeEnteredTitle": "輕量模式",
|
||||
"LightweightModeEnteredBody": "已透過快速鍵進入輕量模式",
|
||||
"AppQuitTitle": "應用程式退出",
|
||||
"AppQuitBody": "已透過快速鍵退出應用程式",
|
||||
"AppHiddenTitle": "應用程式隱藏",
|
||||
"AppHiddenBody": "已透過快速鍵隱藏應用程式視窗",
|
||||
"Configuration saved successfully": "設定儲存完成",
|
||||
"Failed to save configuration": "設定儲存失敗",
|
||||
"Open App Log": "Open App Log",
|
||||
"Open Core Log": "Open Core Log",
|
||||
"common": {
|
||||
"editorModes": {
|
||||
"visualization": "視覺化",
|
||||
@@ -856,7 +721,9 @@
|
||||
},
|
||||
"common": {
|
||||
"notifications": {
|
||||
"copySuccess": "複製成功"
|
||||
"copySuccess": "複製成功",
|
||||
"saveSuccess": "設定儲存完成",
|
||||
"saveFailed": "設定儲存失敗"
|
||||
}
|
||||
},
|
||||
"misc": {
|
||||
@@ -1122,6 +989,18 @@
|
||||
"testAll": "測試全部",
|
||||
"new": "新增"
|
||||
}
|
||||
},
|
||||
"statuses": {
|
||||
"pending": "待檢測",
|
||||
"yes": "支援",
|
||||
"no": "不支援",
|
||||
"failed": "測試失敗",
|
||||
"completed": "檢測完成",
|
||||
"disallowedIsp": "不允許的網際網路服務供應商",
|
||||
"originalsOnly": "僅限原創",
|
||||
"noDisney": "不支援(IP被Disney+禁止)",
|
||||
"unsupportedRegion": "不支援的國家/地區",
|
||||
"failedNetwork": "測試失敗(網路連線問題)"
|
||||
}
|
||||
},
|
||||
"proxies": {
|
||||
@@ -1237,6 +1116,11 @@
|
||||
"forceRefreshCompleted": "Force refresh completed",
|
||||
"emergencyRefreshFailed": "Emergency refresh failed: {{message}}"
|
||||
}
|
||||
},
|
||||
"notifications": {
|
||||
"importSuccess": "匯入設定檔成功",
|
||||
"importSubscriptionSuccess": "匯入訂閱成功",
|
||||
"importWithClashProxy": "使用 Clash 代理匯入訂閱成功"
|
||||
}
|
||||
},
|
||||
"connections": {
|
||||
@@ -1292,5 +1176,79 @@
|
||||
"memoryUsage": "內核佔用"
|
||||
}
|
||||
}
|
||||
},
|
||||
"proxy": {
|
||||
"strategies": {
|
||||
"select": "手動選擇代理",
|
||||
"url-test": "根據網址測試延遲選擇代理",
|
||||
"fallback": "切換至另一個備用代理",
|
||||
"load-balance": "根據負載平衡分配代理",
|
||||
"relay": "根據定義的代理鏈傳送"
|
||||
}
|
||||
},
|
||||
"system": {
|
||||
"notifications": {
|
||||
"tunMode": {
|
||||
"autoDisabled": "由於服務不可使用,虛擬網路介面卡模式已自動停用",
|
||||
"autoDisableFailed": "自動停用虛擬網路介面卡模式失敗"
|
||||
}
|
||||
},
|
||||
"labels": {
|
||||
"releaseVersion": "正式版",
|
||||
"alphaVersion": "預覽版"
|
||||
}
|
||||
},
|
||||
"core": {
|
||||
"status": {
|
||||
"stopping": "內核停止中...",
|
||||
"restarting": "內核重啟中..."
|
||||
},
|
||||
"notifications": {
|
||||
"changeSuccess": "內核切換成功",
|
||||
"changeFailed": "無法切換內核"
|
||||
}
|
||||
},
|
||||
"service": {
|
||||
"status": {
|
||||
"installing": "安裝服務中...",
|
||||
"uninstalling": "服務解除安裝中..."
|
||||
},
|
||||
"notifications": {
|
||||
"installSuccess": "已成功安裝服務",
|
||||
"uninstallSuccess": "已成功解除安裝服務"
|
||||
}
|
||||
},
|
||||
"validation": {
|
||||
"config": {
|
||||
"failed": "訂閱配置校驗失敗,請檢查訂閱配置文件,變更已撤銷,錯誤詳情:",
|
||||
"bootFailed": "啟動訂閱配置校驗失敗,已使用預設配置啟動;請檢查訂閱配置文件,錯誤詳情:",
|
||||
"coreChangeFailed": "切換內核時配置校驗失敗,已使用預設配置啟動;請檢查訂閱配置文件,錯誤詳情:",
|
||||
"processTerminated": "驗證程序被終止"
|
||||
},
|
||||
"script": {
|
||||
"syntaxError": "指令碼語法錯誤,變更已撤銷",
|
||||
"missingMain": "指令碼錯誤,變更已撤銷",
|
||||
"fileNotFound": "檔案遺失,變更已撤銷",
|
||||
"fileError": "指令碼檔案錯誤,變更已撤銷"
|
||||
},
|
||||
"yaml": {
|
||||
"syntaxError": "YAML 語法錯誤,變更已撤銷",
|
||||
"readError": "YAML 讀取錯誤,變更已撤銷",
|
||||
"mappingError": "YAML 映射錯誤,變更已撤銷",
|
||||
"keyError": "YAML 鍵錯誤,變更已撤銷",
|
||||
"generalError": "YAML 錯誤,變更已撤銷"
|
||||
},
|
||||
"merge": {
|
||||
"syntaxError": "覆寫檔案語法錯誤,變更已撤銷",
|
||||
"mappingError": "覆寫檔案映射錯誤,變更已撤銷",
|
||||
"keyError": "覆寫檔案鍵錯誤,變更已撤銷",
|
||||
"generalError": "覆寫檔案錯誤,變更已撤銷"
|
||||
}
|
||||
},
|
||||
"updates": {
|
||||
"notifications": {
|
||||
"withClashProxySuccess": "使用 Clash 代理更新成功",
|
||||
"withClashProxyFailed": "使用 Clash 代理更新也失敗"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@ export const handleNoticeMessage = (
|
||||
const handlers: Record<string, () => void> = {
|
||||
"import_sub_url::ok": () => {
|
||||
navigate("/profile", { state: { current: msg } });
|
||||
showNotice.success("Import Subscription Successful");
|
||||
showNotice.success("profiles.notifications.importSubscriptionSuccess");
|
||||
},
|
||||
"import_sub_url::error": () => {
|
||||
navigate("/profile");
|
||||
@@ -20,49 +20,50 @@ export const handleNoticeMessage = (
|
||||
},
|
||||
"set_config::error": () => showNotice.error(msg),
|
||||
update_with_clash_proxy: () =>
|
||||
showNotice.success("Update with Clash proxy successfully", msg),
|
||||
showNotice.success("updates.notifications.withClashProxySuccess", msg),
|
||||
update_failed_even_with_clash: () =>
|
||||
showNotice.error("Update failed even with Clash proxy", msg),
|
||||
showNotice.error("updates.notifications.withClashProxyFailed", msg),
|
||||
update_failed: () => showNotice.error(msg),
|
||||
"config_validate::boot_error": () =>
|
||||
showNotice.error("Boot Config Validation Failed", msg),
|
||||
showNotice.error("validation.config.bootFailed", msg),
|
||||
"config_validate::core_change": () =>
|
||||
showNotice.error("Core Change Config Validation Failed", msg),
|
||||
showNotice.error("validation.config.coreChangeFailed", msg),
|
||||
"config_validate::error": () =>
|
||||
showNotice.error("Config Validation Failed", msg),
|
||||
showNotice.error("validation.config.failed", msg),
|
||||
"config_validate::process_terminated": () =>
|
||||
showNotice.error("Config Validation Process Terminated"),
|
||||
showNotice.error("validation.config.processTerminated"),
|
||||
"config_validate::stdout_error": () =>
|
||||
showNotice.error("Config Validation Failed", msg),
|
||||
showNotice.error("validation.config.failed", msg),
|
||||
"config_validate::script_error": () =>
|
||||
showNotice.error("Script File Error", msg),
|
||||
showNotice.error("validation.script.fileError", msg),
|
||||
"config_validate::script_syntax_error": () =>
|
||||
showNotice.error("Script Syntax Error", msg),
|
||||
showNotice.error("validation.script.syntaxError", msg),
|
||||
"config_validate::script_missing_main": () =>
|
||||
showNotice.error("Script Missing Main", msg),
|
||||
showNotice.error("validation.script.missingMain", msg),
|
||||
"config_validate::file_not_found": () =>
|
||||
showNotice.error("File Not Found", msg),
|
||||
showNotice.error("validation.script.fileNotFound", msg),
|
||||
"config_validate::yaml_syntax_error": () =>
|
||||
showNotice.error("YAML Syntax Error", msg),
|
||||
showNotice.error("validation.yaml.syntaxError", msg),
|
||||
"config_validate::yaml_read_error": () =>
|
||||
showNotice.error("YAML Read Error", msg),
|
||||
showNotice.error("validation.yaml.readError", msg),
|
||||
"config_validate::yaml_mapping_error": () =>
|
||||
showNotice.error("YAML Mapping Error", msg),
|
||||
showNotice.error("validation.yaml.mappingError", msg),
|
||||
"config_validate::yaml_key_error": () =>
|
||||
showNotice.error("YAML Key Error", msg),
|
||||
"config_validate::yaml_error": () => showNotice.error("YAML Error", msg),
|
||||
showNotice.error("validation.yaml.keyError", msg),
|
||||
"config_validate::yaml_error": () =>
|
||||
showNotice.error("validation.yaml.generalError", msg),
|
||||
"config_validate::merge_syntax_error": () =>
|
||||
showNotice.error("Merge File Syntax Error", msg),
|
||||
showNotice.error("validation.merge.syntaxError", msg),
|
||||
"config_validate::merge_mapping_error": () =>
|
||||
showNotice.error("Merge File Mapping Error", msg),
|
||||
showNotice.error("validation.merge.mappingError", msg),
|
||||
"config_validate::merge_key_error": () =>
|
||||
showNotice.error("Merge File Key Error", msg),
|
||||
showNotice.error("validation.merge.keyError", msg),
|
||||
"config_validate::merge_error": () =>
|
||||
showNotice.error("Merge File Error", msg),
|
||||
showNotice.error("validation.merge.generalError", msg),
|
||||
"config_core::change_success": () =>
|
||||
showNotice.success("Core Changed Successfully", msg),
|
||||
showNotice.success("core.notifications.changeSuccess", msg),
|
||||
"config_core::change_error": () =>
|
||||
showNotice.error("Failed to Change Core", msg),
|
||||
showNotice.error("core.notifications.changeFailed", msg),
|
||||
};
|
||||
|
||||
const handler = handlers[status];
|
||||
|
||||
@@ -289,7 +289,7 @@ const ProfilePage = () => {
|
||||
try {
|
||||
// 尝试正常导入
|
||||
await importProfile(url);
|
||||
await handleImportSuccess("Profile Imported Successfully");
|
||||
await handleImportSuccess("profiles.notifications.importSuccess");
|
||||
} catch (initialErr) {
|
||||
console.warn("[订阅导入] 首次导入失败:", initialErr);
|
||||
|
||||
@@ -300,7 +300,9 @@ const ProfilePage = () => {
|
||||
with_proxy: false,
|
||||
self_proxy: true,
|
||||
});
|
||||
await handleImportSuccess("Profile Imported with Clash proxy");
|
||||
await handleImportSuccess(
|
||||
"profiles.notifications.importWithClashProxy",
|
||||
);
|
||||
} catch (retryErr) {
|
||||
// 回退导入也失败
|
||||
showNotice.error(
|
||||
|
||||
@@ -37,6 +37,19 @@ interface UnlockItem {
|
||||
const UNLOCK_RESULTS_STORAGE_KEY = "clash_verge_unlock_results";
|
||||
const UNLOCK_RESULTS_TIME_KEY = "clash_verge_unlock_time";
|
||||
|
||||
const STATUS_LABEL_KEYS: Record<string, string> = {
|
||||
Pending: "test.statuses.pending",
|
||||
Yes: "test.statuses.yes",
|
||||
No: "test.statuses.no",
|
||||
Failed: "test.statuses.failed",
|
||||
Completed: "test.statuses.completed",
|
||||
"Disallowed ISP": "test.statuses.disallowedIsp",
|
||||
"Originals Only": "test.statuses.originalsOnly",
|
||||
"No (IP Banned By Disney+)": "test.statuses.noDisney",
|
||||
"Unsupported Country/Region": "test.statuses.unsupportedRegion",
|
||||
"Failed (Network Connection)": "test.statuses.failedNetwork",
|
||||
};
|
||||
|
||||
const UnlockPage = () => {
|
||||
const { t } = useTranslation();
|
||||
const theme = useTheme();
|
||||
@@ -366,7 +379,7 @@ const UnlockPage = () => {
|
||||
}}
|
||||
>
|
||||
<Chip
|
||||
label={t(item.status)}
|
||||
label={t(STATUS_LABEL_KEYS[item.status] ?? item.status)}
|
||||
color={getStatusColor(item.status)}
|
||||
size="small"
|
||||
icon={getStatusIcon(item.status)}
|
||||
|
||||
Reference in New Issue
Block a user