- Ressources et conventions
- Directives et communication
- Bases à connaitre pour appliquer les traductions dans CiviCRM
- Nom des composants
- Général
- Contacts
- Autres
- CiviContribution
- CiviEvent
- CiviGrant / CiviSubvention
- Débats
French translation resources / Ressources de traduction pour la traduction de CiviCRM en français.
Ressources et conventions
- Traduction du guide d'utilisation et administration : https://github.com/civicrm-french/civicrm-user-guide
- La traduction est gérée sur le site Transifex en deux versions du français : fr_FR et fr_CA
- Pour le fr_FR le glossaire est utilisé pour aider les contributeurs à harmoniser (même si ce n'est pas parfait).
- Office québécois de la langue française : http://www.granddictionnaire.com
- Glossaire de Drupal (Google Docs)
- Conventions typographiques de Wikipédia Fr
- Traduction épicène: utiliser les règles de traduction francophone de Wordpress
Directives et communication
- Si vous n'êtes pas d'accord avec un terme de la traduction québécoise, déplacez le terme dans la colonne fr_CA et ajoutez un commentaire pour expliquer pourquoi. Nous voulons harmoniser les deux traductions le plus possible.
- Contactez-nous sur le canal francophone du Mattermost de CiviCRM. Pour fr_CA: bgm, samuelsov, urlisse. Pour fr_FR : usha.makoa.
- Si c'est un bug dans le code original (i.e. une chaîne absente de Transifex), ouvrir un billet sur le projet 'Translation' du Gitlab de CiviCRM ou faire un PR (ajouter
E::ts()
en général).
Bases à connaitre pour appliquer les traductions dans CiviCRM
quels fichiers ?
- le fichier
.po
est éditable. Il contient les chaînes à traduire et leur traduction : c'est dans ce fichier qu'on ajoute des traductions. - le fichier
.mo
est compilé (pour permettre une recherche rapide des chaines traduites à l'extension)
processus de mise à jour des traductions
- Le Core et les extensions officielles sont traduisibles dans https://www.transifex.com/civicrm/ et https://www.transifex.com/civicrm_extensions/ (il faut créer un compte et une autorisation)
- Toutes les nuits, civicrm.org récupère les traductions du Core depuis transifex.
- On peut trouver une mise à jour quotidienne des .mo ici :
- Les CiviCRM installés devraient se mettre à jour quotidiennement ensuite. Mais ca bugue souvent.
- L'extension uplang (2023) de CiviCRM permet de récupérer aussi les traductions pour les extensions.
- Les chaines à traduire sont marquées par la fonction
ts()
dans le code.
Emplacements des fichiers
- les fichiers de lang des extensions sont placés dans l'extension :
/l10n/fr_FR/LC_MESSAGES
- l'extension
uplang
télécharge les .mo dans un dossier par langue icicivicrm/l10n/
Traduire une extension
officielle
Une extension officielle est publiée sur le site CiviCRM et a déjà un fichier de traduction sur transifex
- se placer dans le dossier de l'extension par exemple :
ext/org.civicrm.cdntaxreceipts/
- créer le dossier où les traductions sont attendues :
l10n/fr_FR/LC_MESSAGES
cd l10n/fr_FR/LC_MESSAGES
- télécharger le fichier .mo qui a été créé sur le dépot de civicrm la nuit dernière :
wget https://download.civicrm.org/civicrm-l10n-extensions/mo/cdntaxreceipts/fr_FR/cdntaxreceipts.mo
- valider que les fichiers de traduction ont bel et bien la traduction présente :
msgunfmt cdntaxreceipts.mo -o cdntaxreceipts.po .
un fork ou une extension custom
Dans ce cas le fichier de traduction n'existe pas ou est partiel sur transifex (nouvelles chaines à traduire qui n'apparaitront pas dans transifex)
- se placer dans le dossier de l'extension par exemple :
ext/org.civicrm.cdntaxreceipts/
- créer le dossier où les traductions sont attendues :
l10n/fr_FR/LC_MESSAGES
- créer le fichier .po
- générer le fichier .po avec les chaines à traduire à partir du code de l'extension
- se placer à la racine de l'extension pour scanner les ts() dans les fichiers
- vérifier que
civistrings
est installé sur le serveur https://github.com/civicrm/civistrings civistrings -o l10n/fr_FR/LC_MESSAGES/cdntaxreceipts.po .
- si c'est un fork d'une extension officielle on peut récupérer ce qui est déjà traduit en téléchargeant le fichier .po avec les traductions depuis transifex (aller dans civicrm_ressources et l'extension et télécharger les traductions)
- générer le fichier .po avec les chaines à traduire à partir du code de l'extension
- éditer le fichier .po (soit dans un éditeur de texte soit avec POEdit) pour traduire les chaines manquantes
- se placer dans /
l10n/fr_FR/LC_MESSAGES
- compiler le fichier .po en .mo
msgfmt -o cdntaxreceipts.mo cdntaxreceipts.po
comment être sûr que les .mo soient bien appliqués dans CiviCRM ?
Normalement rien n'est nécessaire. Au pire, redémarrer php-fpm
Exemples
Exemple CiviCase :
cd uk.co.compucorp.civicase
civistrings -o l10n/fr_FR/LC_MESSAGES/civicase.po .
# ajouter une en-tête au .po (c.f. autres .po)
# traduire
# ..puis compilation
msgfmt -o l10n/fr_FR/LC_MESSAGES/civicase.mo l10n/fr_FR/LC_MESSAGES/civicase.po
Nom des composants
Pour éviter d'alourdir inutilement la traduction, on laisse tomber le préfixe "Civi" des composantes. Elles devraient être traduits selon le lexique suivant :
Original | Traduction fr_FR | Traduction fr_CA |
---|---|---|
CiviCRM | CiviCRM | |
CiviCampaign | Campagnes | |
CiviCase | Dossiers | |
CiviContribute | Contributions | |
CiviEvent | Événements | |
CiviGrant | Subventions | |
CiviMail | Mailings | Envois massifs |
CiviMember | Adhésions | |
CiviPledge | Promesses de don | |
CiviReport | Rapports | |
CiviEngage |
Général
Verbes et expression
anglais | fr | fr_CA | commentaire |
---|---|---|---|
edit | modifier | ||
please.... | veuillez ... | dans fr_CA, très inconsistant entre "Veuillez ..." et "S'il vous plaît....". Personnellement, je trouve que "Veuillez" est mieux (plus léger/court). fr_FR semble utiliser uniquement 'veuillez', et ça semble majoritaire dans fr_CA aussi. – ML |
Contacts
Anglais | fr | fr_CA | Commentaire |
---|---|---|---|
courriel | courriel | parfois e-mail ou "message" peut être utilisé pour alléger, lorsque le contexte est suffisamment clair. | |
gender | genre | genre | CiviCRM est surtout un outil de communication/interaction, donc on réfère à l'identité de la personne et non sa biologie. |
source | origine | UFM 2023 : j'ai essayé d'harmoniser et distinguer pour une meilleure compréhension le champ source du contact/relations et source des contributions/activités. il y'avait parfois origine parfois source. j'ai mis origine pour les contacts et les relations. et source pour les contributions et activité | |
greeting | formule de salutation | ||
addressee | format de destinataire |
Autres
Autres termes (à trier?) qui ne sont pas spécifiques à une composante:
anglais | fr | fr_CA | commentaire |
---|---|---|---|
template | modèle | ||
dashboard | tableau de bord | ex: "Contact Dashboard" = "Mon tableau de bord" | |
Search (fonction) | Recherche | ex: "Recherche de contacts" | |
Search (bouton) | Rechercher | ||
Wildcard search | Recherche approximative | ||
State / Province | Subdivision de pays | Province / État | UFM : en France, State ressemble davantage à Région et County à Département non ? ou alors utilisons nous quelque chose de plus neutre "subdivision de pays" et "sous-subdivision de pays". Dans les option_values de State_Province il y a pour l'instant les départements français, mais je pense qu'ils devraient plutôt etre dans County... Que faire ? |
State | Statut |
Si c'est vraiment dans le sens de "State / Province", ne pas traduire et ouvrir un issue (c'est sûrement un bug) Parfois on traduit par "état". À vérifier.. UFM : je propose Statut pour les rares fois ou "State" est utilisé dans ce sens et pas dans le sens géographique |
|
Status | Statut |
Il faut s'entendre si on utilise "statut" ou "état" UFM : Je propose d'utiliser Statut et pas Etat. Il faudra remplacer partout dans transifex. |
|
Household | Foyer | UFM : j'ai l'impression que la majorité des traductions penche pour Foyer et pas pour Ménage | |
Home | Accueil / Domicile | On a considéré le terme "Résidence", mais on a laissé "Domicile" pour des raisons historiques. | |
Pledge | Promesse de don | Simplifiable à "Promesse". | |
Dashlet | Indicateur | On a avait une préférence pour "Panneau" mais on a laissé "Indicateur" pour des raisons historiques. | |
Constituent | Contact | On a été embêté par celui-là, on a opté pour quelque chose de simple. | |
Respondent | Répondant | ||
Recipient | Destinataire | ||
Widget | Widget | SVP documenter où c'est utilisé, pour l'instant ça semble impossible à traduire. | |
Premium | Cadeau | Prime | UFM : il semble que les traductions en fr_FR penchent vers Cadeau et non Prime. Je laisse Prime en fr_CA ? |
Mailing | Mailing | Envoi massif | |
Courrier postal / Courriel / Message | Faire attention au contexte. SVP ajouter des exemples. | ||
On hold | Invalidé | Suspendu | Utilisé pour les adresses courriel qui "bouncent" |
Workflow | Processus | À clarifier, contexte insuffisant ("workflow message template"?) | |
Price Set | Tarification | UFM : il semble que la traduction penche vers Tarification et non vers Grille de prix. J'ai harmonisé dans Transifex. | |
Trash | Corbeille | ||
Custom Field | Champ personnalisé | ||
Custom Field Set | Ensemble de champs personnalisés | ||
Listing | Listes | ||
Custom Data | Données personnalisés | ||
e.g. | ex. | ||
Dedupe | Fusionner | UFM : parfois "dédoublonner". En tout cas on utilise "règle de dédoublonnage" pour "dedupe rule". et "doublon" pour "duplicate". | |
Assignee | Assigné à | ||
Are you sure | Êtes-vous sûr | ||
Summary | Synthèse | Résumé et non Sommaire. UFM : Dans d'autres contextes : synthèse. Faut-il harmoniser ? | |
Payment processor |
Passerelle de paiement | ||
Tag | Tag/Étiquette | Etiquette | UFM : on garde les deux mots en fr_FR. |
Fee | Prix | UFM : Prix ou Frais ? les deux existent dans la traduction transifex. A harmoniser. | |
Contribution | Contribution | ||
Recurring Contribution | Contribution périodique | au lieu de "récurrente" | |
Organization | Organisation | ||
View displays | Afficher / voir Affichages | Contexte? | |
ID | Id. | Id. / Identifiant | UFM : Comme le français est plus verbeux, tous les ID sont traduits en Id. (et pas identifiant) en fr_FR |
Report | Rapport | ||
enter | saisir | ||
Interviewer | Contexte? Quelle composant ? | ||
Label | Libellé ou Etiquette pour la poste | Etiquette ? | Pour désigner le titre d'un champ / autre contexte : "Étiquettes pour la poste" |
Privacy | Protection de la vie privée |
Réfère aux options "ne pas appeller", "ne pas envoyer de courriel", etc. |
|
Smart group | Groupe dynamique | Jadis "Groupes intelligents", mais ceci mélange les utilisateurs, ne veut rien dire. A été changé pour "groupes dynamiques" en CiviCRM 4.1. | |
Mapping | Correspondance | ||
Back up | Copie de sauvegarde | À approuver | |
Bandwidth | Bande passante | À approuver | |
ACL (Access Control List) | Autorisation ACL | ||
AGM (Annual General Meeting) | Assemblée générale annuelle | ||
AGPL | AGPL | ||
API (Application Programming Interface) | API | ||
Bug | ? | Bogue | |
Bug reporting | rapport d'erreur? | ||
Bug fixing | |||
Bug tracker | |||
Cache | Cache | ||
Canvassing | |||
Captcha | Captcha | ||
Closed software | Logiciel propriétaire | ||
Free software / Open Source software | Logiciel libre | ||
CMS (Content Management System) | CMS? | SGC? Système/Outil/Logiciel de gestion de contenu? | |
CRM | |||
Component | Composante | ||
Community Advisory Group | |||
Cookie | Cookie? | ||
Core Code | |||
Core Data Field | |||
Core Team | |||
Cron Job | Traitement automatisé? | ||
Custom Data | Données personnalisées | ||
Plain-text format | Texte brut | ||
Activity Type | Type d'activité | ||
Relationship Type | Type de relation | ||
Token | Champ de fusion | Jeton ? | Jeton? Code de substitution? ou parfois "champ de fusion" |
Group | Groupe | ||
Auto-responder | Répondeur automatique | Répondeur automatique? Message automatisé? | |
Recipient | Destinataire | ||
Track | Suivre | Pister? | |
for your records | pour vos archives | ex: Please print this confirmation for your records | |
batch | en lot | ||
RelationShip | Relation |
CiviContribution
Pour les traductions de termes comptables / finances on pourra se référer à ce glossaire/lexique relativement complet
anglais | fr | fr_CA | commentaire |
---|---|---|---|
contribution | contribution | ||
Display In Roll? | "Affiché dans les listes de contributeurs d'une page de campagne personnelle ?" | dans 4.1 sera changé à "Personal Campaign Page Honor Roll?" (contributions reliées à PCP où le donateur accepte d'être listé dans la liste de donateurs.. suggestions les bienvenues!) - FR utilise parfois "accordéon d'honneur" pour "roll". Tableau d'honneur ? | |
Personal Campaign Page | Page de campagne personnelle | (ou "page de levée de fonds personelle/personnalisée"?) | |
On behalf of an organisation |
Pour une organisation Pour le compte d'une organisation Au nom d'une organisation |
Est ce qu'on essaye d'uniformiser ça ou dépend du contexte ? | |
Premium | Cadeau | Premium | à valider en fr_CA si on veut garder 'premium', ou adopter 'cadeau'. |
installment | versement | à valider en fr_CA si on veut versement, prélèvement ou échéance | |
subscription | souscription | abonnement? | à valider fr_CA mais semble avoir un consensus pour inscription - est ce que c'est clair dans le contexte civicrm ? souscription, inscription, abonnement ? inscription semble être réservé à la création d'un compte sur le site, donc abonnement me semble préférable (à une liste, à un magasine... dans le cas des premiums) |
Honoree | personne remerciée | à valider fr_CA, est ce qu'on garde ça ? | |
soft credit | Crédit indirect | ||
Credit Note | Avoir | ||
Source | Source | ||
Date Received | Date de la contribution |
"Date de la contribution" plutôt que "Date de réception du paiement" (car c'est faux, on peut créer une contribution en instance en attente de paiement) |
|
Financial Type | Type d'opération comptable | ||
Account Type | Journal (comptable) | ||
Financial Transaction | Opération comptable | ||
financial line item | écriture comptable | ||
CiviEvent
anglais | fr | fr_CA | commentaire |
---|---|---|---|
Event Summary | Résumé de l'événement | a la place de "Sommaire de l'événement" | |
Register | inscription | Je préfère "inscription" à "enregistrement" | |
Fees | Frais | ou Tarif? ex: "fee level"? | |
Fee level | |||
Discount | Réduction | ||
CiviMail
anglais | fr | fr_CA | commentaire |
---|---|---|---|
mailing | mailing | éviter le mot "massif" lorsque le contexte est clair. Parfois le mot "diffusion" peut également être pratique pour éviter d'alourdir, ex: "démarrer la diffusion (de l'envoi)", plutôt que "démarrer l'envoi". | |
opt-out | ne plus me contacter (?) | Exclusion des envois massifs | opt-out fait en sorte que l'on ne reçoit plus jamais de courriels. L'OQLF suggère le terme "Liste d'exclusion". |
unsubscribe | désabonnement | se désabonner d'un groupe | |
token | champ de fusion | jeton | "jeton" est le terme utilisé par Drupal. XD: C'est super nerdy. sur le publipostage, c'est "champ", non ? |
From | expéditeur | ex: From Name = Nom de l'expéditeur . ou "de" | |
To | destinataire | ou "à" | |
Approve/Reject | Valider/Annuler | ||
Trackable | Suivi | ||
Job | Tâche programmée | Tâche | |
click | clic | ||
mailing list | liste de diffusion | ||
opt out | S'opposer à tout mailing (opt out) | Pour bien distinguer l'opposition à recevoir tout mailings en masse... | |
unsubscribe | Se désabonner (d'une liste) | ...et le désabonnement d'une liste de diffusion (et désabonnement plutot que désinscription) | |
|
CiviGrant / CiviSubvention
anglais | fr | fr_CA | commentaire |
---|---|---|---|
grant | subvention | ||
payment processor | passerelle de paiement | service de paiement | |
CiviBooking/Réservations
anglais | fr | fr_CA | commentaire |
---|---|---|---|
Booking | Réservations | ||
CiviCase / Dossiers
anglais | fr | fr_CA | commentaire |
---|---|---|---|
case | dossier | ||
CiviMember /Adhésions
anglais | fr | fr_CA | commentaire |
---|---|---|---|
Membership | adhésion | ||
Signup | inscription | ||
Renew | renouveler | ||
Primary Member | membre direct | membre principal | |
Member | adhérent | ||
Débats
-
Est-ce qu'on traduit les noms de composantes? (CiviMail, CiviMember, etc)
- XD: on en avait discuté, et la conclusion est que tu traduis pas (tu utilises pas microsoft fenêtre pour écrire avec microsoft mot)
- ML: mais on parle ici de composantes, pas du nom du logiciel. Par exemple, dans Drupal, les "views" deviennent des "vues". Même pour les marques, on dit "Microsoft" et non "Maycrosoft". On dit "tableur" ou feuille de calcul, et non Excel. Je serais même tenté de dire que CiviMail devrait tout simplement être "Envois massifs". CiviMail veut rien dire. Tout comme CiviMember devrait tout simplement être "Adhésions". C'est normal d'adapter quand on le peut, i.e. quand ça ne cause pas de confusion. Au Québec de nombreux magasins ou compagnies ont un nom français et anglais. Les gens peuvent être bilingues ou trilingues, mais ils vont généralement préférer un terme en français, surtout à l'écrit.
- JC: L'équipe fr_CA a décidé de traduire les termes. Les noms "Civi" ne sont probablement pas importants pour les utilisateurs finaux, ce qui compte c'est la sémantique. Par contre on reconnaît l'importance d'être 100% consistants dans la traduction, pour éviter la confusion des administrateurs/développeurs. Voir le lexique.
-
Ponctuation : on ajoute un espace avant :? ! et : ?
- JC: L'équipe fr_CA est d'accord de mettre des espaces réguliers devant ces caractères. L'insertion d'espaces insécables devraient se faire automatiquement (en PHP).
-
Guillemets : on les copie tels-quels de l'anglais ou on convertit aux guillements français ? -> afin d'éviter de générer des bugs en traduisant, il est préférable d'utiliser (autant que possible) les mêmes quotes (simple ou double) que dans la version anglaise et de banir toute utilisation des guillemets (telle qu'utilisée dans les logiciels de bureautique << >>).
- JC: L'équipe fr_CA est d'accord pour utiliser les guillemets français, selon la norme Wikipedia Fr.
-
La traduction litérale des termes peut générer des aberrations dans l'interface, il est préférable de traduire les libellés en fonction de leur contexte. -> Oui mais pour les traductions dont le terme anglais a le même sens, il faut choisir un seul terme français. La cohérence est un gros problème dans la traduction actuelle.
-
Comptes-rendus ou rapports ?
UFM : "Report" a longtemps été traduit par "Compte-rendu" en français de France (fr_FR) dont la définition selon Wikipedia est : "Un compte rendu est un document qui fait état d'un rapport, exposé, ou relation de certains faits particuliers ou d’une réunion." On préférera la traduction "Rapport" plus neutre en ce sens qu'il n'est pas lié à une "réunion". On aurait aussi pu utiliser "Etat" (encore plus large) mais cela aurait pu prêter à confusion avec "état" au sens de "statut"/status. -
En 2020/2021 un sprint a permis de passer la traduction en français de 70% à 100% (notamment après tous les contributeurs du passé, avec usha.makoa et guillaume_allinappli).
-
Mailings ou envois massifs ou envois en masse ?
2023 : UFM : Mailings est plus clair pour les utilisateurs, c'est ce qu'on a harmonisé en français.
2020 :UFM : Nous excluons l'anglicisme "mailings". En français de France (fr_FR) il nous apparaît que "envois en masse" est le plus approprié (il nous semble que c'est en masse, au sens de "en lot", que se fait l'envoi mais que l'envoi n'est pas à proprement parler "massif", comme l'or ou le bois le serait ;-) ).Mais nous avons laissé "envois massifs" dans la version fr_CA qui semble convenir.