Dans quelques cas exceptionnels, les «doubles angles» ou «doubles chevrons» peuvent être plus courts que le nom anglais d'une commande, d'un paramètre ou d'une constante.
La forme encodée en chevrons réduirait l'AppleScript pour supprimer le presse-papiers de 20 à 16 caractères:
set the clipboard to -- 20
«event JonspClp» -- 16
Il laisserait tomber 2 caractères lors de la récupération de texte dans une boîte de dialogue (comme cela se produit dans le métronome et Pi Day ):
(display dialog""default answer"")'s text returned -- 46
(display dialog""default answer"")'s«class ttxt» -- 44
(Vous préférerez peut-être éviter la boîte de dialogue et utiliser les arguments de ligne de commande d' osascript (1) , si vous avez au moins Mac OS X 10.4.)
Avec un clavier américain, «est option- \ et» est option-shift- \. Une commande «event abcdefgh»
comporte 16 caractères. Un paramètre ou une constante «class abcd»
a 12 caractères.
La forme codée en chevrons est presque toujours trop longue pour le golf. Voici un exemple sans parenthèses à double angle:
set x to open for access"output"write permission 1
write"One line of text
"to x
close access x
Et la même chose avec eux:
set x to«event rdwropen»"output"given«class perm»:1
«event rdwrwrit»"One line of text
"given«class refn»:x
«event rdwrclos»x
Changer _open for access
(16) en «event rdwropen»
(16) était neutre. Changer write permission_
(17) en given«class perm»:
(18) coûte 1 caractère. Les autres supports à double angle coûtent plus cher.
Pour utiliser des parenthèses à double angle, vous devez connaître le code magique à 4 ou 8 lettres. J'ai trouvé quelques codes en enregistrant un fichier de script depuis Script Editor, puis en l'ouvrant dans un éditeur hexadécimal. J'ai couru emacs
dans un terminal et utilisé M-x hexl-find-file
. J'ai trouvé et édité certains codes, comme JonspClp
into JanspClp
et ttxt
into atxt
. J'ai ensuite enregistré le fichier et l'ai rouvert dans Script Editor. «event JanspClp»
et «class atxt»
est apparu dans le script.
Un document intitulé Terminologie AppleScript et référence des codes d'événements Apple répertorie certains codes. J'en ai trouvé une copie sur https://applescriptlibrary.wordpress.com/
L'éditeur de script traduira les crochets doubles en anglais avant d'enregistrer votre script. Pour la déférence chevron, vous devez écrire votre script dans un autre éditeur de texte, comme TextEdit. Enregistrez le script en tant que fichier texte brut dans l'encodage Mac OS Roman (ou MacRoman). Mac OS X préfère que vous nommiez le fichier avec un suffixe .applescript.
Si vous comptez des octets, MacRoman a 1 octet par caractère, donc chaque «ou» compte pour 1 octet.