Cheers,
Steve
[0019] < freespace> | help, i got concurrency issues
[0020] < freespace> | help, dead lock
[0020] < Ycros> | i concurrency issue help got
#!/bin/bash
MAX_LEN=32;
NON_URL_BUTTONS="google:1,wiki:2,define:3,cancel:99";
URL_BUTTONS="safari:0,cancel:99";
sel=`/Users/steve/usr/bin/xsel`;
if [ ${#sel} -eq 0 ]; then
xmessage -buttons ok -default ok -nearmouse "Empty selection!";
exit;
fi
hasurl=`expr "$sel" : '.*http://.*'`;
if [ $hasurl -gt 0 ]; then
sel=${sel#*http://};
sel=${sel%% *};
sel="http://$sel";
buttons=$URL_BUTTONS;
else
buttons=$NON_URL_BUTTONS;
fi
if [ ${#sel} -gt $MAX_LEN ]; then
label="${sel:0:$MAX_LEN}...";
else
label=$sel;
fi
xmessage -buttons $buttons -default `expr "$buttons" : '\(^[a-z]*\)'` -nearmouse "$label";
case $? in
0)
url="${sel}";
;;
1)
url="http://www.google.com/search?q=${sel}";
;;
2)
url="http://en.wikipedia.org/wiki/${sel}";
;;
3)
url="http://www.google.com/search?q=define:${sel}";
;;
99)
exit
;;
esac
url=${url// /%20};
echo "$url"
open /Applications/Safari.app/ "$url"