KTUGFaq

KTUG FAQ

로그인:
비밀번호:
가입
He is truly wise who gains wisdom from another's mishap.
FrontPage › Karnes-PrivateTmpPage
이 페이지의 내용은 Karnes 페이지가 너무 길어져서 정리한 것으로서 대부분 현재 무의미하거나 더이상 사용하지 않는 것들입니다. -- Karnes 2005-12-31 12:15:07

목차

1 Obsoletes
1.1 memhangul : memoir에서 한글을 쓰자 (1)
1.2 알림
1.3 hangul-k 사용자 설명서
1.4 한글 PDF 작성하는 법
2 개인적인 설치 패키지, 폰트 설정 묶음
2.1 hkpatches.sty : hangul-k 패치 스타일
2.2 u8hangul 설치용 패키지
2.3 Beamer와 한글
2.4 DocBook2Lambda Stylesheet
2.5 parenactive.sty
2.6 HLaTeXk
2.6.1 특징
2.6.2 설치 전 요구사항
2.6.3 설치
2.6.4 사용
2.6.5 기타
2.7 ktugplain.bst
3 CJKLaTeXHLaTeX을 함께 쓰기 (hlatexcjk.sty)
4 완성형 밖의 한글
4.1 그림으로 글자 처리하기
5 HLaTeX에 대한 기여 : 한글 문서 작성의 여러 가지 기능들
5.1 sectsty의 수정 : hsectsty.sty
5.2 setspace의 수정 : hsetspace.sty
5.3 HLaTeX에 대한 조그만 기여 : ganasection.sty
5.4 HLaTeX과 ulem 패키지
5.5 \emph 명령에 적용되는 한글과 영문 글꼴
6 한글LaTeX길잡이 PDF 다시 만들기
6.1 hlguide-ks의 소스
6.2 부록(appendix)이 있는 경우 책갈피의 hyperlink
6.3 한글 책갈피 만들기
7 성경 조판에 관한 몇 가지 시험
7.1 첫번째 시도. 원문대조
7.2 Greek 폰트에 관하여
7.3 두번째 시도, 비평판의 편집
7.4 ArabTeX, BHS

1 Obsoletes

2005-07-07 Karnes에서 옮겨옴.

1.1 memhangul : memoir에서 한글을 쓰자 (1)

1.2 알림

  • memhangul은 obsolete입니다. memhangul-ucs를 이용하시기 바랍니다.
  • 개발이 중단된 마지막 버전 memhangul => [http]memhangul-obsolete.zip

1.3 hangul-k 사용자 설명서

See. HANGULkStyle. (아래 "한글 PDF 작성하는 법" 문서를 포함하였습니다.)

1.4 한글 PDF 작성하는 법


2004-05-08 최종 수정. 완료.

2004-05-07 Birthday Version

2004-05-06 담배 한 갑을 소비한 문서입니다. 아무래도 cigarettware로 배포해야 할 듯. :) 아직 초고 상태이므로 읽어보시고 잘못된 곳을 지적해주세요.

2 개인적인 설치 패키지, 폰트 설정 묶음

2.1 hkpatches.sty : hangul-k 패치 스타일

2004-12-05 hangul-k가 일부 패키지에서 문제를 일으키는 것을 수정하기 위한 패치. hangul-k 20041205 버전에 반영하였다.
  • htpatches.sty(2004/12/04)

2.2 u8hangul 설치용 패키지

2004-10-15 2002년에 은광희, 조진환, 신정식 님이 만든 u8hangul과 mslvt를 설치용 패키지로 묶었다. 개인적인 설정인 ohanyang 패키지의 설정이 일부 차용된 관계로 우선 이 홈페이지에 올려둔다. Uploads:u8hangul.zip

  1. 옛한글은 ohanyang 패키지의 obatang, ogulim 폰트를 사용하도록 함.
  2. 현대한글은 은글꼴을 사용하도록 함.
  3. 바탕체 이외에 돋움체 설정을 추가함.
  4. mslvt는 신정식 님에 의하여 수정된 mslvt2.sty를 mslvt.sty로 이름을 바꾸고 그것만을 포함함.
  5. u8hangul.sty는 신정식 님에 의하여 수정된 05/09/2002 버전을 포함함.
  6. root는 hlatex-texmf로 함.

사전에 설치되어야 할 것: HLaTeX, 은글꼴, ohanyang 패키지. 디렉토리 구조에 맞도록 풀어놓은 후 texhash하고 doc/u8hangul에 있는 파일들로 테스트해볼 수 있음.

2.3 Beamer와 한글

2004-10-13 beamer는 DVIPDFMx를 지원하지 않는다. PSTricks를 쓴다면 dvips/ps2pdf를 이용해야 하고 그렇지 않으면 PDFLaTeX으로 컴파일한다. 그런데 재미있게도 utf8 옵션과 cjk 옵션을 제공한다. (example 중에는 중국어가 들어 있는 beamerexample4.tex이 있다.) 이것을 이용해보기로 했다. PDFLaTeX으로는 어차피 텍스트 검색/추출과 책갈피는 기대할 수 없으므로 포기하고, 그 대신 윈도의 굴림체를 이용하기로 한다. PDF : [http]Beamer_Hangul_Font_Test(PDF) SRC : [http]Beamer_Hangul_Font_Test(UTF-8)

2.4 DocBook2Lambda Stylesheet

2004-10-01 DocBook에서 얻어진 xml 파일을 변환하는 문제와 관련해서 아직까지 xmltex 쪽은 한글 문제의 해결이 요원하지 않은가 하는 생각이 듭니다. 우선 급한 대로, DHHangul을 이용하는 lambda 파일(.tex)로 변환하기 위한 스타일시트를 작성해보았습니다. 이것은 XML2LaTeX 페이지에 소개되어 있는 [http]XML2LaTeX.xsl을 UTF-8로 바꾸고 dhhangul을 사용하도록 수정한 것입니다. 원래의 xsl은 LaTeX 2.09로 변환하도록 되어 있는 것이었는데 손보면서 몇 가지 수정을 가했습니다. 알파버전이고 범용으로 쓰기에는 아직 멀었다고 생각합니다.

이 프로젝트에 관심있는 분이 많았으면 좋겠습니다.

ToDo: 다음 단계에서 해야 할 일입니다.
  1. <para> 구현
  2. <footnote> 구현
  3. <Table> 구현 : 이건 쉽지 않을 듯....

    이 프로젝트에 관심 무지하게 많습니다. 그런데 XML 관련 소프트웨어가 너무 많아서 어디서부터 손댈지 몰라 헤매고 있습니다만, 이 시험 파일이 저의 이해를 높이는 데에 큰 도움이 되었습니다. 그러나 dvipdfmx로 pdf를 만드는 데에는 실패했습니다. 오류는 이렇습니다. `pdf_add_dict: Passed invalied value'. 좌우지간 장차 아주 많은 문서들이 정보는 XML로 작성하고 서식은 TeX을 이용하게 되리라 전망합니다. --hoze
    이 오류는 이전 버전의 dvipdfmx이 종종 보이는 것인데... DVIPDFMx을 새로 컴파일해서 시도해보시지요... --Karnes

2.5 parenactive.sty

2004-07-27 KTUGBoard:3458에서 hoze 님이 제기한 문제에 대한 답변으로 작성된 스타일. 완전한 작동을 보증할 수 없어서 우선 이곳에 올려둔다.

문제 상황 : 한글 문서를 작성할 때 한글 단어 뒤에 괄호 안에 영어를 부기하는 수가 있다. 이 단어가 행 끝에 걸리게 되면 괄호에서 행나눔이 일어나지도 않을 뿐더러, 영어 단어 자체에서도 하이퍼네이션이 작동하지 않는다. 또, 닫는 괄호 다음에 조사가 오게 되면 괄호와 조사가 엉켜서 조사만 행나눔이 일어나도록 하면 좋겠다는 생각이 드는 상황이 가끔 발생한다.

해결책 : ()CategoryCode를 active(13)로 한 다음 이 문자가 오면 \space를 하나 주어서 다른 단어인 것처럼 여기게 만들고 행나눔을 적절하게 억제하자는 것이다. 간격은 마이너스 \hskip을 주면 괄호와 단어 사이가 너무 붙어서 보기 싫던 문제까지 해결할 수 있다. 그러나 : 괄호의 CategoryCode를 일괄 변환하는 것은 위험이 너무 크다. 그러므로, 이런 상황에서 사용자는 \sparen 명령을 이용해서 괄호 안에 들어갈 어구를 이 명령의 인자로 주고, LaTeX에게 이것을 괄호 안의 텍스트로 처리하게 한다. 어차피 이럴 것이라면 catcode를 바꾸지 말고 그대로 인자를 괄호 안에 식자하게 하면 되지 않는가? 그렇지만 이따금 사용자는 문서 전체에 대하여 괄호를 일괄 동작하게 바꾸고 싶을 때가 있다. 그럴 경우를 대비하여 \makeparenactive 명령과 \makeparenother 명령을 제공하여, 문서 전체에 대하여 괄호의 일괄 처리를 가능하게 하였다. 이 방식을 쓸 때는 예컨대 장절명령의 인자에 괄호가 없는지, bmsec과 같이 괄호를 이용하는 패키지가 실려 있지는 않은지 사용자 자신이 주의하여야 할 것이다.


\sparen? : 원래 이 명령은 한글 문서에서 괄호 안의 주석을 본문보다 조금 작게 식자하는 관행에 맞추기 위해 만들었던 명령이었다. 이런 목적으로 쓰려면 {#1}{\small #1}로 바꾸면 된다. 이렇게 글자를 작게 하지 않는 별도의, 예컨대 \eparen 명령을 정의하여 두 가지 paren 명령을 사용할 수도 있다.

2.6 HLaTeXk

2004-04-20 HLaTeXk심심해서 만들어본 것입니다. 새로운 매크로 패키지는 아니고(사실 엄밀히 말해서 완전히 새로운 것은 있을 수도 없겠지만) HLaTeX을 조금 변형한 것입니다.

[http]texmf-hlatexk.tar.gz
  • 2004-04-22 0.002 (글꼴 대응 채택)

2.6.1 특징

  1. hLaTeXp처럼 format 파일을 별도로 만드는 방식입니다.
  2. hLaTeXp 호환성을 강화하여, 대부분의 hLaTeXp로 작성된 문서가 다른 처리 없이 컴파일됩니다. 다만 서체는 hLaTeXp의 신명조/화명조등을 구할 수 없는지라 HLaTeX 방식을 그대로 사용합니다. 그 결과 컴파일된 문서의 줄나눔이 원본과 달라질 수 있습니다.
  3. hlatexcjk 패키지를 내장하였습니다. \urchr, \UNI 등의 명령을 사용할 수 있습니다.
  4. 글꼴은 은글꼴을 기본으로 채택하였습니다. 그리고 obt, ogt 두 개의 글꼴이 추가로 더 제공되는데, 이것은 사용자가 선택할 수 있도록 하였습니다. 기본은 한컴바탕, 한컴돋움입니다.
  5. DVI없는 TeX 시스템을 지향합니다. ;) PDF로의 출력을 기본으로 생각하고 만들었습니다.

2.6.2 설치 전 요구사항

  1. hbatang.ttfhdotum.ttf가 있어야 합니다. 아래아한글을 설치하면 이 폰트도 시스템 폰트 디렉토리에 설치됩니다.
  2. HLaTeX, CJK 패키지가 필요합니다.
  3. 은글꼴이 필요합니다. DohyunKim 님의 통합 TEXMF TREE를 설치하십시오.

2.6.3 설치

시험삼아 사용해보실 분을 위한 지침입니다.
  1. 압축을 풀면 texmf 트리가 하나 생기고 texmf-hlatexk/_misc_files에 makefont.bat, hlatexk.bat, hlatexk, unttf.sty 파일이 있습니다.
  2. texmf-hlatexk/misc_files 에 있는 unttf.sty를 은글꼴이 설치된 위치의 texmf-Un/tex/latex/hlatex/unttf에 이미 있는 unttf.sty와 교체하십시오.
  3. hlatexk.bat를 PATH가 걸려 있는 디렉토리로 이동하십시오.
  4. 사용자의 dvipdfmx.cfg에 f hlatexk.map을 추가하십시오.
  5. 적당한 디렉토리에서 tex -ini hlatexk.ltx를 실행하면 그 디렉토리에 hlatexk.fmt가 생깁니다. 이 포맷 파일을 texmf/web2c 디렉토리로 옮겨두십시오. Don't forget to run mktexlsr.
  6. 기본 폰트는 한컴바탕, 한컴돋움입니다만, 이 obt, ogt 글꼴을 바꾸고 싶으시다면 makefont.bat를 수정하여 사용해보시기 바랍니다.
  7. texmf-hlatexk/tex/latex/hlatexk/FDs 디렉토리에는 여섯 개의 *.fd 파일이 있습니다. 은글꼴에 현재 만들어져 있는 동일한 이름의 *.fd를 백업해두시고 이것으로 교체하십시오.(goto texmf-un/tex/latex/hlatex/unttf/) HLaTeXk는 기울임체를 쓰지 않고 글꼴 대응 방식을 채택할 예정입니다.

2.6.4 사용

  1. 명령행에서는 hlatexk.bat을 실행하십시오. 혹은 tex "&hlatexk" foo와 같은 형식을 써도 됩니다.
  2. 예제는 texmf-hlatexk/doc/latex/hlatexk/sample.texhltxman.tex이 있습니다. 두번째 예제는 hLaTeXp 파일의 컴파일 여부를 시험하기 위한 것입니다.
  3. 스타일명을 쓰지 않아도 한글을 식자할 수 있습니다.
  4. \usepackage{hlatexk-nopdf}HLaTeX의 조사 기능을 이용합니다.
  5. \usepackagehlatexp{hlatexk-nopdf}hLaTeXp 문서를 컴파일하도록 설정해줍니다.
  6. \usepackage{hlatexk}는 문서의 기본 행간, 자간을 자동으로 설정해줍니다.
  7. hangul이라는 스타일은 사용하지 않습니다. 기존 문서에 \usepackage{hangul}이 있으면(HLaTeX이든 hLaTeXp이든) 이것은 \usepackage{hlatexk} 등으로 고쳐주십시오.

2.6.5 기타

  1. hLaTeXp 문서 가운데 컴파일에 실패하는 것은 꼭 알려주십시오.
  2. 그밖에 문제가 있으면 알려주십시오.

2.7 ktugplain.bst

2003-10-29 HTeXBookBib페이지에 올린 ktugplain-031028.bst에 관한 사항입니다. 현재 작성중인 htexbook.bib을 실제로 문서에서 사용할 수 있고, plain.bst와 호환성을 유지하도록 하려고 이 BSTFile을 만들었습니다. 현재는 시험판이지만, 앞으로 개선되어 가겠지요.

고민한 것은 다음과 같은 점이었습니다.
  1. 영문 문헌과 한글 문헌의 제목 기술 방식이 다르다는 점. 자연과학쪽 문헌은 그렇지 않은 듯한데 유독 인문사회과학 계통에서는 『』과 같은 것으로 책 제목을 둘러싸는 관행이 있습니다.
  2. 영문의 책 제목은 italic이 좋지만 한글 책제목은 이탤릭으로 처리하면 이상해집니다.
  3. plain에는 url이나 translator가 없습니다.

한글 책제목은 htitle로 지정하도록 하였습니다. urlurl.sty 패키지를 이용하도록 하였습니다. 현재는 한글 책제목이 고딕체로 되게 하기 위해서는 UHC글꼴LaTeX 문서를 작성하는 경우에 한해 작동합니다.

사용례와 그 결과를 보이겠습니다. 우선, Uploads:htexbook1.bibUploads:ktugplain-031028.bst를 준비합니다. htexbook1.bib에는 한글 책제목이 htitle 엔트리로 들어가 있습니다. 예제 문서는 다음과 같이 작성해보았습니다.
\documentclass{article}
\usepackage{hangul}
\usepackage{url}
\usepackage[bookmarks=false]{hyperref}

\linespread{1.25}

\begin{document}
\title{BiB\TeX{} 테스트}
\author{}

Progress님이 제시한 몇 가지 문헌들, 그 중에는,
\cite{Kokh:ht,Shim:ll,Shim:ll-2,Parkhs:alt}등과
\cite{Kangsj:mc}
\cite{Kangsj:mce}
등이 포함되어 있는데, 이것을 새로운 \texttt{bib} 파일로 만들었다.
\cite{lshort-kr}도 워낙 유명한(?) 문서라서, 우선 포함시킨다.

\emph{the \TeX{}Book}(\cite{Knuth:ct-a})을 참고하라.

\bibliographystyle{ktugplain-031028}
\bibliography{htexbook1,texbook1}

\end{document}

이것을 컴파일한 결과입니다.

ktugplainbsttest.jpg

3 CJKLaTeXHLaTeX을 함께 쓰기 (hlatexcjk.sty)

hlatexcjk style 아래 시도하였던 것을 정리하여, \urchr, \UNI라는 명령과 HCJK라는 환경을 가지는 hlatexcjk.sty를 만들었습니다. Uploads:hlatexcjkstyle.zip
  • 2004-04-20 ogt 글꼴을 추가하여 본문이 mj가 아닌 경우에는 이 글꼴을 찍어주도록 하였습니다. \textsf{\UNI{ac00}}과 같은 명령이 작동합니다.
    DeleteMe hlatexcjkstyle.zip을 다운로드해서 컴파일하면 UNI한글이 돋움으로 나옵니다. 저만 그런가요? -- 2004-05-02 hermian
    아마 unttf.sty를 교체하지 않으신 듯합니다. 아~~ 이런, 압축 파일에 이 파일이 빠져 있네요... [http]unttf-hlatexcjk.sty 파일을 다운로드받으셔서 texmf-un 디렉토리 아래의 unttf.sty를 이것으로 교체하십시오. rename해서 넣으셔야 하겠습니다. 번거롭게 해드려서 죄송... --Karnes
  • 2004-04-19 DohyunKim 님의 \UNI 명령 개선 반영. {}으로 인자를 지정하도록 수정.
  • 2004-04-18 DohyunKim 님의 제안으로 \UNI 명령 추가. 감사. See. KTUGContrib:1446
  • 제법 잘 작동하는 것으로 확인.

이 스타일의 사용자설명서입니다. 압축파일을 다운로드하여 작업디렉토리에 풀어놓고 make.bat를 실행합니다. 이 때, 시스템에 hbatang.ttf가 있어야 합니다. 이 폰트파일은 아래아한글을 설치하면 시스템의 폰트 폴더에 이미 있을 것입니다. 작업 디렉토리에 *.tfm들이 많이 생겨나야 합니다.

문서를 작성할 때는 Preamble에 다음 순서로 패키지를 적재합니다.
\usepackage{CJK}
\usepackage{hangul-nojosa}  % 또는 hfont, hangul
\usepackage{hlatexcjk}
이제 본문에서 다음과 같이 쓸 수 있습니다. 물론 ddom.char, haan.char 등은 별도로 준비되어야 합니다.(압축 파일 안에 있음)
\urchr{ddom}방각하 % &#46624;방각하
\urchr{haan}글 % 아래아한글
글자의 유니코드 값을 이용할 수도 있습니다.
\UNI{b620}방각하

문단을 입력할 때는 UTF-8로 인코딩된 PlainText 파일을 준비합니다. 예를 들어 sample.txt라면,
\begin{HCJK}
\input sample.txt
\end{HCJK}

4 완성형 밖의 한글

4.1 그림으로 글자 처리하기

현재의 HLaTeX으로는 KSX1001 완성형(EUC-KR) 문자밖에 사용하지 못한다는 것은 워낙 잘 알려져 있습니다. CP949UniCode를 이용하려면 Lambda를 써야 하는데, 그것도 나쁘지 않지만 그래도 LaTeX으로 이걸 돌려보고 싶은 분이 무쟈게 많으실 겁니다.

아무튼간에 Lambda로는 HLaTeXUHC글꼴을 이용해서 CP949의 모든 한글을 다 표현할 수 있다는 걸 이용해서 완성형 밖의 한글은 PostScript 그림으로 채워넣기로 작정했습니다. 몇 글자만을 위해서 Lambda를 써야 한다는 것이 영 마음에 들지 않았던 때문입니다. ;) 순전히 경제적인 이유에서, 그러니깐 편익/비용-비의 면에서 희생해야 하는 LaTeX의 여러 기능, 예컨대 영문 글꼴의 선택가능성, 많은 매크로 패키지의 기능, 익숙함 등의 가치가 단 한두 글자를 표현할 수 있다는 편익에 비해 과도하게 크다는 것이 제 생각이었습니다. 그러나, 기술적인 면에서 Lambda를 쓰면 모든 한글을 표현할 수 있다는 것은 무척 중요한 사실입니다. 아래 방법도 바로 이 점에 토대를 두고 있습니다.

예문은 다음과 같습니다.
&#46624;방각하나 커피&#49686;과 같은 단어에는 이른바 KS X 1001 완성형(EUC-KR)으로는 표현할 수 없는
문자가 포함된다. 물론 커피&#49686;과 같은 표현은 맞춤법에는 어긋나지만, 굳이 이렇게 표현하고
싶은 경우가 없지는 않은 것이다. 예컨대, 다음과 같은 문장, 즉,
\begin{quote}
`찾다'를 `&#52287;다'와 같이 잘못 쓰는 사람이 많다.
\end{quote}
이렇게 쓰고 싶을 때는 어찌할 것인가?

이 예문에서 KSX1001 완성형 범위에 포함되지 않는 글자는
&#46624;, &#49686;, &#52287;
세 글자입니다. 이 세 글자 각각에 대해서 ddom.tex, syop.tex, cac.tex을 만들고 이 파일에는 단 한 글자만 empty 페이지 스타일로 넣어둡니다. 예컨대 cac.tex은 다음과 같습니다.
\documentclass{article}
\usepackage{hfont}
\begin{document}
\thispagestyle{empty}
&#52287;
\end{document}
이제 이 세 개의 글자 파일을 Lambda로 돌립니다. 다음과 같이 진행하는 것이지요.
#> lambda ddom
#> lambda syop
#> lambda cac
그 다음에 이 DVI 파일들을 PS로 만듭니다.
#> odvips ddom -o
#> odvips syop -o
#> odvips cac -o
<!> 여기서 odvips -E 옵션은 잘 듣지 않았습니다. <!> 글자그림은 비트맵 방식이나 PostScript 방식 두 가지를 모두 쓸 수 있습니다. 제 경험에 의하면 PostScript 방식을 사용한 경우가 해상도의 문제는 없어서 좋은데 Yap과 같은 DVI Previewer에서 잘 보이지 않았습니다. 저는 최종출력을 PDF로 생각하고 있으므로 관계없다고 봅니다마는.... 하여간, 비트맵 방식의 EPS를 만들려면 $texmf/web2c/updmap.cfg에서 dvipsPreferOutline 설정이 false로 되어 있어야 합니다. 이 값을 true로 바꾸고 updmap을 실행하면 PostScript 방식의 EPS를 만들 수 있습니다. 물론 updmap.cfgHLaTeX의 관련 map 파일이 올려져 있어야 합니다. MiKTeX-KTUG을 설치하고 이 설정을 바꾸지 않았다면 HLaTeX 설정은 제대로 되어 있고 dvipsPreferOutline false로 되어 있을 것입니다.

이 PS 파일들을 ps2eps로 EPS 변환합니다.
#> ps2eps ddom.ps
#> ps2eps syop.ps
#> ps2eps cac.ps

이제 다음과 같은 예제 파일을 만듭니다. 여기서 \raise\hbox는 그림의 위치를 조절하기 위한 것입니다.
\documentclass{article}
\usepackage{hangul}
\usepackage{graphicx}

\linespread{1.333}
\setlength\parindent{0mm}

% chars eps
\newcommand\ddom{%
\ifvmode\leavevmode\fi
\raise -.111em\hbox{\includegraphics[height=.83em]{ddom}}%
}
\newcommand\cac{%
\ifvmode\leavevmode\fi
\raise -.111em\hbox{\includegraphics[height=.85em]{cac}}%
}
\newcommand\syop{%
\ifvmode\leavevmode\fi
\raise -.12em\hbox{\includegraphics[height=.83em]{syop}}%
}

\begin{document}

\noindent\ddom{}방각하나 커피\syop{}과 같은 단어에는
이른바 KS X 1001 완성형(EUC-KR)으로는 표현할 수 없는
문자가 포함된다. 물론 커피\syop{}과 같은 표현은 맞춤법에는 어긋나지만,
굳이 이렇게 표현하고 싶은 경우가 없지는 않은 것이다.
예컨대, 다음과 같은 문장, 즉,
\begin{quote}
`찾다'를 `\cac{}다'와 같이 잘못 쓰는 사람이 많다.
\end{quote}
이렇게 쓰고 싶을 때는 어찌할 것인가?hh

\end{document}

이것을 LaTeX으로 실행합니다. 결과의 스크린샷입니다. ;) ddom.png

`찾다'를 `\cac{}다'와 같이 잘못 쓰는 사람이 많다. 음~, 누군지 알겠습니다. 게시판에 확실한(?) 증거가 있습니다. --johnnam
교수님이셨습니까? ;) 몰랐습니다. --Karnes

저는 \raisebox{-.111em}{\hbox{\includegraphicsheight=1.0em{icon/python}}}% 처럼 \raise 가 아니라 \raisebox를 써야 컴파일이 되더군요.

제가 중국어 문서를 만들 때, 그러니까 lambda를 이용했을 때요, 제가 만든 매뉴얼 스타일 파일을 삽입했습니다. 그리고 그 파일은, 보셔서 아시겠지만, 상당히 많은 종류의 다른 스타일 파일을 부릅니다. 물론 삽입하는 것과 실제 그런 스타일 파일들에서 정의된 명령어들을 사용하는 것과는 다르겠지만, 그리고 제가 중국어 문서를 만들 때는 아주 평이하게 사용했기 때문에 자세히 확인할 수는 없었지만, 여타 패키지와 충돌하는 경우는 그다지 많지 않은 것 같습니다. itemize 환경에서 itemii(기본값이 애스테리스크지요?)이 문제를 일으켰고요. ovalbox가 제대로 나오지 않았습니다. 음~ 이럴 줄 알았으면 시험 삼아서 좀 더 다양한 시도를 해볼 걸 그랬습니다. 어떤 패키지들이 주로 문제를 일으키나요? 하여튼 몇몇 문자를 그림으로 처리하는 방식은 말씀하신대로 편익/비용비가 뛰어난 방법이라고 생각합니다. 그런데 이 방법은 다른 측면에서 더 의미가 있다고 생각합니다. 제가 실제로도 시도해본 것이기도 한데요. symbol 패키지를 다 뒤져도 맘에 드는 기호를 찾을 수 없는 경우에 그려서 삽입해 보았습니다. 그런데 크기나 위치가 맘에 들지 않을 때가 있었고, 무엇보다 그것이 문자다우려면(?) 글꼴 크기에 따라 같이 바뀌어야 하는데 거기까지는 그때 생각하지 못했습니다. 지금 곰곰히 생각해보니 조금만 더 신경쓰면 그것도 가능할 것 같습니다. --hoze

정말 이 방법을 유용하게 쓸 수 있는 데를 생각해냈습니다. IME 입력 방식은 아직까지는 MS Office 같은 MS 어플리케이션에서만 제대로 작동하는 줄로 알고 있습니다. 따라서 폰트가 있어도 Adobe Illustrator 같은 데에서는 외국 문자가 뜻대로 입력되지 않는 경우가 많습니다. 말씀하신 방식으로 글자를 그림으로 만들면 그래픽 작업이 훨씬 용이해질 것입니다. --hoze

5 HLaTeX에 대한 기여 : 한글 문서 작성의 여러 가지 기능들

hsectsty 패키지를 만듦으로써, 오랫동안 진행해온 HLaTeX의 레이아웃 관련 스타일 구현 작업이 일단 완성되었다고 생각합니다. 아직 진행중인 kautojosa만 안정되면 전체를 하나로 묶어서 제공할 생각입니다. 이 페이지에 없는 것은 HLaTeXStylePackages를 참고하세요.

5.1 sectsty의 수정 : hsectsty.sty

2004-04-15 sectsty 패키지를 수정하여 한글 환경에서 동작하게 하였다. 아직 시험판. Uploads:hsectsty.sty

  • ensec 옵션의 추가 : 이 옵션을 주면 section의 "제 n 절"이 그냥 "n"으로 나온다. 영문에서의 section과 같은 모양.
  • hangul의 기본 chapter(section) number title은 제~1~절 형식이다. 1 사이가 너무 멀어서 이 간격을 조금 좁혔는데, 이 기능을 disable하고 원래대로 하고 싶으면 THE 옵션을 준다.
  • 사용법 예제
    \usepackage[ensec,THE]{hsectsty}
    \sectionfont{\hfontfamily{gr}}
    \subsectionfont{\hfontfamily{gt}\centering}
    


  • 밑줄을 그어야 할 때는 myulem을 이용할 것. myulem의 명령을 지정한다.
    \usepackage[normalem]{myulem}
    \usepackage{hsectsty}
    \sectioinfont{\hfontfamily{gr}\huline}
    


5.2 setspace의 수정 : hsetspace.sty


setspace 패키지는 작지만 아주 유용하다. 그런데 그 패키지의 feature 가운데 하나인, floats나 footnote 안에서 모든 baselinestretch를 1.0으로 바꾸어버리는 기능은, 유용할 때도 있지만 이따금 짜증스럽기도 하였다. 특히 영문 문서의 경우라면 몰라도 한글이 사용되는 문서에서는 1.0이 아니라 그보다 조금만 더 넉넉했으면 하는 생각이 없는 바 아니었던 것이다. 이 부분을 수정한 스타일이다.

  1. 2004-04-15 adjustverbatim 옵션 추가. KTUGContrib:1276
     1. [hangul,adjustverbatim]
      -> quote, footnote, table, figure 등과 verbatim이 동일 행간격
     2. [(hangul),nofloatspacing,adjustverbatim]
      -> 본문과 동일 행간격
     3. 그밖의 경우
      -> 1.0으로 고정
    
  2. nofloatspacing 옵션
    floats와 각주 안에서 linestretch를 1.0으로 줄이는 기능을 끈다.
  3. hangul 옵션
    이 옵션을 주면 행간은 기본값이 1.333, float/footnote의 행간 기본값은 1.20이 된다. 그리고 quote와 quotation 환경에서도 가까운 행간(1.20)이 작동한다. 이 옵션을 준 상태에서는 \SetHangulspace{2.0}{1.1}과 같이 두 개의 인수를 갖는 \SetHangulspace 명령을 쓸 수 있다. 첫번째 인수가 문서의 baselinestretch이고 두번째 것은 floats 내부 linestretch 값이다.
  4. adjustfootnotesep 옵션
    아직 구현되지 않은 기능인 footnotesep 값과 \skip\footins 값의 자동 설정을 구현하기 전까지, hangul 옵션과 함께 쓸 수 있다. hangul 옵션의 기본값에 알맞도록 \footnotesep 값을 설정해준다. 앞으로 footnotesep의 자동화가 구현되면 제거할 임시 옵션.

5.3 HLaTeX에 대한 조그만 기여 : ganasection.sty

KTUGOperate:7144 HLaTeX에서 section counter에 \gana, \jaso, \ojaso, \ogana, \pjaso, \pgana 등을 쓸 수 있게 한 것입니다. 위의 글에 Progress 님께서 제가 수년전에 쓰고 잊어버리고 있던 글을 찾아서 링크를 걸어주셨는데, 그 당시에 사용했던 방식과는 조금 다른 방법의 해결책입니다. 시험해본 결과 sectsty과도 잘 맞습니다. \section, \subsection, \subsubsection 까지만 정의해두었기 때문에 \paragraph 등에는 작용하지 않습니다. 결과 : [http]qna.pdf(이주호 님이 시험해보신 것)

5.4 HLaTeX과 ulem 패키지

2003-11-10 ulem 패키지의 \uline 명령을 쓰는 경우에 대해서 몇 가지 시험들이 있었습니다. 근본적인 해결책은 아니지만 우선 미봉으로 다음과 같이 하여 에러메시지라도 뜨지 않도록 하는 것이 의미가 있는 일이라고 생각했습니다. 이 문제를 접근하기 위해서는 한국어에도 하이픈을 도입해야 한다고 생각합니다. hyphenchar를 공백문자나 아니면 null문자로 하더라도 하이픈이 있는 쪽이 없는 쪽보다 더 취급하기 수월할 것이라는 생각이 듭니다. 이 해결책의 문제점은 단어 단위로는 행나눔이 가능한데 글자단위 행나눔은 안된다는 점입니다. 다행인 것은 각 환경 안에서 \newline은 작동하므로, 원한다면 \linebreak를 이용해서 행나눔을 수동으로 할 수 있습니다. 그리고 한글에는 없는 가짜 하이픈 문자를 삽입하여 단어내 행나눔이 가능하도록 하였습니다. 아래 스크린샷에서 Overfull이 발생한 부분에서 직접 손으로 하이픈문자 \-를 써넣으면 오른쪽 정렬도 할 수 있습니다. 지금까지의 해결책보다는 낫지만... 쓸모가 있을까 모르겠네요. ;)
  • Style : Uploads:myulem.sty
    • 사소한 버그 수정. normalem 옵션 추가.(2004-04-15)
    • 영문 하이퍼네이션이 작동하지 않는 버그 수정.(ver. 20031110-1)
  • TEST File : Uploads:myulemtest.tex
  • 결과의 스크린샷
myulemtest.jpg

글자단위 행바꿈의 처리. 위의 그림에서 오른쪽넘침이 발생한 행을 찾아서
\huuline{%
아톰은 텐마 박사가 사고로 죽은 자신의 아들 대신 만든 인조인간이다.
아톰은 텐마 박사가 사고로 죽은 자신의 아들 대신 만든\newline 인조인간이다.
아톰은 텐마 박사가 사고로 죽은 자신의 아들 대신 만든 인조인간\-이다.
아톰은 텐마 박사가 사고로 죽은 자신의 아들 대신 만든 인조인간이다.
아톰은 텐마 박사가 사고로 죽은 자신의 아들 대신 만든 인조인간이다.
}
과 같이 고치세요. 즉, \-를 삽입.

5.5 \emph 명령에 적용되는 한글과 영문 글꼴

latex4wp 작업을 하면서는 *.fd 파일 자체를 바꾸어서 모든 \itshape는 무조건 한글의 경우 \grfamily로 식자되도록 했던 적이 있습니다. 여기서는 *.fd 파일을 건드리지 않고 preamble의 설정으로 \emph 명령에 대해서만 그런 식(영문은 이탤릭, 한글은 그래픽)으로 식자되고 \itshape는 여전히 사체를 얻을 수 있도록 하는 방법을 메모해둡니다. 잊어버릴까봐....
\makeatletter
 \DeclareRobustCommand\normalhfont
                 {\hfontencoding\hencodingdefault%
                  \hfontfamily\hfamilydefault%
                  \fontshape\updefault%
                  \kscfamily\symboldefault\hanguldefault\hanjadefault}
 \DeclareRobustCommand\em
        {\@nomath\em \ifdim \fontdimen\@ne\font >\z@
                       \upshape\mjfamily \else \itshape\normalhfont\hfontfamily{gr}%
                       \fi}
\makeatother

hLaTeXp에서는 모든 이탤릭 글꼴이 쓰일 자리에 그래픽체로 대신했던 것으로 기억합니다. 유사한 설정을 역시 *.fd 파일을 바꾸지 않고 얻기 위해서는 \em 명령이 아니라 \itshape\slshape 명령을 바꾸어주면 될 듯합니다.
\makeatletter
 \DeclareRobustCommand\normalhfont
                 {\hfontencoding\hencodingdefault%
                  \hfontfamily\hfamilydefault%
                  \fontshape\updefault%
                  \kscfamily\symboldefault\hanguldefault\hanjadefault}
 \DeclareRobustCommand\itshape
        {\not@math@alphabet\itshape\mathit
         \fontshape\itdefault\selectfont\normalhfont\hfontfamily{gr}}
 \DeclareRobustCommand\slshape\itshape
\makeatother

6 한글LaTeX길잡이 PDF 다시 만들기

한글LaTeX길잡이를 PDF로 다시 만드는 작업을 잠깐 짬을 내어 했습니다. 제 기준으로는 보기 좋은 문서가 만들어졌다고 생각합니다. 여기에 소스와 제가 구현한 몇 가지 기능의 Tip을 적어두겠습니다.

6.1 hlguide-ks의 소스


hlguide-ks는 한글LaTeX길잡이MiKTeX-KTUG과 같은 일반적인 환경에서 손쉽게 컴파일되도록 수정한 판본입니다. 같은 디렉토리에 풀어놓고 LaTeXDVIPDFMx를 실행하면 UHC글꼴이 포함된 hlguide-ks.pdf를 얻을 수 있습니다. 함께 포함된 hlg2up.tex은 PDFLaTeX으로 실행하십시오. 그러면 A4용지에 landscape로 두 페이지가 맞쪽으로 들어간 2up PDF를 얻을 수 있습니다.
#> latex hlguide-ks
#> latex hlguide-ks
#> bibtex hlguide-ks
#> makeindex hlguide-ks
#> latex hlguide-ks
#> latex hlguide-ks
#> dvipdfmx hlguide-ks
#> pdflatex hlg2up

또는 간단히
#> texify hlguide-ks.tex
#> dvipdfmx hlguide-ks
#> pdflatex hlg2up
<!> 명령행에서 texify를 실행할 때는 확장명 .tex을 적어주어야 합니다.

6.2 부록(appendix)이 있는 경우 책갈피의 hyperlink

HyperRef 패키지를 쓰는 경우, 부록(appendix)이 있으면 \appendix 명령이 section 카운터를 0으로 돌려놓기 때문에 section 카운터가 1이 되는 곳이 두 곳이 생깁니다. 그래서 책갈피에서 본문으로 링크가 작동하지 않는 오류가 발생합니다. 만약 부록에 절(장)이 하나밖에 없다면, 아주 간단히 \phantomsection을 삽입하는 것으로 이 문제를 피해갈 수 있습니다.
\cleardoublepage\phantomsection
\appendix

그러나 한글LaTeX길잡이에는 부록에 절이 네 개나 있었고, 그 결과 위의 방법을 쓰더라도 두번째 부록절(B)부터는 책갈피 링크 에러를 피할 수 없었습니다. 그래서 생각해낸 것이 다음 방법.
\clearpage  %% <- 필요하다면 \cleardoublepage를 씁니다.
\newcounter{appseccnt}
\setcounter{appseccnt}{0}
\makeatletter
\renewcommand\appendix{\par
%  \setcounter{section}{0}%
%  \setcounter{subsection}{0}%
  \def\thesection{\@Alph\theappseccnt}}

\def\ks@sect[#1]#2{%
  \ifnum \c@secnumdepth<1
    \let\@svsec\@empty
  \else
    \refstepcounter{appseccnt}%
    \protected@edef\@svsec{%
      \noexpand\pre@sectioncnt\thesection\noexpand\post@sectioncnt
      \quad\relax}%
  \fi
  \begingroup
    \normalfont\Large\bfseries{%
      \@hangfrom{\hskip \z@\relax\@svsec}%
      \interlinepenalty \@M #2\@@par}%
  \endgroup
  \sectionmark{#1}%
  \addcontentsline{toc}{section}{%
    \ifnum\c@secnumdepth<1 \else
      \protect\numberline{\pre@sectioncnt\thesection\post@sectioncnt}%
    \fi
    #1}
  \@xsect{2.3ex \@plus.2ex}}
\makeatother

\appendix

이 아이디어는 기본적으로 \appendix가 시작된 이후에는 section이라는 카운터를 쓰지 않는 것입니다. 새로운 카운터 appseccnt를 정의하고 \section 명령을 수정해서 appseccnt 카운터를 section에서 쓰도록 한 것입니다.

이 명령을 수정없이 그대로 사용하려면 다음 조건이 충족되어야 합니다.
  1. \appendix 이후에는 \section 명령만 있고 \subsection 명령은 없는 경우. 만약 있다면 appsubseccnt 카운터를 하나 더 정의해야 할 것입니다. 그리고 \ks@ssec 명령도 재정의해야겠지요. 위의 방법을 그대로 이용하면 되므로 크게 어려운 일은 아닙니다.
  2. 위의 코드는 hangul 패키지를 쓰는 경우입니다. 만약 한글 문서를 만드는 상황이 아니라면 다른 방법을 써야 할 것입니다.

6.3 한글 책갈피 만들기

DVIPDFMx를 쓰기로 하였으므로 한글 책갈피는 다음 명령으로 간단히 구현되었습니다.
\usepackage{ifpdf}
\ifpdf
 \usepackage[pdftex]{hyperref}
\else
 \usepackage[dvipdfm,CJKbookmarks]{hyperref}
 \AtBeginDvi{\special{pdf:tounicode KSCms-UHC-UCS2}}
\fi

문제는 \section{\HLaTeX{}의 설치}와 같은 경우 책갈피에는 한.3em글\LaTeX과 같이 나타납니다. 이것은 \HLaTeX 명령의 정의에서 온 것입니다. 이 문제를 피하기 위해서 hypbmsec 해결책을 사용하였습니다.
\usepackage{hypbmsec}
\section(HLaTeX이 나오기까지){\HLaTeX{}이 나오기까지}
위와 같이 책갈피에 들어갈 텍스트를 괄호()로 둘러쌉니다.

이 문제의 해결책은 hypbmsec 이외에도 \texorpdfstring 명령을 이용하는 방법도 있습니다.

7 성경 조판에 관한 몇 가지 시험

도은아버님, 혹시 그때 파일로 된 성경 전문을 물어보시지 않았나요? http://www.holybible.or.kr에 어느 정도 나와있는 것 같은데, 도움이 될 지 모르겠습니다. 저도 관주 성경 조판에 관심 있습니다. 참, 개역 성경책의 폰트 말씀하셨나요? 개역 성경책이라 함은 어떤 것을 말하는지요? 옛날 대한성서공회에서 나온 세로쓰기 성경책 말하나요? 참, 질문입니다. 요즘 나온 라이프 성경을 제가 갖고 있는데, 폰트의 장평을 보면 가늘었다 뚱뚱했다 하는 장이 있습니다. 뚱뚱한 장은 일부러 판면에 텍스트를 끼워맞추기 위해 억지로 늘인 느낌이 들고요, 장평이 가는 장은 일부러 많은 텍스트를 넣은 느낌이 듭니다. 이와 같이, 한글판 성경이 판면에 들어갈 내용을 이미 기준으로 삼고 있는 것, 어떤 원칙 같은 것이 있는지요? 가령, 480쪽부터 481쪽까지는 사무엘하 12장 5절~18절까지 나와야 한다든가... 그리고, 개역성경책이 언제 나온 것인지(가장 최근 1999년?)만 알면 폰트는 제가 함 알아보겠습니다. -- Progress 2003-06-17 02:55:50

예, 그 세로쓰기 성경책을 말하는 것이 맞습니다. 그 개역한글판 성경책의 폰트가 과연 있을까요? 아무튼, 폰트 크기가 달라지는 것은 제가 알기로는 아무래도 성경책이 교회의 예전용으로 사용되는 것이라 모든 성경책의 페이지를 동일하게 유지할 필요를 느껴서 그렇게 만든 것 같습니다. 장/절만으로는 동일한 곳을 찾기 힘든 경우에 대비해서겠지요. 저는 개인적으로 그렇게 조판해야 할 필요를 느끼지 못합니다마는 :)
산돌에서 나온 "성경체"라는 글꼴이 있군요. 그런데 윈도용 TTF의 판매를 중단하였네요... 이전에 혹시 이 글꼴을 구매하신 분께 알아볼 수 있을려는지요?
DeleteMe 얼마전에 제게 이 폰트가 흘러들어왔습니다. 아직 못구하셨다면 제가 보내드리겠습니다. 헌데 옛날성경 글씨의 품위에 못미쳐보입니다. moosoy
부탁합니다. :) 주철님 반갑네요. --Karnes

''성경 작업이 어떤 의의가 있습니까? 구태여 새로 만들 필요가 있습니까? 전 기독교 신자가 아니라서 뭐가 문제인지 모르겠는데요. 전 개인적으로 희랍어 사전에 관심이 있었습니다. 일본에서는 희랍어 사전이 나온 지 이미 오래 되었다고 합니다. 우리나라에서는 모두 영문판을 보지요. 이건 먼저 서양 고전을 하시는 분들이 새로 만들든, 외국 사전을 번역하든 해야겠지만, 개인적으로 기회가 닿으면 한번 해보고 싶은 욕심이 있습니다. 현대 그리스어보다는 훨씬 복잡합니다. 서브스크립트나 기식음, 액센트(사실은 피치라고 해야 맞지만) 등도 다양하고 많이 들어가지요. 힘들면서도 재밌을 것 같은 생각이 듭니다. 베스트셀러가 안 될 것은 분명하지만요. -- hoze''
꼭 기독교 신자여야 성경에 관심갖는 것은 아닐 거라구 생각합니다. 암튼 그건 이 주제와는 무관하구요... 위에 얘기한 개역성경의 글꼴은 그 글꼴만으로도 충분히 가치가 있는 것이라고 생각합니다. 그리고, 성경 조판은 Gutenberg가 첨 했던 일이기도 하구요..^^ 뭐 형편이 닿는다면 직지심체요절 조판도 도전해볼 수 있는 것이기는 합니다만... 조판과 관련해서 제가 성경에 관심을 갖는 것은 그것이 가능한 조판의 가장 "근본적" 형태를 설계할 수 있게 해준다는 데 있다고 생각합니다. 예를 들면, 상호참조주석, 3단주석, 다중언어대역, 단어별 상호참조를 통한 glossary의 작성, 좌우간 이 분야에서 가장 풍부한 조판용례를 얻을 수 있는 예가 될 것입니다. 성경이 사용하고 있는 koine greek이 말씀하신 희랍고전의 아름다운 문장과 비교될 수야 없겠지만... 그런데 제가 왜 이렇게 설명을 하고 있는지 모르겠습니다. 어차피 "성경 작업이 무슨 의의가 있습니까?"라고 단정하신 분에게 말이죠...---Karnes

7.1 첫번째 시도. 원문대조

gospjohncapture.png

한글 성경은 개역한글판, 고전그리스어 원문은 Nestle-Aland판 Novum Testamentum, 영어는 KJV입니다. parallel 패키지, babel 패키지와 cbgreek 폰트를 이용하였습니다. 마치 3단조판처럼 보이지만 그렇지는 않고, 오른쪽 영어는 marginpar 박스처리된 것입니다. 3단조판을 위한 3col.tex이 있기는 하지만, 이런 경우에는 그다지 유용하지 않았습니다. 그리고 이 화면의 대본이 된 "헬한영 대조 신약성경"은 영어를 나란히 배치하는 것이 아니라 위의 보기와 같이 잘라서 작은 글씨로 보여주고 있습니다. 요한복음서의 1장 시작부분만 해본 것입니다. 소스는 다음과 같습니다. Uploads:johnmultl.tex

우와~ 드디어 만드셨군요. 굉장히 신기합니다. 현대 그리스어는 기식음도 쓰이지 않고, 피치 표기도 별로 하지 않는다고 하는데, 고대 희랍어의 발음 표기가 모두 다 되니 다행스럽습니다. 다만, theta나 cirumplex는 모양이 맘에 들지 않습니다. 이제까지 봐왔던 모양과 사뭇 달라서 그런 것 같습니다. 다른 글꼴을 구하려면 어떻게 해야 할까요? 음~ 영어는 PS, 한글은 TTF를 구해서 쓰면 되는데, 이건 또 어떻게 해야 하는지 궁금해집니다. Xaire! `Oze eimi.
저도 circumplex 모양에 처음에 좀 당황했습니다. 아마도... 어쩌면... 제가 SQPR greek 문자에 너무 익숙해져 있는 것은 아닌지 모르겠습니다. 다른 greek 폰트에 대해서는... 좀더 알아보고 말씀드리겠습니다. 감사. --Karnes

조금 더 익숙한 greek 폰트가 있네요. PSGreekPackage이라는 것인데, cbgreek보다 제 눈에는 적어도 소문자는 이것이 더 좋아 보입니다. 스크린샷을 올려보겠습니다. circumplex도 익숙한 모양이고... 아무튼 출판에 적합한 품위의 greek 문자는 아무래도 비싼 상용 폰트를 사야 할 듯합니다. free font로는 이 정도로 만족해야 할 듯... 이 폰트에 대해서 아래 소절을 하나 작성합니다. ;)

7.2 Greek 폰트에 관하여

현재 TeX으로 이용할 수 있는 free Greek font는 Type1 폰트가 두 종류 있다. 오래된 Levy 폰트나 kdgreek 등은 MetaFont 소스로만 제공된다.

  1. cbgreek : MiKTeX-KTUG에는 이 cbgreek 폰트가 Type1 PFB로 들어 있지 않다. 설치와 사용에 대해서는 KTUGOperate:3775에 내가 쓴 글을 참조할 것. cbgreek 폰트는 BabelPackage와 아주 잘 맞고, $$\sigma$$ 의 위치에 따라 글자 모양을 자동으로 바꾸어주는 장점이 있다.

  2. psgreek : 최근에 만들어진 Type1 Greek Font이다. TeX배포판에는 아직 많이 들어가지 않은 모양이지만 여러 면에서 cbgreek을 대체할 수 있을 듯하다. cbgreek 폰트에서는 circumflex가 $$\sim$$ 과 비슷한 모양인데, 이 폰트에서는 우리에게 익숙한 모양으로 되어 있다. 그리고 circumflex를 얻기 위한 매크로로 =를 사용하도록 권장하고 있는 것도 재미있고, sigma는 s 또는 c로 사용자가 final sigma를 직접 지정해야 한다.

스크린 샷을 몇 개 올린다. 마지막 예는 archaic 패키지에서 제공하는 두 가지(BC4C, BC6C) 고대 그리스 문자 가운데 하나이다.

  • cbgreek

    grfonttestcbgreek.png

  • psgreek -- regular option

    grfonttestpsgreekregular.png

  • psgreek -- oxonia option

    grfonttestpsgreekoxonia.png

  • psgreek -- oldface option

    grfonttestpsgreekoldface.png

  • psgreek -- milan option

    grfonttestpsgreekmilan.png

  • archaic -- BC 4세기 그리스 문자

    grfonttestarchaic.png

7.3 두번째 시도, 비평판의 편집

johncritical.png

비평판(Critical Edition)을 편집해보는 것은 오래전부터 제 과제 중의 하나였습니다. Critical Texts를 편집하도록 해주는 도구는 PlainTeX에서는 EdMac이 있습니다. 이것의 LaTeX 포팅 중에 ledmac 패키지라는 것이 있고, 그밖에도 좀 단순한 ednotes가 있습니다. 또 ncctoolsmanyfoot 패키지도 잘만 이용하면 Critical Texts를 편집하는 것처럼 보일 수가 있을 듯합니다. 이 가운데 비교적 정통적인 방법인 ledmac을 써보려 했습니다. 그러나 ledmac이든 EdMac이든 HLaTeX과는 아무튼 충돌합니다. 이 충돌은 HLaTeX의 폰트 처리방법을 유지하는 한 당분간은 해결할 방법이 없어 보였습니다. 이것을 해결하기 위해서 결국 Lambda를 통하여 HLaTeX을 쓰거나, UTF-8 코드를 이용하여 CJKLaTeX을 쓰거나 하지 않으면 안된다는 것을 발견하였습니다. 위의 스크린샷은 CJKLaTeX을 이용하고, 폰트로는 nBatang, nGulim을 사용한 것입니다. nGulim은 \itshape에 대응되어 있습니다. 만약 cyberbit 폰트를 이용하여 cyberb*.tfm을 얻은 경우라면 위의 스크린샷에 나오는 굴림체는 (아마도) 구현되지 않을 것입니다. 여기서 원문은 개역한글판을 이용하였습니다. 그리고 12절까지는 난외주와 관주를 붙였는데(제가 게을러서 그 뒷 절부터는 하지 않았습니다. ;) ) 관주는 저한테 있는 제 어머님이 보시는 1964:1972년판 관주성경전서 간이국한문한글판에 있는 관주를 옮겼습니다. 제가 알기로 이 관주는 독일성서공회에서 발행한 성서에 붙어 있던 것을 대한성서공회에서 가져다 쓴 것으로 알고 있습니다.

이 결과를 얻은 소스 파일은 다음과 같습니다. UTF-8 포맷입니다. Uploads:johncritical.tex

7.4 ArabTeX, BHS

Biblia Hebraica Stuttgartensia의 원문은 http://shamash.org/tanach/tanach/text/ 아래에서 구할 수 있었습니다. 이것을 machine-readable tanach라고 하더군요. ArabTeX은 이 machine-readable tanach 인코딩을 지원합니다. ArabTeX을 이용해서 좀 짧은 룻기(Ruth)를 조판한 결과입니다.
\documentclass{article}
\usepackage{arabtex}
\usepackage{hebtex}
\usepackage{bhs}
\linespread{1.25}
\begin{document}
\sethebrew
\setcode{bhs}
\begin{RLtext}
\input rut.bhs
\end{RLtext}
\end{document}


^
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2005-12-31 12:34:24
Processing time 0.1903 sec