[<] Sujet : [AS] Piloter un script via url
De : Dominique Isperian <anonyme@...>
Date : 2008-05-20 14:10:22
Sujet : Re: [AS] Piloter un script via url
De : Patrick Proniewski <anonyme@...>
Date : 2008-05-20 14:15:51
Sujet : Re: [AS] Piloter un script via url
De : Dominique Isperian <anonyme@...>
Date : 2008-05-20 14:23:51
Sujet : Re: [AS] Piloter un script via url
De : Daniel Varlet <anonyme@...>
Date : 2008-05-22 10:26:18
Sujet : Re: [AS] Piloter un script via url
De : Patrick Proniewski <anonyme@...>
Date : 2008-05-22 10:33:35
Sujet : Re: [AS] Piloter un script via url
De : Dominique Isperian <anonyme@...>
Date : 2008-05-22 19:39:17
Hello !
Un grand merci pour cette réponse : je m'y attelle sur le champ !
Amicalement.
--
Dominique
Le 22 mai 08 à 10:26, Daniel Varlet a écrit :
>
> Le 20 mai 08 à 14:10, Dominique Isperian a écrit :
>
>> Bonjour à tous !
>>
>> Question : est-il possible de passer un paramètre à un script via une
>> url ?
>>
>> iCal permet d'inscrire une url qui, entre autres, ouvre un fichier,
>> voire une application (file://localhost/Users/...)
>> Puis-je passer un ou des paramètres au script que je déclencherais
>> par
>> ce moyen ?
>>
>> Voilà voilà ... et merci pour vos réponses !
>> --
>> Dominique
>
>
> C'est tout à fait faisable de lancer un script avec en plus des
> paramètres par URL. D'ailleurs on peut lancer n'importe quoi par URL +
> arguments sous Mac OS X.
> Dans iCal je ne vois pas trop l'intérêt, j'ai dû louper quelque chose,
> mais peu importe.
> Ceci est faisable avec un type (protocole) d'URL quelconque.
> (J’éviterais de surcharger (d'utiliser) les plus connus http, file,
> mailto, etc..., mais je n'ai pas essayé). C''est valable pour tout
> type d'application dans Mac OS X, pas seulement les applets.
>
> Pour les applets, ça tombe bien, c'est décrit en détail à :
>
> <http://www.apple.com/applescript/linktrigger/index.html>
>
> Avec en prime une implémentation de serveur de scripts (optionnelle).
>
> En résumé:
>
> 1) Modifier le fichier Info.plist de l'applet, pour signaler au
> système (LaunchServices je présume) le(s) type(s) d'URL géré/
> accepté(s) par l'application.
>
> 2) Dans le code utiliser le handler (gestionnaire) AS qui va récupérer
> l'URL:
>
> on open location theURL
> -- parsage de l'URL et lancement des actions.
> end open location
>
> 3) C'est tout.
>
> Je viens d'essayer ceci (exemple de protocole fabriqué pour
> l'occasion)
> <x-toto://net.totor.testURL?action=1&action=2>
> Testé avec open (Terminal), iCal, et ici dans Mail: ça marche sans
> problème. J'ai bien un dialogue avec 1 et 2.
>
> Extrait du fichier Info.plist:
>
> ...
> <key>CFBundleIdentifier</key>
> <string>net.totor.testURL</string>
> ...
> <key>CFBundleURLTypes</key>
> <array>
> <dict>
> <key>CFBundleURLName</key>
> <string>x-toto URL</string>
> <key>CFBundleURLSchemes</key>
> <array>
> <string>x-toto</string>
> </array>
> </dict>
> </array>
> ...
>
> Le code AS:
>
> [SCRIPT]
> on open location u
> set zs to last item of tinkerText(u, "?")
> set zs to tinkerText(zs, "&")
> repeat with z in zs
> set {k, v} to tinkerText(z, "=")
> if k = "action" then
> doIt(v)
> end if
> end repeat
> end open location
>
> on doIt(z)
> activate
> display dialog z
> end doIt
>
> --mark (-
> --mark Text tools<I<U!+
> --=============================== Text tools
> ================================--
> (* v1.2.2 *)
> on tinkerText(z, d) (* bascule text <-> list *)
> try
> set _d to AppleScript's text item delimiters
> set AppleScript's text item delimiters to d
> considering case
> if class of z is list then
> set r to z as text
> else
> set r to text items of z
> end if
> end considering
> set AppleScript's text item delimiters to _d
> return r
> on error ert number ern from obj
> set AppleScript's text item delimiters to _d
> -- stampError(ert, ern, obj, "tinkerText()")
> error ert number ern
> end try
> end tinkerText
> --=============================== /Text tools
> ===============================--
> [/SCRIPT]
>
>
> Un petit truc: le Finder et Cie sont des feignasses, et parfois il
> faut bouger l'applet d'un dossier à un autre (par exemple) pour qu'ils
> prennent en considération les changements d’Info.plist.
>
> Ton autre question: Pour récupérer une sélection (n'importe laquelle)
> dans iCal, je ne vois pas non plus. Même par UI scripting, niet...
>
> A+
>
> --
> Daniel
>
> _______________________________________________
> Applescript_fr mailing list
> anonyme@...
> http://listes.patpro.net/mailman/listinfo/applescript_fr
_______________________________________________
Applescript_fr mailing list
anonyme@...
http://listes.patpro.net/mailman/listinfo/applescript_fr
Sujet : Re: [AS] Piloter un script via url
De : Dominique Isperian <anonyme@...>
Date : 2008-05-23 00:38:48
Sujet : Re: [AS] Piloter un script via url
De : Daniel Varlet <anonyme@...>
Date : 2008-05-23 08:15:23
Sujet : Re: [AS] Piloter un script via url
De : Dominique Isperian <anonyme@...>
Date : 2008-05-23 08:28:58
Sujet : Re: [AS] Piloter un script via url
De : MADERT Pascal <anonyme@...>
Date : 2008-05-23 08:29:41
Sujet : Re: [AS] Piloter un script via url
De : Dominique Isperian <anonyme@...>
Date : 2008-05-23 08:55:37
Sujet : Re: [AS] Piloter un script via url
De : MADERT Pascal <anonyme@...>
Date : 2008-05-23 12:23:01