两款命令行下的翻译工具: sdcv & translate-shell

现今打开浏览器有各种相关插件可用,取词翻译等唾手可得,但在命令行下浏览资料时遇到生词复制到到网上搜索,一来一回比较烦,于是找到了两款工具,分别介绍一下吧:

sdcv安装后因为缺少字典,并不能直接使用,要到 http://download.huzheng.org/处下载,个人推荐 langdao-ec-gb langdao-ce-gb DrEye4in1

解压后放到~/stardict/dic/即可, 比如sdcv hello将显示hello的解释, 单独输入sdcv会启动交互模式,

~/.sdcv_ordering文件可以指定字典查找顺序, -u选项也可以指定查找的字典,

如果sdcv找不到给出的单词,会尝试模糊匹配,-e选项可以强制精确查找.

sdcv也支持分页查看, 由环境变量$SDCV_PAGER指定分页器, 另外--color选项可以高亮输出,我的设置如下:

alias dts=‘sdcv -e --color‘

export SDCV_PAGER=‘less -i -r -M‘

sdcv本身选项不多,手册也比较好理解,更详细的见man.

translate-shell是google翻译的命令行前端, 安装后使用trans命令即可使用, 下面介绍一些重要选项:

trans默认就会输出ansi转义, 所以看到奇怪的内容时先使用-no-ansi关闭转义字符,后面会说.

trans界面所使用的语言和终端相同, -l选项可以进行修改.

-s-t分别控制所采用的源语言和目标语言, 即"将s语言翻译为t语言"的意思,其简写形式为[source]:[target],

比如en:zh代表英转汉, :zh表示自动检测源语言并翻译为中文,

当省略source的时候将自动检测源语言,

而省略target时, 一切语言都会被翻译为英文(毕竟, 外星人都说英语...),

-T可以列出支持的语言, -L可以查询到更详细的信息.

程序默认使用google翻译引擎, -S可以列出所有支持的引擎,然后-e进行选择.

trans本身更倾向于大段的翻译之用, -d选项可以将其用作普通字典,

默认的, 程序使用-verbose输出很多内容, -b选项可以精简输出, 但是对于字典查询来说, 有些太过于精简了.

要想翻译文件,可以使用-i选项.

trans也是支持分页的, 由-v启动, 而-pager用来指定分页器,  上面提到过ansi转义的问题,

和很多程序一样, 转义可以高亮输出, 但要注意分页器也要支持转义. 我的选项如下:

alias gts=‘trans -t zh-CN -l zh-CN -d -v -pager "less -i -r -M" -no-play --‘

trans的选项很多, 更多内容相见man手册页.

两款软件各有利弊, trans实际上是网络查找, 保证了时效性, 但相应的需要有网, 速度慢一些,

不过更重要的是就像前面说过的,trans更倾向于全文翻译, 如果只是单纯的查查字典, 个人感觉没有sdcv好,

再加上国内的网络环境, 都懂的...

而sdcv不需要网络, 本地查询速度更快, 拿来查字典更顺手.

两款软件可以拿来互补使用吧.

原文地址:https://www.cnblogs.com/reaperspring/p/9445209.html

时间: 2024-11-02 12:20:45

两款命令行下的翻译工具: sdcv & translate-shell的相关文章

SQL server(MSSQL)客户端工具登录数据库的两种命令行登录方式

我们安装了sqlserver服务器和sqlserver客户端工具之后,可以使用两种命令行方式登录数据库: >sqlwb -S servername或IP -E     #使用当前windows系统的账户登录sqlserver服务器 如下图: >sqlwb -S servername或IP -U username -P password     #使用数据库账户和密码登录sqlserver服务器 如下图: PS:安装好sqlserver数据库之后,默认sa账户无法登录,需要调整数据库服务配置才可

如何在命令行下使用Android NDK交叉编译工具

我们知道,在Linux下可以使用gcc来把一份C代码编译成为Linux上的可执行程序, 如: $ gcc -o main.out main.c 而Android平台提供了NDK工具包来交叉编译可以运行于Android系统中的应用程序, 它需要我们编写 Android.mk来配置编译选项和编译目标, 那么, 能否也像gcc那样直接在命令行下编译呢? 答案是可以的, NDK只不过是把这个过程封装和抽象了而已, 我们完全可以直接调用 NDK 提供的编译工具链来编译我们的C代码, 方法如下所示(在命令行

七款使用命令行的PNG图像处理工具

图像格式有许多种不 同类型,在互联网上最常见的有JPEG.GIF.BMP.TIFF和PNG.每一种图像格式都有它自己的用途,比如GIF是用于动画的,JPEG是用于高 清图片的,这种图片在保存或者调整大小后会自动降低其清晰度,而我们最喜爱的PNG最适合于小型且透明的图片.PNG文件的另一个巨大的优势是这些文件都 是无损的,这就意味着你可以在不丢失清晰度的情况下对PNG文件进行压缩.转自:http://www.elsyy.com/news/2014/1223/2003134937.html 命令行工

Windows Git Bash命令行下创建git仓库并更新到github

大二的时候就听过老师说有一个叫git的版本管理工具,当时只是听老师说说而已,也没有去使用它,因为当时用过svn,就感觉自己没多少东西需要git管理. 最近几天,我经常在开源中国看别人的帖子,看到别人对git和github这个平台评价如此之高,于是我就下载了一个windows版本的git bash, 一开始使用就被它的速度和实用所折服,于是在我的虚拟Centos 7上也装上了git ,现在我主要利用它帮助我管理一些繁琐的小代码,git这样的工具的魅力还需要我慢慢体会. 现在我就记录一下我在Wind

Android命令行下蓝牙使用

注意:此部分只适用于broadcom 系列蓝牙芯片,例如RK903, AP6xxx 系列 通过su 命令切换到root 用户 1.先确认RFKILL 驱动已经加载 ls /sys/class/rfkill/rfkill0/ 如果没有找到rfkill0 这个目录,说明蓝牙驱动有问题. 请检查kernel 中的蓝牙选项是否有勾选了 请查看kernel 的打印信息中以"[BT_RFKILL]"打头的信息. 2.关闭蓝牙: A. 在Settings 界面中关闭蓝牙 B. 给蓝牙设备下电: ec

命令行下Jar包打包小结

jar包打包实现 第一种简单的打包方式 第二种打包方式 MANIFEST文件介绍 小结 jar包打包实现 jar包打包可以使用jar指令实现打包,在命令行中输入jar可以查看jar指令的内容 从最后显示的两个示例看出存在两种打包的方法,两者的区别就是是否使用自己定义的MANIFEST清单文件.第一个示例没有使用MANIFEST文件进行打包,所以最终生成的jar包中MANIFEST文件为默认文件,这种方式适用于比较简单的jar包结构,不存在其他jar包依赖以及生成的jar包不需要可执行.这种方式生

linux命令行todo列表管理工具Taskwarrior介绍

Taskwarrior 是一款在命令行下使用的TODO列表管理工具,或者说任务管理工具,灵活,快速,高效. 安装 在ubuntu 14.04 中,可从官方仓库安装task软件包 sudo apt-get install task 在ubuntu18.04中,可从官方仓库安装taskwarrior软件包 sudo apt-get install taskwarrior 简单使用 安装后,即可使用task命令 第一次运行会提示你创建配置文件,输入yes,使用默认配置即可. 新建任务 使用task a

git 命令行下浏览器tig使用记录

git 命令行下浏览器tig使用记录 tig 是一款优化 git 命令行的工具,使 git 命令行更加的便捷人性化 .如果用习惯了,会上瘾. 以下是一些使用记录: 安装成功后,在 Repo 文件夹下,输入 [ tig ]+ [ Enter ]即可进入 tig 模式.此时展现在面前的将会是本地所有的 commit 记录以及分支的演化. [ j ][ k ]可上下切换选中的行,[ Enter ]可分屏查看当前 commit 记录详情,[ l ]小写的 L,全屏查看 commit 记录. [ r ]进

oracle官网下载老版本jdk + 如何命令行下wget下载jdk

一.文章由来 1.前天有人再去你咨询如何下载jdk的老版本,在oracle官网上找了老半天,找不到相应的选项~ 2.等待问题解决了之后,又抛出来一个新的问题,如何wget直接下载,毕竟百十来兆的文件,下载下来再上传对于我们这种蜗牛带宽来说也是一件苦逼的事情~ 二.如何下载jdk的历史版本 1.访问http://www.oracle.com 2.点击Downloads---->Java for Developers 3.在弹出的的页面中,下拉页面到最下面,点击历史归档 4.点击进去,同意协议,然后