-
-
Notifications
You must be signed in to change notification settings - Fork 409
Feat add i18n support (Multi-Language Support) #403
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Draft
MegaLodonn0
wants to merge
1
commit into
TibixDev:main
Choose a base branch
from
MegaLodonn0:feat-add-i18n-support
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Changes from all commits
Commits
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,17 @@ | ||
| import { createI18n } from 'vue-i18n'; | ||
| import en from './locales/en.json'; | ||
| import tr from './locales/tr.json'; | ||
|
|
||
| type MessageSchema = typeof en; | ||
|
|
||
| const i18n = createI18n<[MessageSchema], 'en'>({ | ||
| legacy: false, // Use with Vue 3 Composition API | ||
| locale: navigator.language.split('-')[0] || 'en', // Use browser language | ||
| fallbackLocale: 'en', // Default language for unsupported locales | ||
| messages: { | ||
| en, | ||
| tr, | ||
| }, | ||
| }); | ||
|
|
||
| export default i18n; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,121 @@ | ||
| { | ||
| "_meta": { | ||
| "Generated": "This file has been translated by ai paperclips." | ||
| }, | ||
| "welcome": { | ||
| "title": "Willkommen bei WinBoat", | ||
| "description1": "WinBoat ist eine vollwertige App, die Ihnen hilft, Windows-Anwendungen mühelos nativ auf Ihrem Linux-Rechner auszuführen.", | ||
| "description2": "Wir werden einige notwendige Schritte durchgehen, damit Sie in kürzester Zeit loslegen können.", | ||
| "nextButton": "Weiter" | ||
| }, | ||
| "license": { | ||
| "title": "Lizenzvereinbarung", | ||
| "description": "WinBoat ist eine Open-Source-Software, die unter der MIT-Lizenz lizenziert ist. Bitte lesen Sie die Lizenzvereinbarung unten.", | ||
| "backButton": "Zurück", | ||
| "agreeButton": "Ich stimme zu" | ||
| }, | ||
| "prerequisites": { | ||
| "title": "Voraussetzungen", | ||
| "description": "Um WinBoat auszuführen, muss Ihr Computer die folgenden Anforderungen erfüllen.", | ||
| "ram": "Mindestens 4 GB RAM (Erkannt: {ramGB} GB)", | ||
| "cpu": "Mindestens 2 CPU-Kerne (Erkannt: {cpuCores} Kerne)", | ||
| "kvm": "Virtualisierung (KVM) aktiviert", | ||
| "docker": "Docker installiert", | ||
| "dockerCompose": "Docker Compose v2 installiert", | ||
| "dockerGroup": "Benutzer zur Docker-Gruppe hinzugefügt", | ||
| "dockerRunning": "Docker-Daemon läuft", | ||
| "freerdp": "FreeRDP 3.x.x installiert", | ||
| "how": "Wie?", | ||
| "relogRequired": "(Neuanmeldung erforderlich)", | ||
| "enableOnBoot": "(Auch beim Systemstart aktivieren)", | ||
| "nextButton": "Weiter" | ||
| }, | ||
| "installLocation": { | ||
| "title": "Installationsort", | ||
| "description1": "Wählen Sie, wo Sie WinBoat installieren möchten. Dateien im Zusammenhang mit der virtuellen Windows-Maschine werden an diesem Ort gespeichert.", | ||
| "description2": "Stellen Sie sicher, dass Sie am ausgewählten Ort über mindestens {minDiskGB} GB freien Speicherplatz verfügen.", | ||
| "inputPlaceholder": "Installationsort auswählen", | ||
| "changeButton": "Ändern", | ||
| "selectButton": "Auswählen", | ||
| "validFolder": "Gültiger Installationsordner", | ||
| "errors": { | ||
| "noLocation": "Bitte wählen Sie einen Installationsort aus", | ||
| "notWritable": "Der ausgewählte Installationsort ist nicht beschreibbar", | ||
| "noDiskSpace": "Nicht genügend Speicherplatz verfügbar. Mindestens {minDiskGB} GB sind erforderlich, aber nur {freeGB} GB sind verfügbar." | ||
| } | ||
| }, | ||
| "windowsConfig": { | ||
| "title": "Windows konfigurieren", | ||
| "description1": "Wählen Sie die Windows-Version, die Sie installieren möchten, und die Sprache, die Sie verwenden möchten.", | ||
| "description2": "Sie können diese Einstellungen nur jetzt ändern. Sobald die Installation abgeschlossen ist, können Sie sie nicht mehr ändern, es sei denn, Sie installieren neu.", | ||
| "edition": "Edition auswählen", | ||
| "language": "Sprache auswählen", | ||
| "customIso": "Benutzerdefinierte ISO (Optional)", | ||
| "selectIsoButton": "ISO-Datei auswählen", | ||
| "isoWarning": "Wir bieten Ihnen die Möglichkeit, eine benutzerdefinierte Windows-ISO für Ihre Bequemlichkeit zu verwenden, können jedoch keinen Support leisten, wenn Ihre benutzerdefinierte ISO fehlerhaft ist oder bestimmte Funktionen in WinBoat nicht mehr funktionieren.", | ||
| "selectedIso": "Ausgewählt: {fileName}", | ||
| "removeButton": "Entfernen", | ||
| "brokenLang": "(Defekt, Sprachpaket verwenden)" | ||
| }, | ||
| "userConfig": { | ||
| "title": "Benutzerkonfiguration", | ||
| "description1": "Konfigurieren Sie den Benutzernamen und das Passwort für Windows.", | ||
| "description2": "Diese Anmeldeinformationen werden verwendet, um sich bei der virtuellen Windows-Maschine anzumelden und über das Remote Desktop Protocol (RDP) darauf zuzugreifen. Sie können diese Einstellungen später nicht mehr ändern, es sei denn, Sie installieren neu.", | ||
| "username": "Benutzername", | ||
| "password": "Passwort", | ||
| "confirmPassword": "Passwort bestätigen", | ||
| "errors": { | ||
| "user": { | ||
| "tooShort": "Muss mindestens 2 Zeichen lang sein", | ||
| "alphanumeric": "Darf nur alphanumerische Zeichen enthalten" | ||
| }, | ||
| "pass": { | ||
| "noMatch": "Die Passwörter stimmen nicht überein", | ||
| "alphanumeric": "Darf nur alphanumerische Zeichen enthalten", | ||
| "tooShort": "Muss mindestens 4 Zeichen lang sein" | ||
| } | ||
| } | ||
| }, | ||
| "hardwareConfig": { | ||
| "title": "Hardware-Konfiguration", | ||
| "description1": "WinBoat verwendet eine containerisierte KVM-Virtuelle-Maschine, um Windows-Anwendungen auszuführen. Bitte konfigurieren Sie die Hardware-Einstellungen für die virtuelle Maschine.", | ||
| "description2": "Es wird nicht empfohlen, mehr als die Hälfte Ihrer Systemressourcen Windows zuzuweisen. Sie können diese Einstellungen bei Bedarf später ändern.", | ||
| "cpuCores": "CPU-Kerne auswählen", | ||
| "ram": "RAM auswählen", | ||
| "diskSize": "Festplattengröße auswählen", | ||
| "cores": "{count} Kern | {count} Kerne", | ||
| "warning": "Warnung", | ||
| "ramWarning": "Sie haben nicht genügend ungenutzten Arbeitsspeicher zur Verfügung, um die angeforderte Menge an RAM zuzuweisen. Sie haben derzeit ~{availableGB} GB ungenutzten Arbeitsspeicher verfügbar. Wenn Sie mit dieser RAM-Menge fortfahren, wird der Container wahrscheinlich abstürzen.", | ||
| "diskWarning": "Sie sind dabei, den größten Teil Ihres verbleibenden Speicherplatzes mit weniger als 5 GB Überschuss zuzuweisen. Sie haben derzeit ~{availableGB} GB Speicherplatz für das Laufwerk entsprechend {installFolder} zur Verfügung. Wenn Sie mit dieser Festplattengröße fortfahren, könnte Ihnen der Speicherplatz ausgehen und unerwartete Probleme auftreten." | ||
| }, | ||
| "homeFolderSharing": { | ||
| "title": "Home-Ordner-Freigabe", | ||
| "description1": "WinBoat ermöglicht es Ihnen, Ihren Linux-Home-Ordner mit der virtuellen Windows-Maschine zu teilen. Hier können Sie wählen, ob Sie diese Funktion aktivieren möchten oder nicht.", | ||
| "description2": "⚠️ WARNUNG: Die Freigabe Ihres Home-Ordners setzt Ihre Linux-Dateien Windows-spezifischer Malware und Viren aus. Aktivieren Sie diese Funktion nur, wenn Sie die damit verbundenen Risiken verstehen. Seien Sie immer vorsichtig mit den Dateien, die Sie in Windows herunterladen und öffnen.", | ||
| "enableSharing": "Home-Ordner-Freigabe aktivieren", | ||
| "acknowledge": "Indem Sie dieses Kästchen ankreuzen, bestätigen Sie, dass Sie die oben genannten Risiken verstanden haben" | ||
| }, | ||
| "review": { | ||
| "title": "Überprüfen", | ||
| "description": "Bitte überprüfen Sie die Einstellungen, die Sie für Ihre WinBoat-Installation gewählt haben. Wenn alles korrekt aussieht, klicken Sie auf \"Installieren\", um zu beginnen.", | ||
| "yourConfig": "Ihre Konfiguration", | ||
| "winVersion": "Windows-Version", | ||
| "language": "Sprache", | ||
| "cpuCores": "CPU-Kerne", | ||
| "ram": "RAM", | ||
| "diskSize": "Festplattengröße", | ||
| "username": "Benutzername", | ||
| "installLocation": "Installationsort", | ||
| "installButton": "Installieren" | ||
| }, | ||
| "install": { | ||
| "title": "Installation", | ||
| "description": "WinBoat installiert jetzt Windows. Bitte haben Sie etwas Geduld, da dies bis zu einer Stunde dauern kann. In der Zwischenzeit können Sie sich einen Kaffee holen und den Installationsstatus <a href=\"{novncURL}\" @click=\"openAnchorLink\">in Ihrem Browser</a> überprüfen.", | ||
| "installing": "{state}...", | ||
| "preinstall": "{message}", | ||
| "error": "Bei der Installation von Windows ist ein Fehler aufgetreten. Bitte überprüfen Sie die Protokolle in <span class=\"font-mono bg-neutral-700 rounded-md px-0.5\">~/.winboat</span> und prüfen Sie <span class=\"font-mono bg-neutral-700 rounded-md px-0.5\">docker logs WinBoat</span> in Ihrem Terminal für weitere Informationen.", | ||
| "retry": "Um zurückzusetzen und es erneut zu versuchen, folgen Sie <a href=\"https://rentry.org/winboat_retry_install\" @click=\"openAnchorLink\">diesen</a> Anweisungen.", | ||
| "completed": "Windows wurde erfolgreich installiert!", | ||
| "finishButton": "Abschließen" | ||
| } | ||
| } | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,118 @@ | ||
| { | ||
| "welcome": { | ||
| "title": "Welcome to WinBoat", | ||
| "description1": "WinBoat is a full-fledged app that helps you natively run Windows applications on your Linux machine with ease.", | ||
| "description2": "We will go through a few required steps to get you started in no time.", | ||
| "nextButton": "Next" | ||
| }, | ||
| "license": { | ||
| "title": "License Agreement", | ||
| "description": "WinBoat is open-source software licensed under the MIT License. Please review the license agreement below.", | ||
| "backButton": "Back", | ||
| "agreeButton": "I Agree" | ||
| }, | ||
| "prerequisites": { | ||
| "title": "Pre-Requisites", | ||
| "description": "In order to run WinBoat, your computer must meet the following requirements.", | ||
| "ram": "At least 4 GB of RAM (Detected: {ramGB} GB)", | ||
| "cpu": "At least 2 CPU cores (Detected: {cpuCores} cores)", | ||
| "kvm": "Virtualization (KVM) enabled", | ||
| "docker": "Docker installed", | ||
| "dockerCompose": "Docker Compose v2 installed", | ||
| "dockerGroup": "User added to the docker group", | ||
| "dockerRunning": "Docker daemon is running", | ||
| "freerdp": "FreeRDP 3.x.x installed", | ||
| "how": "How?", | ||
| "relogRequired": "(Relog required)", | ||
| "enableOnBoot": "(Also enable on boot)", | ||
| "nextButton": "Next" | ||
| }, | ||
| "installLocation": { | ||
| "title": "Install Location", | ||
| "description1": "Choose where you want to install WinBoat. Files related to the Windows virtual machine will be stored in this location.", | ||
| "description2": "Make sure you have at least {minDiskGB}GB of disk space available in the selected location.", | ||
| "inputPlaceholder": "Select Install Location", | ||
| "changeButton": "Change", | ||
| "selectButton": "Select", | ||
| "validFolder": "Valid install folder", | ||
| "errors": { | ||
| "noLocation": "Please select an install location", | ||
| "notWritable": "The selected install location is not writable", | ||
| "noDiskSpace": "Not enough disk space available. At least {minDiskGB} GB is required, but only {freeGB} GB is available." | ||
| } | ||
| }, | ||
| "windowsConfig": { | ||
| "title": "Configure Windows", | ||
| "description1": "Pick the version of Windows you want to install, and the language you'd like to use.", | ||
| "description2": "You can only change these settings now. Once the installation is complete, you will not be able to change them unless you reinstall.", | ||
| "edition": "Select Edition", | ||
| "language": "Select Language", | ||
| "customIso": "Custom ISO (Optional)", | ||
| "selectIsoButton": "Select ISO File", | ||
| "isoWarning": "We offer you the possibility of using a custom Windows ISO for your convenience, however we can't provide any support if your custom ISO breaks or certain features within WinBoat stop working.", | ||
| "selectedIso": "Selected: {fileName}", | ||
| "removeButton": "Remove", | ||
| "brokenLang": "(Broken, use Language Pack)" | ||
| }, | ||
| "userConfig": { | ||
| "title": "User Configuration", | ||
| "description1": "Configure the username and password for Windows.", | ||
| "description2": "These credentials will be used to log in to the Windows virtual machine and to access it through Remote Desktop Protocol (RDP). You will not be able to change these settings later on unless you reinstall.", | ||
| "username": "Username", | ||
| "password": "Password", | ||
| "confirmPassword": "Confirm Password", | ||
| "errors": { | ||
| "user": { | ||
| "tooShort": "Must be at least 2 characters long", | ||
| "alphanumeric": "Must only contain alphanumeric characters" | ||
| }, | ||
| "pass": { | ||
| "noMatch": "Passwords do not match", | ||
| "alphanumeric": "Must only contain alphanumeric characters", | ||
| "tooShort": "Must be at least 4 characters long" | ||
| } | ||
| } | ||
| }, | ||
| "hardwareConfig": { | ||
| "title": "Hardware Configuration", | ||
| "description1": "WinBoat utilizes a containerized KVM virtual machine to run Windows applications. Please configure the hardware settings for the virtual machine.", | ||
| "description2": "It is not recommended to allocate more than half of your system resources to Windows. You will be able to change these settings later on if needed.", | ||
| "cpuCores": "Select CPU Cores", | ||
| "ram": "Select RAM", | ||
| "diskSize": "Select Disk Size", | ||
| "cores": "{count} Core | {count} Cores", | ||
| "warning": "Warning", | ||
| "ramWarning": "You don't have enough unused memory available to allocate the requested amount of RAM. You currently have ~{availableGB} GB of unused memory available. If you continue with this amount of RAM, the container will likely crash.", | ||
| "diskWarning": "You're about to allocate most of your remaining disk space with less than 5GB in excess. You currently have ~{availableGB} GB of disk space available for the drive corresponding to {installFolder}. If you continue with this disk size, you may run out of space and encounter unexpected issues." | ||
| }, | ||
| "homeFolderSharing": { | ||
| "title": "Home Folder Sharing", | ||
| "description1": "WinBoat allows you to share your Linux home folder with the Windows virtual machine, here you can choose whether to enable this feature or not.", | ||
| "description2": "⚠️ WARNING: Sharing your home folder exposes your Linux files to Windows-specific malware and viruses. Only enable this feature if you understand the risks involved. Always be careful with the files you download and open in Windows.", | ||
| "enableSharing": "Enable home folder sharing", | ||
| "acknowledge": "By checking this box, you acknowledge the risks mentioned above" | ||
| }, | ||
| "review": { | ||
| "title": "Review", | ||
| "description": "Please review the settings you've chosen for your WinBoat installation. If everything looks correct, click \"Install\" to begin.", | ||
| "yourConfig": "Your Configuration", | ||
| "winVersion": "Windows Version", | ||
| "language": "Language", | ||
| "cpuCores": "CPU Cores", | ||
| "ram": "RAM", | ||
| "diskSize": "Disk Size", | ||
| "username": "Username", | ||
| "installLocation": "Install Location", | ||
| "installButton": "Install" | ||
| }, | ||
| "install": { | ||
| "title": "Installation", | ||
| "description": "WinBoat is now installing Windows. Please be patient as this may take up to an hour. In the meantime, you can grab a coffee and check the installation status <a href=\"{novncURL}\" @click=\"openAnchorLink\">in your browser</a>.", | ||
| "installing": "{state}...", | ||
| "preinstall": "{message}", | ||
| "error": "An error occurred while installing Windows. Please check the logs in <span class=\"font-mono bg-neutral-700 rounded-md px-0.5\">~/.winboat</span> and verify <span class=\"font-mono bg-neutral-700 rounded-md px-0.5\">docker logs WinBoat</span> in your terminal for more information.", | ||
| "retry": "To reset and try again, follow <a href=\"https://rentry.org/winboat_retry_install\" @click=\"openAnchorLink\">these</a> instructions.", | ||
| "completed": "Windows has been installed successfully!", | ||
| "finishButton": "Finish" | ||
| } | ||
| } |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we should focus on laying the groundwork for i18n for now, and adding translations as separate PRs in the future.
Keeping changes logically grouped in separate PRs is a good practice which helps us maintainers out tremendously.