Emmet (anciennement Zen Coding) est un bon plug-in cependant certains comportements de base sont lourds !

Première chose pas pratique, le raccourci pour lancer l’auto-complétion sur raccourci est de base ‘Ctrl+Shift+Enter’, ce qui ne s’avère pas fonctionner et en plus ne reprend pas l’ancien raccourci, le plus simple ici est de modifier le raccourci en ouvrant Notepad++ puis en allant dans le menu ‘Paramétrage’/’Raccourcis clavier…’/onglet ‘Plugin commands’ et choisir ‘Expand abbreviation’ pour remettre le ‘Ctrl+E’ qui était le raccourci sous Zen Coding.

Autre chose lourde, l’auto-complétion sur les balises auto-fermantes HTML5 est fait sur une base de syntaxe html hors pour écrire un document qui fonctionnera bien qu’il soit desservi en ‘text/html’ ou ‘application/xhtml+xml’ il faut que la syntaxe respecté soit du xml (ce qui au demeurant pour une syntaxe html fonctionnera tout autant), il est mieux d’avoir par exemple une balise sous la forme ‘<br />’ que sous la forme ‘<br>’ (qui sur une syntaxe xml lèvera une erreur).
Du coup pour modifier ce comportement, il faut modifier le fichier de configuration de Emmet, pour cela, il vous faut éditer le fichier ‘snippers.json’ (présent dans ‘plugins/EnnetNPP/emmet’ du répertoire d’installation de Notepad++ ou ‘AppData/roaming/Notepad++/plugins/Emmet/’ de votre utilisateur courant selon la méthode d’installation du plugin).
Une fois dans le fichier, recherchez la ligne avec

"html": {

et dedans cherchez la clé ‘profile’ qui de base vaut ‘html’, il faut modifier la valeur pour avoir ‘xml’ à la place et sauvegarder.

Dernier point lourd, ne pas avoir de syntaxe pour les fichiers PHP et Twig, pour cela il faut encore éditeur le fichier ‘snippers.json’ et en bas ajouter les lignes suivantes ;

,
"php": {
"extends": "html"
},
"twig": {
"extends": "php"
}

enregistrez, redémarrer Notepad++ et voilà vous êtes bon pour bosser tranquille 🙂


Wiki : Linux : commande find

Le dans

Nouveau : Wiki

Le dans

Après pas mal de temps à me poser la question sur l’utilité de la chose, c’est WordPress et son éditeur WYSIWYG quelque peu bogué dés qu’on met du code qui va me faire sauter le pas.

Désormais tous les articles contenants du code (qui à priori par finalité doivent rester en plus consultables tous le temps) seront placés sur mon wiki présent à cette adresse : http://wiki.yves-astier.fr .

Par ailleurs ça sera pour moi l’occasion de faire ce que j’ai mis trop de temps de côté, à savoir partager des astuces, codes, connaissances, bref me faire plaisir pour partager ma passion et que ça serve à ceux qui veulent se lancer dans l’informatique.

Le wiki est, tous comme ce blog, modéré afin de garder l’essentiel mais néanmoins les contributions sont les bienvenues, la seul demande est d’avoir un compté créé sur le Wiki et me faire un petit mail m’expliquant ce que vous souhaitez faire sur le Wiki.

Si vous voyez des erreurs/bourdes/bêtises, avez des suggestions de forme/fond ou avez des idées de sujet, n’hésitez pas à me faire un mail, même sans avoir de compte, ça vous permettra de participer au partage des connaissances 🙂

La migration du code présent sur le blog va demander du temps (notamment le gros morceau lié à Less et les logiciels libres qui feront désormais l’objet d’une catégorie spécifique), par ailleurs la rédaction de nouveaux sujets également, le wiki va donc s’enrichir petit à petit et en venant visiter de temps à autre, vous devriez y trouver de nouvelles choses.

Le blog quant à lui gardera toujours son rôle d’annonce, notamment pour les articles mis en place sur le Wiki.



J’ai commencé depuis quelques semaine à faire du Python et je dois bien avouer que venant du monde PHP (j’en fais depuis php3 donc je peux d’autant mieux en parler), ça m’a fait une claque et une bonne. Je ne dirai pas que j’en suis tombé amoureux (il en faudrait peu pourtant) mais il faut bien avouer que ce langage est simple mais puissant, élégant, pas de prise de tête sur bien des points, lisible et surtout avec une philosophie dans laquelle je me reconnais. Bref vous l’aurez compris je l’ai adopté, surtout que la où PHP ne fera pas certaines choses (et en tous cas pas simplement/nativement et sans un certain arrachage de cheveux), Python le fait, vite et simplement et surtout avec une communauté et des modules à faire rougir PHP.

A travers ce nouveau type d’article, je reprendrai certains liens, codes, tips, cours tous ce qui pourrait être intéressant par rapport à Python et/ou qui me sert de rappel au quotidien.

Bonne lecture 🙂



Grooveshark.com : RIP

Le dans

Voilà encore une bataille de gagné pour ces …. de majors, dire que je vous vomi dessus serai encore trop sympathique, vous ne méritez même pas qu’on vous c… à la gueule. C’est dommage de déplorer la mort d’un aussi bon site, que ce soit par le contenu ou par ce qui avait été mis en oeuvre techniquement, interface bien foutu, bref tous ce qu’on pouvait attendre d’un bon site.

Il est dommage que cela ce soit fait par contre autant à l’arrache sans possibilité de pouvoir « au moins » exporter ses playlists. J’espère qu’ils trouveront un moyen d’y remédier et qu’ils mettront le code source du site en open (oui j’entends déjà des « faut pas rêver »).

En tous cas je tiens à faciliter ceux qui ont travaillé sur ce site pour le travail fourni et les nombreuses de musique que cela a pu m’offrir ainsi que les nombreuses découvertes qui sans leur système aurait été plus difficile à trouver.

Merci, merci grooveshark !

Petite astuce de dernière minute, il vous est possible de sauvegarder votre playlist si vous n’avez pas vidé votre cache de navigateur 🙂 La procédure à suivre :

1 : Aller sur http://grooveshark.com

2 : ouvrez votre outil développeur (F12 sous Firefox ou Chrome)

3 : cliquez sur l’onglet « Console »

4 : entrez le code suivant et exécutez le

var libraryKey = Object.keys(localStorage).filter(function(key) { return key.match(/library\d/) });
var lib = localStorage[libraryKey];
lib;

5 : si vous avez encore les informations en cache, vous aurez alors une liste au format JSON qui correspondra à votre playlist, sinon vous aurez « undefined » et dans ce cas là, pas de chance 🙁

6 : copiez la valeur de sortie (le JSON) et allez le convertir en CSV par exemple via ce site : https://json-csv.com

Voilà, vous avez votre playlist 🙂


Une petite astuce d’écriture :

Je pars sur un usage de macro dans mon cas ce qui rend l’exemple plus parlant au niveau usage.

{% macro test_ecriture(formView) %}
{% spaceless%}
    {# ... autre code avant ... #}
    {% set formViewName = formView.vars.name %}
    {% set formView = { (formViewName) : formView.vars.prototype} %}
    {# ... autre code après ... #}
{% endspaceless %}
{% endmacro %}

On retrouve ici une structure classique de macro dans lequel je récupère un objet de type formView pour lequel je souhaite créer un nouvel objet pour lequel je veux en clé le nom courant du champ traité et en valeur le prototype. Ce qui est intéressant de regarder ce situe au niveau de l’affectation, si les parenthèses sont bien présentes autour de la clé « formViewName » alors la variable est correctement interprété en chaîne de caractère. Sans les parenthèses, la valeur de clé aurait été la chaîne de caractère « formViewName » et non la valeur.



Je met ça là dés fois que ça puisse aider, si vous installer la version 2.1 de Ruby sous Windows, vous aurez deux soucis, le premier dû à un soucis d’encodage et ensuite dû à un soucis de certificat SSL. La solution ici n’est peut-être pas la plus « propre » mais a le mérite de fonctionner en 30 secondes.

Pour modifier l’encodage, ouvrez le fichier « [repertoire_installation_ruby]/lib/ruby/2.1.0/win32/registry.rb » et cherchez la ligne suivante LOCALE = Encoding.find(Encoding.locale_charmap), commentez la en plaçant un dièse (#) devant puis ajouté sur une nouvelle ligne en dessous la ligne suivante LOCALE = Encoding::UTF_8.

Bien maintenant vous devriez pouvoir lancer une commande, dans mon cas je souhaite installer compass, je fais donc gem install compass, sauf que là vous aurez une erreur de certificat, pour y remédier, il faudra ajouter une source à ruby afin qu’il sache où aller chercher sans passer par du SSL (ce n’est pas conseillé dans le cas d’une source peu sûr je le rappel !). Pour cela rien de plus simple, tapez la commande suivante gem source -a http://rubygems.org/ qui vous demandera alors de confirmer que vous voulez bien ajouter cette source. Une fois cela fait, vous pourrez faire l’installation de ce que vous souhaitez sans soucis.

Pour ceux souhaitant absolument du SSL, vous pouvez suivre cette procédure en anglais.