Applescript-从特定单词复制到TextEdit文档/另一个单词的末尾



我想知道是否有一种更快的方法可以从TextEdit文档中复制一系列文本,而不必使用太多系统事件来查找、cmd+shift+down和复制文本范围(适用于word->文档末尾的情况)。

提前谢谢。

这个答案对于你想要的东西来说可能过于简单,但它至少应该让你朝着正确的方向开始。

set yourText to "This is some test text that you might want to work with."
set i to offset of "test" in yourText
set finalText to characters i thru -1 of yourText as string

顺便说一句,我看到很多人在不需要的时候在TextEdit这样的应用程序中做一些事情。换句话说,如果你只是想获取内容,没有理由在TextEdit(或类似的)中打开文件并编写脚本,你只需将文本文件读取到一个变量中,然后处理你的内容。

例如,您的脚本可能看起来像这样。。。

on run
    set yourText to read file "Macintosh SSD:Users:myuser:Desktop:myTextFile.txt"
    set i to offset of "test" in yourText
    set finalText to characters i thru -1 of yourText as string
end run

可能不会;Cocoa Scripting的文本套件支持非常糟糕,不支持文本范围说明符(例如text (word N) thru end of document ...)、文本样式、移动/复制/删除文本部分(至少不会出错),也不支持任何其他使其合理有用的功能。

你没有说明你实际上想要实现什么,但我认为它涉及富文本(例如.rtf)文件,否则你只需要使用StandardAdditions的read命令将纯文本直接读取到AS中并在那里进行操作,所以你可能想研究以下替代方案之一:

  1. OS X服务,您可以在Automator中编写并绑定到系统首选项中的键盘快捷键,允许读取和处理选定的文本

  2. 一个第三方可编写脚本的文本编辑器,它实现了自己的文本套件,不会吸收

  3. NSData+NSAttributedString,您可以通过ObjC/Swift/AppleScript ObjC/whatever使用它来读取.rtf文件并直接处理其内容。

相关内容

  • 没有找到相关文章

最新更新