-
-
Notifications
You must be signed in to change notification settings - Fork 88
New Crowdin updates #650
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
base: main
Are you sure you want to change the base?
New Crowdin updates #650
Conversation
|
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the
WalkthroughAjout massif de clés de traduction dans Changes
Sequence Diagram(s)(aucun diagramme généré — modifications i18n purement additives sans nouveau flux entre composants) Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
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.
Actionable comments posted: 6
📜 Review details
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
locales/fr.json
🔇 Additional comments (5)
locales/fr.json (5)
141-160: LGTM !Les traductions sont cohérentes et suivent un bon pattern (None/Singular/Number). L'utilisation des placeholders
{{number}}est correcte.
177-179: LGTM !Traductions correctes et concises pour les horaires de cours.
220-229: LGTM !Structure cohérente avec le pattern Label/Description. Les traductions sont précises et claires.
328-328: LGTM !"Fonctionnalités IA" est la forme correcte de l'abréviation en français (sans points).
440-442: LGTM !Les labels temporels sont corrects et standards.
| "Home_Cards_Button_Description_Plurial": "disponibles", | ||
| "Home_Chats_Plurial": "discussions", |
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.
🧩 Analysis chain
🏁 Script executed:
# Search for references to these specific keys in the codebase
rg "Plurial" --type ts --type tsx --type js --type jsx -nRepository: PapillonApp/Papillon
Length of output: 91
🏁 Script executed:
# Also search for the correct "Plural" spelling to see if other keys use it
rg "Plural" --type ts --type tsx --type js --type jsx -n | head -20Repository: PapillonApp/Papillon
Length of output: 91
🏁 Script executed:
# Check the entire locales/fr.json file to see all key patterns
cat -n locales/fr.json | grep -i pluralRepository: PapillonApp/Papillon
Length of output: 246
🏁 Script executed:
# Search for references to "Plurial" without file type restriction
rg "Plurial" -nRepository: PapillonApp/Papillon
Length of output: 201
🏁 Script executed:
# Search specifically for code that might reference these keys (search for the full key names)
rg "Home_Cards_Button_Description_Plurial|Home_Chats_Plurial" -nRepository: PapillonApp/Papillon
Length of output: 201
🏁 Script executed:
# Get broader context around the lines 128-129 in fr.json
sed -n '125,135p' locales/fr.json | cat -nRepository: PapillonApp/Papillon
Length of output: 704
🏁 Script executed:
# Search for code patterns that might reference these keys (Home_Cards or Home_Chats)
rg "Home_Cards|Home_Chats" -nRepository: PapillonApp/Papillon
Length of output: 865
🏁 Script executed:
# Check for import statements that reference locale/translation files
rg "from.*locales|import.*locales|fr\.json" -n | head -20Repository: PapillonApp/Papillon
Length of output: 425
🏁 Script executed:
# Look at the repository structure to understand how translations are used
find . -type f -name "*.ts" -o -name "*.js" | head -20Repository: PapillonApp/Papillon
Length of output: 670
🏁 Script executed:
# Search for code that uses these translation keys (checking how they're accessed)
rg "Home_Cards_Button_Description|Home_Chats" --type ts --type js -B 2 -A 2 | head -50Repository: PapillonApp/Papillon
Length of output: 46
🏁 Script executed:
# Look for the utils/i18n.ts file to understand how keys are accessed
cat -n utils/i18n.ts | head -30Repository: PapillonApp/Papillon
Length of output: 1326
🏁 Script executed:
# Search for any file that might use these specific keys with Plurial spelling
rg "\[.*Plurial.*\]|\.Plurial" -nRepository: PapillonApp/Papillon
Length of output: 46
🏁 Script executed:
# Search for how these keys are accessed in code (using useTranslation pattern common in React)
rg "useTranslation|i18next|i18n\.|t\(" --type ts --type js -A 3 | head -100Repository: PapillonApp/Papillon
Length of output: 4518
🏁 Script executed:
# Look for actual usage of the specific Home_Cards_Button_Description key pattern
rg "Home_Cards_Button_Description" -nRepository: PapillonApp/Papillon
Length of output: 380
🏁 Script executed:
# Check all keys in en.json to compare naming patterns
rg "Home_Cards_Button_Description|Home_Chats" locales/en.json | head -20Repository: PapillonApp/Papillon
Length of output: 46
🏁 Script executed:
# Search en.json for Home_Cards and Home_Chats keys to see the pattern in English
cat -n locales/en.json | grep -i "Home_Cards\|Home_Chats" | head -20Repository: PapillonApp/Papillon
Length of output: 46
🏁 Script executed:
# Check if the code directly references translation keys by searching for the t() function with these keys
rg "t\(.*Home_" -B 2 -A 2 | head -50Repository: PapillonApp/Papillon
Length of output: 2205
🏁 Script executed:
# Look at all files that might consume these translation keys
find . -name "*.tsx" -o -name ".ts" | xargs grep -l "Home_Cards_Button_Description\|Home_Chats" 2>/dev/null | head -10Repository: PapillonApp/Papillon
Length of output: 46
🏁 Script executed:
# Get the Home_Cards and Home_Chats section from en.json
sed -n '120,160p' locales/en.json | cat -nRepository: PapillonApp/Papillon
Length of output: 2056
🏁 Script executed:
# Check if these "Plurial" keys are even defined in en.json
rg "Home_Cards_Button_Description|Home_Chats" locales/en.json -B 1 -A 1Repository: PapillonApp/Papillon
Length of output: 46
🏁 Script executed:
# Search for any actual code usage of these translation keys (more thorough search)
rg "Home_Cards_Button_Description_Plurial|Home_Chats_Plurial" --type ts --type jsRepository: PapillonApp/Papillon
Length of output: 46
🏁 Script executed:
# Get lines around Home section in en.json to see the key naming pattern
sed -n '100,160p' locales/en.json | cat -nRepository: PapillonApp/Papillon
Length of output: 3116
🏁 Script executed:
# Check if en.json has the corresponding keys and what they're called
rg "Chats.*Plural|Cards.*Plural" locales/en.json -B 1 -A 1Repository: PapillonApp/Papillon
Length of output: 46
🏁 Script executed:
# See the full Home section from fr.json to understand the context
sed -n '120,160p' locales/fr.json | cat -nRepository: PapillonApp/Papillon
Length of output: 2106
🏁 Script executed:
# Search for dynamic key reference patterns that might use these keys
rg "Home_Cards|Home_Chats" --type ts --type js -C 3 | head -80Repository: PapillonApp/Papillon
Length of output: 46
🏁 Script executed:
# Check if en.json is missing these keys entirely (compare structure)
diff <(rg "\"Home_" locales/en.json | sed 's/.*"\([^"]*\)".*/\1/' | sort) <(rg "\"Home_" locales/fr.json | sed 's/.*"\([^"]*\)".*/\1/' | sort) 2>&1 | head -30Repository: PapillonApp/Papillon
Length of output: 151
🏁 Script executed:
# Final check: are these Plurial keys referenced via variable/computed property access?
rg "\[.*Home.*\]|\$\{.*Home" --type ts --type jsRepository: PapillonApp/Papillon
Length of output: 990
🏁 Script executed:
# Check en.json for any Plurial or similar Home_Cards/Home_Chats keys
sed -n '100,160p' locales/en.json | cat -nRepository: PapillonApp/Papillon
Length of output: 3116
🏁 Script executed:
# Final verification: list all keys in fr.json that contain "Plural"
rg '"[^"]*Plural[^"]*"' locales/fr.jsonRepository: PapillonApp/Papillon
Length of output: 225
🏁 Script executed:
# Check if these keys might be referenced via string concatenation or dynamic access
rg "Home_Cards_Button_Description|Home_Chats" app/ -C 5 --type ts --type js 2>/dev/null | head -100Repository: PapillonApp/Papillon
Length of output: 46
Corriger l'orthographe dans les noms de clés : "Plurial" doit être "Plural"
Les clés Home_Cards_Button_Description_Plurial et Home_Chats_Plurial contiennent une faute de frappe. L'orthographe correcte en anglais est "Plural", comme confirmé par les autres clés du fichier (ex: Profile_Attendance_Denominator_Plural).
Suggestion de correction
- "Home_Cards_Button_Description_Plurial": "disponibles",
- "Home_Chats_Plurial": "discussions",
+ "Home_Cards_Button_Description_Plural": "disponibles",
+ "Home_Chats_Plural": "discussions",📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| "Home_Cards_Button_Description_Plurial": "disponibles", | |
| "Home_Chats_Plurial": "discussions", | |
| "Home_Cards_Button_Description_Plural": "disponibles", | |
| "Home_Chats_Plural": "discussions", |
| "Grades_Avg_More": "En savoir plus", | ||
| "Grades_Avg_KnowMore": "En savoir plus", |
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.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
# Search for usage of both keys in TypeScript and JavaScript files
echo "=== Searching for Grades_Avg_More ==="
rg "Grades_Avg_More" --type ts --type js -n
echo -e "\n=== Searching for Grades_Avg_KnowMore ==="
rg "Grades_Avg_KnowMore" --type ts --type js -nRepository: PapillonApp/Papillon
Length of output: 144
🏁 Script executed:
#!/bin/bash
# Broader search without file type restrictions
echo "=== Searching for Grades_Avg_More (broader search) ==="
rg "Grades_Avg_More" -n
echo -e "\n=== Searching for Grades_Avg_KnowMore (broader search) ==="
rg "Grades_Avg_KnowMore" -nRepository: PapillonApp/Papillon
Length of output: 419
Supprimer la clé inutilisée Grades_Avg_More
Grades_Avg_More n'est référencée nulle part dans le code. Seule Grades_Avg_KnowMore est utilisée. Supprimez la clé orpheline à la ligne 216.
| "Tasks_Sorting_Methods_DueDate": "Date de rendu", | ||
| "Tasks_Sorting_Methods_Subject": "Matières", | ||
| "Tasks_Sorting_Methods_Done": "Non terminé" | ||
| "Tasks_Sorting_Methods_Done": "Non terminé", |
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.
🧩 Analysis chain
🏁 Script executed:
# Search for usage of Tasks_Sorting_Methods_Done in the codebase
rg -n "Tasks_Sorting_Methods_Done" --type ts --type js -A 2 -B 2Repository: PapillonApp/Papillon
Length of output: 389
🏁 Script executed:
# Also check the context around line 427 in fr.json for related sorting methods
sed -n '420,440p' locales/fr.jsonRepository: PapillonApp/Papillon
Length of output: 764
🏁 Script executed:
# Check if there's a Tasks_Sorting_Methods_Undone or similar key
rg -n "Tasks_Sorting_Methods" locales/fr.jsonRepository: PapillonApp/Papillon
Length of output: 223
Corriger la clé de tri des tâches "Done" qui affiche "Non terminé"
La clé Tasks_Sorting_Methods_Done à la ligne 427 est mal nommée. Le code utilise cette clé pour un tri qui place les tâches non terminées en premier (cf. app/(tabs)/tasks/index.tsx:368 avec la méthode Number(a.isDone) - Number(b.isDone)), ce qui correspond à la valeur "Non terminé".
Renommer la clé en Tasks_Sorting_Methods_Undone pour qu'elle soit cohérente avec sa fonction réelle, ou inverser la logique de tri pour afficher les tâches terminées en premier avec la valeur "Terminé".
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
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.
Actionable comments posted: 3
📜 Review details
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
locales/en.json
🔇 Additional comments (8)
locales/en.json (8)
72-72: Clé de traduction correcte.La valeur "Missing title" correspond bien à l'intention de la clé pour indiquer un titre manquant.
87-98: Ajout de séparateurs de cours bien structurés.Les nouvelles clés de traduction pour les séparateurs de cours sont bien organisées avec des variantes pour chaque période de la journée. Les traductions apportent une touche personnalisée à l'interface.
121-136: Structure cohérente pour les descriptions de boutons.Les nouvelles clés suivent un modèle cohérent avec des variantes None/Singular/Number, ce qui permettra une gestion appropriée du pluriel dans l'interface utilisateur.
149-151: Clés de modalité de cours appropriées.Les nouvelles clés pour afficher les horaires de cours sont claires et bien nommées.
173-196: Enrichissement complet de la section notes.L'ajout de clés pour les calculs de moyennes, les statistiques et les classements améliore considérablement la fonctionnalité de la section des notes. Les descriptions sont claires et informatives.
Also applies to: 205-205, 215-217, 243-244
245-249: États vides et recherche bien définis pour les actualités.Les nouvelles clés améliorent l'expérience utilisateur en fournissant des messages appropriés pour les recherches vides et sans résultat.
277-277: Corrections et ajouts de paramètres appropriés.La correction de "A.I features" en "AI features" suit la convention standard pour l'abréviation. L'ajout des clés de réinitialisation des matières offre une fonctionnalité utile.
Also applies to: 331-333
363-373: Ajouts utiles pour les tâches et les labels temporels.Les nouvelles clés pour les statuts de tâches, les titres de modales et les labels temporels (Today, Yesterday, Tomorrow) enrichissent l'interface utilisateur de manière cohérente.
| "Home_Cards_Button_Description_Plurial": "available", | ||
| "Home_Chats_Plurial": "chats", |
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.
Corriger la faute d'orthographe dans les clés de traduction.
Les clés contiennent "Plurial" au lieu de "Plural". Cette faute d'orthographe doit être corrigée pour maintenir la cohérence avec les conventions de nommage standards.
🐛 Correction proposée
- "Home_Cards_Button_Description_Plurial": "available",
+ "Home_Cards_Button_Description_Plural": "available",
- "Home_Chats_Plurial": "chats",
+ "Home_Chats_Plural": "chats",
- "Home_Chats_Singular": "chat",
+ "Home_Chats_Singular": "chat",Committable suggestion skipped: line range outside the PR's diff.
| "Task_Complete": "Completed", | ||
| "Task_Sorting_Title": "Sort by", | ||
| "Task_OnlyShowUndone": "Finished", | ||
| "Task_OnlyShowUndone": "Finished tasks", |
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.
Incohérence entre la clé et la valeur de traduction.
La clé Task_OnlyShowUndone suggère qu'elle concerne les tâches non terminées, mais la valeur est "Finished tasks" (tâches terminées). Cette incohérence pourrait créer de la confusion dans l'interface utilisateur.
💡 Corrections proposées
Option 1 : Modifier la valeur pour correspondre à la clé :
- "Task_OnlyShowUndone": "Finished tasks",
+ "Task_OnlyShowUndone": "Unfinished tasks",Option 2 : Modifier la clé pour correspondre à la valeur :
- "Task_OnlyShowUndone": "Finished tasks",
+ "Task_ShowFinished": "Finished tasks",📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| "Task_OnlyShowUndone": "Finished tasks", | |
| "Task_OnlyShowUndone": "Unfinished tasks", |
| "Tasks_Sorting_Methods_DueDate": "Due date", | ||
| "Tasks_Sorting_Methods_Subject": "Subjects", | ||
| "Tasks_Sorting_Methods_Done": "Undone" | ||
| "Tasks_Sorting_Methods_Done": "Undone", |
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.
Incohérence entre la clé et la valeur de traduction.
La clé Tasks_Sorting_Methods_Done contient "Done" mais la valeur est "Undone". Cette contradiction pourrait entraîner des erreurs de tri ou d'affichage dans l'interface.
💡 Correction proposée
- "Tasks_Sorting_Methods_Done": "Undone",
+ "Tasks_Sorting_Methods_Undone": "Undone",Ou si l'intention est d'afficher les tâches terminées :
- "Tasks_Sorting_Methods_Done": "Undone",
+ "Tasks_Sorting_Methods_Done": "Done",📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| "Tasks_Sorting_Methods_Done": "Undone", | |
| "Tasks_Sorting_Methods_Undone": "Undone", |
| "Tasks_Sorting_Methods_Done": "Undone", | |
| "Tasks_Sorting_Methods_Done": "Done", |
Summary by CodeRabbit
Nouvelles fonctionnalités
Corrections
✏️ Tip: You can customize this high-level summary in your review settings.