Je viens d’uploader une mise à jour de mon #plugin pré-processeur de CSS pour #SPIP (« CSS imbriqués »). Compatible #SPIP-3 donc :
►http://zone.spip.org/trac/spip-zone/browser/_plugins_/css_imbriques
Je viens d’uploader une mise à jour de mon #plugin pré-processeur de CSS pour #SPIP (« CSS imbriqués »). Compatible #SPIP-3 donc :
►http://zone.spip.org/trac/spip-zone/browser/_plugins_/css_imbriques
#seenthis : À la demande générale de @stephane, j’ai fabriqué des trigrammes pour permettre à SPIP d’identifier les textes en breton. Par exemple :
►http://www.langue-bretonne.com/Pajennou/Gwengamp.html
Et pour rappel, je diffuse mon algorithme de détection des langues sous forme de plugin SPIP là :
►http://zone.spip.org/trac/spip-zone/browser/_plugins_/plugins_seenthis/detecter_langue
Alors évidemment, maintenant, va falloir écrire et référencer des trucs en breton, sinon ça sert à rien que je me décarcasse.
Pour mémoire, mon petit script pour déterminer les 300 principaux trigrammes d’une langue :
►http://pastebin.com/tHeGkzM0
– je vais sur Gutenberg récupérer le texte d’un roman (complet, long) dans cette langue,
– je passe le texte en minuscules, je vire toutes les ponctuations, je remplace tous les retours à la ligne, puis j’élimine tous les doubles espaces,
– je copie ce texte en ligne 5 (ici tronquée).
Cher @seenthis,
Je trouve exemplaire la façon dont les attributs de langue en HTML sont insérés. Le code est-il libre et récupérable ?
Mon idée c’est de reprendre ça pour pouvoir fabriquer un truc simple à déployer (un filtre spip sur contrib, par exemple) pour tous les gens qui affichent des RSS sur leur site perso, avec génération automatique des langues.
Cas concret : c’est ce qui me bloque pour mettre un fil Twitter sur un #spip pour des questions d’accessibilité : une revue d’écran bien faite (JAWS) choisit son moteur phonologique sur la base des attributs lang des balises HTML.
J’ai installé le plugin « Détecter langue » sur la Zone :
►http://zone.spip.org/trac/spip-zone/browser/_plugins_/plugins_seenthis/detecter_langue
Après, il faudra que tu fasses passer le texte que tu veux dans ce plugin. Je n’ai pas de méthode générique pour ça (puisque la structure des messages sur Seenthis n’est pas du tout celle de SPIP).
Pour les hreflang, qui sont drôlement pratiques, ça devient déjà nettement plus coton, puisqu’il n’y a pas nativement de récupération du contenu distant dans SPIP. (S’il y a un plugin qui le fait, il suffit de brancher les deux ensemble.)
@seenthis merci pour le lien. Pour les hreflang dans le cas d’un flux rss je regarderai, mais si on déduit la langue et qu’on génère l’attribut lang, vu qu’on part du principe que c’est une citation du texte original, je me dis qu’on doit pouvoir gnéérer mêmement l’attribut hreflang
(note liminaire : ami lecteur, quand pour la dernière fois as-tu lu « mêmement » ?) :)
@seenthis j’ai regardé le code, c’est génial ton truc ! #sharethelove
Pour le hreflang, je vais tout de même chercher le contenu de la page distante.
– Pour récupérer le contenu, j’utilise le portage de Readability en PHP :
►http://code.fivefilters.org/p/php-readability
Ce qui permet d’extraire la partie « intéressante » de la page linkée (sans les éléments de navigation notamment).
– Une fois que j’ai ce contenu, je le fais passer dans le détecteur de langue et... voilà, j’ai de quoi renseigner mon hreflang.
– Au passage : comme je récupère la page distante, je récupère aussi son title. C’est comme ça que je peux réintroduire un title dans le HTML des liens vers l’extérieur de Seenthis.
@notabene j’avoue n’avoir pas souvenir de lecture de « mêmement », mais mêmement — ah ! —, je n’ai pas souvenir de lecture de « gnéérer »... :-p
Alors, en ces temps de #googlepluseries, petit rappel. Dans les recoins du Net libre, il y a ►http://seenthis.net #libre #libre #libre
Seenthis permet de tenir à jour un blog personnel constitué de billets courts. Il est principalement destiné à la veille d’actualité. Pour cela, il propose de mettre en valeur le référencement de pages Web, la citation d’extraits et le commentaire, grâce à une mise en forme automatique et adaptée des textes.
Il est destiné, principalement, à faciliter la recommandation de liens entre pairs.
Il est associé à un système de forums publics permettant aux participants d’échanger des idées de manière constructive (conversation publique). Un système de thématisation avancé facilite la constitution de bases documentaires et thématiques.
Ah, non, non... ça n’a rien à voir... Et, oui, ici, c’ets franchement libre, vu les instigateurs ,-)
Plus précisément :
– j’ai d’origine réalisé une partie des fonctionnalités du système sous forme de plugins SPIP, que j’ai installés sur spip-zone (sous GPL, donc) ;
►http://zone.spip.org/trac/spip-zone/browser/_plugins_/plugins_seenthis
– une autre partie des fonctionnalités ont été codées sous une forme de briques non-SPIP (c’est-à-dire pas sous forme de plugins SPIP), et elles sont progressivement passées sous forme de plugins SPIP, de façon à pouvoir être libérées progressivement ;
– en revanche, le code qui fait fonctionner les briques ensemble n’est pas diffusé, et je n’ai pas encore pris de décision à leur sujet.
Ce qui fait que, en pratique :
– tu as toute une partie du code sous forme de plugins SPIP que je diffuse déjà en libre,
– tu as une partie du code que je travaille à passer sous forme de plugins SPIP, avant de les diffuser en libre,
– mais tu n’as pas un package complet installable clé-en-main qui te permettrait d’installer ta propre instance de Seenthis.
Comme je n’ai pas vocation à devenir une méga startup « du libre » comme status.net et que je souhaite développer le truc de manière humaine, je crains d’être à la merci des comportements prédateurs et/ou opportunistes qui viennent à la fois du côté marchand et du libre. (J’ai suffisamment vu de tels comportements pour être très méfiant.)
Alors j’y vais mollo, je développe le truc en essayant de rester cohérent avec mon idée d’origine (parce que, aspect qui complique le truc par rapport à beaucoup de projets de réseaux sociaux libres, Seenthis n’est pas du tout le clone libre d’un succès non-libre existant), je vais essayer de libérer le maximum de choses au fur et à mesure. Mais pour l’ensemble, qui ferait un pack libre installable « clé en main », pas dans l’immédiat.
Je viens d’installer sur #spip-zone un autre #plugin #SPIP tiré du code de #Seenthis :
►http://zone.spip.org/trac/spip-zone/browser/_plugins_/plugins_seenthis/detecter_langue
Il fournit la fonction detecter_langue($texte), qui répond avec le code de la langue dans laquelle est rédigé le $texte.
L’originalité, ici, est d’avoir deux passes :
– d’abord voir dans quel alphabet le texte est rédigé majoritairement (latin, cyrillique, grec, arabe, hébreu...) ; cela permet de limiter le nombre de langues possibles ;
– ensuite une classique analyse par tri-grams, limitée aux langues déterminées par la passe précédente.
#GPL
C’est ce plugin qui indiquait l’autre jour « allemand » pour un texte en français, juste parce qu’il parlait de Berlin ? ;-)
Plus sérieusement, pourquoi mettre ces plugins dans un dossier « plugins_seenthis » sur la zone ?
J’ai déjà répondu là :
►http://seenthis.net/messages/12782
Je viens d’installer sur #spip-zone deux plugins réalisés pour Seenthis :
►http://zone.spip.org/trac/spip-zone/browser/_plugins_/plugins_seenthis
– #date_relative_dynamique est le plugin qui permet d’afficher les dates des forums sous la forme « il y a... », dynamiquement en Javascript ;
– #lien_court est le plugin qui permet de raccourcir les URL affichées. Il a deux caractéristiques marrantes : (a) l’URL est raccourcie en priorité en sucrant des éléments au milieu plutôt qu’à la fin comme on le fait d’habitude, (b) les éléments supprimés sont en réalité seulement masqués en CSS, ce qui permet de préserver l’intégralité du lien lors d’un copier-coller.
Super cool ce début d’ouverture, merci !
Par contre, pourquoi les avoir mis dans un sous-dossier « seenthis » s’ils peuvent être utilisées indépendamment, génériquement ? (Oui j’pouvais pas m’empêcher de la poser celle-là...)
Comme je disais plus tôt, là où tu lis la date au format unix
Math.floor($(this).attr("title"))
tu pourrais lire aussi la décoder si elle est au format datetime
►http://seenthis.net/messages/8747
ce qui rendra les choses plus #microformats
– parce que j’ai besoin de les identifier comme tels : ceux-là, je ne souhaite pas qu’on me les pourrisse sans me demander mon avis ; je n’ai pas le temps de suivre tous les plugins que j’ai installés sur la Zone, mais suivre un sous-dossier, ça je dois pouvoir y arriver ;
– parce que je ne suis pas encore certain que tout sera livré sous forme de plugins bien finalisés, alors un sous-dossier générique pourrait s’avérer utile.