OSX-Mojave。我有一个简单的脚本:
#!/bin/bash
key="..."
text="$(echo $(pbpaste) | sed "s/[\"\'<>]//g")"
translate="$(/usr/local/bin/wget -qO - "https://translate.yandex.net/api/v1.5/tr.json/translate?key=$key&text=$text&lang=ru")"
echo $translate | sed 's/.*\[\"\(.*\)\"\].*/\1/' | /usr/local/bin/terminal-notifier -title "$text" -subtitle "$translate"
脚本运行没有任何问题,如果从终端触发,则可以翻译剪贴板中的内容。我想将脚本绑定到键盘热键。用自动程序做到了,但在(终端通知程序)弹出窗口中我看不到变音符号,这就是翻译错误的原因。我认为,该问题出在自动程序的某个地方,我用 osascript 编译了简单的应用程序,在其中我启动了我的 bash 脚本并在没有自动程序的情况下绑定到热键,但问题仍然存在。如果从 cli 启动应用程序或 bash 脚本,在弹出窗口中我会看到变音符号和正确的翻译。但使用热键时我再次看到变音符号的问题。
有人能帮我解释一下问题出在哪里或在哪里查找错误吗?提前谢谢!