[SVN] Passing variables to osascript, or other workaround?
Allan Odgaard
allan at macromates.com
Wed May 11 21:55:47 UTC 2005
On May 11, 2005, at 22:58, Charilaos Skiadas wrote:
> My problem basically is: how can I pass a list of strings to
> osascript, so that it can perceive them as a list, and so that "choose
> from list" would work as expected. I am clearly misundestanding
> something. The script I was trying is:
I think the problem was something with the list containing illegal
(according to AS) characters, probably it had \ in front of the quotes
(looking at your pattern).
I took the library to use perl instead of sed, because it has an IMHO
much better regex grammar (and more capabilities), I also changed stdin
for the command to be “entire document” so grep can just work on that
instead of TM_FILEPATH, plus let awk write result to stdout directly
rather than go through a variable:
list=`grep '\\label{.*}'|perl -pe 's/.*\\label\{(.*?)\}(.*)\n/"$1 :
$2",/'`
res=`osascript <<EOF
tell application "System Events"
activate
choose from list { ${list:0:${#list}-1} }
end tell
EOF`
osascript -e 'tell app "TextMate" to activate' &>/dev/null &
awk <<<$res '{ printf("%s", $1) }'
Btw: questions like these should be sent to the normal user list.
More information about the textmate-dev
mailing list