在 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

Ubuntu 划词翻译的更多相关文章

  1. 【uwp】浅谈China Daily 中划词翻译的实现

    学习uwp开发也有一段时间了,最近上架了一个小应用(China Daily),现在准备将开发中所学到的一些东西拿出来跟大家分享交流一下. 先给出应用的下载链接:China Daily , 感兴趣的童鞋 ...

  2. Chrome划词翻译-Saladict

    Saladict 沙拉查词是一款专业划词翻译扩展,为交叉阅读而生.大量权威词典涵盖中英日韩法德西语,支持复杂的 划词操作.网页翻译.生词本.PDF,以及 Vimium 全键盘操作 . 迄今为止最好用的 ...

  3. Qt之字典划词

    简述 相信大家都用过词典吧!因为英语不太好...O(∩_∩)O~,所以经常进行划词翻译! 简述 实现 效果 源码 更多参考 实现 原理:鼠标移至某单词之上,获取鼠标位置,然后在对应位置进行取词,翻译! ...

  4. 划词标注1——使用svg绘制换行文本并自动识别库中字典数据

    业务需求 给出一段文本,自动识别出文本中包含的关键字信息,关键字是库里已知的数据,根据类型的不同显示出不同的颜色 业务分析 1)采用css:文本识别出来后,根据识别出的文本更改对应文本的dom,通过更 ...

  5. [技术博客]WEB实现划词右键操作

    [技术博客]WEB实现划词右键操作 一.功能解释 简单地对题目中描述的功能进行解释:在浏览器中,通过拖动鼠标选中一个词(或一段文字),右键弹出菜单,且菜单为自定义菜单,而非浏览器本身的菜单.类似的功能 ...

  6. 用 pyqt4 编写的一个翻译小工具

    有时候我们在开发时遇到一些陌生的英文单词或者不容易看出某些长句的中文意思时该怎么办呢?打开桌面上的翻译软件?打开浏览器里收藏着的翻译网址或者直接贴上百度的搜索框去查?这些方法固然可以,还很常见,但如果 ...

  7. Ubuntu 18.04 安装、配置和美化

    本文章修改自inkss的博文 为什么要修改原文? 本来我是想自己写这么一篇的,但是没想到在百度一搜,居然一篇好文.我之前没看到,真是可惜. 这篇文章主要是帮助我记录一些东西,如题. 原文虽然不错,但是 ...

  8. 四大高质量且实用的chrome翻译插件推荐

    Google英译汉的质量怎么样?日常生活用语翻译还可以,但是一到专业性术语就歇菜了,翻译出来的东西简直就是惨不忍睹,惨绝人寰..对于酷爱英语学习又有强迫症的患者来说,一款既实用又方便,无疑就是雪中送炭 ...

  9. 完善chrome翻译插件ChaZD,支持有道智云api

    首先放上该项目的github地址:https://github.com/codethereforam/ChaZD 之前想找一个chrome支持划词翻译的插件,最终在知乎上看到了这个回答,推荐的是Cha ...

随机推荐

  1. mybatis常见错误

    1.传入单个参数为list时 List<Objects> query(@param("list") List<String> list) <selec ...

  2. ASP.NET基础知识汇总之WebConfig自定义节点详细介绍

    之前介绍过Webconfig的具体知识ASP.NET基础知识汇总之WebConfig各节点介绍.今天准备封装一个ConfigHelper类,涉及到了自定义节点的东东,平时虽然一直用,但也没有系统的总结 ...

  3. Step by Step Recipe for Securing Kafka with Kerberos

    Short Description: Step by Step Recipe for Securing Kafka with Kerberos. Article I found it is a lit ...

  4. C++11のlambd表达式

    在其他语言中,我们常见lambda表达式,c++11中也引入了. 利用Lambda表达式,可以方便的定义和创建匿名函数.今天,我们就来简单介绍一下C++中Lambda表达式的简单使用. 一.lambd ...

  5. 数据库升级到mysql5.7出现的1067 - Invalid default value for '字段名' (docker版)

    docker run -d --name xxx mysql:5.7 docker container cp xxx:/etc/mysql/mysql.conf.d .   // 取出mysql中的配 ...

  6. CentOS 安装 ceph 单机版(luminous版本)

    一.环境准备 CentOS Linux release 7.4.1708 (Core)一台,4块磁盘(sda.sdb,.sdc.sdd) 192.168.27.130 nceph 二.配置环境 1.修 ...

  7. QTableWidget class

    Help on class QTableWidget in module PyQt5.QtWidgets: class QTableWidget(QTableView)  |  QTableWidge ...

  8. 11 Django RESTful framework 实现缓存

    01-安装 pip install drf-extensions 02-导入 from rest_framework_extensions.cache.mixins import CacheRespo ...

  9. 启用k8s metrics server监控

    1.创建aggregator证书 方法一:直接使用二进制源码包安装 $ wget https://pkg.cfssl.org/R1.2/cfssl_linux-amd64 $ chmod +x cfs ...

  10. Linux C启动时创建pid文件

    程序在启动时将pid写入文件,当程序再次启动时会进行检测,避免启动多个实例. util-pidfile.h文件 #ifndef __UTIL_PID_H__ #define __UTIL_PID_H_ ...