더욱 안전하고 종이를 덜 사용하여wrapper:

더욱 안전하고 종이를 덜 사용하여wrapper:

나는 Mutt에서 print 명령을 구성할 수 있다는 것을 알고 있습니다 .muttrc. 예를 들면 다음과 같습니다:

set print=ask-yes
set print_command="..."

그런데 어떤 인쇄 명령을 사용해야 할까요?아름다운인쇄?

글쎄, a2ps바로가기를 사용하더라도 출력은 약간 초보적인 것처럼 보입니다 -=mail. 그것UTF8은 지원되지 않습니다.papsPango의 UTF-8-PostScript 변환기 사용' 현재 여백, 이메일 레이아웃 등에 대한 지원은 포함되지 않습니다.

mp: 기본 제목이 좋습니다. 다시 UTF8은 지원되지 않습니다. 기본 여백은 엄청나게 작습니다. 더 넓은 여백을 지정하면 본문이 바닥글 뒤에 인쇄됩니다.

enscript: -G멋진 헤더치고는 정말 멋집니다.UTF8 없음 지원하다.

21세기에는 Mutt에서 보낸 메일을 인쇄하기 위해 무엇을 사용하시나요?

(PS 및/또는 PDF로 UTF8, DIN A4 출력을 지원해야 함)

답변1

게다가소음. 그것하다UTF-8이 지원되며 기본적으로 출력이 좋아 보입니다. Muttprint는 LaTeX를 사용하고 사용자 정의 후크를 제공합니다.

다른 환경에서 메일을 인쇄하고 있기 때문에 기본 프린터를 사용할 수 없습니다. 그래서 ~/.muttrc프린터를 동적으로 선택할 수 있는 PDF 뷰어를 사용 하도록 설정했습니다 .

set print_command='set -e; f=`mktemp`; \
        muttprint -P A4 -p TO_FILE:"$f"; evince "$f"; rm "$f"'

Mktemp는 /tmp기본적으로 를 사용합니다. 사용자 정의 캐시 디렉토리를 사용하려면:

set print_command='set -e; f=`mktemp -p "$HOME"/.cache/mutt`; \
        muttprint -P A4 -p TO_FILE:"$f"; evince "$f"; rm "$f"'

그런데, print_decodemuttrc 내부 설정을 사용하여 MIME, 인코딩 등을 자체적으로 디코딩할 수 있도록 print_command를 구성할 수 있습니다. 기본적으로 yesetc. 명령에 대한 올바른 설정으로 설정되어 있습니다.muttprintenscript

a2ps, enscript 및 mp의 UTF-8 문제와 관련하여 우리는 그것들이 더 이상 사용되지 않는 것으로 간주되어야 한다는 결론을 내릴 수 있습니다. 실제로 프로젝트 페이지를 보면 유지 관리되지 않는 것 같습니다(예를 들어 mp 페이지의 마지막 뉴스는 2002년 뉴스이고 Sun의 메일링 목록을 언급합니다).

답변2

다음을 사용하는 것도 고려할 수 있습니다.아빠, UTF-8로 인코딩된 파일을 읽고 파일의 PostScript 언어 렌더링을 생성합니다. 렌더링은 윤곽 곡선을 생성하기 위해 pango ft2 백엔드를 사용하여 수행됩니다.

답변3

더욱 안전하고 종이를 덜 사용하여wrapper:

내 인쇄 명령은 다음과 .muttrc같습니다

set print_command="$HOME/bin/print_preview-wrapper.sh"

그리고 이런 내용이 있어요"$HOME/bin/print_preview-wrapper.sh"

#!/bin/bash

read tmpdir < <(mktemp -d /tmp/print_preview-$USER-XXXXXXXX)
cd $tmpdir || exit 1

trap "cd && rm -fR $tmpdir;exit" 0 1 2 3 6 9 15

cat >file.eml
muttprint -P A4 -p TO_FILE:file.ps <file.eml 

read numPages < <(sed '/^%%Pages/{s/%%Pages: //;q;};d' file.ps)
(( numPages > 1 )) &&
    muttprint -2 -P A4 -p TO_FILE:file.ps <file.eml 

gv file.ps

이것은 것이다

  • 현재 인쇄된 메일을 저장할 임시 디렉토리를 안전하게 생성하고,
  • 포스트스크립트로 변환하지만
    • 1페이지를 초과하는 경우,
    • 다시 변환하되 2페이지를 차례로 배치하십시오.
  • 마음에 들기 때문에 실행하세요 gv. 하지만 다른 도구를 실행할 수도 있습니다.
  • 종료 시 임시 디렉터리를 삭제합니다.

답변4

다음은 다양한 UNIX에서 사용한 간단한 접근 방식입니다.

set print_command="iconv --unicode-subst="_" -f utf-8 -t iso-8859-1 | enscript -P ••My_printer••"

••My_printer••프린터 이름은 어디에 있습니까?

관련 정보