Francis Fustier
Francis FUSTIER
item2a

Les applications développées de par le monde pour le système OS X d'Apple adoptent l'interface utilisateur Aqua au moyen des outils de développement mis à disposition par Apple, les Xcode Tools.

De base, cette interface est générée en anglais, langue informatique universelle qui offre des termes concis, non accentués, parfaitement adaptés aux nombreux systèmes d'encodage utilisés pour les langues sur notre planète.

Localization1

Heureusement, les Xcode Tools incluent les outils permettant de traduire l'interface anglaise des logiciels Mac OS X en tout autre langue, ce sont les Localization Tools.

Beaucoup d'entre-nous, préférant utiliser la langue de Molière plutôt que celle de Shakespeare, je me suis attaché à traduire - bénévolement - quelques applications bien connues qui ne l'étaient pas encore, afin d'apporter ma modeste contribution à la sympathique communauté des "Macusers".

rss
Flux RSS
 
FF4a1
Plan du site
La Traduction 3

La traduction 2

forward

La traduction 4

IB

Perfectionnement - Interface Builder (partie 2)

Il arrive que des fenêtres complexes cachent leur contenu dans la vue standard d'Interface Builder. L'exemple ci-dessous est tiré de Transmit, les impressions d'écran sont faites à partir du fichier French.lproj, c'est identique dans le fichier English.lproj bien évidemment.

IB13

Le fichier STPSession.nib a été ouvert, et vous avez cliqué sur la fenêtre "TheirStuff" pour la traduire. Cette dernière présente les colonnes d'affichage des fichiers dans Transmit. Il faut que vous traduisiez les en-tête de chaque colonne. Vous double-cliquez donc sur chaque titre et vous le traduisez directement. Bien. Seulement vous avez vu dans l'application qu'il y avait d'autres colonnes, sept en tout, mais où sont-elles ?

Le mode d'affichage par défaut du contenu d'un fichier .nib est le mode "icônes". Il faut passer dans mode d'affichage "liste" ou "colonnes", en cliquant sur un des boutons indiqué par la flèche rouge ci-dessous :

IB14

Ainsi, en cliquant successivement sur les triangles noirs devant les éléments "TheirStuff" puis "Table View", vous allez développer le contenu de la fenêtre et voir la liste intégrale de l'en-tête des colonnes présentes. Vous sélectionnez chaque ligne et la traduisez dans l'Inspecteur. Pas plus compliqué.

Maintenant que vous avez appris cela, vous penserez à afficher systématiquement ce mode liste, à développer tous les sous-menus en cliquant sur tous les triangles noirs, pour vous assurer que vous n'avez pas oublié la moindre petite phrase.

Mais ce n'est pas tout. Il y a d'autres subtilités. En voici une. Dans Transmit, en anglais, vous avez vu la fenêtre des Transferts comporter deux icônes en bas à gauche, la deuxième ouvrant une série de sous-menus d'actions à effectuer en cas de conflits.

transferts1
transferts2

Vous ouvrez donc dans Interface builder le dossier BatchDownload.nib, vous cliquez le mode liste et développez toutes les branches, et... bin mince, elles sont où ces phrases ? Eh, c'est que ce sont des petits rigolos chez Panic Software ! En réponse à mon mail interrogateur, ils me répondent que "yaka cliquer sur l'icône". Ah, bon. Je m'exécute donc, c'était si simple !

IB15

Effectivement, si vous cliquez là où j'ai mis la flèche, vous voyez apparaître le menu puis les sous-menus qu'il vous reste à traduire. C'était pourtant simple !

Tout ça pour vous expliquer qu'il faut parfois se creuser les méninges, et que si vous avez eu l'heureuse idée de prendre contact avec les développeurs avant de commencer, pour vous faire connaître, il est plus facile ensuite de leur demander des tuyaux.

 

Les applications complexes

 

Nous avons vu que le fichier English.lproj se situait dans le dossier /Contents/Resources/ de l'application. Mais il arrive que d'autres fichiers English.lproj se cachent dans des sous-dossiers /Contents/Resources/ de sous-applications. En effet, une appli peut être une poupée gigogne qui contient d'autres applis. C'est le cas de Transmit.

Dans Transmit, le dossier Contents contient, comme son nom l'indique, plusieurs sous-dossiers :

transmit2
transmit1

Rassurez-vous, les applications sont rarement aussi compliquées. Je l'ai seulement rencontré avec Transmit et Camino. Pour Camino, comme Firefox et les autres projets Mozilla, les développeurs ont même créé un script qui permet de mettre tous les fichiers French.lproj à la bonne place lorsque l'on diffuse le package de langue. Pour Transmit, quand les localiseurs envoient leur copie, l'intégration se fait à la main.

C'est une des raisons pour lesquelles les développeurs rechignent souvent à intégrer les localisations. Avec en plus les problèmes de support. il faut qu'ils aient une grande confiance dans leurs traducteurs.

Pour conclure, inspectez tous les dossiers du contenu de votre application, vérifiez qu'il n'y en a pas un dont on peut "Afficher le contenu du paquet", auquel cas vérifiez la présence d'un dossier /Resources/English.lproj.

 

Les infobulles (Tooltips)

 

La traduction des infobulles se fait dans l'Inspecteur. Il faut sélectionner un champ, ouvrir dans l'Inspecteur l'onglet "i" (informations) et choisir la section Tool Tip. Si une infobulle existe quand on clique un champ de texte ou autre, le contenu sera affiché dans le champ "Tool Tip", il n'y aura qu'à le remplacer par la version en français :

IB16

Méfiez-vous, certains développeurs, comme GPSNavX, ont la manie des infobulles, il y en a dans tous les champs ! Mais c'est rare, heureusement.

 

Rappel :

Les nouvelles applications développées avec les Xcode Tools 3.x sont souvent livrées avec des fichiers NIB compilés, impossibles à ouvrir avec IB. Il faut alors demander aux développeurs qu'ils vous envoient une version non compilée du fichier English.lproj. Vous aurez alors des fichiers .xib à ouvrir dans Interface Builder que vous pourrez vous-même enregistrer en fichiers .nib :


Fin du chapitre 3. Dans La Traduction 4, nous aborderons l'utilisation d'AppleGlot et de AD Viewer.

La traduction 2

next1
forward1

La traduction 4

© Francis Fustier 2010

xib