refactor: ui refresh

This commit is contained in:
zhom
2026-07-18 11:42:07 +04:00
parent 4f7910dd23
commit f1664b2950
64 changed files with 7472 additions and 2827 deletions
+88 -8
View File
@@ -197,7 +197,14 @@
"disableAutoUpdates": "Disable App Auto Updates",
"disableAutoUpdatesDescription": "Prevent the app from automatically checking and installing Donut Browser updates. Browser updates are not affected.",
"keepDecryptedProfilesInRam": "Keep Decrypted Profiles In RAM",
"keepDecryptedProfilesInRamDescription": "Preserve the decrypted in-RAM copy of password-protected profiles between launches for faster startup. The on-disk copy stays encrypted regardless."
"keepDecryptedProfilesInRamDescription": "Preserve the decrypted in-RAM copy of password-protected profiles between launches for faster startup. The on-disk copy stays encrypted regardless.",
"privacy": {
"consistencyWarning": "Fingerprint consistency warning",
"consistencyWarningDescription": "Warn on launch when a profile's timezone or language doesn't match its proxy exit node.",
"clearTraffic": "Clear all traffic history",
"clearTrafficDescription": "Securely erase recorded traffic statistics for every profile.",
"clearTrafficSuccess": "Traffic history cleared"
}
},
"header": {
"searchPlaceholder": "Search profiles...",
@@ -245,7 +252,13 @@
"cantModifyRunning": "Can't modify running profile",
"cantModifyLaunching": "Can't modify profile while launching",
"cantModifyStopping": "Can't modify profile while stopping",
"cantModifyUpdating": "Can't modify profile while browser is updating"
"cantModifyUpdating": "Can't modify profile while browser is updating",
"emptyTitle": "No profiles yet",
"emptyHint": "Create your first profile or import existing ones from another browser.",
"emptyCreate": "Create profile",
"emptyImport": "Import profiles",
"emptyFilteredTitle": "No profiles found",
"emptyFilteredHint": "No profiles match this group or search. Try another filter or create a new one."
},
"actions": {
"launch": "Launch",
@@ -1294,7 +1307,28 @@
"domains": "domains",
"fresh": "Fresh",
"stale": "Stale",
"notCached": "Not cached"
"notCached": "Not cached",
"tabBlocklists": "Blocklists",
"tabCustom": "Custom lists",
"custom.description": "Build your own blocklist from source URLs and manual rules. Allowed domains always override blocked ones.",
"custom.sourcesLabel": "Blocklist source URLs",
"custom.sourcesPlaceholder": "One URL per line",
"custom.blockLabel": "Blocked domains",
"custom.blockPlaceholder": "One domain per line",
"custom.allowLabel": "Allowed domains",
"custom.allowPlaceholder": "One domain per line",
"custom.allowHint": "Allowed domains are removed from the compiled blocklist, overriding any block rule.",
"custom.saved": "Custom DNS rules saved",
"custom.imported": "Custom DNS rules imported",
"custom.exported": "Custom DNS rules exported",
"custom.exportTxt": "Export TXT",
"custom.exportJson": "Export JSON",
"customLevel": "Custom",
"custom.allowlistModeLabel": "Allowlist mode",
"custom.allowlistModeOn": "Only the domains below are reachable; everything else is blocked.",
"custom.allowlistModeOff": "Block listed domains; allow everything else.",
"custom.allowedOnlyLabel": "Allowed domains (only these)",
"custom.allowedOnlyHint": "Subdomains of a listed domain are allowed too. An empty list disables filtering."
},
"vpns": {
"form": {
@@ -1415,7 +1449,11 @@
"statusImported": "Imported",
"statusSkipped": "Skipped",
"statusFailed": "Failed",
"importButtonCount": "Import ({{count}})"
"importButtonCount": "Import ({{count}})",
"vpnOptional": "VPN (Optional)",
"noVpn": "No VPN",
"advancedOptions": "Advanced options",
"configureFingerprint": "Configure fingerprint (optional)"
},
"syncTooltips": {
"syncing": "Syncing...",
@@ -1618,7 +1656,14 @@
"sentLegend": "Sent",
"receivedLegend": "Received",
"tooltipSent": "↑ Sent: ",
"tooltipReceived": "↓ Received: "
"tooltipReceived": "↓ Received: ",
"clearHistory": "Clear history",
"clearHistoryTitle": "Clear traffic history",
"clearHistoryDescription": "Permanently and securely erase all recorded traffic history for \"{{name}}\". This can't be undone.",
"tabOverview": "Overview",
"tabTopDomains": "Top domains",
"searchDomains": "Search domains…",
"noDomainMatch": "No domains match your search."
},
"proxyCheck": {
"unknownLocation": "Unknown",
@@ -1818,7 +1863,14 @@
"importNoItems": "Nothing selected to import",
"browserNotDownloaded": "No downloaded version of {{browser}} is available. Download it first, then retry the import.",
"archiveExtractionFailed": "Failed to extract the archive: {{detail}}",
"unsupportedArchiveFormat": "Unsupported archive format. Only ZIP archives are supported."
"unsupportedArchiveFormat": "Unsupported archive format. Only ZIP archives are supported.",
"clearOnCloseUnavailable": "Clear-on-close isn't available for ephemeral or password-protected profiles.",
"proxyAndVpnMutuallyExclusive": "A profile can use either a proxy or a VPN, not both.",
"invalidDnsRulesJson": "The selected file isn't valid DNS rules JSON.",
"unsupportedDnsRulesFormat": "Unsupported rules format: {{format}}",
"dnsRulesSaveFailed": "Failed to save the DNS rules.",
"dnsRulesExportFailed": "Failed to export the DNS rules.",
"fingerprintMatchFailed": "Couldn't match the fingerprint to the proxy."
},
"rail": {
"profiles": "Profiles",
@@ -1831,7 +1883,9 @@
"importProfile": "Import profile",
"importProfileHint": "Bring profiles from another tool",
"keyboardShortcuts": "Keyboard shortcuts",
"keyboardShortcutsHint": "View all shortcuts"
"keyboardShortcutsHint": "View all shortcuts",
"about": "About Donut Browser",
"aboutHint": "Version and app information"
},
"network": "Network",
"integrations": "Integrations",
@@ -1920,7 +1974,9 @@
"actions": {
"launchProfile": "Launch {{name}}",
"stopProfile": "Stop {{name}}",
"profileInfo": "Info — {{name}}"
"profileInfo": "Info — {{name}}",
"createProfile": "Create profile",
"about": "About Donut Browser"
}
},
"shortcuts": {
@@ -2036,5 +2092,29 @@
},
"cookieCopy": {
"noOtherTargets": "No other Wayfern profiles selected"
},
"about": {
"title": "About",
"version": "Version {{version}}",
"portableBadge": "portable",
"licenseNotice": "Open-source anti-detect browser, licensed under AGPL-3.0.",
"website": "Website"
},
"clearOnClose": {
"label": "Clear data on close",
"description": "Wipe cookies, history and cache when the browser closes. Extensions and bookmarks are kept."
},
"consistencyWarning": {
"title": "Fingerprint mismatch",
"intro": "Your proxy exit for \"{{name}}\" doesn't match this profile's fingerprint:",
"timezoneTitle": "Timezone mismatch",
"timezoneDetail": "Exit node is in {{exit}} but the fingerprint reports {{fingerprint}}.",
"languageTitle": "Language mismatch",
"languageDetail": "Exit country is {{country}} but the fingerprint language is {{fingerprint}}.",
"explainer": "A timezone or language that disagrees with your exit IP is a strong anti-bot signal, even though your real device never leaks. Align the fingerprint with the proxy location to reduce hostile treatment.",
"dontWarnAgain": "Don't warn again for this profile",
"matchToProxy": "Match fingerprint to proxy",
"matching": "Matching…",
"matchSuccess": "Fingerprint updated to match the proxy. Relaunch the profile to apply."
}
}
+88 -8
View File
@@ -197,7 +197,14 @@
"disableAutoUpdates": "Desactivar Actualizaciones Automáticas de la App",
"disableAutoUpdatesDescription": "Evita que la aplicación busque e instale actualizaciones de Donut Browser automáticamente. Las actualizaciones de navegadores no se ven afectadas.",
"keepDecryptedProfilesInRam": "Mantener Perfiles Descifrados en RAM",
"keepDecryptedProfilesInRamDescription": "Conservar la copia descifrada en RAM de los perfiles protegidos por contraseña entre lanzamientos para un inicio más rápido. La copia en disco permanece cifrada en cualquier caso."
"keepDecryptedProfilesInRamDescription": "Conservar la copia descifrada en RAM de los perfiles protegidos por contraseña entre lanzamientos para un inicio más rápido. La copia en disco permanece cifrada en cualquier caso.",
"privacy": {
"consistencyWarning": "Advertencia de consistencia de huella digital",
"consistencyWarningDescription": "Advertir al iniciar cuando la zona horaria o el idioma de un perfil no coincidan con su nodo de salida del proxy.",
"clearTraffic": "Borrar todo el historial de tráfico",
"clearTrafficDescription": "Elimina de forma segura las estadísticas de tráfico registradas de todos los perfiles.",
"clearTrafficSuccess": "Historial de tráfico borrado"
}
},
"header": {
"searchPlaceholder": "Buscar perfiles...",
@@ -245,7 +252,13 @@
"cantModifyRunning": "No se puede modificar un perfil en ejecución",
"cantModifyLaunching": "No se puede modificar el perfil mientras se inicia",
"cantModifyStopping": "No se puede modificar el perfil mientras se detiene",
"cantModifyUpdating": "No se puede modificar el perfil mientras se actualiza el navegador"
"cantModifyUpdating": "No se puede modificar el perfil mientras se actualiza el navegador",
"emptyTitle": "Aún no hay perfiles",
"emptyHint": "Crea tu primer perfil o importa perfiles existentes desde otro navegador.",
"emptyCreate": "Crear perfil",
"emptyImport": "Importar perfiles",
"emptyFilteredTitle": "No se encontraron perfiles",
"emptyFilteredHint": "Ningún perfil coincide con este grupo o búsqueda. Prueba otro filtro o crea uno nuevo."
},
"actions": {
"launch": "Iniciar",
@@ -1294,7 +1307,28 @@
"domains": "dominios",
"fresh": "Actualizado",
"stale": "Desactualizado",
"notCached": "Sin caché"
"notCached": "Sin caché",
"tabBlocklists": "Listas de bloqueo",
"tabCustom": "Listas personalizadas",
"custom.description": "Crea tu propia lista de bloqueo a partir de URLs de origen y reglas manuales. Los dominios permitidos siempre prevalecen sobre los bloqueados.",
"custom.sourcesLabel": "URLs de origen de listas de bloqueo",
"custom.sourcesPlaceholder": "Una URL por línea",
"custom.blockLabel": "Dominios bloqueados",
"custom.blockPlaceholder": "Un dominio por línea",
"custom.allowLabel": "Dominios permitidos",
"custom.allowPlaceholder": "Un dominio por línea",
"custom.allowHint": "Los dominios permitidos se eliminan de la lista de bloqueo compilada, anulando cualquier regla de bloqueo.",
"custom.saved": "Reglas DNS personalizadas guardadas",
"custom.imported": "Reglas DNS personalizadas importadas",
"custom.exported": "Reglas DNS personalizadas exportadas",
"custom.exportTxt": "Exportar TXT",
"custom.exportJson": "Exportar JSON",
"customLevel": "Personalizada",
"custom.allowlistModeLabel": "Modo lista de permitidos",
"custom.allowlistModeOn": "Solo se puede acceder a los dominios de abajo; todo lo demás se bloquea.",
"custom.allowlistModeOff": "Bloquear los dominios de la lista; permitir todo lo demás.",
"custom.allowedOnlyLabel": "Dominios permitidos (solo estos)",
"custom.allowedOnlyHint": "También se permiten los subdominios de un dominio de la lista. Una lista vacía desactiva el filtrado."
},
"vpns": {
"form": {
@@ -1415,7 +1449,11 @@
"statusImported": "Importado",
"statusSkipped": "Omitido",
"statusFailed": "Fallido",
"importButtonCount": "Importar ({{count}})"
"importButtonCount": "Importar ({{count}})",
"vpnOptional": "VPN (opcional)",
"noVpn": "Sin VPN",
"advancedOptions": "Opciones avanzadas",
"configureFingerprint": "Configurar huella digital (opcional)"
},
"syncTooltips": {
"syncing": "Sincronizando...",
@@ -1618,7 +1656,14 @@
"sentLegend": "Enviado",
"receivedLegend": "Recibido",
"tooltipSent": "↑ Enviado: ",
"tooltipReceived": "↓ Recibido: "
"tooltipReceived": "↓ Recibido: ",
"clearHistory": "Borrar historial",
"clearHistoryTitle": "Borrar historial de tráfico",
"clearHistoryDescription": "Elimina de forma permanente y segura todo el historial de tráfico registrado de \"{{name}}\". Esta acción no se puede deshacer.",
"tabOverview": "Resumen",
"tabTopDomains": "Dominios principales",
"searchDomains": "Buscar dominios…",
"noDomainMatch": "Ningún dominio coincide con tu búsqueda."
},
"proxyCheck": {
"unknownLocation": "Desconocido",
@@ -1818,7 +1863,14 @@
"importNoItems": "No hay nada seleccionado para importar",
"browserNotDownloaded": "No hay ninguna versión descargada de {{browser}}. Descárgala primero y vuelve a intentar la importación.",
"archiveExtractionFailed": "No se pudo extraer el archivo: {{detail}}",
"unsupportedArchiveFormat": "Formato de archivo no compatible. Solo se admiten archivos ZIP."
"unsupportedArchiveFormat": "Formato de archivo no compatible. Solo se admiten archivos ZIP.",
"clearOnCloseUnavailable": "El borrado al cerrar no está disponible para perfiles efímeros o protegidos con contraseña.",
"proxyAndVpnMutuallyExclusive": "Un perfil puede usar un proxy o una VPN, pero no ambos.",
"invalidDnsRulesJson": "El archivo seleccionado no es un JSON de reglas DNS válido.",
"unsupportedDnsRulesFormat": "Formato de reglas no compatible: {{format}}",
"dnsRulesSaveFailed": "No se pudieron guardar las reglas DNS.",
"dnsRulesExportFailed": "No se pudieron exportar las reglas DNS.",
"fingerprintMatchFailed": "No se pudo ajustar la huella al proxy."
},
"rail": {
"profiles": "Perfiles",
@@ -1831,7 +1883,9 @@
"importProfile": "Importar perfil",
"importProfileHint": "Trae perfiles de otra herramienta",
"keyboardShortcuts": "Atajos de teclado",
"keyboardShortcutsHint": "Ver todos los atajos"
"keyboardShortcutsHint": "Ver todos los atajos",
"about": "Acerca de Donut Browser",
"aboutHint": "Versión e información de la aplicación"
},
"network": "Red",
"integrations": "Integraciones",
@@ -1920,7 +1974,9 @@
"actions": {
"launchProfile": "Iniciar {{name}}",
"stopProfile": "Detener {{name}}",
"profileInfo": "Información — {{name}}"
"profileInfo": "Información — {{name}}",
"createProfile": "Crear perfil",
"about": "Acerca de Donut Browser"
}
},
"shortcuts": {
@@ -2036,5 +2092,29 @@
},
"cookieCopy": {
"noOtherTargets": "No hay otros perfiles Wayfern seleccionados"
},
"about": {
"title": "Acerca de",
"version": "Versión {{version}}",
"portableBadge": "portable",
"licenseNotice": "Navegador anti-detección de código abierto, con licencia AGPL-3.0.",
"website": "Sitio web"
},
"clearOnClose": {
"label": "Borrar datos al cerrar",
"description": "Elimina cookies, historial y caché al cerrar el navegador. Las extensiones y los marcadores se conservan."
},
"consistencyWarning": {
"title": "Discrepancia de huella digital",
"intro": "La salida del proxy de \"{{name}}\" no coincide con la huella digital de este perfil:",
"timezoneTitle": "Discrepancia de zona horaria",
"timezoneDetail": "El nodo de salida está en {{exit}}, pero la huella digital indica {{fingerprint}}.",
"languageTitle": "Discrepancia de idioma",
"languageDetail": "El país de salida es {{country}}, pero el idioma de la huella digital es {{fingerprint}}.",
"explainer": "Una zona horaria o un idioma que no coincide con tu IP de salida es una fuerte señal anti-bot, aunque tu dispositivo real nunca se filtre. Alinea la huella digital con la ubicación del proxy para reducir el trato hostil.",
"dontWarnAgain": "No volver a advertir para este perfil",
"matchToProxy": "Ajustar huella al proxy",
"matching": "Ajustando…",
"matchSuccess": "Huella actualizada para coincidir con el proxy. Reinicia el perfil para aplicar."
}
}
+88 -8
View File
@@ -197,7 +197,14 @@
"disableAutoUpdates": "Désactiver les mises à jour automatiques de l'app",
"disableAutoUpdatesDescription": "Empêche l'application de vérifier et d'installer automatiquement les mises à jour de Donut Browser. Les mises à jour des navigateurs ne sont pas affectées.",
"keepDecryptedProfilesInRam": "Conserver les profils déchiffrés en RAM",
"keepDecryptedProfilesInRamDescription": "Conserver en RAM la copie déchiffrée des profils protégés par mot de passe entre les lancements pour un démarrage plus rapide. La copie sur disque reste chiffrée dans tous les cas."
"keepDecryptedProfilesInRamDescription": "Conserver en RAM la copie déchiffrée des profils protégés par mot de passe entre les lancements pour un démarrage plus rapide. La copie sur disque reste chiffrée dans tous les cas.",
"privacy": {
"consistencyWarning": "Avertissement de cohérence d'empreinte",
"consistencyWarningDescription": "Avertir au lancement lorsque le fuseau horaire ou la langue d'un profil ne correspond pas à son nœud de sortie proxy.",
"clearTraffic": "Effacer tout l'historique de trafic",
"clearTrafficDescription": "Efface en toute sécurité les statistiques de trafic enregistrées pour chaque profil.",
"clearTrafficSuccess": "Historique de trafic effacé"
}
},
"header": {
"searchPlaceholder": "Rechercher des profils...",
@@ -245,7 +252,13 @@
"cantModifyRunning": "Impossible de modifier un profil en cours d'exécution",
"cantModifyLaunching": "Impossible de modifier le profil pendant le lancement",
"cantModifyStopping": "Impossible de modifier le profil pendant l'arrêt",
"cantModifyUpdating": "Impossible de modifier le profil pendant la mise à jour du navigateur"
"cantModifyUpdating": "Impossible de modifier le profil pendant la mise à jour du navigateur",
"emptyTitle": "Aucun profil pour l'instant",
"emptyHint": "Créez votre premier profil ou importez des profils existants depuis un autre navigateur.",
"emptyCreate": "Créer un profil",
"emptyImport": "Importer des profils",
"emptyFilteredTitle": "Aucun profil trouvé",
"emptyFilteredHint": "Aucun profil ne correspond à ce groupe ou à cette recherche. Essayez un autre filtre ou créez-en un."
},
"actions": {
"launch": "Lancer",
@@ -1294,7 +1307,28 @@
"domains": "domaines",
"fresh": "À jour",
"stale": "Obsolète",
"notCached": "Non mis en cache"
"notCached": "Non mis en cache",
"tabBlocklists": "Listes de blocage",
"tabCustom": "Listes personnalisées",
"custom.description": "Créez votre propre liste de blocage à partir d'URL sources et de règles manuelles. Les domaines autorisés priment toujours sur les domaines bloqués.",
"custom.sourcesLabel": "URL sources de listes de blocage",
"custom.sourcesPlaceholder": "Une URL par ligne",
"custom.blockLabel": "Domaines bloqués",
"custom.blockPlaceholder": "Un domaine par ligne",
"custom.allowLabel": "Domaines autorisés",
"custom.allowPlaceholder": "Un domaine par ligne",
"custom.allowHint": "Les domaines autorisés sont retirés de la liste de blocage compilée et priment sur toute règle de blocage.",
"custom.saved": "Règles DNS personnalisées enregistrées",
"custom.imported": "Règles DNS personnalisées importées",
"custom.exported": "Règles DNS personnalisées exportées",
"custom.exportTxt": "Exporter en TXT",
"custom.exportJson": "Exporter en JSON",
"customLevel": "Personnalisée",
"custom.allowlistModeLabel": "Mode liste d'autorisation",
"custom.allowlistModeOn": "Seuls les domaines ci-dessous sont accessibles ; tout le reste est bloqué.",
"custom.allowlistModeOff": "Bloquer les domaines listés ; autoriser tout le reste.",
"custom.allowedOnlyLabel": "Domaines autorisés (uniquement ceux-ci)",
"custom.allowedOnlyHint": "Les sous-domaines d'un domaine listé sont aussi autorisés. Une liste vide désactive le filtrage."
},
"vpns": {
"form": {
@@ -1415,7 +1449,11 @@
"statusImported": "Importé",
"statusSkipped": "Ignoré",
"statusFailed": "Échec",
"importButtonCount": "Importer ({{count}})"
"importButtonCount": "Importer ({{count}})",
"vpnOptional": "VPN (facultatif)",
"noVpn": "Sans VPN",
"advancedOptions": "Options avancées",
"configureFingerprint": "Configurer l'empreinte (facultatif)"
},
"syncTooltips": {
"syncing": "Synchronisation...",
@@ -1618,7 +1656,14 @@
"sentLegend": "Envoyé",
"receivedLegend": "Reçu",
"tooltipSent": "↑ Envoyé : ",
"tooltipReceived": "↓ Reçu : "
"tooltipReceived": "↓ Reçu : ",
"clearHistory": "Effacer l'historique",
"clearHistoryTitle": "Effacer l'historique de trafic",
"clearHistoryDescription": "Efface définitivement et en toute sécurité tout l'historique de trafic enregistré pour « {{name}} ». Cette action est irréversible.",
"tabOverview": "Vue d'ensemble",
"tabTopDomains": "Principaux domaines",
"searchDomains": "Rechercher des domaines…",
"noDomainMatch": "Aucun domaine ne correspond à votre recherche."
},
"proxyCheck": {
"unknownLocation": "Inconnu",
@@ -1818,7 +1863,14 @@
"importNoItems": "Rien n'est sélectionné pour l'importation",
"browserNotDownloaded": "Aucune version téléchargée de {{browser}} n'est disponible. Téléchargez-la d'abord, puis réessayez l'importation.",
"archiveExtractionFailed": "Échec de l'extraction de l'archive : {{detail}}",
"unsupportedArchiveFormat": "Format d'archive non pris en charge. Seules les archives ZIP sont prises en charge."
"unsupportedArchiveFormat": "Format d'archive non pris en charge. Seules les archives ZIP sont prises en charge.",
"clearOnCloseUnavailable": "L'effacement à la fermeture n'est pas disponible pour les profils éphémères ou protégés par mot de passe.",
"proxyAndVpnMutuallyExclusive": "Un profil peut utiliser un proxy ou un VPN, mais pas les deux.",
"invalidDnsRulesJson": "Le fichier sélectionné n'est pas un JSON de règles DNS valide.",
"unsupportedDnsRulesFormat": "Format de règles non pris en charge : {{format}}",
"dnsRulesSaveFailed": "Échec de l'enregistrement des règles DNS.",
"dnsRulesExportFailed": "Échec de l'exportation des règles DNS.",
"fingerprintMatchFailed": "Impossible d'aligner l'empreinte sur le proxy."
},
"rail": {
"profiles": "Profils",
@@ -1831,7 +1883,9 @@
"importProfile": "Importer un profil",
"importProfileHint": "Importer depuis un autre outil",
"keyboardShortcuts": "Raccourcis clavier",
"keyboardShortcutsHint": "Voir tous les raccourcis"
"keyboardShortcutsHint": "Voir tous les raccourcis",
"about": "À propos de Donut Browser",
"aboutHint": "Version et informations sur l'application"
},
"network": "Réseau",
"integrations": "Intégrations",
@@ -1920,7 +1974,9 @@
"actions": {
"launchProfile": "Lancer {{name}}",
"stopProfile": "Arrêter {{name}}",
"profileInfo": "Informations — {{name}}"
"profileInfo": "Informations — {{name}}",
"createProfile": "Créer un profil",
"about": "À propos de Donut Browser"
}
},
"shortcuts": {
@@ -2036,5 +2092,29 @@
},
"cookieCopy": {
"noOtherTargets": "Aucun autre profil Wayfern sélectionné"
},
"about": {
"title": "À propos",
"version": "Version {{version}}",
"portableBadge": "portable",
"licenseNotice": "Navigateur anti-détection open source, sous licence AGPL-3.0.",
"website": "Site web"
},
"clearOnClose": {
"label": "Effacer les données à la fermeture",
"description": "Supprime les cookies, l'historique et le cache à la fermeture du navigateur. Les extensions et les favoris sont conservés."
},
"consistencyWarning": {
"title": "Incohérence d'empreinte",
"intro": "La sortie du proxy de « {{name}} » ne correspond pas à l'empreinte de ce profil :",
"timezoneTitle": "Incohérence de fuseau horaire",
"timezoneDetail": "Le nœud de sortie est dans {{exit}}, mais l'empreinte indique {{fingerprint}}.",
"languageTitle": "Incohérence de langue",
"languageDetail": "Le pays de sortie est {{country}}, mais la langue de l'empreinte est {{fingerprint}}.",
"explainer": "Un fuseau horaire ou une langue en désaccord avec votre IP de sortie est un signal anti-bot fort, même si votre appareil réel ne fuite jamais. Alignez l'empreinte sur l'emplacement du proxy pour réduire les traitements hostiles.",
"dontWarnAgain": "Ne plus avertir pour ce profil",
"matchToProxy": "Aligner l'empreinte sur le proxy",
"matching": "Alignement…",
"matchSuccess": "Empreinte mise à jour pour correspondre au proxy. Relancez le profil pour l'appliquer."
}
}
+88 -8
View File
@@ -197,7 +197,14 @@
"disableAutoUpdates": "アプリの自動更新を無効にする",
"disableAutoUpdatesDescription": "Donut Browserの自動更新確認・インストールを無効にします。ブラウザの更新には影響しません。",
"keepDecryptedProfilesInRam": "復号済みプロファイルをRAMに保持",
"keepDecryptedProfilesInRamDescription": "起動を高速化するため、パスワード保護されたプロファイルの復号済みコピーをRAMに保持します。ディスク上のコピーは常に暗号化されたままです。"
"keepDecryptedProfilesInRamDescription": "起動を高速化するため、パスワード保護されたプロファイルの復号済みコピーをRAMに保持します。ディスク上のコピーは常に暗号化されたままです。",
"privacy": {
"consistencyWarning": "フィンガープリント整合性の警告",
"consistencyWarningDescription": "プロファイルのタイムゾーンや言語がプロキシ出口ノードと一致しない場合、起動時に警告します。",
"clearTraffic": "すべてのトラフィック履歴を消去",
"clearTrafficDescription": "すべてのプロファイルの記録されたトラフィック統計を安全に消去します。",
"clearTrafficSuccess": "トラフィック履歴を消去しました"
}
},
"header": {
"searchPlaceholder": "プロファイルを検索...",
@@ -245,7 +252,13 @@
"cantModifyRunning": "実行中のプロファイルは変更できません",
"cantModifyLaunching": "起動中はプロファイルを変更できません",
"cantModifyStopping": "停止中はプロファイルを変更できません",
"cantModifyUpdating": "ブラウザの更新中はプロファイルを変更できません"
"cantModifyUpdating": "ブラウザの更新中はプロファイルを変更できません",
"emptyTitle": "プロファイルはまだありません",
"emptyHint": "最初のプロファイルを作成するか、他のブラウザから既存のプロファイルをインポートしてください。",
"emptyCreate": "プロファイルを作成",
"emptyImport": "プロファイルをインポート",
"emptyFilteredTitle": "プロファイルが見つかりません",
"emptyFilteredHint": "このグループまたは検索に一致するプロファイルはありません。別のフィルターを試すか、新規作成してください。"
},
"actions": {
"launch": "起動",
@@ -1294,7 +1307,28 @@
"domains": "ドメイン",
"fresh": "最新",
"stale": "期限切れ",
"notCached": "キャッシュなし"
"notCached": "キャッシュなし",
"tabBlocklists": "ブロックリスト",
"tabCustom": "カスタムリスト",
"custom.description": "ソース URL と手動ルールから独自のブロックリストを作成します。許可ドメインは常にブロックより優先されます。",
"custom.sourcesLabel": "ブロックリストのソース URL",
"custom.sourcesPlaceholder": "1 行につき 1 つの URL",
"custom.blockLabel": "ブロックするドメイン",
"custom.blockPlaceholder": "1 行につき 1 つのドメイン",
"custom.allowLabel": "許可するドメイン",
"custom.allowPlaceholder": "1 行につき 1 つのドメイン",
"custom.allowHint": "許可ドメインはコンパイル済みブロックリストから除外され、あらゆるブロックルールより優先されます。",
"custom.saved": "カスタム DNS ルールを保存しました",
"custom.imported": "カスタム DNS ルールをインポートしました",
"custom.exported": "カスタム DNS ルールをエクスポートしました",
"custom.exportTxt": "TXT をエクスポート",
"custom.exportJson": "JSON をエクスポート",
"customLevel": "カスタム",
"custom.allowlistModeLabel": "許可リストモード",
"custom.allowlistModeOn": "下記のドメインのみアクセス可能で、それ以外はすべてブロックされます。",
"custom.allowlistModeOff": "リストのドメインをブロックし、それ以外はすべて許可します。",
"custom.allowedOnlyLabel": "許可するドメイン(これらのみ)",
"custom.allowedOnlyHint": "リスト内ドメインのサブドメインも許可されます。リストが空の場合はフィルタリングが無効になります。"
},
"vpns": {
"form": {
@@ -1415,7 +1449,11 @@
"statusImported": "インポート済み",
"statusSkipped": "スキップ",
"statusFailed": "失敗",
"importButtonCount": "インポート ({{count}})"
"importButtonCount": "インポート ({{count}})",
"vpnOptional": "VPN(任意)",
"noVpn": "VPNなし",
"advancedOptions": "詳細オプション",
"configureFingerprint": "フィンガープリントを設定(任意)"
},
"syncTooltips": {
"syncing": "同期中...",
@@ -1618,7 +1656,14 @@
"sentLegend": "送信",
"receivedLegend": "受信",
"tooltipSent": "↑ 送信: ",
"tooltipReceived": "↓ 受信: "
"tooltipReceived": "↓ 受信: ",
"clearHistory": "履歴を消去",
"clearHistoryTitle": "トラフィック履歴を消去",
"clearHistoryDescription": "「{{name}}」の記録されたトラフィック履歴をすべて完全かつ安全に消去します。この操作は元に戻せません。",
"tabOverview": "概要",
"tabTopDomains": "上位ドメイン",
"searchDomains": "ドメインを検索…",
"noDomainMatch": "検索に一致するドメインはありません。"
},
"proxyCheck": {
"unknownLocation": "不明",
@@ -1818,7 +1863,14 @@
"importNoItems": "インポートする項目が選択されていません",
"browserNotDownloaded": "{{browser}}のダウンロード済みバージョンがありません。先にダウンロードしてから、再度インポートしてください。",
"archiveExtractionFailed": "アーカイブの展開に失敗しました:{{detail}}",
"unsupportedArchiveFormat": "サポートされていないアーカイブ形式です。ZIPアーカイブのみサポートされています。"
"unsupportedArchiveFormat": "サポートされていないアーカイブ形式です。ZIPアーカイブのみサポートされています。",
"clearOnCloseUnavailable": "終了時消去は、一時プロファイルやパスワード保護されたプロファイルでは利用できません。",
"proxyAndVpnMutuallyExclusive": "プロファイルにはプロキシまたは VPN のいずれかを設定できます(両方は設定できません)。",
"invalidDnsRulesJson": "選択したファイルは有効な DNS ルール JSON ではありません。",
"unsupportedDnsRulesFormat": "サポートされていないルール形式: {{format}}",
"dnsRulesSaveFailed": "DNS ルールを保存できませんでした。",
"dnsRulesExportFailed": "DNS ルールをエクスポートできませんでした。",
"fingerprintMatchFailed": "フィンガープリントをプロキシに合わせられませんでした。"
},
"rail": {
"profiles": "プロファイル",
@@ -1831,7 +1883,9 @@
"importProfile": "プロファイルをインポート",
"importProfileHint": "別のツールから取り込む",
"keyboardShortcuts": "キーボードショートカット",
"keyboardShortcutsHint": "すべてのショートカットを表示"
"keyboardShortcutsHint": "すべてのショートカットを表示",
"about": "Donut Browser について",
"aboutHint": "バージョンとアプリ情報"
},
"network": "ネットワーク",
"integrations": "連携",
@@ -1920,7 +1974,9 @@
"actions": {
"launchProfile": "{{name}} を起動",
"stopProfile": "{{name}} を停止",
"profileInfo": "情報 — {{name}}"
"profileInfo": "情報 — {{name}}",
"createProfile": "プロファイルを作成",
"about": "Donut Browser について"
}
},
"shortcuts": {
@@ -2036,5 +2092,29 @@
},
"cookieCopy": {
"noOtherTargets": "他に Wayfern プロファイルが選択されていません"
},
"about": {
"title": "このアプリについて",
"version": "バージョン {{version}}",
"portableBadge": "ポータブル",
"licenseNotice": "AGPL-3.0 ライセンスのオープンソース・アンチディテクトブラウザです。",
"website": "ウェブサイト"
},
"clearOnClose": {
"label": "終了時にデータを消去",
"description": "ブラウザを閉じるときに Cookie、履歴、キャッシュを消去します。拡張機能とブックマークは保持されます。"
},
"consistencyWarning": {
"title": "フィンガープリントの不一致",
"intro": "「{{name}}」のプロキシ出口がこのプロファイルのフィンガープリントと一致していません:",
"timezoneTitle": "タイムゾーンの不一致",
"timezoneDetail": "出口ノードは {{exit}} にありますが、フィンガープリントは {{fingerprint}} を示しています。",
"languageTitle": "言語の不一致",
"languageDetail": "出口の国は {{country}} ですが、フィンガープリントの言語は {{fingerprint}} です。",
"explainer": "出口 IP と食い違うタイムゾーンや言語は、実際のデバイス情報が漏れていなくても強力なアンチボットシグナルになります。フィンガープリントをプロキシの場所に合わせて、警戒される扱いを減らしましょう。",
"dontWarnAgain": "このプロファイルでは今後警告しない",
"matchToProxy": "フィンガープリントをプロキシに合わせる",
"matching": "調整中…",
"matchSuccess": "フィンガープリントをプロキシに合わせて更新しました。反映するにはプロファイルを再起動してください。"
}
}
+88 -8
View File
@@ -197,7 +197,14 @@
"disableAutoUpdates": "앱 자동 업데이트 사용 안 함",
"disableAutoUpdatesDescription": "Donut Browser 업데이트를 앱이 자동으로 확인하고 설치하지 않도록 합니다. 브라우저 업데이트는 영향을 받지 않습니다.",
"keepDecryptedProfilesInRam": "복호화된 프로필을 RAM에 유지",
"keepDecryptedProfilesInRamDescription": "비밀번호로 보호된 프로필의 복호화된 RAM 사본을 실행 사이에 유지하여 시작 속도를 높입니다. 디스크의 사본은 그대로 암호화된 상태로 유지됩니다."
"keepDecryptedProfilesInRamDescription": "비밀번호로 보호된 프로필의 복호화된 RAM 사본을 실행 사이에 유지하여 시작 속도를 높입니다. 디스크의 사본은 그대로 암호화된 상태로 유지됩니다.",
"privacy": {
"consistencyWarning": "핑거프린트 일관성 경고",
"consistencyWarningDescription": "프로필의 시간대나 언어가 프록시 출구 노드와 일치하지 않으면 실행 시 경고합니다.",
"clearTraffic": "모든 트래픽 기록 지우기",
"clearTrafficDescription": "모든 프로필의 기록된 트래픽 통계를 안전하게 지웁니다.",
"clearTrafficSuccess": "트래픽 기록이 지워졌습니다"
}
},
"header": {
"searchPlaceholder": "프로필 검색...",
@@ -245,7 +252,13 @@
"cantModifyRunning": "실행 중인 프로필은 수정할 수 없습니다",
"cantModifyLaunching": "실행하는 동안 프로필을 수정할 수 없습니다",
"cantModifyStopping": "중지하는 동안 프로필을 수정할 수 없습니다",
"cantModifyUpdating": "브라우저 업데이트 중에는 프로필을 수정할 수 없습니다"
"cantModifyUpdating": "브라우저 업데이트 중에는 프로필을 수정할 수 없습니다",
"emptyTitle": "아직 프로필이 없습니다",
"emptyHint": "첫 프로필을 만들거나 다른 브라우저에서 기존 프로필을 가져오세요.",
"emptyCreate": "프로필 생성",
"emptyImport": "프로필 가져오기",
"emptyFilteredTitle": "프로필을 찾을 수 없습니다",
"emptyFilteredHint": "이 그룹 또는 검색과 일치하는 프로필이 없습니다. 다른 필터를 사용하거나 새로 만드세요."
},
"actions": {
"launch": "실행",
@@ -1294,7 +1307,28 @@
"domains": "도메인",
"fresh": "최신",
"stale": "오래됨",
"notCached": "캐시되지 않음"
"notCached": "캐시되지 않음",
"tabBlocklists": "차단 목록",
"tabCustom": "사용자 지정 목록",
"custom.description": "소스 URL과 수동 규칙으로 나만의 차단 목록을 만드세요. 허용 도메인은 항상 차단 도메인보다 우선합니다.",
"custom.sourcesLabel": "차단 목록 소스 URL",
"custom.sourcesPlaceholder": "한 줄에 URL 하나",
"custom.blockLabel": "차단할 도메인",
"custom.blockPlaceholder": "한 줄에 도메인 하나",
"custom.allowLabel": "허용할 도메인",
"custom.allowPlaceholder": "한 줄에 도메인 하나",
"custom.allowHint": "허용 도메인은 컴파일된 차단 목록에서 제거되어 모든 차단 규칙보다 우선합니다.",
"custom.saved": "사용자 지정 DNS 규칙이 저장되었습니다",
"custom.imported": "사용자 지정 DNS 규칙을 가져왔습니다",
"custom.exported": "사용자 지정 DNS 규칙을 내보냈습니다",
"custom.exportTxt": "TXT 내보내기",
"custom.exportJson": "JSON 내보내기",
"customLevel": "사용자 지정",
"custom.allowlistModeLabel": "허용 목록 모드",
"custom.allowlistModeOn": "아래 도메인만 접근할 수 있으며, 그 외에는 모두 차단됩니다.",
"custom.allowlistModeOff": "목록의 도메인을 차단하고, 그 외에는 모두 허용합니다.",
"custom.allowedOnlyLabel": "허용 도메인 (이것만)",
"custom.allowedOnlyHint": "목록에 있는 도메인의 하위 도메인도 허용됩니다. 목록이 비어 있으면 필터링이 비활성화됩니다."
},
"vpns": {
"form": {
@@ -1415,7 +1449,11 @@
"statusImported": "가져옴",
"statusSkipped": "건너뜀",
"statusFailed": "실패",
"importButtonCount": "가져오기 ({{count}})"
"importButtonCount": "가져오기 ({{count}})",
"vpnOptional": "VPN (선택 사항)",
"noVpn": "VPN 없음",
"advancedOptions": "고급 옵션",
"configureFingerprint": "핑거프린트 구성 (선택 사항)"
},
"syncTooltips": {
"syncing": "동기화 중...",
@@ -1618,7 +1656,14 @@
"sentLegend": "보냄",
"receivedLegend": "받음",
"tooltipSent": "↑ 보냄: ",
"tooltipReceived": "↓ 받음: "
"tooltipReceived": "↓ 받음: ",
"clearHistory": "기록 지우기",
"clearHistoryTitle": "트래픽 기록 지우기",
"clearHistoryDescription": "\"{{name}}\"의 기록된 모든 트래픽 기록을 영구적이고 안전하게 지웁니다. 이 작업은 되돌릴 수 없습니다.",
"tabOverview": "개요",
"tabTopDomains": "상위 도메인",
"searchDomains": "도메인 검색…",
"noDomainMatch": "검색과 일치하는 도메인이 없습니다."
},
"proxyCheck": {
"unknownLocation": "알 수 없음",
@@ -1818,7 +1863,14 @@
"importNoItems": "가져올 항목이 선택되지 않았습니다",
"browserNotDownloaded": "{{browser}}의 다운로드된 버전이 없습니다. 먼저 다운로드한 후 가져오기를 다시 시도하세요.",
"archiveExtractionFailed": "아카이브 추출에 실패했습니다: {{detail}}",
"unsupportedArchiveFormat": "지원되지 않는 아카이브 형식입니다. ZIP 아카이브만 지원됩니다."
"unsupportedArchiveFormat": "지원되지 않는 아카이브 형식입니다. ZIP 아카이브만 지원됩니다.",
"clearOnCloseUnavailable": "닫을 때 지우기는 임시 프로필이나 비밀번호로 보호된 프로필에서는 사용할 수 없습니다.",
"proxyAndVpnMutuallyExclusive": "프로필에는 프록시 또는 VPN 중 하나만 사용할 수 있습니다.",
"invalidDnsRulesJson": "선택한 파일이 올바른 DNS 규칙 JSON이 아닙니다.",
"unsupportedDnsRulesFormat": "지원되지 않는 규칙 형식: {{format}}",
"dnsRulesSaveFailed": "DNS 규칙을 저장하지 못했습니다.",
"dnsRulesExportFailed": "DNS 규칙을 내보내지 못했습니다.",
"fingerprintMatchFailed": "지문을 프록시에 맞추지 못했습니다."
},
"rail": {
"profiles": "프로필",
@@ -1831,7 +1883,9 @@
"importProfile": "프로필 가져오기",
"importProfileHint": "다른 도구에서 프로필 가져오기",
"keyboardShortcuts": "키보드 단축키",
"keyboardShortcutsHint": "모든 단축키 보기"
"keyboardShortcutsHint": "모든 단축키 보기",
"about": "Donut Browser 정보",
"aboutHint": "버전 및 앱 정보"
},
"network": "네트워크",
"integrations": "통합",
@@ -1920,7 +1974,9 @@
"actions": {
"launchProfile": "{{name}} 실행",
"stopProfile": "{{name}} 중지",
"profileInfo": "정보 — {{name}}"
"profileInfo": "정보 — {{name}}",
"createProfile": "프로필 생성",
"about": "Donut Browser 정보"
}
},
"shortcuts": {
@@ -2036,5 +2092,29 @@
},
"cookieCopy": {
"noOtherTargets": "선택된 다른 Wayfern 프로필이 없습니다"
},
"about": {
"title": "정보",
"version": "버전 {{version}}",
"portableBadge": "포터블",
"licenseNotice": "AGPL-3.0 라이선스의 오픈 소스 안티 디텍트 브라우저입니다.",
"website": "웹사이트"
},
"clearOnClose": {
"label": "닫을 때 데이터 지우기",
"description": "브라우저를 닫을 때 쿠키, 방문 기록, 캐시를 지웁니다. 확장 프로그램과 북마크는 유지됩니다."
},
"consistencyWarning": {
"title": "핑거프린트 불일치",
"intro": "\"{{name}}\"의 프록시 출구가 이 프로필의 핑거프린트와 일치하지 않습니다:",
"timezoneTitle": "시간대 불일치",
"timezoneDetail": "출구 노드는 {{exit}}에 있지만 핑거프린트는 {{fingerprint}}로 보고합니다.",
"languageTitle": "언어 불일치",
"languageDetail": "출구 국가는 {{country}}이지만 핑거프린트 언어는 {{fingerprint}}입니다.",
"explainer": "출구 IP와 어긋나는 시간대나 언어는 실제 기기 정보가 유출되지 않더라도 강력한 안티봇 신호가 됩니다. 핑거프린트를 프록시 위치에 맞춰 의심받는 상황을 줄이세요.",
"dontWarnAgain": "이 프로필에 대해 다시 경고하지 않음",
"matchToProxy": "지문을 프록시에 맞추기",
"matching": "맞추는 중…",
"matchSuccess": "지문이 프록시에 맞게 업데이트되었습니다. 적용하려면 프로필을 다시 실행하세요."
}
}
+88 -8
View File
@@ -197,7 +197,14 @@
"disableAutoUpdates": "Desativar Atualizações Automáticas do App",
"disableAutoUpdatesDescription": "Impede que o aplicativo verifique e instale atualizações do Donut Browser automaticamente. As atualizações de navegadores não são afetadas.",
"keepDecryptedProfilesInRam": "Manter Perfis Descriptografados na RAM",
"keepDecryptedProfilesInRamDescription": "Preserva a cópia descriptografada na RAM dos perfis protegidos por senha entre execuções para um início mais rápido. A cópia em disco permanece criptografada em qualquer caso."
"keepDecryptedProfilesInRamDescription": "Preserva a cópia descriptografada na RAM dos perfis protegidos por senha entre execuções para um início mais rápido. A cópia em disco permanece criptografada em qualquer caso.",
"privacy": {
"consistencyWarning": "Aviso de consistência de impressão digital",
"consistencyWarningDescription": "Avisar ao iniciar quando o fuso horário ou o idioma de um perfil não corresponder ao seu nó de saída do proxy.",
"clearTraffic": "Limpar todo o histórico de tráfego",
"clearTrafficDescription": "Apaga com segurança as estatísticas de tráfego registradas de todos os perfis.",
"clearTrafficSuccess": "Histórico de tráfego limpo"
}
},
"header": {
"searchPlaceholder": "Pesquisar perfis...",
@@ -245,7 +252,13 @@
"cantModifyRunning": "Não é possível modificar um perfil em execução",
"cantModifyLaunching": "Não é possível modificar o perfil durante a inicialização",
"cantModifyStopping": "Não é possível modificar o perfil durante a parada",
"cantModifyUpdating": "Não é possível modificar o perfil enquanto o navegador é atualizado"
"cantModifyUpdating": "Não é possível modificar o perfil enquanto o navegador é atualizado",
"emptyTitle": "Nenhum perfil ainda",
"emptyHint": "Crie seu primeiro perfil ou importe perfis existentes de outro navegador.",
"emptyCreate": "Criar perfil",
"emptyImport": "Importar perfis",
"emptyFilteredTitle": "Nenhum perfil encontrado",
"emptyFilteredHint": "Nenhum perfil corresponde a este grupo ou pesquisa. Tente outro filtro ou crie um novo."
},
"actions": {
"launch": "Iniciar",
@@ -1294,7 +1307,28 @@
"domains": "domínios",
"fresh": "Atualizado",
"stale": "Desatualizado",
"notCached": "Sem cache"
"notCached": "Sem cache",
"tabBlocklists": "Listas de bloqueio",
"tabCustom": "Listas personalizadas",
"custom.description": "Monte sua própria lista de bloqueio a partir de URLs de origem e regras manuais. Domínios permitidos sempre têm prioridade sobre os bloqueados.",
"custom.sourcesLabel": "URLs de origem de listas de bloqueio",
"custom.sourcesPlaceholder": "Uma URL por linha",
"custom.blockLabel": "Domínios bloqueados",
"custom.blockPlaceholder": "Um domínio por linha",
"custom.allowLabel": "Domínios permitidos",
"custom.allowPlaceholder": "Um domínio por linha",
"custom.allowHint": "Os domínios permitidos são removidos da lista de bloqueio compilada, anulando qualquer regra de bloqueio.",
"custom.saved": "Regras DNS personalizadas salvas",
"custom.imported": "Regras DNS personalizadas importadas",
"custom.exported": "Regras DNS personalizadas exportadas",
"custom.exportTxt": "Exportar TXT",
"custom.exportJson": "Exportar JSON",
"customLevel": "Personalizada",
"custom.allowlistModeLabel": "Modo lista de permitidos",
"custom.allowlistModeOn": "Apenas os domínios abaixo são acessíveis; todo o resto é bloqueado.",
"custom.allowlistModeOff": "Bloquear os domínios listados; permitir todo o resto.",
"custom.allowedOnlyLabel": "Domínios permitidos (apenas estes)",
"custom.allowedOnlyHint": "Subdomínios de um domínio listado também são permitidos. Uma lista vazia desativa a filtragem."
},
"vpns": {
"form": {
@@ -1415,7 +1449,11 @@
"statusImported": "Importado",
"statusSkipped": "Ignorado",
"statusFailed": "Falhou",
"importButtonCount": "Importar ({{count}})"
"importButtonCount": "Importar ({{count}})",
"vpnOptional": "VPN (opcional)",
"noVpn": "Sem VPN",
"advancedOptions": "Opções avançadas",
"configureFingerprint": "Configurar impressão digital (opcional)"
},
"syncTooltips": {
"syncing": "Sincronizando...",
@@ -1618,7 +1656,14 @@
"sentLegend": "Enviado",
"receivedLegend": "Recebido",
"tooltipSent": "↑ Enviado: ",
"tooltipReceived": "↓ Recebido: "
"tooltipReceived": "↓ Recebido: ",
"clearHistory": "Limpar histórico",
"clearHistoryTitle": "Limpar histórico de tráfego",
"clearHistoryDescription": "Apaga de forma permanente e segura todo o histórico de tráfego registrado de \"{{name}}\". Isso não pode ser desfeito.",
"tabOverview": "Visão geral",
"tabTopDomains": "Principais domínios",
"searchDomains": "Pesquisar domínios…",
"noDomainMatch": "Nenhum domínio corresponde à sua pesquisa."
},
"proxyCheck": {
"unknownLocation": "Desconhecido",
@@ -1818,7 +1863,14 @@
"importNoItems": "Nada selecionado para importar",
"browserNotDownloaded": "Nenhuma versão baixada de {{browser}} está disponível. Baixe-a primeiro e tente importar novamente.",
"archiveExtractionFailed": "Falha ao extrair o arquivo: {{detail}}",
"unsupportedArchiveFormat": "Formato de arquivo não suportado. Apenas arquivos ZIP são suportados."
"unsupportedArchiveFormat": "Formato de arquivo não suportado. Apenas arquivos ZIP são suportados.",
"clearOnCloseUnavailable": "A limpeza ao fechar não está disponível para perfis efêmeros ou protegidos por senha.",
"proxyAndVpnMutuallyExclusive": "Um perfil pode usar um proxy ou uma VPN, mas não ambos.",
"invalidDnsRulesJson": "O arquivo selecionado não é um JSON de regras DNS válido.",
"unsupportedDnsRulesFormat": "Formato de regras não suportado: {{format}}",
"dnsRulesSaveFailed": "Falha ao salvar as regras DNS.",
"dnsRulesExportFailed": "Falha ao exportar as regras DNS.",
"fingerprintMatchFailed": "Não foi possível ajustar a impressão digital ao proxy."
},
"rail": {
"profiles": "Perfis",
@@ -1831,7 +1883,9 @@
"importProfile": "Importar perfil",
"importProfileHint": "Trazer perfis de outra ferramenta",
"keyboardShortcuts": "Atalhos de teclado",
"keyboardShortcutsHint": "Ver todos os atalhos"
"keyboardShortcutsHint": "Ver todos os atalhos",
"about": "Sobre o Donut Browser",
"aboutHint": "Versão e informações do aplicativo"
},
"network": "Rede",
"integrations": "Integrações",
@@ -1920,7 +1974,9 @@
"actions": {
"launchProfile": "Iniciar {{name}}",
"stopProfile": "Parar {{name}}",
"profileInfo": "Informações — {{name}}"
"profileInfo": "Informações — {{name}}",
"createProfile": "Criar perfil",
"about": "Sobre o Donut Browser"
}
},
"shortcuts": {
@@ -2036,5 +2092,29 @@
},
"cookieCopy": {
"noOtherTargets": "Nenhum outro perfil Wayfern selecionado"
},
"about": {
"title": "Sobre",
"version": "Versão {{version}}",
"portableBadge": "portátil",
"licenseNotice": "Navegador anti-detecção de código aberto, licenciado sob AGPL-3.0.",
"website": "Site"
},
"clearOnClose": {
"label": "Limpar dados ao fechar",
"description": "Apaga cookies, histórico e cache quando o navegador é fechado. Extensões e favoritos são mantidos."
},
"consistencyWarning": {
"title": "Divergência de impressão digital",
"intro": "A saída do proxy de \"{{name}}\" não corresponde à impressão digital deste perfil:",
"timezoneTitle": "Divergência de fuso horário",
"timezoneDetail": "O nó de saída está em {{exit}}, mas a impressão digital indica {{fingerprint}}.",
"languageTitle": "Divergência de idioma",
"languageDetail": "O país de saída é {{country}}, mas o idioma da impressão digital é {{fingerprint}}.",
"explainer": "Um fuso horário ou idioma que não combina com seu IP de saída é um forte sinal anti-bot, mesmo que seu dispositivo real nunca vaze. Alinhe a impressão digital com a localização do proxy para reduzir tratamentos hostis.",
"dontWarnAgain": "Não avisar novamente para este perfil",
"matchToProxy": "Ajustar impressão ao proxy",
"matching": "Ajustando…",
"matchSuccess": "Impressão digital atualizada para corresponder ao proxy. Reinicie o perfil para aplicar."
}
}
+88 -8
View File
@@ -197,7 +197,14 @@
"disableAutoUpdates": "Отключить автообновление приложения",
"disableAutoUpdatesDescription": "Запретить автоматическую проверку и установку обновлений Donut Browser. Обновления браузеров не затрагиваются.",
"keepDecryptedProfilesInRam": "Хранить расшифрованные профили в ОЗУ",
"keepDecryptedProfilesInRamDescription": "Сохранять расшифрованную копию защищённых паролем профилей в ОЗУ между запусками для ускорения старта. Копия на диске в любом случае остаётся зашифрованной."
"keepDecryptedProfilesInRamDescription": "Сохранять расшифрованную копию защищённых паролем профилей в ОЗУ между запусками для ускорения старта. Копия на диске в любом случае остаётся зашифрованной.",
"privacy": {
"consistencyWarning": "Предупреждение о согласованности отпечатка",
"consistencyWarningDescription": "Предупреждать при запуске, если часовой пояс или язык профиля не совпадает с выходным узлом прокси.",
"clearTraffic": "Очистить всю историю трафика",
"clearTrafficDescription": "Безопасно удаляет записанную статистику трафика для всех профилей.",
"clearTrafficSuccess": "История трафика очищена"
}
},
"header": {
"searchPlaceholder": "Поиск профилей...",
@@ -245,7 +252,13 @@
"cantModifyRunning": "Нельзя изменить запущенный профиль",
"cantModifyLaunching": "Нельзя изменить профиль во время запуска",
"cantModifyStopping": "Нельзя изменить профиль во время остановки",
"cantModifyUpdating": "Нельзя изменить профиль во время обновления браузера"
"cantModifyUpdating": "Нельзя изменить профиль во время обновления браузера",
"emptyTitle": "Профилей пока нет",
"emptyHint": "Создайте свой первый профиль или импортируйте существующие из другого браузера.",
"emptyCreate": "Создать профиль",
"emptyImport": "Импортировать профили",
"emptyFilteredTitle": "Профили не найдены",
"emptyFilteredHint": "Нет профилей для этой группы или запроса. Попробуйте другой фильтр или создайте профиль."
},
"actions": {
"launch": "Запустить",
@@ -1294,7 +1307,28 @@
"domains": "доменов",
"fresh": "Актуальный",
"stale": "Устаревший",
"notCached": "Не кэшировано"
"notCached": "Не кэшировано",
"tabBlocklists": "Списки блокировки",
"tabCustom": "Пользовательские списки",
"custom.description": "Составьте собственный список блокировки из URL-источников и ручных правил. Разрешённые домены всегда имеют приоритет над заблокированными.",
"custom.sourcesLabel": "URL-источники списков блокировки",
"custom.sourcesPlaceholder": "Один URL на строку",
"custom.blockLabel": "Заблокированные домены",
"custom.blockPlaceholder": "Один домен на строку",
"custom.allowLabel": "Разрешённые домены",
"custom.allowPlaceholder": "Один домен на строку",
"custom.allowHint": "Разрешённые домены исключаются из итогового списка блокировки и имеют приоритет над любым правилом блокировки.",
"custom.saved": "Пользовательские правила DNS сохранены",
"custom.imported": "Пользовательские правила DNS импортированы",
"custom.exported": "Пользовательские правила DNS экспортированы",
"custom.exportTxt": "Экспорт TXT",
"custom.exportJson": "Экспорт JSON",
"customLevel": "Пользовательский",
"custom.allowlistModeLabel": "Режим разрешённого списка",
"custom.allowlistModeOn": "Доступны только домены ниже; всё остальное блокируется.",
"custom.allowlistModeOff": "Блокировать домены из списка; всё остальное разрешено.",
"custom.allowedOnlyLabel": "Разрешённые домены (только эти)",
"custom.allowedOnlyHint": "Поддомены указанных доменов также разрешены. Пустой список отключает фильтрацию."
},
"vpns": {
"form": {
@@ -1415,7 +1449,11 @@
"statusImported": "Импортирован",
"statusSkipped": "Пропущен",
"statusFailed": "Ошибка",
"importButtonCount": "Импортировать ({{count}})"
"importButtonCount": "Импортировать ({{count}})",
"vpnOptional": "VPN (необязательно)",
"noVpn": "Без VPN",
"advancedOptions": "Дополнительные параметры",
"configureFingerprint": "Настроить отпечаток (необязательно)"
},
"syncTooltips": {
"syncing": "Синхронизация...",
@@ -1618,7 +1656,14 @@
"sentLegend": "Отправлено",
"receivedLegend": "Получено",
"tooltipSent": "↑ Отправлено: ",
"tooltipReceived": "↓ Получено: "
"tooltipReceived": "↓ Получено: ",
"clearHistory": "Очистить историю",
"clearHistoryTitle": "Очистить историю трафика",
"clearHistoryDescription": "Навсегда и безопасно удаляет всю записанную историю трафика для «{{name}}». Это действие нельзя отменить.",
"tabOverview": "Обзор",
"tabTopDomains": "Топ доменов",
"searchDomains": "Поиск доменов…",
"noDomainMatch": "Нет доменов, соответствующих запросу."
},
"proxyCheck": {
"unknownLocation": "Неизвестно",
@@ -1818,7 +1863,14 @@
"importNoItems": "Ничего не выбрано для импорта",
"browserNotDownloaded": "Нет загруженной версии {{browser}}. Сначала загрузите её, затем повторите импорт.",
"archiveExtractionFailed": "Не удалось распаковать архив: {{detail}}",
"unsupportedArchiveFormat": "Неподдерживаемый формат архива. Поддерживаются только ZIP-архивы."
"unsupportedArchiveFormat": "Неподдерживаемый формат архива. Поддерживаются только ZIP-архивы.",
"clearOnCloseUnavailable": "Очистка при закрытии недоступна для эфемерных и защищённых паролем профилей.",
"proxyAndVpnMutuallyExclusive": "Профиль может использовать либо прокси, либо VPN, но не оба сразу.",
"invalidDnsRulesJson": "Выбранный файл не является корректным JSON с правилами DNS.",
"unsupportedDnsRulesFormat": "Неподдерживаемый формат правил: {{format}}",
"dnsRulesSaveFailed": "Не удалось сохранить правила DNS.",
"dnsRulesExportFailed": "Не удалось экспортировать правила DNS.",
"fingerprintMatchFailed": "Не удалось подогнать отпечаток под прокси."
},
"rail": {
"profiles": "Профили",
@@ -1831,7 +1883,9 @@
"importProfile": "Импорт профиля",
"importProfileHint": "Перенести профили из другого инструмента",
"keyboardShortcuts": "Сочетания клавиш",
"keyboardShortcutsHint": "Показать все сочетания"
"keyboardShortcutsHint": "Показать все сочетания",
"about": "О Donut Browser",
"aboutHint": "Версия и сведения о приложении"
},
"network": "Сеть",
"integrations": "Интеграции",
@@ -1920,7 +1974,9 @@
"actions": {
"launchProfile": "Запустить {{name}}",
"stopProfile": "Остановить {{name}}",
"profileInfo": "Информация — {{name}}"
"profileInfo": "Информация — {{name}}",
"createProfile": "Создать профиль",
"about": "О Donut Browser"
}
},
"shortcuts": {
@@ -2036,5 +2092,29 @@
},
"cookieCopy": {
"noOtherTargets": "Других выбранных Wayfern профилей нет"
},
"about": {
"title": "О приложении",
"version": "Версия {{version}}",
"portableBadge": "портативная",
"licenseNotice": "Антидетект-браузер с открытым исходным кодом, распространяется по лицензии AGPL-3.0.",
"website": "Веб-сайт"
},
"clearOnClose": {
"label": "Очищать данные при закрытии",
"description": "Удаляет cookie, историю и кэш при закрытии браузера. Расширения и закладки сохраняются."
},
"consistencyWarning": {
"title": "Несовпадение отпечатка",
"intro": "Выходной узел прокси для «{{name}}» не соответствует отпечатку этого профиля:",
"timezoneTitle": "Несовпадение часового пояса",
"timezoneDetail": "Выходной узел находится в {{exit}}, но отпечаток сообщает {{fingerprint}}.",
"languageTitle": "Несовпадение языка",
"languageDetail": "Страна выхода — {{country}}, но язык отпечатка — {{fingerprint}}.",
"explainer": "Часовой пояс или язык, не совпадающий с выходным IP, — сильный антибот-сигнал, даже если данные вашего реального устройства никогда не утекают. Приведите отпечаток в соответствие с расположением прокси, чтобы снизить враждебное отношение.",
"dontWarnAgain": "Больше не предупреждать для этого профиля",
"matchToProxy": "Подогнать отпечаток под прокси",
"matching": "Подгонка…",
"matchSuccess": "Отпечаток обновлён под прокси. Перезапустите профиль, чтобы применить."
}
}
+118 -22
View File
@@ -197,7 +197,14 @@
"disableAutoUpdates": "Uygulama Otomatik Güncellemelerini Devre Dışı Bırak",
"disableAutoUpdatesDescription": "Uygulamanın Donut Browser güncellemelerini otomatik olarak denetlemesini ve yüklemesini engelleyin. Tarayıcı güncellemeleri bundan etkilenmez.",
"keepDecryptedProfilesInRam": "Şifresi Çözülmüş Profilleri RAM'de Tut",
"keepDecryptedProfilesInRamDescription": "Daha hızlı başlatma için parola korumalı profillerin şifresi çözülmüş RAM kopyasını başlatmalar arasında koruyun. Diskteki kopya her durumda şifreli kalır."
"keepDecryptedProfilesInRamDescription": "Daha hızlı başlatma için parola korumalı profillerin şifresi çözülmüş RAM kopyasını başlatmalar arasında koruyun. Diskteki kopya her durumda şifreli kalır.",
"privacy": {
"consistencyWarning": "Parmak izi tutarlılık uyarısı",
"consistencyWarningDescription": "Bir profilin saat dilimi veya dili proxy çıkış düğümüyle eşleşmediğinde başlatma sırasında uyar.",
"clearTraffic": "Tüm trafik geçmişini temizle",
"clearTrafficDescription": "Tüm profillerin kayıtlı trafik istatistiklerini güvenli bir şekilde siler.",
"clearTrafficSuccess": "Trafik geçmişi temizlendi"
}
},
"header": {
"searchPlaceholder": "Profillerde ara...",
@@ -245,7 +252,13 @@
"cantModifyRunning": "Çalışan profil değiştirilemez",
"cantModifyLaunching": "Başlatılırken profil değiştirilemez",
"cantModifyStopping": "Durdurulurken profil değiştirilemez",
"cantModifyUpdating": "Tarayıcı güncellenirken profil değiştirilemez"
"cantModifyUpdating": "Tarayıcı güncellenirken profil değiştirilemez",
"emptyTitle": "Henüz profil yok",
"emptyHint": "İlk profilinizi oluşturun veya başka bir tarayıcıdan mevcut profilleri içe aktarın.",
"emptyCreate": "Profil oluştur",
"emptyImport": "Profilleri içe aktar",
"emptyFilteredTitle": "Profil bulunamadı",
"emptyFilteredHint": "Bu grup veya aramayla eşleşen profil yok. Başka bir filtre deneyin veya yeni bir profil oluşturun."
},
"actions": {
"launch": "Başlat",
@@ -1294,7 +1307,28 @@
"domains": "alan adı",
"fresh": "Güncel",
"stale": "Eski",
"notCached": "Önbelleğe alınmadı"
"notCached": "Önbelleğe alınmadı",
"tabBlocklists": "Engel listeleri",
"tabCustom": "Özel listeler",
"custom.description": "Kaynak URL'lerden ve manuel kurallardan kendi engel listenizi oluşturun. İzin verilen alan adları her zaman engellenenlerin önüne geçer.",
"custom.sourcesLabel": "Engel listesi kaynak URL'leri",
"custom.sourcesPlaceholder": "Her satıra bir URL",
"custom.blockLabel": "Engellenen alan adları",
"custom.blockPlaceholder": "Her satıra bir alan adı",
"custom.allowLabel": "İzin verilen alan adları",
"custom.allowPlaceholder": "Her satıra bir alan adı",
"custom.allowHint": "İzin verilen alan adları derlenen engel listesinden çıkarılır ve tüm engelleme kurallarını geçersiz kılar.",
"custom.saved": "Özel DNS kuralları kaydedildi",
"custom.imported": "Özel DNS kuralları içe aktarıldı",
"custom.exported": "Özel DNS kuralları dışa aktarıldı",
"custom.exportTxt": "TXT olarak dışa aktar",
"custom.exportJson": "JSON olarak dışa aktar",
"customLevel": "Özel",
"custom.allowlistModeLabel": "İzin listesi modu",
"custom.allowlistModeOn": "Yalnızca aşağıdaki alan adlarına erişilebilir; diğer her şey engellenir.",
"custom.allowlistModeOff": "Listelenen alan adlarını engelle; diğer her şeye izin ver.",
"custom.allowedOnlyLabel": "İzin verilen alan adları (yalnızca bunlar)",
"custom.allowedOnlyHint": "Listelenen bir alan adının alt alan adlarına da izin verilir. Boş liste filtrelemeyi devre dışı bırakır."
},
"vpns": {
"form": {
@@ -1378,16 +1412,9 @@
"scanning": "Tarayıcı profilleri taranıyor...",
"noneFound": "Sisteminizde tarayıcı profili bulunamadı.",
"noneFoundHint": "Profilleriniz özel konumlardaysa elle içe aktarma seçeneğini deneyin.",
"selectProfile": "Profil Seçin:",
"selectProfilePlaceholder": "Algılanan bir profil seçin",
"pathLabel": "Yol:",
"browserLabel": "Tarayıcı:",
"newProfileName": "Yeni Profil Adı:",
"newProfileNamePlaceholder": "İçe aktarılan profil için bir ad girin",
"manualTitle": "Elle Profil İçe Aktarma",
"browserType": "Tarayıcı Türü:",
"loadingBrowsers": "Tarayıcılar yükleniyor...",
"selectBrowserType": "Tarayıcı türü seçin",
"profileFolderPath": "Profil Klasörü Yolu:",
"profileFolderPlaceholder": "Profil klasörünün tam yolunu girin",
"browseFolderTitle": "Klasöre göz at",
@@ -1395,17 +1422,38 @@
"selectFolderTitle": "Tarayıcı Profil Klasörünü Seçin",
"folderDialogFailed": "Klasör iletişim kutusu açılamadı",
"detectFailed": "Mevcut tarayıcı profilleri algılanamadı",
"fillFields": "Lütfen tüm alanları doldurun",
"selectAndName": "Lütfen bir profil seçin ve bir ad girin",
"profileNotFound": "Seçilen profil bulunamadı",
"importedSuccess": "\"{{name}}\" profili başarıyla içe aktarıldı",
"notInstalled": "{{browser}} yüklü değil. Lütfen önce ana pencereden {{browser}} indirin, ardından içe aktarmayı yeniden deneyin.",
"importFailed": "Profil içe aktarılamadı: {{error}}",
"proxyOptional": "Proxy (İsteğe Bağlı)",
"noProxy": "Proxy yok",
"nextButton": "İleri",
"importButton": "İçe Aktar",
"importedAs": "Bu profil bir {{browser}} profili olarak içe aktarılacak."
"importedAs": "Bu profil bir {{browser}} profili olarak içe aktarılacak.",
"selectAll": "Tümünü seç",
"selectedCount": "{{count}} seçildi",
"scanButton": "Tara",
"manualHint": "Bir profil klasörü, tarayıcı kullanıcı verisi klasörü, dışa aktarılmış profiller içeren bir klasör veya bir ZIP arşivi seçin.",
"selectArchiveTitle": "ZIP arşivi seç",
"noProfilesInLocation": "Bu konumda profil bulunamadı.",
"selectAtLeastOne": "İçe aktarmak için en az bir profil seçin",
"emptyNames": "Seçilen her profilin bir adı olmalı",
"profilesToImport": "İçe aktarılacak profiller",
"groupOptional": "Grup (İsteğe bağlı)",
"noGroup": "Grup yok",
"createNewGroup": "Yeni grup oluştur…",
"newGroupNamePlaceholder": "Yeni grup adı",
"duplicateStrategyLabel": "Profil adı zaten varsa",
"duplicateRename": "Otomatik olarak yeniden adlandır",
"duplicateSkip": "Atla",
"proxyRoundRobin": "Kayıtlı proxy'leri dağıt (sırayla)",
"importingTitle": "Profiller içe aktarılıyor…",
"importProgress": "{{total}} öğeden {{completed}} tanesi işlendi",
"resultsSummary": "{{imported}} içe aktarıldı, {{skipped}} atlandı, {{failed}} başarısız",
"statusImported": "İçe aktarıldı",
"statusSkipped": "Atlandı",
"statusFailed": "Başarısız",
"importButtonCount": "İçe aktar ({{count}})",
"vpnOptional": "VPN (isteğe bağlı)",
"noVpn": "VPN yok",
"advancedOptions": "Gelişmiş seçenekler",
"configureFingerprint": "Parmak izini yapılandır (isteğe bağlı)"
},
"syncTooltips": {
"syncing": "Eşitleniyor...",
@@ -1608,7 +1656,14 @@
"sentLegend": "Gönderilen",
"receivedLegend": "Alınan",
"tooltipSent": "↑ Gönderilen: ",
"tooltipReceived": "↓ Alınan: "
"tooltipReceived": "↓ Alınan: ",
"clearHistory": "Geçmişi temizle",
"clearHistoryTitle": "Trafik geçmişini temizle",
"clearHistoryDescription": "\"{{name}}\" için kayıtlı tüm trafik geçmişini kalıcı ve güvenli bir şekilde siler. Bu işlem geri alınamaz.",
"tabOverview": "Genel bakış",
"tabTopDomains": "En çok kullanılan alan adları",
"searchDomains": "Alan adı ara…",
"noDomainMatch": "Aramanızla eşleşen alan adı yok."
},
"proxyCheck": {
"unknownLocation": "Bilinmiyor",
@@ -1802,7 +1857,20 @@
"updateChecksumsUnavailable": "{{version}} güncellemesi doğrulanamadı çünkü sağlama toplamı dosyası alınamadı. Güncelleme yüklenmedi; daha sonra yeniden denenecek.",
"updateChecksumMismatch": "İndirilen güncelleme dosyası {{file}} sağlama toplamı doğrulamasını geçemedi ve silindi. Lütfen yeniden deneyin.",
"nameCannotBeEmpty": "Ad boş olamaz",
"wayfernVersionNotAvailable": "Wayfern {{requested}} sürümü indirilemiyor. Güncel sürüm: {{current}}."
"wayfernVersionNotAvailable": "Wayfern {{requested}} sürümü indirilemiyor. Güncel sürüm: {{current}}.",
"profileNameExists": "\"{{name}}\" adlı bir profil zaten var",
"importSourceNotFound": "Kaynak yol mevcut değil",
"importNoItems": "İçe aktarmak için hiçbir şey seçilmedi",
"browserNotDownloaded": "{{browser}} tarayıcısının indirilmiş bir sürümü yok. Önce indirin, sonra içe aktarmayı yeniden deneyin.",
"archiveExtractionFailed": "Arşiv çıkarılamadı: {{detail}}",
"unsupportedArchiveFormat": "Desteklenmeyen arşiv biçimi. Yalnızca ZIP arşivleri desteklenir.",
"clearOnCloseUnavailable": "Kapatırken temizleme, geçici veya parola korumalı profillerde kullanılamaz.",
"proxyAndVpnMutuallyExclusive": "Bir profil ya proxy ya da VPN kullanabilir, ikisini birden kullanamaz.",
"invalidDnsRulesJson": "Seçilen dosya geçerli bir DNS kuralı JSON'u değil.",
"unsupportedDnsRulesFormat": "Desteklenmeyen kural biçimi: {{format}}",
"dnsRulesSaveFailed": "DNS kuralları kaydedilemedi.",
"dnsRulesExportFailed": "DNS kuralları dışa aktarılamadı.",
"fingerprintMatchFailed": "Parmak izi proxy'ye eşlenemedi."
},
"rail": {
"profiles": "Profiller",
@@ -1815,7 +1883,9 @@
"importProfile": "Profil içe aktar",
"importProfileHint": "Başka bir araçtan profil getirin",
"keyboardShortcuts": "Klavye kısayolları",
"keyboardShortcutsHint": "Tüm kısayolları görüntüle"
"keyboardShortcutsHint": "Tüm kısayolları görüntüle",
"about": "Donut Browser Hakkında",
"aboutHint": "Sürüm ve uygulama bilgileri"
},
"network": "Ağ",
"integrations": "Entegrasyonlar",
@@ -1904,7 +1974,9 @@
"actions": {
"launchProfile": "{{name}} profilini başlat",
"stopProfile": "{{name}} profilini durdur",
"profileInfo": "Bilgi — {{name}}"
"profileInfo": "Bilgi — {{name}}",
"createProfile": "Profil oluştur",
"about": "Donut Browser Hakkında"
}
},
"shortcuts": {
@@ -2020,5 +2092,29 @@
},
"cookieCopy": {
"noOtherTargets": "Başka Wayfern profili seçilmedi"
},
"about": {
"title": "Hakkında",
"version": "Sürüm {{version}}",
"portableBadge": "taşınabilir",
"licenseNotice": "AGPL-3.0 lisanslı, açık kaynak anti-detect tarayıcı.",
"website": "Web sitesi"
},
"clearOnClose": {
"label": "Kapatırken verileri temizle",
"description": "Tarayıcı kapanırken çerezleri, geçmişi ve önbelleği siler. Uzantılar ve yer imleri korunur."
},
"consistencyWarning": {
"title": "Parmak izi uyuşmazlığı",
"intro": "\"{{name}}\" için proxy çıkışı bu profilin parmak iziyle eşleşmiyor:",
"timezoneTitle": "Saat dilimi uyuşmazlığı",
"timezoneDetail": "Çıkış düğümü {{exit}} konumunda, ancak parmak izi {{fingerprint}} bildiriyor.",
"languageTitle": "Dil uyuşmazlığı",
"languageDetail": "Çıkış ülkesi {{country}}, ancak parmak izi dili {{fingerprint}}.",
"explainer": "Çıkış IP'nizle uyuşmayan bir saat dilimi veya dil, gerçek cihazınız hiç sızdırmasa bile güçlü bir anti-bot sinyalidir. Şüpheli muameleyi azaltmak için parmak izini proxy konumuyla hizalayın.",
"dontWarnAgain": "Bu profil için bir daha uyarma",
"matchToProxy": "Parmak izini proxy'ye eşle",
"matching": "Eşleniyor…",
"matchSuccess": "Parmak izi proxy'ye uyacak şekilde güncellendi. Uygulamak için profili yeniden başlatın."
}
}
+88 -8
View File
@@ -197,7 +197,14 @@
"disableAutoUpdates": "Tắt tự động cập nhật ứng dụng",
"disableAutoUpdatesDescription": "Ngăn ứng dụng tự động kiểm tra và cài đặt bản cập nhật Donut Browser. Cập nhật trình duyệt không bị ảnh hưởng.",
"keepDecryptedProfilesInRam": "Giữ hồ sơ đã giải mã trong RAM",
"keepDecryptedProfilesInRamDescription": "Giữ bản sao đã giải mã trong RAM của hồ sơ được bảo vệ bằng mật khẩu giữa các lần khởi chạy để khởi động nhanh hơn. Bản sao trên ổ đĩa vẫn được mã hóa."
"keepDecryptedProfilesInRamDescription": "Giữ bản sao đã giải mã trong RAM của hồ sơ được bảo vệ bằng mật khẩu giữa các lần khởi chạy để khởi động nhanh hơn. Bản sao trên ổ đĩa vẫn được mã hóa.",
"privacy": {
"consistencyWarning": "Cảnh báo nhất quán vân tay",
"consistencyWarningDescription": "Cảnh báo khi khởi chạy nếu múi giờ hoặc ngôn ngữ của hồ sơ không khớp với nút thoát proxy.",
"clearTraffic": "Xóa toàn bộ lịch sử lưu lượng",
"clearTrafficDescription": "Xóa an toàn số liệu thống kê lưu lượng đã ghi của mọi hồ sơ.",
"clearTrafficSuccess": "Đã xóa lịch sử lưu lượng"
}
},
"header": {
"searchPlaceholder": "Tìm kiếm hồ sơ...",
@@ -245,7 +252,13 @@
"cantModifyRunning": "Không thể chỉnh sửa profile đang chạy",
"cantModifyLaunching": "Không thể chỉnh sửa profile khi đang khởi chạy",
"cantModifyStopping": "Không thể chỉnh sửa profile khi đang dừng",
"cantModifyUpdating": "Không thể chỉnh sửa profile khi trình duyệt đang cập nhật"
"cantModifyUpdating": "Không thể chỉnh sửa profile khi trình duyệt đang cập nhật",
"emptyTitle": "Chưa có hồ sơ nào",
"emptyHint": "Tạo hồ sơ đầu tiên của bạn hoặc nhập hồ sơ hiện có từ trình duyệt khác.",
"emptyCreate": "Tạo hồ sơ",
"emptyImport": "Nhập hồ sơ",
"emptyFilteredTitle": "Không tìm thấy hồ sơ",
"emptyFilteredHint": "Không có hồ sơ nào khớp với nhóm hoặc tìm kiếm này. Hãy thử bộ lọc khác hoặc tạo mới."
},
"actions": {
"launch": "Khởi chạy",
@@ -1294,7 +1307,28 @@
"domains": "tên miền",
"fresh": "Mới",
"stale": "Cũ",
"notCached": "Chưa lưu bộ nhớ đệm"
"notCached": "Chưa lưu bộ nhớ đệm",
"tabBlocklists": "Danh sách chặn",
"tabCustom": "Danh sách tùy chỉnh",
"custom.description": "Tự tạo danh sách chặn của riêng bạn từ các URL nguồn và quy tắc thủ công. Tên miền được phép luôn được ưu tiên hơn tên miền bị chặn.",
"custom.sourcesLabel": "URL nguồn danh sách chặn",
"custom.sourcesPlaceholder": "Mỗi dòng một URL",
"custom.blockLabel": "Tên miền bị chặn",
"custom.blockPlaceholder": "Mỗi dòng một tên miền",
"custom.allowLabel": "Tên miền được phép",
"custom.allowPlaceholder": "Mỗi dòng một tên miền",
"custom.allowHint": "Tên miền được phép sẽ bị loại khỏi danh sách chặn đã biên dịch, ghi đè mọi quy tắc chặn.",
"custom.saved": "Đã lưu quy tắc DNS tùy chỉnh",
"custom.imported": "Đã nhập quy tắc DNS tùy chỉnh",
"custom.exported": "Đã xuất quy tắc DNS tùy chỉnh",
"custom.exportTxt": "Xuất TXT",
"custom.exportJson": "Xuất JSON",
"customLevel": "Tùy chỉnh",
"custom.allowlistModeLabel": "Chế độ danh sách cho phép",
"custom.allowlistModeOn": "Chỉ các tên miền bên dưới có thể truy cập; mọi thứ khác đều bị chặn.",
"custom.allowlistModeOff": "Chặn các tên miền trong danh sách; cho phép mọi thứ khác.",
"custom.allowedOnlyLabel": "Tên miền được phép (chỉ những tên này)",
"custom.allowedOnlyHint": "Tên miền phụ của tên miền trong danh sách cũng được phép. Danh sách trống sẽ tắt bộ lọc."
},
"vpns": {
"form": {
@@ -1415,7 +1449,11 @@
"statusImported": "Đã nhập",
"statusSkipped": "Bỏ qua",
"statusFailed": "Thất bại",
"importButtonCount": "Nhập ({{count}})"
"importButtonCount": "Nhập ({{count}})",
"vpnOptional": "VPN (tùy chọn)",
"noVpn": "Không dùng VPN",
"advancedOptions": "Tùy chọn nâng cao",
"configureFingerprint": "Cấu hình vân tay (tùy chọn)"
},
"syncTooltips": {
"syncing": "Đang đồng bộ...",
@@ -1618,7 +1656,14 @@
"sentLegend": "Đã gửi",
"receivedLegend": "Đã nhận",
"tooltipSent": "↑ Đã gửi: ",
"tooltipReceived": "↓ Đã nhận: "
"tooltipReceived": "↓ Đã nhận: ",
"clearHistory": "Xóa lịch sử",
"clearHistoryTitle": "Xóa lịch sử lưu lượng",
"clearHistoryDescription": "Xóa vĩnh viễn và an toàn toàn bộ lịch sử lưu lượng đã ghi của \"{{name}}\". Hành động này không thể hoàn tác.",
"tabOverview": "Tổng quan",
"tabTopDomains": "Tên miền hàng đầu",
"searchDomains": "Tìm kiếm tên miền…",
"noDomainMatch": "Không có tên miền nào khớp với tìm kiếm."
},
"proxyCheck": {
"unknownLocation": "Không xác định",
@@ -1818,7 +1863,14 @@
"importNoItems": "Chưa chọn mục nào để nhập",
"browserNotDownloaded": "Không có phiên bản {{browser}} nào đã tải xuống. Hãy tải xuống trước, sau đó thử nhập lại.",
"archiveExtractionFailed": "Không thể giải nén tệp: {{detail}}",
"unsupportedArchiveFormat": "Định dạng tệp nén không được hỗ trợ. Chỉ hỗ trợ tệp ZIP."
"unsupportedArchiveFormat": "Định dạng tệp nén không được hỗ trợ. Chỉ hỗ trợ tệp ZIP.",
"clearOnCloseUnavailable": "Tính năng xóa khi đóng không khả dụng với hồ sơ tạm thời hoặc hồ sơ được bảo vệ bằng mật khẩu.",
"proxyAndVpnMutuallyExclusive": "Một hồ sơ chỉ có thể dùng proxy hoặc VPN, không dùng cả hai.",
"invalidDnsRulesJson": "Tệp đã chọn không phải là JSON quy tắc DNS hợp lệ.",
"unsupportedDnsRulesFormat": "Định dạng quy tắc không được hỗ trợ: {{format}}",
"dnsRulesSaveFailed": "Không thể lưu quy tắc DNS.",
"dnsRulesExportFailed": "Không thể xuất quy tắc DNS.",
"fingerprintMatchFailed": "Không thể khớp vân tay với proxy."
},
"rail": {
"profiles": "Profile",
@@ -1831,7 +1883,9 @@
"importProfile": "Nhập profile",
"importProfileHint": "Đưa profile từ công cụ khác",
"keyboardShortcuts": "Phím tắt",
"keyboardShortcutsHint": "Xem tất cả phím tắt"
"keyboardShortcutsHint": "Xem tất cả phím tắt",
"about": "Giới thiệu về Donut Browser",
"aboutHint": "Phiên bản và thông tin ứng dụng"
},
"network": "Mạng",
"integrations": "Tích hợp",
@@ -1920,7 +1974,9 @@
"actions": {
"launchProfile": "Khởi chạy {{name}}",
"stopProfile": "Dừng {{name}}",
"profileInfo": "Thông tin — {{name}}"
"profileInfo": "Thông tin — {{name}}",
"createProfile": "Tạo hồ sơ",
"about": "Giới thiệu về Donut Browser"
}
},
"shortcuts": {
@@ -2036,5 +2092,29 @@
},
"cookieCopy": {
"noOtherTargets": "Chưa chọn profile Wayfern nào khác"
},
"about": {
"title": "Giới thiệu",
"version": "Phiên bản {{version}}",
"portableBadge": "bản portable",
"licenseNotice": "Trình duyệt chống phát hiện mã nguồn mở, được cấp phép theo AGPL-3.0.",
"website": "Trang web"
},
"clearOnClose": {
"label": "Xóa dữ liệu khi đóng",
"description": "Xóa cookie, lịch sử và bộ nhớ đệm khi trình duyệt đóng. Tiện ích mở rộng và dấu trang được giữ lại."
},
"consistencyWarning": {
"title": "Vân tay không khớp",
"intro": "Điểm thoát proxy của \"{{name}}\" không khớp với vân tay của hồ sơ này:",
"timezoneTitle": "Múi giờ không khớp",
"timezoneDetail": "Nút thoát nằm ở {{exit}} nhưng vân tay báo là {{fingerprint}}.",
"languageTitle": "Ngôn ngữ không khớp",
"languageDetail": "Quốc gia thoát là {{country}} nhưng ngôn ngữ của vân tay là {{fingerprint}}.",
"explainer": "Múi giờ hoặc ngôn ngữ không khớp với IP thoát là một tín hiệu chống bot rất mạnh, dù thiết bị thật của bạn không bao giờ bị lộ. Hãy căn chỉnh vân tay theo vị trí proxy để giảm bị đối xử khắt khe.",
"dontWarnAgain": "Không cảnh báo lại cho hồ sơ này",
"matchToProxy": "Khớp vân tay với proxy",
"matching": "Đang khớp…",
"matchSuccess": "Đã cập nhật vân tay để khớp với proxy. Khởi động lại hồ sơ để áp dụng."
}
}
+88 -8
View File
@@ -197,7 +197,14 @@
"disableAutoUpdates": "禁用应用自动更新",
"disableAutoUpdatesDescription": "阻止应用程序自动检查和安装 Donut Browser 更新。浏览器更新不受影响。",
"keepDecryptedProfilesInRam": "在内存中保留已解密的配置文件",
"keepDecryptedProfilesInRamDescription": "在启动之间保留密码保护配置文件的已解密内存副本,以便更快地启动。无论如何磁盘上的副本始终保持加密。"
"keepDecryptedProfilesInRamDescription": "在启动之间保留密码保护配置文件的已解密内存副本,以便更快地启动。无论如何磁盘上的副本始终保持加密。",
"privacy": {
"consistencyWarning": "指纹一致性警告",
"consistencyWarningDescription": "当配置文件的时区或语言与其代理出口节点不匹配时,在启动时发出警告。",
"clearTraffic": "清除所有流量历史",
"clearTrafficDescription": "安全清除所有配置文件的已记录流量统计数据。",
"clearTrafficSuccess": "流量历史已清除"
}
},
"header": {
"searchPlaceholder": "搜索配置文件...",
@@ -245,7 +252,13 @@
"cantModifyRunning": "无法修改正在运行的配置文件",
"cantModifyLaunching": "启动期间无法修改配置文件",
"cantModifyStopping": "停止期间无法修改配置文件",
"cantModifyUpdating": "浏览器更新期间无法修改配置文件"
"cantModifyUpdating": "浏览器更新期间无法修改配置文件",
"emptyTitle": "暂无配置文件",
"emptyHint": "创建您的第一个配置文件,或从其他浏览器导入现有配置文件。",
"emptyCreate": "创建配置文件",
"emptyImport": "导入配置文件",
"emptyFilteredTitle": "未找到配置文件",
"emptyFilteredHint": "没有符合此分组或搜索的配置文件。请尝试其他筛选条件或新建一个。"
},
"actions": {
"launch": "启动",
@@ -1294,7 +1307,28 @@
"domains": "个域名",
"fresh": "最新",
"stale": "过期",
"notCached": "未缓存"
"notCached": "未缓存",
"tabBlocklists": "拦截列表",
"tabCustom": "自定义列表",
"custom.description": "通过源 URL 和手动规则构建您自己的拦截列表。允许的域名始终优先于被拦截的域名。",
"custom.sourcesLabel": "拦截列表源 URL",
"custom.sourcesPlaceholder": "每行一个 URL",
"custom.blockLabel": "拦截的域名",
"custom.blockPlaceholder": "每行一个域名",
"custom.allowLabel": "允许的域名",
"custom.allowPlaceholder": "每行一个域名",
"custom.allowHint": "允许的域名会从编译后的拦截列表中移除,并覆盖任何拦截规则。",
"custom.saved": "自定义 DNS 规则已保存",
"custom.imported": "自定义 DNS 规则已导入",
"custom.exported": "自定义 DNS 规则已导出",
"custom.exportTxt": "导出 TXT",
"custom.exportJson": "导出 JSON",
"customLevel": "自定义",
"custom.allowlistModeLabel": "允许列表模式",
"custom.allowlistModeOn": "仅可访问下方域名,其余全部拦截。",
"custom.allowlistModeOff": "拦截列表中的域名,允许其余所有域名。",
"custom.allowedOnlyLabel": "允许的域名(仅限这些)",
"custom.allowedOnlyHint": "列表中域名的子域名也会被允许。列表为空时将禁用过滤。"
},
"vpns": {
"form": {
@@ -1415,7 +1449,11 @@
"statusImported": "已导入",
"statusSkipped": "已跳过",
"statusFailed": "失败",
"importButtonCount": "导入 ({{count}})"
"importButtonCount": "导入 ({{count}})",
"vpnOptional": "VPN(可选)",
"noVpn": "不使用 VPN",
"advancedOptions": "高级选项",
"configureFingerprint": "配置指纹(可选)"
},
"syncTooltips": {
"syncing": "同步中...",
@@ -1618,7 +1656,14 @@
"sentLegend": "已发送",
"receivedLegend": "已接收",
"tooltipSent": "↑ 已发送: ",
"tooltipReceived": "↓ 已接收: "
"tooltipReceived": "↓ 已接收: ",
"clearHistory": "清除历史",
"clearHistoryTitle": "清除流量历史",
"clearHistoryDescription": "永久且安全地清除「{{name}}」的所有已记录流量历史。此操作无法撤销。",
"tabOverview": "概览",
"tabTopDomains": "热门域名",
"searchDomains": "搜索域名…",
"noDomainMatch": "没有与搜索匹配的域名。"
},
"proxyCheck": {
"unknownLocation": "未知",
@@ -1818,7 +1863,14 @@
"importNoItems": "未选择要导入的内容",
"browserNotDownloaded": "没有已下载的 {{browser}} 版本。请先下载,然后重试导入。",
"archiveExtractionFailed": "解压压缩包失败:{{detail}}",
"unsupportedArchiveFormat": "不支持的压缩包格式。仅支持 ZIP 压缩包。"
"unsupportedArchiveFormat": "不支持的压缩包格式。仅支持 ZIP 压缩包。",
"clearOnCloseUnavailable": "关闭时清除功能不适用于临时配置文件或受密码保护的配置文件。",
"proxyAndVpnMutuallyExclusive": "配置文件只能使用代理或 VPN,不能同时使用两者。",
"invalidDnsRulesJson": "所选文件不是有效的 DNS 规则 JSON。",
"unsupportedDnsRulesFormat": "不支持的规则格式:{{format}}",
"dnsRulesSaveFailed": "保存 DNS 规则失败。",
"dnsRulesExportFailed": "导出 DNS 规则失败。",
"fingerprintMatchFailed": "无法将指纹匹配到代理。"
},
"rail": {
"profiles": "配置文件",
@@ -1831,7 +1883,9 @@
"importProfile": "导入配置文件",
"importProfileHint": "从其他工具导入",
"keyboardShortcuts": "键盘快捷键",
"keyboardShortcutsHint": "查看所有快捷键"
"keyboardShortcutsHint": "查看所有快捷键",
"about": "关于 Donut Browser",
"aboutHint": "版本和应用信息"
},
"network": "网络",
"integrations": "集成",
@@ -1920,7 +1974,9 @@
"actions": {
"launchProfile": "启动 {{name}}",
"stopProfile": "停止 {{name}}",
"profileInfo": "信息 — {{name}}"
"profileInfo": "信息 — {{name}}",
"createProfile": "创建配置文件",
"about": "关于 Donut Browser"
}
},
"shortcuts": {
@@ -2036,5 +2092,29 @@
},
"cookieCopy": {
"noOtherTargets": "未选择其他 Wayfern 配置文件"
},
"about": {
"title": "关于",
"version": "版本 {{version}}",
"portableBadge": "便携版",
"licenseNotice": "开源反检测浏览器,基于 AGPL-3.0 许可证发布。",
"website": "官网"
},
"clearOnClose": {
"label": "关闭时清除数据",
"description": "浏览器关闭时清除 Cookie、历史记录和缓存。扩展和书签将被保留。"
},
"consistencyWarning": {
"title": "指纹不匹配",
"intro": "「{{name}}」的代理出口与此配置文件的指纹不匹配:",
"timezoneTitle": "时区不匹配",
"timezoneDetail": "出口节点位于 {{exit}},但指纹报告为 {{fingerprint}}。",
"languageTitle": "语言不匹配",
"languageDetail": "出口国家/地区为 {{country}},但指纹语言为 {{fingerprint}}。",
"explainer": "时区或语言与出口 IP 不一致是强烈的反机器人信号,即使您的真实设备信息从未泄露。请让指纹与代理位置保持一致,以减少被针对的风险。",
"dontWarnAgain": "不再为此配置文件发出警告",
"matchToProxy": "将指纹匹配到代理",
"matching": "匹配中…",
"matchSuccess": "指纹已更新以匹配代理。重新启动配置文件以生效。"
}
}