maxuewei2

在 Windows 下用 QTranslate 可以划词翻译,调用谷歌或百度翻译引擎,不需要本地词典。

在 Ubuntu 下可以自己写脚本实现一个简陋的版本。

步骤如下:

然后把以下代码复制进一个 notify-translate.sh 文件中,

#!/usr/bin/env bash

# Need https://github.com/soimort/translate-shell installed.
# Need xsel or xclip installed.

se=$(xsel -b -n -o | tr \'\n\' \' \'| tr \'\r\' \' \' | sed \'s/  / /g\') # xclip -selection clipboard -o
echo $se
re=$(/home/xuewei/bin/CopyTranslator/trans -b en:zh "$se")
echo $re
notify-send "$se" "$re" -i accessories-dictionary -t 2000
chmod a+x notify-translate.sh

然后在系统设置中添加快捷键运行 notify-translate.sh 脚本。

打开任意软件,选词,按Ctrl+C复制,然后按下之前设置的快捷键,就会弹出系统通知显示翻译了。


除xsel之外,也可以安装xclip,然后把xsel -b -n -o 替换为xclip -selection clipboard -o

脚本中se存储选中的词,re存储翻译结果。

使用 translate-shell 是获取翻译的一种方式,使用其他方式也可以。比如用 wget 调用谷歌翻译或百度翻译的 API,或者写 Python 脚本打开谷歌翻译网址,解析页面获取翻译等等。

使用系统通知显示翻译结果也只是显示翻译结果的一种方式,也可以写一个 Python 脚本使用 Tkinter 显示结果,鼠标离开时就销毁窗口?

END

2018.5.3

分类:

技术点:

相关文章: