groff 매크로 파일의 입력 인코딩

groff 매크로 파일의 입력 인코딩

-K옵션을 사용하면 troff 파일의 인코딩을 지정할 수 있지만 매크로 파일에서는 작동하지 않는 것 같습니다. 사용자 정의 매크로 파일의 문자열에 ASCII가 아닌 문자가 포함된 경우 출력은 다음과 같습니다.

Mit freundlichen GrüÃen,

내 설정은 다음과 같습니다.

# letter_to_doe.tr
.recipient John Doe
.text Sehr geehrter Herr Doe ...
# letter.tmac
.de recipient
.\" ...
..
.de text
.\" ...
..

Mit freundlichen Grüßen

tmac 파일에서 ASCII가 아닌 문자를 올바르게 변환하는 방법은 무엇입니까?

답변1

preconv -e utf8모든 UTF-8 문자를 토큰으로 바꾸려면 매크로 파일을 변환하세요 troff.

보여주신 예제에서는 letter매크로를 넣은 letter.tmac.in다음 다음을 letter.tmac사용하여 매크로를 생성합니다.

preconv -e utf8 letter.tmac.in >letter.tmac

이것은 문제가 있는 라인을 대체합니다

Mit freundlichen Grüßen

그리고

Mit freundlichen Gr\[u00FC]\[u00DF]en

...생성된 파일에서.

이는 매크로 파일을 업데이트할 때마다 수행해야 하는 일회성 변환입니다. Makefile의 규칙이 되기에 완벽합니다.

letter.tmac: letter.tmac.in
        preconv -e utf8 letter.tmac.in >letter.tmac

관련 정보