Files
JIMRI/help/fr/html/doc/Technical/Help.shtml
T
2026-06-17 14:00:51 +02:00

218 lines
11 KiB
Plaintext

<!DOCTYPE html>
<html lang="fr">
<!-- Updatedted by Blorec Herv&#233; 2016-07-20-->
<head>
<title>JMRI: Use of JavaHelp</title>
<meta name="Author" content="Bob Jacobsen">
<meta name="keywords" content="JMRI technical code Java Help JavaHelp ">
<!--#include virtual="/help/fr/parts/Style.shtml" -->
</head>
<body>
<!--#include virtual="/help/fr/parts/Header_fr.shtml" -->
<div id="mBody">
<!--#include virtual="Sidebar.shtml" -->
<div id="mainContent">
<!-- Page Body -->
<h1>JMRI: Utiliser une Aide Java</h1>
Cette page parle des aspects techniques de la fa&#231;on dont JMRI fournit des informations d'aide
en utilisant
<a href="https://javahelp.java.net">JavaHelp</a> et
<a href="http://jhelpdev.sourceforge.net/">JHelpDev</a>.
<h2>Organisation des fichiers aide</h2>
Les fichiers d'aide sont situ&#233;s dans le r&#233;pertoire "help"
dans le r&#233;pertoire de distribution JMRI.
<p>
La copie ma&#238;tre de ceux-ci est stock&#233;e dans notre r&#233;pertoire comme le r&#233;pertoire "help"
dans le r&#233;f&#233;rentiel de code JMRI.
Cela signifie que pour obtenir votre propre copie locale, il suffit de suivres les &#233;tapes
sur la page <a href="getgitcode.shtml">obtention du code</a>
<p>
Dans ce cadre, tous les fichiers de langue Anglaise sont situ&#233;es
dans le sous-r&#233;pertoire "en". Eventuellement ce sera &#224; vous
d'internationaliser les pages d'aide.
<p>
Dans ce cadre, il y a plusieurs arbres de fichiers:
<ul>
<li> Package - organis&#233; comme l'arbre paquet source,
il contient les fichiers d'aide sp&#233;cifiques au code pour par exemple une
fen&#234;tre particuli&#232;re ou d'un composant. Par exemple, une fen&#234;tre qui a cr&#233;&#233;
par la classe <code>jmri.jmrit.speedometer.SpeedometerFrame</code>
(depuis le fichier <code>src/jmri/jmrit/speed/SpeedometerFrame.java </code>)
devrait disposer de sa fen&#234;tre d'aide sp&#233;cifique dans un fichier de
<code>package/jmri/jmrit/speed/SpeedometerFrame.shtml</code>.
<li> html - une description g&#233;n&#233;rale, des tutoriels, etc.
Ceux-ci organis&#233;s &#224; leur tour dans des r&#233;pertoires qui repr&#233;sentent des domaines g&#233;n&#233;raux.
<li> Manuel - une version du manuel DecoderPro reformat&#233;e pour une
utilisation dans le syst&#232;me d'aide.( Les plus anciens sont stock&#233;s dans le <a href="WebSite.shtml">site internet principal</a>)
</ul>
A long terme, nous voulons seulement deux branches dans cette structure: la partie "package"
de l'arbre pour aider &#224; l'information qui est sp&#233;cifique &#224;
un morceau de code particulier,
et une autre partie de l'arbre pour plus d'informations g&#233;n&#233;rales.
(C'est une question de religion si cette 2&#232;me partie devrait &#234;tre appel&#233;
"html" ou "manuel "; l'essentiel est qu'on se retrouve avec un seul).
Le web est cens&#233; &#234;tre un <em>web </em>, avec de nombreux chemins &#224; suivre pour
atteindre le contenu. La deuxi&#232;me partie de l'arbre devrait &#233;galement &#234;tre organis&#233;
comme "une page, un th&#232;me", avec des liens pour les connecter au besoin
<a name="limitations"></a>
<h3>Limitations de JavaHelp HTML</h3>
JavaHelp affiche "un bon vieux HTML 4.0", sans fournir certains des
sucre syntaxique fourni par de nombreux navigateurs pour permettre de pauvres rendus HTML.
En particulier, il y a quelques choses &#224; surveiller.
<ul>
<li>Les balises d'ancrage demande un format sp&#233;cifique.
sp&#233;cifiquement, elles doivent &#234;tre &#233;crites
<code>
&lt;a name="pull" id="pull"&gt;&lt;/a&gt;
</code>
Par exemple, pour mettre une balise d'ancrage sur un titre, faire
<code>
&lt;a name="foo" id="foo"&gt;&lt;/a&gt;&lt;h2&gt;Foo!&lt;/h2&gt;
</code>
<p>
Note: des balises d'ancrage incorrectement structur&#233;es ( pas comme ci-dessus )
souvent provoque juste l'apparition d'un
caract&#232;re &lt; sur la page de rendu d'aide</p></li>
<li>Les d'Ancrage ont aussi besoin d'utiliser l'attribut "name" plut&#244;t que
l'attribut "id". Voir l'article ci-dessus pour un exemple.</li>
<li> Vous ne pouvez pas compter sur un endroit particulier pour vos fichiers
sur la machine locale, aussi tous les liens vers les autres pages d'aide doivent &#234;tre relatifs.</li>
<li> les liens vers des pages Web en dehors du syst&#232;me d'aide de travail,
mais JavaHelp ne peut pas afficher les fichiers PDF. Les Liens vers ceux-ci
doivent &#234;tre repr&#233;sent&#233;s de fa&#231;on explicite comme des liens, afin qu'ils puissent &#234;tre copi&#233;s sur
un navigateur Web ext&#233;rieur.</li>
</ul>
<a name="web" id="web"></a><h2>Acc&#232;s Web &#224; l'aide </h2>
Il est g&#233;nant d'avoir &#224; maintenir deux pages Web distinctes pour les
site web principaux et le syst&#232;me d'aide. Pour r&#233;duire le besoin pour cela, nous
utilisons un formulaire particulier pour les pages web dans le syst&#232;me d'aide.
<ul>
<li> utilisation de l'extensions de fichiers ". shtml" de telle sorte que
les serveurs Web principaux recherchent les fichiers pour
<a href="http://httpd.apache.org/docs/1.3/howto/ssi.html"> les serveurs inclus </a>.
<li> Lorsque vous cr&#233;ez une nouvelle page, commencez par une copie
soit du fichier mod&#232;le Aide/fr/template-sidebar.shtml ou de l'aide/fr/template-no-sidebar.shtml
, selon que vous souhaitez ou non inclure une "Sidebar"
via un fichier du m&#234;me nom. Cela mettra en haut et en bas la
mati&#232;re en place pour obtenir que la page s'affiche correctement.
</ul>
<a name="code"></a><h2> Acc&#232;s au code</h2>
Dans le code JMRI, l'acc&#232;s au syst&#232;me d'aide est obtenu
via la classe jmri.util.HelpUtil.
(Pour des raisons historiques, il y a un peu de code
dans apps.Apps, mais vous devriez l'ignorer).
<p>
La fa&#231;on la plus simple d'ajouter un menu d'aide &#224; un
cadre est d'avoir soit un JmriJFrame (que vous
devrez faire de toute fa&#231;on), et appel&#233; addHelpMenu (...)
apr&#232;s que vous ayez construit les autres menus.
<p>
Par convention, nous utilisons une arborescence de fichiers similaire pour
les fichiers de code source et d'aide. Par exemple,
la <code>jmri.jmrit.simpleclock.SimpleClockFrame</code>
classe h&#233;rite de JmriJFrame, et ajoute un menu d'aide avec la ligne
<code>
addHelpMenu ("package.jmri.jmrit.simpleclock.SimpleClockFrame", true);
</code>
Le fichier d'aide est alors situ&#233;e &#224;
<code>help/fr/package/jmri/jmrit/simpleclock/SimpleClockFrame.shtml </code>.
<p>
Un certain nombre de fichiers d'aide ont &#233;t&#233; mis en place sans contenu;
j'esp&#232;re que certains utilisateurs les modifierons et renverrons l'ascenseur.
<a name="jhelpdev" id="jhelpdev"></a><h2> Cr&#233;ation des fichiers de contr&#244;le avec JHelpDev</h2>
JavaHelp utilise divers fichiers XML pour
contr&#244;ler la fa&#231;on dont la table des mati&#232;res et l'index sont affich&#233;s.
Nous cr&#233;ons les <a href="http://jhelpdev.sourceforge.net/"> JHelpDev</a>.
S'il vous pla&#238;t ne pas les modifier manuellement.
<p>
JHelpDev est maintenant inclut dans la distribution JMRI. Pour utiliser cet outil:
<ol>
<li>Assurez-vous que vous avez ex&#233;cut&#233; "update" depuis SVN avant de commencer.</li>
<li> D&#233;marrez l'outil en cliquant sur le fichier jhelpdev.jar. (Si cela ne fonctionne pas, essayez en
ex&#233;cutant JHelpDev.csh ou JHelpDev.bat, selon le type d'ordinateur que vous avez) </li>
<li>Une fois que la fen&#234;tre s'affiche, s&#233;lectionnez "Ouvrir un projet" dans le menu "Fichier". </li>
<li>Naviguez vers le r&#233;pertoire "help" dans votre copie extraite du code,
puis le r&#233;pertoire "fr" dans ce cadre, puis s&#233;lectionnez le fichier "JHelpDev.xml"
et cliquez sur "Open".<br>
Vous pouvez avoir un message "[Fatal Error] index.html:1:3: Les d&#233;clarations de balisage contenues ou
point&#233;es par le document type de d&#233;claration doivent &#234;tre bien form&#233;es."
Bien qu'il dit qu'il est fatal, il n'est pas vraiment un probl&#232;me. N'y faites pas attention.
Au d&#233;marrage de la carte (un fichier contenant l'index JHelpDev de tous les points d'ancrage
dans le syst&#232;me d'aide JMRI) est r&#233;g&#233;n&#233;r&#233;.</li>
<li>Cliquez sur l'onglet "Index Editor" ou "TOC Editor" pour r&#233;actualiser les entr&#233;es d'Aides. Une ligne rouge marque un lien hypertexte que JHelpDev ne peut pas localiser sur le disque. Faites un clic droit sur une telle ligne pour ouvrir le menu Edit context.</li>
<li>Cliquez sur le bouton "Create All" pour recr&#233;er le TOC, Index, etc.</li>
<li>Puis, de retour sur la ligne de commande et dans le r&#233;pertoire de help/fr, appelez
"ant" pour cr&#233;er l'index Web et les pages de la table des mati&#232;res (Ou si vous utilisez
Eclipse, faites un clic droit sur le fichier help/fr/build.xml et s&#233;lectionnez Ex&#233;cuter en tant que construction Ant.) </li>
</ol>
<p>
Les diff&#233;rents fichiers de contr&#244;le qui utilise JavaHelp sont stock&#233;s dans notre r&#233;f&#233;rentiel de code,
donc, une fois que vous avez fait ceci ils seront montr&#233;s comme modifi&#233;.
S'il vous pla&#238;t v&#233;rifier les lorsque vous v&#233;rifiez de nouveaux fichiers d'aide pour que les autres
personnes n'aient pas &#224; recr&#233;er les fichiers de contr&#244;le eux-m&#234;mes.
<a href="http://jhelpdev.sourceforge.net/">site web JHelpDev</a>.
<a name="tocAndIndex" id="tocAndIndex"></a><h3>Table des Mati&#232;res (TOC) et Index</h3>
Aide Java inclut une
<a href="https://jmri.org/help/en/webtoc.shtml">table des mati&#232;res (toc)</a> et un
<a href="https://jmri.org/help/en/webindex.shtml">index</a>. Ils sont les eux disponibles
comme un lien hyperliens sur le web, et fournis via une agr&#233;able interface utilisateur lors de
l'utilisation dans le programme.
<p>
L'information sous-jacente doit &#234;rte maintenue manuellement dans ls fichiers respectifs
help/fr/JmriHelp_enTOC.xml and help/fr/JmriHelp_enIndex.xml. JHelpDev fait alors les fichiers dont Java Help a besoin,
et une &#233;tape "ant" dans le r&#233;pertoire fait les fichiers webtoc.shtml et webindex.shtml qui sont affich&#233;s sur le web.
<p>
vous pouvez aussi utiliser l'outil JHelpDev pour ajouter des articles &#225; la table des mati&#232;res
et &#225; l'index si vous voulez.
Il y a plus d'infos sur comment le faire sur le
<a href="http://jhelpdev.sourceforge.net/">site web JHelpDev</a>. Rappelez-vous d'ex&#233;cuter "ant" apr&#232;s
chaque ajout pour actualiser les versions web.
<a name="site" id="site"></a><h2> Mise &#224; jour du site JMRI.org </h2>
Des changements pour les pages d'aide qui sont v&#233;rifi&#233;es devrait appara&#238;tre automatiquement sur le site JMRI.org
apr&#232;s un court moment.Il y a une
<a href="https://builds.jmri.org/jenkins/job/WebSite/job/generate-website/">t&#226;che Jenkins</a>
qui manipule p&#233;riodiquement les actualisations pour les pages statistiques ( depuis le r&#233;pertoire, comme JavaDoc )
<!--#include virtual="/help/fr/parts/Footer_fr.shtml" -->
</div><!-- closes #mainContent-->
</div> <!-- closes #mBody-->
<script src="/js/help.js"></script>
</body>
</html>