Load /tmp/tmp.JUKpM13035/jabref-2.0.1+2.1b2 into
[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 -&gt; G&eacute;rer les importations personnalis&eacute;es</b>, et cliquez&nbsp; <b>Ajouter &agrave; partir du r&eacute;pertoire</b>. Une fen&ecirc;tre de s&eacute;lection 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. Vous ouvrirez autant de&nbsp; fen&ecirc;tres que n&eacute;cessaire pour s&eacute;lectionner votre fichier de classe de filtre d'importation, lequel doit d&eacute;river de <code>ImportFormat</code>. Cela permettra ainsi d'indiquer le chemin complet d'acc&egrave;s au fichier de classe. En cliquant sur <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 -&gt; Importer -&gt; Filtres d'importation personnalis&eacute;s</b> et <b>Fichier -&gt; Importer et joindre -&gt; Filtres d'importation personnalis&eacute;s</b> de la fen&ecirc;tre de JabRef.</p> <p>S'il vous pla&icirc;t, notez que si vous d&eacute;placez la classe vers un autre r&eacute;pertoire, vous aurez &agrave; supprimer et &agrave; r&eacute;-ajouter le filtre d'importation. Si vous ajoutez 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>
15
16
17 <H2>Cr&eacute;er un filtre d'importation</H2>
18
19 Pour des exemples et quelques fichiers utiles sur la fa&ccedil;on de construire vos propres filtres d'importation, consultez s'il vous pla&icirc;t la page de t&eacute;l&eacute;chargement.
20
21
22 <H3>Un exemple simple</H3>
23
24 <p>Supposons que vous vouliez importer des fichiers de la forme suivante&nbsp;:
25 <pre>
26 1936;John Maynard Keynes;The General Theory of Employment, Interest and Money
27 2003;Boldrin & Levine;Case Against Intellectual Monopoly
28 2004;ROBERT HUNT AND JAMES BESSEN;The Software Patent Experiment
29 </pre></p>
30
31 <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>
32 and <code>importEntries()</code>. En voici un exemple&nbsp;:
33 <pre>
34 import java.io.*;
35 import java.util.*;
36 import net.sf.jabref.*;
37 import net.sf.jabref.imports.ImportFormat;
38 import net.sf.jabref.imports.ImportFormatReader;
39
40 public class SimpleCsvImporter extends ImportFormat {
41
42   public String getFormatName() {
43     return "Simple CSV Importer";
44   }
45
46   public boolean isRecognizedFormat(InputStream stream) throws IOException {
47     return true; // ceci est d&eacute;conseill&eacute; sauf pour les besoins de la d&eacute;monstration
48   }
49   
50   public List importEntries(InputStream stream) throws IOException {    
51         ArrayList bibitems = new ArrayList();
52     BufferedReader in = new BufferedReader(ImportFormatReader.getReaderDefaultEncoding(stream));
53       
54     String line = in.readLine();
55     while (line != null) {
56       if (!"".equals(line.trim())) {
57         String[] fields = line.split(";");
58         BibtexEntry be = new BibtexEntry(Util.createNeutralId());
59         be.setType(BibtexEntryType.getType("techreport"));
60         be.setField("year", fields[0]);
61         be.setField("author", fields[1]);
62         be.setField("title", fields[2]);
63         bibitems.add(be);
64         line = in.readLine();
65       }     
66     }
67         return bibitems;                
68   }
69 }
70 </pre></p>
71
72 <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. 
73 Compilez-le en utilisant par exemple JSDK 1.4 avec
74 <pre>
75 javac -classpath JabRef-2.0.jar SimpleCsvImporter.java
76 </pre>
77 A pr&eacute;sent il doit y avoir un fichier <code>/mypath/SimpleCsvImporter.class</code>.</p>
78
79 <p>Dans JabRef, ouvrez <b>Options -&gt; G&eacute;rer les importations personnalis&eacute;es</b>, et cliquez sur <b>Ajouter &agrave; partir du r&eacute;pertoire</b>.
80 Allez dans <code>/mypath</code> et cliquez le bouton <b>S&eacute;lectionner...</b>. S&eacute;lectionnez 
81 <code>SimpleCsvImporter.class</code> et cliquez sur le bouton <b>S&eacute;lectionner...</b>.
82 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 -&gt; Importer -&gt; Filtres d'importation personnalis&eacute;s</b> et <b>Fichier -&gt; Importer et joindre -&gt; Filtres d'importation personnalis&eacute;s</b> de la fen&ecirc;tre de JabRef.</p>
83
84 <H2>Partager votre travail</H2>
85
86 <p>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.</p>
87
88 </BODY>
89 </HTML>