DeepLというAIによる翻訳サイトが流行っていますが、Emacs から直接翻訳する方法を説明します。


DeepL というAIによる翻訳サイトが流行っていますね。Google翻訳よりも自然な訳をしてくれると話題です。使い方としてはサイトにてコピー&ペーストするだけなのですが、Emacs 使いとしては Emacs から直接翻訳したいですよね。そこで今回はその設定方法について説明します。

Emacs 前準備

今回使用するパッケージにあわせて前準備が必要です。すでに対応済みの場合はスキップしてください。

MELPAの設定

つぎにMELPAを登録しておきます。下記のように init.el で設定しておけばよいかと思います。

1
2
3
4
5
(package-initialize)
(setq package-archives
      '(("gnu" . "https://elpa.gnu.org/packages/")
        ("melpa" . "https://melpa.org/packages/")
        ("org" . "https://orgmode.org/elpa/")))

DeepL APIの認証キーの取得

Emacs から DeepL を使用するには APIを利用します。APIを使うには認証キーが必要です。

まずはDeepLの公式サイトにアクセスします。 サイトの上の方に「API」と書いてあるところがあるのでそこをクリックしてください。下図の赤枠のところです。

DeepL公式サイトのAPIメニュー

次に、下の方に「無料で登録する」というところがあるのでそこをクリック。下図の赤枠のところです。

DeepL APIの無料登録ボタン

すると名前や住所、クレジットカード情報を聞かれます。 「クレジットカードの入力は1人で複数登録するのを防ぐため(意訳)」と書いてあります。 フリープランなら課金されることはないので問題ないでしょう。そのまま進め登録を完了させます。

これでAPI認証キーを取得する準備ができました。右上のほうのアカウント名をアカウント情報を表示させます。 アカウントタブのところをクリックすれば下記のようにAPI認証キーが表示されるはずです。あとでこれを入力する必要がありますのでどこかにメモしておいてください。

DeepLアカウント情報画面でAPI認証キーを取得

go-translate のインストール

Emacsパッケージの go-translate をインストールします。 MELPA からダウンロードできます。下記のコマンドでインストールできます。

1
M-x package-install RET go-translate RET

GUIでインストールしてもOKです。下記のような感じですね。

Emacsのpackage-installでgo-translateをインストール

ちなみにパッケージのGitHubは Emacs go-translate です。

go-translate の設定

init.el に下記のように記載すればOKです。 auth-keyのところのXXXXXは前述したDeepLのAPI認証キーを設定してください。 これで設定は終わりです。下記の例ではC-c tに翻訳機能を割り当てています。 翻訳したい文章をリージョン選択してC-c tを入力すると翻訳されるはずです!

Note

2025-07-26追記。 いつのまにかgo-translatorパッケージに互換性のない修正が入っていてサンプルコードが動かなくなっていましたので書き直しました。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
(require 'go-translate)
;; 翻訳設定

(use-package go-translate
  :if (boundp 'private-deepl-auth-key) ; DeepLキーが定義されている場合のみ有効化
  :bind ("C-c t" . gt-do-translate)
  :config
  (setq gt-langs '(ja en) )
  (setq gt-default-translator
        (gt-translator
         :engines (gt-deepl-engine :key "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXX:XX")
         :render (gt-buffer-render))))

C-c t で下記のようになればOKです!

EmacsからDeepL APIを使って日英翻訳するデモ

ちなみにコメントアウトしている箇所を変更するとGoogle翻訳を有効にしたり、 翻訳結果をキルリングに入れたりすることもできます!いろいろ試してみてください。

まとめ

今回は DeepL をEmacsから直接使う方法を紹介しました。 ブラウザにコピペする手間が省けて便利だと思います!