Cipher Bliss

mercredi 11 novembre 2015

les resources du blog sur github

en ce moment je prépare une petite série de billets sur la gestion de projet. Je rassemble un bon paquet d'avis et de méthodes et je pourrai commencer.

En attendant je viens de créer un dépot github pour que vous puissiez trouver tous les bouts de codes réutilisables facilement, vous pouvez les utiliser comme vous voulez et surtout les améliorer ;)

https://github.com/tykayn/blog.artlemoine.com

n'hésitez pas à ouvrir des issues sur github ou à en discuter ici dans les commentaires.

Oh d'ailleurs je serai au meetup github de la société géniale demain Jeudi 12 Novembre, passez donc me faire un coucou.

mon github: https://github.com/tykayn

mercredi 17 juin 2015

convertir un projet javascript en coffeescript

le jS ça fait aussi le café. Si vous voulez reprendre d'anciens projets en javascript pour envoyer promener toutes ces accolades et autres points virgules, réjouissez vous, car voici de quoi convertir un dossier et ses sous dossiers en fichiers coffeescript.

il faut donc copier votre dossier de scripts js dans un dossier nommé coffee, obtenir la liste des fichiers à convertir et exécuter la conversion sur chacun d'eux.

basé sur le convertisseur js2coffee (voir ce projet sur github), voici mon script bash adapté de ce merveilleux script bash trouvé sur stack overflow: pour plus de clarté je lui ai rajouté un côté explicite des actions menées et quelques couleurs.

#!/bin/bash
#text formatting
neutre='\e[0;m'
bleuclair='\e[1;34m'
bold=$(tput bold)
normal=$(tput sgr0)
# get the name of the js scripts folder
echo -e "${bleuclair} ${bold} conversion de projet ${normal} vers coffeescript "
read -p "nommez le dossier où se trouvent vos scripts .js [js]: " -e -i "js" name
# if the coffee folder doesnt exist, create it
if [ ! -e coffee ]; then
echo "pas de dossier coffee, on le crée"
mkdir coffee
fi
echo -e " copie du dossier ${bleuclair}${bold}${name}${normal} vers le dossier ${bold}coffee${normal} ${neutre}"
cp -R ${name}/* coffee
echo "lire les fichiers du dossier coffee"
# list files and exclude node modules
COUNTER=0
for FILE in `find coffee -name "*.js" -type f -o -path './node_modules' -prune -o -path './components' -prune`
do
if [ -e $FILE ] ; then
COFFEE=${FILE//\.js/\.coffee}
echo -e "    converting ${FILE} to ${bleuclair}${COFFEE}${neutre}${normal}"
js2coffee "$FILE" > "$COFFEE"
rm $FILE
COUNTER=$((COUNTER+1))
else
echo "File: $1 does not exist!"
fi
done
echo -e "${bleuclair}${bold} $COUNTER ${normal}${neutre} fichiers convertis"
cd ../

vous pouvez enregistrer ce script bash sous le nom de alljs2coffee.sh le copier dans votre répertoire d'exécutables,

cp alljs2coffee.sh /usr/local/bin

lui donner les droits pour être exécuté par tout le monde 

chmod +x alljs2coffee.sh

et voilà vous pourrez l'exécuter dans n'importe quel dossier contenant un de vos projets avec la commande alljs2coffee

go go gadgetto modernisation du JS!

voir l'issue sur github. comme toujours, si vous avez des amélioratoins à proposez faites donc!

jeudi 4 juin 2015

se créer un historique complet de git log

 mise à jour: j'ai fait un projet sur github nommé git all

Vous avez un projet et vous aimeriez savoir comment il a évolué à travers les commits que vous avez écrits avec assiduité durant de nombreux mois, voire de nombreuses années. Vous pourriez le compiler sous forme de log complet dans un fichier texte.

Par example pour voir sur quoi vous galérez le plus et comment améliorer vos projets, ou pourquoi pas en avoir ensuite une représentation graphique, l'enregistrer dans votre appli de calendrier favorite, ou bien pour remplir une fiche de suivi dans un logiciel spécialisé comme Works, Redmine, Pivotal tracker, ou ProjeQtOr.

Il suffit de lire un peu la doc de la commande git log et particulièrement la partie sur les pretty formats pour se bidouiller un log clair et concis. avec la date, l'auteur, le sha1, et le message du commit à chaque ligne.

git log --pretty=format:"%cd , %cn, %h, %s" --full-history > git-history.txt

Vous pouvez aussi filtrer par auteur du commit en rajoutant l'option

--author="tykayn"

et donc:

git log --author="tykayn" --pretty=format:"%cd , %cn, %h, %s" --full-history > git-history.txt

ce qui donnerait plein de lignes comme ceci: 

Sat May 30 11:30:11 2015 +0200 , tykayn-ubuntu, 463e52c, accessoires produits

Sat May 30 11:20:45 2015 +0200 , tykayn-ubuntu, 9efab6c, footer grille 

Sat May 30 10:29:26 2015 +0200 , tykayn-ubuntu, 96f25f6, insertion de grille bootstrap dans le tpl

et si vous avez comme moi la flemme de retaper tout, créez vous un alias dans votre fichier de .bash_aliases

gedit ~/.bash_aliases

rajoutez cette ligne pour créer la commande "gitall":

alias gitall='git log --pretty=format:"%cd , %cn, %h, %s" --full-history > git-history.txt';

sauvegardez, fermez le fichier, rechargez le fichier d'alias

gedit ~/.bash_aliases

et magie, vous pourrez vous servir de la commande gitall pour créer un fichier git-history.txt attention tout de même, si un fichier git-history.txt existait avant, il sera remplacé.

vous pourrez ensuite lui appliquer des traitements plus complexes pour conquérir le monde, changer l'affichage, ranger par journée, ou tout du moins comprendre comment vous améliorer. Enjoy!

Voir mon projet sur github nommé git all contribuez zy!