注册一个 OS X 服务以接受无输入或 NSPasteboard 输入

Posted

技术标签:

【中文标题】注册一个 OS X 服务以接受无输入或 NSPasteboard 输入【英文标题】:Register an OS X Service to accept no input or NSPasteboard input 【发布时间】:2012-09-10 04:45:15 【问题描述】:

我正在尝试创建一个从剪贴板中的 URL 输出Markdown 样式链接的 OS X 服务。我希望它能够处理选定的文本输入没有文本选择的情况。

我一直关注 Apple 的 Services Implementation Guide,通过将 NSSendTypes 设置为 NSStringPBoardType,该服务可以正确接受选定的文本,如果我删除 NSSendTypes 键,它将在没有选定文本的情况下运行,但我可以'找不到在这两种情况下都可以访问我的服务的方法。

我是否可以设置一个 Info.plist 键来允许这种行为,或者我是否仅限于其中一种?

【问题讨论】:

你能分享一个可用于尝试一些方法的示例 xcode 项目吗? 好的,给你:db.tt/A2PvalfG 这可能不相关,但文档说,NSPasteboardTypeString 应该用来代替 NSStringPBoardType,因为它从 10.6 及更高版本开始被弃用。 没有选择时会发生什么? 如果设置为需要选择,则只要没有选择,服务就会被禁用。我还没有研究过NSPasteboardTypeStringNSStringPBoardType,但我想它不会改变其他行为(不过很高兴知道,谢谢)。 【参考方案1】:

我就这个问题联系了 Apple 的开发者支持,经过一番调查后,他们告诉我目前不可能(截至 2012 年 9 月 25 日)。

我已在 bugreport.apple.com 上提交了增强请求,如果您有兴趣,可以view on Open Radar(如果您想添加相同的内容,请务必向 Apple 提交副本)。

【讨论】:

以上是关于注册一个 OS X 服务以接受无输入或 NSPasteboard 输入的主要内容,如果未能解决你的问题,请参考以下文章

Mac OS X - 接受自签名多域 SSL 证书

解决autocad 2007新建或保存无响应的问题

用 Mac OS X 自带的 SSH 登陆 Linux 后出现中文乱码,如何解决?

以编程方式与 OS X 或 Linux 中的串行端口通信

Ammonite: Script ... 不接受参数(在 OS X 下)

Python turtle 模块导致 OS X 崩溃