我在Mac上使用来自 Cultured Code 的todo列表应用 Things ,当我将任务链接复制到剪贴板时,它最终被编码为剪贴板中的十六进制代码。将它粘贴到文本文件中时没问题 - 然后显示为解码文本。
但是,我需要在AppleScript中使用剪贴板内容,并且难以将其解码为纯文本。
我尝试了多个子程序,但它们在我的情况下不起作用。我在网上找到的大多数示例都涉及简单的编码URL。到目前为止,我所拥有的代码可用于解码,例如" 0348"正确到数字1000但我的脚本不能解码编码的Things链接(顶部的那一长串数字)。
有人可以帮帮我吗?
这是我到目前为止所拥有的:
-- The link to a task in THINGS, encoded: 7468696e67733a2f2f2f73686f773f69643d41463645303746462d394230462d343539332d423143332d313846303337434237363836
-- Above link to the task in THINGS, unencoded: things:///show?id=AF6E07FF-9B0F-4593-B1C3-18F037CB7686
-- Online converter: http://www.unit-conversion.info/texttools/hexadecimal/
-- Number 1000 encoded: 03E8
set theEncodedText to "03E8"
set theDecodedText to (do shell script "perl -e 'printf(hex(\"" & theEncodedText & "\"))'") as string
set theDisplayedText to theDecodedText
display dialog theDisplayedText
谢谢你, 马丁
答案 0 :(得分:0)
以下示例 AppleScript 代码是概念验证我如何处理设置以<{1}}为十六进制数据的«data url ...»
保存到剪贴板的变量一个物品网址链接。
此脚本将...
写入临时文件,读取临时文件,该文件现在是«data url ...»
的文本字符串,并将其设置为< 变量的em> value ,然后删除临时文件。然后,它会将Things URL 链接显示为文本字符串,或者显示剪贴板不包含以下内容的消息:/// show?id =&#39;网址链接。
示例 AppleScript 代码:
«data url ...»
注意: 示例 AppleScript 代码就是这样,并且不使用任何其他错误处理然后显示的内容,仅表示完成任务的多种方式之一。用户有责任根据需要添加/使用适当的错误处理。