Alpine에서 새 이메일 알림을 사용자 정의하는 방법은 무엇입니까?

Alpine에서 새 이메일 알림을 사용자 정의하는 방법은 무엇입니까?

저는 알파인을 기본 메일 리더로 사용합니다. 비록 하루의 대부분을 터미널이나 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에는 이러한 기능이 없습니다.

이제 귀하의 옵션은 다음과 같습니다:

내가 가장 좋아하는 메일 클라이언트의 개발자의 말을 인용하자면:

모든 이메일 클라이언트는 형편없어요...

:-)

관련 정보