mardi 18 septembre 2012

OSx serait-il un oasis pour les linuxiens déçus?

En regardant derrière nous, c'est assez fou de voir à quel point Linux est devenu grand public, facile et efficace. Il est vrai que cela reste toujours délicat pour les détails et que les distributions toujours plus nombreuses. Mais objectivement, tout est plus facile. Et pourtant, c'est à ce moment là que certains fans de Linux choisissent pour verser dans l'OSx, alors que justement Apple est sur le point de devenir une caricature de Big Blue des années 80, arrogant et abusant de sa position dominante. Pour ma part, quand je regarde ce que devient Apple, je me surprend à trouver Microsoft fort sympathique . Comme quoi tout arrive.

Longue vie à linux, car tant que l'on a le choix, il y a de l'espoir.

PS:
Pour finir sur une note sérieuse, je dirais qu'il manque à Linux un déclencheur qui permettra de réalisera le mouvement actuellement en marche sur le mobile avec Androïd. Tous les matériaux sont là, il ne manque plus que le chef d'orchestre pour mettre cela en musique, et que linux deviennent l'OS favori de nos PC à la maison.

L'article : De Linux à Mac OSX Autre article sur le même sujet.
Article sur le même sujet.
Toutou linux
Et maintenant quelque chose de totalement différent.

samedi 1 septembre 2012

Si jamais votre parseur XML vous insulte avec une entité 'nbsp' non déclarée.

Le mariage d'XML et du HTML a donné à de nombreuses variations. Depuis HTML 4 (pour simplifier), le XTML est devenu une part importante du HTML. Pour ma part, je continue à travailler en 3.2, et à fuir tant que possible les normes XML d'HTML. Malheureusement, il est parfois obligatoire de s'y mettre. Pour cela, j'utilise Tidy, formidable utilitaire qui constitue une boite à outils fort utile. Je l'utilise régulièrement pour tester le HTML produit en php. Je l'utilise également pour transformer une page HTML en XML. C'est dans ce dernier cas d'usage que j'ai découvert un petit soucis. Voici la procédure en question:

 1- Récupérer le source HTML d'un site internet
("Wget www.site.com" par exemple)
 2- Ensuite convertir ce fichier html => xml
(en utilisant tidy par exemple : "Tidy -config tidy-xml.cfg source.html > source.xml")
 3- Edition (parsing) du fichier
(avec par exemple xpath ou autre parseur)

Le fichier xml obtenu (après avoir été aspiré puis transformé par tidy) n'est finalement pas bien formé. J'obtiens avec mon parseur un message de ce type: "Reference to undeclare entity 'nbsp'". L'erreur (ou plutôt le warning, cela dépend du parseur) est la non déclaration d'une entité, en l’occurrence nbsp (l'entité HTML désignant un espace non-sécable). Le XML ne reconnait pas par défaut cette entité (puisque cette entité est à l'origine une entité purement HTML). Malheureusement, cette absence de déclaration peut être considérée par un parseur xml comme fatale. La solution serait pour résoudre ce soucis potentiel de remplacer les ' ' par une entité compatible XML ' '. On peut également et plus simplement demander à Tidy de faire le travail. Pour cela, il suffit d'utiliser l'option Tidy: "quote-nbsp=no". L'entité est alors remplacée par un espace, ce qui est une bonne solution pour mon usage. J'ai donc modifié le fichier tidy-xml.cfg, fichier que j'ai récupéré dans la version graphique de Tidy (GUI en anglais).

Alors si jamais votre parseur vous insulte avec une entité nbsp non déclarée et que vous utilisez Tidy, vous saurez quoi faire. Tout cela pour si peu,...

XML in a Nutshell (sympa les premières de couv.)
Tidy, l'incroyable boite à outils
Esprit d'escalier