![A photograph of a bundle of mail envelopes spread on a surface.](https://img.gamepuro.com/assets/uploads/2023/11/email-in-emacs-offlineimap-notmuch-00-featured-image.jpg)
Emacsは強力なアプリケーションである。日々のワークフローの様々な部分を一つのまとまったユーティリティに統合することができます。Eメールの管理にも使えます。ここでは、Emacsで電子メールの受信トレイを統合する方法と、EmacsとGmailを適切にリンクして、Gmailから直接電子メールを送受信する方法を紹介します。
ヒント Emacsのキーボードショートカットをダウンロードして、生産性を向上させましょう。
Emacsにメールをセットアップする
Offlineimapと Notmuchを使えば、Emacsに簡単にメールボックスを追加できます。Orgバッファにメールを保存し、注釈を付けたり、カレンダーにToDoとして保存することができます。また、Orgバッファに記事を書いてメールとして送信することもできます。
Offlineimapのインストール
Offlineimapはリモートサーバーからメールを取得し、ディスクに保存するヘルパープログラムです。
以下のコマンドを実行して、このプログラムをシステムにインストールしてください:sudo apt installofflineimap
pacman を使って Arch Linux に Offlineimap をインストールすることもできます:
sudopacman-Sofflineimap
RHELとFedoraでは、dnfを使うことができます:
sudo dnf installofflineimap
Offlineimapのセットアップ
お気に入りのテキストエディタを使って、Offlineimapインストール用のユーザー設定ファイルを作成します:
nano /home/$USER/.offlineimaprc
nano /home/$USER/.offlineimaprc]新しい設定ファイル内に以下のブロックコードを貼り付けます:
[general]accounts = gmailaccount[Account gmailaccount]localrepository = localgmail remoterepository = remotegmail[Repository localgmail]type= GmailMaildir localfolders =/home/$USER/mail/[email protected][Repository remotegmail]type= Gmail maxconnections =1remotehost = imap.gmail.com remoteuser = [email protected] remotepass= your_password_goes_here ssl =yessslcacertfile =/your/ca/cert/path/here
localfolders "変数と "remoteuser "変数内のメールアドレスを、あなたのGmailアカウントに置き換えてください。
![A terminal showing the Offlineimap information for email in Emacs.](https://img.gamepuro.com/assets/uploads/2023/11/email-in-emacs-offlineimap-notmuch-01-offlineimap-config-sample.png)
システムに適切なシステム証明書ファイルがあるか確認する:
ls /etc/ssl/certs/
証明書ファイルの絶対パスをコピーし、"sslcacertfile "変数に貼り付けます。
![A terminal showing a sample certificate path for Offlineimap.](https://img.gamepuro.com/assets/uploads/2023/11/email-in-emacs-offlineimap-notmuch-02-ssl-certificate-sample.png)
知っておいて損はない: OpenSSLを使用して自己署名証明書を作成することで、SSLとその仕組みについてさらに学びましょう。
Offlineimap用Gmailアプリのパスワードの取得
Gmailアカウントを開き、ページ右上のユーザーアイコンをクリックします。
![A screenshot highlighting the user icon on the Gmail webpage.](https://img.gamepuro.com/assets/uploads/2023/11/email-in-emacs-offlineimap-notmuch-03-select-user-icon-gmail-800x617.jpg)
"Googleアカウントの管理 "をクリックします。
![A screenshot highlighting the "Manage your Google Account" button.](https://img.gamepuro.com/assets/uploads/2023/11/email-in-emacs-offlineimap-notmuch-04-select-manage-google-account-800x617.jpg)
ページの左サイドバーにある "セキュリティ "カテゴリーをクリックし、2段階認証が現在アカウントで有効になっていることを確認します。
2段階認証」メニュー項目を選択します。![A screenshot highlighting the 2-Step Verification button inside the Security page.](https://img.gamepuro.com/assets/uploads/2023/11/email-in-emacs-offlineimap-notmuch-05-select-2-step-verification-gmail-800x617.png)
認証ページを一番下までスクロールし、「App Passwords」ボタンをクリックします。
![A screenshot showing the App Password button inside the Verification prompt.](https://img.gamepuro.com/assets/uploads/2023/11/email-in-emacs-offlineimap-notmuch-06-select-app-password-category-800x617.png)
新しいアプリパスワードの名前を入力し、"作成 "をクリックします。
![A screenshot showing a sample App Password prompt.](https://img.gamepuro.com/assets/uploads/2023/11/email-in-emacs-offlineimap-notmuch-07-select-create-app-password-800x617.png)
青いボックス内のテキストを別のメモ帳にコピーし、"完了 "をクリックします。
.offlineimaprcファイルに戻り、変数 "remotepass "の値をアプリパスワードに置き換えます。![A terminal highlighting the remotepass variable for Offlineimap.](https://img.gamepuro.com/assets/uploads/2023/11/email-in-emacs-offlineimap-notmuch-08-highlight-remotepass-variable-offlineimap.png)
参考: Gmailを使って完全に暗号化されたメールを送信する方法についてはこちらをご覧ください。
Notmuchのインストール
Notmuchはメールをタグ付けして表示するシンプルなアプリケーションです。Notmuchは、すべてのメールのデータベースを管理し、それらにタグを付けることによってこれを行います。Notmuchは、それらのタグを使ってEmacsでメールを整理し、表示します。
notmuchユーティリティをシステムにインストールします:sudo apt installnotmuch
Arch Linux では pacman を使って notmuch をインストールすることもできます:
sudopacman-Snotmuch
RHEL と Fedora では dnf を使ってインストールできます:
sudo dnf installnotmuch
Emacsクライアントを開き、Ctrl+Xを押し、Fを押す。
ホーム・ディレクトリ内のクライアントの".emacs "ファイルに移動する。 そのファイルの中に以下のコードを貼り付けます:(require 'package)(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/"))(package-initialize)
notmuchパッケージをインストールするには、Alt+Xを押し、package-installと
入力します。Emacsがインストールしたいパッケージの名前を聞いてきます。"notmuch "と入力してください。
![A screenshot showing the MELPA repository information for email in Emacs.](https://img.gamepuro.com/assets/uploads/2023/11/email-in-emacs-offlineimap-notmuch-09-install-notmuch-emacs-frontend.png)
インストールされると、このパッケージはnotmuchのフロントエンドとして機能します。
notmuchのセットアップ
まず、offlineimapが正しく動作し、Gmailアカウントから利用可能なメールをすべて取得していることを確認します:
オフラインマップ
完了したら、コマンドラインでnotmuchを
実行する。そうすると、設定スクリプトが起動し、特定のメール設定について尋ねます。
リンクさせたいGmailアカウントのフルネームを入力し、Enterキーを押します。
![A terminal showing the notmuch welcome prompt for email in Emacs.](https://img.gamepuro.com/assets/uploads/2023/11/email-in-emacs-offlineimap-notmuch-10-notmuch-set-full-name.jpg)
リンクさせたいアカウントの完全なGmailアドレスを入力し、Enterを2回押します。
もう一度Enterを2回押して、notmuchのデフォルトメールディレクトリとメールボックスのデフォルトタグを受け入れます。
以下のコマンドを実行してnotmuchのデータベースを初期化します:notmuch new
これで設定ファイルが読み込まれ、適切なデフォルトに基づいてデータベースが作成されます。ここから、notmuchのタグ付けコマンドを使って、受信メールと既存メールの両方にタグを付けることができます。
Emacsでメールを見る
この時点で、Emacsでメールを表示できるようになりました。Alt+Xを押しながらnotmuchと
入力すると、Emacsでnotmuchフロントエンドがロードされます。
![A screenshot showing the notmuch email frontend in Emacs.](https://img.gamepuro.com/assets/uploads/2023/11/email-in-emacs-offlineimap-notmuch-11-select-notmuch-inbox.png)
Ctrl+Nを押すと、"inbox "タグの付いたすべてのメッセージをスクロールダウンできます。
![A screenshot showing a notmuch email list in Emacs.](https://img.gamepuro.com/assets/uploads/2023/11/email-in-emacs-offlineimap-notmuch-12-sample-inbox-contents-notmuch-1.jpg)
それとは別に、特定のタグを表示しているときにShift+Zキーを押すことで、「ツリースタイル」表示をトリガーすることもできます。これは、メーリングリストを購読しているときに便利です。
Emacsでメールを送る
Eメールのサポートを有効にするには、.emacsファイルを開き、次のコードのブロックを貼り付けます:
(setquser-mail-address"[email protected]" user-full-name"Ramces Red")(setqmail-user-agent 'message-user-agent)(setqmessage-send-mail-function 'smtpmail-send-it smtpmail-stream-type 'starttls smtpmail-smtp-server"smtp.gmail.com"smtpmail-smtp-service587)
Emacsがメールアカウントを通してメールを送信できるようにする必要があります。ホームディレクトリに".authinfo "ファイルを作成します:
touch /home/$USER/.authinfo
touch/home/$USER/.authinfo。注意すべき重要な点は、このファイルにはユーザー名やパスワードなどの機密情報が含まれるということです。したがって、自分だけが読み書きできるように、アクセス権を保護する必要がある:
chmod 600 /home/$USER/.authinfo
そこから、新しいauthinfoファイル内に以下のコード行を貼り付ける:
マシン smtp.gmail.comログイン [email protected]ポート587パスワード#REPLACE-ME#
メールアドレスはGmailアカウントの完全なアドレスに、「#REPLACE-ME#」の値はアカウントのアプリパスワードに置き換えてください。
![A screenshot showing a sample credentials for email in Emacs.](https://img.gamepuro.com/assets/uploads/2023/11/email-in-emacs-offlineimap-notmuch-13-authinfo-sample-credentials.png)
Emacsをリロードして新しい設定を適用します。
Emacsで最初のメールを準備する
Emacsからメールを送信するには、notmuchバッファ内でCtrl+XまたはMを押します。これでメッセージ・バッファが作成され、空の見出しにメッセージを入力することができます。
![A screenshot showing a sample email using SMTP sendit in Emacs.](https://img.gamepuro.com/assets/uploads/2023/11/email-in-emacs-offlineimap-notmuch-14-sample-notmuch-email-prompt.png)
入力が終わったら、Ctrl+C,Ctrl+Cを押して、Emacsから最初のメールを送信します。
Emacsで電子メールを使うことは、この強力なテキストエディタでできる数少ないことのひとつに過ぎません。例えば、EMMSを使えばEmacsを音楽プレーヤーとして使うこともできるし、Elfeedを使えば本格的なRSSリーダーとして使うこともできる。
一方、Emacsの使い勝手を素早く向上させる小さな微調整をお探しなら、この拡張性の高いテキストエディタ用の便利な5つのパッケージをチェックしてみてほしい。
画像クレジット:Joanna Kosinka via Unsplash.すべての改変とスクリーンショットはRamces Redによる。