From 415da787680a7a9446434baacf72104b5a5bd713 Mon Sep 17 00:00:00 2001 From: Nigel1992 Date: Sun, 16 Mar 2025 22:28:34 +0100 Subject: [PATCH 1/2] Update locale files for Dutch, German, and French languages --- locales/de.json | 254 ++++++++++++++++++++++++++++++++++++++++++++++++ locales/fr.json | 254 ++++++++++++++++++++++++++++++++++++++++++++++++ locales/nl.json | 254 ++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 762 insertions(+) create mode 100644 locales/de.json create mode 100644 locales/fr.json create mode 100644 locales/nl.json diff --git a/locales/de.json b/locales/de.json new file mode 100644 index 0000000..65cd68a --- /dev/null +++ b/locales/de.json @@ -0,0 +1,254 @@ +{ + "menu": { + "title": "Verfügbare Optionen", + "exit": "Programm Beenden", + "reset": "Maschinen-ID Zurücksetzen", + "register": "Neues Cursor-Konto Registrieren", + "register_google": "Mit Google-Konto Registrieren", + "register_github": "Mit GitHub-Konto Registrieren", + "register_manual": "Cursor mit Benutzerdefinierter E-Mail Registrieren", + "quit": "Cursor-Anwendung Schließen", + "select_language": "Sprache Ändern", + "input_choice": "Bitte Auswahl eingeben ({choices})", + "invalid_choice": "Ungültige Auswahl. Bitte eine Nummer von {choices} eingeben", + "program_terminated": "Programm wurde vom Benutzer beendet", + "error_occurred": "Ein Fehler ist aufgetreten: {error}. Bitte erneut versuchen", + "press_enter": "Drücken Sie Enter zum Beenden", + "disable_auto_update": "Cursor Auto-Update Deaktivieren", + "lifetime_access_enabled": "LEBENSLANGER ZUGRIFF AKTIVIERT", + "totally_reset": "Cursor Vollständig Zurücksetzen" + }, + "languages": { + "en": "English", + "zh_cn": "简体中文", + "zh_tw": "繁體中文", + "vi": "Tiếng Việt", + "nl": "Nederlands", + "de": "Deutsch", + "fr": "Français" + }, + "quit_cursor": { + "start": "Beginne Cursor zu Beenden", + "no_process": "Kein Laufender Cursor-Prozess", + "terminating": "Beende Prozess {pid}", + "waiting": "Warte auf Prozessende", + "success": "Alle Cursor-Prozesse Beendet", + "timeout": "Prozess-Timeout: {pids}", + "error": "Fehler Aufgetreten: {error}" + }, + "reset": { + "title": "Cursor Maschinen-ID Zurücksetzen Tool", + "checking": "Konfigurationsdatei Überprüfen", + "not_found": "Konfigurationsdatei Nicht Gefunden", + "no_permission": "Kann Konfigurationsdatei Nicht Lesen oder Schreiben, Bitte Dateiberechtigungen Überprüfen", + "reading": "Aktuelle Konfiguration Lesen", + "creating_backup": "Konfigurations-Backup Erstellen", + "backup_exists": "Backup-Datei Existiert Bereits, Backup-Schritt Überspringen", + "generating": "Neue Maschinen-ID Generieren", + "saving_json": "Neue Konfiguration in JSON Speichern", + "success": "Maschinen-ID Erfolgreich Zurückgesetzt", + "new_id": "Neue Maschinen-ID", + "permission_error": "Berechtigungsfehler: {error}", + "run_as_admin": "Bitte Versuchen Sie, Dieses Programm als Administrator Auszuführen", + "process_error": "Zurücksetzungsprozessfehler: {error}", + "updating_sqlite": "SQLite-Datenbank Aktualisieren", + "updating_pair": "Schlüssel-Wert-Paar Aktualisieren", + "sqlite_success": "SQLite-Datenbank Erfolgreich Aktualisiert", + "sqlite_error": "SQLite-Datenbank Aktualisierung Fehlgeschlagen: {error}", + "press_enter": "Drücken Sie Enter zum Fortfahren", + "unsupported_os": "Nicht Unterstütztes Betriebssystem: {os}", + "linux_path_not_found": "Linux-Pfad Nicht Gefunden", + "updating_system_ids": "System-IDs Aktualisieren", + "system_ids_updated": "System-IDs Erfolgreich Aktualisiert", + "system_ids_update_failed": "System-IDs Aktualisierung Fehlgeschlagen: {error}", + "windows_guid_updated": "Windows GUID Erfolgreich Aktualisiert", + "windows_permission_denied": "Windows Berechtigung Verweigert", + "windows_guid_update_failed": "Windows GUID Aktualisierung Fehlgeschlagen", + "macos_uuid_updated": "macOS UUID Erfolgreich Aktualisiert", + "plutil_command_failed": "plutil-Befehl Fehlgeschlagen", + "start_patching": "Patching getMachineId Starten", + "macos_uuid_update_failed": "macOS UUID Aktualisierung Fehlgeschlagen", + "current_version": "Aktuelle Cursor-Version: {version}", + "patch_completed": "Patching getMachineId Abgeschlossen", + "patch_failed": "Patching getMachineId Fehlgeschlagen: {error}", + "version_check_passed": "Cursor-Version Überprüfung Erfolgreich", + "file_modified": "Datei Geändert", + "version_less_than_0_45": "Cursor-Version < 0.45.0, Patching getMachineId Überspringen", + "detecting_version": "Cursor-Version Erkennen", + "patching_getmachineid": "Patching getMachineId", + "version_greater_than_0_45": "Cursor-Version >= 0.45.0, Patching getMachineId", + "permission_denied": "Berechtigung Verweigert: {error}", + "backup_created": "Backup Erstellt", + "update_success": "Update Erfolgreich", + "update_failed": "Update Fehlgeschlagen: {error}", + "windows_machine_guid_updated": "Windows Maschinen-GUID Erfolgreich Aktualisiert", + "reading_package_json": "package.json Lesen {path}", + "invalid_json_object": "Ungültiges JSON-Objekt", + "no_version_field": "Kein Versionsfeld in package.json Gefunden", + "version_field_empty": "Versionsfeld ist Leer", + "invalid_version_format": "Ungültiges Versionsformat: {version}", + "found_version": "Gefundene Version: {version}", + "version_parse_error": "Versions-Parse-Fehler: {error}", + "package_not_found": "Package.json Nicht Gefunden: {path}", + "check_version_failed": "Versionsüberprüfung Fehlgeschlagen: {error}", + "stack_trace": "Stack Trace", + "version_too_low": "Cursor-Version Zu Niedrig: {version} < 0.45.0" + }, + "register": { + "title": "Cursor Registrierungstool", + "start": "Registrierungsprozess Starten...", + "handling_turnstile": "Sicherheitsüberprüfung Verarbeiten...", + "retry_verification": "Überprüfung Erneut Versuchen...", + "detect_turnstile": "Sicherheitsüberprüfung Überprüfen...", + "verification_success": "Sicherheitsüberprüfung Erfolgreich", + "starting_browser": "Browser Öffnen...", + "form_success": "Formular Erfolgreich Eingereicht", + "browser_started": "Browser Erfolgreich Geöffnet", + "waiting_for_second_verification": "Warten auf E-Mail-Verifizierung...", + "waiting_for_verification_code": "Warten auf Verifizierungscode...", + "password_success": "Passwort Erfolgreich Eingestellt", + "password_error": "Konnte Passwort Nicht Einstellen: {error}. Bitte Erneut Versuchen", + "waiting_for_page_load": "Seite Laden...", + "first_verification_passed": "Erste Überprüfung Erfolgreich", + "mailbox": "E-Mail-Postfach Erfolgreich Geöffnet", + "register_start": "Registrierung Starten", + "form_submitted": "Formular Eingereicht, Überprüfung Starten...", + "filling_form": "Formular Ausfüllen", + "visiting_url": "URL Besuchen", + "basic_info": "Grundlegende Informationen Eingereicht", + "handle_turnstile": "Turnstile Verarbeiten", + "no_turnstile": "Kein Turnstile Erkannt", + "turnstile_passed": "Turnstile Erfolgreich", + "verification_start": "Verifizierungscode Erhalten Starten", + "verification_timeout": "Verifizierungscode Timeout", + "verification_not_found": "Kein Verifizierungscode Gefunden", + "try_get_code": "Versuchen | {attempt} Verifizierungscode Erhalten | Verbleibende Zeit: {time}s", + "get_account": "Kontoinformationen Erhalten", + "get_token": "Cursor-Sitzungstoken Erhalten", + "token_success": "Token Erfolgreich Erhalten", + "token_attempt": "Versuchen | {attempt} Mal Token zu Erhalten | Erneut Versuchen in {time}s", + "token_max_attempts": "Maximale Versuche Erreicht ({max}) | Token Erhalten Fehlgeschlagen", + "token_failed": "Token Erhalten Fehlgeschlagen: {error}", + "account_error": "Kontoinformationen Erhalten Fehlgeschlagen: {error}", + "press_enter": "Drücken Sie Enter zum Fortfahren", + "browser_start": "Browser Starten", + "open_mailbox": "Mailbox-Seite Öffnen", + "email_error": "E-Mail-Adresse Erhalten Fehlgeschlagen", + "setup_error": "E-Mail-Einrichtungsfehler: {error}", + "start_getting_verification_code": "Verifizierungscode Erhalten Starten, Erneut Versuchen in 60s", + "get_verification_code_timeout": "Verifizierungscode Erhalten Timeout", + "get_verification_code_success": "Verifizierungscode Erfolgreich Erhalten", + "try_get_verification_code": "Versuchen | {attempt} Verifizierungscode Erhalten | Verbleibende Zeit: {remaining_time}s", + "verification_code_filled": "Verifizierungscode Ausgefüllt", + "login_success_and_jump_to_settings_page": "Anmeldung Erfolgreich und zu Einstellungsseite Springen", + "detect_login_page": "Anmeldeseite Erkennen, Anmeldung Starten...", + "cursor_registration_completed": "Cursor-Registrierung Abgeschlossen!", + "set_password": "Passwort Einstellen", + "basic_info_submitted": "Grundlegende Informationen Eingereicht", + "cursor_auth_info_updated": "Cursor-Authentifizierungsinformationen Aktualisiert", + "cursor_auth_info_update_failed": "Cursor-Authentifizierungsinformationen Aktualisierung Fehlgeschlagen", + "reset_machine_id": "Maschinen-ID Zurücksetzen", + "account_info_saved": "Kontoinformationen Gespeichert", + "save_account_info_failed": "Kontoinformationen Speichern Fehlgeschlagen", + "get_email_address": "E-Mail-Adresse Erhalten", + "update_cursor_auth_info": "Cursor-Authentifizierungsinformationen Aktualisieren", + "register_process_error": "Registrierungsprozessfehler: {error}", + "setting_password": "Passwort Einstellen", + "manual_code_input": "Manuelle Code-Eingabe", + "manual_email_input": "Manuelle E-Mail-Eingabe", + "password": "Passwort", + "first_name": "Vorname", + "last_name": "Nachname", + "exit_signal": "Exit-Signal", + "email_address": "E-Mail-Adresse", + "config_created": "Konfiguration Erstellt", + "verification_failed": "Verifizierung Fehlgeschlagen", + "verification_error": "Verifizierungsfehler: {error}", + "config_option_added": "Konfigurationsoption Hinzugefügt: {option}", + "config_updated": "Konfiguration Aktualisiert", + "password_submitted": "Passwort Eingereicht", + "total_usage": "Gesamtnutzung: {usage}", + "setting_on_password": "Passwort Einstellen", + "getting_code": "Verifizierungscode Erhalten, Erneut Versuchen in 60s" + }, + "auth": { + "title": "Cursor Authentifizierungsmanager", + "checking_auth": "Authentifizierungsdatei Überprüfen", + "auth_not_found": "Authentifizierungsdatei Nicht Gefunden", + "auth_file_error": "Authentifizierungsdateifehler: {error}", + "reading_auth": "Authentifizierungsdatei Lesen", + "updating_auth": "Authentifizierungsinformationen Aktualisieren", + "auth_updated": "Authentifizierungsinformationen Erfolgreich Aktualisiert", + "auth_update_failed": "Authentifizierungsinformationen Aktualisierung Fehlgeschlagen: {error}", + "auth_file_created": "Authentifizierungsdatei Erstellt", + "auth_file_create_failed": "Authentifizierungsdatei Erstellen Fehlgeschlagen: {error}", + "press_enter": "Drücken Sie Enter zum Fortfahren", + "reset_machine_id": "Maschinen-ID Zurücksetzen", + "database_connection_closed": "Datenbankverbindung Geschlossen", + "database_updated_successfully": "Datenbank Erfolgreich Aktualisiert", + "connected_to_database": "Mit Datenbank Verbunden", + "updating_pair": "Schlüssel-Wert-Paar Aktualisieren", + "db_not_found": "Datenbankdatei Nicht Gefunden bei: {path}", + "db_permission_error": "Kann Nicht auf Datenbankdatei Zugreifen. Bitte Berechtigungen Überprüfen", + "db_connection_error": "Verbindung zur Datenbank Fehlgeschlagen: {error}" + }, + "control": { + "generate_email": "Neue E-Mail Generieren", + "blocked_domain": "Gesperrte Domain", + "select_domain": "Zufällige Domain Auswählen", + "copy_email": "E-Mail-Adresse Kopieren", + "enter_mailbox": "Mailbox Betreten", + "refresh_mailbox": "Mailbox Aktualisieren", + "check_verification": "Verifizierungscode Überprüfen", + "verification_found": "Verifizierungscode Gefunden", + "verification_not_found": "Kein Verifizierungscode Gefunden", + "browser_error": "Browsersteuerungsfehler: {error}", + "navigation_error": "Navigationsfehler: {error}", + "email_copy_error": "E-Mail-Kopierfehler: {error}", + "mailbox_error": "Mailbox-Fehler: {error}", + "token_saved_to_file": "Token Gespeichert in cursor_tokens.txt", + "navigate_to": "Navigieren zu {url}", + "generate_email_success": "E-Mail Erfolgreich Generiert", + "select_email_domain": "E-Mail-Domain Auswählen", + "select_email_domain_success": "E-Mail-Domain Erfolgreich Ausgewählt", + "get_email_name": "E-Mail-Name Erhalten", + "get_email_name_success": "E-Mail-Name Erfolgreich Erhalten", + "get_email_address": "E-Mail-Adresse Erhalten", + "get_email_address_success": "E-Mail-Adresse Erfolgreich Erhalten", + "enter_mailbox_success": "Mailbox Erfolgreich Betreten", + "found_verification_code": "Verifizierungscode Gefunden", + "get_cursor_session_token": "Cursor-Sitzungstoken Erhalten", + "get_cursor_session_token_success": "Cursor-Sitzungstoken Erfolgreich Erhalten", + "get_cursor_session_token_failed": "Cursor-Sitzungstoken Erhalten Fehlgeschlagen", + "save_token_failed": "Token Speichern Fehlgeschlagen", + "database_updated_successfully": "Datenbank Erfolgreich Aktualisiert", + "database_connection_closed": "Datenbankverbindung Geschlossen", + "no_valid_verification_code": "Kein Gültiger Verifizierungscode" + }, + "email": { + "starting_browser": "Browser Starten", + "visiting_site": "Besuche mail.tm", + "create_success": "E-Mail Erfolgreich Erstellt", + "create_failed": "E-Mail Erstellen Fehlgeschlagen", + "create_error": "E-Mail-Erstellungsfehler: {error}", + "refreshing": "E-Mail Aktualisieren", + "refresh_success": "E-Mail Erfolgreich Aktualisiert", + "refresh_error": "E-Mail-Aktualisierungsfehler: {error}", + "refresh_button_not_found": "Aktualisierungsknopf Nicht Gefunden", + "verification_found": "Verifizierung Gefunden", + "verification_not_found": "Verifizierung Nicht Gefunden", + "verification_error": "Verifizierungsfehler: {error}", + "verification_code_found": "Verifizierungscode Gefunden", + "verification_code_not_found": "Verifizierungscode Nicht Gefunden", + "verification_code_error": "Verifizierungscodefehler: {error}", + "address": "E-Mail-Adresse", + "all_domains_blocked": "Alle Domains Gesperrt, Service Wechseln", + "no_available_domains_after_filtering": "Keine Verfügbaren Domains Nach Filterung", + "switching_service": "Wechseln zu {service} Service", + "domains_list_error": "Domains-Liste Erhalten Fehlgeschlagen: {error}", + "failed_to_get_available_domains": "Verfügbare Domains Erhalten Fehlgeschlagen", + "domains_excluded": "Ausgeschlossene Domains: {domains}", + "failed_to_create_account": "Konto Erstellen Fehlgeschlagen", + "account_creation_error": "Konto-Erstellungsfehler: {error}" + } +} \ No newline at end of file diff --git a/locales/fr.json b/locales/fr.json new file mode 100644 index 0000000..b25eff7 --- /dev/null +++ b/locales/fr.json @@ -0,0 +1,254 @@ +{ + "menu": { + "title": "Options Disponibles", + "exit": "Quitter le Programme", + "reset": "Réinitialiser l'ID Machine", + "register": "Enregistrer un Nouveau Compte Cursor", + "register_google": "S'inscrire avec un Compte Google", + "register_github": "S'inscrire avec un Compte GitHub", + "register_manual": "Enregistrer Cursor avec un E-mail Personnalisé", + "quit": "Fermer l'Application Cursor", + "select_language": "Changer de Langue", + "input_choice": "Veuillez entrer votre choix ({choices})", + "invalid_choice": "Sélection invalide. Veuillez entrer un numéro de {choices}", + "program_terminated": "Programme terminé par l'utilisateur", + "error_occurred": "Une erreur s'est produite : {error}. Veuillez réessayer", + "press_enter": "Appuyez sur Entrée pour quitter", + "disable_auto_update": "Désactiver la Mise à Jour Automatique de Cursor", + "lifetime_access_enabled": "ACCÈS À VIE ACTIVÉ", + "totally_reset": "Réinitialisation Complète de Cursor" + }, + "languages": { + "en": "English", + "zh_cn": "简体中文", + "zh_tw": "繁體中文", + "vi": "Tiếng Việt", + "nl": "Nederlands", + "de": "Deutsch", + "fr": "Français" + }, + "quit_cursor": { + "start": "Début de la Fermeture de Cursor", + "no_process": "Aucun Processus Cursor en Cours", + "terminating": "Arrêt du Processus {pid}", + "waiting": "En Attente de la Fin du Processus", + "success": "Tous les Processus Cursor sont Fermés", + "timeout": "Délai d'Attente du Processus : {pids}", + "error": "Erreur Survenue : {error}" + }, + "reset": { + "title": "Outil de Réinitialisation de l'ID Machine de Cursor", + "checking": "Vérification du Fichier de Configuration", + "not_found": "Fichier de Configuration Non Trouvé", + "no_permission": "Impossible de Lire ou d'Écrire le Fichier de Configuration, Veuillez Vérifier les Permissions", + "reading": "Lecture de la Configuration Actuelle", + "creating_backup": "Création d'une Sauvegarde de la Configuration", + "backup_exists": "Fichier de Sauvegarde Existe Déjà, Étape de Sauvegarde Ignorée", + "generating": "Génération d'un Nouvel ID Machine", + "saving_json": "Sauvegarde de la Nouvelle Configuration en JSON", + "success": "ID Machine Réinitialisé avec Succès", + "new_id": "Nouvel ID Machine", + "permission_error": "Erreur de Permission : {error}", + "run_as_admin": "Veuillez Essayer d'Exécuter ce Programme en tant qu'Administrateur", + "process_error": "Erreur de Processus de Réinitialisation : {error}", + "updating_sqlite": "Mise à Jour de la Base de Données SQLite", + "updating_pair": "Mise à Jour de la Paire Clé-Valeur", + "sqlite_success": "Base de Données SQLite Mise à Jour avec Succès", + "sqlite_error": "Échec de la Mise à Jour de la Base de Données SQLite : {error}", + "press_enter": "Appuyez sur Entrée pour Continuer", + "unsupported_os": "Système d'Exploitation Non Pris en Charge : {os}", + "linux_path_not_found": "Chemin Linux Non Trouvé", + "updating_system_ids": "Mise à Jour des IDs Système", + "system_ids_updated": "IDs Système Mis à Jour avec Succès", + "system_ids_update_failed": "Échec de la Mise à Jour des IDs Système : {error}", + "windows_guid_updated": "GUID Windows Mis à Jour avec Succès", + "windows_permission_denied": "Permission Windows Refusée", + "windows_guid_update_failed": "Échec de la Mise à Jour du GUID Windows", + "macos_uuid_updated": "UUID macOS Mis à Jour avec Succès", + "plutil_command_failed": "Commande plutil Échouée", + "start_patching": "Démarrage du Patching de getMachineId", + "macos_uuid_update_failed": "Échec de la Mise à Jour de l'UUID macOS", + "current_version": "Version Actuelle de Cursor : {version}", + "patch_completed": "Patching de getMachineId Terminé", + "patch_failed": "Échec du Patching de getMachineId : {error}", + "version_check_passed": "Vérification de la Version de Cursor Réussie", + "file_modified": "Fichier Modifié", + "version_less_than_0_45": "Version de Cursor < 0.45.0, Patching de getMachineId Ignoré", + "detecting_version": "Détection de la Version de Cursor", + "patching_getmachineid": "Patching de getMachineId", + "version_greater_than_0_45": "Version de Cursor >= 0.45.0, Patching de getMachineId", + "permission_denied": "Permission Refusée : {error}", + "backup_created": "Sauvegarde Créée", + "update_success": "Mise à Jour Réussie", + "update_failed": "Échec de la Mise à Jour : {error}", + "windows_machine_guid_updated": "GUID de la Machine Windows Mis à Jour avec Succès", + "reading_package_json": "Lecture du package.json {path}", + "invalid_json_object": "Objet JSON Invalide", + "no_version_field": "Aucun Champ de Version Trouvé dans le package.json", + "version_field_empty": "Champ de Version Vide", + "invalid_version_format": "Format de Version Invalide : {version}", + "found_version": "Version Trouvée : {version}", + "version_parse_error": "Erreur d'Analyse de la Version : {error}", + "package_not_found": "Package.json Non Trouvé : {path}", + "check_version_failed": "Échec de la Vérification de la Version : {error}", + "stack_trace": "Trace de la Pile", + "version_too_low": "Version de Cursor Trop Basse : {version} < 0.45.0" + }, + "register": { + "title": "Outil d'Enregistrement de Cursor", + "start": "Démarrage du Processus d'Enregistrement...", + "handling_turnstile": "Traitement de la Vérification de Sécurité...", + "retry_verification": "Nouvelle Tentative de Vérification...", + "detect_turnstile": "Vérification de la Sécurité...", + "verification_success": "Vérification de Sécurité Réussie", + "starting_browser": "Ouverture du Navigateur...", + "form_success": "Formulaire Soumis avec Succès", + "browser_started": "Navigateur Ouvert avec Succès", + "waiting_for_second_verification": "En Attente de la Vérification par E-mail...", + "waiting_for_verification_code": "En Attente du Code de Vérification...", + "password_success": "Mot de Passe Défini avec Succès", + "password_error": "Impossible de Définir le Mot de Passe : {error}. Veuillez Réessayer", + "waiting_for_page_load": "Chargement de la Page...", + "first_verification_passed": "Première Vérification Réussie", + "mailbox": "Boîte de Réception Accédée avec Succès", + "register_start": "Démarrer l'Enregistrement", + "form_submitted": "Formulaire Soumis, Démarrage de la Vérification...", + "filling_form": "Remplissage du Formulaire", + "visiting_url": "Visite de l'URL", + "basic_info": "Informations de Base Soumises", + "handle_turnstile": "Traitement du Tourniquet", + "no_turnstile": "Aucun Tourniquet Détecté", + "turnstile_passed": "Tourniquet Réussi", + "verification_start": "Démarrage de l'Obtention du Code de Vérification", + "verification_timeout": "Délai d'Attente du Code de Vérification", + "verification_not_found": "Aucun Code de Vérification Trouvé", + "try_get_code": "Essayer | {attempt} d'Obtenir le Code de Vérification | Temps Restant : {time}s", + "get_account": "Obtention des Informations du Compte", + "get_token": "Obtention du Jeton de Session Cursor", + "token_success": "Jeton Obtenu avec Succès", + "token_attempt": "Essayer | {attempt} fois d'Obtenir le Jeton | Nouvelle Tentative dans {time}s", + "token_max_attempts": "Nombre Maximum de Tentatives Atteint ({max}) | Échec de l'Obtention du Jeton", + "token_failed": "Échec de l'Obtention du Jeton : {error}", + "account_error": "Échec de l'Obtention des Informations du Compte : {error}", + "press_enter": "Appuyez sur Entrée pour Continuer", + "browser_start": "Démarrage du Navigateur", + "open_mailbox": "Ouverture de la Page de la Boîte de Réception", + "email_error": "Échec de l'Obtention de l'Adresse E-mail", + "setup_error": "Erreur de Configuration de l'E-mail : {error}", + "start_getting_verification_code": "Démarrage de l'Obtention du Code de Vérification, Nouvelle Tentative dans 60s", + "get_verification_code_timeout": "Délai d'Attente de l'Obtention du Code de Vérification", + "get_verification_code_success": "Code de Vérification Obtenu avec Succès", + "try_get_verification_code": "Essayer | {attempt} d'Obtenir le Code de Vérification | Temps Restant : {remaining_time}s", + "verification_code_filled": "Code de Vérification Rempli", + "login_success_and_jump_to_settings_page": "Connexion Réussie et Accès à la Page des Paramètres", + "detect_login_page": "Détection de la Page de Connexion, Démarrage de la Connexion...", + "cursor_registration_completed": "Enregistrement de Cursor Terminé!", + "set_password": "Définir le Mot de Passe", + "basic_info_submitted": "Informations de Base Soumises", + "cursor_auth_info_updated": "Informations d'Authentification de Cursor Mises à Jour", + "cursor_auth_info_update_failed": "Échec de la Mise à Jour des Informations d'Authentification de Cursor", + "reset_machine_id": "Réinitialiser l'ID Machine", + "account_info_saved": "Informations du Compte Enregistrées", + "save_account_info_failed": "Échec de l'Enregistrement des Informations du Compte", + "get_email_address": "Obtenir l'Adresse E-mail", + "update_cursor_auth_info": "Mettre à Jour les Informations d'Authentification de Cursor", + "register_process_error": "Erreur du Processus d'Enregistrement : {error}", + "setting_password": "Définir le Mot de Passe", + "manual_code_input": "Saisie Manuelle du Code", + "manual_email_input": "Saisie Manuelle de l'E-mail", + "password": "Mot de Passe", + "first_name": "Prénom", + "last_name": "Nom de Famille", + "exit_signal": "Signal de Sortie", + "email_address": "Adresse E-mail", + "config_created": "Configuration Créée", + "verification_failed": "Échec de la Vérification", + "verification_error": "Erreur de Vérification : {error}", + "config_option_added": "Option de Configuration Ajoutée : {option}", + "config_updated": "Configuration Mise à Jour", + "password_submitted": "Mot de Passe Soumis", + "total_usage": "Utilisation Totale : {usage}", + "setting_on_password": "Définir le Mot de Passe", + "getting_code": "Obtention du Code de Vérification, Nouvelle Tentative dans 60s" + }, + "auth": { + "title": "Gestionnaire d'Authentification de Cursor", + "checking_auth": "Vérification du Fichier d'Authentification", + "auth_not_found": "Fichier d'Authentification Non Trouvé", + "auth_file_error": "Erreur du Fichier d'Authentification : {error}", + "reading_auth": "Lecture du Fichier d'Authentification", + "updating_auth": "Mise à Jour des Informations d'Authentification", + "auth_updated": "Informations d'Authentification Mises à Jour avec Succès", + "auth_update_failed": "Échec de la Mise à Jour des Informations d'Authentification : {error}", + "auth_file_created": "Fichier d'Authentification Créé", + "auth_file_create_failed": "Échec de la Création du Fichier d'Authentification : {error}", + "press_enter": "Appuyez sur Entrée pour Continuer", + "reset_machine_id": "Réinitialiser l'ID Machine", + "database_connection_closed": "Connexion à la Base de Données Fermée", + "database_updated_successfully": "Base de Données Mise à Jour avec Succès", + "connected_to_database": "Connecté à la Base de Données", + "updating_pair": "Mise à Jour de la Paire Clé-Valeur", + "db_not_found": "Fichier de Base de Données Non Trouvé à : {path}", + "db_permission_error": "Impossible d'Accéder au Fichier de Base de Données. Veuillez Vérifier les Permissions", + "db_connection_error": "Échec de la Connexion à la Base de Données : {error}" + }, + "control": { + "generate_email": "Générer un Nouvel E-mail", + "blocked_domain": "Domaine Bloqué", + "select_domain": "Sélectionner un Domaine Aléatoire", + "copy_email": "Copier l'Adresse E-mail", + "enter_mailbox": "Entrer dans la Boîte de Réception", + "refresh_mailbox": "Actualiser la Boîte de Réception", + "check_verification": "Vérifier le Code de Vérification", + "verification_found": "Code de Vérification Trouvé", + "verification_not_found": "Aucun Code de Vérification Trouvé", + "browser_error": "Erreur de Contrôle du Navigateur : {error}", + "navigation_error": "Erreur de Navigation : {error}", + "email_copy_error": "Erreur de Copie de l'E-mail : {error}", + "mailbox_error": "Erreur de la Boîte de Réception : {error}", + "token_saved_to_file": "Jeton Enregistré dans cursor_tokens.txt", + "navigate_to": "Naviguer vers {url}", + "generate_email_success": "E-mail Généré avec Succès", + "select_email_domain": "Sélectionner le Domaine de l'E-mail", + "select_email_domain_success": "Domaine de l'E-mail Sélectionné avec Succès", + "get_email_name": "Obtenir le Nom de l'E-mail", + "get_email_name_success": "Nom de l'E-mail Obtenu avec Succès", + "get_email_address": "Obtenir l'Adresse E-mail", + "get_email_address_success": "Adresse E-mail Obtenue avec Succès", + "enter_mailbox_success": "Entrée dans la Boîte de Réception Réussie", + "found_verification_code": "Code de Vérification Trouvé", + "get_cursor_session_token": "Obtenir le Jeton de Session Cursor", + "get_cursor_session_token_success": "Jeton de Session Cursor Obtenu avec Succès", + "get_cursor_session_token_failed": "Échec de l'Obtention du Jeton de Session Cursor", + "save_token_failed": "Échec de l'Enregistrement du Jeton", + "database_updated_successfully": "Base de Données Mise à Jour avec Succès", + "database_connection_closed": "Connexion à la Base de Données Fermée", + "no_valid_verification_code": "Aucun Code de Vérification Valide" + }, + "email": { + "starting_browser": "Démarrage du Navigateur", + "visiting_site": "Visite de mail.tm", + "create_success": "E-mail Créé avec Succès", + "create_failed": "Échec de la Création de l'E-mail", + "create_error": "Erreur de Création de l'E-mail : {error}", + "refreshing": "Actualisation de l'E-mail", + "refresh_success": "E-mail Actualisé avec Succès", + "refresh_error": "Erreur d'Actualisation de l'E-mail : {error}", + "refresh_button_not_found": "Bouton d'Actualisation Non Trouvé", + "verification_found": "Vérification Trouvée", + "verification_not_found": "Vérification Non Trouvée", + "verification_error": "Erreur de Vérification : {error}", + "verification_code_found": "Code de Vérification Trouvé", + "verification_code_not_found": "Code de Vérification Non Trouvé", + "verification_code_error": "Erreur de Code de Vérification : {error}", + "address": "Adresse E-mail", + "all_domains_blocked": "Tous les Domaines Sont Bloqués, Changement de Service", + "no_available_domains_after_filtering": "Aucun Domaine Disponible Après Filtrage", + "switching_service": "Changement vers le Service {service}", + "domains_list_error": "Échec de l'Obtention de la Liste des Domaines : {error}", + "failed_to_get_available_domains": "Échec de l'Obtention des Domaines Disponibles", + "domains_excluded": "Domaines Exclus : {domains}", + "failed_to_create_account": "Échec de la Création du Compte", + "account_creation_error": "Erreur de Création du Compte : {error}" + } +} \ No newline at end of file diff --git a/locales/nl.json b/locales/nl.json new file mode 100644 index 0000000..95f8821 --- /dev/null +++ b/locales/nl.json @@ -0,0 +1,254 @@ +{ + "menu": { + "title": "Beschikbare opties", + "exit": "Programma afsluiten", + "reset": "Machine-ID resetten", + "register": "Nieuw Cursor-account registreren", + "register_google": "Registreren met Google-account", + "register_github": "Registreren met GitHub-account", + "register_manual": "Cursor registreren met aangepast e-mailadres", + "quit": "Cursor-applicatie sluiten", + "select_language": "Taal wijzigen", + "input_choice": "Voer uw keuze in: {choices}", + "invalid_choice": "Ongeldige selectie. Voer een nummer in uit {choices}.", + "program_terminated": "Programma is beëindigd door de gebruiker", + "error_occurred": "Er is een fout opgetreden: {error}. Probeer het opnieuw.", + "press_enter": "Druk op Enter om door te gaan.", + "disable_auto_update": "Cursor automatische updates uitschakelen", + "lifetime_access_enabled": "Levenslange toegang ingeschakeld", + "totally_reset": "Cursor volledig resetten" + }, + "languages": { + "en": "English", + "zh_cn": "简体中文", + "zh_tw": "繁體中文", + "vi": "Tiếng Việt", + "nl": "Nederlands", + "de": "Deutsch", + "fr": "Français" + }, + "quit_cursor": { + "start": "Start met afsluiten van Cursor", + "no_process": "Geen actief Cursor-proces", + "terminating": "Proces beëindigen {pid}", + "waiting": "Wachten tot het proces is afgesloten", + "success": "Alle Cursor-processen gesloten", + "timeout": "Proces time-out: {pids}", + "error": "Fout opgetreden: {error}" + }, + "reset": { + "title": "Cursor Machine-ID Reset Tool", + "checking": "Configuratiebestand controleren", + "not_found": "Configuratiebestand niet gevonden", + "no_permission": "Kan configuratiebestand niet lezen of schrijven, controleer de bestandsrechten", + "reading": "Huidige configuratie lezen", + "creating_backup": "Configuratieback-up maken", + "backup_exists": "Back-upbestand bestaat al, back-upstap overslaan", + "generating": "Nieuwe Machine-ID genereren", + "saving_json": "Nieuwe configuratie opslaan naar JSON", + "success": "Machine-ID succesvol gereset", + "new_id": "Nieuwe Machine-ID", + "permission_error": "Toestemmingsfout: {error}", + "run_as_admin": "Probeer dit programma als beheerder uit te voeren", + "process_error": "Resetprocesfout: {error}", + "updating_sqlite": "SQLite-database bijwerken", + "updating_pair": "Sleutel-waarde paar bijwerken", + "sqlite_success": "SQLite-database succesvol bijgewerkt", + "sqlite_error": "SQLite-database bijwerken mislukt: {error}", + "press_enter": "Druk op Enter om door te gaan", + "unsupported_os": "Niet-ondersteund besturingssysteem: {os}", + "linux_path_not_found": "Linux-pad niet gevonden", + "updating_system_ids": "Systeem-ID's bijwerken", + "system_ids_updated": "Systeem-ID's succesvol bijgewerkt", + "system_ids_update_failed": "Systeem-ID's bijwerken mislukt: {error}", + "windows_guid_updated": "Windows GUID succesvol bijgewerkt", + "windows_permission_denied": "Windows toestemming geweigerd", + "windows_guid_update_failed": "Windows GUID bijwerken mislukt", + "macos_uuid_updated": "macOS UUID succesvol bijgewerkt", + "plutil_command_failed": "plutil-opdracht mislukt", + "start_patching": "Patching getMachineId starten", + "macos_uuid_update_failed": "macOS UUID bijwerken mislukt", + "current_version": "Huidige Cursor-versie: {version}", + "patch_completed": "Patching getMachineId voltooid", + "patch_failed": "Patching getMachineId mislukt: {error}", + "version_check_passed": "Cursor-versiecontrole geslaagd", + "file_modified": "Bestand gewijzigd", + "version_less_than_0_45": "Cursor-versie < 0.45.0, patching getMachineId overslaan", + "detecting_version": "Cursor-versie detecteren", + "patching_getmachineid": "Patching getMachineId", + "version_greater_than_0_45": "Cursor-versie >= 0.45.0, patching getMachineId", + "permission_denied": "Toestemming geweigerd: {error}", + "backup_created": "Back-up gemaakt", + "update_success": "Update geslaagd", + "update_failed": "Update mislukt: {error}", + "windows_machine_guid_updated": "Windows Machine GUID succesvol bijgewerkt", + "reading_package_json": "package.json lezen {path}", + "invalid_json_object": "Ongeldig JSON-object", + "no_version_field": "Geen versieveld gevonden in package.json", + "version_field_empty": "Versieveld is leeg", + "invalid_version_format": "Ongeldig versieformaat: {version}", + "found_version": "Gevonden versie: {version}", + "version_parse_error": "Versie parse-fout: {error}", + "package_not_found": "Package.json niet gevonden: {path}", + "check_version_failed": "Versiecontrole mislukt: {error}", + "stack_trace": "Stack Trace", + "version_too_low": "Cursor-versie te laag: {version} < 0.45.0" + }, + "register": { + "title": "Cursor Registratietool", + "start": "Registratieproces starten...", + "handling_turnstile": "Beveiligingsverificatie verwerken...", + "retry_verification": "Verificatie opnieuw proberen...", + "detect_turnstile": "Beveiligingsverificatie controleren...", + "verification_success": "Beveiligingsverificatie geslaagd", + "starting_browser": "Browser openen...", + "form_success": "Formulier succesvol ingediend", + "browser_started": "Browser succesvol geopend", + "waiting_for_second_verification": "Wachten op e-mailverificatie...", + "waiting_for_verification_code": "Wachten op verificatiecode...", + "password_success": "Wachtwoord succesvol ingesteld", + "password_error": "Kon wachtwoord niet instellen: {error}. Probeer het opnieuw", + "waiting_for_page_load": "Pagina laden...", + "first_verification_passed": "Eerste verificatie geslaagd", + "mailbox": "E-mailinbox succesvol geopend", + "register_start": "Registratie starten", + "form_submitted": "Formulier ingediend, verificatie starten...", + "filling_form": "Formulier invullen", + "visiting_url": "URL bezoeken", + "basic_info": "Basisinformatie ingediend", + "handle_turnstile": "Turnstile verwerken", + "no_turnstile": "Geen Turnstile gedetecteerd", + "turnstile_passed": "Turnstile geslaagd", + "verification_start": "Verificatiecode verkrijgen starten", + "verification_timeout": "Verificatiecode time-out", + "verification_not_found": "Geen verificatiecode gevonden", + "try_get_code": "Probeer | {attempt} Verificatiecode verkrijgen | Tijd over: {time}s", + "get_account": "Accountinformatie verkrijgen", + "get_token": "Cursor-sessietoken verkrijgen", + "token_success": "Token succesvol verkregen", + "token_attempt": "Probeer | {attempt} keer om token te verkrijgen | Opnieuw proberen in {time}s", + "token_max_attempts": "Maximale pogingen bereikt ({max}) | Token verkrijgen mislukt", + "token_failed": "Token verkrijgen mislukt: {error}", + "account_error": "Accountinformatie verkrijgen mislukt: {error}", + "press_enter": "Druk op Enter om door te gaan", + "browser_start": "Browser starten", + "open_mailbox": "Mailboxpagina openen", + "email_error": "E-mailadres verkrijgen mislukt", + "setup_error": "E-mailinstelling fout: {error}", + "start_getting_verification_code": "Verificatiecode verkrijgen starten, opnieuw proberen in 60s", + "get_verification_code_timeout": "Verificatiecode verkrijgen time-out", + "get_verification_code_success": "Verificatiecode succesvol verkregen", + "try_get_verification_code": "Probeer | {attempt} Verificatiecode verkrijgen | Tijd over: {remaining_time}s", + "verification_code_filled": "Verificatiecode ingevuld", + "login_success_and_jump_to_settings_page": "Inloggen geslaagd en naar instellingenpagina springen", + "detect_login_page": "Inlogpagina detecteren, inloggen starten...", + "cursor_registration_completed": "Cursor-registratie voltooid!", + "set_password": "Wachtwoord instellen", + "basic_info_submitted": "Basisinformatie ingediend", + "cursor_auth_info_updated": "Cursor-authenticatie-informatie bijgewerkt", + "cursor_auth_info_update_failed": "Cursor-authenticatie-informatie bijwerken mislukt", + "reset_machine_id": "Machine-ID resetten", + "account_info_saved": "Accountinformatie opgeslagen", + "save_account_info_failed": "Accountinformatie opslaan mislukt", + "get_email_address": "E-mailadres verkrijgen", + "update_cursor_auth_info": "Cursor-authenticatie-informatie bijwerken", + "register_process_error": "Registratieprocesfout: {error}", + "setting_password": "Wachtwoord instellen", + "manual_code_input": "Handmatige code-invoer", + "manual_email_input": "Handmatige e-mailinvoer", + "password": "Wachtwoord", + "first_name": "Voornaam", + "last_name": "Achternaam", + "exit_signal": "Exit-signaal", + "email_address": "E-mailadres", + "config_created": "Configuratie aangemaakt", + "verification_failed": "Verificatie mislukt", + "verification_error": "Verificatiefout: {error}", + "config_option_added": "Configuratieoptie toegevoegd: {option}", + "config_updated": "Configuratie bijgewerkt", + "password_submitted": "Wachtwoord ingediend", + "total_usage": "Totaal gebruik: {usage}", + "setting_on_password": "Wachtwoord instellen", + "getting_code": "Verificatiecode verkrijgen, opnieuw proberen in 60s" + }, + "auth": { + "title": "Cursor Authenticatiebeheer", + "checking_auth": "Authenticatiebestand controleren", + "auth_not_found": "Authenticatiebestand niet gevonden", + "auth_file_error": "Authenticatiebestandfout: {error}", + "reading_auth": "Authenticatiebestand lezen", + "updating_auth": "Authenticatie-informatie bijwerken", + "auth_updated": "Authenticatie-informatie succesvol bijgewerkt", + "auth_update_failed": "Authenticatie-informatie bijwerken mislukt: {error}", + "auth_file_created": "Authenticatiebestand aangemaakt", + "auth_file_create_failed": "Authenticatiebestand aanmaken mislukt: {error}", + "press_enter": "Druk op Enter om door te gaan", + "reset_machine_id": "Machine-ID resetten", + "database_connection_closed": "Databaseverbinding gesloten", + "database_updated_successfully": "Database succesvol bijgewerkt", + "connected_to_database": "Verbonden met database", + "updating_pair": "Sleutel-waarde paar bijwerken", + "db_not_found": "Databasebestand niet gevonden op: {path}", + "db_permission_error": "Kan geen toegang krijgen tot databasebestand. Controleer de rechten", + "db_connection_error": "Verbinding met database mislukt: {error}" + }, + "control": { + "generate_email": "Nieuw e-mailadres genereren", + "blocked_domain": "Geblokkeerd domein", + "select_domain": "Willekeurig domein selecteren", + "copy_email": "E-mailadres kopiëren", + "enter_mailbox": "Mailbox betreden", + "refresh_mailbox": "Mailbox vernieuwen", + "check_verification": "Verificatiecode controleren", + "verification_found": "Verificatiecode gevonden", + "verification_not_found": "Geen verificatiecode gevonden", + "browser_error": "Browserbesturingsfout: {error}", + "navigation_error": "Navigatiefout: {error}", + "email_copy_error": "E-mailkopieerfout: {error}", + "mailbox_error": "Mailboxfout: {error}", + "token_saved_to_file": "Token opgeslagen in cursor_tokens.txt", + "navigate_to": "Navigeren naar {url}", + "generate_email_success": "E-mailadres succesvol gegenereerd", + "select_email_domain": "E-maildomein selecteren", + "select_email_domain_success": "E-maildomein succesvol geselecteerd", + "get_email_name": "E-mailnaam verkrijgen", + "get_email_name_success": "E-mailnaam succesvol verkregen", + "get_email_address": "E-mailadres verkrijgen", + "get_email_address_success": "E-mailadres succesvol verkregen", + "enter_mailbox_success": "Mailbox succesvol betreden", + "found_verification_code": "Verificatiecode gevonden", + "get_cursor_session_token": "Cursor-sessietoken verkrijgen", + "get_cursor_session_token_success": "Cursor-sessietoken succesvol verkregen", + "get_cursor_session_token_failed": "Cursor-sessietoken verkrijgen mislukt", + "save_token_failed": "Token opslaan mislukt", + "database_updated_successfully": "Database succesvol bijgewerkt", + "database_connection_closed": "Databaseverbinding gesloten", + "no_valid_verification_code": "Geen geldige verificatiecode" + }, + "email": { + "starting_browser": "Browser starten", + "visiting_site": "Bezoek mail.tm", + "create_success": "E-mail succesvol aangemaakt", + "create_failed": "E-mail aanmaken mislukt", + "create_error": "E-mail aanmaakfout: {error}", + "refreshing": "E-mail vernieuwen", + "refresh_success": "E-mail succesvol vernieuwd", + "refresh_error": "E-mail vernieuwingsfout: {error}", + "refresh_button_not_found": "Vernieuwknop niet gevonden", + "verification_found": "Verificatie gevonden", + "verification_not_found": "Verificatie niet gevonden", + "verification_error": "Verificatiefout: {error}", + "verification_code_found": "Verificatiecode gevonden", + "verification_code_not_found": "Verificatiecode niet gevonden", + "verification_code_error": "Verificatiecodefout: {error}", + "address": "E-mailadres", + "all_domains_blocked": "Alle domeinen geblokkeerd, service wisselen", + "no_available_domains_after_filtering": "Geen beschikbare domeinen na filteren", + "switching_service": "Wisselen naar {service} service", + "domains_list_error": "Domeinenlijst verkrijgen mislukt: {error}", + "failed_to_get_available_domains": "Verkrijgen van beschikbare domeinen mislukt", + "domains_excluded": "Uitgesloten domeinen: {domains}", + "failed_to_create_account": "Account aanmaken mislukt", + "account_creation_error": "Account aanmaakfout: {error}" + } +} From 17212081aebd16769314526c494a327792eba13e Mon Sep 17 00:00:00 2001 From: yeongpin Date: Mon, 17 Mar 2025 17:00:23 +0800 Subject: [PATCH 2/2] Update version to 1.7.11, adding multi-language support for German, Dutch, and French. Update CHANGELOG.md to reflect new language additions and enhancements in the translation files. --- CHANGELOG.md | 10 +++- locales/de.json | 118 ++++++++++++++++++++++++++++++++++++++++++++- locales/en.json | 5 +- locales/fr.json | 118 ++++++++++++++++++++++++++++++++++++++++++++- locales/nl.json | 118 ++++++++++++++++++++++++++++++++++++++++++++- locales/vi.json | 5 +- locales/zh_cn.json | 5 +- locales/zh_tw.json | 5 +- main.py | 14 +++++- 9 files changed, 389 insertions(+), 9 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 84a704e..8d15581 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,14 @@ # Change Log -## v1.7.10 ( Pre - Release 版本 ) +## v1.7.11 ( Pre - Release 版本 ) +1. Add: Multi-language Support | 增加多語言支持 +2. Add: German Language | 增加德語 +3. Add: Dutch Language | 增加荷蘭語 +4. Add: French Language | 增加法語 + + + +## v1.7.10 1. Add: Totally Reset Cursor | 增加完全重置 Cursor 2. Add: Multi-language Support for Totally Reset | 增加完全重置多語言支持 diff --git a/locales/de.json b/locales/de.json index 65cd68a..350016c 100644 --- a/locales/de.json +++ b/locales/de.json @@ -250,5 +250,121 @@ "domains_excluded": "Ausgeschlossene Domains: {domains}", "failed_to_create_account": "Konto Erstellen Fehlgeschlagen", "account_creation_error": "Konto-Erstellungsfehler: {error}" + }, + "update": { + "title": "Cursor Auto-Update Deaktivieren", + "disable_success": "Auto-Update Deaktiviert Erfolgreich", + "disable_failed": "Auto-Update Deaktivieren Fehlgeschlagen: {error}", + "press_enter": "Drücken Sie Enter zum Fortfahren", + "start_disable": "Auto-Update Deaktivieren Starten", + "killing_processes": "Prozesse Töten", + "processes_killed": "Prozesse Getötet", + "removing_directory": "Verzeichnis Entfernen", + "directory_removed": "Verzeichnis Entfernt", + "creating_block_file": "Block-Datei Erstellen", + "block_file_created": "Block-Datei Erstellt" + }, + "updater": { + "checking": "Updates prüfen...", + "new_version_available": "Neue Version verfügbar! (Aktuell: {current}, Neueste: {latest})", + "updating": "Zur neuesten Version aktualisieren. Das Programm wird automatisch neu starten.", + "up_to_date": "Sie verwenden die neueste Version.", + "check_failed": "Überprüfung auf Updates fehlgeschlagen: {error}", + "continue_anyway": "Mit der aktuellen Version fortfahren...", + "update_confirm": "Möchten Sie die neueste Version aktualisieren? (Y/n)", + "update_skipped": "Update überspringen.", + "invalid_choice": "Ungültige Auswahl. Bitte geben Sie 'Y' oder 'n' ein.", + "development_version": "Entwickler-Version {current} > {latest}" + }, + "totally_reset": { + "title": "Cursor Vollständig Zurücksetzen", + "checking_config": "Konfigurationsdatei Überprüfen", + "config_not_found": "Konfigurationsdatei Nicht Gefunden", + "no_permission": "Kann Konfigurationsdatei Nicht Lesen oder Schreiben, Bitte Berechtigungen Überprüfen", + "reading_config": "Aktuelle Konfiguration Lesen", + "creating_backup": "Konfigurationsdatei Sichern", + "backup_exists": "Backup-Datei bereits vorhanden, Sicherungsschritt überspringen", + "generating_new_machine_id": "Neue Maschinen-ID Generieren", + "saving_new_config": "Neue Konfiguration in JSON Speichern", + "success": "Cursor Erfolgreich Zurückgesetzt", + "error": "Cursor Zurücksetzen Fehlgeschlagen: {error}", + "press_enter": "Drücken Sie Enter zum Beenden", + "reset_machine_id": "Maschinen-ID Zurücksetzen", + "database_connection_closed": "Datenbankverbindung Geschlossen", + "database_updated_successfully": "Datenbank Erfolgreich Aktualisiert", + "connected_to_database": "Mit Datenbank Verbunden", + "updating_pair": "Schlüssel-Wert-Paar Aktualisieren", + "db_not_found": "Datenbankdatei Nicht Gefunden bei: {path}", + "db_permission_error": "Kann Nicht auf Datenbankdatei Zugreifen. Bitte Berechtigungen Überprüfen", + "db_connection_error": "Verbindung zur Datenbank Fehlgeschlagen: {error}", + "feature_title": "FEATURES", + "feature_1": "Vollständige Entfernung von Cursor AI Einstellungen und Konfigurationen", + "feature_2": "Entfernt alle zwischengespeicherten Daten, einschließlich AI-Verlauf und Prompts", + "feature_3": "Maschinen-ID Zurücksetzen, um Trial-Erkennung zu umgehen", + "feature_4": "Erstellt neue zufällige Maschinen-IDs", + "feature_5": "Entfernt benutzerdefinierte Erweiterungen und Einstellungen", + "feature_6": "Zurücksetzt Trial-Informationen und Aktivierungsdaten", + "feature_7": "Tiefes Scannen für versteckte Lizenz- und Trial-bezogene Dateien", + "feature_8": "Sichert nicht-Cursor-Dateien und Anwendungen", + "feature_9": "Kompatibel mit Windows, macOS und Linux", + "disclaimer_title": "Disclaimer", + "disclaimer_1": "Dieses Tool wird alle Cursor AI Einstellungen,", + "disclaimer_2": "Konfigurationen und zwischengespeicherte Daten löschen. Diese Aktion kann nicht rückgängig gemacht werden.", + "disclaimer_3": "Ihre Code-Dateien werden NICHT beeinflusst, und das Tool ist so konzipiert,", + "disclaimer_4": "nur Cursor AI Editor-Dateien und Trial-Erkennungsmechanismen zu zielen.", + "disclaimer_5": "Andere Anwendungen auf Ihrem System werden NICHT beeinflusst.", + "disclaimer_6": "Sie müssen Cursor AI erneut einrichten, nachdem Sie dieses Tool ausgeführt haben.", + "disclaimer_7": "Verwenden Sie auf eigene Gefahr", + "confirm_title": "Sind Sie sicher, dass Sie fortfahren möchten?", + "confirm_1": "Diese Aktion wird alle Cursor AI Einstellungen,", + "confirm_2": "Konfigurationen und zwischengespeicherte Daten löschen. Diese Aktion kann nicht rückgängig gemacht werden.", + "confirm_3": "Ihre Code-Dateien werden NICHT beeinflusst, und das Tool ist so konzipiert,", + "confirm_4": "nur Cursor AI Editor-Dateien und Trial-Erkennungsmechanismen zu zielen.", + "confirm_5": "Andere Anwendungen auf Ihrem System werden NICHT beeinflusst.", + "confirm_6": "Sie müssen Cursor AI erneut einrichten, nachdem Sie dieses Tool ausgeführt haben.", + "confirm_7": "Verwenden Sie auf eigene Gefahr", + "invalid_choice": "Bitte geben Sie 'Y' oder 'n' ein", + "skipped_for_safety": "Übersprungen für Sicherheit (nicht Cursor-bezogen): {path}", + "deleted": "Gelöscht: {path}", + "error_deleting": "Fehler beim Löschen von {path}: {error}", + "not_found": "Datei nicht gefunden: {path}", + "resetting_machine_id": "Maschinen-IDs zurücksetzen, um Trial-Erkennung zu umgehen...", + "created_machine_id": "Neue Maschinen-ID erstellt: {path}", + "error_creating_machine_id": "Fehler beim Erstellen der Maschinen-ID-Datei {path}: {error}", + "error_searching": "Fehler beim Suchen nach Dateien in {path}: {error}", + "created_extended_trial_info": "Neue erweiterte Trial-Informationen erstellt: {path}", + "error_creating_trial_info": "Fehler beim Erstellen der Trial-Informationen-Datei {path}: {error}", + "resetting_cursor_ai_editor": "Cursor AI Editor zurücksetzen... Bitte warten.", + "reset_cancelled": "Reset abgebrochen. Ohne Änderungen verlassen.", + "windows_machine_id_modification_skipped": "Windows Maschinen-ID-Änderung übersprungen: {error}", + "linux_machine_id_modification_skipped": "Linux machine-id-Änderung übersprungen: {error}", + "note_complete_machine_id_reset_may_require_running_as_administrator": "Hinweis: Vollständiges Zurücksetzen der Maschinen-ID kann erfordern, dass Sie als Administrator ausführen", + "note_complete_system_machine_id_reset_may_require_sudo_privileges": "Hinweis: Vollständiges System-Maschinen-ID-Zurücksetzen kann sudo-Berechtigungen erfordern", + "windows_registry_instructions": "📝 HINWEIS: Für vollständiges Zurücksetzen auf Windows müssen Sie möglicherweise auch die Registrierungseinträge bereinigen.", + "windows_registry_instructions_2": " Führen Sie 'regedit' aus und suchen Sie nach Schlüsseln, die 'Cursor' oder 'CursorAI' enthalten, unter HKEY_CURRENT_USER\\Software\\ und löschen Sie sie.\n", + "reset_log_1": "Cursor AI wurde vollständig zurückgesetzt und Trial-Erkennung umgangen!", + "reset_log_2": "Bitte starten Sie Ihr System neu, um die Änderungen zu übernehmen.", + "reset_log_3": "Sie müssen Cursor AI erneut installieren und sollten jetzt einen neuen Trial-Zeitraum haben.", + "reset_log_4": "Für die besten Ergebnisse betrachten Sie auch:", + "reset_log_5": "Verwenden Sie eine andere E-Mail-Adresse beim Registrieren für einen neuen Trial", + "reset_log_6": "Wenn verfügbar, verwenden Sie einen VPN, um Ihre IP-Adresse zu ändern", + "reset_log_7": "Löschen Sie Ihre Browser-Cookies und Cache vor dem Besuch der Cursor AI-Website", + "reset_log_8": "Wenn Probleme bestehen, versuchen Sie, Cursor AI in einem anderen Speicherort zu installieren", + "reset_log_9": "Wenn Sie irgendwelche Probleme haben, gehen Sie zu Github Issue Tracker und erstellen Sie ein Problem unter https://github.com/yeongpin/cursor-free-vip/issues", + "unexpected_error": "Ein unerwarteter Fehler ist aufgetreten: {error}", + "report_issue": "Bitte melden Sie dieses Problem bei Github Issue Tracker unter https://github.com/yeongpin/cursor-free-vip/issues", + "keyboard_interrupt": "Prozess von Benutzer unterbrochen. Beenden...", + "return_to_main_menu": "Zurück zur Hauptseite...", + "process_interrupted": "Prozess unterbrochen. Beenden...", + "press_enter_to_return_to_main_menu": "Drücken Sie Enter, um zur Hauptseite zurückzukehren...", + "removing_known": "Bekannte Trial/Lizenz-Dateien entfernen", + "performing_deep_scan": "Tiefes Scannen nach zusätzlichen Trial/Lizenz-Dateien", + "found_additional_potential_license_trial_files": "Gefundene {count} zusätzliche potentielle Lizenz/Trial-Dateien", + "checking_for_electron_localstorage_files": "Überprüfen auf Electron localStorage-Dateien", + "no_additional_license_trial_files_found_in_deep_scan": "Keine zusätzlichen Lizenz/Trial-Dateien in tiefem Scan gefunden", + "removing_electron_localstorage_files": "Electron localStorage-Dateien entfernen", + "electron_localstorage_files_removed": "Electron localStorage-Dateien entfernt", + "electron_localstorage_files_removal_error": "Fehler beim Entfernen von Electron localStorage-Dateien: {error}", + "removing_electron_localstorage_files_completed": "Entfernen von Electron localStorage-Dateien abgeschlossen" } -} \ No newline at end of file +} \ No newline at end of file diff --git a/locales/en.json b/locales/en.json index d70d636..9cc3ccc 100644 --- a/locales/en.json +++ b/locales/en.json @@ -22,7 +22,10 @@ "en": "English", "zh_cn": "简体中文", "zh_tw": "繁體中文", - "vi": "Vietnamese" + "vi": "Vietnamese", + "nl": "Dutch", + "de": "German", + "fr": "French" }, "quit_cursor": { "start": "Start Quitting Cursor", diff --git a/locales/fr.json b/locales/fr.json index b25eff7..a795fb9 100644 --- a/locales/fr.json +++ b/locales/fr.json @@ -250,5 +250,121 @@ "domains_excluded": "Domaines Exclus : {domains}", "failed_to_create_account": "Échec de la Création du Compte", "account_creation_error": "Erreur de Création du Compte : {error}" + }, + "update": { + "title": "Désactivation de la Mise à Jour Automatique de Cursor", + "disable_success": "Mise à Jour Automatique Désactivée avec Succès", + "disable_failed": "Échec de la Désactivation de la Mise à Jour Automatique : {error}", + "press_enter": "Appuyez sur Entrée pour Continuer", + "start_disable": "Démarrage de la Désactivation de la Mise à Jour Automatique", + "killing_processes": "Tuer les Processus", + "processes_killed": "Processus Tuer", + "removing_directory": "Suppression du Dossier", + "directory_removed": "Dossier Supprimé", + "creating_block_file": "Création du Fichier de Blocage", + "block_file_created": "Fichier de Blocage Créé" + }, + "updater": { + "checking": "Vérification des mises à jour...", + "new_version_available": "Nouvelle version disponible! (Version actuelle: {current}, Version la plus récente: {latest})", + "updating": "Mise à jour vers la version la plus récente. Le programme redémarrera automatiquement.", + "up_to_date": "Vous utilisez la version la plus récente.", + "check_failed": "Échec de la vérification des mises à jour: {error}", + "continue_anyway": "Continuer avec la version actuelle...", + "update_confirm": "Voulez-vous mettre à jour vers la version la plus récente? (O/n)", + "update_skipped": "Mise à jour ignorée.", + "invalid_choice": "Choix invalide. Veuillez entrer 'O' ou 'n'.", + "development_version": "Version de Développement {current} > {latest}" + }, + "totally_reset": { + "title": "Réinitialiser Complètement Cursor", + "checking_config": "Vérification du Fichier de Configuration", + "config_not_found": "Fichier de Configuration Non Trouvé", + "no_permission": "Impossible de Lire ou d'Écrire le Fichier de Configuration, Veuillez Vérifier les Permissions du Fichier", + "reading_config": "Lecture de la Configuration Actuelle", + "creating_backup": "Création de la Sauvegarde de la Configuration", + "backup_exists": "Fichier de Sauvegarde Déjà Existant, Passer à la Sauvegarde", + "generating_new_machine_id": "Génération d'un Nouvel ID Machine", + "saving_new_config": "Enregistrement de la Nouvelle Configuration dans JSON", + "success": "Réinitialisation de Cursor Réussie", + "error": "Réinitialisation de Cursor Échouée: {error}", + "press_enter": "Appuyez sur Entrée pour Continuer", + "reset_machine_id": "Réinitialiser l'ID Machine", + "database_connection_closed": "Connexion à la Base de Données Fermée", + "database_updated_successfully": "Base de Données Mise à Jour avec Succès", + "connected_to_database": "Connecté à la Base de Données", + "updating_pair": "Updating Key-Value Pair", + "db_not_found": "Database file not found at: {path}", + "db_permission_error": "Impossible d'Accéder au Fichier de Base de Données. Veuillez Vérifier les Permissions", + "db_connection_error": "Échec de la Connexion à la Base de Données : {error}", + "feature_title": "Fonctionnalités", + "feature_1": "Suppression complète des paramètres et configurations de Cursor AI", + "feature_2": "Efface tous les données mises en cache, y compris l'historique et les prompts", + "feature_3": "Réinitialise l'ID Machine pour contourner la détection de la période d'essai", + "feature_4": "Crée de nouveaux identifiants de machine aléatoires", + "feature_5": "Supprime les extensions personnalisées et les préférences", + "feature_6": "Réinitialise les informations de la période d'essai et les données d'activation", + "feature_7": "Analyse approfondie pour les fichiers cachés liés à la licence et à la période d'essai", + "feature_8": "Sauvegarde sécurisée des fichiers non liés à Cursor et applications", + "feature_9": "Compatible avec Windows, macOS et Linux", + "disclaimer_title": "DISCLAIMER", + "disclaimer_1": "Cet outil supprimera définitivement tous les paramètres et configurations de Cursor AI,", + "disclaimer_2": "configurations, et les données mises en cache. Cette action ne peut pas être annulée.", + "disclaimer_3": "Vos fichiers de code ne seront PAS affectés, et l'outil est conçu", + "disclaimer_4": "pour ne cibler que les fichiers de l'éditeur Cursor AI et les mécanismes de détection de la période d'essai.", + "disclaimer_5": "Les autres applications sur votre système ne seront PAS affectées.", + "disclaimer_6": "Vous devrez régler Cursor AI à nouveau après avoir exécuté cet outil.", + "disclaimer_7": "Utilisez à vos risques et périls", + "confirm_title": "Êtes-vous sûr de vouloir continuer?", + "confirm_1": "Cette action supprimera tous les paramètres et configurations de Cursor AI,", + "confirm_2": "configurations, et les données mises en cache. Cette action ne peut pas être annulée.", + "confirm_3": "Vos fichiers de code ne seront PAS affectés, et l'outil est conçu", + "confirm_4": "pour ne cibler que les fichiers de l'éditeur Cursor AI et les mécanismes de détection de la période d'essai.", + "confirm_5": "Les autres applications sur votre système ne seront PAS affectées.", + "confirm_6": "Vous devrez régler Cursor AI à nouveau après avoir exécuté cet outil.", + "confirm_7": "Utilisez à vos risques et périls", + "invalid_choice": "Veuillez entrer 'O' ou 'n'", + "skipped_for_safety": "Passé pour la sécurité (non lié à Cursor): {path}", + "deleted": "Supprimé: {path}", + "error_deleting": "Erreur de suppression de {path}: {error}", + "not_found": "Fichier non trouvé: {path}", + "resetting_machine_id": "Réinitialisation des identifiants de machine pour contourner la détection de la période d'essai...", + "created_machine_id": "Créé un nouvel ID machine: {path}", + "error_creating_machine_id": "Erreur de création du fichier ID machine {path}: {error}", + "error_searching": "Erreur de recherche dans {path}: {error}", + "created_extended_trial_info": "Créé un nouveau fichier d'informations de période d'essai étendue: {path}", + "error_creating_trial_info": "Erreur de création du fichier d'informations de période d'essai: {path}: {error}", + "resetting_cursor_ai_editor": "Réinitialisation de l'éditeur Cursor AI... Veuillez patienter.", + "reset_cancelled": "Réinitialisation annulée. Exiting sans faire de modifications.", + "windows_machine_id_modification_skipped": "Modification de l'ID machine Windows ignorée: {error}", + "linux_machine_id_modification_skipped": "Modification de l'ID machine Linux ignorée: {error}", + "note_complete_machine_id_reset_may_require_running_as_administrator": "Note: Réinitialisation complète de l'ID machine peut nécessiter d'exécuter en tant qu'administrateur", + "note_complete_system_machine_id_reset_may_require_sudo_privileges": "Note: Réinitialisation complète de l'ID machine peut nécessiter des privilèges sudo", + "windows_registry_instructions": "📝 NOTE: Pour la réinitialisation complète sur Windows, vous devrez peut-être également nettoyer les entrées du registre.", + "windows_registry_instructions_2": " Exécutez 'regedit' et recherchez les clés contenant 'Cursor' ou 'CursorAI' sous HKEY_CURRENT_USER\\Software\\ et supprimez-les.\n", + "reset_log_1": "Cursor AI a été complètement réinitialisé et la détection de la période d'essai a été contournée!", + "reset_log_2": "Veuillez redémarrer votre système pour que les modifications prennent effet.", + "reset_log_3": "Vous devrez réinstaller Cursor AI et devriez maintenant avoir une période d'essai fraîche.", + "reset_log_4": "Pour les meilleurs résultats, considérez également:", + "reset_log_5": "Utilisez une autre adresse e-mail lors de l'inscription pour une nouvelle période d'essai", + "reset_log_6": "Si disponible, utilisez un VPN pour changer votre adresse IP", + "reset_log_7": "Nettoyez les cookies et le cache de votre navigateur avant de visiter le site web de Cursor AI", + "reset_log_8": "Si les problèmes persistent, essayez d'installer Cursor AI dans un autre emplacement", + "reset_log_9": "Si vous rencontrez des problèmes, allez au suivi des problèmes Github et créez un problème à https://github.com/yeongpin/cursor-free-vip/issues", + "unexpected_error": "Une erreur inattendue est survenue: {error}", + "report_issue": "Veuillez signaler ce problème au suivi des problèmes Github à https://github.com/yeongpin/cursor-free-vip/issues", + "keyboard_interrupt": "Processus interrompu par l'utilisateur. Exiting...", + "return_to_main_menu": "Retour au menu principal...", + "process_interrupted": "Processus interrompu. Exiting...", + "press_enter_to_return_to_main_menu": "Appuyez sur Entrée pour retourner au menu principal...", + "removing_known": "Suppression des fichiers de période d'essai/licence connus", + "performing_deep_scan": "Exécution d'une analyse approfondie pour les fichiers de période d'essai/licence supplémentaires", + "found_additional_potential_license_trial_files": "Trouvé {count} fichiers de période d'essai/licence supplémentaires potentiels", + "checking_for_electron_localstorage_files": "Vérification des fichiers localStorage Electron", + "no_additional_license_trial_files_found_in_deep_scan": "Aucun fichier de licence/période d'essai supplémentaire trouvé dans l'analyse approfondie", + "removing_electron_localstorage_files": "Suppression des fichiers localStorage Electron", + "electron_localstorage_files_removed": "Fichiers localStorage Electron supprimés", + "electron_localstorage_files_removal_error": "Erreur de suppression des fichiers localStorage Electron: {error}", + "removing_electron_localstorage_files_completed": "Suppression des fichiers localStorage Electron terminée" } -} \ No newline at end of file +} \ No newline at end of file diff --git a/locales/nl.json b/locales/nl.json index 95f8821..ee47591 100644 --- a/locales/nl.json +++ b/locales/nl.json @@ -250,5 +250,121 @@ "domains_excluded": "Uitgesloten domeinen: {domains}", "failed_to_create_account": "Account aanmaken mislukt", "account_creation_error": "Account aanmaakfout: {error}" + }, + "update": { + "title": "Cursor automatische update uitschakelen", + "disable_success": "Automatische update is uitgeschakeld", + "disable_failed": "Automatische update uitschakelen mislukt: {error}", + "press_enter": "Druk op Enter om door te gaan", + "start_disable": "Automatische update uitschakelen starten", + "killing_processes": "Processen verwijderen", + "processes_killed": "Processen verwijderd", + "removing_directory": "Map verwijderen", + "directory_removed": "Map verwijderd", + "creating_block_file": "Blokkeerbestand aanmaken", + "block_file_created": "Blokkeerbestand aangemaakt" + }, + "updater": { + "checking": "Controleren op updates...", + "new_version_available": "Er is een nieuwe versie beschikbaar! (Huidige versie: {current}, Laatste versie: {latest})", + "updating": "Aan het bijwerken naar de nieuwste versie. Het programma zal automatisch herstart worden.", + "up_to_date": "U gebruikt de nieuwste versie.", + "check_failed": "Controle op updates mislukt: {error}", + "continue_anyway": "Doorgaan met de huidige versie...", + "update_confirm": "Wil je de nieuwste versie gebruiken? (Y/n)", + "update_skipped": "Update overgeslagen.", + "invalid_choice": "Ongeldige keuze. Voer 'Y' of 'n' in.", + "development_version": "Ontwikkelversie {current} > {latest}" + }, + "totally_reset": { + "title": "Cursor volledig herstellen", + "checking_config": "Configuratiebestand controleren", + "config_not_found": "Configuratiebestand niet gevonden", + "no_permission": "Kan geen toegang krijgen tot configuratiebestand. Controleer de rechten", + "reading_config": "Huidige configuratie lezen", + "creating_backup": "Configuratie-back-up aanmaken", + "backup_exists": "Back-up bestand bestaat, back-up stap overgeslagen", + "generating_new_machine_id": "Nieuwe machine-ID genereren", + "saving_new_config": "Nieuwe configuratie opslaan als JSON", + "success": "Cursor succesvol hersteld", + "error": "Cursor herstellen mislukt: {error}", + "press_enter": "Druk op Enter om door te gaan", + "reset_machine_id": "Machine-ID resetten", + "database_connection_closed": "Databaseverbinding gesloten", + "database_updated_successfully": "Database succesvol bijgewerkt", + "connected_to_database": "Verbonden met database", + "updating_pair": "Sleutel-waarde paar bijwerken", + "db_not_found": "Databasebestand niet gevonden op: {path}", + "db_permission_error": "Kan geen toegang krijgen tot databasebestand. Controleer de rechten", + "db_connection_error": "Verbinding met database mislukt: {error}", + "feature_title": "Functiebeschrijving", + "feature_1": "Compleet verwijderen van Cursor AI-instellingen en configuratie", + "feature_2": "Alle cachegegevens, inclusief AI-geschiedenis en prompts", + "feature_3": "Machine-ID resetten om de proefperiode te omzeilen", + "feature_4": "Nieuwe willekeurige machine-ID maken", + "feature_5": "Aangepaste extensies en voorkeuren verwijderen", + "feature_6": "Proefperiode- en activatiegegevens resetten", + "feature_7": "Diepe scan voor verborgen licentie- en proefperiodebestanden", + "feature_8": "Beveiligde niet-Cursor-bestanden en -toepassingen behouden", + "feature_9": "Compatibel met Windows, macOS en Linux", + "disclaimer_title": "Disclaimer", + "disclaimer_1": "Deze tool verwijdert alle Cursor AI-instellingen,", + "disclaimer_2": "configuratie en cachegegevens. Deze actie is niet ongedaan te maken.", + "disclaimer_3": "Uw codebestanden **worden niet** beïnvloed, de tool is bedoeld om", + "disclaimer_4": "Alleen gericht op Cursor AI-editorbestanden en proefperiodecontrolemechanisme.", + "disclaimer_5": "Andere systemtoepassingen worden niet beïnvloed.", + "disclaimer_6": "Na het uitvoeren van deze tool moet u Cursor AI opnieuw instellen.", + "disclaimer_7": "U accepteert de risico's zelf.", + "confirm_title": "Weet u zeker dat u wilt doorgaan?", + "confirm_1": "Deze actie verwijdert alle Cursor AI-instellingen,", + "confirm_2": "configuratie en cachegegevens. Deze actie is niet ongedaan te maken.", + "confirm_3": "Uw codebestanden **worden niet** beïnvloed, de tool is bedoeld om", + "confirm_4": "Alleen gericht op Cursor AI-editorbestanden en proefperiodecontrolemechanisme.", + "confirm_5": "Andere systemtoepassingen worden niet beïnvloed.", + "confirm_6": "Na het uitvoeren van deze tool moet u Cursor AI opnieuw instellen.", + "confirm_7": "U accepteert de risico's zelf.", + "invalid_choice": "Ongeldige keuze. Voer 'Y' of 'n' in.", + "skipped_for_safety": "Uit veiligheidsoverwegingen overgeslagen (niet Cursor-gerelateerd): {path}", + "deleted": "Verwijderd: {path}", + "error_deleting": "Verwijdering van {path} mislukt: {error}", + "not_found": "Bestand niet gevonden: {path}", + "resetting_machine_id": "Machine-ID resetten om proefperiode te omzeilen...", + "created_machine_id": "Nieuwe machine-ID gemaakt: {path}", + "error_creating_machine_id": "Machine-ID-bestand {path} aanmaken mislukt: {error}", + "error_searching": "Fout bij het zoeken naar bestand {path}: {error}", + "created_extended_trial_info": "Nieuwe uitgebreide proefperiode-informatie gemaakt: {path}", + "error_creating_trial_info": "Fout bij het aanmaken van proefperiode-informatiebestand {path}: {error}", + "resetting_cursor_ai_editor": "Cursor AI-editor resetten... Wacht even.", + "reset_cancelled": "Reset geannuleerd, geen wijzigingen aangebracht.", + "windows_machine_id_modification_skipped": "Windows machine-ID-aanpassing overgeslagen: {error}", + "linux_machine_id_modification_skipped": "Linux machine-id-aanpassing overgeslagen: {error}", + "note_complete_machine_id_reset_may_require_running_as_administrator": "Opmerking: Compleet machine-ID-reset kan vereisen dat u als beheerder uitvoert", + "note_complete_system_machine_id_reset_may_require_sudo_privileges": "Opmerking: Compleet systeem machine-ID-reset kan vereisen dat u sudo-rechten hebt", + "windows_registry_instructions": "📝 Opmerking: Compleet machine-ID-reset kan vereisen dat u als beheerder uitvoert", + "windows_registry_instructions_2": " Run 'regedit' en zoek naar de sleutels 'Cursor' of 'CursorAI' in HKEY_CURRENT_USER\\Software\\ en verwijder ze.\n", + "reset_log_1": "Cursor AI is volledig hersteld en heeft de proefperiode omzeild!", + "reset_log_2": "Start het systeem opnieuw om de wijzigingen te activeren.", + "reset_log_3": "U moet Cursor AI opnieuw installeren, er zou nu een nieuwe proefperiode moeten zijn.", + "reset_log_4": "Voor de beste resultaten raden we aan ook:", + "reset_log_5": "Nieuwe proefperiode registreren met een ander e-mailadres", + "reset_log_6": "Als mogelijk, VPN gebruiken om IP-adres te wijzigen", + "reset_log_7": "Voordat u naar de Cursor AI-website gaat, verwijdert u de cookies en cache van uw browser", + "reset_log_8": "Als het nog steeds niet werkt, probeert u Cursor AI op een andere locatie te installeren", + "reset_log_9": "Als u eventuele problemen ondervindt, stuurt u een probleem naar de Github Issue Tracker: https://github.com/yeongpin/cursor-free-vip/issues", + "unexpected_error": "Onverwachte fout: {error}", + "report_issue": "Rapporteer dit probleem op de Github Issue Tracker: https://github.com/yeongpin/cursor-free-vip/issues", + "keyboard_interrupt": "Gebruiker heeft proces afgebroken, afsluiten...", + "return_to_main_menu": "Terug naar hoofdmenu...", + "process_interrupted": "Proces afgebroken, afsluiten...", + "press_enter_to_return_to_main_menu": "Druk op Enter om terug te gaan naar het hoofdmenu...", + "removing_known": "Het verwijderen van bekende proefperiode- en licentiebestanden...", + "performing_deep_scan": "Een diepe scan wordt uitgevoerd om andere proefperiode- en licentiebestanden te vinden...", + "found_additional_potential_license_trial_files": "Er zijn {count} andere potentiële proefperiode- en licentiebestanden gevonden", + "checking_for_electron_localstorage_files": "Controleren op Electron localStorage-bestanden...", + "no_additional_license_trial_files_found_in_deep_scan": "Geen andere proefperiode- of licentiebestanden gevonden in diepe scan", + "removing_electron_localstorage_files": "Het verwijderen van Electron localStorage-bestanden...", + "electron_localstorage_files_removed": "Electron localStorage-bestanden verwijderd", + "electron_localstorage_files_removal_error": "Fout bij het verwijderen van Electron localStorage-bestanden: {error}", + "removing_electron_localstorage_files_completed": "Electron localStorage-bestanden verwijderd" } -} +} diff --git a/locales/vi.json b/locales/vi.json index f4752b4..efc3226 100644 --- a/locales/vi.json +++ b/locales/vi.json @@ -20,7 +20,10 @@ "en": "English", "zh_cn": "简体中文", "zh_tw": "繁體中文", - "vi": "Tiếng Việt" + "vi": "Tiếng Việt", + "nl": "Dutch", + "de": "Germa", + "fr": "French" }, "quit_cursor": { "start": "Bắt Đầu Thoát Cursor", diff --git a/locales/zh_cn.json b/locales/zh_cn.json index b1ad1bd..0fcee3e 100644 --- a/locales/zh_cn.json +++ b/locales/zh_cn.json @@ -22,7 +22,10 @@ "en": "English", "zh_cn": "简体中文", "zh_tw": "繁體中文", - "vi": "Vietnamese" + "vi": "Vietnamese", + "nl": "Dutch", + "de": "German", + "fr": "French" }, "quit_cursor": { "start": "开始退出 Cursor", diff --git a/locales/zh_tw.json b/locales/zh_tw.json index 65b8189..9dc62b9 100644 --- a/locales/zh_tw.json +++ b/locales/zh_tw.json @@ -20,7 +20,10 @@ "en": "English", "zh_cn": "简体中文", "zh_tw": "繁體中文", - "vi": "Vietnamese" + "vi": "Vietnamese", + "nl": "Dutch", + "de": "German", + "fr": "French" }, "quit_cursor": { "start": "開始退出 Cursor", diff --git a/main.py b/main.py index b7568ec..db6fe5d 100644 --- a/main.py +++ b/main.py @@ -133,6 +133,13 @@ class Translator: return 'en' elif system_locale.startswith('vi'): return 'vi' + elif system_locale.startswith('nl'): + return 'nl' + elif system_locale.startswith('de'): + return 'de' + elif system_locale.startswith('fr'): + return 'fr' + # Try to get language from LANG environment variable as fallback @@ -143,7 +150,12 @@ class Translator: return 'zh_cn' elif 'vi' in env_lang: return 'vi' - + elif 'nl' in env_lang: + return 'nl' + elif 'de' in env_lang: + return 'de' + elif 'fr' in env_lang: + return 'fr' return 'en' except: