Load /tmp/tmp.JUKpM13035/jabref-2.0.1+2.1b2 into
[debian/jabref.git] / src / help / fr / CustomExports.html
1 <HTML>
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>
9 JabRef vous permet de d&eacute;finir et d'utiliser vos propres filtres d'exportation de la m&ecirc;me mani&egrave;re que les filtres d'exportation standards. Un filtre d'exportation est d&eacute;fini par un ou plusieurs <i>fichiers gabarit</i> qui, avec l'aide d'un certain nombre de routines internes de formatage, d&eacute;finissent le format des fichiers export&eacute;s. Vos fichiers gabarit doivent &ecirc;tre pr&eacute;par&eacute;s avec un &eacute;diteur de texte &agrave; l'ext&eacute;rieur de JabRef.
10 </p>
11
12 <h2>Ajout d'un filtre d'exportation personnalis&eacute; </h2>
13
14 <p>
15 La seule obligation pour avoir un filtre d'exportation valide est l'existence d'un fichier avec l'extension <b>.layout</b>. Pour ajouter un nouveau filtre d'exportation, on utilise le menu <b>Options -> G&eacute;rer les exportations personnalis&eacute;es</b>, et on clique sur <b>Ajouter nouvelle</b>. Une nouvelle boite de dialogue appara&icirc;t et vous permet de sp&eacute;cifier un nom du nouveau filtre d'exportation (ce nom appara&icirc;tra dans le menu <b>Fichier -> Exportation personnalis&eacute;e</b> de la fen&ecirc;tre JabRef), le chemin du fichier <b>.layout</b>, et l'extension de fichier pr&eacute;f&eacute;r&eacute;e par le filtre d'exportation (c'est cette extension qui sera sugg&eacute;r&eacute;e dans la boite de dialogue lorsque le filtre sera utilisé).
16 </p>
17
18 <h2>Cr&eacute;ation d'un filtre d'exportation</h2>
19
20 <p>
21 Pour voir des exemples de constitution de filtres d'exportation, recherchez le r&eacute;pertoire contenant les fichiers gabarit des filtres d'exportation standards sur notre page de t&eacute;l&eacute;chargement.
22 </p>
23
24 <h3>Les fichiers gabarit</h3>
25
26 <p>
27 On suppose que l'on veut cr&eacute;er un filtre d'exportation pour une sortie HTML.
28 </p>
29
30 <p>
31 Bien que le filtre d'exportation ne n&eacute;cessite qu'un seul fichier <b>.layout</b>, qui dans ce cas pourrait s'appeler <i>html.layout</i>, vous pouvez d&eacute;sirer ajouter deux autres fichiers appel&eacute;s <i>html.begin.layout</i> et <i>html.end.layout</i>. Le premier contient le d&eacute;but de la sortie et le dernier la fin. JabRef recherche ces deux fichiers quelque soit le fichier d'exportation utilis&eacute; et, s'il les trouve, les recopie tel quel dans la sortie avant et apr&egrave;s l'&eacute;criture des entr&eacute;es individuelles.
32 </p>
33
34 <p>
35 Il faut noter que ces fichiers doivent &ecirc;tre dans le m&ecirc;me r&eacute;pertoire que le fichier <i>html.layout</i>, et que leur nom doit comporter <b>.begin</b> pour l'un et <b>.end</b> pour l'autre.
36 </p>
37
38 <p>
39 Dans notre exemple de fichier d'exportation, cela pourrait ressembler &agrave; 
40 </p>
41
42 <p>
43 <i>html.begin.layout</i>&nbsp;:<br>
44 <code>
45 &lt;HTML&gt;<br>
46   &lt;BODY&gt; text="#275856"&gt;<br>
47 &lt;basefont size="4" color="#2F4958" face="arial"&gt;
48 </code>
49 </p>
50
51 <p>
52 <i>html.end.layout</i>&nbsp;:<br>
53 <code>
54 &lt;/BODY&gt;<br>
55   &lt;/HTML&gt;
56 </code>
57 </p>
58
59 <p>
60 Le fichier <i>html.layout</i> fournit le gabarit par d&eacute;faut pour l'exportation  d'une seule entr&eacute;e. Si vous devez utiliser diff&eacute;rents gabarits pour les diff&eacute;rentes entr&eacute;es, vous pouvez le faire en ajoutant des fichiers <b>.layout</b> sp&eacute;cifiques.
61 Les fichiers doivent aussi &ecirc;tre dans le m&ecirc;me r&eacute;pertoire que le gabarit principal et ils sont nomm&eacute;s en ins&eacute;rant <b>.entrytype</b> dans le nom du fichier gabarit principal. Le nom de l'entr&eacute;e doit &ecirc;tre en minuscules.
62 Dans notre exemple, on peut vouloir ajouter un gabarit diff&eacute;rent pour les livres et cela se fera via le fichier <i>html.book.layout</i>. Pour une th&egrave;se, on ajoutera le fichier <i>html.phdthesis.layout</i>.
63 Ces fichiers sont similaires au gabarit principal, si ce n'est qu'ils sont utilis&eacute;s pour des entr&eacute;es sp&eacute;cifiques. A noter que le gabarit g&eacute;n&eacute;ral peut ais&eacute;ment &ecirc;tre cr&eacute;&eacute; suffisamment g&eacute;n&eacute;ral pour &ecirc;tre utilisable avec la plupart des entr&eacute;es dans la majorit&eacute; des filtres d'exportation.
64 </p>
65
66 <h3>Le format des fichiers gabarit</h3>
67
68 <p>
69 Les fichiers gabarit utilisent un simple langage de balisage dans lequel les commandes sont identifi&eacute;es par l'antislash (\) les pr&eacute;c&eacute;dant. Tout texte non identifi&eacute; comme faisant partie d'une entr&eacute;e est recopi&eacute; tel quel dans le fichier de sortie.
70 </p>
71
72 <h3>Les commandes relatives aux champs</h3>
73
74 <p>
75 Les mots pr&eacute;c&eacute;d&eacute;s d'un antislash, par exemple <code>\author</code>, <code>\editor</code>, <code>\title</code> ou <code>\year</code>, sont interpr&eacute;t&eacute;s comme des r&eacute;f&eacute;rences aux champs correspondants et le contenu du champ est copi&eacute; directement dans la sortie.
76 </p>
77
78 <h3>Les formateurs de champs</h3>
79
80 <p>
81 Souvent, on a besoin de faire subir au contenu d'un champ un pr&eacute;-traitement avant de le copier dans le fichier de sortie. Cela est r&eacute;alis&eacute; en utilisant un <i>formateur de champ</i> - une classe java contenant une seule m&eacute;thode qui manipule le contenu du champ.
82 </p>
83
84 <p>
85 Le formateur est utilis&eacute; en ins&eacute;rant la commande <code>\format</code> suivie du nom du formateur entre crochets et du nom du champ entre accolades, par exemple
86 </p>
87 <p>
88 <code>\format[ToLowerCase]{\author}</code>
89 </p>
90
91 <p>
92 Vous pouvez aussi indiquer plusieurs formateurs s&eacute;par&eacute;s par des virgules. Ils seront alors appel&eacute;s s&eacute;quentiellement de la gauche vers la droite, par exemple&nbsp;: 
93 </p>
94 <p>
95 <code>\format[ToLowerCase,HTMLChars]{\author}</code>
96 </p>
97 <p>
98 va d'abord appliquer le formateur <b>ToLowerCase</b> puis <b>HTMLChars</b> sur le r&eacute;sultat. Vous pouvez lister un nombre arbitraire de formateurs de cette mani&egrave;re.
99 </p>
100
101 <p>Le param&egrave;tre des formateurs, entre les accolades, n'est pas obligatoirement une commande de champ. Vous pouvez y ins&eacute;rer du texte normal, qui sera alors pass&eacute; comme argument au formateur. Cela peut-&ecirc;tre utile avec certains formateurs, par exemple le formateur CurrentDate (voir ci-dessous).
102 </p>
103
104 <p>
105 JabRef fournit les formateurs suivants, certains d'entre eux d&eacute;pendant d'autres formateurs&nbsp;:
106 </p>
107
108 <ul>
109 <li><code>HTMLChars</code>&nbsp;: remplace les caract&egrave;res sp&eacute;ciaux sp&eacute;cifiques &agrave; TeX  (par exemple&nbsp;: {\^a} ou {\"{o}}) par leur repr&eacute;sentation HTML.
110 <li><code>XMLChars</code>&nbsp;: remplace les caract&egrave;res sp&eacute;ciaux sp&eacute;cifiques &agrave; TeX  (par exemple&nbsp;: {\^a} ou {\"{o}}) par leur repr&eacute;sentation XML.
111 <li><code>CreateDocBookAuthors</code>&nbsp;: formate le contenu du champ author selon le style DocBook.
112 <li><code>CurrentDate</code>&nbsp;: renvoie la date actuelle. Sans argument, ce formateur renvoie la date et l'heure actuelle au format "yyyy.MM.dd hh:mm:ss z" (date, heure et fuseau horaire). En donnant une cha&icirc;ne de format diff&eacute;rent comme argument, le format de la date peut-&ecirc;tre adapt&eacute;. Par exemple, 
113 <code>\format[CurrentDate]{yyyy.MM.dd}</code> renverra uniquement la date, comme par exemple 2005.11.30.
114 <li><code>AuthorFirstFirst</code>&nbsp;: formate le contenu des champs author/editor en mettant les pr&eacute;noms en premier.
115 <li><code>AuthorFirstFirstCommas</code>&nbsp;: formate le contenu des champs author/editor en mettant les pr&eacute;noms en premier et des virgules comme s&eacute;parateurs.
116 <li><code>AuthorLastFirst</code>&nbsp;: formate le contenu des champs author/editor en mettant le nom de famille en premier.
117 <li><code>AuthorLastFirstAbbreviator</code>&nbsp;: r&eacute;duit les pr&eacute;noms de tous les auteurs &agrave; leurs initiales. Ce formateur n&eacute;cessite d'avoir pr&eacute;alablement utilis&eacute; AuthorLastFirst.
118 <li><code>AuthorAndsReplacer</code>&nbsp;: remplace "and" par ";" entre les premiers noms et par "&" entre les deux derniers. 
119 <li><code>AuthorAndsCommaReplacer</code> : remplace "and" entre les noms par une virgule (",") et "&" entre les deux derniers.
120 <li><code>FormatPagesForHTML</code>&nbsp;: remplace "--" par "-".
121   <li><code>FormatPagesForXML</code>&nbsp;: remplace "--" par un tiret XML.
122 <li><code>RemoveBrackets</code>&nbsp;: supprime toutes les accolades "{" ou "}".
123 <li><code>RemoveLatexCommands</code>&nbsp;: supprime toutes les commandes LaTeX comme <code>\em</code>, <code>\textbf</code>, etc. Lorsqu'il est utilis&eacute; avec <code>HTMLChars</code> ou <code>XMLChars</code>, ce formateur doit &ecirc;tre appel&eacute; en dernier.
124 <li><code>ToLowerCase</code>&nbsp;: bascule tous les caract&egrave;res en minuscules.
125 </ul>
126
127 <p>
128 Si aucun des formateurs disponibles ne peut faire ce que vous d&eacute;sirez, vous pouvez ajouter le votre &agrave; l'interface <code> net.sf.jabref.export.layout.LayoutFormatter</code>. Si vous ins&eacute;rez votre propre classe dans <code>net.sf.jabref.export.layout.format</code>, vous pouvez appeler votre formateur en utilisant son nom de classe, comme pour les formateurs standards. Sinon, vous devez appeler le formateur par son nom complet (incluant le nom du package). Dans les deux cas, le formateur doit &ecirc;tre dans votre chemin de classe lorsque vous lancez JabRef
129 </p>
130
131 <h3>Les sorties conditionnelles</h3>
132 <p>
133 Certaines informations dans les sorties ne prennent de sens que si un certain champ est utilis&eacute;. Par exemple, disons que l'on veuille faire suivre le nom de l'&eacute;diteur par le texte <code>(Ed.)</code>. Cela peut &ecirc;tre r&eacute;alis&eacute; avec le code suivant&nbsp;:
134 </p>
135
136 <p>
137 <code>\format[HTMLChars,AuthorFirstFirst]{\editor} (Ed.)</code>
138 </p>
139
140 <p>
141 Cependant, si le champs <code>editor</code> n'a pas &eacute;t&eacute; renseign&eacute; - il n'a pas de sens pour l'entr&eacute;e export&eacute;e - le texte <code>(Ed.)</code> doit &ecirc;tre ignor&eacute;. Cela peut &ecirc;tre effectu&eacute; en utilisant les commandes <code>\begin</code> et <code>\end</code>&nbsp;:
142 </p>
143
144 <p>
145 <code>\begin{editor}<br>\format[HTMLChars,AuthorFirstFirst]{\editor} (Ed.)
146 <br>\end{editor}</code>
147 </p>
148
149 <p>Les commandes <code>\begin</code> et <code>\end</code> assure que le texte contenu entre les deux commandes ne sera imprim&eacute; que si et seulement si le champ sp&eacute;cifi&eacute; entre accolades est renseign&eacute; dans l'entr&eacute;e que l'on veut exporter.
150 </p>
151
152 <p>
153 <b>Note&nbsp;:</b> L'utilisation des commandes <code>\begin</code> et <code>\end</code> est une mani&egrave;re astucieuse de cr&eacute;er des gabarits qui sont communs &agrave; une grande vari&eacute;t&eacute; d'entr&eacute;es.
154 </p>
155
156 <h3>Les sorties group&eacute;es</h3>
157
158 <p>
159 Si vous d&eacute;sirez s&eacute;parer vos entr&eacute;es en groupes bas&eacute;s sur un certain champ, vous pouvez utiliser les commandes de sorties group&eacute;es. La sortie group&eacute;e est assez similaire aux sorties conditionnelles, except&eacute; que le texte sp&eacute;cifi&eacute; n'est imprim&eacute; que si le champ indiqu&eacute; dans les accolades change de valeur.
160 </p>
161
162 <p>
163 Par exemple, on suppose que l'on d&eacute;sire faire des groupes &agrave; partir de mots-clefs. Avant l'exportation, on s'assure que les entr&eacute;es sont tri&eacute;es selon les mots-clefs. Ensuite, on utilise les commandes suivantes pour les grouper par mot-clefs&nbsp;:
164 </p>
165 <p>
166 <code>\begingroup{keywords}New Category: \format[HTMLChars]{\keywords}
167 <br>    \endgroup{keywords}</code>
168 </p>
169
170 <h2>Partage de votre travail </h2>
171
172 <p>
173 Avec les fichiers gabarit externes, il est relativement simple de partager des formats d'exportation entre utilisateurs. Si vous &eacute;crivez un filtre d'exportation pour un format non support&eacute; par JabRef, ou si vous am&eacute;liorez un filtre d&eacute;j&agrave; existant, nous vous encourageons &agrave; d&eacute;poser votre travail sur notre page SourceForge.net. La m&ecirc;me chose est possible pour les nouvelles classes de formateur que vous avez &eacute;crites. Nous serons heureux de distribuer une collection des fichiers gabarit soumis ou de les ajouter &agrave; la s&eacute;rie des filtres d'exportation standard ou des formateurs.
174 </p>
175 </body>
176 </html>