[svn-inject] Installing original source of jabref
[debian/jabref.git] / src / help / fr / CustomImports.html
1 <HTML>
2
3 <BODY text="#275856">
4 <basefont size="4" color="#2F4958" face="arial">
5
6 <H1>Filtres d'importation personnalis&eacute;s</H1>
7
8 <p>JabRef vous permet de d&eacute;finir et d'utiliser vos propres formats d'importation, d'une fa&ccedil;on tr&egrave;s similaire aux filtres d'importation standard qui sont d&eacute;finis. Un filtre d'importation est d&eacute;fini par une ou plusieurs <i>classes</i> Java qui analyse le contenu d'un fichier &agrave; partir d'un flux d'entr&eacute;e et cr&eacute;e des entr&eacute;es BibTeX. Ainsi, avec un peu de programmation de base en Java, vous pouvez ajouter un format d'importation correspondant &agrave; votre source de r&eacute;f&eacute;rences favorite ou enregistrer une version am&eacute;lior&eacute;e d'un format d'importation existant. De plus, cela vous permet d'ajouter des formats d'importation personnalis&eacute;s compil&eacute;s que vous pourriez obtenir &agrave; partir de SourceForge (par exemple) sans avoir &agrave; recompiler JabRef (voir plus bas "Partager votre travail").</p>
9
10 <p>Les formats d'importation personnalis&eacute;s sont prioritaires sur les formats d'importation standard. De cette fa&ccedil;on, vous pouvez remplacer les formats d'importations existants pour les fonctions d'auto-d&eacute;tection et de ligne de commande de JabRef. Les formats d'importation personnalis&eacute;s sont class&eacute;s par nom.
11
12 <H2>Ajouter un filtre d'importation personnalis&eacute;</H2>
13
14 <p>Assurez-vous que vous avez un filtre d'importation personnalis&eacute; compil&eacute; (un ou plusieurs fichiers <code>.class</code> sont d&eacute;crits ci-dessous) et que les fichiers de classe soient dans la structure des r&eacute;pertoires selon la structure de leur paquetage. Pour ajouter un nouveau filtre d'importation personnalis&eacute;, ouvrez la bo&icirc;te de dialogue <b>Options -> G&eacute;rer les importations personnalis&eacute;es</b>, et cliquer <b>Ajouter &agrave; partir du r&eacute;pertoire</b>. 
15 Un s&eacute;lectionneur de fichier appara&icirc;tra, vous permettant de s&eacute;lectionner le chemin de classe de votre filtre d'importation, c'est &agrave; dire le r&eacute;pertoire o&ugrave; se trouve le r&eacute;pertoire sup&eacute;rieur de votre structure de paquetage. Dans un second s&eacute;lectionneur de fichier vous s&eacute;lectionnez votre fichier de classe de filtre d'importation, lequel doit d&eacute;river de <code>ImportFormat</code> [NdT&nbsp;: pas tout compris...]. En cliquant sur
16 <b>S&eacute;lectionner une nouvelle sous-classe de format d'importation</b>, votre nouveau filtre d'importation appara&icirc;tra dans la liste des filtres d'importation personnalis&eacute;s. Tous les filtres d'importations personnalis&eacute;s appara&icirc;tront dans le menu <b>Fichier -> Importer -> 
17 Filtres d'importation personnalis&eacute;s</b> et <b>Fichier -> Importer et joindre -> Filtres d'importation personnalis&eacute;s</b> de la fen&ecirc;tre de JabRef.</p>
18
19
20
21 <p>S'il vous pla&icirc;t, notez que si vous d&eacute;placer la classe vers un autre r&eacute;pertoire, vous aurez &agrave; supprimer et &agrave; r&eacute;-ajouter le filtre d'importation. Si vous ajouter un filtre d'importation personnalis&eacute; sous un nom qui existe d&eacute;j&agrave;, le filtre d'importation existant sera remplac&eacute;. De plus, dans certains cas, il est possible de mettre &agrave; jour un filtre d'importation personnalis&eacute; existant sans red&eacute;marrer JabRef (lorsque le filtre d'importation n'est pas dans le chemin de classe). Cependant, nous recommandons de red&eacute;marrer JabRef apr&egrave;s la mise &agrave; jour d'un filtre d'importation personnalis&eacute;. Vous pouvez aussi ajouter des filtres d'importation contenu dans un fichier ZIP ou JAR&nbsp;; s&eacute;lectionnez simplement l'archive Zip ou Jar, puis l'entr&eacute;e (fichier de classe) qui correspond au nouveau filtre d'importation.</p>
22
23
24 <H2>Cr&eacute;er un filtre d'importation</H2>
25
26 Pour des exemples et quelques fichiers utiles sur la fa&ccedil;on de construire vos propres filtres d'importation, consulter s'il vous pla&icirc;t la page de t&eacute;l&eacute;chargement.
27
28
29 <H3>Un exemple simple</H3>
30
31 <p>Supposons que vous vouliez importer des fichiers de la forme suivante&nbsp;:
32 <pre>
33 1936;John Maynard Keynes;The General Theory of Employment, Interest and Money
34 2003;Boldrin & Levine;Case Against Intellectual Monopoly
35 2004;ROBERT HUNT AND JAMES BESSEN;The Software Patent Experiment
36 </pre></p>
37
38 <p>Dans votre outil de d&eacute;veloppement ou &eacute;diteur de texte pr&eacute;f&eacute;r&eacute;, cr&eacute;ez une classe d&eacute;riv&eacute;e de <code>ImportFormat</code> qui impl&eacute;mente les m&eacute;thodes <code>getFormatName()</code>, <code>isRecognizedFormat</code>
39 and <code>importEntries()</code>. En voici un exemple&nbsp;:
40 <pre>
41 import java.io.*;
42 import java.util.*;
43 import net.sf.jabref.*;
44 import net.sf.jabref.imports.ImportFormat;
45 import net.sf.jabref.imports.ImportFormatReader;
46
47 public class SimpleCsvImporter extends ImportFormat {
48
49   public String getFormatName() {
50     return "Simple CSV Importer";
51   }
52
53   public boolean isRecognizedFormat(InputStream stream) throws IOException {
54     return true; // ceci est d&eacute;conseill&eacute; sauf pour les besoins de la d&eacute;monstration
55   }
56   
57   public List importEntries(InputStream stream) throws IOException {    
58         ArrayList bibitems = new ArrayList();
59     BufferedReader in = new BufferedReader(ImportFormatReader.getReaderDefaultEncoding(stream));
60       
61     String line = in.readLine();
62     while (line != null) {
63       if (!"".equals(line.trim())) {
64         String[] fields = line.split(";");
65         BibtexEntry be = new BibtexEntry(Util.createNeutralId());
66         be.setType(BibtexEntryType.getType("techreport"));
67         be.setField("year", fields[0]);
68         be.setField("author", fields[1]);
69         be.setField("title", fields[2]);
70         bibitems.add(be);
71         line = in.readLine();
72       }     
73     }
74         return bibitems;                
75   }
76 }
77 </pre></p>
78
79 <p>Notez que l'exemple est dans le paquetage par d&eacute;faut. Supposez que vous l'avez sauv&eacute; sous <code>/mypath/SimpleCsvImporter.java</code>. Supposez aussi que JabRef-2.0.jar est dans le m&ecirc;me r&eacute;pertoire que <code>SimpleCsvImporter.java</code> et que Java est dans votre chemin d'ex&eacute;cutables. 
80 Compilez-le en utilisant par exemple JSDK 1.4 avec
81 <pre>
82 javac -classpath JabRef-2.0.jar SimpleCsvImporter.java
83 </pre>
84 A pr&eacute;sent il doit y avoir un fichier <code>/mypath/SimpleCsvImporter.class</code>.</p>
85
86 <p>Dans JabRef, ouvrez <b>Options -> G&eacute;rer les importations personnalis&eacute;es</b>, et cliquez sur <b>Ajouter &agrave; partir du r&eacute;pertoire</b>.
87 Aller dans <code>/mypath</code> et cliquer le bouton <b>S&eacute;lectionner...</b>. S&eacute;lectionnez 
88 <code>SimpleCsvImporter.class</code> et cliquer sur le bouton <b>S&eacute;lectionner...</b>.
89 Votre filtre d'importation devrait maintenant appara&icirc;tre dans la liste des filtres d'importation personnalis&eacute;s sous le nom "Simple CSV Importer" et, apr&egrave;s avoir cliqu&eacute; sur <b>Fermer</b>, aussi dans les menus <b>Fichier -> Importer -> Filtres d'importation personnalis&eacute;s</b> et <b>Fichier -> Importer et joindre -> Filtres d'importation personnalis&eacute;s</b> de la fen&ecirc;tre de JabRef.</p>
90
91 <H2>Partager votre travail</H2>
92
93 Avec des fichiers de filtres d'importation personnalis&eacute;s, il est vraiment simple de partager des formats d'importation personnalis&eacute;s entre utilisateurs. Si vous &eacute;crivez un filtre d'importation pour un format non support&eacute; par JabRef, ou l'am&eacute;lioration d'un filtre existant, nous vous encourageons &agrave; soumettre votre travail sur notre page SourceForge.net. Nous serons heureux de distribuer la collection des fichiers d'importation soumis, ou d'en ajouter &agrave; la s&eacute;lection de filtres d'importation standard.
94
95 </HTML>