Langages

Aller au contenu | Aller au menu | Aller à la recherche

mardi 6 décembre 2005

Test de trackback depuis Dotclear vers Wiclear

Wiclear 0.9 n'est plus très loin, je pense transférer le contenu de ce blog vers mon blog sous Wiclear (le seul à être actif en fait).
J'en profite donc pour voir si les trackbacks entre dotclear et Wiclear se passent bien. Dans l'autre sens, il y a un problème d'encoding car dotclear ne sait pas détecter l'encoding UTF-8. Apparemment, l'équipe Dotclear a préféré étendre le protocole plutôt que d'utiliser l'info existante (flag UTF8 en plus). Ceci dit je ne leur donne pas tort et je risque moi aussi d'interpréter ce champs lorsqu'il est présent. J'ai ajouté une expression régulière pour détecter le contenu UTF-8, car je ne sais pas comment faire pour récupérer à partir de PHP le charset lié au Content-Type. D'ailleurs si quelqu'un passant par ici sait comment faire, je suis preneur. D'après la spec de MovableType sur SixApart, voici l'info attendu :

 Content-Type: application/x-www-form-urlencoded; charset=utf-8

mardi 12 juillet 2005

Métadonnées

Je viens de voir le billet de Niko ici qui parle d'un plugin métadonnée pour dotclear, et je me suis rendu compte en lisant les commentaires que je ne donnais pas assez de visibilité à certaines fonctionalités de Wiclear : wiclear supporte aussi les métadonnées de façon native depuis la version 0.8.
La façon de fonctionner est un peu différente du plugin vu ci-dessus, mais y ressemble un petit peu :

  • dans le panel d'administration, ajouter une métadonnée avec un nom
  • eventuellement modifier la métadonnée créée en spécifiant si elle est de type ouverte ou fermée (une métadonnée ouverte accepte n'importe quelle valeur, une métadonnée fermée accepte une plage de valeur rentrée par l'administrateur dans le panel d'admin)
  • aller sur une page, et utiliser la page de modification des métadonnées comme par exemple ici

Bref, ca reste quand même assez simple. C'est d'ailleurs grâce à ce système que j'ai bricolé en peu de temps un plugin "Wikiblog" pour Wiclear. Ce plugin se sert des métadonnées pour stocker une métadata fermée appelée "category", ajoute des contrôles sur mesure pour editer facilement la catégorie sans passer par l'interface plus compliquée des métadonnées, et fais ensuite un affichage type "table des matières" ou par catégorie.

mercredi 6 juillet 2005

Les brevets, c'est finit ?

Ca serait bien, mais j'ai quelques questions ...

mardi 28 juin 2005

Plugin wikiblog

A y est : une première version est codée.
Vous pouvez voir le résultat ici !

samedi 25 juin 2005

Wiclear 0.8

Bon ben voilà, la 0.8 est sorti. Les délais de livraison sont de plus en plus long...
Il faut dire que j'ai été vraiment très très pris par la recherche d'un prêt. Mais ça y est, je l'ai. Il va maintenant falloir chercher une assurance pour la maison.
Je vais maintenant me mettre à la réalisation d'un plugin "WikiBlog". Ca devrait être assez rapide à faire, mais j'imagine que ce n'est pas encore pour tout de suite.
Si vous avez des idées de nouvelles fonctionalités pour le versions à venir, je vous invite à aller modifier les pages suivantes : Les fonctionalités, ou le plan de développement.

mercredi 15 juin 2005

Wiclear 0.8-pre

Et ben ... Moins d'un billet par mois ... Je vais bientôt pouvoir postuler au titre de blog le moins actif ! :-)
Rien de nouveau sous le soleil. Je galère à trouver un prêt car toujours en période d'essai. $ù*^$@@ de banques !
Quand je pense que je n'ai jamais été au chômage et qu'en admettant que je ne sois pas en période d'essai, il est fort probable que je change de taff dans les 20 ans à venir ... M'enfin... Ca se saurait si les banques n'etaient pas frileuses...

Du côté de Wiclear, il y a une pré version qui traine sur le site depuis au moins 15 jours. Quelques corrections de bogues, et surtout de la doc ! Pour les programmeurs. Donc inutile pour l'instant pour vous. Enfin pas tout à fait, il y a quand même quelques informations pratiques que vous pourrez glaner par-ci par-là.
Pour la doc utilisateur, ce sera pour la 0.9.
Ah oui, ça se passe par là.

mercredi 4 mai 2005

Flux RSS

J'ai eu un petit peu de temps dernièrement quand même (1h30) pour enrichir les flux RSS. Pas eu le temps de le déployer sur wiclear.free.fr mais ça va venir.
Au rang des nouveautés, les flux sont maintenant créés à partir de feed.php et comment_feed.php, ce qui veut dire qu'on va bientôt avoir accés aux flux des commentaires aussi.

Formats

Les flux sont disponibles sous 3 formats :

  • rss 0.91 (ajouter une variable GET feed_type=rss_0_91)
  • rss 1.0 (c'est le type de flux par défaut, mais on peut ajouter une variable GET feed_type=rss)
  • atom (ajouter une variable GET feed_type=atom)


Flux sur l'ensemble du site ou sur une page en particulier

Les flux peuvent s'appliquer sur tout le site, ou bien sur une page en particulier, dans ce cas, il faut ajouter une variable GET title=TITLE.

Et aussi dans une langue particulière

Dans le cas du flux de contenu, on peut ajouter aussi la langue avec une variable GET lang=fr par exemple.

Distinction flux page/flux site

Si on précise le titre d'une page, on a donc accès à l'historique de la page ou à la liste des commentaires suivant le flux choisit. Si on ne précise pas le titre, on a accés aux derniers changements, ou à la liste des derniers commentaires choisis.

Avec contenu ou non

Enfin, il reste la possibilité de récupérer le contenu complet ou non. Si on veut récupérer le contenu complet, il suffit d'ajouter une variable GET full_content=1.

Exemples

Vu le nombre de possibilités, et pour ne pas surcharger inutilement la liste des flux disponibles, je ne mettrai par défaut que 2 flux sites, et 2 flux par pages, ce qui fait quand même déjà 4 flux pour la page courante. Mais grâce aux informations ci dessus, vous devriez pouvoir construire vous même les flux qui vous intéressent.

  • Flux du site en atom, avec contenu : http://wiclear.free.fr/feed.php?feed_type=atom&full_content=1
  • Flux de la page Wiclear en rss, avec contenu : http://wiclear.free.fr/feed.php?feed_type=rss&title=Wiclear&full_content=1
  • Flux de la page Wiclear en français, rss, sans contenu : http://wiclear.free.fr/feed.php?feed_type=rss&title=Wiclear&lang=fr
  • Flux des commentaires en rss 0.91, sans contenu : http://wiclear.free.fr/comment_feed.php?feed_type=rss_0_91
  • Flux des commentaires sur la page Sand box en atom, avec contenu : http://wiclear.free.fr/comment_feed.php?feed_type=atom&title=Sand%20Box&full_content=1

... Voilà, la 0.8 n'est plus très loin, mais j'aimerai faire un nouveau design "from scratch" pour répondre à certaines critiques. Le soucis c'est que je suis nul en design. Si une bonne âme passe par là ...

Quelques news

Pas beaucoup d'activité en ce moment sur ce blog ...
Disons que j'ai quelques priorité : un bébé qui arrivera au mois de Novembre, et une maison en cours d'achat. Ca fait beaucoup d'un seul coup ! :-)

lundi 11 avril 2005

Gestion de sources

  • Je suis passe sous tla (aka GnuArch) pour Wiclear et j'en suis bien content.
  • Ca fait plusieurs mois que je réfléchis à un projet d'interface utilisateur pour tla
  • Linux est forcé de se passer de BitKeeper
  • Le créateur d'ubuntu (Mark Shuttleworth) via canonical a commencé à ecrire des choses autour du sujet : bazaar et bazaar-ng


Bref, j'ai l'impression qu'il est temps (peut etre meme trop tard), d'ecrire cette interface utilisateur. Dans l'absolu, il faudrait faire une sorte d'interface virtuelle pour un gestionnaire de source ultime et ensuite proposer différentes implémentations pour cvs/tla/subversion. Ca pourrait être sympa.
Ca serait certainement un peu compliqué quand même ! :-)
J'utilise quotidiennement WinCVS au boulot, et une interface de ce style serait la bienvenu pour tla...

Des volontaires ?

Personnellement, je ferai ça en C++/Qt. Pour le nom je pensais a Atlantik parce que ca contient tla et que par la suite j'en ferai bien un projet kde...

vendredi 8 avril 2005

Drag'n drop javascript

jeudi 7 avril 2005

Wiclear et digimatrix

Non non non, je n'ai pas fait un site sur la digimatrix avec wiclear ! Quoique je devrais : lorsque quelque chose ne marche pas, un wiki à jour pourrait pas mal aider ! :-)
Non ce que je voulais dire c'est que dernièrement j'ai été pas mal pris à essayer de faire marcher l'engin. Au bilan, tout marche... presque ! En fait, le tuner est HS. Résultat, renvoi chez multepass. 30min au tél pour avoir quelqu'un. Mais bon contact. J'espère que le SAV sera au poil.

Du coup je vais pouvoir me remettre à Wiclear.
Les metadata sont presque finit, au final j'en suis arrivé au système suivant :

  • définition d'une nouvelle métadata par son nom dans le panel d'admin (e.g : categorie, keyword, place, friend ...)
  • visualisation dans le panel d'admin de toutes les pages qui définissent la métadata avec la valeur associée
  • edition/modification/suppression des metadata dans chaque page du site


Les metadata ont un nom et peuvent être de deux types : ouvertes ou fermées.

  • Les metadata ouvertes n'ont pas de valeurs prédéfinies. La valeur est rentrée par l'utilisateur librement lorsqu'il associe une métadata et sa valeur à une page.
  • Les metadata fermées ont un ensemble de valeurs prédéfinies (modifiables via le panel d'admin ou par un plugin) : l'utilisateur doit choisir une valeur prédéfinies dans une liste


Au final, ca devrait permettre d'avoir un mécanisme générique pour ajouter des fonctionalités à Wiclear sans trop d'ajout de tables sql.
Exemple :

  • plugin wikilog : définit une metadata catégorie et une liste de valeur (modifiables dans le panel d'admin) qui permet d'associer une categorie sur chaque page. Il ne reste donc plus qu'a coder la home page pour ce plugin.
  • recherche dans les metadata,
  • ajout de metadata dans le header html,
  • ...

lundi 14 mars 2005

German language pack by Thomas Beck

My second contribution : a german language pack from Thomas Beck.
See patch 24.
It includes translation for wiki and admin panel as well as a flag.
Thomas said to me the translation was not finished, but I guess they will be finished soon.

Ma deuxième contribution : le kit de langage allemant par Thomas Beck.
Voir patch 24.
Ca inclue les traductions du wiki et du panel d'administration avec un drapeau.
Thomas m'a dit que la traduction n'était pas finit, mais j'imagine que ca devrait être terminé dans pas trop longtemps.

samedi 12 mars 2005

Wiclear, plugin, PlanDuSite et gestion des conflits

Aux nouveautés :

  • plugins pour le site (en plus de plugins pour le panel d'admin)
  • premier plugin : PlanDuSite
  • format SpecialPage
  • gestion des conflits

Conflits

Lorsque deux utilisateurs editent une page en même temps, le dernier à publier est prévenu qu'un autre utilisateur a modifié le contenu. Un merge automatique est proposé (sous la forme des chevrons cvs).

Plan du site

Ce plugin intègre un peu de javascript pour permettre de cacher/montrer des portions de l'arbre.
J'ai utilisé la technique décrite ici qui fait que le code reste propre : aucun javascript dans la page à part le onload dans le tag body ! Et la partie comportement est vraiment séparé de la partie contenu et de la partie présentation. Classe ! :-) Côté patron, l'inclusion de javascript se fait par

  • l'ajout d'un appel à la méthode jsLinks() dans le HEAD, ce qui a pour objet d'inclure toutes les librairies javascript de tous les plugins et même du moteur si jamais j'en ajoute un jour
  • la modification de la balise body : il faut ajouter un onload="javascript:initJs();"

Ca vous donne l'eau à la bouche ? :-)
Pour sortir la version 0.8, il faudra attendre les fils de syndication RSS avancé (commentaires, sur une seule page ...) et les méta data.
Les méta data permettront de faire des catégories ce qui me permettra de créer un plugin wikiblog !

J'espère sortir ensuite les trackbacks et l'outil d'upload dans la 0.9

mardi 8 mars 2005

Wiclear et QueryString

De la même manière que le PathInfo, on peut maintenant utiliser des Url au format QueryString :

vendredi 4 mars 2005

Wiclear et PathInfo

A y est ! C'est codé ! Vous pouvez donc faire ça :

La dernière forme permettant d'aller chercher une version dans l'historique directement ! Cool non ?