J'ai eu autrefois l'occasion de travailler avec des macros sous PSPAD, un éditeur (windows). Les macros consistaient à enregistrer des séquences de texte et de leur associer une touche de raccourci.
En réalité, les combinaisons étaient limitées par les 2 touches de raccourcis affectées (F5 et shift+F5 de mémoire). Mais c'était toujours ça.
Avec Geany, les macros s'appellent commandes personnalisées. Le progrès, c'est que si les touches de raccourcis sont limitées à 3, le nombre de commandes semble lui illimité.

Créer une commande personnalisée :

Menu>Édition>Format>Envoyer la sélection vers>Définir les commandes personnalisées

En l'occurence, la commande magique à insérer :

sed 's/\(.*\)/define("\U\1","\E\1");/'
  • Le \(.*\), c'est pour dire que toute la sélection est concernée,
  • Le \U met la sélection (\1) en majuscule, le \E annule le \U (suis-je clair ?).


Vérification :

Je tape 'NamE' dans Geany,
Je sélectionne,
Je tape le raccourci <ctrl>1, et ...
Ça marche pas! Merdre !

Pour la petite histoire, je suis allé dans les raccourcis (Édition>Préférences>Raccourcis), et j'ai remplacer le raccourci <Control>1 par <Shift><Control>1 et là ça marche.

define("NAME","NamE");

Stupendo !

Pour tester les commandes, rien de tel qu'un bon vieux terminal, juste envoyer la sélection à sed par 'echo "<selection>" |' :

echo "NamE" | sed 's/\(.*\)/define("\U\1","\E\1");/'



Liens :