Bloc-note d'un développeur web
Dans : Outils, trucs et astuces
29 juil 2010Parce que j’en avais ma claque de chercher le texte des licences à ajouter en en-tête de mes sources1, voici un bundle TextMate pour palier à cette répétitive perte de temps.

cd ~/Library/Application\ Support/TextMate/Bundles
git clone git://github.com/piouPiouM/license-helper.tmbundle.git "License Helper.tmbundle"
osascript -e 'tell app "TextMate" to reload bundles'
cd ~/Library/Application\ Support/TextMate/Bundles
wget http://github.com/piouPiouM/license-helper.tmbundle/tarball/master
tar zxf license-helper.tmbundle.tar.gz
rm license-helper.tmbundle.tar.gz
mv license-helper.tmbundle "License Helper.tmbundle"
osascript -e 'tell app "TextMate" to reload bundles'
Après récupération, décompressez l’archive, renommez le dossier en License Helper.tmbundle. Acceptez le changement d’extension. Il ne reste plus qu’à installer le bundle d’un double-clic sur le fichier.
Utilisez le lanceur license⇥ pour sélectionner une licence via la boîte de dialogue qui s’affiche.

Choix d’une licence – License Helper Textmate Bundle
Un bloc de licence est inséré en tant que Snippet. Utilisez la touche de tabulation pour vous déplacez sur les différents placeholders.
Déclarez dans votre projet les variables d’environnement qui suivent pour auto-compléter les blocs de licence à insérer :
TM_PROJECT_YEAR. L’année de production. Par défaut : l’année courante.TM_PROJECT_COPYRIGHT_HOLDERS ou TM_AUTHOR ou TM_ORGANIZATION_NAME. Les détenteurs du copyright.TM_ORGANIZATION_EMAIL. Adresse mail de l’organisation détentrice du copyright.TM_PROJECT_DESCRIPTION. Description brève du projet.Notez que les variables sont utilisées en fonction de la licence choisie et qu’il n’est pas nécessaire de toutes les renseigner si vous n’en avez pas l’usage.
Vous pouvez fixer la licence de votre projet en ajoutant la variable d’environnement de projet TM_PROJECT_LICENSE. Ainsi, vous n’aurez plus à la sélectionner.
La commande accessible depuis le menu License Helper → Edit licenses order lance l’édition du fichier de configuration du bundle.
Modifiez l’ordre des licences déclarées selon vos préférences d’apparition dans le sélecteur de licences.
Il est possible qu’avec certains langages, le rendu des blocs de licences ne corresponde pas à vos attentes. Si tel est le cas, définissez votre propre format :
source.java pour les sources java.TM_LICENSE_HELPER_HEADER (début du bloc de commentaire) et TM_LICENSE_HELPER_FOOTER (fin du bloc de commentaire), comme suit :{ shellVariables = (
{ name = 'TM_LICENSE_HELPER_HEADER';
value = '/*';
},
{ name = 'TM_LICENSE_HELPER_FOOTER';
value = '*/';
},
);
}
Note : chacune des lignes de la licence peut être préfixée de la variable TM_LICENSE_HELPER_LINE.
La liste des licences prises en charge par le plugin n’est pas figée. N’hésitez pas à me soumettre celles qui vous font défaut.
Distribué sous license MIT, le code source du bundle est accessible sur GitHub.
Une suggestion, une amélioration, une critique ou un bug à me soumettre ? Ça se passe du côté du bugtracker associé.
exception faite des projets pour lesquels j’utilise un builder qui l’ajoute comme un grand à ma place. ↩