我想知道是否有更快的方式从TextEdit文档复制一系列文本,而无需使用如此多的系统事件来查找cmd + shift + down并复制文本的范围(对于单词 - >文档结束的情况)。Applescript - 从特定单词复制到TextEdit文档/其他单词的结尾
预先感谢您。
我想知道是否有更快的方式从TextEdit文档复制一系列文本,而无需使用如此多的系统事件来查找cmd + shift + down并复制文本的范围(对于单词 - >文档结束的情况)。Applescript - 从特定单词复制到TextEdit文档/其他单词的结尾
预先感谢您。
这个答案可能对于你要找的东西来说太简单了,但至少应该让你开始朝正确的方向发展。
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
可能不是;可可脚本的文本套件支持很糟糕,并且不支持文本范围说明符(例如text (word N) thru end of document ...
),文本样式,移动/复制/删除文本部分(至少不是没有搞砸)或其他任何可以合理有用。
你不会说你实际想要达到什么,但我认为它涉及到丰富的文本(例如.rtf)文件,否则你只需使用StandardAdditions的read
命令直接读取纯文本到AS并操作它在那里,所以你可能要考虑下列选项之一:
OS X服务,您可以在Automator的编写和绑定到系统偏好设置的快捷键,让选中的文字被读取并处理
第三方脚本化文本编辑器,实现自己的文本不吸引的套件
NSData
+ NSAttributedString
您可以通过ObjC/Swift/AppleScript-ObjC /任何方式使用它来读取.rtf文件并直接处理它们的内容。
在AppleScript本身中,您应该使用'text i thru j someString'来获取子字符串。唉,向TextEdit发送相同的请求将会失败,因为它的Text Suite支持非常强大;如TextWrangler和Tex-Edit Plus等第三方应用程序是一个更好的选择,如果可用的话。从TextEdit中获取'通过j ...'的字符具有糟糕的性能,因为您要求它返回一个单字符字符串列表。最后,将列表强制为单个字符串也会产生不可预知的结果,除非您始终将AppleScript的文本项分隔符首先设置为'“”'。 – foo