Mot-clef « RSS »

Quelques extensions pour Firefox #10

Réduction du pistage, flux RSS et navigation sans compte sur Pinterest

pinterest-guest

Je n’utilise pas des masses Pinterest mais il m’arrive l’une ou l’autre fois de tomber dessus.

Cette extension permet de naviguer sur Pinterest sans compte en supprimant l’overlay demandant de s’enregistrer.

D’autres extensions équivalentes existent, mais celle-ci est semble-t-il la seule à limiter la demande de permissions au strict nécessaire (l’accès aux données sur les différents domaines de Pinterest, là où les autres le demandent sur tous les sites).

Malheureusement elle ne permet pas de faciliter l’enregistrement d’image sans authentification…

ClearURLs

Cette extension nettoie les URLs parcourues en supprimant les paramètres destinés au traçage de la navigation.

Cela permet à la fois de réduire le niveau de surveillance des sites sur votre navigation et d’avoir directement des URLs nettoyées dans la barre d’adresse, ce qui éviter de partager des URL à rallonge pour rien.

Feed Preview

Cette extension détecte les flux RSS et Atom référencés dans les pages web.

Je l’utilise maintenant en remplacement d’Awesome RSS, car elle a l’avantage en plus de proposer un rendu lisible des flux lorsqu’on les visualise dans le navigateur.

C’est pratique notamment lorsque je cherche à télécharger une émission sur le site de Radio France, où le moyen de plus facile de trouver un lien de téléchargement reste le flux RSS.


Firefox : à la recherche de la fonctionnalité perdue

Depuis que Firefox est passé à son nouveau cycle de release tellement rapide que t'as pas le temps de mettre à jour avant que la version suivante soit sortie, les nouveautés sont en général plus que minimes (en six semaines, forcément on fait pas grand chose).

Par contre, dans le cadre de la grande opération d’hystérie collective généralisée sur le thème du "moins j'ai de boutons dans mon interface, mieux c'est", on voit régulièrement disparaitre des choses jugées trop peu utilisées pour rester visibles par défaut (en gros tout ce que Chrome n'a pas dans son interface).

Autant je comprends bien la volonté d'élaguer les fonctionnalités les moins utiles d'un logiciel (on fait la même chose sur Change régulièrement), autant le fait que ce soit systématiquement à la suite des changements initiés par Chrome me convient nettement moins. Fut un temps où Firefox se voulait une alternative innovante à Internet Explorer mais maintenant on a plus le sentiment qu'il se transforme en l'ombre de Chrome et ça c'est franchement dommage.

Quoiqu'il en soit, quand on est un utilisateur un peu plus avancé que l'internaute lambda pour qui Internet se résume à Youtube et Facebook, ben ces fonctionnalités il arrive qu'on s'en serve. Pas forcément toutes les cinq minutes, mais ça arrive. Et donc on peut avoir envie de les garder. La plupart du temps c'est possible, soit par configuration, soit via une extension...

Petit tour (non exhaustif) de ce qui a disparu des écrans l'année passée et de la manière d'y remédier :

  • L'icône de flux RSS dans la barre d'adresse : même s'il est effectivement rare d'utiliser Firefox comme agrégateur de flux, elle était tout de même bien pratique pour les détecter. Il suffit alors de regarder toujours au même endroit pour trouver l'adresse d'un flux plutôt que de fouiller la page pour trouver l'icône. C'est d'autant plus pratique quand le site propose plusieurs flux distincts (par exemple sur un blog : les articles et les commentaires), car souvent tous ne sont pas accessibles facilement dans la page.

    Solution : celle-ci se réactive par simple configuration puisqu'au lieu d'apparaitre dans la barre d'adresse, elle est disponible en tant que bouton que l'on peut insérer dans n'importe quelle barre d'outils en faisant clic droit/personnaliser.

  • Détection des moteurs dans la barre de recherche (via Open Search) : c'est une fonctionnalité très secondaire, j'en conviens mais ça m'a déjà servi. Sauf qu'elle a disparu avec Firefox 4...

    Solution : installer l'extension Open Search Notification.

  • Fond blanc lorsqu'on affiche une image seule : depuis Firefox 11, lorsqu'on affiche une image hors du contexte d'une page, celle-ci est centrée (ça ce n'est pas particulièrement gênant) et sur fond très sombre, ce qui n'est pas forcément pratique quand on visualise une image transparente. Et ceci n'est pas modifiable par configuration.

    Solution : passer par l'extension Old default Image Style. Elle a de plus l'avantage de ne pas nécessiter de redémarrage et d'être configurable en ce qui concerne la couleur de fond et le centrage de l'image (ce qui accessoirement peut être utile pour tester une image transparente sur plusieurs fonds).

  • Marquer tous les onglets : ajouter l'ensemble des onglets ouverts aux marque-pages peut servir dans pas mal de cas... comme par exemple quand on n'a pas le temps de chercher pourquoi il n'enregistre plus les onglets à la fermeture. L'option était avant présente dans le menu "Marque-pages" (logique).

    Solution : en fait la fonctionnalité n'a pas disparu, c'est juste qu'elle n'est maintenant présente que lors d'un clic droit sur un onglet et plus dans le menu "Marque-pages".

  • Affichage du protocole dans la barre d'adresse : depuis Firefox 7, le protocole disparait de la barre d'adresse (comme d'hab, on copie Chrome, hein). C'est pourtant agréable je trouve en tant qu'utilisateur expérimenté de savoir précisément ce qu'on fait (ça me rappelle l'idée stupide de Microsoft d'avoir masqué par défaut les extension de fichiers : la première chose que je fais en installant un Windows c'est de les réactiver, parce que notamment quand j'ouvre une pièce jointe, j'aime bien savoir ce que j'ouvre !). Puis accessoirement quand copier/coller un domaine sans son protocole est impossible avec cette barre. Je ne suis décidément pas fan de cette habitude de vouloir sur-simplifier les choses au point que l'utilisateur perd de vue que même si c'est simple, il faut faire attention à ce qu'on fait.

    Solution : dans la barre d'adresse, entrer about:config. Firefox vous met alors en garde mais comme vous savez ce que vous faites, cliquez sur « Je ferai attention, promis ! ». En haut de la liste, dans le champ précédé de la mention "Rechercher :", saisir browser.urlbar.trimURLs. Il ne reste alors plus qu'une entrée dans la liste, double-cliquez dessus pour passer sa valeur de "true" à "false".

Voilà voilà, vu comme les choses évoluent, nul doute que cet article aura une suite un jour !


Quelques trucs sur PHP #3

Auto-complétion du code avec PDT

PDT est un IDE pour PHP basé sur Eclipse relativement performant. Notamment il permet l'auto-complétion de code, ce qu'on n'a que rarement avec des éditeurs plus légers.

Sous certaines conditions (notamment avec le plugin SVN), l'auto-complétion n'est pas activée par défaut. Il y a peut-être moyen de le régler dans le labyrinthe qui sert de système d'options à Eclipse mais sinon, un moyen simple reste d'ajouter la ligne suivante dans la section natures du fichier .project du projet :

<nature>org.eclipse.php.core.PHPNature</nature>

Flux RSS et format de date

Pour formater une date en vue de générer un flux RSS, il y a plusieurs méthodes :

  1. chercher le détail du format sur le net et l'appliquer... c'est possible mais risque d'erreur.
  2. utiliser le format ‘r’ qui renvoie le bon format.
  3. utiliser la constante DateTime::RFC822... sauf que là le flux ne sera pas forcément valide et qu'il y aura potentiellement des problèmes avec certains agrégateurs.

Préférez donc la seconde solution, celle-là en principe elle marche (et en bonus c'est la plus compacte, que demander de plus ?).

Méthodes privées en PHP 5.1.6

Le principe d'une méthode privée c'est d'être interne à la classe et aucunement visible ou surchargeable depuis une classe qui l'étend (contrairement à une méthode protégée). Cependant dans certaines versions de PHP, dont la 5.1.6 (je ne sais pas quand exactement il a été corrigé mais il n'est plus présent dans les dernières 5.2.x), permet de surcharger les méthodes privées d'une classe... Ça peut arriver involontairement et ne prête pas à conséquence, sauf quand par la suite vous tentez d'exécuter votre script sur une version corrigée de PHP et là c'est pas évident de comprendre pourquoi tout d'un coup on ne passe plus dans la surcharge !

L'angoisse de la page blanche #2

J'évoquais ici le fait qu'on risquait une page blanche sans autre forme de procès en déclarant deux fois une même méthode dans une même classe et en voici un autre : déclarer comme abstraite une méthode d'une interface.

C'est peut être une déformation due au fait qu'on me l'a présenté comme ça lors de mes premiers cours de programmation objet Java mais pour moi une interface c'est pousser à l'extrême le concept de la classe abstraite : toutes les méthodes sont abstraites (et on n'a pas de champs). En Java, il me semble bien me souvenir que dans le cas d'une interface, le mot-clé abstract sur une méthode est facultatif (vu que de toutes façons toutes les méthodes d'une interface le sont). Eh bien en PHP il n'est pas facultatif mais interdit. Sinon, page blanche (du moins sous certaines versions/configurations) et bon courage pour retrouver l'erreur \o/


Modules à venir pour RBS Change

J'entame progressivement la migration de mes forums vers RBS Change, ce qui implique le développement d'un bon nombre de fonctionnalités qui ne sont pas présentes dans les modules standards. Voici une petite liste de ce que j'ai déjà commencé :

Logos aléatoires

Il s'agit simplement de reproduire l'affichage aléatoire des logos comme c'est le cas sur EDForum. La version actuelle du module se borne à ce fonctionnel strict : toutes les n minutes, on change de logos en choisissant aléatoirement parmi les logos définis en backoffice, chaque logo ayant un poids donné.

C'est clairement pas le plus utile des modules mais c'est une fonctionnalité simple et il fallait bien commencer quelque part...

Évolutions à venir

À terme, j'ajouterai sans doute une galerie des logos en cours et passés.

Micro-news

Là aussi on reproduit à l'identique une fonctionnalité d'EDForum : il s'agit simplement de mettre en avant des liens d'actualités. Chaque "micro-news" contient un libellé et un lien (soit un document du site, soit une URL externe).

Le module dispose également d'une fonction d'importation de flux RSS externes et les blocs d'affichage s'accompagnent de la génération de flux RSS.

Messagerie privée

Là on entre dans le vif du sujet : après deux modules mineurs, on arrive à une fonctionnalité importante dans tout site communautaire (donc notamment un forum).

J'ai choisi de ne pas reprendre le modèle standard de messagerie privée calquée sur les mails qu'on peut trouver dans la plupart des gestionnaires de forums pour reprendre le principe utilisé sur les forums MesDiscussions.Net (Hardware.fr, JudgeHype ou encore Doctissimo) qui présente les messages plutôt comme des conversations, sous la même forme que les sujets des forums (quand on y pense c'est nettement plus pratique et logique).

Ce module-là est encore loin d'être fini mais il permettra entre autres :

  • un nombre de participants potentiellement supérieur à 2 (nombre maximum réglable par configuration).
  • invitation de nouveaux participants en cours de route.
  • indexation des messages.
  • possibilité de modifier un message tant que personne ne l'a lu.
  • d'une manière ou d'une autre (rien n'est encore vraiment arrêté dans la façon de faire), possibilité de marquer des messages/discussions : "à traiter", "réponse attendue", "contient des informations importantes"...

Pour plus d'informations sur le développement de ce module ou discuter de ses fonctionnalités, rendez-vous sur le sujet dédié sur EDForum.

La page dédiée et le repository SVN seront créés quand j'approcherai suffisamment d'une version utilisable.

Et ensuite ?

Ensuite je passerai sans doute à la gestion des smileys, l'ajout des bbcodes non-gérés en standard par Change... Ou autre chose selon ce qui m'inspirera le plus sur le moment :p

Quand à mon module de gestion de bibliothèque que j'évoquais lors de la sortie de Change, il a pas mal avancé mais je le laisse un peu de côté pour le moment puisque je ne le mettrai pas en ligne avant d'avoir migré les forums...

EDIT 16h41 :
Finalement j'ai fini ce qui manquait dans le module Micro-news, j'ai donc ajouté la page dédiée et initialisé le repository SVN avec la première version du code.