termitを Emacsから使うための設定
Ruby - コマンドラインからGoogle Translationを使える termit が便利 - Qiita
ターミナルからだとめんどくさいので書いてみました.
コード
Google翻訳が対応しているものだと何でもいけるんでしょうけど、とりあえず
英語 <=> 日本語で. 仕様なのか何なのか 1文しか翻訳してくれないっぽいです.
リージョンで突っ込んでも最初の一文しか翻訳されません.
(defun termit-translate (sentense from to) (let* ((remove-newline (replace-regexp-in-string "[\r\n]" " " sentence)) (cmd (format "termit %s %s %s" from to (shell-quote-argument remove-newline)))) (with-current-buffer (get-buffer-create "*termit*") (erase-buffer) (unless (zerop (call-process-shell-command cmd nil t)) (error "Failed: %s" cmd)) (pop-to-buffer (current-buffer))))) (defun termit-japanese-to-english (beg end) (interactive "r") (let ((sentence (buffer-substring-no-properties beg end))) (termit-translate sentence "ja" "en"))) (defun termit-english-to-japanese (beg end) (interactive "r") (let ((sentence (buffer-substring-no-properties beg end))) (termit-translate sentence "en" "ja")))
おわりに
精度は気になる気がしますが, ないよりかはいいでしょう.