f2a41c2bfc8dc1ebcfe83fece5b7b9ed9058b8fc
[debian/jabref.git] / src / help / fr / CustomExports.html
1 <html xmlns="http://www.w3.org/1999/xhtml">
2
3 <body text="#275856">
4     <basefont size="4" color="#2F4958" face="arial" />
5
6     <h1>Filtres d'exportation personnalis&eacute;s</h1>
7
8     <p>JabRef vous permet de d&eacute;finir et d'utiliser vos
9     propres filtres d'exportation de la m&ecirc;me mani&egrave;re
10     que les filtres d'exportation standards. Un filtre
11     d'exportation est d&eacute;fini par un ou plusieurs <i>fichiers
12     gabarit</i> qui, avec l'aide d'un certain nombre de routines
13     internes de formatage, d&eacute;finissent le format des
14     fichiers export&eacute;s. Vos fichiers gabarit doivent
15     &ecirc;tre pr&eacute;par&eacute;s avec un &eacute;diteur de
16     texte &agrave; l'ext&eacute;rieur de JabRef.</p>
17
18     <h2>Ajout d'un filtre d'exportation personnalis&eacute;</h2>
19
20     <p>La seule obligation pour avoir un filtre d'exportation
21     valide est l'existence d'un fichier avec l'extension
22     <b>.layout</b>. Pour ajouter un nouveau filtre d'exportation,
23     on utilise le menu <b>Options -&gt; G&eacute;rer les
24     exportations personnalis&eacute;es</b>, et on clique sur
25     <b>Ajouter nouvelle</b>. Une nouvelle boite de dialogue
26     appara&icirc;t et vous permet de sp&eacute;cifier le nom du
27     nouveau filtre d'exportation (ce nom appara&icirc;tra ensuite
28     comme l'un des choix du menu d&eacute;roulant "Type de fichier"
29     de la fen&ecirc;tre de dialogue affect&eacute;e au menu
30     <b>Fichier -&gt; Exporter</b> de la fen&ecirc;tre principale de
31     JabRef), le chemin du fichier <b>.layout</b>, et l'extension de
32     fichier pr&eacute;f&eacute;r&eacute;e par le filtre
33     d'exportation (c'est cette extension qui sera
34     sugg&eacute;r&eacute;e dans la boite de dialogue lorsque le
35     filtre sera utilis&eacute;).</p>
36
37     <h2>Cr&eacute;ation d'un filtre d'exportation</h2>
38
39     <p>Pour voir des exemples de constitution de filtres
40     d'exportation, recherchez le r&eacute;pertoire contenant les
41     fichiers gabarit des filtres d'exportation standards sur notre
42     page de t&eacute;l&eacute;chargement.</p>
43
44     <h3>Les fichiers gabarit</h3>
45
46     <p>On suppose que l'on veut cr&eacute;er un filtre
47     d'exportation pour une sortie HTML.</p>
48
49     <p>Bien que le filtre d'exportation ne n&eacute;cessite qu'un
50     seul fichier <b>.layout</b>, qui dans ce cas pourrait s'appeler
51     <i>html.layout</i>, vous pouvez d&eacute;sirer ajouter deux
52     autres fichiers appel&eacute;s <i>html.begin.layout</i> et
53     <i>html.end.layout</i>. Le premier contient le d&eacute;but de
54     la sortie et le dernier la fin. JabRef recherche ces deux
55     fichiers quelque soit le fichier d'exportation utilis&eacute;
56     et, s'il les trouve, les recopie tel quel dans la sortie avant
57     et apr&egrave;s l'&eacute;criture des entr&eacute;es
58     individuelles.</p>
59
60     <p>Il faut noter que ces fichiers doivent &ecirc;tre dans le
61     m&ecirc;me r&eacute;pertoire que le fichier <i>html.layout</i>,
62     et que leur nom doit comporter <b>.begin</b> pour l'un et
63     <b>.end</b> pour l'autre.</p>
64
65     <p>Dans notre exemple de fichier d'exportation, cela pourrait
66     ressembler &agrave;</p>
67
68     <p><i>html.begin.layout</i>&nbsp;:<br />
69     <code>&lt;HTML&gt;<br />
70      &lt;BODY&gt; text="#275856"&gt;<br />
71     &lt;basefont size="4" color="#2F4958"
72     face="arial"&gt;</code></p>
73
74     <p><i>html.end.layout</i>&nbsp;:<br />
75     <code>&lt;/BODY&gt;<br />
76      &lt;/HTML&gt;</code></p>
77
78     <p>Le fichier <i>html.layout</i> fournit le gabarit par
79     d&eacute;faut pour l'exportation d'une seule entr&eacute;e. Si
80     vous devez utiliser diff&eacute;rents gabarits pour les
81     diff&eacute;rentes entr&eacute;es, vous pouvez le faire en
82     ajoutant des fichiers <b>.layout</b> sp&eacute;cifiques. Les
83     fichiers doivent aussi &ecirc;tre dans le m&ecirc;me
84     r&eacute;pertoire que le gabarit principal et ils sont
85     nomm&eacute;s en ins&eacute;rant <b>.entrytype</b> dans le nom
86     du fichier gabarit principal. Le nom de l'entr&eacute;e doit
87     &ecirc;tre en minuscules. Dans notre exemple, on peut vouloir
88     ajouter un gabarit diff&eacute;rent pour les livres et cela se
89     fera via le fichier <i>html.book.layout</i>. Pour une
90     th&egrave;se, on ajoutera le fichier
91     <i>html.phdthesis.layout</i>. Ces fichiers sont similaires au
92     gabarit principal, si ce n'est qu'ils sont utilis&eacute;s pour
93     des entr&eacute;es sp&eacute;cifiques. A noter que le gabarit
94     g&eacute;n&eacute;ral peut ais&eacute;ment &ecirc;tre
95     cr&eacute;&eacute; suffisamment g&eacute;n&eacute;ral pour
96     &ecirc;tre utilisable avec la plupart des entr&eacute;es dans
97     la majorit&eacute; des filtres d'exportation.</p>
98
99     <h3>Le format des fichiers gabarit</h3>
100
101     <p>Les fichiers gabarit utilisent un simple langage de balisage
102     dans lequel les commandes sont identifi&eacute;es par
103     l'antislash (\) les pr&eacute;c&eacute;dant. Tout texte non
104     identifi&eacute; comme faisant partie d'une entr&eacute;e est
105     recopi&eacute; tel quel dans le fichier de sortie.</p>
106
107     <h3>Les commandes relatives aux champs</h3>
108
109     <p>Les mots pr&eacute;c&eacute;d&eacute;s d'un antislash, par
110     exemple <code>\author</code>, <code>\editor</code>,
111     <code>\title</code> ou <code>\year</code>, sont
112     interpr&eacute;t&eacute;s comme des r&eacute;f&eacute;rences
113     aux champs correspondants et le contenu du champ est
114     copi&eacute; directement dans la sortie.</p>
115
116     <h3>Les formateurs de champs</h3>
117
118     <p>Souvent, on a besoin de faire subir au contenu d'un champ un
119     pr&eacute;-traitement avant de le copier dans le fichier de
120     sortie. Cela est r&eacute;alis&eacute; en utilisant un
121     <i>formateur de champ</i> - une classe java contenant une seule
122     m&eacute;thode qui manipule le contenu du champ.</p>
123
124     <p>Le formateur est utilis&eacute; en ins&eacute;rant la
125     commande <code>\format</code> suivie du nom du formateur entre
126     crochets et du nom du champ entre accolades, par exemple</p>
127
128     <p><code>\format[ToLowerCase]{\author}</code></p>
129
130     <p>Vous pouvez aussi indiquer plusieurs formateurs
131     s&eacute;par&eacute;s par des virgules. Ils seront alors
132     appel&eacute;s s&eacute;quentiellement de la gauche vers la
133     droite, par exemple&nbsp;:</p>
134
135     <p><code>\format[ToLowerCase,HTMLChars]{\author}</code></p>
136
137     <p>va d'abord appliquer le formateur <b>ToLowerCase</b> puis
138     <b>HTMLChars</b> sur le r&eacute;sultat. Vous pouvez lister un
139     nombre arbitraire de formateurs de cette mani&egrave;re.</p>
140
141
142     <p>L'argument des formateurs, &agrave; l'int&eacute;rieur des accolades,
143     n'est pas obligatoirement une commande de champ. Ce peut aussi
144     &ecirc;tre du texte normal qui sera ensuite pass&eacute; aux formateurs
145     au lieu des contenus d'un champ. Cela peut &ecirc;tre utilis&eacute; pour
146     certains formateurs, par ex. le formateur CurrentDate (d&eacute;crit
147     ci-dessous).</p>
148
149     <p>Certains formateurs prennent un argument suppl&eacute;mentaire, sp&eacute;cifi&eacute; entre parenth&egrave;ses
150     imm&eacute;diatement apr&egrave;s le nom du formateur. L'argument peut &ecirc;tre mis
151     entre crochets, ce qui est n&eacute;cessaire s'il inclut les caract&egrave;res de parenth&egrave;ses.
152     Par exemple, <code>\format[Replace("\s,_")]{\journal}</code> appelle
153     le formateur <b>Replace</b> avec l'argument <b>\s,_</b> (ce qui remplace
154     tous les espaces par des soulignets dans le champ "field").</p>
155
156
157     <p>See below for a list of built-in export formatters.</p>
158
159
160     <h3>Les sorties conditionnelles</h3>
161
162     <p>Certaines informations dans les sorties ne prennent de sens
163     que si un certain champ est utilis&eacute;. Par exemple, disons
164     que l'on veuille faire suivre le nom de l'&eacute;diteur par le
165     texte <code>(Ed.)</code>. Cela peut &ecirc;tre
166     r&eacute;alis&eacute; avec le code suivant&nbsp;:</p>
167
168     <p><code>\format[HTMLChars,AuthorFirstFirst]{\editor}
169     (Ed.)</code></p>
170
171     <p>Cependant, si le champs <code>editor</code> n'a pas
172     &eacute;t&eacute; renseign&eacute; - il n'a pas de sens pour
173     l'entr&eacute;e export&eacute;e - le texte <code>(Ed.)</code>
174     doit &ecirc;tre ignor&eacute;. Cela peut &ecirc;tre
175     effectu&eacute; en utilisant les commandes <code>\begin</code>
176     et <code>\end</code>&nbsp;:</p>
177
178     <p><code>\begin{editor}<br />
179     \format[HTMLChars,AuthorFirstFirst]{\editor} (Ed.)<br />
180      \end{editor}</code></p>
181
182     <p>Les commandes <code>\begin</code> et <code>\end</code>
183     assure que le texte contenu entre les deux commandes ne sera
184     imprim&eacute; que si et seulement si le champ
185     sp&eacute;cifi&eacute; entre accolades est renseign&eacute;
186     dans l'entr&eacute;e que l'on veut exporter.</p>
187
188     <p>Un bloc conditionnel peut aussi d&eacute;pendre de plus d'un champ. Dans ce cas,
189     le contenu du bloc est imprim&eacute; uniquement si tous les champs sont d&eacute;finis. Pour cr&eacute;er
190     un tel bloc, donnez simplement la liste des champs s&eacute;par&eacute;s par des points-virgules. Par exemple,
191     pour imprimer du texte uniquement si &agrave; la fois les champs <code>year</code> et <code>month</code> sont renseign&eacute;s, utilisez
192     un bloc tel que celui-ci&nbsp;:</p>
193
194     <p><code>\begin{year;month}Month: \format[HTMLChars]{\month}\end{year;month}</code></p>
195
196     <p>qui imprimera "Month: " plus le contenu du champ <code>month</code>, mais
197     seulement si le champ <code>year</code> est lui-aussi d&eacute;fini.</p>
198
199     <p><b>Note&nbsp;:</b> L'utilisation des commandes
200     <code>\begin</code> et <code>\end</code> est une mani&egrave;re
201     astucieuse de cr&eacute;er des gabarits qui sont communs
202     &agrave; une grande vari&eacute;t&eacute; d'entr&eacute;es.</p>
203
204
205     <h3>Les sorties group&eacute;es</h3>
206
207     <p>Si vous d&eacute;sirez s&eacute;parer vos entr&eacute;es en
208     groupes bas&eacute;s sur un certain champ, vous pouvez utiliser
209     les commandes de sorties group&eacute;es. La sortie
210     group&eacute;e est assez similaire aux sorties conditionnelles,
211     except&eacute; que le texte sp&eacute;cifi&eacute; n'est
212     imprim&eacute; que si le champ indiqu&eacute; dans les
213     accolades change de valeur.</p>
214
215     <p>Par exemple, on suppose que l'on d&eacute;sire faire des
216     groupes &agrave; partir de mots-clefs. Avant l'exportation, on
217     s'assure que les entr&eacute;es sont tri&eacute;es selon les
218     mots-clefs. Ensuite, on utilise les commandes suivantes pour
219     les grouper par mot-clefs&nbsp;:</p>
220     
221     <p><code>\begingroup{keywords}New Category:
222     \format[HTMLChars]{\keywords}<br />
223      \endgroup{keywords}</code></p>
224
225     <h2>Partage de votre travail</h2>
226
227     <p>Avec les fichiers gabarit externes, il est relativement
228     simple de partager des formats d'exportation entre
229     utilisateurs. Si vous &eacute;crivez un filtre d'exportation
230     pour un format non support&eacute; par JabRef, ou si vous
231     am&eacute;liorez un filtre d&eacute;j&agrave; existant, nous
232     vous encourageons &agrave; d&eacute;poser votre travail sur
233     notre page SourceForge.net. La m&ecirc;me chose est possible
234     pour les nouvelles classes de formateur que vous avez
235     &eacute;crites. Nous serons heureux de distribuer une
236     collection des fichiers gabarit soumis ou de les ajouter
237     &agrave; la s&eacute;rie des filtres d'exportation standard ou
238     des formateurs.</p>
239
240     <p>A partir de JabRef 2.4b1 vous pouvez aussi empaqueter votre
241     format d'exportation ("ExportFormat") ou formateur de gabarit
242     ("LayoutFormatter") comme un greffon ("plug-in"). Si vous le
243     faites, vous pouvez fournir un unique fichier zip &agrave; d'autres
244     utilisateurs afin qu'ils utilisent votre format d'exportation.
245     Pour un example, t&eacute;l&eacute;charger le source de JabRef et jeter un
246     oeil au r&eacute;pertoire <code>src/plugins/</code>. N'h&eacute;sitez pas
247     &agrave; participer aux forums sur Sourceforge, puisque nous ne disposons
248     pas encore d'une documentation volumineuse.</p>
249
250
251     <h2>Formateurs d'exportation inclus</h2>
252
253     <p>JabRef fournit la s&eacute;rie suivante de formateurs, certains
254     d&eacute;pendant des autres&nbsp;:</p>
255
256     <ul>
257         
258         <li><code>AuthorAbbreviator</code> ou <code>AuthorLastFirstAbbreviator</code>&nbsp;:
259         abr&egrave;ge les pr&eacute;noms de tous les auteurs. Ce formateur renvoie les noms avec
260         le nom propre en premier. Faire suivre ce formateur d'<code>AuthorFirstFirst</code> pour
261         avoir les noms abr&eacute;g&eacute;s avec les initiales en premier.</li>
262
263         <li><code>AuthorAndsCommaReplacer</code>&nbsp;: remplace
264         "and" entre les noms par une virgule (",") et "&amp;" entre
265         les deux derniers.</li>
266
267         <li><code>AuthorAndsReplacer</code>&nbsp;: remplace "and"
268         par ";" entre les premiers noms et par "&amp;" entre les
269         deux derniers.</li>
270
271         <li><code>AuthorFirstFirst</code>&nbsp;: formate le contenu
272         des champs author/editor en mettant les pr&eacute;noms en
273         premier.</li>
274
275         <li><code>AuthorFirstFirstCommas</code>&nbsp;: formate le
276         contenu des champs author/editor en mettant les
277         pr&eacute;noms en premier, des virgules comme
278         s&eacute;parateurs et "and" entre les deux derniers noms.</li>
279
280         <li><code>AuthorFirstLastOxfordCommas</code>&nbsp;:
281         similaire &agrave; <code>AuthorFirstLastCommas</code>,
282         except&eacute; que le "and" entre les deux derniers noms
283         est pr&eacute;c&eacute;d&eacute; d'une virgule.</li>
284
285         <li><code>AuthorFirstAbbrLastCommas</code>&nbsp;: formate le
286         contenu des champs author/editor en mettant les
287         pr&eacute;noms abr&eacute;g&eacute;s en premier, des virgules comme
288         s&eacute;parateurs et "and" entre les deux derniers noms.</li>
289
290         <li><code>AuthorFirstAbbrLastOxfordCommas</code>&nbsp;:
291         similaire &agrave; <code>AuthorFirstAbbrLastCommas</code>,
292         except&eacute; que le "and" entre les deux derniers noms
293         est pr&eacute;c&eacute;d&eacute; d'une virgule.</li>
294
295         <li><code>AuthorLastFirst</code>&nbsp;: formate le contenu
296         des champs author/editor en mettant les noms de famille en
297         premier.</li>
298
299         <li><code>AuthorLastFirstAbbrCommas</code>&nbsp;: formate le
300         contenu des champs author/editor en mettant les noms en premier suivis
301         du pr&eacute;nom abr&eacute;g&eacute;, en utilisant des virgules comme
302         s&eacute;parateurs et "and" entre les deux derniers noms.</li> 
303  
304         <li><code>AuthorLastFirstAbbrOxfordCommas</code>&nbsp;: 
305         similaire &agrave; <code>AuthorLastFirstAbbrCommas</code>,
306         except&eacute; que le "and" entre les deux derniers noms
307         est pr&eacute;c&eacute;d&eacute; d'une virgule.</li>
308        
309         <li><code>AuthorLastFirstCommas</code>&nbsp;: formate le contenu
310         des champs author/editor en mettant les noms de famille en
311         premier, des virgules comme s&eacute;parateurs et "and"
312         entre les deux derniers noms.</li> 
313
314         <li><code>AuthorLastFirstOxfordCommas</code>&nbsp;:
315         similaire &agrave; <code>AuthorLastFirstCommas</code>,
316         except&eacute; que le "and" entre les deux derniers noms
317         est pr&eacute;c&eacute;d&eacute; d'une virgule.</li>
318
319         <li><code>AuthorLF_FF</code>&nbsp;: formate
320         les champs author/editor avec le nom de famille en premier pour le
321         premier auteur et le pr&eacute;nom en premier pour les auteurs restants.
322         Renvoie les noms s&eacute;par&eacute;s par des "and".</li>
323
324         <li><code>AuthorLF_FFAbbr</code>&nbsp;: comme <code>AuthorLF_FF</code>,
325         mais abr&egrave;ge les pr&eacute;noms.</li>
326
327         <li><code>AuthorNatBib</code>&nbsp;: Formats des noms
328         d'auteurs dans le style NatBib, avec les noms propres
329         s&eacute;par&eacute;s par "and" s'il y a deux auteurs, ou
330         le premier nom suivi de "et al." s'il y en a plus de
331         deux.</li>
332
333         <li><code>AuthorOrgSci</code>&nbsp;: premier auteur selon
334         "nom, pr&eacute;nom" et tous les autres selon
335         "pr&eacute;nom nom". Les pr&eacute;noms sont
336         abr&eacute;g&eacute;s.</li>
337
338         <li><code>CreateDocBookAuthors</code>&nbsp;: formate le
339         contenu du champ author selon le style DocBook.</li>
340
341         <li><code>CreateDocBookEditors</code>&nbsp;: &agrave;
342         documenter.</li>
343
344         <li><code>CurrentDate</code>&nbsp;: renvoie la date
345         actuelle. Sans argument, ce formateur renvoie la date et
346         l'heure actuelle au format "yyyy.MM.dd hh:mm:ss z" (date,
347         heure et fuseau horaire). En donnant une cha&icirc;ne de
348         format diff&eacute;rent comme argument, le format de la
349         date peut-&ecirc;tre adapt&eacute;. Par exemple,
350         <code>\format[CurrentDate]{yyyy.MM.dd}</code> renverra
351         uniquement la date, comme par exemple 2005.11.30.</li>
352         
353         <li><code>Default</code>&nbsp;: prend un seul argument, qui sert comme
354         valeur par d&eacute;faut. Si la cha&icirc;ne &agrave; formatter
355         n'est pas vide, elle est renvoy&eacute;e sans changement.
356         Si elle est vide, la valeur par d&eacute;faut est renvoy&eacute;e.
357         Par exemple,
358         <code>\format[Default(unknown)]{\year}</code>
359         renverra l'ann&eacute;e de l'entr&eacute;e si elle existe,
360         et "unknown" si l'ann&eacute;e n'est pas pr&eacute;cis&eacute;e.</li>
361        
362         <li><code>FileLink(TypeDeFichier)</code>&nbsp;: sans argument, ce formateur renvoie
363         le premier lien apparaissant dans le champ. Pour fonctionner, ce formateur doit
364         &ecirc;tre aliment&eacute; par le contenu du champ "file" (fichier).<br>
365         Ce formateur prend comme argument optionnel l'extension du type de fichier externe
366         sp&eacute;cifi&eacute; entre parenth&egrave;ses apr&egrave;s le nom du formateur. Par exemple,
367         <code>\format[FileLink(pdf)]{\file}</code> sp&eacute;cifie <code>pdf</code> comme un
368         argument. Quand un argument est fourni, le formateur s&eacute;lectionne le premier lien
369         vers un fichier du type sp&eacute;cifi&eacute;. Dans l'exemple, le chemin vers le premier lien PDF
370         sera renvoy&eacute;.</li>
371
372         <li><code>FirstPage</code>&nbsp;: renvoie la premi&egrave;re page du champ "pages", si initialis&eacute;.
373         Par exemple, si le champ "pages" est initialis&eacute; avec "345-360" ou "345--360",
374         ce formatteur renverra "345".</li>
375
376         <li><code>FormatChars</code>&nbsp;: remplace les 
377         caract&egrave;res sp&eacute;ciaux sp&eacute;cifiques
378         &agrave; TeX (par exemple&nbsp;: {\^a} ou {\"{o}}) par leur
379         repr&eacute;sentation Unicode.</li>
380
381         <li><code>FormatPagesForHTML</code>&nbsp;: remplace "--"
382         par "-".</li>
383
384         <li><code>FormatPagesForXML</code>&nbsp;: remplace "--" par
385         un tiret XML.</li>
386         
387         <li><code>GetOpenOfficeType</code>&nbsp;: renvoie le num&eacute;ro
388         utilis&eacute; par le syst&egrave;me bibliographique d'OpenOffice.org
389         (versions 1.x et 2.x) pour d&eacute;finir le type
390         de cette &eacute;e.</li>
391         
392         <li><code>HTMLChars</code>&nbsp;: remplace les
393         caract&egrave;res sp&eacute;ciaux sp&eacute;cifiques
394         &agrave; TeX (par exemple&nbsp;: {\^a} ou {\"{o}}) par leur
395         repr&eacute;sentation HTML, et traduit les commandes LaTeX
396         \emph, \textit, \textbf dans leurs &eacute;quivalents HTML.</li>
397
398         <li><code>HTMLParagraphs</code>&nbsp;: interpr&egrave;te
399         deux retours-chariot cons&eacute;cutifs (comme \n \n) comme
400         le d&eacute;but d'un nouveau paragraphe et cr&eacute;e les
401         balises html de paragraphes appropri&eacute;es.</li>
402
403         <li><code>IfPlural</code>&nbsp;: renvoie son premier argument si le
404         champ d'entr&eacute;e ressemble &agrave; une liste d'auteurs avec deux
405         noms ou plus, sinon renvoie son second argument. Par exemple,
406         <code>\format[IfPlural(Eds.,Ed.)]{\editor}</code> renverra "Eds." s'il y
407         a plus d'un &eacute;diteur et "Ed." s'il n'y en a qu'un seul.</li>
408
409         <li><code>LastPage</code>&nbsp;: renvoie la derni&egrave;re page du champ "pages", si initialis&eacute;.
410         Par exemple, si le champ "pages" est initialis&eacute; avec "345-360" ou "345--360",
411         ce formatteur renverra "360".</li>
412
413         <li><code>NoSpaceBetweenAbbreviations</code>&nbsp;: Les espaces
414         entre les initiales des pr&eacute;noms sont
415         supprim&eacute;s.</li>
416                 
417         <li><code>Number</code>&nbsp;: renvoie la s&eacute;quence de nombres &agrave; base de 1 de l'entr&eacute;e actuelle dans
418         l'exportation actuelle. Ce formatteur peut &ecirc;tre utilis&eacute; pour faire une liste num&eacute;rot&eacute;e d'entr&eacute;es. Le
419         num&eacute;ro de s&eacute;quence d&eacute;pend de la place de l'entr&eacute;e actuelle dans l'ordre de tri actuel, pas du
420         nombre d'appels de ce formatteur.</li>
421
422         <li><code>RemoveBrackets</code>&nbsp;: supprime toutes les
423         accolades "{" ou "}".</li>
424
425         <li><code>RemoveBracketsAddComma</code>&nbsp;: &agrave;
426         documenter.</li>
427
428         <li><code>RemoveLatexCommands</code>&nbsp;: supprime toutes
429         les commandes LaTeX comme <code>\em</code>,
430         <code>\textbf</code>, etc. Lorsqu'il est utilis&eacute;
431         avec <code>HTMLChars</code> ou <code>XMLChars</code>, ce
432         formateur doit &ecirc;tre appel&eacute; en dernier.</li>
433
434         <li><code>RemoveTilde</code>&nbsp;: remplace le
435         caract&egrave;re tilde (utilis&eacute; dans LaTeX comme un
436         espace ins&eacute;cable) par un espace normal. Utile en
437         combinaison avec NameFormatter comme discut&eacute; dans la
438         prochaine section.</li>
439
440         <li><code>RemoveWhitespace</code>&nbsp;: supprime tous les caract&egrave;res espace.</li>
441
442         <li><code>Replace(ExpReg,RemplaceAvec)</code>&nbsp;: effectue le remplacement d'une expression r&eacute;guli&egrave;re.
443         Pour utiliser ce formateur, un argument en deux parties doit &ecirc;tre fourni. Les parties sont
444         s&eacute;par&eacute;es par une virgule. Pour indiquer le caract&egrave;re virgule, utilisez la s&eacute;quence
445         d'&eacute;chappement&nbsp;: \,<br>
446         La premi&egrave;re partie est l'expression r&eacute;guli&egrave;re &agrave; rechercher. 
447         Notez bien que toute virgule doit y &ecirc;tre pr&eacute;c&eacute;d&eacute;e par un antislash,
448         et, qu'en cons&eacute;quence, un antislash dans l'expression r&eacute;guli&egrave;re
449         recherch&eacute;e y est repr&eacute;sent&eacute; par une paire d'anti-slash. Une description
450         des expression r&eacute;guli&egrave;res de Java peut &ecirc;tre trouv&eacute;e &agrave;&nbsp;:<br>
451         &nbsp;http://java.sun.com/j2se/1.4.2/docs/api/java/util/regex/Pattern.html<br>
452         La seconde partie est le texte qui remplace tous les correspondances.</li>
453
454         <li><code>RTFChars</code>&nbsp;: remplace les
455         caract&egrave;res sp&eacute;ciaux sp&eacute;cifiques
456         &agrave; TeX (par exemple&nbsp;: {\^a} ou {\"{o}}) par leur
457         repr&eacute;sentation RTF, et traduit les commandes LaTeX
458         \emph, \textit, \textbf dans leurs &eacute;quivalents RTF.</li>
459
460         <li><code>ToLowerCase</code>&nbsp;: bascule tous les
461         caract&egrave;res en minuscules.</li>
462
463         <li><code>ToUpperCase</code>&nbsp;: bascule tous les
464         caract&egrave;res en majuscules.</li>
465
466         <li><code>WrapContent</code>&nbsp;: 
467         Ce formateur renvoie la valeur d'entr&eacute;e apr&egrave;s ajout d'un pr&eacute;fixe et
468         d'un suffixe, tant que la valeur d'entr&eacute;e n'est pas vide.
469         
470         Si la valeur d'entr&eacute;e est vide, une cha&icirc;ne vide est renvoy&eacute;e (le
471         pr&eacute;fixe et le suffixe ne sont pas renvoy&eacute;s dans ce cas).
472         Le formateur n&eacute;cessite un argument contenant le pr&eacute;fixe et le suffixe
473         s&eacute;par&eacute;s par une virgule.
474         Pour inclure le caract&egrave;re virgule dans l'un d'entre eux, utilisez la
475         cha&icirc;ne d'&eacute;chappement
476         (\,).</li>
477
478         <li><code>WrapFileLinks</code>&nbsp;: Voir ci-dessous.</li>
479
480         <li><code>XMLChars</code>&nbsp;: remplace les
481         caract&egrave;res sp&eacute;ciaux sp&eacute;cifiques
482         &agrave; TeX (par exemple&nbsp;: {\^a} ou {\"{o}}) par leur
483         repr&eacute;sentation XML.</li>
484
485     </ul>
486
487     <h3>Le formateur <code>WrapFileLinks</code></h3>
488
489     <p>
490     Ce formateur it&egrave;re sur tous les liens de fichiers, ou tous les liens de fichiers
491     d'un type particulier, renvoyant une cha&icirc;ne de formatage donn&eacute;e comme premier
492     argument. La cha&icirc;ne de formatage peut contenir un nombre de s&eacute;quences d'&eacute;chappement
493     indiquant les informations sur le lien de fichier &agrave; &ecirc;tre ins&eacute;r&eacute; dans la cha&icirc;ne.
494     <p/>
495     <p>
496     Ce formateur peut prendre un second argument optionnel sp&eacute;cifiant le nom d'un type
497     de fichier. Si sp&eacute;cifi&eacute;, l'it&eacute;ration inclura uniquement les fichiers correspondant
498     au type de fichier recherch&eacute; (en &eacute;tant sensible &agrave; la casse des
499     caract&egrave;res). S'il est sp&eacute;cifi&eacute; comme un argument vide, tous les liens de fichiers
500     seront inclus.
501     <p/>
502     <p>
503     Apr&egrave;s le second argument, des paires d'arguments additionnels peuvent &ecirc;tre ajout&eacute;es
504     afin de sp&eacute;cifier des expressions r&eacute;guli&egrave;res de remplacement devant &ecirc;tre ex&eacute;cut&eacute;es
505     sur les informations du lien ins&eacute;r&eacute; avant son insertion dans la cha&icirc;ne de sortie.
506     Un argument non appari&eacute; sera ignor&eacute;. Afin de sp&eacute;cifier des remplacements sans effectuer
507     de filtrage sur les types de fichiers, utilisez un second argument vide.
508     <p/>
509     <p>
510     Les s&eacute;quences d'&eacute;chappement pour les informations incluses sont les suivantes&nbsp;:
511     <p/>
512     <p>
513     \i&nbsp;: Cela ins&egrave;re l'index d'it&eacute;ration (d&eacute;butant &agrave; 1), et peut &ecirc;tre utile si
514     la liste des fichiers en sortie doit &ecirc;tre &eacute;num&eacute;r&eacute;e.<br>
515     \p&nbsp;: Cela ins&egrave;re le chemin de fichier d'un lien de fichier.<br>
516     \f&nbsp;: Cela ins&egrave;re le nom du type du lien de fichier.<br>
517     \x&nbsp;: Cela ins&egrave;re l'extension de fichier, si elle existe.<br>
518     \d&nbsp;: Cela ins&egrave;re la description du lien de fichier, si elle existe.<br>
519     <p/>
520     <p>
521     Par exemple, une entr&eacute;e pourrait contenir un lien de fichier vers le fichier    
522     "/home/john/report.pdf" de type "PDF" avec la description "John's final report".
523     <p/>
524     <p>
525     En utilisant le formateur WrapFileLinks avec l'argument suivant&nbsp;:
526     <p/>
527     <p>
528     \format[WrapFileLinks(\i. \d (\p))]{\file}
529     <p/>
530     <p>
531     donnera la sortie suivante&nbsp;:<br>
532     <pre>1. John's final report (/home/john/report.pdf)</pre>
533     <p/>
534     <p>
535     Si l'entr&eacute;e contient un second lien de fichier vers le fichier "/home/john/draft.txt"
536     du type "Text file" avec la description 'An early "draft"', le sortie sera comme suit&nbsp;:<br>
537     <pre>1. John's final report (/home/john/report.pdf)</pre>
538     <pre>2. An early "draft" (/home/john/draft.txt)</pre>
539     <p/>
540     <p>
541     Si le formateur a &eacute;t&eacute; appel&eacute; avec un second argument, la liste sera filtr&eacute;e.
542     Par exemple&nbsp;:<br>
543     <pre>\format[WrapFileLinks(\i. \d (\p),,text file)]{\file}</pre>
544     <p/>
545     <p>
546     affichera uniquement le texte suivant&nbsp;:<br>
547     <pre>1. An early "draft" (/home/john/draft.txt)</pre>
548     <p/>
549     <p>
550     Si l'on veut que cette sortie soit incluse dans une sortie en style XML,
551     les guillemets dans la description de fichier pourrait causer probl&egrave;me.
552     En ajoutant deux arguments additionnels pour traduire les guillemets en
553     caract&egrave;res XML, on r&eacute;soudra ce probl&egrave;me&nbsp;:<br>
554     \format[WrapFileLinks(\i. \d (\p),,text file,",&quot;)]{\file}
555     <p/>
556     <p>
557     affichera la sortie suivante&nbsp;:<br>
558     <pre>1. An early &quot;draft&quot; (/home/john/draft.txt)</pre>
559     <p/>
560     <p>
561     Des paires de remplacement suppl&eacute;mentaires pourraient &ecirc;tre ajout&eacute;es.
562     <p/>
563
564
565     <h3>Formateurs personnalis&eacute;s</h3>
566
567     <p>Si aucun des formateurs disponibles ne peut faire ce que
568     vous d&eacute;sirez, vous pouvez ajouter le votre &agrave;
569     l'interface
570     <code>net.sf.jabref.export.layout.LayoutFormatter</code>. Si
571     vous ins&eacute;rez votre propre classe dans
572     <code>net.sf.jabref.export.layout.format</code>, vous pouvez
573     appeler votre formateur en utilisant son nom de classe, comme
574     pour les formateurs standards. Sinon, vous devez appeler le
575     formateur par son nom complet (incluant le nom du package).
576     Dans les deux cas, le formateur doit &ecirc;tre dans votre
577     chemin de classe lorsque vous lancez JabRef</p>
578
579     <h2 id="NameFormatter">Utiliser des formateurs de nom
580     personnalis&eacute;</h2>
581
582     <p>A partir de JabRef 2.2, il est possible de
583     d&eacute;finir des formateurs de nom personnalis&eacute;s et
584     utilisant la syntaxe des fichiers de style BibTeX. Cela permet
585     une flexibilit&eacute; totale, mais c'est fastidieux &agrave;
586     &eacute;crire</p>
587
588     <p>Vous pouvez d&eacute;finir votre propre formateur dans
589     l'onglet "Formateur de nom" des pr&eacute;f&eacute;rences en
590     utilisant le format suivant et en l'utilisant ensuite avec le
591     nom que vous avez d&eacute;fini comme de n'importe quel autre
592     formateur</p>
593     <code>&lt;cas1&gt;@&lt;gamme11&gt;@&lt;format&gt;@&lt;gamme12&gt;@&lt;format&gt;@&lt;gamme13&gt;...@@<br />
594
595      &lt;cas2&gt;@&lt;gamme21&gt;@... et ainsi de suite.</code>
596
597     <p>Ce format commence par s&eacute;parer la tache de formatage
598     de la liste d'auteurs dans des cas d&eacute;pendant du nombre
599     d'auteurs qu'il y a (c'est ainsi car certains formats
600     diff&egrave;rent en fonction du nombre d'auteurs). Chaque cas
601     individuel est s&eacute;par&eacute; par @@ et contient les
602     instructions sur la fa&ccedil;on de formater chaque auteur dans
603     le cas consid&eacute;r&eacute;. Ces instructions sont
604     s&eacute;par&eacute;es par un @.</p>
605
606     <p>Les cas sont identifi&eacute;s en utilisant des entiers (1,
607     2, 3, etc.) ou le caract&egrave;re * (correspondant &agrave;
608     n'importe quel nombre d'auteurs) et sp&eacute;cifieront le
609     formateur &agrave; appliquer s'il y a un nombre
610     inf&eacute;rieur ou &eacute;gal d'auteurs.</p>
611
612     <p>Les gammes sont soit
613     <code>&lt;entier&gt;..&lt;entier&gt;</code>,
614     <code>&lt;entier&gt;</code> ou le caract&egrave;re
615     <code>*</code> en utilisant un index bas&eacute; sur 1 pour
616     indexer les auteurs d'une liste donn&eacute;e d'auteurs. Les
617     index entiers peuvent &ecirc;tre n&eacute;gatif afin de
618     signifier qu'ils commencent par la fin de la liste o&ugrave; -1
619     est le dernier auteur.</p>
620
621     <p>Par exemple, avec une liste d'auteurs comme "Joe Doe and
622     Mary Jane and Bruce Bar and Arthur Kay"&nbsp;:</p>
623
624     <ul>
625         <li>1..3 affectera Joe, Mary and Bruce</li>
626
627         <li>4..4 affectera Arthur</li>
628
629         <li>* les affectera tous</li>
630
631         <li>2..-1 affectera Mary, Bruce and Arthur</li>
632     </ul>
633
634     <p>Les cha&icirc;nes de <code>&lt;format&gt;</code> utilisent
635     le format du formateur BibTeX&nbsp;:</p>
636
637     <p>Les quatre lettres v, f, l et j indiquent les parties du nom
638     von, first, last et jr qui sont utilis&eacute;es entre
639     accolades. Une unique lettre v, f, l ou j indique que le nom
640     doit &ecirc;tre abr&eacute;g&eacute;. Si l'une de ces lettres
641     ou paires de lettres sont rencontr&eacute;es, JabRef retournera
642     tous les noms respectifs (potentiellement
643     abr&eacute;g&eacute;s), mais l'expression totale entre
644     accolades est uniquement imprim&eacute;e si la partie du nom
645     existe.</p>
646
647     <p>Par exemple, si le format est "{ll} {vv {von Part}} {ff}" et
648     si les noms sont "Mary Kay and John von Neumann", alors JabRef
649     retournera "Kay Mary" (avec deux espaces entre le nom propre et
650     le pr&eacute;nom) et "Neuman von von Part John".</p>
651
652     <p>Je donne ici deux exemples, mais je pr&eacute;f&eacute;rerai
653     vous diriger vers la documentations BibTeX.</p>
654
655     <p>Exemple court&nbsp;: <code>"{ll}, {f.}"</code> va convertir
656     <code>"Joe Doe"</code> en <code>"Doe, J."</code></p>
657
658     <p>Exemple long&nbsp;:</p>
659
660     <blockquote>
661         <p>Pour convertir&nbsp;:</p>
662
663         <p><code>"Joe Doe and Mary Jane and Bruce Bar and Arthur
664         Kay"</code></p>
665
666         <p>en</p>
667
668         <p><code>"Doe, J., Jane, M., Bar, B. and Kay,
669         A."</code></p>
670
671         <p>vous devrez utiliser</p>
672
673         <p><code>1@*@{ll}, {f}.@@2@1@{ll}, {f}.@2@ and {ll},
674         {f}.@@*@1..-3@{ll}, {f}., @-2@{ll}, {f}.@-1@ and {ll},
675         {f}.</code></p>
676     </blockquote>
677
678     <p>Si quelqu'un souhaite &eacute;crire un meilleur didacticiel
679     sur ce sujet, envoyez un courriel sur l'une des listes de
680     diffusion de JabRef&nbsp;!</p>
681
682 </body>
683 </html>