Tuesday, February 4, 2014

XeLaTeX: basic + xoblivoir-class

XeLaTeX: basic + xoblivoir-class

XeLaTeX: basic + xoblivoir-class


;; =================================================
;; εμαcs is ⎋[esc]⌘[meta]⌥[alt]⌃[ctrl]⇧[shift].
;; =================================================

이 문서는 emacs org-mode로 작성된 글입니다.


Operating System Environments

  • Main- : OS X Mavericks (10.9.1)
  • Sub- : Debian GNU/Linux Wheezy (7.3)
  • Server: Debian GNU/Linux Squeeze || Lenny
  • Mobile: iOS 7.0.4

XeLaTeX, xoblivoir-class, and HCR-LVT

OS X에서 나는 Aquamcs + Bash shell(Terminal.app) + Skim 조합을 쓴다. 기본적인 LaTeX 사용 환경 설정은 지난 Posts를 참고하자.

여기서는 한글 LaTeX 사용 환경에 관해서만 얘기하기로 하겠다.

XeLaTeX

LaTeX 환경에서 한글 사용의 근본적인 문제는 latex 이나 pdflatex 으로는 한글 폰트가 제대로 출력되지 못함에 있다. Editor 안에서는 한글이 보여도 (혹은 보이게 만들어도) latex 이나 pdflatex 으로는 unicode로 된 문자를 compile 하지 못 한다. 이는 비단 한글뿐만 아니라 Umlaut(ä, ö, ü)를 쓰는 독일어 등의 비영어권 언어 사용에서 전반적으로 문제를 일으킨다. 하지만, 역으로 unicode를 지원하는 TeX engine을 쓰면 해결된다는 말과 같은데, 최신 TeX engine 중 하나인 XeTeX (혹은 XeLaTeX)이 uft8을 default로 지원한다. XeTeXXeLaTeX은 source code를 짤 때부터 다른데, 전자는 TeX처럼 써야 하고 후자는 LaTeX 형식으로 짜야 한다. 거기다 compile 후의 문서의 형식도 다르다. 나는 TeX 형식으로는 쓸 줄도 모르므로, 여기서는 LaTeX 형식으로 짜서 .pdf 로 결과를 만들어 주는 XeLaTeX만을 다루기로 하겠다.

xoblivoir-class

XeLaTeX을 쓰면 우선 한글이 출력이 되기는 한다. 하지만 여기서 또다른 문제가 발생한다. 가장 기본적으로 쓰는 article-class에서 자간, 행간, 등이 엉망이 된다. 해결책은 한글 사용에 최적화된 xoblivoir-class이다. Kangsoo Kim (karnes@ktug/a.k.a. 도은이아빠)께서 만들고 배포하고 있는 xoblivoir-class를 쓰면 웬만한 한글 관련 문제는 한방에 해결된다.

oblivoir 클래스는 2006년 3월 말경, KTUG 디렉터인 도 ̇ 은 ̇ 이 ̇ 아 ̇ 빠 ̇ 님이 발표한 클래스 입니다. 기존 LATEX의 기본 클래스 중 하나인 article 클래스의 형식에 memoir의 장점을 그대로 살렸으며, 특히 이제까지 개발된 한글 구현 테크닉 중 좋은 것을 대부분 내재하고 있는 클래스입니다. TEX 유저들의 수준 고하에 관계 없이 누구나 쉽게 사용할 수 있을 것입니다.

[oblivoir 클래스 소개] 요약에서 발췌

oblivoir 클래스 2.0 버전은 그 동안 별도의 브랜치로 개발되어 오던 xoblivoir 와 oblivoir를 통합하여 완전히 동일한 클래스가 되었다.

[초간단 oblivoir v2.0 사용법] 요약에서 발췌

xoblivoir-class의 자세한 정보는 아래 링크들을 참고하자.

특히, "xoblivoir-class" 다운로드 바로 가기 from CTAN에서 다운로드 후 압축 풀면 볼 수 있는 oblivoir-simpledoc.pdf 파일에 많은 정보와 xoblivoir-class 자세한 사용법이 상세하게 나와있으니 꼭 한 번 읽어보길 권한다.

HCR-LVT

옛한글 또한 font만 설치하면, XeLaTeX 통해서 .pdf 문서로 구현할 수 있다.

처음 만들었을 때는 낱자 28글자와 성조를 나타내는 기호(방점)가 따로 있었으나, 지금은 ㅿ, ㆁ, ㆆ, ㆍ 네 글자와 성조 기호(방점)가 사라져서 24글자가 되었다.

위키피디아: 한글 문서에서 발췌

한글과 옛한글에 관한 정보는 아래 링크를 참조하자.

옛한글을 구현을 위해서는 함초롬체 LVT 사용을 추천한다. 은바탕체도 구현할 수 있다는데, 테스트해 본 봐 이가 좀 빠져있었다.

다운로드 후 압축을 풀고 글꼴을 설치하면, HCR Batang LVT/HCR Dotum LVT 을 사용할 수 있다. 물론 옛한글을 포함하지 않는 보통의 한글 문서를 만드는 경우는 함초롬체 LVT 말고 다른 한글 폰트를 설치해도 된다.

OS X

목표는 "xoblivoir-class" 다운로드 바로 가기 from CTAN에서 받은 oblivoir-simpledoc.tex 파일로 oblivoir-simpledoc.pdf 문서를 만드는 것이다.

현재(<2013-12-22 Sun>) OS X Maverick에는 MacPorts를 통해 "TeX Live 2013"이 설치되어있다.1 xoblivoir-class와 관련된 .sty 파일도 모두 받아 놓았고 함초롬체 LVT도 설치되어 있다. 그래도 xelatex 실행 시 error가 뜬다. 아래의 .sty 파일들이 더 필요하다. 아래 링크에서 전체 복사를 한 후, 각각의 이름으로 파일을 만들어 붙여 넣고 저장하자.

이러면 준비는 끝났다. oblivoir-simpledoc.tex 파일로 oblivoir-simpledoc.pdf 문서를 만드는 간단한 과정은 아래와 같다.

  1. 위의 파일 모두와 xoblivoir-class에 포함된 .sty 파일 모두를 전부 oblivoir-simpledoc.tex 파일과 같은 폴더에 둔다.
  2. oblivoir-simpledoc.tex 를 Aquamacs로 열어 글꼴을 HCR Batang LVT 로 설정한다.
    • ]{xoblivoir} %% ,latinquote 아래에 \setmainfont{HCR Batang LVT} 를 적어 넣는다.
      ]{xoblivoir} %% ,latinquote
              
      \setmainfont{HCR Batang LVT}   % <--- 여기
              
      %\documentclass[12pt,a4paper,footnote,xcolor={svgnames}{oblivoir}
      
    • 나머지 글꼴 관련 부분을 지우거나, 아래 처럼 주석(%)처리한다.
      % %%%%%% tested on Windows XP SP3
      % \setkormonofont{은 필기}
      % \setmonoscale{0.9}
      % \defaultfontfeatures{Mapping=tex-text}
      % %%%%%% tested on Linux/Ubuntu
      % %\setmainfont[Mapping=tex-text]{Bradley Hand ITC}
      % %\setmonofont[Scale=.85]{Comic Sans MS}
      % %\setmainfont[Mapping=tex-text]{Monotype Corsiva}
      % \setmonofont[Scale=.85]{Monaco}
      % %\setkormainfont(문화 궁서 Std L){문화 궁서 흐림 Std L}(){네이버사전}
      % \setkormainfont(* Bold)(*){HCR Batang LVT}
      % %\setkorsansfont(문화 궁서 Std B)(문화 훈민 Std R){문화 고딕 Std R}(){한컴돋움}
      % %%%%%%%%%%%%%%%%%%%%%%%%%%%
      
  3. Bash shell(Terminal.app)에서 xelatex 으로 compile 한다.
    $xelatex oblivoir-simpledoc
    

아니면 source code를 내가 수정한 oblivoir-simpledoc.tex 파일을 직접 써도 된다. 위에서 언급한 부분만을 수정한 버전이며 다른 부분은 전혀 건드리지 않았다. 본인은 원 source code에 어떠한 저적권도 가지고 있지 않음를 밝힌다.

Debian GNU/Linux

Debian GNU/Linux에는 TeX Live 2012가 설치되어 있다. xoblivoir-class를 사용하는데 OS X와는 약간의 차이가 있다. OS X처럼 다수의 xoblivoir-class 관련 .sty 파일들이 필요하지는 않지만, ko.tex-package 가 필요하다. 여기서 중요한 점은, Debian repository에서 제공하는 ko.tex-package 로는 제대로 compile되지 않는다는 점이다. 즉, apt-cache search ko.tex 하면, 관련 package가 나오는데, 이들을 설치할 필요는 없다.(혹은 설치하지 말자.) 대신, 따로 ko.tex-package 를 설치해 주어야 한다. 기본적인 준비는 다음과 같다.

  • Installation of HCR-family: sec:HCR-LVT에서와 같이 적당한 한글 폰트를 설치한다.
  • 아래를 Bash shell에서 실행하여 texlive 전체를 설치한다.
    $sudo apt-get install texlive-full
    
  • 아래의 링크를 따라가서 kotex-macros-20100511.tar.gz~/Downloads/ 아래에 다운로드 한다.
  • Bash shell에서 아래를 실행한다.2
    $cd ~
    $mkdir texmf
    $cd texmf
    $tar zxvf ~/Downloads/kotex-macros-20100511.tar.gz
    

이제, 기본적으로 아래와 같이 ex.tex 파일을 시작하고, xelatex ex 로 compile하면 제대로된 ex.pdf 문서가 만들어진다.

\documentclass[11pt,a4paper]{xoblivoir}
\usepackage{fontspec}   % ---> uncommented in xoblivoir-class
\setmainfont{HCR Dotum LVT}

위의 OS X에서 언급한 oblivoir-simpledoc.tex 경우에는 kotex-logo.sty만 같은 directory에 두고 compile하면 된다.

Epilog

나는 LaTeX이 어떻게 구성되고 만들어졌는지 알지 못한다. 다만 한 사람의 end-user로써 내 컴에서 LaTeX을 최대한 간단하게 사용할 수 있게 하는 데에 초점을 맞추었다. 나보다 더 스마트하게 쓰는 사람도 당연히 있겠지만, 누군가에게는 도움이 되었기를 바란다.

관련 파일을 모두 내가 직접 업로드하는 것이 이 글을 읽는 사용자들이 쓰기에 훨씬 편할 것을 안다. 그러나 내가 직접 만든 것들이 아니기에 나에게는 어떠한 저작권도 없어서 여기에 올리는 것은 내 권한 밖의 일임을 양해를 부탁한다. 최대한 원 저작자가 배포하는 방법으로 관련 링크를 걸었고 내가 수정한 부분에 한해서만 제한적으로 여기서 언급하였다. 잘 안되는 경우는 댓글을 달면, 최대한 답변을 하겠다.


Footnotes:

1

Bash shell(Terminal.app)에서 $xelatex –version 실행하면, TeX Live version을 알 수 있다.

Created: 2014-02-04 Tue 22:30

Emacs 23.4.1 (Org mode 8.0.2)

No comments:

Post a Comment