Archives de l'année 2008

Quelques jeux pour iPod Touch/iPhone #2

Galcon Lite

Galcon Lite

Un petit jeu de conquête spatiale mêlant stratégie et vitesse. Chaque joueur commence avec une planète et doit éradiquer son adversaire de la zone en lui prenant toutes ses planètes. Pour ce faire il lui faudra conquérir des planètes neutres et reprendre les planètes conquises par l'adversaire avant de se faire submerger.

Il y a différents modes de difficulté, les premiers étant vraiment très simples, mais ça commence à sérieusement se corser au niveau 6 (Amiral). Une partie ne dure que quelques minutes, mais on a facilement tendance à les enchainer.

Une version payante propose apparemment d'autres modes de jeu ainsi qu'un jeu multijoueur, mais je ne l'ai pas testé. Une version Mac/PC/Linux existe également parallèlement à la version iPod Touch/iPhone.

Orions: Legend of Wizards (3€99)

Ce premier jeu payant que j'ai tenté s'inspire fortement de Heroes of Might and Magic dont il reprend le principe du tout par tour, de la conquête de villes où l'on construit des bâtiments permettant de produire des unités.

Orions: Legend of Wizards - le menu principal Orions: Legend of Wizards - la carte du monde

Il ne s'agit pas cependant d'un bête clone puisque le système de combat est un peu différent et se rapproche plus d'une partie de jeu de cartes à collectionner : chacun des deux joueurs peut jouer une carte par tour qui est soit une créature, soit un sort, puis chaque créature de son camp attaque la créature située devant elle, ou - à défaut - le joueur adverse. Les créatures peuvent également avoir des pouvoirs activables une fois par tour avant l'attaque. Contrairement à un jeu de cartes à collectionner classique, le joueur a accès à toutes ses cartes (pas de pile de pioche), ce qui a pour avantage de supprimer la dose de hasard qui accompagne en général ce genre de jeux.

Orions: Legend of Wizards - les villes Orions: Legend of Wizards - les combats

Dans l'ensemble le jeu est sympa, avec de bons graphismes et une musique agréable. Je m'interroge cependant sur l'aspect répétitif à long terme (on est plus exigeant de ce côté-là pour un jeu payant que pour un gratuit, forcément)... pour l'instant je n'ai fait que deux parties, on verra à l'usage.

Bix Lite

Bix Lite

Ce jeu, est un clone de Qix - un jeu d'arcade datant de 1981 - où but est de tracer des lignes sur l'écran jusqu'à colorer 75% de la surface. Jusque-là c'est simple mais tant qu'une ligne n'est pas terminée, il ne faut surtout pas que l'un des billes présente ne la touche. Évidemment, plus on avance, plus il y a de billes à se promener dans la zone et donc plus la difficulté grandit.

Le jeu est sympa même si l'on peut regretter ses graphismes très pauvres (quasiment identiques à ceux de Qix qui ont près de trente ans, donc forcément...). La version gratuite se limite à 6 niveaux, la version payante (0€79) va plus loin.


Bien coder son plugin WordPress

WordPress c'est bien, y a plein de plugins dans le repository qui font un peu tout ce qu'on peut imaginer. Le hic c'est que bien trop souvent, quand on en installe un, ben ça marche pas ou alors ça marchotte puis ça s'effondre un beau jour suite à l'installation d'un autre plugin ou encore on perd une partie des configuration suite à une mise à jour... Ceci arriverait beaucoup moins souvent, si certaines lignes de conduite étaient plus souvent suivies.

Voici donc quelques recommandations à suivre pour développer un plugin WordPress. C'en sont quelques-unes parmi d'autres, vos plugins ne seront pas parfaits juste parce que vous aurez suivi ces recommandations, bien entendu, mais ça évitera certains problèmes à vos utilisateurs...

Intégration de jQuery

jQuery permet d'effectuer de nombreuses opérations avec du code synthétique et surtout multi-navigateur, c'est bien, mangez-en. Par contre, dans les plugins WordPress c'est souvent intégré n'importe comment.

Déjà, WordPress inclut jQuery de base, donc nul besoin de le joindre au plugin.

Ensuite, inclure jQuery "à la main" via une balise script en dur, quand le plugin est tout seul, ça marche bien. Si un autre exploite directement jQuery sans extension, la page est plus lente parce que jQuery est chargé plusieurs fois mais ça marche aussi. Par contre dès qu'un plugin utilise des extensions de jQuery, là c'est moins cool : en effet, pour peu que ce plugin ne soit pas le dernier à être appelé, l'extension a toutes les chances d'être écrasée lors d'un autre chargement de jQuery... Et cela peut ne se produire que sur certaines pages selon les plugins, donc ça peut être difficile à détecter.

Heureusement, WordPress propose une fonction bien pratique qui permet d'intégrer des javascript sans écrire directement la balise script et surtout en indiquant des dépendances, ce qui évite les scripts inclus dans le mauvais ordre. Cette fonction s'appelle wp_enqueue_script et est définie dans le fichier wp-include/functions.wp-scripts.php.

En particulier, pour inclure jQuery il suffit d'appeler : wp_enqueue_script('jquery');

Et accessoirement, préférez un appel à l'objet jQuery plutôt qu'un appel à $ dans votre code, car si un autre plugin inclut une bibliothèque qui utilise aussi le $, ben... kaboum !

Ne pas gêner les mises à jour

Lorsqu'on met un plugin à jour, le dossier qui le contient est remplacé par la nouvelle version. En conséquence, si des fichiers ont été ajoutés ou modifiés dans ce dossier, ils seront écrasés par la mise à jour.

Cette pratique donc est à éviter absolument. Préférez une écriture en base de données, là aucun problème en cas de mise à jour :


Corrections pour le plugin "Subscribe to Comments"

Suite à la demande de Nikohk, Je viens d'installer le plugin Subscribe to Comments.

Comme souvent quand on installe un plugin WordPress, il faut mettre la main dans le cambouis si on veut que ça tourne correctement... Là je me suis limité à faire en sorte que la traduction Française soit correctement prise en compte (et au passage de la compléter avec les quelques clés qui manquaient). L'ensemble est récupérable ici (le fichier de traduction seul est directement téléchargeable ici), avis aux amateurs. J'ai posté mes modifications en commentaire sur le site de l'auteur du plugin, donc avec un peu de chance elles seront prises en compte par la prochaine version...

Sinon, j'ai pas poussé trop loin les tests sur le reste du plugin, espérons qu'il marche bien...

Et au passage, j'ai aussi mis à jour WordPress en version 2.7 et ajouté également le plugin Ajax Edit Comments.


Quelques jeux pour iPod Touch/iPhone #1

Pour l'instant, je n'ai testé que des jeux gratuits : déjà là y a du choix, donc autant commencer par là.

Topple

Topple

Il s'agit d'un jeu qui peut rappeler Tetris au premier abord mais où le but est au contraire de réaliser une pile stable de pièces la plus haute possible en un minimum de temps. Évidemment, elles n'ont pas toujours des formes adaptées et pas le temps de faire des empilements bien propres. Je n'y ai pas encore beaucoup joué mais c'est plutôt sympa ^^

Aurora Feint

Aurora Feint

Je n'ai testé que la version gratuite qui consiste majoritairement à aligner des pièces de mêmes couleurs et qui prend bien en compte les différentes fonctionnalités de l'iPod : en tournant l'appareil, les blocs tournent également, ce qui permet de les déplacer horizontalement plutôt que verticalement. On a également au fur et à mesure de différents bonus accessibles et des niveaux particuliers où il faut récupérer un certain nombre de blocs d'une couleur donnée dans un intervalle de temps limité ou arriver à détruire tous les blocs de l'écran avec une limite de mouvements. Bon, à force c'est pas super varié mais pour l'instant j'y ai déjà pas mal joué et je ne m'en lasse pas ! (la qualité de la musique et des graphismes aident sans doute)

Sinon, la vidéo d'introduction est sympa.

Dactyl

Dactyl

Celui-ci n'a apparemment pas de site, il vous faudra donc le rechercher dans iTunes...

Là, rien de bien compliqué, tout est question de réflexes et de précision dans les doigts : douze bombes noires sont affichées à l'écran et au fur et à mesure, elles s'amorcent (en devenant rouges). Il vous faut alors "cliquer" dessus pour les désamorcer avant qu'elles n'explosent. C'est distrayant et une partie ne dure en général pas longtemps...


iPod Touch : premières impressions

Ça fait maintenant quatre jours que j'ai mon iPod Touch, il est temps de livrer mes premières impressions sur la bête :

  1. ouverture de la boîte : il a la classe :)
  2. premier test en le branchant sur le MacBook pro (je dirais bien juste "MacBook" mais la dernière fois que j'ai dit ça, je me suis fait engueuler parce que soit-disant je lui manquais de respect, donc depuis j'évite :peur2:) : youhou, ça synchronise vite depuis iTunes !
  3. coup d'œil à l'état d'occupation du disque : comme d'hab, on te vend du 8Go mais en valeur réelle y en a que 7... C'est le système qui bouffe le Go parti dans la nature ou c'est une astuce de calcul comme pour les écrans cathodiques ? :ack:
  4. petits tests de l'iPod en lui-même : c'est marrant le tactile :p
  5. téléchargement et test de quelques jeux gratuits : c'est marrant le tactile mais ça a un gros défaut : quand t'as le doigt dessus, ben tu vois plus l'écran :we: Par contre les commandes qui tiennent compte des mouvements de l'iPod c'est pas con du tout (quand c'est bien utilisé).
  6. tentative de connexion au net : beuh, il est pas capable de partager la connexion à travers le câble USB ? Et pourquoi donc dois-je m'asperger d'ondes wifi alors que j'ai déjà un câble qui le relie au MacBook pro ? :aw2:
  7. après quelques tentatives, j'arrive à partager la connexion via wifi depuis le MacBook pro :) (j'ai pas encore de wifi chez moi, il serait temps que je me penche sur la question... ça m'éviterait le câble réseau qui m'empêche d'utiliser le MacBook pro depuis ailleurs que mon lit...)
  8. premier test avec Safari sur ce site : pas mal mis à part que les polices sont bizarrement rendues : certaines sont agrandies par rapport à d'autres :aw:
  9. second test sur EDForum : hum, là c'est moyennement pratique quand même, même si la fonction zoom est facile à prendre en main. Et surtout ça rame vite quand on a une page un peu grande et avec beaucoup d'images.
  10. troisième test, poster un message sur le forum : un clavier azerty, c'est vachement plus cool que les saloperies qu'on trouve sur les portables classique :smile: Bon, ça reste forcément plus lent comme frappe que sur un vrai clavier mais vue la place dont on dispose, c'est déjà franchement pas mal géré ^^
  11. quatrième test sur un certain site tout rose/violet avec un bébé sur la bannière : une page super chargée, ben c'est long à afficher :we: Et cette idée de mettre des dizaines de blocs de contenu sur la même page c'est pas super pratique à consulter sur un petit écran :o
  12. et au passage les événements au survol genre pour des menus déroulants ça le fait moyen sur un écran tactile :ack: Y a un truc pour les avoir sans "cliquer" ?
  13. petit tour des autres applis web fournies de base : y a vraiment plein de vidéos sans intérêt sur YouTube.

Voilà voilà sinon, le jeu le plus sympa que j'ai testé pour l'instant se nomme Aurora Feint j'ai pas regardé ce qu'apportait la version payante mais la gratuite permet déjà de jouer pas mal (et merci à Slay qui me l'a conseillé ^^).


La Poste, on a tous à y gagner...

C'est du moins le slogan qu'ils utilisent (utilisaient ?). Mais je trouve que globalement ça laisse un peu à désirer...

J'attends impatiemment la livraison de mon iPod Touch commandé sur Amazon en début de semaine : seulement 195€ contre 230€ sur l'Apple Store, j'ai fini par me laisser tenter... et j'ai bien fait de pas trainer, parce qu'entre temps il est remonté de 20€ et plus en stock.

Espérant pouvoir jouer avec ce weekend, j'ai donc suivi de près son acheminement par la Poste sur le site de coliposte et là, surprise : "06/12/2008 - Destinataire absent lors de la livraison, seconde livraison prévue" (qui en passant est affiché dans la page en image sans texte alternatif... vachement accessible et super pratique pour du copier/coller). Sauf que toute la journée, il y avait au moins 3 personnes à l'apart'. Cherchez l'erreur... :)

Le pire, c'est que c'est pas la première fois que ça m'arrive... et comme par hasard, chaque fois un samedi (pour celles que j'ai noté du moins...). À croire que, pressés d'être en weekend, certains facteurs sautent quelques colis en piochant une excuse bidon pour pas être emmerdé. Dans la mesure où le site indique clairement que les samedis sont pris en compte dans le délai de 48h garanti, je trouve ça un peu gonflé...

Un poil énervé, je m'en vais donc envoyer un message de réclamation (ça sert pas à grand-chose en général mais ça défoule). Je me rends donc dans la page "contact", sélectionne les options qui conviennent, saisis mon message et envoie. J'obtiens alors un message d'erreur en rouge disant : "Vous avez saisi un caractère non autorisé dans le champ Commentaires, veillez à le remplacer afin de rendre possible la prise en compte de votre saisie.". Préciser le vilain caractère en question serait sans doute trop simple, ils sont joueurs à la Poste. Après de multiples tentatives en supprimant successivement et sans succès guillemets, accents, apostrophes et parenthèses, je finis par envoyer le message paragraphe par paragraphe (tant pis pour le spam, ils n'avaient qu'à mettre un message d'erreur explicite).

C'est comme ça que j'ai finalement pu isoler le point d'exclamation responsable. Eh oui, le point d'exclamation est interdit quand on contacte la Poste, c'est bon à savoir. Outre le fait que je ne vois vraiment pas pourquoi, ils auraient au moins pu prendre la peine de l'indiquer dans le message d'erreur, j'aurais été moins énervé et mon message final aurait été plus amical :)

Donc voilà, pas d'iPod Touch pour ce weekend et un agréable sentiment d'être pris pour un con. Que du bonheur \o/

Pour finir sur une touche positive, j'ai découvert au passage l'existence d'un petit logiciel fourni par la Poste et tournant sur Windows, Mac OS et Linux (c'est assez rare une telle diversité, ça mérite d'être relevé) qui permet d'être alerté en temps réel de tout changement d'état du colis : e-COMO. J'ai testé la version Windows et ça marche bien... Maigre consolation par rapport à tout ce qui ne fonctionne pas par ailleurs mais bon, c'est déjà ça.

Et du coup mes premières impressions sur l'iPod Touch seront pour un autre jour :_/:


Création de packs de smileys pour Adium

Ça faisait un bout de temps que j'y pensais puis j'ai finalement décidé de m'y mettre le weekend dernier : me faire un pack de smileys pour Adium reprenant les smileys d'EDForum. Je l'avais déjà fait pour Trillian où j'avais pas mal galèré parce qu'au lieu d'un fichier par smiley il gère un fichier global contenant toutes les images et un deuxième fichiers contenant la correspondance entre les codes smileys et les coordonnées correspondantes dans le fichier d'image... J'ai donc été agréablement surpris par la structure très simple des pack pour Adium.

Structure du pack

Le pack est composé de manière très simple d'un dossier avec l'extension .AdiumEmoticonset contenant d'une part les différents smileys et d'autre part un fichier XML Emoticons.plist contenant les correspondances image/code.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>AdiumSetVersion</key>
	<integer>1</integer>
	<key>Emoticons</key>
	<dict>
		<key>chuck.gif</key>
		<dict>
			<key>Equivalents</key>
			<array>
				<string>:chuck:</string>
				<string>:norris:</string>
			</array>
			<key>Name</key>
			<string>Chuck Norris</string>
		</dict>
...
		<key>paf.png</key>
		<dict>
			<key>Equivalents</key>
			<array>
				<string>:chien:</string>
			</array>
			<key>Name</key>
			<string>Paf le chien</string>
		</dict>
	</dict>
</dict>
</plist>

Construire un pack

Il existe un petit logiciel pour faciliter leur création : dotAdiumEmoticonSet Creator

Il est assez simple d'utilisation, si ce n'est qu'avant fermeture, il ne demande aucune confirmation, même au cas où certaines modifications n'auraient pas été enregistrées (ce qui est habituellement le cas pour à peu près toutes les applications que j'ai pu utiliser, que ce soit sur PC ou sur Mac)... J'ai perdu comme ça pas mal de temps à faire un pack :) Ne voyant aucun bouton de sauvegarde (celui-ci se trouvant uniquement dans la section file de la barre de menu), j'avais supposé qu'elle était automatique comme c'est le cas dans la gestion des préférence de MacOS par exemple...

C'est assez rageant de saisir 140 smileys puis de se rendre compte que rien n'est enregistré. Donc si vous l'utilisez, ne reproduisez pas la même erreur ;)

Convertir un pack phpBB2

Après avoir perdu mon pack, je me suis dit que j'avais pas franchement envie de me retaper la liste à la main, donc j'ai opté pour une autre solution : écrire un script de conversion de pack phpBB2 en pack Adium. J'ai opté pour un petit script PHP en ligne de commande que je publierai sans doute bientôt. Forcément au final ça m'a pris un peu plus de temps, vu que j'ai fait un script un peu propre mais c'était nettement moins chiant ^^

Au final, le pack fonctionne très bien et peut être téléchargé ici (aux côtés de ses homologues pour phpBB2 et Trillian).


Plugin Post-lister pour Wordpress - version 0.2

Je viens de mettre en ligne la version 0.2 de mon plugin post-lister avec quelques nouveautés :

  • gestion de listes de commentaires en plus des listes d'articles.
  • séparation de l'attribut showdate en deux attributs distincts showdate et showtime.
  • importante refactorisation du code pour utiliser le générateur de plugin que j'ai commencé à développer (et qu'il serait bien que je continue un jour, d'ailleurs...).
  • diverses petites corrections.

N'hésitez pas à tester cette nouvelle version et à me remonter les bugs éventuels !

J'ai fait la demande pour l'intégration au repository officiel, reste plus qu'à attendre la validation et traduire la doc en anglais...


Nouveau design pour mon site de smileys

La dernière refonte de mon site de smileys datait de 2003, il était donc temps de le remettre un peu au goût du jour. Je me suis contenté d'une refonte du design pour l'instant, une refonte fonctionnelle avec une navigation par tags plutôt que par catégories statiques viendra peut-être un jour...

Ancienne version Nouvelle version

Ça reste assez simple mais ça fait nettement moins "vieux" ^^

Par contre c'est loin d'être parfait sous IE mais bon tant pis, j'ai bidouillé ce qu'il fallait pour que ça ne soit pas trop moche, on s'en contentera (pour ceux qui n'aiment pas la version IE, il est toujours temps d'en changer pour un vrai navigateur :mock:).

J'en ai profité pour remplacer le domaine sm.darathor.com (que j'avais pris à l'époque pour raccourcir les URLs) par smilies.darathor.com qui est quand même plus clair, pour les moteurs de recherche notamment.

Bon, maintenant faudrait que je refasse quelques smileys à l'occasion...


Encore quelques extensions pour Firefox… #2

Cet article est marqué comme contenant des informations dépassées depuis le 21/10/2018.
Ces extensions n'existent plus. Foxmarks et Abduction! sont remplacées par des fonctionnalités natives de Firefox : respectivement Firefox Sync et Firefox Screenshot

Encore quelques extensions sympathiques :)

Prévisualisation - Foxmarks Bookmark Synchornizer

Foxmarks Bookmark Synchronizer

Cette extension permet de synchroniser automatiquement ses marque-pages entre plusieurs Firefox... très pratique quand on utilise plusieurs machines. D'autant qu'on peut gérer plusieurs profils pour n'avoir, par exemple, certains marque-pages qu'au boulot et d'autres que chez soi. Enfin le site où ils sont stockés permet également de les consulter en ligne si l'on est sur la machine de quelqu'un d'autre.

Prévisualisation - Abduction!

Abduction!

Celle-ci permet de réaliser des captures des pages affichées par Firefox. L'avantage sur un logiciel de capture externe est que toute la page est directement capturée (et pas seulement la partie que l'on voit à l'écran) et uniquement la page (pas les barres d'outils de Firefox ou les autres fenêtres ouvertes). Enfin on peut également ne capturer qu'une partie de la page en la sélectionnant dans la prévisualisation.

Prévisualisation - PDF Download

PDF Download

Dans le même ordre d'idée, cette extension permet de générer un PDF à partir d'une page (en conservant le liens). Le seul problème c'est qu'en fait ce n'est pas directement l'extension mais un site externe qui réalise la conversion... du coup si c'est une page en accès restreint, c'est mort et idem si la page comporte des infos relatives à une connexion (genre un panier sur un site marchand par exemple) et en plus il faut télécharger le PDF généré qui peut s'avérer imposant selon la page. Mais bon, ça peut éventuellement servir tout de même à l'occasion...


Quelques montages d'images...

Ces derniers temps, je refais quelques trucs avec mon logiciel de traitement d'image... Donc histoire de poster un peu quelque chose, voici mon dernier set Signature/Avatar que j'utilise sur mon forum, basé sur l'excellente série Deadwood (à voir absolument si ce n'est déjà fait !) :

Avatar Deadwood
Signature Deadwood #1
Signature Deadwood #3
Signature Deadwood #2

Et puisqu'on y est, un autre set datant de cet été sur le jeu vidéo Guild Wars (que je conseille fortement, soit dit en passant :)) :

Avatar Guildwars
Signatude Guildwars #1
Signatude Guildwars #2

Enfin !

Ça y est, Tab Mix Plus est enfin compatible Firefox 3 ! C'était la dernière extension que j'attendais pour pouvoir mettre à jour, c'est donc chose faite :)

C'est l'occasion de relever un point noir sur le moteur de recherche d'extensions sur le site de Mozilla :

  1. en recherchant "tabmixplus" ou "tabmix", j'obtiens 5 résultats mais pas Tab mix plus (les 5 résultants faisant référence à l'extension dans leur description en tant que "TabMixPlus").
  2. en recherchant "tabmix plus", je n'obtiens aucun résultat.
  3. en recherchant "tab mix plus", je n'obtiens aucun résultat non plus est là c'est nettement moins compréhensible !
  4. ce n'est qu'en recherchant "tab mix" que j'obtiens enfin le résultat recherché.

En soi, ça peut se comprendre avec un algorithme simple de recherche (à part pour le point 3). J'ai d'ailleurs testé sur quelques sites pour voir et je n'en ai trouvé que parmi les moteurs de recherches (Google et Live Search) qui me trouvent les résultats en collant les mots.

C'est un point sur lequel les différentes implémentations de moteurs de recherches internes des CMS, forums, etc. devraient se pencher, parce que quand on cherche une marque ou un nom, on n'a pas forcément le découpage précis en tête...


Quelques trucs sur UNIX/Linux #1

Les habitués du mode console n'apprendront probablement rien de cet article mais pour ceux qui, comme moi, ne s'en servent qu'occasionnellement, ça peut s'avérer instructif.

Recherche dans l'historique

On a vu il y a quelques temps qu'on pouvait alléger l'historique des commandes saisies en ignorant les doublons. Si la commande que vous recherchez est malgré cela noyée dans la masse, vous pouvez utiliser ctrl+r et taper les premiers caractères de la commande recherchée pour la retrouver.

Blocage de la console

Le raccourci ctrl+s permet de suspendre le terminal (saisie et exécution). Pour le débloquer, le raccourci est ctrl+q donc si le terminal se bloquer mystérieusement (ce qui peut arriver vu que ctrl+s est le raccourci de sauvegarde dans la majorité des éditeurs de texte graphiques et qu'il n'est pas rare de le taper machinalement après une saisie), tentez ça avant de frapper sauvagement sur votre clavier ;)

Retrouver les plus gros fichier de votre système

Une partition est pleine, il faut faire de la place ! Oui, mais où sont les gros fichiers qui consomment tout l'espace ? Telle est la situation dans laquelle je me suis retrouvé pas plus tard qu'il y a 5 minutes...

Après une brève recherche sur le net (que je en compte pas refaire à l'avenir, d'où l'intérêt d'en donner le résultat ici :)), voici la réponse avec une combinaison de du et sort :

du -S <noeud-de-l'arborescence> | sort -n

Soit dans mon cas, pour lister tous les dossiers du système :

du -S / | sort -n

On retrouvera alors les dossiers contenant les plus gros fichiers en fin de liste. Par contre, ça peut mettre un peu de temps à s'exécuter vu que ça fait le tour de tous les dossiers.


Mon premier plugin WordPress dans le repository

Après d'abord plusieurs semaines d'attente de validation, puis deux semaines pour reprendre le temps de m'en occuper, je viens de "commiter" mon premier plugin (Open Search) dans le repository officiel WordPress.

Alors en passant, quelques remarques sur la façon dont ça fonctionne :

  • la récupération des informations à afficher dans la page du plugin est bizarre : certaines infos sont reprises de l'en-tête du fichier PHP principal du plugin, d'autres de fichier readme.txt... Alors qu'une partie est présente dans les deux... Pas très cohérent... J'aurais mieux vu l'ensemble pris dans le "readme" (c'est d'ailleurs ce que je pensais à l'origine).
  • je serais curieux de savoir pourquoi il n'affiche pas dans la page du plugin les onglets "Installation", "FAQ" et "Screenshots", alors qu'ils sont bien présents dans le fichier "readme"...
  • il semblerait bien que les infos affichées soient prises dans le "trunk" et non dans la dernière version stable... D'un côté c'est pas con parce que ça permet de les corriger sans "taguer" de nouvelle version exprès mais d'un autre côté ça veut dire que si on "commite" des modifications dans le trunk pour une nouvelle version, ben c'est ça qui va s'afficher alors que cette nouvelle version n'est pas celle qui est disponible en téléchargement par défaut, ce qui ne me semble pas très malin.

Bref, maintenant faut que je me motive pour finaliser la nouvelle version de Post-lister et traduire la doc pour pouvoir le publier aussi :p


650km - perdu dans l'océan

Un truc donc je n'ai pas encore parlé ici, ce sont les petits jeux en lignes auxquels je joue régulièrement, ceux qui se jouent au travers du navigateur et qui prennent quelques minutes par jour.

Le premier que j'aborderai et sans doute celui auquel je joue depuis le plus longtemps est le suivant : 650km - perdu dans l'océan

Présentation du jeu

On pourrait le qualifier de jeu de "survie" : empruntant l'idée générale à la célèbre série américaine Lost, on y incarne un survivant d'un crash aérien sur une ile pas si déserte qu'on pourrait le croire. Au fur et à mesure qu'on remplit des objectifs, on passe des niveaux qui permettent d'augmenter ses capacités comme dans la plupart des jeux de rôles. Par ailleurs de nombreuses quêtes permettent de collectionner divers objets. Chaque jour on peut effectuer un certain nombre d'action qui consomment pour la plupart 5% de l'énergie qu'on regagne progressivement à raison de 15% par heure.

Ouvert depuis maintenant plus de deux ans, le jeu reste en constante évolution avec de nouveaux objets, de nouveaux animaux à combattre et surtout de nouveaux événements et de nouvelles quêtes qui évitent l'aspect répétitif qui se trouve trop souvent dans ce type de jeux.

Ses points forts

  • comme dit à l'instant l'un des gros points forts du jeu est d'être "vivant" dans le sens où l'équipe qui le gère enrichit continuellement son univers. Le jeu reste donc intéressant même après deux ans, ce qui est assez rare pour être noté.
  • contrairement à certains autres jeux où l'on est en apparence très libre, il ne regorge pas de règles dissimulées dans les tréfonds du forum et globalement ce qu'il est interdit de faire n'est tout simplement techniquement pas faisable. Ça n'a l'air de rien mais c'est particulièrement rageant de jouer tranquillement puis un beau matin d'avoir son compte bloqué pour infraction à une obscure règle. En particulier il n'y a pas de règle bridant ce que peuvent faire deux utilisateurs connectés via la même adresse IP (tout simplement parce que le jeu est conçu de telle sorte que ça n'apporte pas grand-chose de créer plusieurs comptes et de les faire s'entraider), ce qui est fort appréciable.

Ses points faibles

  • son plus gros point faible, c'est son succès. Avec plusieurs dizaines de milliers de comptes créés, il n'est malheureusement pas rare que le jeu rame un peu, voire beaucoup. Et des fois sur des pages où on ne comprend pas bien pourquoi... Je serais bien curieux de voir comment la page du campement est codée par exemple !
  • la pub y est de plus en plus envahissante. Au départ il n'y avait que quelques logos de partenaires en bas de page mais depuis quelque temps, il y a une énorme colonne publicitaire sur la droite... J'avoue avoir usé de stylish pour m'en débarrasser tellement elle est envahissante.
  • il faut bien qu'ils se financent, me direz-vous, donc la présence de pub est logique. Certes, mais il y a par ailleurs la possibilité d'acheter de quoi jouer un peu plus par jour que les actions autorisées... le seul problème c'est que le prix est tellement élevé que je me demande combien de personne le font : pour 3€, on obtient 5 graine de guarana, c'est-à-dire de quoi jouer s'équivalent de deux jours d'actions (en supposant qu'on se connecte une fois vers midi et une fois en soirée). À ce prix là la facture devient très vite énorme et le jeu perd son intérêt de petit jeu où l'investissement est minime... Du coup personnellement je n'ai jamais rien acheté alors que j'ai souvent acheté des parties sur d'autres petits jeux.

Conclusion

Ce jeu a l'intérêt de ne prendre que quelques minutes par jour et la plupart des défauts sont plutôt liés à la façon dont il est géré et financé. S'il m'arrive souvent de pester contre les problèmes techniques qui peuvent survenir (parfois c'est vraiment très gros, comme un bug qui suite à un problème d'encodage rendait toutes les actions contenant des accents inutilisables... ça veut bien dire qu'en internes actions sont gérés avec des noms contenant des accents, ce que je trouve assez surprenant tant il est évident que les risques de problèmes sont nombreux), il reste cependant assez intéressant pour que je n'aie toujours pas lâché l'affaire après plus de deux ans... Et il me semble que c'est le seul jeu à pouvoir y prétendre !


Mac : quelques widgets à la con pour le dashboard

Une petite liste de trois widgets inutiles (et donc indispensables, non ? :)) pour le dashboard de Mac OS :

  • Fantasy Names : plutôt dédié aux joueurs, ce widget est dédié à la génération de noms de personnages, bateaux, sorts, etc. à consonance anglophone.
    Fantasy names
  • pongClock : une petite horloge sous la forme d'une partie de pong, avec l'heure à la place des scores :we:
    pongClock
  • Chuck Norris Facts : ce widget affiche un fait au hasard en provenance du site Chuck Norris Facts. On peut cependant regretter que d'une part, on ne puisse pas choisir de récupérer les faits sur la version française et d'autre part qu'il ne stocke rien en mémoire, donc si pas de connexion Internet, rien à lire :(
    Chuck Norris Facts widget

Plugin Open search pour Wordpress - version 1.0.1

Je viens de mettre en ligne une nouvelle version de mon petit plugin Open search. Cette nouvelle version n'apporte rien fonctionnellement mais inclus le fichier readme.txt nécessaire à l'ajout sur le repository officiel, un fichier de traduction en anglais et une page de documentation en anglais ( enfin, en anglais de développeur qui se débrouille plus ou moins, hein... je suis preneur de toute suggestion de correction qui en ferait du "vrai" anglais ;:).

Prochaine étape, faire de même avec Post-lister une fois qu'il sera à peu près arrivé à maturité... D'ailleurs la version 0.2 ne devrait pas tarder, maintenant que je suis en vacances, j'ai un peu de temps :smile: Au passage s'il y a un volontaire pour la traduction de la doc, il est le bienvenu (pas forcément tout de suite, vu qu'elle va pas mal bouger avec la prochaine version) :p


Preview : générateur de plugin WordPress

J'ai déjà développé quelques plugins WordPress, même si peu sont publiés (pour diverses raisons, la plupart du temps parce qu'ils sont encore trop limités ou pas assez finalisés).

Le dernier en date est Post-lister qui permet d'ajouter des listes d'articles soit dans un message grâce à un shortcode, soit en tant que widget. Au final c'est pas loin de 600 lignes qui mènent à ce résultat (si on vire les nombreux commentaires, on descend pas mal ce chiffre mais bon, les commentaires ça fait partie du code).

Et 600 lignes c'est beaucoup.

Surtout si l'on considère que moins de 200 d'entre elles concernent directement le listage de messages et que le reste serait quasiment identique si au lieu de lister des messages, on affichait une photo de Chuck Norris !

La conclusion est donc évidente : ce code répétitif doit être factorisé d'une manière ou d'une autre, il est exclu de faire des copier/coller à chaque plugin, ce qui serait un cauchemar à maintenir. Pour cela je vois en gros trois possibilités :

  1. modifier plein de trucs dans WordPress pour qu'ils facilitent l'intégration de ce genre de plugin : je l'ai déjà fait avec phpBB (pas le choix faut dire vu qu'il ne gère absolument pas de plugins...) mais c'est un cauchemar pour les mises à jour puisqu'on ne peut plus se contenter de remplacer les fichiers... Résultat, je n'utiliserai probablement jamais phpBB3 vu que je devrais tout migrer... et intégralement recommencer pour la version suivante... Donc niet.
  2. développer un petit framework annexe à WordPress sous forme d'un plugin à part proposant des classes de base pour pas mal de trucs : ça pourrait être une solution, j'y viendrai probablement à terme d'ailleurs mais c'est pas super pratique parce que ça empêche d'utiliser deux plugins basés sur des versions différentes dudit framework et ça complexifie l'installation (puisqu'il faut installer la dépendance avant).
  3. développer un générateur de code : et là où c'est cool c'est qu'à peu de choses près j'avais déjà tout ce qu'il fallait dans ma tentative avortée de développer un script de forum perso : intégration de Smarty, quelques petites classes pour palier au manque flagrant de PHP en matière d'homogénéité des fonctions de traitements de chaines et autres.

C'est donc dans cette troisième voie que je me suis lancé il y a quelque temps et ça commence à prendre forme : en me basant sur un modèle en XML listant les différents paramètres, leur type et quelques autres infos, je génère automatiquement une classe de base contenant le nécessaire pour implémenter un "bloc" affichable sous forme de shortcode et/ou de widget, avec pour ce dernier un formulaire back-office et un fichier .pot pour les chaines localisées associées. Une fois tout ce petit monde généré on peut se concentrer sur la partie intéressante : le fonctionnel réel du plugin, pas son enrobage pour l'intégrer dans WordPress.

Bon, à l'heure actuelle ce n'est pas encore prêt à être publié (c'est chiant à installer et ça ne s'utilise qu'en ligne de commandes) et certains trucs manquent encore à la génération comme la page de configuration des préférences en back-office. Mais ça viendra...

Et du coup la prochaine version de Post-lister ne devrait pas tarder, avec un code refactoré pour être majoritairement généré, quelques options supplémentaires pour la liste des articles et la possibilité d'afficher également des listes de commentaires (c'est à peu près fonctionnel, donc peut-être ce weekend ^^).


Des logos débiles pour EDForum

La semaine dernière a eu lieu un concours de logos sur EDForum (1, 2 et 3) avec pour thème l'été.

Voici mes deux participations... c'est très con, je vous aurai prévenus :smile:

Logo EDForum été 2008 - 1 Logo EDForum été 2008 - 2

Plugin "Post-lister" pour WordPress

À l'origine de ce plugin il y avait Query inside post de k-ny qui permet d'intégrer dans un article une liste d'articles générée automatiquement selon certains critères via une balise ShortCode.

En voulant corriger un bug de ce plugin (si l'on intégrait une liste de messages, les données affichées en bas de l'article, comme le lien vers le flux RSS ou la liste des catégories étaient ceux du dernier article de la liste et non celles de l'article courant) à force de refactoring, j'en suis finalement arrivé à le ré-écrire intégralement ainsi qu'à y ajouter certaines fonctions supplémentaires :

  • paramètres d'affichages : afficher pour chaque article de la liste l'auteur et/ou la date et/ou le nombre de commentaires.
  • widgetisation : on peut également intégrer une ou plusieurs listes d'articles à sa sidebar sous la forme d'un widget (le fait de définir un widget pouvant être utilisé plusieurs fois en même temps fut d'ailleurs étonnamment laborieux, du fait du caractère passablement brouillon de l'implémentation de la fonctionnalité dans WordPress et du codage du seul widget de base qui l'utilise et peut donc servir d'exemple : le widget d'affichage d'un flux RSS).

Le plugin final étant entièrement recodé, j'ai finalement décidé d'en faire un plugin distinct que voici : Post-lister v0.1

EDIT : Ajout de la page de documentation dédiée.


JavaScript Debugger

Cet article est marqué comme contenant des informations dépassées depuis le 21/10/2018.
Cette extension n'existent plus, remplacée par les outils de développement natifs de Firefox.

Quand on a travaillé un peu sur des sites ou applications utilisant des JavaScript volumineux, on se rend compte assez vite que c'est laborieux. Les erreurs sont mal remontées, on n'a pas de stack trace, etc. Firefox est déjà largement au dessus d'Internet Explorer à ce niveau en fournissant une console d'erreur nettement plus lisible et fonctionnelle mais ça reste insuffisant sur des scripts complexes et fortement découpés en de nombreuses fonctions élémentaires.

Une solution au problème : JavaScript Debugger, une extension pour Firefox qui, comme son nom l'indique, implémente un débuggeur JavaScript.

JavaScript Debugger - fenêtre principale

Comme sur les débuggeurs disponibles pour les autres langages, on peut donc placer des point d'arrêt (breakpoint) permettant une exécution pas à pas du script, avec à chaque étape la possibilité d'inspecter toutes les variables définies et leurs valeurs. Ça ne résout pas tout mais ça aide grandement à comprendre ce qui arrive !

Malheureusement, cette extension est encore loin d'être parfaite : elle est assez lourde et ne se ferme pas toujours vraiment lorsqu'on ferme la fenêtre et même en fermant toutes les fenêtre Firefox, il arrive qu'il reste toujours une instance de Firefox qui traine dans les processus en cours et qu'il faut tuer à la main (sous Windows du moins, je ne l'ai pas testé sur un autre système).

Donc ce n'est pas parfait mais ça a le mérite de combler un gros manque, donc ça mérite le coup d'œil :)

Sinon, l'extension Firebug est censée fournir une partie de ces fonctionnalités également mais, jusqu'à présent, à chaque fois que j'ai tenté de l'installer elle m'a causé plus de problèmes qu'autre chose (instabilité du navigateur) donc je n'ai pas approfondi...


iWizz, magnétoscope en ligne

Cet article est marqué comme contenant des informations dépassées depuis le 10/01/2023.
Ce système n'existe plus depuis bien longtemps. En effet, l’exception de copie privée sur laquelle prétendait reposer Wizzgo ne s'applique pas dans ce cas, du fait que ce n'est pas l'utilisateur qui réalise la copie. Plus d'informations ici.

iWizz est une sorte de magnétoscope en ligne. Il permet de programmer l'enregistrement puis de télécharger le fichier au format quick time. L'intérêt c'est que l'ordinateur n'a aucunement besoin d'être allumé lors de l'enregistrement. De même, contrairement à la télé via la freebox (ou équivalent), on ne souffre pas des éventuels problèmes de connexion durant la diffusion. L'interface propose de sélectionner ses programmes parmi les chaine hertziennes et la TNT.

À première vue, ça parait tout bon mais après quelques essais j'ai constaté quelques défauts :

  • on est limité à 15h par mois d'enregistrement.
  • la qualité d'image est moyenne, surtout en plein écran (en même temps la résolution d'une image télé, c'est pas énorme comparé à un écran d'ordinateur, donc rien d'étonnant).
  • la recherche dans les programmes me semble des plus approximatives : si je fais une recherche avec la catégorie "séries" comme seul critère, je n'obtiens que des épisodes de Arrested development alors qu'une recherche sur le mot-clé Highlander me sort plusieurs épisodes de la série... Donc je ne sais pas trop comment ils se débrouillent mais espérons qu'ils amélioreront ça par la suite.

Je n'ai testé que l'interface Mac mais apparemment le client est également disponible pour Windows.

Bref, a première vue, ça semble bien sympa si l'on excepte le problème de recherches ^^


Désactiver le "bong" au démarage de MacOS X

Le numéro 2 de Compétence Mac est sorti il y a peu. Pour l'instant j'ai vaguement survolé l'ensemble et j'ai notamment trouvé la solution à un problème que je n'avais pas encore résolu jusque-là : comment faire pour désactiver ce satané "bong" au démarrage du mac ?

La réponse consiste en un petit outil à installer qui ajoute aux préférences système une section permettant de configurer le niveau sonore du dit "bong", voire de le couper. Et voilà un problème de réglé :)


Personnaliser la barre latérale dans un thème WordPress

Vu qu'on m'a posé certaines questions là dessus cette semaine, ça va faire le sujet de l'article d'aujourd'hui.

Ajouter une seconde zone de widgets

WordPress - gestion des widgets

Depuis la version 2 (il me semble) de WordPress, si le thème est bien fait, on peut depuis le panneau d'administration ajouter des widgets dans certaines zones bien définies. Dans le thème par défaut, il y a une zone unique pouvant accueillir des widgets, qui se trouve dans la barre latérale. Mais on peut vouloir en ajouter d'autres.

Pour ajouter une nouvelle zone, il faut effectuer deux modifications dans le code du thème :

  1. Premièrement, il faut "enregistrer" une nouvelle zone pour que celle-ci soit disponible dans le menu de sélection des zones. Pour cela il faut en général se rendre dans le fichier functions.php du thème et rechercher où est appelée la fonction register_sidebar (dans le thème par défaut, c'est tout en haut du fichier) et l'appeler une fois de plus pour enregistrer une nouvelle zone.

    Cette fonction peut optionnellement prendre en argument un tableau de paramètres permettant de personnaliser le code HTML qui enrobera la liste de widgets. Dans la plupart des cas on n'en a pas besoin mais au cas où c'est bon de savoir que c'est possible, notamment pour éventuellement spécifier une classe particulière à l'une ou l'autre zone en vu d'appliquer des styles différenciés.

    Une fois cela fait, la nouvelle zone est disponible dans le menu de sélection des zones du panneau d'administration (cf la capture d'écran ci-dessus).

  2. Dans un deuxième temps, il faut inclure cette zone dans le rendu de la page à un endroit ou un autre (sinon, forcément, ça sert pas à grand chose). Pour cela il suffit d'intégrer le code suivant dans l'un des fichiers de template : <?php dynamic_sidebar(n); ?> en prenant garde de bien remplacer le paramètre "n" par un entier représentant le numéro de la zone que vous voulez afficher.

    Par exemple, si vous venez d'ajouter une zone et qu'il y en avait une seule avant, la nouvelle aura fort logiquement le numéro 2 et le code à insérer sera le suivant : <?php dynamic_sidebar(2); ?>

N'afficher certaines choses que sur la page d'accueil

Afin de ne pas trop surcharger les pages, on peut ne vouloir afficher certaines informations et liens que sur la page d'accueil. Par exemple sur ce site, les encarts "Mes autres sites", "News du serveur" et "Divers" ne s'affichent que sur la page d'accueil (et les pages de contenu fixe).

Pour restreindre l'affichage d'une portion de code d'un fichier de template, c'est très simple :

<?php if ( [CONDITION] ) { ?>
  [CODE HTML À RESTREINDRE]
<?php } ?>

WordPress propose quelques fonctions PHP qui testent dans quel type de page on se trouve et qui peuvent servir à composer la condition (qui remplacera la portion "[CONDITION]" du code ci-dessus). Ces fonctions sont définies dans le fichier wp-includes/query.php et comprennent notamment :

  • is_home() disant si l'on se trouve sur la page d'accueil.
  • is_page() disant si l'on se trouve sur une page de contenu fixe.
  • is_search() disant si l'on est dans la page de recherche.
  • is_404() disant si l'on se trouve sur la page d'erreur 404.
  • etc.

Pour composer la condition, il suffit d'appeler une ou plusieurs de ces fonctions séparées par une double barre verticale (||) qui représente un "ou" en PHP.

Par exemple pour ajouter une zone de widgets qui ne sera affichée que sur la page d'accueil et les page de contenu fixe, on utilisera le code suivant :

<?php if ( is_home() || is_page() ) { // Home and pages only. ?>
  <?php dynamic_sidebar(2); // Home and pages sidebar. ?>
<?php } ?>

Et ça marche que pour la barre latérale ?

Bien entendu ces deux "astuces" sont valables aussi bien pour la barre latérale que pour n'importe quelle autre partie de votre site. Mais c'est dans la barre latérale que c'est le plus souvent utilisé.


Les bonnes vieilles musiques du Commodore 64

Il y a peu, en cherchant des logiciels pour mon Mac, je suis tombé sur SIDPLAY (dispo uniquement pour Mac me semble-t-il). Il s'agit d'un lecteur audio... de musiques du Commodore 64 ! Le premier ordi que j'ai eu entre les mains, alors que je devais avoir 5 ou 6 ans et qui ressemblait à ça :

Commodore 64 - écran Commodore 64 - unité centrale

SIDPLAY s'installe avec une banque de musiques provenant de plusieurs centaines de jeux et j'y ai retrouvé a plupart des jeux que j'avais joué à l'époque : Boulder dash, Underwurlde, G.I. Joe, Ghostbusters, Fist II, Summer Games... Ça rappelle des souvenirs.

Bon après rapidement ça saoule et je coupe le son :)

Sinon, pour les nostalgiques du Commodore 64, y a aussi l'affichage en mode "Nostalgie" sur le navigateur web Opera...


1 an après...

Ça y est, ça fait un an que ce site est ouvert (le premier mai, c'est férié, donc facile à retenir :p).

Que dire ? Pas grand-chose... Si ce n'est que WordPress s'est avéré plutôt pas mal : je me suis essayé au développement de plugins et c'est assez sympathique (comparé à développer des MODs pour phpBB2, c'est un vrai plaisir : le code est organisé dans cette optique !).

C'était mon premier site avec WordPress, entre temps deux autres ont vu le jour :

  • d'une part la page d'accueil du serveur dédié qui héberge ce site ainsi que mes divers forums.
  • d'autre part, depuis quelques semaines, un petit site associé à EDForum : Cultur-ED. Fort logiquement il parle de séries TV et un peu de cinéma, au travers d'articles écrits par les membres du forum.

Voilà voilà, un petit site sans prétention qui fait son chemin.


Correction pour le plugin WordPress Democracy

Avec la version 2.5 de WordPress, le plugin Democracy (permettant de gérer des sondages) ajoute un "n" parasite au dessus de chaque sondage à l'enregistrement.

J'ai intégré la correction de ce bug à aux différentes corrections regroupées ici.


Affichage de balises sans qu'elles soient traduites

Comme ça fait deux semaines que j'ai rien posté...

J'ai souvent constaté en recherchant des plugins pour WordPress ou en lisant des discussions sur des forums que pour afficher des balises "en clair" sans qu'elles soient traduites, les gens ajoutaient dedans une étoile ou un point. C'est une ruse qui fonctionne, certes, mais ça nuit à la lisibilité et en cas de copié/collé, il faut retoucher le code, c'est pas pratique.

Première solution

Une autre solution que j'ai longtemps utilisée consiste à intercaler une autre balise dedans qui empêchera le parser de reconnaitre la balise que l'on veut afficher.

Par exemple, pour afficher les balises bbcodes

[b]bla[/b]

sur un forum, on peut mettre

[b[b][/b]]bla[[b][/b]/b]

Cependant cela produit un code non-valide XHTML, puisqu'on se retrouve avec une balise HTML vide, ce n'est donc pas très élégant.

Seconde solution

Une autre façon de faire, est d'utiliser les entités HTML pour remplacer les crochets, chevrons ou accolades qu'on veut ne pas voir interprétées. Pour afficher

[b]bla[/b]

on écrira donc

&#91;b&#93;bla&#91;/b&#93;

Les différentes entités sont facilement trouvables sur le net, notamment ici.

Les plus intéressantes étant :

&#91; -> [
&#93; -> ]
&#60; ou &lt; -> <
&#62; ou &gt; -> >

L'inconvénient c'est que suivant les scripts, les entités sont automatiquement remplacées par les caractères qu'elles représentent et dans ce cas, ben... ça sert à rien \o/

En tout cas sur WordPress, ça marche et ça me semble plus élégant que les deux autres solutions.


Macbook Pro : secondes impressions

Quelques jours plus tard, quelques remarques supplémentaires en vrac :

  • la prise du chargeur est quand même sacrément bien pensée. En effet, elle est aimantée et non "clipsée", vissée ou autres, ce qui a deux avantages : d'une elle est nettement plus facile à brancher, même à tâtons dans le noir et de deux, si on l'accroche, elle se débranche sans dommages et sans emporter l'ordinateur avec elle (tout en étant bien fixée quand même). Juste ce qu'il faut, quoi.
  • le touchpad qui avec deux doigts gère l'équivalent de la molette de la souris, c'est cool et on s'y habitue très vite. De plus, pour remplacer le bouton droit, on peut activer une option qui le simule en posant deux doigts sur le touchpad et en cliquant (nettement plus simple que de passer par la touche cmd)
  • la barre de menu séparée de la fenêtre et toujours placée en haut de l'écran, j'ai encore un peu de mal à m'y faire : j'ai l'habitude de l'avoir à portée de main pour les petites fenêtres. Là il faut aller la chercher ailleurs... Globalement, je n'y vois d'intérêt que pour les applis ayant une toute petite fenêtre (genre messagerie instantanée) et encore...
  • autre truc un peu chiant : le clavier qui n'affiche pas tous les caractères qu'on trouve sur un clavier classique PC, dont certains quand même vachement importants, surtout pour un développeur : crochets, accolades, pipe... Certes, sur PC ils sont aussi pour la plupart accessibles par des combinaisons tordues à base de alt gr mais au moins ils sont affichés sur le clavier... Bon, à l'usage on s'y habitue surement, comme pour les majuscules accentuées sur PC où il faut connaitre le code ASCII (sur Mac elles sont accessibles via des combinaisons de touches), mais les avoir écrits sur le clavier, ça faciliterait quand même grandement l'apprentissage...
  • quand on vient du monde PC, c'est chiant de devoir remplacer toutes les combinaisons ctrl + touche qu'on connait par cmd + touche... surtout quand la touche ctrl existe et est placée au même endroit que sur PC.

Sinon, un petit mot sur le magazine Compétence Mac qui en est à son premier numéro actuellement et dont j'ai appris l'existence grâce à Nico : ben c'est pas mal.

  • déjà il doit y avoir maximum trois pages de pub dans tout le mag qui fait plus de 100 pages ce qui est un bon début.
  • ensuite c'est visuellement bien présenté, ce qui ne gâche rien.
  • enfin c'est bien expliqué et assez complet (ce premier numéro est une sorte de "Léopard pour les nuls" mais sans le jaune moche sur la couverture :)).

Seul bémol : 7€, c'est un peu cher pour un magazine. Mais bon, quand la qualité est là et qu'on ne paye pas pour des pubs, ça passe ^^


Macbook Pro : premières impressions

Vu que je n'avais toujours pas d'ordinateur portable et que depuis des mois je n'entends que du bien de Mac OS X, j'ai fini par me laisser tenter par un Macbook. Et vue la petite taille des écrans des Macbook classiques, j'ai préféré prendre la version pro.

Ça ne fait que quelques jours que je l'ai donc je n'ai testé que très superficiellement mais globalement, même si certaines choses me paraissent un peu bizarres voire laborieuses (l'absence du 2e bouton, c'est quand même pas franchement pratique, notamment), d'autres sont carrément puissantes par rapport à Windows :

  • la recherche dans les fichiers est incomparablement plus performante : on tape dans le champ de recherche et on a les résultats quasiment en temps réel ! Eh oui, exit le chien qui patauge pendant trois minutes pour retrouver le fichiers hosts (celui qui est tellement bien paumé dans l'arborescence de Windows que je ne le retrouve jamais sans lancer une recherche), là on a les résultats quasiment dans la secondes et si on tape une autre lettre, le filtrage est tout aussi rapide, pas besoin de relancer la recherche. Et surtout, on trouve... ce qui est loin d'être toujours le cas avec celle de Windows. Bref, même si je n'ai pas encore testé ce que ça donne avec beaucoup de données, c'est nettement mieux sur ce point.
  • la recherche... ailleurs aussi. Par exemple, dans les préférences système (équivalent du panneau de configuration de Windows), on a également un champ de recherche qui met en surbrillance les icônes correspondant à des sections qui contiennent le mot recherché. Ou bien dans l'aide des applications où l'on ouvre directement le menu concerné avec une flèche indiquant l'entrée correspondante.
  • un autre truc assez sympathique : les coins d'écran actifs. Cette fonctionnalité permet en plaçant le pointeur dans un coin de l'écran d'effectuer une opération (afficher le bureau, mettre en avant toutes les fenêtres de l'application en cours, afficher une mosaïque des différentes fenêtres ouvertes...).
  • le dashboard permet d'afficher des petites applications du genre météo, flux RSS, etc. sur un unique tableau de bord (je n'ai pas encore testé à fond mais apparemment l'éditeur de widgets fourni semble relativement intuitif et bien foutu).
  • la gestion du multi-bureau (du même style que ce qu'on trouve sur la plupart des environnements graphiques Linux semble pas mal également.

Bon, je ne sais pas ce que vaut Vista sur ces points (je ne l'ai pas testé et ça ne me tente pas plus que ça...) mais par rapport à XP, c'est un bien grand pas en avant.

Maintenant on va voir à l'usage si cette première impression très positive va se confirmer mais a priori c'est bien parti ^^


Version française et corrections diverses pour le plugin Wordpress Embedded video

Le plugin Embeded video permet d'intégrer des vidéos à Wordpress tout en respectant les standards XHTML (contrairement à beaucoup d'autres). S'il est globalement satisfaisant, j'y ai tout de même apporté quelques corrections :

  • la localisation de l'attribut title sur l'icône dans l'éditeur qui, de base, ne tient pas compte de fichiers de localisation autres que allemand et anglais).
  • la gestion des cas où l'on ne peut pas afficher de lien dans la popup de l'éditeur (Dailymotion et Garage Tv) qui, de base, désactive le champ lien lorsque l'on sélectionne un portail pour lequel ce n'est pas géré mais ne le réactive pas quand on en sélectionne un autre.
  • ajout de la gestion des liens pour Dailymotion.
  • la gestion des accents dans les titres de vidéos (je vois pas trop ça marche pas de base... à tous les coups c'est encore php qui se vautre avec l'UTF-8...).

Et voici la version française (traduite par mes soins) ainsi que le fichier .pot pouvant servir à d'autres traductions du plugin : Embedded video - Version française.


Version française pour le plugin Wordpress Democracy

Le plugin Democracy permet d'intégrer des sondages à Wordpress. Il est prévu pour être localisable mais j'ai cependant dû y apporter quelques corrections pour que ce soit pleinement le cas.

Et voici la version française (traduite par Mya) ainsi que le fichier .pot pouvant servir à d'autres traductions du plugin : Democracy - Version française.


Plugin Open search pour Wordpress

Après avoir un peu cherché et trouvé plusieurs plugins gérant Open search mais aucun ne faisait précisément ce que je voulais.

J'ai donc codé ma propre version qui me semble plus complète. Donc qu'est-ce qu'elle fait ?

  • elle intègre Open search à Wordpress (forcément, c'est un peu le but...).
  • elle recherche automatiquement l'icône de favoris, d'abord dans le répertoire du thème courant et ensuite à la racine et à défaut prend l'icône fournie avec le plugin. L'icône recherchée est supposée s'appeler favicon.jpg, favicon.png, favicon.ico ou favicon.gif. Ce qui gère à peu près tous les cas possibles. Y compris mon cas : plusieurs sites tournant avec la même instance de Wordpress.
  • le fichier XML Open search est généré à partir du template présent dans templates/open-search-xml.php. Au cas où vous voudriez le changer (c'est peu probable mais bon, à tout hasard...), ce fichier peut être surchargé en ajoutant dans votre thème un fichier open-search-xml.php. Donc pas besoin de modifier directement le plugin, ce qui facilite les mises à jour.
  • le plugin est localisé (à l'heure actuelle il n'y a qu'une chaine localisée mais bon). Cf le dossier languages du plugin.

Voilà voilà, l'essentiel est dit, manque plus que le lien pour le téléchargement : Plugin Open search 1.0.