Я пытаюсь создать апплет, который принимает выбранные элементы в Finder и создает список ссылок RTF в буфере обмена, используя AppleScript.
Код является:
tell application "Finder" to set s to selection
set r to "{\\rtf1"
repeat with i in s
set t to "Download " & name of i
set p to POSIX path of (i as text)
set sed to "echo " & quoted form of p & " | sed s_/Users/0/Dropbox/Public_http://dl.dropbox.com/u/DBid_"
set l to (do shell script sed) & "?dl"
set r to r & "{\\field{\\*\\fldinst{HYPERLINK \"" & l & "\"}}{\\fldrslt " & t & "}}\\par "
end repeat
set r to r & "}"
set fc to "echo " & quoted form of r & " | pbcopy"
do shell script fc
Все прекрасно работает, кроме финального "echo" для "pbcopy".
Обратные слеши искажаются и интерпретируются как escape-коды вместо кодов RTF!
Я попытался скопировать окончательное значение var fc вручную и вставить его в Terminal, и это сработало отлично.
Но когда он прибывает из AppleScript, «\» отправляется как «\\», и это нарушает коды RTF.
Спасибо за любую помощь!