问题标签 [applescript-objc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
298 浏览

cocoa - 禁用 ApplescriptObjc 上的菜单项

我正在使用 ApplescriptObjc 进行编码。
我想在函数中禁用菜单项“首选项...”,但我做不到。

我可以禁用按钮。这是代码:

所以我试图禁用像按钮这样的菜单项:

我查看了 Apple 参考(https://developer.apple.com/library/mac/documentation/cocoa/reference/ApplicationKit/Protocols/NSMenuValidation_Protocol/Reference/Reference.html),但我不能使用这个参考,因为我确实不明白如何禁用它。

我想我可以这样使用这个功能:

但这不起作用(没有响应)。如何禁用菜单项?

0 投票
3 回答
1820 浏览

bash - 有没有办法使用 Xcode 在 MacOSX 上使用 AppleScriptObjC 应用程序打包 bash shell 脚本?

我正在尝试使用 AppleScriptObjC 作为包装器来自动化三个或四个 bash shell 脚本。这将给我一个友好的 gui 前端来选择数据文件等,以及方便的文本文件操作和几个 bash 脚本的处理。

一切正常(我可以按我的按钮并运行 shell 脚本),除了我不知道如何使事情变得半便携。我想要一个可以分发给其他人的应用程序或包,所需的脚本文件以某种方式由应用程序合并或生成,而不是暴露给用户。

我是 Xcode 和 AppleScriptObjC (ASOC) 的菜鸟,我看不到这样做的方法。- 我可以将脚本作为一组简单的 do shell 脚本命令运行,或者通过发送到终端窗口的命令来运行,但这意味着必须分发所有单独的 shell 文件并将其作为一堆片段放在正确的位置。- 我尝试从 ASOC 中生成脚本文件,但由于 ASOC 处理字符串和特殊字符的方式,我遇到了构建文件的障碍。我已经尝试过普通字符串或字符串构造的引号形式。作为背景,Apple Technical Note TN2065是相关的。以这种方式创建文件会丢失特殊字符。这段代码演示了这个问题(例如,我做错了什么!):

如果无法从 ASOC 中创建所需的 shell 脚本或访问作为支持文件包含在应用程序包中的脚本,我将做很多从 bash 到 AppleScriptObjC 的棘手移植!

建议或解决方案将不胜感激:1.如何使用AppleScriptObjC编写任意多行文件,包括控制字符等。2.或3.如何打包shell脚本以便ASOC可以在需要时运行它?

0 投票
1 回答
391 浏览

osx-mountain-lion - AppleScriptObjc - Xcode 4.6.3 - Xcode 不再识别创建的出口或操作

好的,日志时间阅读器,第一次编写器。

!!!注意:在阅读这个问题时,请记住我是在一个新的 Cocoa-Applescript 项目中使用 AppleScript 编写的。我没有使用直接的 Cocoa/Objective-C。!!!

不碍事。

我使用 Xcode 和 ASObjC 已经有一段时间了,并为自己开发了很多生产力应用程序,所以我对自己在做什么以及它应该如何工作有一个很好的想法。然而,这个问题让我把头发拉了出来!

几周前,我更新到 OSX 10.8.4(这是我认为问题开始的时候)。从那时起,Xcode 不再识别我在 AppDelegate 文件中定义的任何出口或操作。


这是说明问题的图像:

http://cl.ly/image/0a1b1T1O1O1m

“theLabel”应显示在引用出口下,“doAction”应显示在收到的操作下


在查看问题之前创建的项目时,这尤其奇怪:

http://cl.ly/image/3J0m2a2q392r

这 ”!” 每个出口右侧的状态: AppDelegate 没有名为 [出口名称] 的出口。操作有类似的警告消息。


我已经对该问题进行了一些故障排除,但没有成功。

  • 重新启动 Xcode - 问题仍然存在
  • 创建了新项目 - 问题仍然存在
  • 提取了所有与 Xcode 相关的 .plist 文件 - 问题仍然存在
  • 丢弃 DerivedData 文件夹 - 问题仍然存在
  • 从 App Store 删除并重新安装 - 问题仍然存在
  • 创建了新的用户帐户和项目 - 问题仍然存在
  • 重置 NVRAM - 问题仍然存在
  • 在不同的计算机上尝试 -问题已解决

问题似乎与这台机器有关。

如果有人可以帮助我解决这个问题,那就太棒了。也许我只是错过了一些重要的事情。

0 投票
1 回答
274 浏览

objective-c - 带有 ARC 的 AppleScriptObjc 中的 @autoreleasepool

我想用 ARC 在 AppleScriptObjc 中创建一个自动释放池,但我无法保留它。这是代码:

在代码中,我得到了这个调试错误:

我搜索了一下,发现“[[NSAutoreleasepool alloc] init]”只能在没有 ARC 的情况下使用,相反,“@autoreleasepool”可以与 ARC 一起使用而没有 ARC。

在 Objective-C 中,我们可以使用 @autoreleasepool。例子:

但是AppleScriptObjc 没有'{' 或'}',所以我们不能使用@autoreleasepool。然而,我试了一下,我得到了一个错误。
代码:

错误:

如何在 AppleScriptObjc 中使用 @autoreleasepool?

0 投票
0 回答
622 浏览

cocoa - 使用线程从串口读取数据

起初 - 对不起我的英语

我需要从串行端口(来自 GPS 接收器)读取数据我使用 SerialPort X2 编写了一个小应用程序。有用。但。我每 1 秒读取一次数据(在定时器触发时)。而且接收数据不是很好。它可能没有一些第一个字节或最后一个字节。所以我需要从“线程”读取数据(我在 Windows 中使用 Delphi 编写时这样做了)。我知道它可能正在使用 ObjC,但我退出了 C 的新手

如果有人有一个关于如何做的小例子(有大量评论) - 这将非常有帮助

谢谢

xCode 4,MacOSX 10.6

0 投票
0 回答
294 浏览

cocoa - 在 AppleScriptObjc 中使用 NSTimer 作为“延迟”

我正在尝试使用 NSTimer 作为 AppleScript 中的“延迟”,换句话说,我想使用 NSTimer 仅用于等待。

但是,此代码输出以下内容:

这是因为 NSTimer 启动但不等待下一个操作。

毕竟,我想在不改变格式的情况下用“延迟”代替“NSTimer”。

0 投票
0 回答
261 浏览

macos - 防止 AppleScriptObjC 中的睡眠

我想防止 AppleScriptObjC 中的睡眠。我发现了这个问题:

在 OS X 上防止睡眠的正确方法是什么?

我可以用 Objective-C 防止睡眠,但我不能用 AppleScriptObjC 做到这一点。我该怎么做?

格雷厄姆·米尔恩的例子:

编辑

我将他的代码翻译成 ASOC。

0 投票
1 回答
1371 浏览

macos - 如何以编程方式在 Outlook Mac 2011 中创建按钮?

我想创建一个按钮来列出 Outlook Mac 2011 中的所有备用电子邮件帐户。我知道我们不能在 Mac Outlook 中使用插件,而且某些有限的功能也可以使用 AppleScript 完成。谁能指导我如何以任何方式在 Mac Outlook 中添加按钮?

0 投票
1 回答
828 浏览

objective-c - 如何在 AppleScript-Cocoa 应用程序中使用 Objective C?

我正在使用 X-Code 开发 Applescript 应用程序,但我很难找到问题的答案。这很难,因为我很难理解 UI 元素是如何工作的,等等,而且这些问题的大多数答案都是用 Objective C 编写的。我已经了解了一些关于如何将 Objective C 代码转换为 Applescript 的知识,但在大多数情况下我仍然不确定。

例如,这个答案显示了一些 ObjC 代码,但我不知道如何在我的 Applescript 应用程序中使用它。

是否有资源或指南可以帮助我 a) 了解如何在我的 Applescript 应用程序中使用 Objective C 代码,和/或 b) 如何在 Applescript 中重写 Objective C 代码?

0 投票
1 回答
700 浏览

applescript-objc - 用于 plist 修改的 Apple 脚本在 MacOS 小牛中不起作用

我刚刚将我的 Mac OS 更新为 Mavericks 并在我的项目中遇到了一个问题。

我使用苹果脚本在 plist 中更新本地化密钥。但是当我将本地化密钥 plist 文件设置为 0 KB 时。

它在 Mac OS 10.8 中运行。

以下是我更改 plist 键的脚本: