저는 알파인을 기본 메일 리더로 사용합니다. 비록 하루의 대부분을 터미널이나 Emacs에서 보내지만 알림 상자를 사용하여 새 메일에 대한 좋은 알림을 받는 것은 여전히 좋은 일입니다. 새 메일이 수신될 때 사용자 정의 명령을 실행하도록 Alpine을 구성할 수 있는 방법이 있습니까?
답변1
Alpine에는 "NewMail FIFO Path" 구성 옵션이 있습니다. 견적 도움말:
Alpine이 현재 폴더, 받은 편지함 또는 열려 있는 Stayopen 폴더에서 새 메시지가 수신될 때마다 메시지 줄을 보내는 FIFO 특수 파일(명명된 파이프라고도 함)을 생성하도록 할 수 있습니다. 두 개의 서로 다른 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의 "새 이메일 알림"을 사용자 정의할 수 없습니다.
기사에는 그러한 옵션이 언급되어 있지 않습니다.구성 문서.
여기 또 하나 있어요인용하다Eduardo Chappa의 메일링 리스트에서:
새 메일이 도착하면 Alpine이 화면을 깜박임으로써 gnome 터미널에 시각적 경고를 표시하는 것을 확인했습니다. 경고를 사용자 정의할 수 있는 방법이 있습니까? 예를 들어 소리를 재생할 수 있습니까?
[..]
지금쯤 추측할 수 있듯이 알파인은 경고음만 울립니다. Web Alpine에서는 재생할 파일을 (브라우저로) 보내 새 이메일에 대한 알림을 받을 수 있습니다. Unix, Mac 또는 Windows Alpine에는 이러한 기능이 없습니다.
이제 귀하의 옵션은 다음과 같습니다:
- 다음에 기능 요청을 작성하세요.알파인 정보 메일링 리스트
- 소스 코드를 얻고 패치를 작성하세요
- 다음과 같은 외부 도구를 사용하십시오.이메일 알림
내가 가장 좋아하는 메일 클라이언트의 개발자의 말을 인용하자면:
모든 이메일 클라이언트는 형편없어요...
:-)