繁体   English   中英

将 AppleScript 翻译成 Python appscript (`do javascript`)

[英]Translate AppleScript to Python appscript (`do javascript`)

这是 AppleScript 模板:

tell application "Adobe Photoshop CS5"
  set theFile to alias “Application:Documents:MyFile” open theFile
  do javascript (file <path to Emboss.jsx>) with arguments { 75,2,89 }
end tell

我想把它翻译成 Python appscript。 不幸的是,我不知道如何翻译do javascript 有任何想法吗?

我什至不知道如何找到它。 也许我知道 AppleScript 太少了。 do关键字吗? 还是我发送给应用程序的命令? javascript是 do 的参数do 或者do javascript属于一起(作为带有空格的命令)?

我仍然不完全知道如何翻译上述内容(更一般地说:我不知道如何将任何通用 AppleScript 代码翻译为 Python appscript)。

但是,对于上述情况,我发现有命令do_javascript 它似乎并没有执行文件,而是直接执行给定的 JS 代码字符串。

例如,这有效:

from appscript import *
import os, sys

ps = app("Adobe Photoshop CS5")

filelist = sys.argv[1:]

jsCode = """
var g_StackScriptFolderPath = app.path + "/Presets/Scripts/" 
var runMergeToHDRFromScript = true; 
$.evalFile(g_StackScriptFolderPath + "Merge to HDR.jsx");
mergeToHDR.mergeFilesToHDR(%s, true);
""" % (repr(filelist),)

ps.do_javascript(jsCode)

要将通用AppleScript转换为appscript ,请使用此处appscript web 站点提供的ASTranslate工具。 由于某些应用程序的脚本定义中的怪癖和错误,它并不总是能够成功翻译,但它是一个很好的起点。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM