- google-translate 20170713.119(in MELPA)
- Emacs interface to Google Translate.
概要
google-translate.el は、Google翻訳APIを使って
様々な言語の翻訳を行います。
しかも高速に動作します!
英語に悩んでいる人には朗報ですね。
本設定では、英語・日本語の自動判別をしたコマンドを用意しました。
ASCII文字でのみ構成されている場合は英語とみなします。
C-c tに割り当てた M-x google-translate-enja-or-jaen は、
以下の挙動を取ります。
- C-c t (regionあり): regionを翻訳
- C-c t (regionなし): 現在のセンテンスを翻訳(NEW!!)
- C-u C-c t: 入力文字列を翻訳(NEW!!)
- (google-translate-enja-or-jaen "english string"): 英語→日本語
- (google-translate-enja-or-jaen "日本語文字列"): 日本語→英語
もし英語・日本語以外の言語を使うならば、
google-translate-translation-directions-alist に
様々な言語を設定し、 M-x google-translate-smooth-translate を
直接使いましょう。
インストール
パッケージシステムを初めて使う人は
以下の設定を ~/.emacs.d/init.el の
先頭に加えてください。
(package-initialize) (setq package-archives '(("gnu" . "http://elpa.gnu.org/packages/") ("melpa" . "http://melpa.org/packages/") ("org" . "http://orgmode.org/elpa/")))
初めてgoogle-translateを使う方は
以下のコマンドを実行します。
M-x package-install google-translate
アップグレードする方は、
以下のコマンドでアップグレードしてください。
そのためにはpackage-utilsパッケージが必要です。
M-x package-install package-utils (初めてアップグレードする場合のみ) M-x package-utils-upgrade-by-name google-translate
設定 141230072954.google-translate-2.el(以下のコードと同一)
(require 'google-translate) (defvar google-translate-english-chars "[:ascii:]’“”–" "これらの文字が含まれているときは英語とみなす") (defun google-translate-enja-or-jaen (&optional string) "regionか、現在のセンテンスを言語自動判別でGoogle翻訳する。" (interactive) (setq string (cond ((stringp string) string) (current-prefix-arg (read-string "Google Translate: ")) ((use-region-p) (buffer-substring (region-beginning) (region-end))) (t (save-excursion (let (s) (forward-char 1) (backward-sentence) (setq s (point)) (forward-sentence) (buffer-substring s (point))))))) (let* ((asciip (string-match (format "\\`[%s]+\\'" google-translate-english-chars) string))) (run-at-time 0.1 nil 'deactivate-mark) (google-translate-translate (if asciip "en" "ja") (if asciip "ja" "en") string))) (global-set-key (kbd "C-c t") 'google-translate-enja-or-jaen)
実行方法
$ wget http://rubikitch.com/f/141230072954.google-translate-2.el $ emacs -Q -f package-initialize -l 141230072954.google-translate-2.el
Fig1: 翻訳!
本日もお読みいただき、ありがとうございました。参考になれば嬉しいです。