私はアルパインをデフォルトのメールリーダーとして使用します。ターミナルやEmacsから1日のほとんどを送信しますが、通知ボックスを使用して新しいメールに関する良い通知を受け取ることはまだ良いことです。新しいメールを受信したときにカスタムコマンドを実行するようにAlpineを設定する方法はありますか?
答え1
Alpineには「NewMail FIFO Path」設定オプションがあります。見積もりのヒント:
Alpineに、現在のフォルダ、受信トレイ、または開いているStayopenフォルダから新しいメッセージが受信されるたびにメッセージ行を送信するFIFO特殊ファイル(名前付きパイプとも呼ばれる)を生成させることができます。 2つの異なるAlpineが同じFIFOに書き込むのを防ぐために、AlpineはFIFOのみを生成し、存在しない場合にのみ書き込みます。
そこで、オプションを「/tmp/alpine.fifo」に設定し、FIFOからメッセージを読み取り、「notify-send」を呼び出す簡単なユーティリティを作成しました。
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <string.h>
#include <fcntl.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
#define FIFO_NAME "/tmp/alpine.fifo"
int main(void)
{
char s[512];
char cmd[512];
int num;
int fd = open(FIFO_NAME, O_RDONLY);
do {
if ((num = read(fd, s, 300)) == -1)
perror("read");
else {
s[num] = '\0';
sprintf(cmd, "notify-send -t 0 'New mail:' '%s'", s);
system(cmd);
}
} while (num > 0);
return 0;
}
これをalpine-notifier.cに保存し、 "gcc alpine-notifier.c -o alpine-notifier"コマンドを使用してコンパイルします。アルパインの起動後、「alpine-notifier」を起動します。ポップアップ通知をお楽しみください。
答え2
修正する:
以前の答えが満足できなかったので、スクリプトを大幅に改善しました。githubリポジトリそれのために。
これで、アルパインを起動した後にスクリプトを起動する必要はありません。スクリプトはすべてを処理します。スクリプトの中心はほとんど同じです(解析を少し改善しただけです)。
#! /bin/bash
while read L; do
n=$(($n + 1))
if [[ n -gt 3 ]]; then
name=`echo "$L" | sed 's/ \+/\t/g;s/^\(+ \)\?\([^\t]*\)\t\([^\t]*\)[\t ].*/\2/'`
subject=`echo "$L" | sed 's/ \+/\t/g;s/^\([^\t]*\)\t\(Re: \?\)\?\([^\t]*\)[\t ].*/\3/'`
box=`echo "$L" | sed 's/ \+/\t/g;s/^\([^\t]*\)\t\([^\t]*\)[\t ]\([^\t]*\).*/\3/'`
notify-send -t 10000 $iconcommand "Mail from $name" "$subject\n-\nIn your $box."
fi
done < <(cat alpine.fifo)
残りはここに投稿するには大きすぎるので、興味のある人は誰でも確認できます。買戻契約。
答え3
Gnubiff、電子メール通知、kbiffなどの専用電子メール通知ツールは利用できませんか?
答え4
Alpineの「新しいEメール通知」をカスタマイズすることはできません。
記事にはそのようなオプションは記載されていません。構成文書。
ここにもう一つあります。引用するEduardo Chappaのメーリングリストから:
新しいメールが届いたら、Alpineは画面を点滅させ、gnome端末に視覚的な警告を表示することを確認しました。警告をカスタマイズする方法はありますか?たとえば、音を再生できますか?
[..]
今頃推測できるように、アルパインは警告音だけ鳴ります。 Web Alpineでは、再生するファイルを(ブラウザに)送信して、新しい電子メールに関する通知を受け取ることができます。 Unix、Mac、またはWindows Alpineにはこれらの機能はありません。
今、あなたのオプションは次のとおりです。
- 次に機能リクエストを作成してください。アルパイン情報メーリングリスト
- ソースコードを入手してパッチを書く
- 次の外部ツールを使用してください。メール通知
私が好きなメールクライアントの開発者の言葉を引用すると、
すべての電子メールクライアントは不便です...
:-)