<?xml version="1.0"?>
<article lang="fr-FR"><articleinfo><title>Installer le filtre &quot;Flat Writer XML&quot; d'OpenOffice</title><author><firstname>Eric </firstname><surname>Bellot</surname></author><abstract><para>Ce document d&#xE9;crit l'installation du filtre <emphasis>Flat Writer XML</emphasis> (<emphasis>FlatXMLfilter</emphasis>) dans OpenOffice.org (Windows et Linux). Ce filtre permet &#xE0; OpenOffice d'enregistrer directement des fichiers OpenOffice-Writer au format XML.</para></abstract></articleinfo><section><title>Pr&#xE9;sentation</title><para>Le filtre <emphasis>FlatXML</emphasis> (<emphasis>FlatXMLfilter</emphasis>) ajoute &#xE0; OpenOffice la capacit&#xE9; d'enregistrer (et d'ouvrir) directement un document au format OpenOffice-XML. Au lieu d'obtenir un fichier <filename>monDocument.sxw</filename>, on obtient un fichier <filename>monDocument.xml</filename>.</para><para>Apr&#xE8;s l'installation du filtre, on trouvera une nouvelle entr&#xE9;e &#xAB;&#xA0;Flat Writer XML file&#xA0;&#xBB; dans les bo&#xEE;tes d'ouverture et d'enregistrement d'OpenOffice-Writer.</para><para>L'int&#xE9;r&#xEA;t de ce filtre est que le document produit peut imm&#xE9;diatement &#xEA;tre trait&#xE9; comme n'importe quel document XML et notamment &#xEA;tre converti gr&#xE2;ce &#xE0; une feuille de style et un processeur XSLT (Saxon, Xsltproc, etc.).</para><para>Le filtre FlatXML est disponible pour Windows, Linux et Solaris. L'installation sur Solaris n'est pas abord&#xE9;e dans ce document.</para><section><title>Limites du filtre</title><para>Les marques de r&#xE9;visions (Fichier &gt; Versions...) du document sont perdues.</para></section><section><title>Errata</title><orderedlist continuation="restarts" numeration="arabic">
   <listitem>
    <para>Dans une pr&#xE9;c&#xE9;dente version de ce document, j'ai pr&#xE9;tendu que les images incorpor&#xE9;es &#xE9;taient perdues lors de la conversion au format &#xAB;&#xA0;Flat XML&#xA0;&#xBB; et que seules les images li&#xE9;es devaient &#xEA;tre utilis&#xE9;es. <emphasis role="strong">C'est totalement faux.</emphasis> Les images incorpor&#xE9;es au document sont parfaitement conserv&#xE9;es dans le fichier &#xAB;&#xA0;Flat XML&#xA0;&#xBB;.</para>
   </listitem>
   <listitem>
    <para>Dans une pr&#xE9;c&#xE9;dente version de ce document, un des chemins indiqu&#xE9;s pour l'installation sous Linux &#xE9;tait erron&#xE9;.</para><para>Voici le chemin erron&#xE9; :</para><para><literal>&gt; cd /usr/lib/openoffice/program/FlatXMLfilter/Linux</literal></para><para>Voici le chemin correct :</para><para><literal>&gt; cd /usr/lib/openoffice/FlatXMLfilter/Linux</literal></para>
   </listitem>
  </orderedlist></section></section><section><title>Ajout du filtre FlatXML &#xE0; OpenOffice</title><para>T&#xE9;l&#xE9;chargez l'archive <filename>flatxmlfilter.zip</filename> &#xE0; l'adresse suivante :</para><para><ulink url="http://api.openoffice.org/servlets/ProjectDownloadList" type="">http://api.openoffice.org/servlets/ProjectDownloadList</ulink></para><section><title>En environnement GNU/Linux</title><para>L'installation a &#xE9;t&#xE9; r&#xE9;alis&#xE9;e sur une Linux-Mandrake 8.2 et une installation d'OpenOffice 1.0 faite &#xE0; partir du RPM <filename>OpenOffice.org-1.0-5.mdk.i586.rpm</filename>. N'oubliez pas d'adapter les exemples qui suivent &#xE0; votre installation.</para><para>Quittez OpenOffice et ouvrez un terminal.</para><para>D&#xE9;compressez l'archive <filename>flatxmlfilter.zip</filename>. </para><programlisting>&gt; unzip flatxmlfilter.zip </programlisting><para>Vous obtenez un r&#xE9;pertoire <filename>FlatXMLfilter</filename></para><para>Copiez-le dans le r&#xE9;pertoire d'installation d'OpenOffice.</para><programlisting>&gt; cp -R FlatXMLfilter /usr/lib/openoffice</programlisting><para>Exportez la variable d'environnement LD_LIBRARY_PATH d'OpenOffice :</para><programlisting>&gt; export LD_LIBRARY_PATH=/usr/lib/openoffice/program:$LD_LIBRARY_PATH </programlisting><para>Cette variable permettra l'acc&#xE8;s &#xE0; la librairie <filename>libsal.so.3</filename> requise pour l'installation du filtre.</para><para>Placez vous dans le r&#xE9;pertoire o&#xF9; se trouve <emphasis role="strong">regcomp</emphasis> :</para><programlisting>&gt; cd /usr/lib/openoffice/FlatXMLfilter/Linux</programlisting><para>Saisissez la commande suivante :</para><programlisting>&gt; regcomp -register -r applicat.rdb -c libgenericxmlfilter.so</programlisting><para>A la fin de l'op&#xE9;ration, le message suivant s'affiche :</para><programlisting>register component &quot;libgenericxmlfilter.so&quot; in registry &quot;applicat.rdb&quot; succesfull!</programlisting><para>Enfin, copiez le fichier <filename>TypeDetection.xml</filename> dans votre r&#xE9;pertoire personnel de la fa&#xE7;on suivante&#xA0;:</para><programlisting>&gt; cp /usr/lib/openoffice/FlatXMLfilter/TypeDetection.xml \ ~/.openoffice/user/config/registry/instance/org/openoffice/Office</programlisting><para>Red&#xE9;marrer OpenOffice pour profiter du nouveau filtre.</para></section><section><title>En environnement Windows 2000</title><para>Quittez OpenOffice ainsi que le d&#xE9;marrage rapide d'OpenOffice s'il est lanc&#xE9;.</para><para>D&#xE9;compressez l'archive <filename>flatxmlfilter.zip</filename>. Vous obtenez un r&#xE9;pertoire <filename>FlatXMLfilter</filename>.</para><para>Copiez ce r&#xE9;pertoire &#xE0; la racine du r&#xE9;pertoire d'installation d'OpenOffice. Par d&#xE9;faut, il s'agit de :</para><para><filename>C:\Program Files\OpenOffice.org1.0</filename></para><para>V&#xE9;rifiez que vous obtenez bien une arborescence du type :</para><para><filename>C:\Program Files\OpenOffice.org1.0\FlatXMLfilter\Windows</filename></para><para>Ouvrez un fen&#xEA;tre de ligne de commande (i.-e. une session DOS). </para><para>Ajoutez le chemin vers <filename>C:\Program Files\OpenOffice.org1.0\program</filename> &#xE0; la variable d'environnement PATH en faisant:</para><programlisting>set PATH=%PATH%;C:\Program Files\OpenOffice.org1.0\program</programlisting><para>Cette variable permettra l'acc&#xE8;s &#xE0; la librairie <filename>sal3.dll</filename> requise pour l'installation du filtre.</para><para>Placez-vous dans le r&#xE9;pertoire de la librairie <filename>genericxmlfilter.dll&#xA0;:</filename></para><programlisting>cd C:\Program Files\OpenOffice.org1.0\FlatXMLfilter\Windows</programlisting><para>Lancez la d&#xE9;claration du filtre :</para><programlisting>regcomp -register -r C:\PROGRA~1\OpenOffice.org1.0\program\applicat.rdb-c genericxmlfilter.dll</programlisting><para>Veillez &#xE0; bien &#xE9;crire <filename>c:\PROGRA~1</filename> et pas <filename>c:\Program Files</filename> sinon la d&#xE9;claration &#xE9;chouera. Les noms longs avec espaces ne sont pas si bien g&#xE9;r&#xE9;s que cela sous Windows...</para><para>Lorsque la d&#xE9;claration a r&#xE9;ussi, vous obtenez un message du type :</para><programlisting>Register component &quot;genericxmlfilter.dll&quot; in registry&quot;C:\PROGRA~1\OpenOffice.org1.0\program\applicat.rdb&quot; successfull!</programlisting><para>Enfin, il ne vous reste plus qu'&#xE0; copier le fichier <filename>TypeDetection.xml</filename> (Il se trouve dans le dossier <filename>FlatXMLfilter</filename>) dans le r&#xE9;pertoire :</para><para><filename>C:\Program&#xA0;Files\OpenOffice.org1.0\user\config\</filename><filename>&#xAC; </filename><filename>registry\instance\org\openoffice\Office</filename></para><para>En environnement multi-utilisateurs (OpenOffice.org install&#xE9; en mode &quot;Station de travail&quot;), votre r&#xE9;pertoire peut &#xEA;tre diff&#xE9;rent. Ainsi, mon r&#xE9;pertoire personnel se trouve dans :</para><para><filename>C:\Documents and Settings\ebellot\OpenOffice.org1.0</filename></para><para>J'ai donc copi&#xE9; le fichier <filename>TypeDetection.xml</filename> dans :</para><para><filename>C:\Documents and Settings\ebellot\OpenOffice.org1.0\user\</filename><filename>&#xAC; </filename><filename>config\registry\instance\org\openoffice\Office</filename></para><para>Il ne vous reste plus qu'&#xE0; relancer OpenOffice pour profiter du nouveau filtre.</para></section></section><section><title>Annexes</title><section><title>Ouvrir directement le fichier &quot;Flat XML&quot; dans Windows</title><para>Par d&#xE9;faut, le fichier g&#xE9;n&#xE9;r&#xE9; par le filtre &#xAB;&#xA0;Flat XML&#xA0;&#xBB; a une extension <filename>*.xml</filename>. Toutefois, il peut &#xEA;tre int&#xE9;ressant d'attribuer une extension propre &#xE0; ce type de fichier XML (par exemple <filename>*.ooo</filename>) et de l'associer &#xE0; OpenOffice.org. Il suffira alors d'un double-clic sur le fichier pour l'ouvrir avec OpenOffice.</para><para>Dans le fichier <filename>TypeDetection.xml</filename>, modifier la ligne :</para><programlisting>&lt;Data cfg:type=&quot;string&quot;&gt;0,,,,xml,20002,&lt;/Data&gt;</programlisting><para>et remplacer &#xAB;&#xA0;xml&#xA0;&#xBB; par &#xAB;&#xA0;ooo&#xA0;&#xBB; (ou l'extension que vous avez choisie) :</para><programlisting>&lt;Data cfg:type=&quot;string&quot;&gt;0,,,,ooo,20002,&lt;/Data&gt;</programlisting><para>Dor&#xE9;navant, lorsque vous choisirez d'enregistrer au format &#xAB;&#xA0;Flat XML&#xA0;&#xBB;, l'extension <literal>*.ooo</literal> sera automatiquement ajout&#xE9;e.</para><para>Ouvrez ensuite l'Explorateur de fichiers et faites <emphasis>Outils &gt; Options des dossiers &gt; onglet Types de fichiers</emphasis>. Cliquez sur bouton <emphasis>Nouveau</emphasis> et saisissez les 3 lettres de la nouvelle extension &#xAB;&#xA0;ooo&#xA0;&#xBB;.Validez. </para><para>S&#xE9;lectionnez la ligne du type &#xAB;&#xA0;OOO&#xA0;&#xBB; nouvellement cr&#xE9;&#xE9; et cliquez sur <emphasis>Modifiez</emphasis>. Dans la bo&#xEE;te de dialogue d'ouverture qui s'affiche, cliquez sur le boutons <emphasis>Autres</emphasis> et allez dans le r&#xE9;pertoire d'installation d'OpenOffice.org. S&#xE9;lectionnez <filename>ooowriter.exe</filename> puis validez toutes les bo&#xEE;tes de dialogues.</para><para>A partir de maintenant, les fichiers XML d'OpenOffice s'ouvriront directement avec OpenOffice-Writer.</para></section><section><title>Liens</title><itemizedlist>
   <listitem>
    <para>Pour t&#xE9;l&#xE9;charger le filtre :</para><para><ulink url="http://api.openoffice.org/servlets/ProjectDownloadList" type="">http://api.openoffice.org/servlets/ProjectDownloadList</ulink></para>
   </listitem>
  </itemizedlist><itemizedlist>
   <listitem>
    <para>La documentation officielle (succincte) :</para><para><ulink url="http://api.openoffice.org/unbranded-source/browse/~checkout~/api/devmanual/guideline.html?rev=1.9&amp;content-type=text/html" type="">Guidelines for writing the Developer Manual</ulink></para><para>Le filtre est initialement destin&#xE9; &#xE0; la r&#xE9;daction du manuel de d&#xE9;veloppement d'OpenOffice.</para>
   </listitem>
  </itemizedlist><itemizedlist>
   <listitem>
    <para>Le forum de d&#xE9;veloppement du projet <ulink url="http://api.openoffice.org/" type="">api.openoffice.org</ulink> :</para><para><ulink url="http://api.openoffice.org/servlets/SummarizeList?listName=dev" type="">http://api.openoffice.org/servlets/SummarizeList?listName=dev</ulink></para>
   </listitem>
  </itemizedlist><para>Dans le forum, une recherche sur le mot-clef &#xAB;&#xA0;flatxml&#xA0;&#xBB; donne de bons r&#xE9;sultats.</para><para/><para><emphasis role="strong">Note</emphasis></para><para>Ce document a &#xE9;t&#xE9; r&#xE9;dig&#xE9; sur <ulink url="http://www.openoffice.org/" type="">OpenOffice.org 1.0.1</ulink>. Il a &#xE9;t&#xE9; converti en XML avec le filtre &#xAB;&#xA0;Flat XML&#xA0;&#xBB;. Le fichier &#xAB;&#xA0;Flat XML&#xA0;&#xBB; a &#xE9;t&#xE9; converti au format <ulink url="http://www.oasis-open.org/committees/docbook" type="">Docbook-XML</ulink> avec <ulink url="http://saxon.sourceforge.net/" type="">Saxon 6.5.2</ulink> et la feuille XSLT <ulink url="http://www.chez.com/ebellot/ooo2sdbk" type="">docbook.xsl</ulink>. Le document Docbook a &#xE9;t&#xE9; converti au format HTML avec Saxon et les <ulink url="http://docbook.sourceforge.net/projects/xsl/index.html" type="">Docbook stylesheets 1.52.2</ulink> de Norman Walsh.</para></section></section></article>
