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

Posted ReaperSpring

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了两款命令行下的翻译工具: 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-shellgoogle翻译的命令行前端, 安装后使用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不需要网络, 本地查询速度更快, 拿来查字典更顺手.

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

 

以上是关于两款命令行下的翻译工具: sdcv & translate-shell的主要内容,如果未能解决你的问题,请参考以下文章

Linux 命令行下的好东西

如何在Linux命令行下查询字典

FPipe, CMD命令行下的端口重定向工具

有没有linux命令行下的http抓包工具? 就像burp suite那样,设置好代理就可

使用Stardict命令行版本sdcv

Linux命令行翻译工具