Jump to content

Le Linux BAR - Discussion de tout et de rien


Recommended Posts

Bon, je viens de me payer la frayeur de ma vie : en voulant convertir un DocBook en HTML, j'ai eu la grande surprise de constater que le gérérateur HTML a été écrit par jvachez... :D
Tu as des posters de jvachez dans ta chambre ?

Je ne sais pas pourquoi ce mec (enfin ce personnage de fiction) te tiens autant à coeur, mais tu est devenue sa meilleure groupie.

Parce qu'honnêtement, c'est pas possible autrement ! Quand ça vous chie un code comme celui-là, c'est à en désespérer !
Quel est le problème vraiment ?

  • Ça ne valide pas ? Ça ne se voit pas au premier coup d'½il.
  • C'est du Transitional ? Personne n'est parfait. Ce n'est pas la première page HTML que je verrai en transitional. Je pense même qu'il y en a beaucoup beaucoup plus qu'en strict malheureusement. Mais si ça valide, c'est déjà mieux que rien
  • Les balises sont en lettre capitales ? Oui, ça ça suxe bien. Je crois même qu'en strict c'est interdit (à moins que ce soit en XHTML).
  • Les balises sont sur plusieurs lignes ? Ben je ne suis pas sûr que ça gêne le navigateur ou le parseur de validation. Tant que c'est valide moi je ne trouve pas ça bien grave. Après c'est vrai que c'est un choix surprenant et je n'en vois pas bien l'intérêt. Surtout pour débuger, ça ne doit pas être la fête.

Et si tu veux savoir dans quel but je l'ai utilisé, ben non c'est pas pour JCaddie :vomi1:
On ne s'en serait pas douté
<TITLE
>KDE 4, KDE 4.X ou KDE 4.X.Y ?</TITLE
>

Allez, balance le nom qu'on conspue les auteurs un coup... :francais:
<META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79">

Link to comment
Share on other sites

Bon, je viens de me payer la frayeur de ma vie : en voulant convertir un DocBook en HTML, j'ai eu la grande surprise de constater que le gérérateur HTML a été écrit par jvachez... :D
Tu as des posters de jvachez dans ta chambre ?

Je ne sais pas pourquoi ce mec (enfin ce personnage de fiction) te tiens autant à coeur, mais tu est devenue sa meilleure groupie.

:francais:

C'est juste que jvachez, c'est quand même la référence en matière de code HTML dégueulasse...

Et vu que j'ai fait un Master Ingénierie de l'Internet exprès pour apprendre les bonnes pratiques du développement Web, et aussi parce que je me bats pour faire respecter les recommandations du W3C, j'attends d'applis libres, qu'elles jouent le jeu et soient les premières à faire un effort !

Parce qu'honnêtement, c'est pas possible autrement ! Quand ça vous chie un code comme celui-là, c'est à en désespérer !
Quel est le problème vraiment ?
  • Ça ne valide pas ? Ça ne se voit pas au premier coup d'½il.
  • C'est du Transitional ? Personne n'est parfait. Ce n'est pas la première page HTML que je verrai en transitional. Je pense même qu'il y en a beaucoup beaucoup plus qu'en strict malheureusement. Mais si ça valide, c'est déjà mieux que rien
  • Les balises sont en lettre capitales ? Oui, ça ça suxe bien. Je crois même qu'en strict c'est interdit (à moins que ce soit en XHTML).
  • Les balises sont sur plusieurs lignes ? Ben je ne suis pas sûr que ça gêne le navigateur ou le parseur de validation. Tant que c'est valide moi je ne trouve pas ça bien grave. Après c'est vrai que c'est un choix surprenant et je n'en vois pas bien l'intérêt. Surtout pour débuger, ça ne doit pas être la fête.

Tout ça est gênant, mais c'est pas le pire... Non le pire dans tout ça, c'est quand même les attributs dans les balises ! Des width, des color...

Et le CSS, ça sert à quoi ???

Il aurait été tellement plus simple de mettre des id/class avec des noms conventionnels et de proposer une CSS par défaut (quitte à la retaper pour ceux qui se la sentent).

Link to comment
Share on other sites

On ne s'en serait pas douté
<TITLE
>KDE 4, KDE 4.X ou KDE 4.X.Y ?</TITLE
>

Allez, balance le nom qu'on conspue les auteurs un coup... :devil:
<META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79">

Oui, ben il était très tôt du matin et j'avais pas encore les yeux en face des trous. M'en suis rendu compte après... :transpi:

Les points les plus cracra sont quand même :

* les majuscules, surtout que ça coûtait rien de tout mettre en minuscule

* l'indentation dégueulasse. Ok, c'est pas dans la norme. En C aussi, c'est pas dans la norme, et pourtant...

* les attributs de forme partout. Ça c'est bien gruik. Je croyais que le but des trucs over verbeux à base de langages structurés comme le XML étaient là justement pour arriver à dissocier le fond de la forme...

:p

Link to comment
Share on other sites

Tout ça est gênant, mais c'est pas le pire... Non le pire dans tout ça, c'est quand même les attributs dans les balises ! Des width, des color...

Et le CSS, ça sert à quoi ???

Effectivement, je n'avais pas fait attention :transpi:
l'indentation dégueulasse. Ok, c'est pas dans la norme. En C aussi, c'est pas dans la norme, et pourtant...
La différence étant qu'en C, c'est édité à la main (mis à part les autotools et autres *cons, *make, ...). Là c'est généré automatiquement et ça n'a pas vocation à être lu en permanence.
Link to comment
Share on other sites

Bonjour @ tous !

Je vous est parlé dans un précedent post de "Libr'expOS", un salon de découverte du logiciel libre, le 5 avril a dijon. Je vous fais par d'un petit retour d'expérience sur cette événement.

La journée a été tres réussit, environ 200 personnes sont venus ! bien plus que nos espérances pour notre premiere fois !! l'événement a été organisé par ubuntu-dijon (dont je fais partie ;)) et coagul. Nous avons pu rencontrer de nombreuses personnes interessante de tout age et de tout genre, échanger des idée, point de vue, et faire partager notre amour :cartonrouge: du logiciel libre.

Bref bilan plus que positif, nous voila plus que motivé pour un Libr'expOS 2 !! :mdr:

Link to comment
Share on other sites

ben du programme... :transpi:

Ben, c'est dokbook2html qui a fait ça comme un gorêt :incline:

Ben sans-doute que si tu avais transformé directement en xhtml ça aurait été largement plus joli...

Faire de la conversion xml (docbook) -> xml (xhtml) est plus simple et plus propre que de faire xml (docbook) -> sgml (html). Il y a des feuilles de style xsl pour faire ça si je me souviens bien.

Sinon pour les balises en majuscules, en xhtml c'est pas autorisé, en html 4 les minuscules sont à priori recommandées, mais le html est de toute façon case-insensitive.

Link to comment
Share on other sites

ben du programme... :transpi:

Ben, c'est dokbook2html qui a fait ça comme un gorêt :francais:

Ben sans-doute que si tu avais transformé directement en xhtml ça aurait été largement plus joli...

Faire de la conversion xml (docbook) -> xml (xhtml) est plus simple et plus propre que de faire xml (docbook) -> sgml (html). Il y a des feuilles de style xsl pour faire ça si je me souviens bien.

Sinon pour les balises en majuscules, en xhtml c'est pas autorisé, en html 4 les minuscules sont à priori recommandées, mais le html est de toute façon case-insensitive.

Oki, donc je ne dois pas utiliser la commande "docbook2html" alors ?

Quel est dans ce cas la bonne commande à appliquer, je te prie :chinois:

Link to comment
Share on other sites

Oki, donc je ne dois pas utiliser la commande "docbook2html" alors ?

Quel est dans ce cas la bonne commande à appliquer, je te prie :francais:

D'abord, installer le paquet contenant la feuille xsl xhtml/docbook.xsl, sous ubuntu c'est "docbook-xsl".

Ensuite, aller dans le bon dossier et lancer :

 $ xsltproc xhtml/docbook.xsl --output /path/to/article.xhtml /path/to/article.db

Et voilà! Ça marche :chinois:.

Testé avec un fichier d'exemple http://www.freebsd.org/doc/en_US.ISO8859-1...ok-article.html modifié pour rajouter l'url correct pour le doctype :

<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook V4.1//EN" "http://www.oasis-open.org/docbook/xml/4.1/docbookx.dtd">

<article>
 <articleinfo>
   <title>An example article</title>

   <author>
     <firstname>Your first name</firstname>
     <surname>Your surname</surname>
     <affiliation>
       <address><email>foo@example.com</email></address>
     </affiliation>
   </author>

   <copyright>
     <year>2000</year>
     <holder>Copyright string here</holder>
   </copyright>

   <abstract>
     <para>If your article has an abstract then it should go here.</para>
   </abstract>
 </articleinfo>

 <sect1>
   <title>My first section</title>

   <para>This is the first section in my article.</para>

   <sect2>
     <title>My first sub-section</title>

     <para>This is the first sub-section in my article.</para>
   </sect2>    
 </sect1>
</article>

Voici ce que l'on obtient en sortie :

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>An example article</title><meta name="generator" content="DocBook XSL Stylesheets V1.72.0" /><meta name="description" content="If your article has an abstract then it should go here." /></head><body><div class="article" lang="en" xml:lang="en"><div class="titlepage"><div><div><h1 class="title"><a id="id2486700"></a>An example article</h1></div><div><div class="author"><h3 class="author"><span class="firstname">Your first name</span> <span class="surname">Your surname</span></h3><div class="affiliation"><div class="address"><p><code class="email"><<a href="mailto:foo@example.com">foo@example.com</a>></code></p></div></div></div></div><div><p class="copyright">Copyright © 2000 Copyright string here</p></div><div><div class="abstract"><p class="title"><b>Abstract</b></p><p>If your article has an abstract then it should go here.</p></div></div></div><hr /></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="#id2523528">My first section</a></span></dt><dd><dl><dt><span class="sect2"><a href="#id2523536">My first sub-section</a></span></dt></dl></dd></dl></div><div class="sect1" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="id2523528"></a>My first section</h2></div></div></div><p>This is the first section in my article.</p><div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="id2523536"></a>My first sub-section</h3></div></div></div><p>This is the first sub-section in my article.</p></div></div></div></body></html>

Alors oui c'est pas indenté, mais ça c'est tout simple à faire en xsl si il y a besoin, par exemple avec la feuille de style suivante :

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" indent="yes"/>
<xsl:strip-space elements="*"/>
<xsl:template match="/">
 <xsl:copy-of select="."/>
</xsl:template>
</xsl:stylesheet>

Et du coup, la commande devient :

 $ xsltproc xhtml/docbook.xsl /path/to/article.db | xsltproc --output /path/to/article.xhtml /path/to/indent.xsl -

Et voilà :

<?xml version="1.0"?>
<html xmlns="http://www.w3.org/1999/xhtml">
 <head>
   <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
   <title>An example article</title>
   <meta name="generator" content="DocBook XSL Stylesheets V1.72.0"/>
   <meta name="description" content="If your article has an abstract then it should go here."/>
 </head>
 <body>
   <div class="article" lang="en" xml:lang="en">
     <div class="titlepage">
       <div>
         <div>
           <h1 class="title"><a id="id2486700" shape="rect"/>An example article</h1>
         </div>
         <div>
           <div class="author">
             <h3 class="author">
               <span class="firstname">Your first name</span>
               <span class="surname">Your surname</span>
             </h3>
             <div class="affiliation">
               <div class="address">
                 <p>
                   <code class="email"><<a href="mailto:foo@example.com" shape="rect">foo@example.com</a>></code>
                 </p>
               </div>
             </div>
           </div>
         </div>
         <div>
           <p class="copyright">Copyright © 2000 Copyright string here</p>
         </div>
         <div>
           <div class="abstract">
             <p class="title">
               <b>Abstract</b>
             </p>
             <p>If your article has an abstract then it should go here.</p>
           </div>
         </div>
       </div>
       <hr/>
     </div>
     <div class="toc">
       <p>
         <b>Table of Contents</b>
       </p>
       <dl>
         <dt>
           <span class="sect1">
             <a href="#id2523528" shape="rect">My first section</a>
           </span>
         </dt>
         <dd>
           <dl>
             <dt>
               <span class="sect2">
                 <a href="#id2523536" shape="rect">My first sub-section</a>
               </span>
             </dt>
           </dl>
         </dd>
       </dl>
     </div>
     <div class="sect1" lang="en" xml:lang="en">
       <div class="titlepage">
         <div>
           <div>
             <h2 class="title" style="clear: both"><a id="id2523528" shape="rect"/>My first section</h2>
           </div>
         </div>
       </div>
       <p>This is the first section in my article.</p>
       <div class="sect2" lang="en" xml:lang="en">
         <div class="titlepage">
           <div>
             <div>
               <h3 class="title"><a id="id2523536" shape="rect"/>My first sub-section</h3>
             </div>
           </div>
         </div>
         <p>This is the first sub-section in my article.</p>
       </div>
     </div>
   </div>
 </body>
</html>

On peut rajouter simplement une feuille de style css en ajoutant l'option suivante dans le premier xsltproc :

--stringparam html.stylesheet "my-stylesheet.css"

Quelques autres infos là aussi : http://www.sagehill.net/docbookxsl/OtherOutputForms.html (et un peu partout sur le net en cherchant)

Link to comment
Share on other sites

Salut :)

Petite question sur thunderbird, dans la version windows on peut, quand on créer un compte, créer un compte "Gmail", qui se config tout bien.

Cette option n'est pas présente dans la version linux, pourquoi ? :|

Sinon il y a moyen, à l'instar de firefox, faire un profil commun windows/linux pour thunderbird ?

EDIT : ça j'ai trouvé, faut lancer thunderbird comme quand on le fait avec firefox pour faire cela : thunderbird -profilemanager

Ensuite on créer un profil et dans le dossier du profil on choisit celui utilisé sous windows :mdr:

Meric d'avance :p

Link to comment
Share on other sites

Salut :)

Petite question sur thunderbird, dans la version windows on peut, quand on créer un compte, créer un compte "Gmail", qui se config tout bien.

Cette option n'est pas présente dans la version linux, pourquoi ? :copain:

As-tu la même version de TB ? Car l'option pour faire un compte GMail est apparue assez tard dans TB...

Link to comment
Share on other sites

les produits de la mofo ont pris la mauvaise habitude d'être mieux foutu et plus à jour sur les plateformes proprio que sur les plateformes libres... :pleure:

Ce qui est surtout bizarre c'est que tout ne soit pas actif sur toutes les build... pourtant presque tout est codé en xul, ou bien au pire y'a toujours une couche d'abstraction de l'OS dans le code de mozilla, donc je vois pas trop pourquoi certaines fonctionnalités auraient besoin d'être désactivées en fonction de l'OS (à moins que ça soit codé n'importe comment).

Link to comment
Share on other sites

  • 2 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...