OVH Cloud OVH Cloud

AppleScript et var denvironment

4 réponses
Avatar
yt.trash
dans certains de mes scripts AS j'aurais besoin de récupérer certaines
vars d'environment.

comme j'utilise zsh et que do shell script utilise bash, j'ai écrit deux
scripts ruby l'un recopiant le contenu de ~/Library/init/szh/environment
dans ~/.MacOSX/environment.plist et l'autre dans ~/…profile

donc les trois setup :
~/Library/init/szh/environment
~/.MacOSX/environment.plist
~/…profile

sont "identiques" aux deux vars près "SHELL" et "FPATH" (les functions
de zsh).

et pourtant quand je fais un as comme ça :

display dialog (do shell script "echo $PATH")

ok, à vue de nez, j'ai le bon PATH, par contre si je fais :

display dialog (do shell script "echo $RUBY_HOME")

je n'ai rien et pourtant cette var est aussi bien dans environment.plist
que .profile...

j'ai essayé en quittant script editor puis en le relançant, rien n'y
fait...

finalement qu'est-ce qu'est sensé lire, comme var d'environment "do
shell script" ???
--
Une Bévue

4 réponses

Avatar
luc
Une Bévue wrote:

finalement qu'est-ce qu'est sensé lire, comme var d'environment "do
shell script" ???


<http://developer.apple.com/technotes/tn2002/tn2065.html>

--
Luc Heinrich

Avatar
Patrick Stadelmann
In article <1hoy0at.1hhohz1zzrzq5N%,
(Une Bévue) wrote:

finalement qu'est-ce qu'est sensé lire, comme var d'environment "do
shell script" ???


Celle de son process parent, donc en général l'application qui exécute
le script (sauf si la commande se trouve dans un bloc "tell" destiné à
une autre application).

Pour récupérer une variable d'environnement dans AS, on peut utiliser la
commande "system attribute" (dans les additions standards).

Patrick
--
Patrick Stadelmann

Avatar
yt.trash
Luc Heinrich wrote:


<http://developer.apple.com/technotes/tn2002/tn2065.html>


Ah m@&rde ! je me suis fatigu pour rien...

--
Une Bévue

Avatar
yt.trash
Patrick Stadelmann wrote:


Celle de son process parent, donc en général l'application qui exécute
le script (sauf si la commande se trouve dans un bloc "tell" destiné à
une autre application).


bon, mon script est en fait un droplet pour le toolbar des fenêtres
finder, il est lancé de deux manières(*), soit en ayant sélectionné un
fichier et en cliquant son icône dans le toolbar, soit par drag'n drop
sur son icône, je suppose donc que c'est ths le finder càd cas
défavorable...

Pour récupérer une variable d'environnement dans AS, on peut utiliser la
commande "system attribute" (dans les additions standards).


Ouais, super sympa j'ai tout ce qu'il me faut :
(copier/coller marche plus sur mon mac...)


* justement dans mon script développé sous ASS l'événement "on run"
n'est jamais reçu si bien que le script s'active quand on click sur son
icône dans le toolbar d'une fenêtre finder mais ne reçoit pas la liste
des documents sélectionnés, le drag'n drop marche impec lui.

je pense que c'est mon setup dans IB où il manque qqc mais quoi ???
--
Une Bévue