feat(localization): add difficult vocabulary marking features in multiple languages
All checks were successful
Deploy to production / deploy (push) Successful in 1m58s

- Introduced new localization strings for marking vocabulary as difficult, including options to save and remove difficult marks.
- Enhanced user experience by providing feedback on the status of difficult vocabulary in Cebuano, Spanish, and French.
- Updated existing localization files to ensure consistency across languages, supporting the recent vocabulary management features.
This commit is contained in:
Torsten Schulz (local)
2026-04-22 11:12:26 +02:00
parent 44b40d5a46
commit d3aad6e7ef
4 changed files with 133 additions and 3 deletions

View File

@@ -503,6 +503,13 @@
"trainerProgressNewContent": "Bag-ong sulod: {current}/{target}",
"trainerProgressReview": "Balik-balik: {count}",
"trainerProgressMixShare": "Nasagol nga bahin: {percent}%",
"markVocabHard": "Mark as difficult",
"markVocabHardSaved": "Vocabulary marked as difficult.",
"unmarkVocabHard": "Remove from difficult list",
"unmarkVocabHardSaved": "Vocabulary removed from difficult list.",
"hardVocabModeActive": "Intensive block: difficult vocabulary",
"hardVocabRemaining": "Remaining until stable: {count}",
"startHardVocabTrainer": "Train difficult vocabulary ({count})",
"unknownExerciseTypeNotice": "Kini nga matang sa ehersisyo wala pa ipakita nga interaktibo sa kasamtangang view.",
"unknownExerciseTypeLabel": "Matang: {type}",
"lessonReviewHeadlineDone": "Nakaabot na kini nga leksiyon sa libre nga pagpalalom.",
@@ -806,6 +813,9 @@
"remaining": "Nahibilin",
"success": "Malampuson",
"fail": "Fail",
"hardCount": "Marked difficult",
"markHard": "Mark as difficult",
"unmarkHard": "Remove difficult mark",
"srsRateTitle": "Unsa ka lig-on sa imong pagbati?",
"srsAgain": "Usab",
"srsAgainHint": "balikon dayon",

View File

@@ -457,7 +457,10 @@
"askedVocab": "Preguntado:",
"stats": "Estadísticas",
"success": "Éxito",
"fail": "Fallo"
"fail": "Fallo",
"hardCount": "Marcadas como difíciles",
"markHard": "Marcar como difícil",
"unmarkHard": "Quitar marca de difícil"
},
"search": {
"open": "Buscar",
@@ -809,6 +812,13 @@
"trainerProgressNewContent": "Contenido nuevo: {current}/{target}",
"trainerProgressReview": "Repaso: {count}",
"trainerProgressMixShare": "Parte mezclada: {percent}%",
"markVocabHard": "Mark as difficult",
"markVocabHardSaved": "Vocabulary marked as difficult.",
"unmarkVocabHard": "Remove from difficult list",
"unmarkVocabHardSaved": "Vocabulary removed from difficult list.",
"hardVocabModeActive": "Intensive block: difficult vocabulary",
"hardVocabRemaining": "Remaining until stable: {count}",
"startHardVocabTrainer": "Train difficult vocabulary ({count})",
"unknownExerciseTypeNotice": "Este tipo de ejercicio todavía no se muestra de forma interactiva en la vista actual.",
"unknownExerciseTypeLabel": "Tipo: {type}",
"lessonReviewHeadlineDone": "Esta lección ya ha llegado a la fase de práctica libre.",

View File

@@ -457,7 +457,10 @@
"askedVocab": "Demandé :",
"stats": "statistiques",
"success": "Succès",
"fail": "échec"
"fail": "échec",
"hardCount": "Marqués difficiles",
"markHard": "Marquer comme difficile",
"unmarkHard": "Retirer le marquage difficile"
},
"search": {
"open": "Recherche",
@@ -809,6 +812,13 @@
"trainerProgressNewContent": "Nouveau contenu : {current}/{target}",
"trainerProgressReview": "Répéter : {count}",
"trainerProgressMixShare": "Proportion de mélange : {pourcentage} %",
"markVocabHard": "Mark as difficult",
"markVocabHardSaved": "Vocabulary marked as difficult.",
"unmarkVocabHard": "Remove from difficult list",
"unmarkVocabHardSaved": "Vocabulary removed from difficult list.",
"hardVocabModeActive": "Intensive block: difficult vocabulary",
"hardVocabRemaining": "Remaining until stable: {count}",
"startHardVocabTrainer": "Train difficult vocabulary ({count})",
"unknownExerciseTypeNotice": "Ce type d'exercice n'est pas encore affiché de manière interactive dans la vue actuelle.",
"unknownExerciseTypeLabel": "Tapez : {type}",
"lessonReviewHeadlineDone": "Cette leçon a atteint le niveau d'immersion libre.",