我正在尝试在OSX leopard中创建一个服务,用于计算所选文本的单词数。我将automator设置为运行AppleScript,其中包含以下内容:
on run {input, parameters}
count words of input
display alert "Words: " & input
return input
end run
当我编译脚本时,它说它不能计算每个单词。我做错了什么?
感谢您的帮助,
埃利奥特
答案 0 :(得分:4)
首先,我假设你在Automator中测试这个,那就是错误发生的地方?如果是这样,可能的问题是没有输入 - 所以它不能算什么的话。为了成功测试,您需要在运行AppleScript操作之前临时添加“获取指定文本”操作,并在该字段中输入一些测试文本。在将其用作实际服务之前,您必须删除“获取指定的文本”操作。
其次,你需要使用
count words of (input as string)
为了获得正确的计数,否则它将返回零。
答案 1 :(得分:3)
我在Github上做了一个:
https://gist.github.com/1616556
目前的来源是:
on run {input, parameters}
tell application "System Events"
set _appname to name of first process whose frontmost is true
end tell
set word_count to count words of (input as string)
set character_count to count characters of (input as string)
tell application _appname
display alert "" & word_count & " words, " & character_count & " characters"
end tell
return input
end run
使用Automator.app创建新服务,然后选择“运行AppleScript”操作。将此代码粘贴到文本框中,并另存为Word和字符计数。现在切换到新应用程序,选择一些文本,然后打开上下文菜单以查找新选项。