Answers:
在alpine中有“ NewMail FIFO Path”配置选项。引用帮助:
您可能已经让Alpine创建FIFO特殊文件(也称为命名管道),每次在当前文件夹,INBOX或任何打开的Stayopen文件夹中收到新消息时,该文件都会发送一条单行消息。为了防止两个不同的Alpine都写入相同的FIFO,Alpine将仅创建FIFO并对其进行写入(如果该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”命令进行编译。启动高山后,启动“高山通知者”。享受弹出式通知。
更新:
我对之前的回答不满意,因此我对脚本进行了很多改进,并为其编写了github存储库。
现在您不必在启动alpine之后再启动脚本,该脚本将为您处理所有事情。脚本的核心基本相同(我只改进了一点解析):
#! /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)
其余的内容都可以在这里发布,因此任何有兴趣的人都可以在仓库中获取。
content
和name
在某些情况下,小马车,这是一个有点傻,因为他们是我张贴的答案在所有的原因。= P
无法自定义alpine的“新邮件通知”。
配置文档中没有提及此类选项。
而且,这里是一个报价从爱德华Chappa邮件列表:
我注意到当收到一封新邮件时,alpine会通过闪烁屏幕在gnome终端中发出视觉警报。有什么方法可以自定义警报,例如,它发出声音或其他声音?
[..]
您现在可以猜到,高山只会发出哔哔声。在Web Alpine中,可以发送要播放的文件(到浏览器)以接收新邮件通知。在Unix,Mac或Windows Alpine中没有此类功能。
您现在可以选择:
并引用我最喜欢的邮件客户端的开发人员:
所有的邮件客户端都糟透了...
:-)