gpt4 book ai didi

javascript - 使用 JXA 设置 BBEdit 插入点

转载 作者:行者123 更新时间:2023-12-03 03:13:11 28 4
gpt4 key购买 nike

我正在尝试将一些 Applescript (AS) 转换为 BBedit 的 Javascript (JXA)。

敲掉一些铁锈是一件有趣的小事,但我被难住了。使用 AS,我可以将插入点设置到 BBEdit 文档中;

tell application "BBEdit"
activate
tell text 1 of window 1
select insertion point before line 40
end tell
end tell

说到 JXA,我完全被难住了。我一直在探索线条对象,但找不到 insertsionPoint 属性。

您可以像这样访问选择属性;

currentLine = bbedit.selection().startline().

但它是只读的。所以我认为如果您想设置选择或插入点,您需要访问该选择方法。我不知道如何使用 JXA,或者是否可以使用 JXA。

有人知道如何使用 JXA 设置 BBEdit 插入点和/或选择吗?谢谢。

最佳答案

JXA 不实现插入引用表单(before/after/beginning/end)。相对(上一个…/下一个…)和范围(从…到…)说明符也被中断,过滤器(whose… ) 子句也很糟糕。许多在 AS 中运行良好的重要内容都在 JXA 中中断:就像 Apple 早期的 Scripting Bridge API,JXA 在交付时是半生不熟的,并立即被废弃。

像这样的废话就是我建议坚持使用 AppleScript 的原因。该语言可能很糟糕,但它是唯一[勉强]支持的选项,实际上正确地实现了Apple事件。通常我建议通过 AppleScript-ObjC 桥从其他语言调用 AppleScript 作为最不糟糕的解决方案,但 Apple 在 10.13 中也成功地打破了这一点。

(如果你喜欢危险的生活,NodeAutomation 为 Node.js 提供不间断的 Apple 事件支持,但随着 Apple 放弃 AppleScript 自动化,我不想浪费任何人的时间来推广或支持它,所以买者自负。)

关于javascript - 使用 JXA 设置 BBEdit 插入点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46880515/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com