나는 Mutt에서 print 명령을 구성할 수 있다는 것을 알고 있습니다 .muttrc
. 예를 들면 다음과 같습니다:
set print=ask-yes
set print_command="..."
그런데 어떤 인쇄 명령을 사용해야 할까요?아름다운인쇄?
글쎄, a2ps
바로가기를 사용하더라도 출력은 약간 초보적인 것처럼 보입니다 -=mail
. 그것UTF8은 지원되지 않습니다.paps
Pango의 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_decode
muttrc 내부 설정을 사용하여 MIME, 인코딩 등을 자체적으로 디코딩할 수 있도록 print_command를 구성할 수 있습니다. 기본적으로 yes
etc. 명령에 대한 올바른 설정으로 설정되어 있습니다.muttprint
enscript
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••
프린터 이름은 어디에 있습니까?