Une nouvelle charte a été élaborée pour le Planet-Libre. Tous les membres sont invités à la consulter et à la respecter.

Nous Suivre

    feed feed feed

En Direct de la Galerie

En Direct du Forum

Les Membres

Participer

Filter les articles :     Articles du jour   -   Articles de la semaine   -   Articles du mois   -   Tous
Gravatar de Aurélien Bompard
Nouveau plugin pour Dotclear : notes de bas de page 
  • 1 vote
    vote oui
Par Aurélien Bompard, le 26/02/2010 à 22:14.

Quand on écrit un billet avec Dotclear, on dispose de deux modes : le mode “wiki” ou le mode “xhtml”.

En mode wiki, on dispose d’une syntaxe codifiée et simplifiée, mais il faut apprendre cette syntaxe, et ce qui est affiché à l’écran est très différent de ce qui sera affiché sur le site ensuite. Il y a quelques temps, je préférais ce mode de rédaction (c’est plus rigolo :) ), mais c’est moins facile d’accès pour les débutants, et après tout, on ne fait pas des programmes que pour les informaticiens.

Le second mode affiche le texte dans la zone d’édition avec le formatage qu’il aura à l’affichage final, un peu comme votre traitement de texte préféré[1]. En plus, et c’est important pour moi, il y a un onglet “source” qui permet de voir le XHTML généré, et éventuellement de faire des retouches, ou d’ajouter des blocs de code.

Mais voilà, le mode wiki a beaucoup plus de fonctionnalités que ce qui est repris dans la barre de formatage du mode xhtml. Notamment, il y en a une que j’aime bien utiliser : les notes de bas de page[2]. En mode wiki, on entoure la note par des symboles “$$”, et Dotclear génère automatiquement l’appel de note, la note de bas de page, et les liens entre les deux. C’est très pratique, je voulais retrouver cette possibilité en mode xhtml.

J’ai donc fait un plugin pour Dotclear qui ajoute un bouton à la barre de formatage, et qui génère les appels de note, la zone de notes de bas de page, les liens entre les notes, tout en s’occupant d’incrémenter le numéro de note à chaque fois. Le plugin s’appelle footnotesToolbar, et il est disponible sur le lab Dotclear. Si vous pensez qu’il peut vous être utile, n’hésitez pas à le télécharger et à me donner votre avis !

Bonne rédaction :)

Mise à jour : j’ai aussi ajouté un bout de code pour lui faire afficher les notes de bas de page au survol de l’appel de notes. C’est une très bonne idée que j’ai piquée à Dokuwiki, sur conseil d’antistress (voir commentaires ci-dessous).

Notes :

[1] par exemple OpenOffice.org.

[2] c’est ça

Retourner au sommaire
Gravatar de Aurélien Bompard
Copenhague : les ONGs se sont-elles trompées de cible ? 
  • 5 votes
    vote oui
Par Aurélien Bompard, le 31/01/2010 à 21:20.

Il est un peu tard pour faire un compte-rendu de la conférence de Copenhague sur l’évolution du climat, mais bon, il faut le temps que les articles soient lus, que les idées se décantent, etc, etc. Voilà ce que j’en retire.

Stop the Politics Climate Treaty Now - Greenpeace
Creative CommonsStop the Politics Climate Treaty Now - Greenpeace” par Takver

« De la démocratie dans le monde »

Je n’ai pas de remarque particulièrement plus pertinente que qui que ce soit d’autre sur le sujet, ni de point de vue d’insider (je n’y étais pas), mais j’aimerais tout de même porter à votre attention un article que je trouve à la fois pertinent, bien argumenté, et surtout doté d’une bonne prise de recul sur cette question. Il s’agit de l’article de Sylvestre Huet, journaliste scientifique à Libération, intitulé « Climat : qui est responsable du Flopenhague ? ».

Je vous encourage évidemment à courir le lire en entier, mais pour faire un résumé rapide je pense qu’il pose une très bonne question : les ONG écolo se sont-elles trompées de cible ?

En effet, en orientant leur actions et leurs communications vers les responsables politiques, n’ont-elles pas choisi la solution de facilité (toute relative qu’elle est bien sûr ) ? Les politiques sont peu nombreux, semblent avoir le pouvoir de décision et d’action, sont en général très instruits, etc. Ils ressemblent à s’y méprendre à la parfaite cible à viser.

Sauf que voilà, comme l’écrivait déjà Alexis de Tocqueville au début du 19ème siècle dans De la Démocratie en Amérique, et comme le rappelle Jean-Marc Jancovici sur son site, la démocratie est un régime politique dans lequel les dirigeants sont des représentants du peuple. C’est le peuple qui décide, pas les politiques, et il ne peut pas se reposer sur eux pour être une sorte de grand frère bienveillant qui prend tout seul les bonnes décisions. La démocratie responsabilise le peuple, il se doit donc d’être responsable. Au passage, je vous encourage à aller lire les deux articles de J.M. Jancovici sur le sujet, c’est particulièrement intéressant. Avec du très très bon dedans, notamment la façon dont on pourrait mettre en place de la démocratie directe, le fait que les sondages actuels en sont un ersatz puant, etc. Mais je ne vais pas me lancer dans la paraphrase de J.M.J., j’ai mis ça dans mes bonnes résolutions pour 2010.

COP15 - Klimademo
Creative CommonsCOP15 - Klimademo” par gruenenrw

Pour en revenir au sujet, je pense donc que Sylvestre Huet met le doigt sur le fond du problème : pour faire changer les choses, il ne faut pas essayer de convaincre les politiques, il faut convaincre les citoyens. Et c’est beaucoup plus difficile. Les citoyens :

  • sont beaucoup plus nombreux
  • sont principalement préoccupés par le quotidien, bien moins par les moyens et longs termes
  • ne sont pas forcément intéressés par le sujet
  • ont des niveaux d’instruction très variés
  • sont déjà abondamment bombardés de messages de communication (la pub) tentant de les convaincre

Bref, c’est une toute autre paire de manches. Sauf que voilà, le jour où un politique lira dans les derniers sondages : « Pensez-vous qu’il faut mettre en place une taxe carbone ? Oui 70% / Non 30% », vous pouvez être sûr qu’il le fera sans hésiter une seconde. Après tout, c’est bien ça son boulot.

Bring Home a Climate Treaty
Creative CommonsBring Home a Climate Treaty” par Takver

Un pacte avec le diable ?

Alors ça tombe bien, il y a des gens qui bossent depuis des années sur la façon de diffuser un message pour convaincre le public. Ce sont les gens du marketing et de la communication. Principalement employés par les publicitaires, ils le sont aussi parfois par les lobbies, les politiques, etc. Je sais qu’on touche là à un tabou, parce que la consommation de masse et tout ce qui peut l’inciter est aux antipodes de l’écologie, mais je pense qu’il faudra inévitablement utiliser ou acquérir les compétences qui sont actuellement celles des agences de communication.

Ça me rappelle une situation relativement similaire que nous avons vécu dans le monde du logiciel libre. Mes premiers contacts avec le logiciel libre l’ont été par résistance à une société en situation de monopole (il s’agit bien sûr de Microsoft) et dont les pratiques commerciales étaient… comment dire… très éloignées de ma conception de l’éthique. :) Autant dire qu’à l’époque, toute société qui se montait dans le domaine du logiciel libre recevait illico un a priori négatif, d’autant plus si elle gagnait en popularité (« Mandrake c’est du Microsoft à la sauce Linux »).

Et au cours des années, les associations du logiciel libre se sont rendu compte que ce qui les empêchait de toucher le grand public, ce n’était plus les raisons techniques (logiciels moins faciles d’utilisation) mais tout simplement la méconnaissance des gens, le manque de communication, et finalement de marketing.

Je pense que la première association à avoir lancé une opération marketing d’envergure a été la Fondation Mozilla. Une fois l’horreur et le rejet viscéral passés, beaucoup d’autres lui ont emboîté le pas.

Copenhagen during COP15
Creative CommonsCopenhagen during COP15” par UN Climate Change

Y’a du boulot…

Dans le cadre de l’écologie, je pense qu’il y a là un exemple à prendre. Les associations du logiciel libre ne sont pas spécialement plus fortunées que celles qui défendent l’environnement, il y a donc très probablement des méthodes à réutiliser. Je pense par exemple au concours de vidéo que Mozilla a lancé pour la sortie de Firefox 3.0. Pourquoi pas un concours de vidéo pour sensibiliser le public à sa dépendance aux énergies fossiles ? À l’impact du réchauffement planétaire sur les activités humaines futures ? Je suis sûr qu’il y a des idées à échanger.

La communauté du logiciel libre étant déjà plutôt politisée (la liberté dans le logiciel est un problème éminemment politique), je suis sûr qu’il y a déjà beaucoup de membres communs aux deux causes. J’espère que le besoin de mutualisation des compétences et des expériences va se faire plus clair au cours des mois qui viennent, et que nous pourrons nous entre-aider sur ce sujet commun. Il est grand temps, plus nous attendons et plus la note climatique sera salée.

COP15 Climate March
Creative CommonsCOP15 Climate March” par america.gov

Retourner au sommaire
Gravatar de Aurélien Bompard
Export ODT pour Trac 
  • 4 votes
    vote oui
Par Aurélien Bompard, le 30/12/2009 à 11:27.

Et voilà, je viens de boucler une première version utilisable d’un plugin d’export ODT pour Trac.

Parce que une fois c’est bien, deux fois c’est mieux, et trois fois bonjour les dég… euh, non en fait ça devrait marcher pareil que le reste. Il faut excuser mon humour pourri, mais je cauchemarde rêve de l’XML en ce moment.

Après avoir bien cherché, je suis obligé de me rendre à l’évidence : il n’y a toujours personne d’autre que moi qui ait écrit de feuille de style XSLT pour convertir de l’HTML en ODT. Dans l’autre sens, il y en a pléthore, mais dans ce sens, rien. Comme j’ai réutilisé pour le plugin Trac les feuilles que j’avais écrites pour le plugin Dotclear, je me suis dit qu’il n’était pas forcément complètement stupide d’en faire un projet séparé. C’est donc ce que j’ai fait, j’ai ouvert un projet sur Gitorious appelé xhtml2odt (oui, très original, je sais). J’en ai profité pour écrire tout un tas de tests unitaires, pour m’éviter les régressions et aussi parce que ça se prête quand même bien aux conversions :) .

Je vais maintenant adapter le plugin Dotclear pour qu’il utilise ces feuilles, qui ont été légèrement améliorées lors de la réalisation du plugin Trac.

Si vous décidez de les utiliser pour un autre plugin d’export ODT dans une autre appli, ce serait cool de m’envoyer un petit mail, ça m’intéresse :)

Voilà, si vous utilisez Trac et que vous êtes intéressé par l’export ODT des les pages du wiki, n’hésitez pas à tester ! Ce n’est pas encore parfait mais c’est déjà suffisamment avancé pour que vos retours soient utiles.

Retourner au sommaire
Gravatar de Aurélien Bompard
Téléphone portable : pas d'OS parfait en vue 
  • 12 votes
    vote oui
Par Aurélien Bompard, le 17/10/2009 à 15:59.

Je m’intéresse, comme beaucoup en ce moment, à ce qui se passe dans le monde des smartphones, ces téléphones / PDA dont tout le monde parle. Malheureusement, pour quelqu’un attaché à ses libertés électroniques (et plus généralement, n’ayant pas envie de se faire prendre pour un porte-feuille sur pattes), j’ai la forte impression qu’il n’y a pas de Graal en vue… Voilà un petit passage en revue des différentes options.

Le plus célèbre : l’iPhone

Je vais commencer par celui que tout le monde connaît, l’iPhone d’Apple. Très joli couple appareil / système d’exploitation, qui cache quand même des limitations comme on en avait rarement vu dans le monde de l’informatique. Je n’en ai pas, donc ce qui suit est basé sur les infos que j’ai pu glaner sur le web. Si je me suis trompé, n’hésitez pas à corriger.

  • Déjà, il faut iTunes pour l’activer, sans ça il ne sert à rien. Non seulement je trouve qu’il est abusif de lier l’utilisation d’un appareil mobile à un logiciel sur un PC classique, mais en plus pour moi qui suis sous Linux, c’est raté.
  • On ne peut installer des applications dessus qu’en passant par le site web d’Apple, où l’entreprise contrôle sévèrement ce qui a le droit d’exister sur l’iPhone. Il est déjà arrivé à plusieurs reprises que des logiciels soient censurés, soit parce qu’ils entraient en concurrence avec la stratégie commerciale d’Apple (Google Voice par exemple), soit parce qu’ils n’étaient pas politiquement corrects (iBoobs par exemple). Imaginez si seul Microsoft pouvait dicter ce que vous installez sur votre PC Windows ? Pas de Firefox, pas d’OpenOffice, pas de Thunderbird, pas de VLC, etc… Avec l’iPhone, c’est une réalité.
  • Jusqu’à très récemment (juin 2009), pour pouvoir faire fonctionner son iPhone, il fallait obligatoirement donner son numéro de carte bleue à Apple, qui le stockait sur ses serveurs pour vous débiter automatiquement lors d’achat d’applications ! Rien que ça…
  • C’est un peu plus geek, mais pour pouvoir développer des applications qui tourneront sur iPhone, il faut absolument avoir un Mac. Cette manière de faire de la quasi vente liée commence à sentir très fortement l’arnaque.
  • La batterie n’est pas remplaçable, elle est soudée. Quand on sait que c’est ce qui s’use le plus, c’est quand même vraiment n’importe quoi.

Il paraît qu’il est possible de “pirater” un iPhone pour contourner certaines de ces limitations, mais je ne vois pas pourquoi j’achèterais un téléphone qui a été conçu dans le but de limiter ses utilisateurs. Bref, c’est clair que l’iPhone ne passera pas par moi.

Le plus ancien : Windows Mobile

Cela fait plusieurs années que j’ai des contacts avec les smartphones sous Windows Mobile. Le premier contact, dans un cadre professionnel, a été avec un Qtek 2020i (HTC Alpine), sous Windows CE 3 (je crois). Il m’est apparu tout de suite que ce sont en fait des mini-ordinateurs dans lesquels on a essayé de faire rentrer un Windows au chausse-pied, et sur lesquels on a greffé une application de téléphonie. C’est assez pratique comme PDA, mais difficilement utilisable comme téléphone. Parfois les SMS n’étaient pas annoncés, les options de sonneries étaient plus que minimales, le lien entre les contacts et le reste des applis était rarement fait, etc.

Or depuis quelques mois, mon frère m’a donné son ancien téléphone sous Windows Mobile 6. La situation technique s’est beaucoup améliorée, c’est nettement plus utilisable en tant que téléphone, notamment grâce aux interfaces d’HTC. Cependant, la synchronisation avec un PC sous linux est encore assez sensible, c’est toujours du propriétaire, et sous Windows il n’est toujours pas possible de le synchroniser avec quelque chose de standard (un fichier VCard ou iCalendar par exemple), seul Outlook est accepté. A tel point que, par exemple, ma boîte n’utilise pas Outlook comme client de messagerie, mais est obligée de l’accpeter quand même sur les postes parce que certaines personnes haut placé ont des téléphones/PDA sous Windows Mobile… Là aussi, la quasi vente liée qu’on connaît bien chez Microsoft.

Au passage, depuis que j’ai ce téléphone, j’ai pu participer à SynCE, le projet qui permet de synchroniser un téléphone sous Windows Mobile et un ordinateur sous Linux. J’ai corrigé quelques bugs de conversion, j’ai ajouté des tests unitaires, quelques fonctionnalités de partage de connexion, et finalement les responsables du projet m’ont donné les accès en écriture au SVN :) Très sympa de leur part.

En tout cas, grâce à SynCE et OpenSync, je peux synchroniser mon Windows Mobile avec mon PC Linux, et ça c’est bien cool. L’installation d’applications n’est pas restreinte, donc la plate-forme est assez ouverte, bien que fondamentalement propriétaire.

Le challenger : Android

Android est un système d’exploitation libre pour téléphone portable, fait par Google. Certains gourous de chez XDA-developers ont porté Android sur mon téléphone originellement sous Windows Mobile, donc j’ai pu l’essayer. J’ai un avis très mitigé : techniquement, c’est très joli et très intuitif, mais ça semble tout de même très fermé (un comble pour un OS libre). Les applications de contacts et de calendrier ne sont pas libres, elles sont propriété de Google et non redistribuables. De plus, on peut démarrer le téléphone sans compte Google, mais il le demande aussitôt. On peut ignorer l’inscription, mais dans ce cas il est impossible d’utiliser :

  • La gestion des contacts
  • Le calendrier
  • L’application d’installation de nouveaux programmes

On est donc coincé avec un joli téléphone, sans les applications les plus utiles, et sans la possibilité d’en installer d’autres.

Ah, et au passage : il n’est pas prévu qu’Android puisse se synchroniser avec un PC ou un Mac, quelque soit le système d’exploitation de ce dernier : le principe est de tout synchroniser avec son compte Google, justement…

On sait que l’objectif d’Android est de concurrencer Apple avec l’iPhone, mais ce serait bien qu’il ne le concurrence pas sur le terrain des restrictions et de la vente liée. Pour l’instant on est loin du niveau de restrictions de l’iPhone, mais c’est quand même inquiétant. L’omniprésence de Google est elle-aussi inquiétante. Si Microsoft se fait remplacer par Google, on y aura perdu au change : on sera toujours dans une situation de monopole, mais elle sera plus difficile à déloger : à la différence de Microsoft, chez Google, ils sont bons.

Le petit nouveau : Maemo

Maemo est un système d’exploitation libre développé par Nokia à destination de ses “tablettes internet” : des PDA communicants très évolués à qui il ne manque que la téléphonie GSM. L’OS est basé sur Linux, et utilise massivement GTK/GNOME. Très récemment est sorti le N900 qui ajoute un puce GSM. Le tableau semble complet, mais voilà : il y a quelques mois Nokia a racheté TrollTech, la société à l’origine de QT (concurrent de GTK). Maemo 5, l’OS du N900, est encore basé sur GTK, mais Nokia a annoncé que les prochaines versions seront basées sur QT. En achetant un N900 aujourd’hui, on se retrouve finalement à investir dans une plate-forme logicielle en fin de vie.

Le plus geek : OpenMoko

OpenMoko est une plate-forme 100% libre et 100% ouverte, mais encore en développement. Elle n’est pour l’instant pas vraiment utilisable en tant que téléphone de tous les jours pour le quidam moyen, et son évolution est assez lente par manque de ressources.

Conclusion

Personne ne sort de mes tests avec un sans faute, et c’est bien dommage. Le salut viendra-t-il de LiMo ? Ce qui est certain, c’est que le secteur est en pleine ébullition en ce moment. Vos avis sont évidemment les bienvenus.

Retourner au sommaire
Gravatar de Aurélien Bompard
Diablo Swing Orchestra sur Jamendo 
  • 8 votes
    vote oui
Par Aurélien Bompard, le 05/09/2009 à 18:51.

Trouvaille musicale de la semaine, complètement par chance, sur Jamendo.

Pour ceux qui ne connaissent pas encore, Jamendo est un site de diffusion de musique sous licence Creative Commons. J’ai écrit un petit billet sur le sujet il y a quelques années. Toute la musique que vous trouverez là-bas est au minimum librement téléchargeable et distribuable, et même parfois plus (remixable, utilisable commercialement, etc…). Alors bien sûr, vous n’y trouverez pas Britney Spears et autres Star Academy, les artistes y sont généralement auto-produits. Mais attention, ça ne veut pas dire qu’il n’y a que de la musique ressemblant à celle du cousin Kevin dans sa cave, ou à celle de 5 gus dans un garage. J’en veux pour preuve l’énorme découverte de cette semaine : Diablo Swing Orchestra.

Dès les tags, le groupe annonce la couleur : Jazz-Métal. Oulà ! Mais quelle est donc cette chose ? Je vous laisse vous faire une idée avec le lecteur ci-dessous.

 

Alors ? C’est-y pas gigantesque ? Lisez-aussi la description du groupe sur Jamendo, c’est bien fun :)

Mes préférées :

Ouais, presque toutes, quoi, et les autres sont vraiment bien aussi… Évidemment, la chanteuse rappelle un peu la belle époque de Nightwish (ce qui n’est pas pour me déplaire…), mais il n’y a pas que ça, la musique est très bonne elle-aussi.

Certes, tout n’est pas parfait sur Jamendo, il faut chercher un peu pour trouver ce qui vous plaît. Mais quand on tombe sur un groupe comme ça, on accepte facilement les quelques écoutes ratées. Au passage, j’en profite pour lister les albums que j’ai bien aimé.

Je souhaite le plus grand succès possible au Diablo Swing Orchestra, en espérant qu’ils continuent à placer leur musique sous licence Creative Commons. Merci pour la musique, vous êtes très très forts !

Retourner au sommaire
Gravatar de Aurélien Bompard
Au nom du libre je te baptise : Photo Imp ! 
  • 0 vote
    vote oui
Par Aurélien Bompard, le 01/08/2009 à 18:53.

Mon afficheur web de photos, que j’avais présenté précédemment, a maintenant un nouveau nom : Photo Imp !

J’en ai profité pour ouvrir un espace sur Gitorious, pour que le développement soit plus accessible et plus visible.

En ce moment, je suis en train de porter la bibliothèque javascript type “Lightbox” qui permettait d’afficher les photos depuis ShadowBox vers PrettyPhoto, puisque ShadowBox n’est plus libre dans les versions récentes (utilisation commerciale interdite). C’est un peu plus long que prévu, mais je vois le bout.

Pour en revenir au nom, il a été trouvé par Peuf, et c’est une référence à une créature du monde de Terry Pratchett : le “photo imp” est un petit démon dans une boîte noire avec une petite fenêtre, appelée Iconographe. Quand on ouvre la fenêtre, le “photo imp” peint très rapidement ce qu’il voit sur une toile. L’appareil dispose aussi d’une salamandre pour éclairer rapidement l’objet à dessiner. C’est évidemment une transposition de l’appareil photo, très très bien vu de la part de Peuf, merci beaucoup. Pour les détails : voyez la page Wikipedia.

Je publierai une nouvelle version quand j’aurais porté le code sur PrettyPhoto. Si vous utilisez Photo Imp, dites-le moi, ça m’intéresse !

Retourner au sommaire
Gravatar de Aurélien Bompard
Export des billets Dotclear en ODT 
  • 0 vote
    vote oui
Par Aurélien Bompard, le 10/06/2009 à 11:46.

Comme dirait la demoiselle : « Oops, I did it again » (oui, je sais, je ne suis pas fier). Il y a quelque temps (deux ans en fait) que je m’intéresse au format OpenDocument, utilisé principalement par OpenOffice. Je vous annonce donc solannellement en ce jour béni de votre divinité préférée le résultat de mon labeur acharné : un plugin d’export des billets de Dotclear en ODT. Oui, tout ça pour ça.

old book stara ksiazka
Creative Commonsold book stara ksiazka” par v.max1978

Le format ODT

Depuis les débuts de l’informatique grand public, le traitement de texte est omniprésent, et a rapidement remplacé la machine à écrire. Au début des années 90, plusieurs logiciels de bureautique se faisaient concurrence, Microsoft Word bien sûr, mais aussi Corel WordPerfect, AppleWorks, etc.

Les éditeurs de logiciel on vite compris que leur logiciel servait avant tout à traiter des données, et que pour battre la concurrence il fallait être capable de lire leur format tout en s’assurant qu’ils ne pourraient pas lire le sien. Il s’en est suivi une guerre des format, accentuée par l’explosion des communications et des transferts de fichiers, dont le vainqueur a été Microsoft et le grand perdant l’utilisateur final. Même si il est plus “simple” d’un premier abord pour l’utilisateur final de ne pas se demander si son correspondant utilise le même logiciel, en fait cette simplicité revient à donner les clés de ses données à la société éditrice. Si elle décide de changer son format, comme elle l’a déjà fait plusieurs fois, elle force les utilisateurs à une mise à jour coûteuse. C’est plus facile de vivre dans une dictature, on a pas à choisir pour qui voter.

Il a fallu attendre l’avènement de StarOffice, une suite bureautique réalisée par une société allemande du nom de StarDivision, puis rachetée par Sun, pour voir les prémisses d’un format de bureautique standardisé. StarOffice a ensuite évolué en OpenOffice, dont le format était ouvert (c’est à dire documenté), et qui a été soumis à normalisation. L’ISO a mis son tampon sur une version légèrement modifiée du format, appelé OpenDocument, qu’OpenOffice à utilisé à partir de sa version 2.0.

Enfin, enfin, nous avons un format de bureautique standard, sur lequel tout le monde s’est mis d’accord, et qui répond à nos besoins. Tous ? Non, pas Microsoft bien sûr, qui n’a aucun intérêt à mettre en péril son monopole et l’emprise qu’il a sur ses utilisateurs en adoptant un format de fichier ouvert…

Mais la révolution est en marche, et Microsoft va avoir beaucoup de mal à l’arrêter. Je pense même sincèrement qu’il ne pourra tout au plus que la retarder légèrement. L’OpenDocument voit son adoption progresser très régulièrement, c’est maintenant une question de quelques années.

Et moi dans tout ça

Pour des besoins professionnels, j’ai développé depuis mi-2007 un plugin pour Dokuwiki permettant d’exporter des pages au format ODT. Je me suis donc intéressé à la syntaxe de ce format, et j’ai découvert avec plaisir qu’il est très clair, assez proche de HTML/CSS (pas la peine de réinventer ce qui marche déjà et que tout le monde connaît), et très bien pensé.

Le plugin achevé (et, avouons-le, légèrement grisé par la réussite), je me suis dit que je devais absolument faire des exports ODT sur d’autres logiciels pour populariser le format. Finalement, l’eau à coulé sous les ponts, j’ai été pris par d’autres choses, j’ai vaguement commencé à participer à l’export ODT sous SPIP, mais je ne me suis jamais vraiment impliqué.

Depuis ma migration sous Dotclear, j’avais en tête de réaliser un export ODT. C’est maintenant chose faite.

A Rainbow Of Books
Creative CommonsA Rainbow Of Books” par Dawn Endico

Comment ça marche

Pour ne pas recoder ce qui existe déjà, je me suis appuyé sur odtPHP, un module d’accès aux fichiers ODT depuis PHP (développé par une boîte française au passage). Mon objectif était de permettre à l’utilisateur de Dotclear de faire un fichier ODT qui contiendrait potientiellement les mêmes tags que ceux qu’il a utilisé pour faire son thème. De cette façon, on reste au maximum dans l’esprit Dotclear, et pas la peine d’apprentre un nouveau langage de templates. L’infrastructure de Dotclear n’est pas aussi souple que celle de Dokuwiki sur cet aspect-là, ça a donc été un peu plus compliqué de brancher le générateur ODT sur le moteur de templates de Dotclear.

Une fois ce branchement réalisé, j’avais donc du HTML dans mon document ODT. Il me restait alors à le convertir en ODT XML. Il n’existe pas à ce jour de convertisseur complet de HTML vers ODT, la fondation OpenDocument Fellowship a même proposé un prix de 11 500 dollars à qui le réaliserait. Mais ça tombe bien, je n’avais pas besoin de quelquechose de compliqué qui irait re-créer les styles présents dans les feuilles de style CSS, j’avais juste besoin de convertir quelques tags.

Je me suis donc appuyé pour cela sur le moteur de conversion DocBook vers ODT de Consultia, en remplaçant les tags Docbook par le HTML auquel je m’attends. Ma conversion est donc entièrement basée sur des feuilles de traduction XSL ! Cool, non ?

Enfin, j’ai paufiné le plugin pour le faire respecter les conventions Dotclear sur les plugins, lui ajouter un tag pour les thèmes graphiques, et un widget pour proposer facilement un export sur toutes les pages.

Les conséquences de tout ça, c’est que pour fonctionner le plugin nécessite le module XSL de PHP, disponible dans toutes les bonnes distribs, dont le nom du paquet est en général “php-xsl”. Il est aussi absolument nécessaire que les billets à exporter soient valides XHTML, donc pensez à utiliser le lien “Validation XHTML” sous la fenêtre d’édition de billet.

Conclusion

Mon plugin peut donc convertir tout post en ODT, mais aussi les pages, ainsi que la page d’acceuil. Par défaut, les documents générés sont très simples, mais je propose aussi un modèle d’export pour la page d’accueil permettant d’exporter tous les articles du blog, avec tout leur contenu. Une conversion du blog entier en ODT, en somme.

Le code est sous licence AGPLv3, comme toujours, et je vous attache à ce billet un Zip tout prêt à être déployé dans votre blog Dotclear.

Si ça vous intéresse, essayez-le et remontez-moi les bugs (ou les idées d’amélioration). Je ferai de mon mieux pour le maintenir et le faire évoluer. Comme vous avez pu comprendre, c’est un sujet qui me tient à cœur…

AGPL

Mises à jour

  1. ajout des dépendances du plugin.
  2. mise à jour du plugin, version 0.2 (voir le commentaire associé)
  3. corrections des dépendances d’odtPHP
  4. mise à jour du plugin, version 0.3 : nombreuses améliorations, suppression de la dépendance à Zip et PHP ≥ 5.2
  5. mise à jour du plugin, version 0.4 : meilleure page d’admin
  6. mise à jour du plugin, version 0.5 : meilleure gestion des tableaux
Retourner au sommaire
Gravatar de Aurélien Bompard
Fils de discussion dans Dotclear 
  • 0 vote
    vote oui
Par Aurélien Bompard, le 27/05/2009 à 13:14.

Comme il ne faut pas s’arrêter en si bon chemin (et que ma boîte fait le pont de l’ascension…), je me suis attelé à un nouveau plugin Dotclear. Il s’agit d’une fonctionnalité que j’aimais bien dans SPIP : la possibilité de voir les commentaires par fils de discussion.

Bundles of cotton thread
Creative Commons Bundles of cotton thread par Unhindered by Talent

L’avantage des fils de discussion

En effet, quand un article commence à avoir beaucoup de commentaires (par exemple celui-là), il devient difficile de savoir qui répond à qui. Une convention est née : préfixer sa réponse par le signe “@” suivi du nom de la personne à qui on veut répondre. Il existe même un plugin Dotclear appelé @Reply pour pré-remplir la fenêtre d’ajout de commentaire avec ce préfixe, simplement en cliquant sur un bouton.

C’est très bien, mais ça n’aide pas beaucoup à la visualisation. Le mieux serait, selon moi bien sûr, de placer les réponses sous les commentaires auxquels elle répondent, en les indentant de quelques pixels.

La méthode

Malheureusement, comme la réponse à un commentaire n’est pas prévue par le moteur de Dotclear, on ne peut pas trouver dans la base de données la référence au commentaire auquel répond un autre commentaire. Pour recréer les fils de discussion, j’ai donc décidé de m’appuyer sur la convention “@”, et notamment sur le lien qui est généré par le plugin @Reply. Cette méthode est la meilleure que j’ai trouvée, mais elle a tout de même deux inconvénients :

  • le commentaire ne se retrouvera pas au bon endroit dans les fils de discussion si le visiteur n’utilise pas le bouton @Reply
  • on ne peut pas répondre à deux commentaires dans le même commentaire (mais ça je vois pas bien comment faire autrement…)

Donc ce n’est pas parfait, mais c’est déjà “suffisamment bien” pour moi.

La réalisation

Ce plugin fonctionne à 100% en javascript, à l’aide de jQuery. Le principe est simple : on ajoute un bouton pour activer la vue en fils de discussion, et en arrière-plan on prépare une liste des commentaires dans laquelle chaque élément a comme attribut supplémentaire le numéro du commentaire auquel il répond.

À l’activation de la vue par fils de discussion, on vide complètement la zone de commentaires, et on les réinsère les uns après les autres. Si un commentaire répond à un autre commentaire, il est inséré après celui-ci, et on lui ajoute une marge à gauche pour l’indenter.

Comme toujours, la complication est dans les détails :

  • quand on insère une réponse, il faut l’insérer après les autres réponses au commentaire.
  • il faut ajouter une marge de plus en plus grande au fur et à mesure des réponses, mais pas trop grande pour ne pas écraser le commentaire à droite

Enfin voilà, vu de chez moi, ça marche. J’avais peur que ce soit extrêmement lent, mais en testant sur un de mes articles qui a eu beaucoup de commentaires, je n’ai pas constaté de lenteur excessive.

Je n’ai qu’un bug à déplorer : l’indentation du commentaire fait perdre les deux angles arrondis de droite. C’est dû à l’image de fond utilisée pour simuler les bords arrondis, peut-être que si j’ai le courage je corrigerai ça.

Le code

Si vous voulez l’essayer chez vous, j’attache le code packagé à cet article. Le fichier Zip est prêt à installer, et contient toute la plomberie Dotclear qui va bien (interface d’administration, aide en ligne, traductions, etc). Le code est sous licence AGPL (qui est plus ou moins la GPL des applications web).

Je vais le laisser tourner ici quelques jours, voire semaines, avant de le proposer au “lab”. Comme toujours, si vous ou l’un de vos collaborateurs étaient pris ou tués, le Département d’État nierait avoir eu connaissance de vos agissements. Euh, non, remontez-moi les bugs, quoi. Bonne chance Jim.

AGPL

Retourner au sommaire
Gravatar de Aurélien Bompard
Bonjour Planet-Libre ! 
  • 0 vote
    vote oui
Par Aurélien Bompard, le 25/05/2009 à 15:41.

Mon site vient tout juste d’être ajouté à l’agrégateur de blogs Planet-Libre, un site de type “planet” regroupant les blogs francophones autour du logiciel libre. J’étais déjà sur Planet Fedora et Planet Fedora-Fr, en voici donc un troisième.

Mais qui es-tu ?

Une petite présentation est de rigueur : je suis un informaticien d’une petite trentaine d’années, utilisateur de logiciel libre sur le poste client depuis en gros 2000 (merci Mandriva), pour des raisons éthiques principalement (oui, ce n’est pas un gros mot).

Je suis contributeur à un certain nombre des logiciels que j’utilise, mais mes principales contributions sont au projet Fedora, dans lequel je suis impliqué depuis fin 2003. Juste avant que Red Hat ne transforme RH Linux en Fedora, il y avait un projet de contributions à RHL appelé Fedora.us, dont le nom a été repris par Red Hat pour sa distribution communautaire, et dont les méthodes et les paquets ont donné lieu à Fedora Extras, qui a finalement été réintégré à Fedora autour de Fedora 6. Plus d’infos sur la page wikipedia de Fedora.

Fermons cette petite parenthèse. Je suis resté très longtemps sur Mandriva, principalement parce que :

  • c’est une bonne distrib
  • c’était la seule vraiment orientée poste client et vraiment libre (à l’époque SuSE était uniquement en boîtes payantes avec un outil d’installation et de configuration pas très libre)
  • je suis tout à fait capable d’apprendre sur un système déjà installé et configuré, pas besoin de me forcer à le faire (oui, c’est un clin d’oeil vers toi, Gentoo)
  • elle me permettait d’aider les autres personnes qui commençaient sur Linux autour de moi

Puis, par curiosité, je suis passé par un certain nombre de distributions (toutes les plus connues de l’époque), pour finalement me stabiliser sur Fedora, qui répond parfaitement à mon besoin : goûter aux toutes dernières avancées du Logiciel Libre. Oui, je n’ai pas peur de le dire, je l’assume pleinement : je suis une fashion victim du Logiciel Libre ;-)

Ce blog, que contient-il ?

J’ai migré très récemment mon site vers Dotclear, il y a donc pas mal d’articles traitant de cet excellent moteur de blogs en ce moment. Mais si je n’arrive pas à tenir ma bonne résolution de blogguer plus souvent, le rythme devrait se calmer rapidement…

Je suis aussi très intéressé par les aspects politiques du logiciel libre, donc vous devriez voir passer des articles sur le sujet de temps en temps.

Enfin, mon blog parle aussi d’autres sujets qui me sont chers :

  • l’écologie et le développement durable
  • ma vision de la société (version comptoir, à 2h du mat, avec une Pel brune à la main)
  • ma vie, mon oeuvre

Mais je ne vais pas envoyer ceux-là sur planet-libre, vu qu’aucun rapport avec le libre :)

Bref

Bonjour à tous ceux qui vont me lire par l’intermédiaire de Planet-Libre, ce qui leur permettra de ne pas souffrir du thème graphique de mon blog… ;-)

Les commentaires sont toujours vivement appréciés !

Retourner au sommaire
Gravatar de Aurélien Bompard
Commenter en anonyme sur Dotclear 
  • 0 vote
    vote oui
Par Aurélien Bompard, le 22/05/2009 à 10:20.

Ceux qui utilisent Dotclear (comme moteur de blog, ou juste en tant que commentateur d’un billet) le savent déjà : pour pouvoir commenter, il faut fournir un nom et une adresse email. Le nom est affiché, l’adresse mail ne sert qu’à l’administrateur, et éventuellement pour vous envoyer un suivi par mail, mais même dans cette situation un visiteur peut avoir envie de commenter de manière anonyme.

Anonymous
Creative CommonsAnonymous” par Laughing Squid

Le principe

Avec les attaques récentes sur nos libertés informatiques, je pense qu’il est important de donner sa place à l’anonymisation. J’ai envie que chez moi, sur mon blog, on puisse commenter anonymement si on le veut. Et sans avoir à inventer un faux nom et une fausse adresse mail, mais tout simplement en cliquant une case “anonyme”.

J’ai donc réalisé un (deuxième[1]) plugin pour Dotclear qui ajoute une simple case à cocher dans la zone de commentaire, permettant de régler le nom et l’adresse à quelque chose de neutre, genre “Anonyme” (c’est configurable, mais c’est ça la valeur par défaut).

La technique

Techniquement, tout se fait à base de javascript, en utilisant jQuery. Le fonctionnement est relativement simple finalement, toute l’astuce est dans les détails. Donc à la base, on crée une boîte de dialogue dans la page (en utilisant les “behaviors” de Dotclear), et on ajoute dans l’en-tête de la page (par la même méthode) un appel à un fichier javascript, qui va associer une action au clic sur cette boîte.

Cette action commence par sauvegarder ce qui était inscrit avant dans les champs nom, email et site, puis ferme les champs du formulaire. Quand les champs se sont fermés, elle remplace les valeurs par celles que l’administrateur du blog aura choisies (par défaut: “Anonyme” et “anonymous@example.com”). Un nouveau clic sur la case “anonyme” restaure les valeurs.

Tout ça serait resté très simple sans le mode de prévisualisation. À cause de la prévisualisation, il faut détecter au chargement de la page si on ne serait pas dans ce mode et que l’utilisateur n’aurait pas déjà choisi d’être anonyme. Ça se fait assez bien en comparant les valeurs des champs aux valeurs décidées par l’administrateur. Si on est en mode prévisualisation et que les champs sont déjà ceux du commentaire anonyme, on re-coche la case et on referme les champs.

Voilà, le principe n’est pas très compliqué, il fallait juste le faire :)

Les sources

Ce plugin va être en test sur mon blog pendant quelques semaines avant que je l’ajoute au SVN du “lab” Dotclear, histoire d’être sûr que j’ai pas oublié des morceaux, donc n’hésitez surtout pas à me remonter les bugs, même anonymement ! ;-)

En attendant, pour ceux qui voudraient voir les sources et/ou le tester, j’attache à cet article un fichier zip tout prêt à déployer. Le code est sous licence AGPL (qui est plus ou moins la GPL des applications web).

AGPL

Mises à jour

  1. version 0.2 : correction d’un bug stupide

Notes

[1] Voir le premier.

Retourner au sommaire