FR2838842A1 - Procede et dispositif de traitement de libelles, et produit programme d'ordinateur - Google Patents
Procede et dispositif de traitement de libelles, et produit programme d'ordinateur Download PDFInfo
- Publication number
- FR2838842A1 FR2838842A1 FR0204983A FR0204983A FR2838842A1 FR 2838842 A1 FR2838842 A1 FR 2838842A1 FR 0204983 A FR0204983 A FR 0204983A FR 0204983 A FR0204983 A FR 0204983A FR 2838842 A1 FR2838842 A1 FR 2838842A1
- Authority
- FR
- France
- Prior art keywords
- dictionary
- wording
- default
- key
- dic
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/3084—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method
- H03M7/3088—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method employing the use of a dictionary, e.g. LZ78
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
- G06F9/454—Multi-language systems; Localisation; Internationalisation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Machine Translation (AREA)
Abstract
L'invention conceme un procédé de traitement de libellés qui comprend les étapes suivantes : i) prévoir au moins du dictionnaire (DIC) apte à comprendre une pluralité de libellés associés chacun à une clé formant contexte, ii) recevoir une requête comprenant un libellé par défaut et une clé concernant le libellé, iii) en réponse à la requête, vérifier si la clé existe dans le dictionnaire (DIC), iv) en cas de vérification positive, traiter le libellé correspondant du dictionnaire, tandis qu'en cas de vérification négative, prendre le libellé par défaut de la requête et enrichir le dictionnaire par un nouveau libellé associé à ladite clé.
Description
moyen du processus de jugement.
La presente invention concerne le traitement de libelles et plus particulierement
la modification, le changement eVou la traduction desdits libelles.
Wile trouve une application generale dans le traitement de libelles, notamment les libelles figurant dans des logiciels et destines a etre affiches eVou diffuses. On entend ici par libelle tout element generalement textuel appartenant au g roupe forme par des elements de d ialogue d' interface graph ique, des messages d'information eVou d'erreur, des menus, des entrees/sorties, et
o analogues.
Generalement, lors de la conception d'un logiciel, le code source est ecrit en un langage evolue non directement comprehensible par la machine. Pour etre execute, le code source doit etre convert) en langage machine. Cette
conversion est generalement appelee compilation.
Par exemple, dans le cas d'une bo'^te de dialogue d'interface graphique, le concepteur definit generalement autant de jeux de ressources graphiques que de langues de dialogue requises par les utilisateurs. Ainsi, une modification dans le libelle d'une bo^'te de dialogue dans une langue choisie conduit a modifier les memes ressources graphiques de la bo^'te de dialogue dans toutes les autres langues. 11 en resulte une perte de temps considerable. De plus, apres modification du libelle, il convient de compiler a nouveau le logiciel, ce qui
alou rd it d 'a uta nt le tra iteme nt.
Le Demandeur s'est pose le probleme de traiter (modifier, changer eVou traduire) des libelles d'un logiciel sans engendrer de traitement (modification, changement eVou traduction) au niveau du code source associe, ni avoir a
compiler a nouveau le code source.
La presente invention apporte justement une solution a ce probleme.
Wile a ainsi pour objet un procede de traitement de libelles.
Selon une definition generale de ['invention, le procede comprend les etapes suivantes: i) prevoir au moins un dictionnaire apte a comprendre une pluralite de libelles associes chacun a une cle formant contexte, ii) recevoir une requete comprenant un libelle par defaut et une cle concernant le libelle, iii) en reponse a la requete, verifier si la cle existe dans le dictionnaire, en cas de verification positive, traiter le libelle correspondent du dictionnaire, o tandis qu'en cas de verification negative, prendre le libelle par defaut de la req uete et enrich ir le dictionnaire par un nouveau libelle associe a
ladite cle.
Grace au dictionnaire ainsi constitue et enrich) selon ['invention, il est possible de changer de langue eVou de modifier les libelles du code source d'un logiciel sans devoir modifier ledit code source, ni avoir a compiler ledit code source a
nouveau apres modification desdits libelles.
Un tel dictionnaire est particulierement avantageux lors de la conception d'un o logiciel, en particulier au niveau des interfaces utilisateur ou il faut intervenir sur des ressources graphiques generees par des environnements de developpement integres (IDE) tels que Visual C++ ou Jbuilder (Marques deposees). Ainsi, grace a ['invention, apres la definition de libelles dans une langue par defaut, et apres compilation du code source correspondent auxdits libelles, il suffit de creer autant de ressources linguistiques (ou dictionnaires) que de langues requises par les utilisateurs qui vent avantageusement susceptibles d'etre modifiees eVou enrichies de fa,con dynamique (par exemple traduction o manuelle eVou par ordinateur) sans modification du code source eVou compilation. La presente invention a egalement pour objet un dispositif de traitement de libelles comprenant: - des moyens de memorisation propres a loger un dictionnaire apte a comprendre une pluralite de libelles associes chacun a une cle formant contexte; - une interface d'entree apte a recevoir une requete comprenant un libelle par defaut, et une cle concernant le libelle; - des moyens de traitement propres, en reponse a la requete, a verifier si la o cle existe dans le dictionnaire, et, en cas de verification positive, a traiter le libelle correspondent du dictionnaire, tandis qu'en cas de verification negative, a prendre le libelle par defaut de la requete et a enrichir le
dictionnaire par un nouveau libelle associe a ladite cle.
s L'invention a egalement pour objet un produit programme d'ordinateur comprenant des codes d'instruction apses a etre executes sur un ordinateur afin d'assurer les fonctions techniques suivantes: i) en reponse a une requete comprenant un libelle par defaut et une cle concernant le libelle, verifier si la cle existe dans un dictionnaire; ii) en cas de verification positive, traiter le libelle correspondent du dictionnaire, tandis qu'en cas de verification negative, prendre le libelle par defaut de la
req uete et en rich i r le d iction nai re pa r u n no uvea u li bei le associe a lad ite cle.
D'autres caracteristiques et avantages de ['invention appara^rtront a la lumiere
de la description detaillee et des dessins dans lesquels:
- la figure 1 represente schematiquement un organigramme illustrant le procede de traitement selon ['invention; so - la figure 2 represente schematiquement une bo^'te de dialogue ecrite en une langue par defaut; la figure 3 represente 1'interface graphique d'une bo^'te de dialogue partiellement traduite selon le procede selon ['invention; et À Ia figure 4 represente la traduction complete des libelles de la bo^'te de
dialogue conformement au procede selon ['invention.
La presente invention est decrite ci-apres sur la base d'un exemple d'un logiciel comprenant une bo^'te de dialogue graphique. Bien evidemment, I'invention
s'applique a tout autre type de logiciel.
En reference a la figure 1, I'organigramme du procede de traitement de libelles
selon ['invention comprend les etapes suivantes.
Suivant l'etape E1, des ressources linguistiques RL vent initialisees dans un
dictionnaire multilingue DIC.
Les ressources linguistiques RL comprennent n (ici n = 4 a titre d'exemple) s groupes respectivement associes a une langue. Le choix de la langue
s'effectue a ['aide d'une variable "m_languageCode".
Par exemple, la ressource linguistique fran,caise est ici designee en RLFR, la ressource linguistique anglaise en RL-EN, la ressource linguistique allemande o en RL-DE et la ressource linguistique italienne en RL-IT. En correspondence a ces ressources, la variable "m_languageCode" est par exemple respectivement
FR, EN, DE, IT.
Chacune des ressources RL-FR, RL-EN, RL-DE et RL-IT est chargee dans ie dictionnaire multilingue DIC. Chaque libelle est identifie par une cle formant contexte. Par exemple la cle relative au titre "CString title" de la boite de dialogue
comprend la chane de caractere par defaut "Default dialog title".
Ainsi, le dictionnaire multiiingue DIC comprend une pluralite de libelles chacun associe a une langue et a une cle formant contexte. En pratique les libelles vent contenus dans des fichiers nommes "LABELS" accompagnes du code relatif a
la langue.
En reference a la figure 2, la bo^te de dialogue graphique constituent le logiciel s a traiter SO comprend quatre libelles references respectivement par Tl, CH, VA1 et VA2 et dont les valeurs par defaut vent "Default dialog title" "edit field", "OK" et "cancel". Ces libelles a traiter vent identifies respectivement par les chaines de caracteres "CString-title", "CString editField", "CString Okbtn", et
"CString cancelbtn".
Selon l'etape E2, lorsqu'un utilisateur souhaite traduire ou modifier un libelle, il realise une requete qui contient le nom de la cle "CString" et le libelle par defaut
associe a la cle.
Selon ['invention, en reponse a la requete, le procede consiste a verifier si la cle correspondante de nom "CString..." existe dans le dictionnaire DIC (etape E3), et en cas de verification positive, le procede traite le libelle correspondent du dictionnaire (etape E4), tandis qu'en cas de verification negative, le procede prend le libelle par defaut de la requete et enrichit le dictionnaire par un
nouveau libelle associe a la cle (etape E5).
11 est a remarquer que l'enrichissement du dictionnaire selon ['invention peut etre realise a partir d'un dictionnaire initialement vice, I'enrichissement
s'effectuant en cas de requete infructueuse.
Dans l'exemple d'une bofte de dialogue redigee en environnement Microsoft Visual C++, I'exemple se limite a l'apparence d'une interface graphique telle que
celle representee en figure 2.
so Bien evidemment, le procede selon ['invention ne se limite pas a une telle interface graphique mais peut s'appliquer a tout type de libelles (message,
fichier produit, menu, entree/sortie, etc...).
Les valeurs par dbfaut des libelies vent donnees dans cet exemple en anglais et les ressources linguistiques associees vent stockees dans des fichiers nommes label.fr pour le fran,cais, label.en pour l'anglais et label.de pour
l'allemand, etc..
En reference a la figure 3, la requete de traduction des libelles en franpais de la bo^'te de dialogue SO a pour resultat la traduction des libelles Tl et CH en fran,cais tandis que les libelles VA1 et VA2 vent maintenus dans la langue par defaut car, dans l'exemple de la figure 3, ces libelles VA1 et VA2 identifies par
o leur cle respective ne vent pas contenus dans le dictionnaire DIC.
Le resultat du programme de traitement du libelle selon ['invention est avantageusement ecrit dans un fichier, traitable par un humain afin d'etre traduit correctement. A la fermeture du programme de traitement selon ['invention, un fichier de
ressources linguistiques est construit, par exemple ici un fichier label. fr.
Apres revision du dictionnaire, c'est-a-dire traduction des libelles VA1 et VA2 o par exemple par un operateur humain, le programme de traitement selon ['invention a pour resultat une traduction complete des libelles comme decrit en
reference a la figure 4.
Pour rajouter une autre langue, il convient d'indiquer un code langue associe et
s de constituer des ressources linguistiques (dictionnaires) comme decrit ci-
avant.
Le procede comporte plusieurs avantages.
o Un des avantages consiste notamment lors du developpement du logiciel. En effet, dans ie cas d'un logiciel de taille importante, par exemple plusieurs dizaines ou centaines de milkers de lignes de code, le nombre de libelles s'accro'^t tres rapidement. II depend aussi du nombre de programmeurs ou du nombre de versions simultanees du logiciel ou encore d'autres facteurs plus subjectifs. On arrive ainsi rapidement a des milkers de libelles plus ou moins
controles ou identifies.
s Face a ce probleme le procede selon ['invention permet d'imposer une discipline d'utilisation du libelle et garantit aux utilisateurs de conna^tre tous les libelles, ce qui permet de centraliser tous les libelles par le dictionnaire. On obtient ainsi une harmonisation du logiciel, ce qui permet notamment de traduire les libelles du logiciel dans une langue donnee sans en oublier o un seul. 11 en resulte un gain de productivite et une homogeneite accrue du logiciel. Un autre avantage du procede selon ['invention reside dans le fait de permettre aux utilisateurs ou aux integrateurs d'adapter le logiciel a leurs besoins sans devoir recompiler le logiciel. 11 n'est done pas necessaire de disposer des codes
source du logiciel pour proceder a de telles adaptions.
Ainsi, grace a ['invention, il est possible d'ajouter en outre de nouvelles langues qui ntont pas ete prevues lors du developpement initial ou de modifier toute ou
o partie des libelles d'une langue donnee.
Sur le plan materiel, le procede de traitement selon ['invention peut etre execute sur tout ordinateur UT equipe de moyen de memorisation apte a stocker le dictionnaire. Le traitement peut etre realise le cas echeant dans une machine
s de traitement embarquee.
Claims (6)
1. ProcAdA de haitement de libenAs apte comprendre les Atapes suivantes: 0 prAvoir au moins un dlionnaire (DIC) comprenant une pluraNtA de MbeNds assocs chacun une dA rmant contee, r u u mpna l6 r d- e nma le libell6, ) en ponse la quAte, vAdOer la 6 exte dans dilonnaim (DIC), o 1 en css de vAd[lon posTi, tmr le NbeMA cospondant du nnaim, tandis qu'en cas de vArification nAgative, pndre le libelld par dAfaut de la
requAte et enrichlr le dichonnaire par un nouveau UbeMA associd ladite.
2. ProcAdA selon la revendicadon 1, caradsA en ce qu]1 est prAvu d'associer au mos une ngue au onnaim (DIC) dmn de ngue du leMA par d6ut, ce qui permet de traduire ledit libelld par dAfaut dans la langue
du dictionnaire.
3. ProcAdA selon la revendicadon 1, caract6dsA en ce que [Atape
o d'enrichissement du dicdonnaire comprend une Atape d'apprendssage.
4. ProcAdA selon la mvendicadon 1, cara6hsA en ce que dicdonnaire (DIC) est inidalement vide et en ce que ledk dlctionnaire est susceptible d'6tre
endchi en cas de hOcadon nAgadve selon l'6tape i8.
de -e de l mpna: - des moyens de mAmodsadon (DIC) propres loger un dicdonnaire apte comprendre une pluraMtA de NbeU6s assoclAs chacun une clA formant contexte, - une inteace d'entrde apte recevoir une requdte comprenant un bbeMA par dAfaut, et une cld concernant le libell6, - des moyens de traitement (UT) propres, en reponse a la requete, a verifier si la cle existe dans le dictionnaire, et en cas de verification positive, a traiter le libelle correspondent du dictionnaire, tandis qu'en cas de verification negative, a prendre le libelle par defaut de la requete et a enrichir le dictionnaire par un nouveau libelle associe a ladite cle.
6. Dispositif selon la revendication 5 caracterise en ce qu'il est embarque.
7. Produit programme d'ordinateur comprenant des codes d'instructions apses a o etre executes sur un ordinateur afin d'assurer les fonctionnalites techniques suivantes: a) en reponse a une requete comprenant un libelle par defaut et une cle concernant ledit libelle, verifier si la cle existe dans un dictionnaire (DIC), et b) en cas de verification positive, traiter le libelle correspondent du dictionnaire, tandis qu'en cas de verification negative, prendre le libelle par defaut de la requete et enrichir le dictionnaire par un nouveau libelle
associe a ladite cle.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0204983A FR2838842B1 (fr) | 2002-04-22 | 2002-04-22 | Procede et dispositif de traitement de libelles, et produit programme d'ordinateur |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0204983A FR2838842B1 (fr) | 2002-04-22 | 2002-04-22 | Procede et dispositif de traitement de libelles, et produit programme d'ordinateur |
Publications (2)
Publication Number | Publication Date |
---|---|
FR2838842A1 true FR2838842A1 (fr) | 2003-10-24 |
FR2838842B1 FR2838842B1 (fr) | 2004-07-23 |
Family
ID=28686229
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR0204983A Expired - Fee Related FR2838842B1 (fr) | 2002-04-22 | 2002-04-22 | Procede et dispositif de traitement de libelles, et produit programme d'ordinateur |
Country Status (1)
Country | Link |
---|---|
FR (1) | FR2838842B1 (fr) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021040855A1 (fr) * | 2019-08-30 | 2021-03-04 | Microsoft Technology Licensing, Llc | Stockage et récupération efficaces des données de ressource |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4365315A (en) * | 1980-09-08 | 1982-12-21 | Kearney & Trecker Corporation | System for multilingual communication of computer-specified aural or visual control messages in an operator-designated language |
US6240213B1 (en) * | 1997-12-20 | 2001-05-29 | Daewoo Electronics Co., Ltd. | Data compression system having a string matching module |
US6320523B1 (en) * | 1999-07-30 | 2001-11-20 | Unisys Corporation | Method and apparatus for reducing the time required for compressing data |
-
2002
- 2002-04-22 FR FR0204983A patent/FR2838842B1/fr not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4365315A (en) * | 1980-09-08 | 1982-12-21 | Kearney & Trecker Corporation | System for multilingual communication of computer-specified aural or visual control messages in an operator-designated language |
US6240213B1 (en) * | 1997-12-20 | 2001-05-29 | Daewoo Electronics Co., Ltd. | Data compression system having a string matching module |
US6320523B1 (en) * | 1999-07-30 | 2001-11-20 | Unisys Corporation | Method and apparatus for reducing the time required for compressing data |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021040855A1 (fr) * | 2019-08-30 | 2021-03-04 | Microsoft Technology Licensing, Llc | Stockage et récupération efficaces des données de ressource |
US11210465B2 (en) | 2019-08-30 | 2021-12-28 | Microsoft Technology Licensing, Llc | Efficient storage and retrieval of localized software resource data |
CN114303152A (zh) * | 2019-08-30 | 2022-04-08 | 微软技术许可有限责任公司 | 对资源数据的有效存储和取回 |
Also Published As
Publication number | Publication date |
---|---|
FR2838842B1 (fr) | 2004-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11567759B1 (en) | Generating source code from binary files | |
RU2419838C2 (ru) | Расширяемый xml-формат и объектная модель для данных локализации | |
CN108345457B (zh) | 一种对程序源代码自动生成功能描述性注释的方法 | |
US20030200532A1 (en) | System and method for sharing reusable code base | |
US7949995B2 (en) | Visual programming method | |
US20010018764A1 (en) | Method and apparatus for translating between source and target code | |
CN108694443A (zh) | 基于神经网络的语言模型训练方法和装置 | |
US20110144972A1 (en) | Method and System for Generating a Localized Software Product | |
FR2907933A1 (fr) | Procede pour la creation d'une description des exigences pour un systeme incorpore. | |
US8612490B1 (en) | Sharing of instructions across model boundaries | |
EP3296866B1 (fr) | Procédé mis en oeuvre par ordinateur qui présente des applications de type logiciel à partir de spécifications de conception | |
EP1929399A2 (fr) | Systeme et procede de creation et d'utilisation d'instances d'objet graphique dans un environnement de charte d'etat | |
US20060206804A1 (en) | Reversible logic for widget and markup language generation | |
JPH11513512A (ja) | ディジタル信号プロセッサの製造方法 | |
CN108363702A (zh) | 翻译方法和设备以及翻译系统 | |
CN1991753A (zh) | 应用模板创建和管理的方法和系统 | |
CN109447256A (zh) | 基于FPGA的Tensorflow系统加速的设计方法 | |
JP2001522084A (ja) | 機械語記述からisaシミュレータとアセンブラを生成する方法 | |
US6823313B1 (en) | Methodology for developing interactive systems | |
CN117795474A (zh) | 从自然语言文本合成领域专用语言的源代码 | |
FR2838842A1 (fr) | Procede et dispositif de traitement de libelles, et produit programme d'ordinateur | |
CN117113080A (zh) | 数据处理和代码处理方法、装置、一体机和存储介质 | |
Hunt | Beginner's Guide to Kotlin Programming | |
CN115658921A (zh) | 一种基于预训练语言模型的开放域科学知识发现方法和装置 | |
US10318937B2 (en) | Generating a product model |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PLFP | Fee payment |
Year of fee payment: 15 |
|
PLFP | Fee payment |
Year of fee payment: 16 |
|
PLFP | Fee payment |
Year of fee payment: 17 |
|
ST | Notification of lapse |
Effective date: 20191205 |