Emacs 安装Google-translate插件
使用github安装插件
将github中的地址复制到gitee中,这样clone的速度会很快(我这边已经将代码复制了过来,可以直接在我的gitee仓库的地址下进行clone:https://gitee.com/bszscf/google-translate.git)
- git clone https://gitee.com/bszscf/google-translate.git ~/.emacs.d/plugins/google-translate
- 配置Google-translate
- 在 ~/.emacs.d/lisp 下新建init-google-translate.el文件
- 配置查询地址、快捷键等(可以参考一下我的配置)
(add-to-list 'load-path "~/.emacs.d/plugins/google-translate")
(require 'google-translate)
(require 'google-translate-default-ui)
;;需要将谷歌翻译地址的.com修改成.cn,否则在国内无法进行访问
(setq google-translate-base-url
"http://translate.google.cn/translate_a/single")
(setq google-translate-listen-url
"http://translate.google.cn/translate_tts")
(setq google-translate--tkk-url
"http://translate.google.cn")
;;配置默认语言
(setq google-translate-default-source-language "en")
(setq google-translate-default-target-language "zh-CN")
(setq-default google-translate-enable-ido-completion t)
;; 配置快捷键
(global-set-key "\C-ct" 'google-translate-at-point)
(global-set-key "\C-cT" 'google-translate-query-translate)
(global-set-key (kbd "\C-cq") 'google-translate-smooth-translate)
(provide 'init-google-translate)
- 配置init.el文件
(require 'init-google-translate)
-
使用谷歌翻译
需要翻译单词时将光标放到该单词的后边,使用快捷键
C-c t
进行翻译,如果需要翻译句子,可以使用C-c T
输入需要翻译的文本
需要注意的是: 谷歌翻译存在一个bug,就是在翻译句子的时候会出现Args out of range的错误,这个是插件本身存在的一个bug,需要修改部分代码,具体的原因可以看github上插件的issues:args-out-of-range error in google-translate-json-suggestion
代码调整如下:
将google-translate-core.el文件中的google-translate-json-suggestion函数进行替换,替换的代码如下:
(defun google-translate-json-suggestion (json)
"Retrieve from JSON (which returns by the
`google-translate-request' function) suggestion. This function
does matter when translating misspelled word. So instead of
translation it is possible to get suggestion."
(let ((info (aref json 7)))
(if (and info (> (length info) 0))
(aref info 1)
nil)))