mutt: 읽음으로 표시하고 삭제

mutt: 읽음으로 표시하고 삭제

일부 메시지를 읽지 않고 삭제했습니다. 그런데 위 메일을 삭제하고 나니 곧 휴지통에 읽지 않은 메일이 있다는 알림이 떴습니다.

다음과 같은 방법이 있습니까?

  • set beep_new휴지통에서 새 메시지가 발견되면 알림을 비활성화합니다( ).
  • 또한 메시지를 읽음으로 표시하고 삭제하시겠습니까?

전자는 휴지통 폴더 후크를 사용하여 얻을 수 있고 후자는 매크로를 사용하여 얻을 수 있다고 생각합니다. 그러나 후자의 경우 메시지( Wn) 또는 전체 스레드( ^R)를 읽음으로 표시한 후 폴더 내 메시지 위치에 따라 선택한 항목이 변경되거나 변경되지 않을 수 있습니다.

그런 다음 조건을 사용하여 항목 탐색 명령을 사용하여 선택 항목을 복원하는 방법을 결정해야 합니다. 선택을 복원한 후 메시지를 삭제할 수 있습니다. 공식 문서에 따르면 구성 파일은 조건을 지원하지 않으므로 매크로 기반 솔루션에는 셸 스크립트를 통한 파이핑이 포함될 수 있습니다.

어쩌면 내가 간과하고 있는 더 간단한 해결책이 있을까요?

답변1

메시지를 읽음으로 표시하고 동시에 삭제하려면 set resolve=no명령 앞에 사용하여 다음 메시지로 건너뛰지 않도록 할 수 있습니다. 이렇게 하면 조건 등을 확인할 필요가 없습니다. 작업이 완료되면 커서는 그대로 유지됩니다.

예를 들어, 다음 명령을 사용하여 메시지를 보관 메일 디렉터리로 이동하기 전에 읽음으로 표시합니다.

macro index,pager a ":set confirmappend=no delete=yes resolve=no\n<clear-flag>N<tag-prefix><save-message>=archive\n:set confirmappend=yes delete=ask-yes resolve=yes\n<next-undeleted>"

이는 다음을 수행합니다.

  • resolve=no다음 메시지로 점프하지 않는 것을 포함하여 작업 전에 일부 값을 설정하십시오.
  • 읽지 않은 플래그를 지웁니다.<clear-flag>N
  • 내 보관함에 메시지 저장:<tag-prefix><save-message>=archive
  • 다음을 포함하여 일부에 응답하도록 값 설정을 지정합니다.resolve
  • 삭제되지 않은 다음 메시지로 이동:<next-undeleted>

따라서 읽음 및 삭제로 표시하려면 다음과 같이 작동해야 합니다.

macro index,pager d ":set confirmappend=no delete=yes resolve=no\n<clear-flag>N<tag-prefix><delete-message>:set confirmappend=yes delete=ask-yes resolve=yes\n<next-undeleted>"

답변2

이 옵션을 활성화하면 imap_check_subscribed모든 IMAP 구독 폴더가 자동으로 사서함 목록에 추가됩니다.

이 명령은 unmailboxes목록에서 사서함을 제거하는 데 사용할 수 있습니다 mailboxes. 따라서 파일에 다음을 추가할 수 있습니다 .muttrc.

push ":unmailboxes +[Gmail]/Trash<enter>"

이 명령은 구성 파일( )을 읽어온 후 메일함 목록을 검색하여 추가하기 unmailboxes때문에 직접 사용할 수 없으므로 꼭 필요합니다 .imap_check_subscribed.muttrcpush

답변3

가장 확실한 방법은 새 메일의 메일함 목록에 "휴지통"이 포함되어 있지 않은지 mutt에서 확인하는 것입니다.

즉, 사서함에 휴지통 폴더를 추가하지 마십시오.

예를 들어 다음을 사용하여 이메일 목록을 생성하는 경우:

우편\
  /var/spool/mail/사용자 이름 \
  `Find~/Mail -type f xargs`

grep -v trashcan |그런 다음 다음과 같이 xargs 앞에 추가하십시오.

`찾기~/메일 -유형 f | grep -v xargs`

관련 정보