[Bibdesk-users] Newbie applescripter--any help appreciated

2008-03-09 Thread Ingrid Giffin
I'm trying to write a script to change my JSTOR URLs to the proxy version
that works for my school. It should copy the URL from the URL field, change
the URL by a simple string substitution, and paste the result to the
My_Proxy_URL field.

It seems to be working up until somewhere in the replaceChars step. I'm sure
I'm just making some beginner's mistake. Here's my script:

-

tell application BibDesk
set theDoc to document 1
set thePubsSel to the selection of theDoc
repeat with thePub in thePubsSel
set theURL to the value of field URL of thePub
if theURL contains links.jstor.org then
set theURL2 to replaceChars(theURL, links.jstor.org,
0-www.jstor.org.skyline.cudenver.edu)
set My_Proxy_URL to theURL2
end if
end repeat
end tell


Here's the Event Log:


tell application BibDesk
get document 1
document Anthro Bib
get selection of document Anthro Bib
{publication 8 of document Anthro Bib}
get value of field URL of publication 8 of document Anthro Bib

http://links.jstor.org/sici?sici=1558-8610%281972%2914%3Cii%3ATAOATH%3E2.0.
CO%3B2-P

replaceChars(http://links.jstor.org/sici?sici=1558-8610%281972%2914%3Cii%3A
TAOATH%3E2.0.CO%3B2-P, links.jstor.org,
0-www.jstor.org.skyline.cudenver.edu)
BibDesk got an error: Can't continue replaceChars.

-

Thanks for any suggestions.
--Ingrid Giffin



-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
Bibdesk-users mailing list
Bibdesk-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bibdesk-users


Re: [Bibdesk-users] Newbie applescripter--any help appreciated

2008-03-09 Thread Alexander H. Montgomery
first, replaceChars needs to be my replaceChars - you have to tell  
AppleScript where to find the replaceChars routine (which needs to be  
in the same file as the below script).

So the full script (for you) should look like the below, assuming that  
you a)want to replace the url field and b)want it to pop up in the  
linked URLs as well as in the URL field.

tell application BibDesk
set theDoc to document 1
set thePubsSel to the selection of theDoc
repeat with thePub in thePubsSel
set theURL to the value of field URL of thePub
if theURL contains links.jstor.org then
set theURL2 to replaceChars(theURL, links.jstor.org, 
0- 
www.jstor.org.skyline.cudenver.edu)
set the value of field url of thePub to theURL2
delete linked URL 1 of thePub
make new linked URL with data theURL2 at end of linked 
URLs of thePub
end if
end repeat
end tell

on replaceChars(this_text, search_string, replacement_string)
if this_text contains the search_string then
set oldAStid to AppleScript's text item delimiters
set AppleScript's text item delimiters to the search_string
set the item_list to every text item of this_text
set AppleScript's text item delimiters to the replacement_string
set this_text to the item_list as string
set AppleScript's text item delimiters to oldAStid
end if
return this_text
end replaceChars


On 2008-03-09, at 11:32 AM, Ingrid Giffin wrote:

 I'm trying to write a script to change my JSTOR URLs to the proxy  
 version
 that works for my school. It should copy the URL from the URL field,  
 change
 the URL by a simple string substitution, and paste the result to the
 My_Proxy_URL field.

 It seems to be working up until somewhere in the replaceChars step.  
 I'm sure
 I'm just making some beginner's mistake. Here's my script:

 -

 tell application BibDesk
set theDoc to document 1
set thePubsSel to the selection of theDoc
repeat with thePub in thePubsSel
set theURL to the value of field URL of thePub
if theURL contains links.jstor.org then
set theURL2 to replaceChars(theURL, links.jstor.org,
 0-www.jstor.org.skyline.cudenver.edu)
set My_Proxy_URL to theURL2
end if
end repeat
 end tell
 

 Here's the Event Log:


 tell application BibDesk
get document 1
document Anthro Bib
get selection of document Anthro Bib
{publication 8 of document Anthro Bib}
get value of field URL of publication 8 of document Anthro Bib

 http://links.jstor.org/sici?sici=1558-8610%281972%2914%3Cii%3ATAOATH%3E2.0 
 .
 CO%3B2-P

 replaceChars(http://links.jstor.org/sici?sici=1558-8610%281972%2914%3Cii%3A
 TAOATH%3E2.0.CO%3B2-P, links.jstor.org,
 0-www.jstor.org.skyline.cudenver.edu)
BibDesk got an error: Can't continue replaceChars.

 -

 Thanks for any suggestions.
 --Ingrid Giffin



 -
 This SF.net email is sponsored by: Microsoft
 Defy all challenges. Microsoft(R) Visual Studio 2008.
 http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
 ___
 Bibdesk-users mailing list
 Bibdesk-users@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/bibdesk-users



-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
Bibdesk-users mailing list
Bibdesk-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bibdesk-users


Re: [Bibdesk-users] Newbie applescripter--any help appreciated

2008-03-09 Thread Ingrid Giffin
Thank you very much! I need to keep the old URL, though, since it's the
stable URL that will be listed in my bib. So I deleted that one line.
Works perfectly--thanks.


 
On 3/9/08 1:13 PM, Alexander H. Montgomery [EMAIL PROTECTED] wrote:

 first, replaceChars needs to be my replaceChars - you have to tell
 AppleScript where to find the replaceChars routine (which needs to be
 in the same file as the below script).
 
 So the full script (for you) should look like the below, assuming that
 you a)want to replace the url field and b)want it to pop up in the
 linked URLs as well as in the URL field.
 
 tell application BibDesk
 set theDoc to document 1
 set thePubsSel to the selection of theDoc
 repeat with thePub in thePubsSel
 set theURL to the value of field URL of thePub
 if theURL contains links.jstor.org then
 set theURL2 to replaceChars(theURL, links.jstor.org, 0-
 www.jstor.org.skyline.cudenver.edu)
 set the value of field url of thePub to theURL2
 delete linked URL 1 of thePub
 make new linked URL with data theURL2 at end of linked URLs of thePub
 end if
 end repeat
 end tell
 
 on replaceChars(this_text, search_string, replacement_string)
 if this_text contains the search_string then
 set oldAStid to AppleScript's text item delimiters
 set AppleScript's text item delimiters to the search_string
 set the item_list to every text item of this_text
 set AppleScript's text item delimiters to the replacement_string
 set this_text to the item_list as string
 set AppleScript's text item delimiters to oldAStid
 end if
 return this_text
 end replaceChars
 
 
 On 2008-03-09, at 11:32 AM, Ingrid Giffin wrote:
 
 I'm trying to write a script to change my JSTOR URLs to the proxy
 version
 that works for my school. It should copy the URL from the URL field,
 change
 the URL by a simple string substitution, and paste the result to the
 My_Proxy_URL field.
 
 It seems to be working up until somewhere in the replaceChars step.
 I'm sure
 I'm just making some beginner's mistake. Here's my script:
 
 -
 
 tell application BibDesk
set theDoc to document 1
set thePubsSel to the selection of theDoc
repeat with thePub in thePubsSel
set theURL to the value of field URL of thePub
if theURL contains links.jstor.org then
set theURL2 to replaceChars(theURL, links.jstor.org,
 0-www.jstor.org.skyline.cudenver.edu)
set My_Proxy_URL to theURL2
end if
end repeat
 end tell
 
 
 Here's the Event Log:
 
 
 tell application BibDesk
get document 1
document Anthro Bib
get selection of document Anthro Bib
{publication 8 of document Anthro Bib}
get value of field URL of publication 8 of document Anthro Bib
 
 http://links.jstor.org/sici?sici=1558-8610%281972%2914%3Cii%3ATAOATH%3E2.0
 .
 CO%3B2-P
 
 replaceChars(http://links.jstor.org/sici?sici=1558-8610%281972%2914%3Cii%3A
 TAOATH%3E2.0.CO%3B2-P, links.jstor.org,
 0-www.jstor.org.skyline.cudenver.edu)
BibDesk got an error: Can't continue replaceChars.
 
 -
 
 Thanks for any suggestions.
 --Ingrid Giffin
 
 
 
 -
 This SF.net email is sponsored by: Microsoft
 Defy all challenges. Microsoft(R) Visual Studio 2008.
 http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
 ___
 Bibdesk-users mailing list
 Bibdesk-users@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/bibdesk-users
 
 
 
 -
 This SF.net email is sponsored by: Microsoft
 Defy all challenges. Microsoft(R) Visual Studio 2008.
 http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
 ___
 Bibdesk-users mailing list
 Bibdesk-users@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/bibdesk-users



-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
Bibdesk-users mailing list
Bibdesk-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bibdesk-users