Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

À propos d'AppleScript ;-°((

42 réponses
Avatar
a.scnr
Bonjour

À force d'accumuler des actions répétitives, je me réveille, nom d'une
pipe! Et AppleScript alors ?

L'ayant oublié, la galère de reprise en main me bloque sur de vieux
scripts oubliés.

J'ai d'abord cru qu'AppleScript ne fonctionne plus sous Mavericks ??

Mais si, voyons, pour des actions au niveau du Finder, pas de soucis.

Mais "dans" une Application ouverte ????

- soit une Application ouverte
- j'ouvre l'éditeur de script.
- clic sur bouton d'enregistrement..
- clic sur menu préférences dans l'application ...
- rien
-l'éditeur de script reste amnésique et n'enregistre rien.

Où est l'erreur ????

Depuis, j'ai plongé tout habillé dans Automator, accroché aux multiples
bouées de tutoriels ..
Noyade ;-(

Une idée ? Un indice pour commencer ?

Merci d'avance aux pros du script, s'ils me lisent ;)-
Bonne journée.

p.s: But du "jeu": dans les Préférences du navigateur, pointer
l'onglet "Vie privée" et vider les cookies !!
--
RyanScan

10 réponses

1 2 3 4 5
Avatar
Mac Larinett
Le 10/07/2015 09:38, RyanScan a écrit :
Mais "dans" une Application ouverte ?



Dans l'éditeur de scripts il y a un menu Fichier/Ouvrir un
dictionnaire... qui permet de savoir ce qu'une application est capable
de comprendre
Avatar
a.scnr
Mac Larinett wrote:

Dans l'éditeur de scripts il y a un menu Fichier/Ouvrir un
dictionnaire... qui permet de savoir ce qu'une application est capable
de comprendre



Bonjour,

Ce dictionnaire ne m'avance guère et me replonde dans .. l'anglais ;-)

J'ai tout de même réveillé ce script ;-)
- lancer l'application à partir du finder. OK
- Mais cela ne va pas plus loin: le script ne suit pas lorsque je pointe
sur le sous-menu Préférences de l'appli...

Est-ce normal ?

p.s: peut-être qu'Automator serait plus indiqué: il me suffirait d'un
tout petit mini-exemple pour saisir sa philosophie ?

--
RyanScan
Avatar
josephb
RyanScan wrote:

p.s: But du "jeu": dans les Préférences du navigateur, pointer
l'onglet "Vie privée" et vider les cookies !!



Piloter Safari ou FFox avec AppleScript est rarement une sinécure.
Certaines actions sont simplement non implémentées dans le dictionnaire
de l'application, il faut alors passer par une simulation des clicks de
souris par l'utllisateur sur les menus, etc.
Perso, j'y ai renoncé.

Ce que j'ai fait pour la demande que tu poses est tout simplement
d'attribuer aux navigateurs un raccourci clavier qui actionne le menu
idoine.
ll faut les créer depuis l'item "Raccourcis de l'Application", dans
l'onglet Raccourcis clavier des prefs Système.
cliquer sur le bouton + pour choisir l'app cible et surtout recopier
lettre pour lettre l'intitulé du menu à activer.
Attention aux "…", si option-point (pts de suspension) ne marche pas, il
faudra faire 3 points à la place. Ça dépend des applications.


Pour Safari, chez moi, Cmd-Ctrl-R (R comme réinitialiser)
m'ouvre la fenêtre "Réinitialiser Safari…" du menu "Safari".
Les cases sont précochées, juste à cliquer sur le bon bouton.

Pour FF, c'est le menu "Effacer l'historique récent…" qui est censé
afficher la même fenêtre de nettoyage (avec là aussi le raccourci
clavier programmé Cmd-Ctrl-R) mais si on a réglé FF pour ne pas
enregistrer l'historique de navigation, le menu reste inaccessible et
donc son raccourci clavier.
De plus, lors de la mise-à jour de FF il semble que le raccourci clavier
se perde ("FireFox" devient "updated application" !)

une image pour aider
<http://www.cjoint.com/c/EGkiVSMjhCc>

Quant à Automator, je n'arrive pas à créer avec un truc qui marche comme
je le voudrais.

HTH
Cordialement,
--
J. B.
Avatar
michel.vauquois
RyanScan wrote:

Est-ce normal ?



Pareil ici... donc ça doit être normal !

peut-être qu'Automator serait plus indiqué: il me suffirait d'un
tout petit mini-exemple pour saisir sa philosophie ?



Dans les podcasts que je t'avais indiqués (Débuter sur Mac: Tutoriels
vidéos (AppleTV)), il y en a deux consacrés à Automator : podcasts 263
et 264.
--
Michel Vauquois
Que Dieu vous garde... Moi j'ai pas le temps (RD)
MàJ 2015 : http://michelvauquois.free-h.fr/
Avatar
a.scnr
Joseph B wrote:

une image pour aider
<http://www.cjoint.com/c/EGkiVSMjhCc>

Quant à Automator, je n'arrive pas à créer avec un truc qui marche comme
je le voudrais.



Ah! Merci pour cet encouragement. Je commence à y voir plus clair.
Bonne journée

--
RyanScan
Avatar
g4fleurot
RyanScan wrote:

Mais "dans" une Application ouverte ????



Je propose un script qui ne sert absolument à rien pour le fun :
L'enregistrer sous corvox.scpt et le placer dans le dossier :
'/Users/home/Library/Scripts/Applications/TextEdit/corvoX.scpt'
Si le dossier TextEdit n'existe pas, le créer.

Il faut que le menu script dans la barre de menus soit affiché.
S'il n'y est pas, c'est dans les préférences Éditeur de scripts >
Général et décocher Afficher les scripts de l'ordinateur et et cocher le
bouton radio Afficher les scripts de l'application en bas

Ouvrir TextEdit
cliquer sur le menu AppleScript
En bas de la liste, il y a Scripts TextEdit et dessous corvox.
Descendre la souris jusqu'à corvox et apprécier.

coller le texte entre les tirets dans une fenêtre Éditeur de scripts et
enregitrer au format script

------------
property verbs_list : {{"accéder", "2"}, {"accélérer", "2"}, {"ajuster",
"2"}, {"améliorer", "2"}, {"amplifier", "2"}, {"analyser", "2"},
{"annuler", "2"}, {"bouffoner", "2"}, {"bouillir", "2"}, {"calcifrer",
"2"}, {"compresser", "2"}, {"créer", "2"}, {"décélérer", "2"},
{"décoder", "2"}, {"décrypter", "2"}, {"déstabiliser", "2"},
{"détecter", "2"}, {"diminuer", "2"}, {"dupliquer", "2"}, {"encoder",
"2"}, {"encrypter", "2"}, {"fracasser", "2"}, {"induire", "2"},
{"inhiber", "2"}, {"inverser", "2"}, {"ioniser", "2"}, {"moduler", "2"},
{"neutraliser", "2"}, {"optimiser", "2"}, {"phaser", "2"}, {"polariser",
"2"}, {"pournifier", "2"}, {"réarranger", "2"}, {"recombiner", "2"},
{"recréer", "2"}, {"rediriger", "2"}, {"relayer", "2"}, {"scanner",
"2"}, {"signaler", "2"}, {"stabiliser", "2"}, {"surcharger", "2"},
{"transformer", "2"}, {"trouer", "2"}, {"zombifier", "2"}}

property adjective_list : {{"à court rayon d'action", "à court rayon
d'action", "0"}, {"à grand rayon d'action", "à grand rayon d'action",
"0"}, {"à haute vitesse", "à haute vitesse", "0"}, {"adaptatif",
"adaptative", "2"}, {"alternatif", "alternative", "2"}, {"alvéolé",
"alvéolée", "2"}, {"artificiel", "artificielle", "2"}, {"atomique",
"atomique", "2"}, {"baleiné", "baleinée", "2"}, {"ballistique",
"ballistique", "2"}, {"basse vitesse", "basse vitesse", "2"},
{"binaire", "binaire", "2"}, {"bouffoné", "bouffonée", "2"},
{"calorifique", "calorifique", "2"}, {"carpien", "carpienne", "2"},
{"centrique", "centrique", "2"}, {"compressé", "compressée", "2"},
{"connotatif", "connotative", "2"}, {"corporel", "corporelle", "2"},
{"cythérien", "cythérienne", "2"}, {"dimensionnel", "dimensionnelle",
"2"}, {"directionnel", "directionnelle", "2"}, {"dirigé", "dirigée",
"2"}, {"dynamique", "dynamique", "2"}, {"encrypté", "encryptée", "2"},
{"génique", "génique", "2"}, {"gildoique", "gildoique", "2"},
{"gravifique", "gravifique", "2"}, {"gravitationnel",
"gravitationnelle", "2"}, {"holographique", "holographique", "2"},
{"instable", "instable", "2"}, {"interstellaire", "interstellaire",
"2"}, {"ionisé", "ionisée", "2"}, {"linéaire", "linéaire", "2"},
{"localisé", "localisée", "2"}, {"magnétique", "magnétique", "2"},
{"mécanique", "mécanique", "2"}, {"microscopique", "microscopique",
"2"}, {"modulaire", "modulaire", "2"}, {"moléculaire", "moléclaire",
"2"}, {"moncturien", "moncturienne", "2"}, {"navigationnel",
"navigationnelle", "2"}, {"oblatif", "oblative", "2"}, {"ossiphazolé",
"ossiphazolée", "2"}, {"parabolique", "parabolique", "2"}, {"parallele",
"parallele", "2"}, {"phasé", "phasée", "2"}, {"phasique", "phasique",
"2"}, {"plutonnant", "plutonnante", "2"}, {"plutonné", "plutonnée",
"2"}, {"pourniflant", "pourniflante", "2"}, {"quantique", "quantique",
"2"}, {"refroidi", "refroidie", "2"}, {"réplicatif", "réplicative",
"2"}, {"résistant", "résistante", "2"}, {"résonnant", "résonnante",
"2"}, {"spatial", "spatiale", "2"}, {"spinoidal", "spinoidale", "2"},
{"statique", "statique", "2"}, {"stellaire", "stellaire", "2"},
{"temporel", "temporelle", "2"}, {"trigloidal", "trigloidale", "2"},
{"valvué", "valvuée", "2"}, {"véloce", "véloce", "2"}, {"vibratile",
"vibratile", "2"}}

property noun_list : {{"aimant", "1", "2"}, {"alignement", "1", "2"},
{"amplificateur", "1", "2"}, {"anihilateur", "1", "2"}, {"capsule", "2",
"2"}, {"assimilateur", "1", "2"}, {"balise", "2", "2"}, {"bouclier",
"1", "2"}, {"bouffon", "1", "2"}, {"buffer", "1", "2"}, {"calcifrage",
"1", "2"}, {"capacité", "2", "2"}, {"capilectomie", "2", "2"},
{"causalité", "2", "2"}, {"chambre", "2", "2"}, {"champ", "1", "2"},
{"champ de force", "1", "2"}, {"coeur", "1", "2"}, {"conduit", "1",
"2"}, {"configuration", "2", "2"}, {"continuum", "1", "2"},
{"convertisseur", "1", "2"}, {"corridor", "1", "2"}, {"crevasse", "2",
"2"}, {"cristal", "1", "2"}, {"cybergement", "1", "2"}, {"déflecteur",
"1", "2"}, {"désintégrateur", "1", "2"}, {"détonateur", "1", "2"},
{"diagnostic", "1", "2"}, {"disrupteur", "1", "2"}, {"distortion", "2",
"2"}, {"écho", "1", "2"}, {"efficience", "2", "2"}, {"émission", "2",
"2"}, {"endiguement", "1", "2"}, {"énergie", "2", "2"}, {"entité", "2",
"2"}, {"filament", "1", "2"}, {"filtre", "1", "2"}, {"flot", "1", "2"},
{"flux", "1", "2"}, {"force", "2", "2"}, {"formation", "2", "2"},
{"fragment", "1", "2"}, {"fragmenticule", "1", "2"}, {"fréquence", "2",
"2"}, {"gain", "1", "2"}, {"générateur", "1", "2"}, {"gicleur", "1",
"2"}, {"glomérule", "2", "2"}, {"goniotron", "1", "2"}, {"graviton",
"1", "2"}, {"grille", "2", "2"}, {"hologramme", "1", "2"}, {"impulsion",
"2", "2"}, {"incursion", "2", "2"}, {"inducteur", "1", "2"}, {"inertie",
"1", "2"}, {"inhibiteur", "1", "2"}, {"laplaxmol", "1", "2"},
{"matiere", "2", "2"}, {"matrice", "2", "2"}, {"mécanisme", "1", "2"},
{"mine", "2", "2"}, {"mitochondrie", "2", "2"}, {"moteur", "1", "2"},
{"moulinotron", "1", "2"}, {"multiplexeur", "1", "2"}, {"nacelle", "2",
"2"}, {"noyau", "1", "2"}, {"nuage", "1", "2"}, {"ordinateur", "1",
"2"}, {"papsouille", "2", "2"}, {"parallax", "1", "2"}, {"particule",
"2", "2"}, {"plasma", "1", "2"}, {"plutonneur", "1", "2"}, {"porteuse",
"2", "2"}, {"poussée", "2", "2"}, {"radiation", "2", "2"}, {"rayon",
"1", "2"}, {"réhausseur", "1", "2"}, {"relai", "1", "2"}, {"rémouleur",
"1", "2"}, {"réplicateur", "1", "2"}, {"réplication", "2", "2"},
{"réseau", "1", "2"}, {"résonnateur", "1", "2"}, {"ressort", "1", "2"},
{"rotation", "2", "2"}, {"schisme", "1", "2"}, {"séquence", "2", "2"},
{"signal", "1", "2"}, {"signature", "2", "2"}, {"singularité", "2",
"2"}, {"sonde", "2", "2"}, {"spouniseur", "1", "2"}, {"survolteur", "1",
"2"}, {"sustentation", "2", "2"}, {"syntagme", "1", "2"}, {"tachyon",
"1", "2"}, {"transistor", "1", "2"}, {"translateur", "1", "2"},
{"transporteur", "1", "2"}, {"trigloide", "1", "2"}, {"trophoblaste",
"1", "2"}, {"tropisme", "1", "2"}, {"tube", "1", "2"}, {"tunnel", "1",
"2"}, {"turbulence", "1", "2"}, {"vagissement", "1", "2"}, {"vague",
"2", "2"}, {"vibration", "2", "2"}, {"vide", "1", "2"}, {"vortex", "1",
"2"}}

property prefix_list : {"aéro", "ana", "anti", "auto", "bi", "bulbo",
"capillo", "crypto", "extra", "hepta", "hétéro", "homo", "méta",
"micro", "morpho", "morvo", "multi", "néo", "non", "nucléo", "octo",
"penta", "poly", "proto", "pseudo", "puslo", "quadri", "rétro", "servo",
"spiro", "sub", "sur", "thermo", "theta", "trans", "tri", "turbo",
"ultra"}

property gabarit_list : {"Si nous pouvons [v] [n] [a], nous devrions
pouvoir [v] [n] [a] et [v] [n] [a] !", "Capitaine, je ne peux pas [v]
[n] parce que [n] [a] est sur le point [d] [n] [a] !", "[v] [n] [a] est
illogique, puisque [n] [a] va [v] [n] [a].", "Il est possible que [n]
[a] puisse [v] [n] [a], mais seulement si nous pouvons [v] [n] [a] et
[v] [n] [a] !", "Pas de panique ! [v] [n] [a] ne nous empêche pas [d]
[n] [a] ni même [d] [n] [a].", "Voici [n] [a] dont il est temps [d] [n]
[a] sans oublier [d] [n] [a].", "Damned, [n] [a] ne peut pas [v] [n] [a]
! Nous allons être obligé [d] [n] [a]...", "Tout va bien a bord. [n] [a]
semble [v] correctement. Mais nous devrions [v] [n] [a] pour plus de
sécurité.", "Alerte ! [n] [a] semble [v] dangereusement ! Il faut [v]
[n] [a] d'urgence !!!", "Veuillez [v] [n] [a] avant [d] sciemment."}


on substitute_Verb(prep)
set the_x to random number from 1 to the count of verbs_list
set theVerb to item 1 of item the_x of verbs_list as string
if item 2 of item the_x of verbs_list is "1" then
set theVerb to substitute_Prefix() & "-" & theVerb
else if item 2 of item the_x of verbs_list is "2" then
if alea() is 1 then set theVerb to substitute_Prefix() &
"-" & theVerb
end if
if prep is 1 then
if check_Voyelle(theVerb) is true then
set theVerb to "d'" & theVerb
else
set theVerb to "de " & theVerb
end if
end if
return theVerb
end substitute_Verb

on substitute_Adj(adjGenre)
set the_x to random number from 1 to the count of adjective_list
if adjGenre = 1 then
set the_adj to item 1 of item the_x of adjective_list as
string
else
set the_adj to item 2 of item the_x of adjective_list as
string
end if
return the_adj
end substitute_Adj

on substitute_noun(genre, withAdj)
set the_x to random number from 1 to the count of noun_list
set the_noun to item 1 of item the_x of noun_list as string
set currGenre to item 2 of item the_x of noun_list as integer
if genre ≠ 0 and genre is not currGenre then
set the_noun to substitute_noun(genre, withAdj)
else
if item 3 of item the_x of noun_list is "1" then
set the_noun to substitute_Prefix() & "-" &
the_noun
else if item 3 of item the_x of noun_list is "2" then
if alea() is 1 then set the_noun to
substitute_Prefix() & "-" & the_noun
end if
if withAdj is 1 then
set the_noun to the_noun & " " &
substitute_Adj(currGenre)
end if
end if
if check_Voyelle(the_noun) is true then
set the_noun to "l'" & the_noun
else if currGenre is 1 then
set the_noun to "le " & the_noun
else
set the_noun to "la " & the_noun
end if
return the_noun
end substitute_noun

on substitute_Prefix()
set the_x to random number from 1 to the count of prefix_list
return item the_x of prefix_list as string
end substitute_Prefix

on get_Gabarit()
set the_x to random number from 1 to the count of gabarit_list
return item the_x of gabarit_list as string
end get_Gabarit

on check_Voyelle(the_word)
if character 1 of the_word is in {"a", "e", "i", "o", "u", "y",
"é", "h"} then
return true
else
return false
end if
end check_Voyelle

on alea()
return random number from 0 to 1
end alea

on noun_with_adj(Phrase, counter)
set cResult to 0
set counter to counter + 4
set numChars to (count characters of Phrase)
if counter < numChars - 2 and text counter thru (counter + 2) of
Phrase is "[a]" then set cResult to 1
return cResult
end noun_with_adj

on corvo()
set startPhrase to get_Gabarit()
set resPhrase to ""

set numChars to (count characters of startPhrase)
set x to 0 as integer
repeat while x < numChars - 2
set x to x + 1
set tempWord to text x thru (x + 2) of startPhrase
if tempWord is "[v]" then --verb
set resPhrase to resPhrase & substitute_Verb(0)
set x to x + 2
else if tempWord is "[n]" then --noun
if noun_with_adj(startPhrase, x) is 1 then
set resPhrase to resPhrase &
substitute_noun(0, 1)
set x to x + 6
else
set resPhrase to resPhrase &
substitute_noun(0, 0)
set x to x + 2
end if
else if tempWord is "[a]" then --adj
set resPhrase to resPhrase & substitute_Adj(0)
set x to x + 2
else if tempWord is "[d]" then --verb with preposition
set resPhrase to resPhrase & substitute_Verb(1)
set x to x + 2
else if tempWord is "[m]" then --masc noun
if noun_with_adj(startPhrase, x) is 1 then
set resPhrase to resPhrase &
substitute_noun(1, 1)
set x to x + 6
else
set resPhrase to resPhrase &
substitute_noun(1, 0)
set x to x + 2
end if
else if tempWord is "[f]" then --femin noun
if noun_with_adj(startPhrase, x) is 1 then
set resPhrase to resPhrase &
substitute_noun(2, 1)
set x to x + 6
else
set resPhrase to resPhrase &
substitute_noun(2, 0)
set x to x + 2
end if
else
set resPhrase to resPhrase & character x of
startPhrase
end if
end repeat
set resPhrase to resPhrase & text (x + 1) thru numChars of
startPhrase
return resPhrase
end corvo

on substitute()
set result to corvo()
return result
end substitute

set the clipboard to corvo()

corvo()



tell application "TextEdit"
activate
delay 0.5
tell application "System Events"
activate
keystroke "v" using command down
keystroke return
set visible of process "TextEdit" to false
delay 0.5
set frontmost of process "TextEdit" to true
end tell
end tell
-------------------

--
Gérard FLEUROT plus un
Avatar
derfnam
Fleuger wrote:

RyanScan wrote:

> Mais "dans" une Application ouverte ????

Je propose un script qui ne sert absolument à rien pour le fun :
L'enregistrer sous corvox.scpt et le placer dans le dossier :
'/Users/home/Library/Scripts/Applications/TextEdit/corvoX.scpt'
Si le dossier TextEdit n'existe pas, le créer.

Il faut que le menu script dans la barre de menus soit affiché.
S'il n'y est pas, c'est dans les préférences Éditeur de scripts >
Général et décocher Afficher les scripts de l'ordinateur et et cocher le
bouton radio Afficher les scripts de l'application en bas

Ouvrir TextEdit
cliquer sur le menu AppleScript
En bas de la liste, il y a Scripts TextEdit et dessous corvox.
Descendre la souris jusqu'à corvox et apprécier.



[Snip]

Ah, le bon vieux temps du Corvophraseur :-)
--
Manfred
42° 42' 0" N, 9° 26' 59" E.
iMac Intel Core 2 Duo, OS X 10.9.5.
"I would trade all my technology for an afternoon with Socrates."(S.J.)
Avatar
c.demeester
Manfred La Cassagnère wrote:

Fleuger wrote:

> RyanScan wrote:
>
> > Mais "dans" une Application ouverte ????
>
> Je propose un script qui ne sert absolument à rien pour le fun :
> L'enregistrer sous corvox.scpt et le placer dans le dossier :
> '/Users/home/Library/Scripts/Applications/TextEdit/corvoX.scpt'
> Si le dossier TextEdit n'existe pas, le créer.
>
> Il faut que le menu script dans la barre de menus soit affiché.
> S'il n'y est pas, c'est dans les préférences Éditeur de scripts >
> Général et décocher Afficher les scripts de l'ordinateur et et cocher le
> bouton radio Afficher les scripts de l'application en bas
>
> Ouvrir TextEdit
> cliquer sur le menu AppleScript
> En bas de la liste, il y a Scripts TextEdit et dessous corvox.
> Descendre la souris jusqu'à corvox et apprécier.
>
[Snip]

Ah, le bon vieux temps du Corvophraseur :-)




Tout fait içi :-)

<http://sourceforge.net/projects/corvophraseur/files/>


--

Claude Demeester


Avatar
c.demeester
Manfred La Cassagnère wrote:

>
[Snip]

Ah, le bon vieux temps du Corvophraseur :-)




<http://ecrans.liberation.fr/ecrans/1998/04/03/machines-a-ecrire-generateur-de-sf_234805>



--

Claude Demeester


Avatar
J.P
In article <1m7d4h9.aiopgckizsowN%,
(Claude Demeester) wrote:

<http://ecrans.liberation.fr/ecrans/1998/04/03/machines-a-ecrire-generateur-de
-sf_234805>



Il est passé où le LucSkywalker ?

--
Jean-Pierre
1 2 3 4 5