Merge pull request #17 from grm34/auto-translate

This commit is contained in:
zenobit 2023-04-02 23:17:48 +02:00 committed by GitHub
commit 714f96bbde
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 146 additions and 54 deletions

92
auto-translate Executable file
View File

@ -0,0 +1,92 @@
#!/usr/bin/env bash
#
# Copyright (c) 2023 darkmaster @grm34
#
# This script automatically translates base language strings and adds
# them into the various translations (original will be used on error).
# It also removes duplicate strings and rearranges them alphabetically.
_sort_strings() {
# RM duplicate strings from an array and sorts them alphabetically.
# Usage: _sort_strings "$@" (array of strings)
# Returns: $sorted_strings (array)
local string strings
declare -A strings
for string in "${@}"; do
[[ $string ]] && IFS=" " strings["${string:- }"]=1
done
# shellcheck disable=SC2207
IFS=$'\n' sorted_strings=($(sort <<< "${!strings[*]}"))
}
_clean_cfg_files() {
# RM duplicates lines and sorts them alphabetically.
# Usage: _clean_cfg_files "$@" (array of files)
local file
for file in "$@"; do
mapfile -t strings < "$file"
_sort_strings "${strings[@]}"
printf "%s\n" "${sorted_strings[@]}" > "$file"
done
}
_get_strings_from_cfg() {
# Grabs strings from CFG files.
# Usage: _get_strings_from_cfg "$@" (array of files)
# Returns: $<language_code>_strings $cfg_list (arrays)
local file name
for file in "$@"; do
name=${file##*/}; name="${name/.cfg/_strings}"
mapfile -t "$name" < "$file"
[[ $name != en_strings ]] && cfg_list+=("$name")
done
}
_get_string_data() {
# Grabs string name and string value
# Returns: $data (array)
IFS=$'\n' read -d "" -ra data <<< "${1//=/$'\n'}"
data[1]=${data[1]//\"}
}
_translate_string() {
# Usage: _translate_string "string" "language code"
# Returns: $translated (string)
translated="$(curl -s https://api-free.deepl.com/v2/translate \
-d auth_key=f1414922-db81-5454-67bd-9608cdca44b3:fx \
-d "text=$1" -d "target_lang=${2^^}" \
| grep -o '"text":"[^"]*' | grep -o '[^"]*$')"
}
_translate_and_add_missing_strings_into_cfg() {
# Translates then write missing strings from base language
# into the various translation files (from $cfg_list).
local line language trad_strings
for line in "${en_strings[@]:?}"; do
_get_string_data "$line"
for language in "${cfg_list[@]}"; do
declare -n trad_strings="$language"
if [[ "${trad_strings[*]}" != *"${data[0]}="* ]]; then
_translate_string "${data[1]}" "${language/_strings}"
[[ -n $translated ]] && line="${data[0]}=\"${translated}\""
[[ -n $translated ]] && note="translated" || note="original"
trad_strings+=("$line"); file="${language/_strings/.cfg}"
printf "%s\n" "${trad_strings[@]}" > "lang/$file"
echo "=> ${data[0]} (${note}) added into $file"
fi
done
done
}
# Run auto-translate.
if [[ $1 == dh ]]; then
echo "Running auto-translate (this could take a while)..."
_clean_cfg_files lang/*.cfg
_get_strings_from_cfg lang/*.cfg
_translate_and_add_missing_strings_into_cfg
_clean_cfg_files lang/*.cfg
[[ $note ]] && echo "==> done" || echo "==> nothing to translate"
else
echo "ERROR: you must specify 'dh' as argument"
fi

View File

@ -1,21 +1,24 @@
MSG_ADD_STARTED="Přidání nového distra zahájeno..."
MSG_BUGS="PS: Viděli jste nějaké chyby?"
MSG_CHAT="Chatovací skupina na SimpleX: https://tinyurl.com/7hm4kcjx"
MSG_C_DESKTOP="Kopírování položek plochy a místních prostředí..."
MSG_C_ENTRY="Kopírování záznamu na plochu..."
MSG_C_ICONS="Kopírování ikon..."
MSG_C_ISOS="Kopírování ISO do dir. Bude to chvíli trvat..."
MSG_C_LANG="Chcete kopírovat překlad do systému? (y/n)"
MSG_C_TRANS="Kopírování překladu..."
MSG_D_INTERM="Chcete, aby se DistroHopper spouštěl v terminálu? (y/n)"
MSG_DIR="vytvoření konfiguračního adresáře..."
MSG_D_LANG=" Pokus o stažení systému Windows %s %s..."
MSG_DONE="Hotovo"
MSG_DUMP="Odhození jazykového zdroje..."
MSG_D_INTERM="Chcete, aby se DistroHopper spouštěl v terminálu? (y/n)"
MSG_D_LANG=" Pokus o stažení systému Windows %s %s..."
MSG_D_OS=" Pokus o stažení %s %s..."
MSG_D_RELEASE=" Pokus o stažení %s %s %s %s..."
MSG_DUMP="Odhození jazykového zdroje..."
MSG_ERROR="Chyba"
MSG_FEEDBACK="Mohli byste prosím poskytnout zpětnou vazbu?"
MSG_FZF="Chybí fzf!"
MSG_HOMEPAGE="Domovská stránka: dh.osowoso.xyz"
MSG_HOSTED="Projekt je umístěn na adrese: https://github.com/oSoWoSo/DistroHopper"
MSG_H_ADD="Přidání nové distribuce do nástroje quickget"
MSG_H_COPY="Zkopírujte všechny soubory ISO do cílového adresáře (pro Ventoy)"
MSG_H_DIR="Nastavení výchozího adresáře, kam se ukládají virtuální počítače"
@ -25,44 +28,41 @@ MSG_H_HELP="Zobrazte tuto nápovědu a ukončete ji"
MSG_H_INSTALL="Instalace programu DistroHopper"
MSG_H_LANG="Přeložit DistroHopper"
MSG_H_MODE="Přenosný režim"
MSG_HOMEPAGE="Domovská stránka: dh.osowoso.xyz"
MSG_HOSTED="Projekt je umístěn na adrese: https://github.com/oSoWoSo/DistroHopper"
MSG_H_PUSH="Push změnil quickget na quickemu projekt"
MSG_H_READY="Aktualizace virtuálních počítačů připravených ke spuštění"
MSG_H_SORT="Funkce řazení v nástroji quickget"
MSG_H_SUPPORTED="Aktualizace podporovaných virtuálních počítačů"
MSG_H_TUI="Spuštění uživatelského rozhraní terminálu (TUI)"
MSG_CHAT="Chatovací skupina na SimpleX: https://tinyurl.com/7hm4kcjx"
MSG_ICONS="vytvoření adresáře s ikonami jako root..."
MSG_IMPROVE="Co lze zlepšit, přidat, změnit?"
MSG_INSTALLING="Instalace programu DistroHopper..."
MSG_INVALID="Neplatná možnost:"
MSG_LANG_CODE="Pokud chcete vytvořit nový, vložte dvoumístný kód jazyka..."
MSG_LANG_CHANGE="Která jazyková změna? (cs/cs)"
MSG_LANG="Zvolený jazyk je:"
MSG_LANG_CHANGE="Která jazyková změna? (cs/cs)"
MSG_LANG_CODE="Pokud chcete vytvořit nový, vložte dvoumístný kód jazyka..."
MSG_LETMEKNOW=" Dejte mi vědět..."
MSG_LIKE="Jak se vám líbí DistroHopper?"
MSG_MERG="Sloučení změn... (Udělejte si to sami)"
MSG_MODE="Přepnutí do přenosného režimu!"
MSG_MO="Generování souboru .mo..."
MSG_MODE="Přepnutí do přenosného režimu!"
MSG_NEEDED="Potřebná instalace..."
MSG_NEW=" Chcete vytvořit nový virtuální počítač? (c)"
MSG_NO="Žádný argument!"
MSG_NO_CONF="Nebyly nalezeny žádné soubory .conf"
MSG_NO_DISTROERROR="V současné době nemám podporu pro vaše distro"
MSG_NO_VM="Nebyl nalezen žádný virtuální počítač."
MSG_NO="Žádný argument!"
MSG_OR_RUN=" nebo spustit stávající? (stiskněte cokoli)"
MSG_PREPARED=" Připravené virtuální počítače"
MSG_PUSHING="Prosazování změn v..."
MSG_Q_INTERM="Chcete, aby quickget zobrazoval výstupy v terminálu? (y/n)"
MSG_R_TUI="Spuštění DistroHopper TUI..."
MSG_RUNNING="DistroHopper je spuštěn... Pro ukončení stiskněte kdykoli klávesu Ctrl-Q."
MSG_R_TUI="Spuštění DistroHopper TUI..."
MSG_SETTINGUP="Nastavení adresáře..."
MSG_S_GUI="Spuštění grafického rozhraní DistroHopper..."
MSG_S_CHOOSED=" Spuštění %s..."
MSG_S_INSTALL="Zahájení instalace..."
MSG_SORTING="Funkce třídění v šabloně..."
MSG_STRUCTURE="Vytvoření adresářové struktury..."
MSG_S_CHOOSED=" Spuštění %s..."
MSG_S_GUI="Spuštění grafického rozhraní DistroHopper..."
MSG_S_INSTALL="Zahájení instalace..."
MSG_U_READY="Aktualizace připravených virtuálních počítačů..."
MSG_U_SUPPORTED="Aktualizace podporovaných virtuálních počítačů..."
MSG_VM="Vytvoření vstupu na plochu..."

View File

@ -1,21 +1,24 @@
MSG_ADD_STARTED="Hinzufügen einer neuen Distro gestartet..."
MSG_BUGS="PS: Sie haben ein paar Wanzen gesehen?"
MSG_CHAT="Chat-Gruppe auf SimpleX: https://tinyurl.com/7hm4kcjx"
MSG_C_DESKTOP="Kopieren von Desktop-Einträgen und Gebietsschemata..."
MSG_C_ENTRY="Kopieren des Desktop-Eintrags..."
MSG_C_ICONS="Kopieren von Symbolen..."
MSG_C_ISOS="Kopieren von ISOs in ein Verzeichnis. Es wird einige Zeit dauern..."
MSG_C_LANG="Möchten Sie die Übersetzung ins System kopieren? (j/n)"
MSG_C_TRANS="Kopieren der Übersetzung..."
MSG_D_INTERM="Möchten Sie, dass DistroHopper im Terminal läuft? (j/n)"
MSG_DIR="Konfigurationsverzeichnis erstellen..."
MSG_D_LANG=" Versucht, Windows %s %s herunterzuladen..."
MSG_DONE="Erledigt"
MSG_DUMP="Dumping der Sprachquelle..."
MSG_D_INTERM="Möchten Sie, dass DistroHopper im Terminal läuft? (j/n)"
MSG_D_LANG=" Versucht, Windows %s %s herunterzuladen..."
MSG_D_OS=" Versucht, %s %s herunterzuladen..."
MSG_D_RELEASE=" Versucht, %s %s %s herunterzuladen..."
MSG_DUMP="Dumping der Sprachquelle..."
MSG_ERROR="Fehler"
MSG_FEEDBACK="Könnten Sie uns bitte ein Feedback geben?"
MSG_FZF="Fehlender fzf!"
MSG_HOMEPAGE="Startseite: dh.osowoso.xyz"
MSG_HOSTED="Das Projekt ist zu finden unter: https://github.com/oSoWoSo/DistroHopper"
MSG_H_ADD="Neue Distro zu quickget hinzufügen"
MSG_H_COPY="Kopieren Sie alle ISOs in das Zielverzeichnis (für Ventoy)"
MSG_H_DIR="Standardverzeichnis festlegen, in dem VMs gespeichert werden"
@ -25,44 +28,41 @@ MSG_H_HELP="Diese Hilfe anzeigen und beenden"
MSG_H_INSTALL="DistroHopper installieren"
MSG_H_LANG="Übersetzen DistroHopper"
MSG_H_MODE="Tragbarer Modus"
MSG_HOMEPAGE="Startseite: dh.osowoso.xyz"
MSG_HOSTED="Das Projekt ist zu finden unter: https://github.com/oSoWoSo/DistroHopper"
MSG_H_PUSH="Push änderte quickget zu quickemu Projekt"
MSG_H_READY="Update für betriebsbereite VMs"
MSG_H_SORT="Sortierfunktionen in quickget"
MSG_H_SUPPORTED="Unterstützte VMs aktualisieren"
MSG_H_TUI="Terminal-Benutzeroberfläche (TUI) ausführen"
MSG_CHAT="Chat-Gruppe auf SimpleX: https://tinyurl.com/7hm4kcjx"
MSG_ICONS="Icons-Verzeichnis als Root erstellen..."
MSG_IMPROVE="Was kann verbessert, hinzugefügt, verändert werden?"
MSG_INSTALLING="Installation von DistroHopper..."
MSG_INVALID="Ungültige Option:"
MSG_LANG_CODE="Wenn Sie einen neuen erstellen möchten, geben Sie den zweistelligen Sprachcode ein..."
MSG_LANG="Die gewählte Sprache ist:"
MSG_LANG_CHANGE="Welche Sprache wechseln? (en/cs)"
MSG_LANG_CODE="Wenn Sie einen neuen erstellen möchten, geben Sie den zweistelligen Sprachcode ein..."
MSG_LETMEKNOW=" Sag mir Bescheid..."
MSG_LIKE="Wie gefällt Ihnen DistroHopper?"
MSG_MERG="Zusammenführen von Änderungen... (Do it yourself)"
MSG_MODE="Umschalten auf portablen Modus!"
MSG_MO="Erzeugen der .mo-Datei..."
MSG_MODE="Umschalten auf portablen Modus!"
MSG_NEEDED="Installation erforderlich..."
MSG_NEW=" Möchten Sie eine neue VM erstellen? (c)"
MSG_NO="Keine Argumente vorhanden!"
MSG_NO_CONF="Keine .conf-Dateien gefunden"
MSG_NO_DISTROERROR="Ich habe derzeit keine Unterstützung für Ihre Distro"
MSG_NO="Keine Argumente vorhanden!"
MSG_NO_VM="Keine VMs gefunden."
MSG_OR_RUN=" oder ein bestehendes Programm ausführen? (irgendetwas drücken)"
MSG_PREPARED=" Vorbereitete VMs"
MSG_PUSHING="Änderungen vorantreiben..."
MSG_Q_INTERM="Möchten Sie, dass quickget die Ausgaben im Terminal anzeigt? (j/n)"
MSG_R_TUI="Laufender DistroHopper TUI..."
MSG_RUNNING="DistroHopper läuft... Drücken Sie jederzeit Strg-Q zum Beenden."
MSG_R_TUI="Laufender DistroHopper TUI..."
MSG_SETTINGUP="Verzeichnis einrichten..."
MSG_S_GUI="DistroHopper GUI starten..."
MSG_S_CHOOSED=" Starte %s..."
MSG_S_INSTALL="Start der Installation..."
MSG_SORTING="Sortierfunktionen in der Vorlage..."
MSG_STRUCTURE="Verzeichnisstruktur erstellen..."
MSG_S_CHOOSED=" Starte %s..."
MSG_S_GUI="DistroHopper GUI starten..."
MSG_S_INSTALL="Start der Installation..."
MSG_U_READY="Aktualisieren von fertigen VMs..."
MSG_U_SUPPORTED="Aktualisieren unterstützter VMs..."
MSG_VM="Desktop-Eintrag erstellen..."

View File

@ -1,21 +1,24 @@
MSG_ADD_STARTED="Adding new distro started..."
MSG_BUGS="PS: You saw some bugs?"
MSG_CHAT="Chat group on SimpleX: https://tinyurl.com/7hm4kcjx"
MSG_C_DESKTOP="Copying desktop entries and locales..."
MSG_C_ENTRY="Copying desktop entry..."
MSG_C_ICONS="Copying icons..."
MSG_C_ISOS="Copying ISOs to dir. It will take some time..."
MSG_C_LANG="Do you want copy translation to system? (y/n)"
MSG_C_TRANS="Copying translation..."
MSG_D_INTERM="Do you want DistroHopper to run in the terminal? (y/n)"
MSG_DIR="creating config dir..."
MSG_D_LANG=" Trying to download Windows %s %s..."
MSG_DONE="Done"
MSG_DUMP="Dumping language source..."
MSG_D_INTERM="Do you want DistroHopper to run in the terminal? (y/n)"
MSG_D_LANG=" Trying to download Windows %s %s..."
MSG_D_OS=" Trying to download %s %s..."
MSG_D_RELEASE=" Trying to download %s %s %s..."
MSG_DUMP="Dumping language source..."
MSG_ERROR="Error"
MSG_FEEDBACK="Could you please provide feedback?"
MSG_FZF="Missing fzf!"
MSG_HOMEPAGE="Homepage: dh.osowoso.xyz"
MSG_HOSTED="Project hosted at: https://github.com/oSoWoSo/DistroHopper"
MSG_H_ADD="Add new distro to quickget"
MSG_H_COPY="Copy all ISOs to target dir (for Ventoy)"
MSG_H_DIR="Set default directory where VMs are stored"
@ -25,44 +28,41 @@ MSG_H_HELP="Show this help and exit"
MSG_H_INSTALL="Install DistroHopper"
MSG_H_LANG="Translate DistroHopper"
MSG_H_MODE="Portable mode"
MSG_HOMEPAGE="Homepage: dh.osowoso.xyz"
MSG_HOSTED="Project hosted at: https://github.com/oSoWoSo/DistroHopper"
MSG_H_PUSH="Push changed quickget to quickemu project"
MSG_H_READY="Update ready to run VMs"
MSG_H_SORT="Sort functions in quickget"
MSG_H_SUPPORTED="Update supported VMs"
MSG_H_TUI="Run terminal user interface (TUI)"
MSG_CHAT="Chat group on SimpleX: https://tinyurl.com/7hm4kcjx"
MSG_ICONS="creating icons dir as root..."
MSG_IMPROVE="What can be improved, added, changed?"
MSG_INSTALLING="Installing DistroHopper..."
MSG_INVALID="Invalid option:"
MSG_LANG_CODE="If you want create new one, insert two digit language code..."
MSG_LANG_CHANGE="Which language change? (en/cs)"
MSG_LANG="Choosed language is:"
MSG_LANG_CHANGE="Which language change? (en/cs)"
MSG_LANG_CODE="If you want create new one, insert two digit language code..."
MSG_LETMEKNOW=" Let me know..."
MSG_LIKE="How do you like DistroHopper?"
MSG_MERG="Merging changes... (Do it yourself)"
MSG_MODE="Switching to portable mode!"
MSG_MO="Generating .mo file..."
MSG_MODE="Switching to portable mode!"
MSG_NEEDED="Installing needed..."
MSG_NEW=" Do you want to create a new VM? (c)"
MSG_NO="No argumet provided!"
MSG_NO_CONF="No .conf files found"
MSG_NO_DISTROERROR="I currently don't have support for your distro"
MSG_NO="No argumet provided!"
MSG_NO_VM="No VMs found."
MSG_OR_RUN=" or run an existing one? (press anything)"
MSG_PREPARED=" Prepared VMs"
MSG_PUSHING="Pushing changes to..."
MSG_Q_INTERM="Do you want quickget to show outputs in the terminal? (y/n)"
MSG_R_TUI="Running DistroHopper TUI..."
MSG_RUNNING="DistroHopper is running... Press Ctrl-Q anytime to exit."
MSG_R_TUI="Running DistroHopper TUI..."
MSG_SETTINGUP="Setting up directory..."
MSG_S_GUI="Starting DistroHopper GUI..."
MSG_S_CHOOSED=" Starting %s..."
MSG_S_INSTALL="Starting installation..."
MSG_SORTING="Sorting functions in template..."
MSG_STRUCTURE="Creating directory structure..."
MSG_S_CHOOSED=" Starting %s..."
MSG_S_GUI="Starting DistroHopper GUI..."
MSG_S_INSTALL="Starting installation..."
MSG_U_READY="Updating ready VMs..."
MSG_U_SUPPORTED="Updating supported VMs..."
MSG_VM="Creating desktop entry..."

View File

@ -1,21 +1,24 @@
MSG_ADD_STARTED="L'ajout d'une nouvelle distro a démarré..."
MSG_BUGS="PS : Vous avez vu des insectes ?"
MSG_CHAT="Groupe de discussion sur SimpleX : https://tinyurl.com/7hm4kcjx"
MSG_C_DESKTOP="Copie des entrées du bureau et des locales..."
MSG_C_ENTRY="Copie de l'entrée du bureau..."
MSG_C_ICONS="Copier des icônes..."
MSG_C_ISOS="Copie des ISO dans le répertoire. Cela prendra un certain temps..."
MSG_C_LANG="Souhaitez-vous que la copie soit traduite dans le système ? (o/n)"
MSG_C_TRANS="Copier la traduction..."
MSG_D_INTERM="Voulez-vous que DistroHopper s'exécute dans le terminal ? (o/n)"
MSG_DIR="création du répertoire de config..."
MSG_D_LANG=" Essai de téléchargement de Windows %s %s..."
MSG_DONE="Terminé"
MSG_DUMP="Déversement de la source linguistique..."
MSG_D_INTERM="Voulez-vous que DistroHopper s'exécute dans le terminal ? (o/n)"
MSG_D_LANG=" Essai de téléchargement de Windows %s %s..."
MSG_D_OS=" Essai de téléchargement de %s %s..."
MSG_D_RELEASE=" Essai de téléchargement de %s %s %s..."
MSG_DUMP="Déversement de la source linguistique..."
MSG_ERROR="Erreur"
MSG_FEEDBACK="Pourriez-vous nous faire part de vos commentaires ?"
MSG_FZF="Manque le fzf !"
MSG_HOMEPAGE="Page d'accueil : dh.osowoso.xyz"
MSG_HOSTED="Projet hébergé à l'adresse suivante : https://github.com/oSoWoSo/DistroHopper"
MSG_H_ADD="Ajouter une nouvelle distro à quickget"
MSG_H_COPY="Copier tous les ISO dans le répertoire cible (pour Ventoy)"
MSG_H_DIR="Définir le répertoire par défaut où sont stockées les machines virtuelles"
@ -25,26 +28,23 @@ MSG_H_HELP="Afficher cette aide et quitter"
MSG_H_INSTALL="Installer DistroHopper"
MSG_H_LANG="Traduire DistroHopper"
MSG_H_MODE="Mode portable"
MSG_HOMEPAGE="Page d'accueil : dh.osowoso.xyz"
MSG_HOSTED="Projet hébergé à l'adresse suivante : https://github.com/oSoWoSo/DistroHopper"
MSG_H_PUSH="Push a changé quickget en projet quickemu"
MSG_H_READY="Mise à jour des machines virtuelles prêtes à fonctionner"
MSG_H_SORT="Fonctions de tri dans quickget"
MSG_H_SUPPORTED="Mise à jour des machines virtuelles prises en charge"
MSG_H_TUI="Exécuter l'interface utilisateur du terminal (TUI)"
MSG_CHAT="Groupe de discussion sur SimpleX : https://tinyurl.com/7hm4kcjx"
MSG_ICONS="création d'un répertoire d'icônes en tant que racine..."
MSG_IMPROVE="Qu'est-ce qui peut être amélioré, ajouté, modifié ?"
MSG_INSTALLING="Installation de DistroHopper..."
MSG_INVALID="Option non valide :"
MSG_LANG_CODE="Si vous souhaitez en créer un nouveau, insérez un code de langue à deux chiffres..."
MSG_LANG_CHANGE="Quel changement de langue ? (en/cs)"
MSG_LANG="La langue choisie est :"
MSG_LANG_CHANGE="Quel changement de langue ? (en/cs)"
MSG_LANG_CODE="Si vous souhaitez en créer un nouveau, insérez un code de langue à deux chiffres..."
MSG_LETMEKNOW=" Tenez-moi au courant."
MSG_LIKE="Que pensez-vous de DistroHopper ?"
MSG_MERG="Fusionner les changements... (Faites-le vous-même)"
MSG_MODE="Passer en mode portable !"
MSG_MO="Génération du fichier .mo..."
MSG_MODE="Passer en mode portable !"
MSG_NEEDED="Installation nécessaire..."
MSG_NEW=" Voulez-vous créer une nouvelle VM ? (c)"
MSG_NO="Aucun argument n'a été fourni !"
@ -55,14 +55,14 @@ MSG_OR_RUN=" ou en exécuter un existant ? (appuyer sur n'importe quoi)"
MSG_PREPARED=" VMs préparées"
MSG_PUSHING="Pousser les changements à..."
MSG_Q_INTERM="Voulez-vous que quickget affiche les sorties dans le terminal ? (y/n)"
MSG_R_TUI="Lancement de l'interface utilisateur de DistroHopper..."
MSG_RUNNING="DistroHopper est en cours d'exécution... Appuyez sur Ctrl-Q à tout moment pour quitter."
MSG_R_TUI="Lancement de l'interface utilisateur de DistroHopper..."
MSG_SETTINGUP="Mise en place d'un répertoire..."
MSG_S_GUI="Démarrage de l'interface graphique de DistroHopper..."
MSG_S_CHOOSED=" Démarrage de %s..."
MSG_S_INSTALL="Démarrage de l'installation..."
MSG_SORTING="Fonctions de tri dans les modèles..."
MSG_STRUCTURE="Création de la structure du répertoire..."
MSG_S_CHOOSED=" Démarrage de %s..."
MSG_S_GUI="Démarrage de l'interface graphique de DistroHopper..."
MSG_S_INSTALL="Démarrage de l'installation..."
MSG_U_READY="Mise à jour des machines virtuelles prêtes..."
MSG_U_SUPPORTED="Mise à jour des VM prises en charge..."
MSG_VM="Création d'une entrée de bureau..."