zoukankan      html  css  js  c++  java
  • Ubuntu 划词翻译

    在 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 '
    ' ' '| tr '
    ' ' ' | 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

  • 相关阅读:
    C基础-2 数组指针测试
    C基础-2 指针数组测试
    cesium + mapbox 的三种方式
    Fiddler 拦截 https 请求
    Fiddler 拦截请求修改数据
    开窗函数 SUM() OVER()
    ASP.NET中GridView和Repeater重复数据如何合并
    SQL Server 索引优化 ——索引缺失
    C# LINQ和Lambda表达式详解
    html+js实现登录的账号密码保存
  • 原文地址:https://www.cnblogs.com/maxuewei2/p/8986905.html
Copyright © 2011-2022 走看看