\usepackage[국배판]{hangul} %% 길잡이 제목에 필요. \begingroup \makeatletter \def\gobble@zero#1{\expandafter\is@zero#1\relax} \def\is@zero#1{\ifnum#1=0\relax\else#1\fi} \let\KSC@\noexpand \def\d@t@#1/#2/#3\relax{\if@hanja #1年 \gobble@zero#2月 \gobble@zero#3日\else #1년 \gobble@zero#2월 \gobble@zero#3일\fi} \protected@xdef\HLaTeXdate{\expandafter\d@t@\filedate\relax} \endgroup \let\HLaTeXversion\fileversion \usepackage{array,makeidx,multicol} \usepackage[bookmarks=false]{khyper} \hangulskip-1pt \pagestyle{headings} \usepackage{texnames} \usepackage{mflogo} \ifx\nullocplist\undefined\else \def\MF{{\logofamily META-FONT}} \fi \newcommand{\NFSS}{\textsf{NFSS2}} \newcommand{\HFSS}{\textsf{HFSS}} \newcommand{\PS}{포스트스크립트} \newcommand{\OMEGA}{Ω} \newcommand{\OTP}{\OMEGA TP} \newcommand{\LaOm}[2]{{\sffamily\footnotesize% \medskip \begin{tabular}{cp{10cm}} \LaTeX & \slshape #1 \\ Λ & \slshape #2 \\ \end{tabular} \medskip }} \makeatletter \@ifundefined{BibTeX} {\def\BibTeX{{\rmfamily B\kern-.05em% \textsc{i\kern-.025em b}\kern-.08em% T\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX}}}{} \makeatother %\renewcommand{\LaTeX}{라텍} %\renewcommand{\HLaTeX}{한글라텍} %\renewcommand{\TeX}{텍} \makeatletter \@ifclassloaded{book}% {\newenvironment{abstract} {\newpage\begin{center}\textbf{\Large\abstractname}\end{center} \begin{quote}}{\end{quote}\newpage}}{} \makeatother \setlength{\columnseprule}{.2pt} \makeindex \makeglossary \hyphenation{ghost-view} \renewcommand\hindexhead[1]{\indexspace {\bfseries 『\ifcase#1 심벌\or 가\or 까\or 나\or 다\or 따\or 라\or 마\or 바\or 빠\or 사\or 싸\or 아\or 자\or 짜\or 차\or 카\or 타\or 파\or 하\or 한자\fi 』} \nopagebreak } \begin{document} %% End Of Header \begin{titlepage} \title{\textbf{\Huge\옛글 한글라텍 길잡이\\ \noindent\rule{\textwidth}{3pt}\\ \mdseries\Large (버전 \HLaTeXversion{})}}% \author{殷 \ 光 熙\thanks{\texttt{koaunghi@kornet.net}}} \date{\HLaTeXdate} \end{titlepage} \maketitle \tableofcontents \begin{abstract} 라텍은 쪽 판짜기에 탁월한 기능을 가진 문서 식자 체계(document typesetting sys\-tem)입니다. 한글라텍은 이런 우수한 문서 식자 체계로 한글도 쓸 수 있도록 하자는 취지에서 만들어진 라텍 꾸러미입니다. 라텍은 사용에 아무런 제한이 없이 보급되고 한글라텍 또한 한글을 쓰고자 하는 모든 이에게 별다른 조건 없이 유용한 도구로 제공됩니다. 이 안내서에서 다음과 같은 정보를 얻을 수 있습니다. \begin{itemize} \item 한글라텍 역사. \item 한글라텍 설치. \item 한글라텍 사용. \item 우리말 글꼴 선택. \end{itemize} 이 글이 한글라텍을 사용하는 분들에게 조그마하나마 도움이 될 수 있기를 바랍니다. 한글라텍을 발표하면서 한글 글자체 작성에 도움을 주신 고려대학교 언어과학과 李基用 교수님(klee@korea.ac.kr), 문화관광부\footnote{이전의 문화체육부} \PS{} 글자체를 제공하신 연세대학교 국문과 洪允杓 교수님, 한글을 보는 눈을 깨우쳐 주신 충남대학교의 노용균교수님\footnote{yno@linguist.cnu.ac.kr}, 한글라텍의 문제점과 개선점을 지적하고 도와주신 원세연님\footnote{sywon@sorak.kaist.ac.kr}과 이천우님\footnote{clee@achem2.ajou.ac.kr}, 우리말 글자체 선택 모듬 명령(macro)을 제안$\cdot$수정$\cdot$실험해 주신 이형석님\footnote{hyslee@sarang.kaist.ac.kr}, 항상 컴퓨터에서의 한글 사용에 대해 전반적으로 도움을 주시는 신정식님\footnote{jshin@mailaps.org}, KTUG을 운영하시는 조진환님\footnote{chofchof@ktug.or.kr}, 한글 글자체를 비롯하여 다방면에서 활동하시는 박원규님\footnote{wkpark@chem.skku.ac.kr}, 한글라텍 윈도우 포팅에 노력을 아끼지 않으시는 김강수님\footnote{karnes@doeun.pe.kr} 그리고 한글라텍의 발전에 기여하신 많은 여러분께 감사의 마음을 전합니다. 특히 李基用 교수님은 한글라텍의 발전을 위하여 2GB 굳은 저장판(hard disk)을 2개 기증하셨습니다. 한글라텍은 이를 바탕으로 새로운 완성형 글자체와 UHC 글자체들을 만들 수 있었습니다. 한글라텍을 완성해 가면서 李基用 교수님께 감사합니다. \bigskip \hfill --- 殷 光熙. \end{abstract} \section{텍 -- 문서 식자 시스템} \subsection{텍에 대해} 텍(\TeX)\index{역사!\TeX}은\footnote{`텍'은 그리이스어 $\tau\epsilon\chi{}$에서 유래된 낱말입니다. \begin{quote} English words like `technology' stem from a Greek root beginning with the letters $\tau\epsilon\chi{}\ldots$; and this same Greek word means \textit{art} as well as technology. Hence the name 텍, which is an uppercase form of $\tau\epsilon\chi{}$. Insiders pronounce the $\chi$ of 텍 as Greek chi, not as an `x', so that 텍 rhymes with the word blecchhh. It's the `ch' sound in Scottish words like \textit{loch} or German words like \textit{ach}; it's a Spanish `j' and a Russian `kh'. When you say it correctly to your computer, the terminal may become slightly moist. \end{quote} \hfill \textsl{The \TeX{}book에서 발췌}.} 미국 스탠포드 대학 수학과의 Donald E.~Knuth 교수가 1977년 5월에 처음으로 만들었고, 그 해 여름에 Michael F.~Plass 씨와 Frank M.~Liang 씨가 지금의 텍의 전신을 만드는 공동 작업을 하였으며 같은 해 말에서 다음 해 초 사이에는 Knuth 교수가 다시 완성시킨 문서 식자 시스템입니다.\index{문서 식자 시스템!텍} 텍은 원래 SAIL 언어로 쓰여졌으나 1979년 초에는 Knuth 교수와 Luis Trapp Pardo에 의해 공동 개발된 Web 언어로 전환시키는 작업이 시작되었고 1979년과 1980년에 Ignacio A.~Zabala 씨가 이를 완성시켰습니다. 텍은 1979년 후반기와 1980년 전반기에 걸쳐 Knuth 교수가 더욱 안정된 프로그램로 정착시켰고 그해 9월에 \TeX82 버전 0으로 발표되기 시작했습니다. 그 후 많은 사람들의 조언을 반영하여 1989년 9월에 최종의 심사를 거쳐 발표된 텍은 현재, 전문적인 자연 과학 문서를 작성하는 데 가장 좋은 문서 식자기로 인정받고 있습니다(\cite{Knuth:ct-a} -- \nocite{Knuth:ct-b} \nocite{Knuth:ct-c} \nocite{Knuth:ct-d} \cite{Knuth:ct-d}\를 참고). 수학자인 Knuth 교수는 이 문서 식자 체계를 사용하여 수학 공식도 자유 자재로 쓸 수 있도록 했습니다. Knuth 교수는 텍 외에도 \MF{}를 개발하여 텍 문서를 인쇄하는데 필요한 양질의 글자체를 만들어 낼 수 있도록 하였고 이로서 텍은 출판 서적을 만드는 데 손색이 없는 문서 식자 체계로 자리를 잡게 되었습니다. \subsection{라텍에 대해} 텍의 식자 기능은 매우 탁월하지만 일반 사용자의 측면에서는 프로그래머의 사고 능력을 요구하기 때문에 많은 노력과 경험으로 텍의 기능을 이해하여야 문서를 작성할 수 있습니다. 예를 들어 사용자는 글자체를 스스로 정의하고 문장과 문장 사이의 간격을 넓혀주는 등의 일을 일일이 손으로 처리해야 했습니다. 그래서 텍은 전문적인 프로그래머 층에서나 사용할 수 있었습니다. 그러나 미국의 전산과학자인 Les\-lie Lam\-port는 사용자와 텍의 사이를 좁히는 역할을 할 수 있도록 라텍(\LaTeX)\index{역사!\LaTeX}을 개발하여 쉽게 문서를 작성하게끔 기여하였습니다 (\cite{Lamport:1985:LDP}\를 참고). 그는 일반적인 문서 모양새를 텍의 모듬 명령(macro)으로 정의함으로써, 프로그래밍의 경험이 없는 사용자도 쉽게 문서를 작성할 수 있도록 하였습니다. 사용자는 쓰고자 하는 글의 전체적인 윤곽에 맞는 양식을 지정한 후, 작성하는 문서의 내용에만 집중하면 원하는 모양새의 문서를 작성할 수 있게 되었습니다. 그리하여 사용자는 텍에 대한 전문 지식이 없어도 짧은 시간 내에 좋은 문서를 작성할 수 있게 되었습니다.\index{라텍} 장기간이 흐르면서 라텍은 전세계적으로 많이 보급되었고 이에 따라 라텍이 해내야 하는 과제의 폭도 넓어졌습니다. 그 결과로 라텍은 근본적인 바탕을 바꾸고 국제화되어야 한다는 여론이 높아졌고 1992말부터는 라텍 버전 3 일감 팀(project team)\footnote{Leslie Lamport, Johannes Braams, David Carlisle, Alan Jeffrey, Frank Mittelbach, Chris Rowley, Rainer Sch\"opf: 이들은 \cite{Goosens:LC94}\을 출간하였는데 이 책의 수입은 그 절반이 라텍 버전 3 개발팀에게 할당되어 이 팀을 지원하게끔 되어 있습니다.}이 구성되어 새로운 라텍 버전 3의 작업에 착수하였습니다.\index{라텍!버전 3} 1994년 6월 1일을 기해 라텍 버전 2$\epsilon$\index{역사!\LaTeXe}을 공식적으로 내놓은 이 팀은 현재 (94년 11월) 깁기 수준(patchlevel) 4를 발표하면서 계속 라텍 버전 3을 위해 작업하고 있습니다. Frank Mittelbach 씨와 Rainer Sch\"opf 씨는 \cite{Scherber:OST94}에서 라텍 버전 3 개발\index{LaTeX@\LaTeX3 개발}의 목표를 다음과 같이 설명하고 있습니다.\index{라텍!개발 목표} \begin{itemize} \item 라텍의 사용 범위를 이전의 자연 과학 분야에서 벗어나, 각 분야의 문서 모양새에도 만족할 수 있는 모양새 파일을 제공하고 이런 여러 모양새를 간단한 방법으로 사용자가 선택할 수 있도록 한다. \item 위와 같은 모양새 파일을 자세히 설명함으로써 사용자가 이런 기본적인 문서 모양새를 바탕으로 자신의 독자적 요구를 쉽게 이룰 수 있게 한다. \end{itemize} \subsection{한글 라텍에 대해} 이렇게 라텍이 국제화되어 가는 동안 한국 KAIST 전산학과에서는 라텍으로 한글을 쓸 수 있도록 모듬 명령을 만들고 한글 글자체를 준비하여 hlatex을\index{역사!hlatex} (최우형, 백윤주) 보급하였습니다. (\cite{최우형92}\를 참고) hlatex은 기존의 라텍에 한글 글자체를 추가하는 \texttt{hfont.tex}, 한글 문서 작성 환경을 정의하는 \texttt{harticle.sty}과 \texttt{hreport.sty}, \texttt{hbook.sty} 그리고 한글 KS 완성형 부호 체계를 텍의 모듬 명령으로 변환해 주는 앞처리기(preprocessor) \texttt{htex}으로 구성되어 있습니다. 보급되는 글자체의 사용을 제한받으면서 출발한 hlatex은 그런대로 통신망을 통해 KAIST 외부의 일반에게 퍼지게 되었고\footnote{그 당시 hlatex의 사용은 KAIST 이내와 해외에서만 허용되었습니다.}, 이를 바탕으로, 한자의 사용을 추가한 jhtex이 (殷光熙) 만들어지게 되었습니다. 여기에는 손쉽게 구할 수 있는 일본의 간지 글자체를 hlatex에 덧붙여 사용할 수 있도록 하였고 문서 모양새도 좀더 한글화 될 수 있도록 하였으며 글자체가 늘어남으로써 불가피해 진 \NFSS{}의 도입이 이루어졌습니다.\footnote{\NFSS{}는 라텍 버전 2$\epsilon$의 주된 기능으로 New Font Selection Scheme의 약자입니다. 라텍의 글자체 선택 방식을 대폭 개선함으로써 그 동안 라텍의 취약점으로 남아 있던 글자체 선택 문제를 완벽히 해결한 기능입니다.} 이 두 프로그램은 좀더 나은, 하나의 프로그램으로 일반에게 보급될 수 있고자 한글라텍\index{역사!한글라텍}으로 통합되었는데 이로써 한글라텍은 다음과 같이 변화하였습니다 (한글라텍 버전 0.92e).\index{한글라텍} ① 라텍 버전 2$\epsilon$에 의한 한글 문서 작성 ② 한국 표준 부호 체계 및 한자 사용 ③ 앞처리기(preprocessor)의 기능을 라텍 모듬 명령으로 대체 KAIST 전산학과에서 시작된 hlatex은 다양한 글자체를 보급하여 어느 정도 변화있는 한글 문서를 작성할 수 있도록 하였지만, 글자체의 원천(source)이 공개될 수 없어서, 미리 만들어진 300dpi와 600dpi의 \texttt{pk} 파일만 제공되었습니다. 따라서 문서의 인쇄는 300dpi와 600dpi의 해상도를 갖는 인쇄기에서만 가능했습니다. 그래서 한글라텍 버전 0.93부터는 문화관광부에서 공개한 글자체와 \PS{} type I 글자체, 그 외에도 두값본 그림(bitmap graphic)에서 추출된 외곽선 글자체가 \MF{} 원천으로 보급됩으로써 사용자는 아무런 제약 없이 한글라텍을 사용할 수 있게 되었습니다. 글자의 배치도 이전의 KAIST식인 조합 완성 혼합식을 따르지 않고 일반적인 한국 표준 완성형 방식을 지향하게 되었습니다. \subsection{\OMEGA{}에 대해} \label{소절:미래}\index{오메가@Ω} 텍의 앞날을 바라보면 우리말과 같이 평범하게 처리하기 어려운 언어권의 사용자들에게 많은 희망을 줍니다. 1997년 2월에 발표된 web2c 버전 7.0과\index{web2c-7.0} 같은 예를 보더라도 한 문서에서 256개의 글자체밖에 사용할 수 없었던 장벽이 무너지고 글자체를 최대한 2000개까지 사용할 수 있게 됨으로써, 이 『한글라텍\ 길잡이』를 처리하는 데 힘겨웠던 불편이 완전히 사라질 수 있었습니다. 그러나 근본적인 문제는, 텍 자체가 7비트 부호 체계를 바탕으로 만들어져 있는 반면 한글 부호화 표준(KSC 5601-1987)은 8비트의 문자가 두 번 연속되는 이중 바이트의 체계라는 데에서 발생합니다. 텍 버전 3의 출현으로 유럽 언어와 같은 8비트 부호 체계의 처리는 해결되었지만 우리말과 같은 16비트 부호를 처리하는 데에는 아직 많은 문제점을 안고 있습니다. 이러한 문제의 근본적인 해결책은 16비트 부호 체계를 바탕으로 형성된 텍의 구현으로 이루어질 수 있습니다. 세계적인 추세도 각 나라의 모든 언어를 동시에 부호화 할 수 있는 통일된 부호화 방식을 지향하게 되었고, 국제 표준화 단체는 32비트 코드 체계인 국제 부호화 문자 세트(UCS)를 발표하였습니다. 이에 따라 텍에서 이 문자 세트를 사용할 수 있도록 하기 위해 8비트 코드 체계를 확장하여 16비트 코드 체계에 바탕을 둔 \OMEGA{}로 텍을 대체하는 시도가 나오게 되었습니다. 그러므로 \OMEGA{}는 16비트 텍의 구현으로서, 유니코드를 처리할 수 있는 텍이라고 간단히 표현할 수 있습니다. \OMEGA{}는 현재 Yannis Haralambous와\footnote{Yannis.Haralambous@univ-lille1.fr} John Plaice가\footnote{plaice@ift.ulaval.ca} 공동으로 개발하고 있는데 1996년 11월에 te\TeX 버전 0.4를 바탕으로 시험판이 나왔었고, 1997년 11월에는 공개판으로 \OMEGA{} 버전 1.47이 발표되었습니다. \OMEGA{} 공개판이 발표됨으로써 \OMEGA{}에서 사용될 수 있는 새로운 꾸러미(package)들이 많이 개발되어 왔고, web2c 버전 7.0부터 \OMEGA{}에\index{오메가@Ω}가 지원되기 시작하였습니다. 결국, 1998년 3월에 발표된 web2c 버전 7.2에는 \OMEGA{} 버전 1.5를 공식적으로 채택하여 함께 보급하게 되는 단계에까지 오게 되었습니다. 2005년 현재 web2c는 버전 7.5.4까지 나왔고 여기에는 \OMEGA{} 버전 1.23.2.3이 포함되어 있습니다. 이런 상황에서, 라텍 버전 3이 \OMEGA{}를 의미하게 된다면 우리 동양권에서는 더욱 바랄 나위가 없겠지만 아직 이에 대해 결정된 사실은 들어본 바 없습니다. 1996년까지도 라텍 버전 3팀은 \OMEGA{}를 별개의 텍으로 언급하였지만 국제화를 목표 중의 하나로 삼고 있는 라텍 버전 3에 \OMEGA{}의 도입은 심각히 고려되어질 것입니다. Fabrice Popineau의 마이크로소프트 윈도우용 텍 배포판이나 Thomas Esser가 만드는 te\TeX{} 등은 모두 다 \OMEGA{}를 포함하고 있습니다. 이러한 상황을 감안할 때 앞으로의 텍은 \OMEGA{} 쪽으로 그 흐름의 향방이 결정되지 않을까 하는 희망을 갖게 합니다. 16비트 부호를 처리하는 텍은 우리말과 밀접한 관계가 있습니다. 그러므로 \OMEGA{}와 한글라텍의 관계는 밀접할 수 밖에 없습니다. \OMEGA{}를 사용하여 우리말 부호를 처리할 때에, 지금까지 한글라텍에 커다란 문제로 남아있는, 기존의 텍을 바탕으로 한 2$\times$8비트식 부호 처리는 간단히 해결됩니다. \OMEGA{} 버전 1.5로 우리말 KS X 1001 문서를 처리할 때에 그 처리 속도는 텍으로 영문 문서를 처리하는 속도와 차이점이 거의 없습니다. \OMEGA{}는 이제 거의 완숙한 단계에 도달하고 있고 앞으로는 텍을 완전히 대체하고 본격적으로 사용되는 방향으로 전개될 것을 희망하고 있습니다. \OMEGA{}를 유니코드 텍이라고 한다면 Λ는 유니코드 라텍입니다. 한글라텍 버전 1.0부터는 Λ를 사용하여 UTF-8 부호화로 작성된 한글 문서를 처리할 수 있는 모듬 명령 파일 및 글자체를 제공합니다.\index{람다@Λ} \section{한글라텍의 설치} \label{sec:install}\index{한글라텍!설치} \subsection{TDS --- 파일의 위치} \label{sec:TDS} TDS(\TeX{} Directory Structure)는 `텍 파일 자료방의 구조'에 대한 규정입니다. 이 규정은 텍의 자료방 구조를 정규화함으로써 사용자 사이에서 발생할 수 있는 혼돈을 피하고자 하는 목적에서 만들어졌습니다. 이하는 2004년 6월 23일 발표된 TDS 버전 1.1을 기반으로 설명됩니다.\index{TDS} 이 규정에 따르면, 텍에 필요한 파일들은 TDS의 출발점인 \texttt{TEXMF} 밑에 두게 됩니다. \texttt{TEXMF}는 텍의 원천 코드를 컴파일할 때 결정되며, 컴파일 시에 \texttt{prefix}를 \texttt{/usr}로 설정하면 운영 체계 내에서의 경로 \texttt{/usr/share/texmf}가 \texttt{TEXMF}로 결정됩니다. 이미 설치된 텍 운영 체계에서도 \texttt{texmf.cnf} 파일에서 \texttt{TEXMF}를 다시 설정할 수 있습니다. TDS를 준수할 경우, 서로 다른 텍 배포판에서도 최상위 자료방인 \texttt{TEXMF}의 경로만 다를 뿐이고 그 이하의 자료방 구조는 같습니다. `\texttt{최상자료방}'은 텍 운영 체계의 구성 요소로서 \texttt{tex} (텍 파일), \texttt{fonts} (폰트 관련 파일), \texttt{metafont} (폰트가 아닌 \MF{} 파일), \texttt{metapost} (\MP{} 파일), \texttt{bibtex}(\BibTeX{} 파일), \texttt{scripts} (운영 체계 독립적인 실행 파일), \texttt{doc} (사용자용 문서 파일), \texttt{source} (원천 파일), \texttt{<구현>} (\texttt{emtex, vtex, web2c}와 같은 텍 구현 관련 파일), \texttt{<프로그램>} (\texttt{mft, dvips}와 같은 프로그램에 따른 입력 및 설정 파일) 등등이 해당됩니다. 텍 체계를 구성하는 모듬 명령 파일의 위치는 다음과 같은 계층 구조를 갖습니다. \begin{verbatim} TEXMF/tex/틀/꾸러미 \end{verbatim} `\texttt{틀}'은 텍의 용어로 \verb|\dump| 되어지는 것들을 말합니다. 한글라텍은 라텍 틀을 쓰므로 자료방의 이름은 \texttt{latex}이 됩니다. `\texttt{꾸러미}'는 이름 그대로 텍의 꾸러미 이름을 가리킵니다. 꾸러미를 구성하는 파일이 하나밖에 없을 때에 자료방은 \texttt{misc}가 됩니다. 여러 파일로 구성되어 있을 때는 꾸러미 이름에 따른 적당한 이름의 자료방을 마련합니다. 자료방의 파일의 종류가 많을 경우에는 하위자료방을 따로 만듭니다. 한글라텍의 경우에 이 자료방의 이름이 \texttt{hlatex}입니다. 한글라텍은 파일의 수, 특히 글자체 파일의 수가 많아서 한글라텍 전체의 뿌리 (\texttt{TEXMF})를 달리 하자는 의견이 있습니다. 일반적으로 지역 파일은 \texttt{TEXMFLOCAL}로 대변되는 자료방 (teTeX의 경우에는 \texttt{/usr/share/texmf-local}, MikTeX의 경우에는 \texttt{c:\textbackslash localtexmf})를 뿌리로 하지만 한글라텍의 관리를 용이하게 하기 위해서는 \texttt{TEXMFHANGUL}을 뿌리로 정할 수 있습니다. 자료방의 이름은 \texttt{texmf-hlatex}을 제안합니다. 텍 운영 체계에 이와 같은 설정을 추가하기 위해서는 \texttt{texmf.cnf} 설정 파일을 편집하여야 합니다. 텍 운영 체계에서 현재 사용하고 있는 설정 파일의 위치는 다음의 명령으로 찾을 수 있습니다.\index{texmf.cnf@\texttt{texmf.cnf}} \begin{verbatim} kpsewhich texmf.cnf \end{verbatim} 운영 체계 관리자의 권한으로 이 파일을 편집기로 열어서 적당한 곳에 (에를 들어 \texttt{TEXMFMAIN}이 설정된 줄 다음에) 다음과 같은 줄을 끼워 넣습니다. \begin{verbatim} TEXMFHANGUL = /usr/share/texmf-hlatex \end{verbatim} 그리고 \texttt{TEXMF}가 정의된 줄을 찾아 다음과 같은 식으로 \texttt{TEXMFHANGUL}을 추가합니다. \begin{verbatim} TEXMF = {...,!!$TEXMFHANGUL,!!$TEXMFMAIN,...} \end{verbatim} 이에 따라 한글라텍의 모듬 명령(macro) 파일들은 \begin{verbatim} texmf-hlatex/tex/latex/hlatex \end{verbatim} 에 설치됩니다. 텍에 동반되는 프로그램이나 PDF\TeX{}이나 \OMEGA{}와 같이 기능이 확장된 프로그램들이 많습니다. 이와 같은 프로그램에 속하는 입력 파일들은 \texttt{최상자료방}인 \texttt{tex} 밑에 둡니다. 따라서 Λ 모듬 명령 파일들은 \begin{verbatim} texmf-hlatex/tex/lambda/hlatex \end{verbatim} 에 설치됩니다. 글자체는 다음과 같은 규정에 의해 설치할 것을 요구합니다. \begin{verbatim} TEXMF/fonts/형식/제공자/글자체 TEXMF/fonts/{enc,lig,map}/하위경로 \end{verbatim} `\texttt{형식}'은 글자체의 종류를 가리킵니다. 즉, \texttt{source}, \texttt{tfm}, \texttt{ofm}, \texttt{vf}, \texttt{ovf}, \texttt{type1}, \texttt{afm} 등이 이에 해당합니다. 글자체의 부호화나 연자 혹은 글자체 이름 대응 파일들은 각각 \texttt{enc, lig, map} `\texttt{형식}' 자료방에 평행한 자료방에 따로 둡니다. `\texttt{제공자}'의 대상은 글자체를 만드는 업체나 만든이 등입니다. adobe 회사의 type1 글자체 (\texttt{adobe}), bitstream 회사의 type1 글자체 (\texttt{bitstrea}), D.~Knuth 교수의 \MF{} 글자체 (\texttt{public}), J.~Knappen 씨의 \MF{} 글자체 (\texttt{jknappen}) 등을 예로 들 수 있습니다. 한글라텍의 경우에 `\texttt{제공자}'는 \texttt{uhc}입니다. `\texttt{글자체}'는 글자의 모양에 따른 이름입니다. adobe 회사에서 만든 글자체에는 \texttt{times}, \texttt{helvetic} 등의 이름이 사용되고 D.~Knuth 교수가 텍 운영 체계를 위해서 만든 글자체의 경우는 \texttt{cm}, \texttt{ec} 등의 이름이 사용되며 한글라텍에서 제공하는 글자체에서는 \texttt{myoungjo}, \texttt{gothic} 등의 이름이 사용됩니다. 이에 따라 한글라텍의 글자체들은 다음의 자료방에 위치하게 됩니다. \begin{verbatim} texmf-hlatex/fonts/형식/uhc/{myoungjo,gothic,...} texmf-hlatex/fonts/map/hlatex \end{verbatim} 이하의 소절에서는 위와 같은 TDS에 의거하여 한글라텍을 설치하는 방법을 안내합니다. \subsection{한글라텍의 모듬 명령 파일 설치} \label{소절:모듬파일설치}\index{한글라텍!설치!모듬} 한글라텍의 각종 모듬 명령 파일은 KTUG (Korean TeX User Group)의 ftp 서버 혹은 CTAN (Comprehensive TeX Archive Network)의 다음 URL에서 가져올 수 있습니다.\footnote{CTAN에서는 자료방 안에서 버전을 확인하세요.} \begin{verbatim} ftp://ftp.ktug.or.kr/pub/ktug/hlatex/HLaTeX-1.0.1.tar.gz ftp://ftp.dante.de/tex-archive/language/korean/HLaTeX.tar.gz \end{verbatim} 파일의 압축과 묶음을 풀고 필요한 파일을 다음과 같이 해당하는 자료방에 복사함으로써 설치됩니다. \newcommand{\installmacros}[3]{ \hspace*{1em} \parbox[t]{.9\textwidth}{% \parindent=0pt \hangindent=1em \hangafter=1 {\small\디나루 원천 자료방}: \ttfamily #1 \hangindent=1cm \hangafter=1 {\small\디나루 파일}: \ttfamily #2 \hangindent=1cm \hangafter=1 {\small\디나루 목표 자료방}: \ttfamily #3} } \begin{list}{\textbullet}{} \item 한글라텍 모듬 명령 파일:\\ \installmacros{latex}% {hangul.sty, euc-kr.tex, hfont.tex, hfont.sty, josa.tab, hsw*.fd, hww*.fd, hhw*.fd}% {texmf-hlatex/tex/latex/hlatex} \item 한글Λ 모듬 명령 파일: \\ \installmacros{lambda}% {u8hangul.tex, uhc-test.tex, uhc*.fd}% {texmf-hlatex/tex/lambda/hlatex} \item 한글Λ \OMEGA{}TP{} 파일: \\ \installmacros{lambda}% {hlatex.otp, hlatex.ocp}% {texmf-hlatex/omega/\{otp,ocp\}/hlatex} \item 한글라텍에서 \texttt{halpha.bst}를 사용할 때 정의되는 한글 이름 파일:\\ \installmacros{contrib}% {hbibname-k.tex}% {texmf-hlatex/tex/latex/hlatex/} \item 한글Λ에서 \texttt{halpha.bst}를 사용할 때 정의되는 한글 이름 파일:\\ \installmacros{contrib}% {hbibname-u.tex}% {texmf-hlatex/tex/lambda/hlatex/} \item 한글 참고 문헌 양식 파일:\\ \installmacros{contrib}% {halpha.bst}% {texmf-hlatex/bibtex/bst/hlatex} \item 참고 문헌 한글 이름 정의 파일: \\ \installmacros{contrib}% {hbname-k.tex, hbname-u.tex}% {texmf-hlatex/tex/\{latex,lambda\}/hlatex} \item 한글 색인/어휘 양식 파일: \\ \installmacros{contrib}% {contrib/hind.ist, contrib/hglo.ist}% {texmf-hlatex/makeindex} \item 한글 참고 문헌/색인 생성 파일: 유닉스 운영 체계에서는 \texttt{contrib} 자료방에 있는 원천 파일 \texttt{hmakeindex.c}와 \texttt{hbibtex.c}를 실행 프로그램으로 번역하여 운영 체계의 실행 프로그램 자료방에 복사합니다.\\ \texttt{gcc hmakeindex.c -o hmakeindex}\\ \texttt{gcc hbibtex.c -o hbibtex}\\ 윈도우즈 운영 체계에서는 \texttt{contrib} 자료방에 있는 \texttt{hmakeindex.exe}와 \texttt{hbibtex.exe}를 실행 프로그램 자료방에 복사합니다. \item 한글라텍에 적당하게 수정된 라텍 \texttt{tools} 패키지:\\ \installmacros{contrib} {khyper.sty, showhkeys.sty, showhtags.sty}% {texmf-hlatex/tex/latex/hlatex} \item 한글 문서에서 흔히 사용되는 각주 판짜기 양식 파일:\\ \installmacros{contrib}% {hangulfn.sty, hfn-k.tex, hfn-u.tex}% {texmf-hlatex/tex/\{latex,lambda\}/hlatex} \end{list} \texttt{hangul.sty}은 우리말 문서의 모양새 파일로서 모든 한글라텍 문서에 사용되는 양식 파일입니다.\index{한글라텍!설치!hangul.sty} \texttt{hangul.sty}은 라텍과 Λ가 사용될 때를 구분하여 각각 \texttt{euc-kr.tex}과 \texttt{u8hangul.tex}를 읽습니다. \texttt{euc-kr.tex}은 EUC-KR 부호화 문자를 처리하기 위해 \texttt{hfont.tex}을 읽어 들입니다. \texttt{hfont.sty}은 \texttt{hangul.sty} 대신에 사용될 수 있으며 우리말 문자를 처리하는 기능만 이용하는 모양새 파일이며 \texttt{hangul.sty}에서 제공하는 다양한 한글 문서 처리 양식이 사용되지 않고 기존의 영문 문서의 처리 양식이 사용됩니다. \texttt{josa.tab}은 자동 조사 처리를 위해 \texttt{euc-kr.tex}이 읽어들이는 파일입니다. 한글라텍에서 제공하지 않는 글자체의 애초값을 추가로 설정하거나 기존의 설정을 바꾸기 위해서는 \texttt{hfont.cfg}에 설정 사항을 기록하여 텍 운영 체계에 설치하면 \texttt{hfont.tex}이 자동으로 설정을 반영합니다. 한글라텍에 사용되는 글자체는 상징 문자와 한글 그리고 한자로 나뉘어져 있으며 상징 글자를 정의하는 파일이 \texttt{hsw*.fd}이고 한글 글자를 정의하는 파일이 \texttt{hws*.fd}이며 한자 글자를 정의하는 파일이 \texttt{hhs*.fd}입니다.\index{한글라텍!설치!.fd} 한글Λ를 사용할 경우에는 \texttt{u8hangul.tex} 파일이 UTF-8 부호화 문자를 처리하기 위한 \OMEGA{}TP{} (\OMEGA{} Translation Process) 파일인 \texttt{hlatex.ocp}를 가동합니다.\index{한글라텍!설치!hlatex.ocp} \texttt{hlatex.otp}는 기계어로 번역되기 전의 텍스트 파일입니다. 한글Λ에 사용되는 글자는 한글라텍에 사용되는 글자와 달리 상징, 한글, 한자로 나뉘지 않으며 글자체 정의 파일의 이름들은 \texttt{uhc*.fd}입니다. \texttt{halpha.bst}는 한글 참고 문헌 데이터베이스를 사용할 때 필요한 \BibTeX{} 양식 파일입니다.\index{한글라텍!설치!halpha.bst} 참고 문헌 데이터베이스를 처리할 때에는 이 한글 양식 파일에 정의된 한글 이름이 사용되는데, 한글라텍과 한글Λ의 부호화 방식이 서로 다르므로 \texttt{hbname-k.tex}과 \texttt{hbname-u.tex}에 서로 다른 부호화 방식으로 한글 이름을 정의하였습니다. 한글Λ에서 참고 문헌 데이터베이스를 이용할 때는 Λ가 보조 파일에 8비트 문자를 출력하지 못합니다. 따라서 미리 보조 파일의 한글 문자를 8비트로 변환하는 작업이 필요하며 이를 위해서는 \texttt{contrib} 자료방의 \texttt{hbibtex.c}를 실행 프로그램으로 번역하여 사용하여야 합니다. 윈도우즈 운영 체계에서는 미리 번역한 \texttt{hbibtex.exe}를 사용하면 됩니다.\index{hbibtex@\texttt{hbibtex}} \texttt{hind.ist}와 \texttt{hglo.ist}는 \texttt{makeindex}로 우리말 색인 및 어휘집을 작성할 때의 사용되는 모양새 파일입니다.\index{hind.ist}\index{hglo.ist} 색인 작성 시에 문제가 되는 부분은 \texttt{\textbackslash indexhead}로 구분되는 색인의 머릿글자의 처리인데 이를 위해서는 \texttt{contrib} 자료방에 있는 \texttt{hmakeindex.c}를 수행 프로그램으로 번역해서 사용해야 합니다. \texttt{hmakeindex}는 또한 한글Λ에서 보조 파일에 출력하는 8비트 문자의 텍 표기 방식을 인식하여 \texttt{makeindex}의 문자 정렬이 제대로 수행되도록 하므로 한글라텍과 한글Λ에서 동시에 사용할 수 있습니다. 윈도우즈 운영 체계에서는 미리 번역한 \texttt{hmakeindex.exe}를 사용하면 됩니다.\index{hmakeindex@\texttt{hmakeindex}} \texttt{hangulfn.sty}은 라텍에서 기본적으로 제공되는 각주 판짜기 형식을 수정하여 한글 문서에서 흔히 볼 수 있는 방식의 각주 판짜기를 쉽게 처리할 수 있도록 하기 위해 제공되는 패키지입니다. 이 패키지를 사용하면 각주 번호 양식을 애초값인 첨자(``$^1$'') 혹은 괄호(``1)'') 중에서 선택할 수 있고 각주면을 내어쓰기 및 들여쓰기에 의한 판짜기를 선택할 수 있습니다. 소절 \ref{소절:각주판짜기}에 자세한 사용법이 소개됩니다. 선택 사항을 지정하는 한글 이름의 부호화에 따라 한글라텍에서는 \texttt{hfn-k.tex}을, 한글Λ에서는 \texttt{hfn-u.tex}을 사용합니다. \subsection{한글 글자체 설치} \label{소절:글자체설치}\index{한글라텍!설치!글자체} 한글라텍의 각종 글자체는 KTUG (Korean TeX User Group)의 ftp 서버 혹은 CTAN (Comprehensive TeX Archive Network)의 다음 URL에서 가져올 수 있습니다. \begin{verbatim} ftp://ftp.ktug.or.kr/pub/ktug/hlatex/fonts/ ftp://ftp.dante.de/tex-archive/fonts/korean/HLaTeX/ \end{verbatim} 글자체들은 모두 한글라텍과 한글Λ에서 사용될 수 있으며 다음과 같이 \texttt{tar}/\texttt{gzip}으로 압축되어 제공됩니다. \smallskip \begin{tabular}{|c|ll|}\hline 글자체 설정 & uhc-base.map, uhc-extra.map & \ttfamily uhc-fonts-1.0.tar.gz \\\hline & \fontfamily{mj}\selectfont 명조 & \ttfamily uhc-myoungjo-1.0.tar.gz \\ \raisebox{1.5ex}[-1.5ex]{기본} & \fontfamily{gt}\selectfont 고딕 & \ttfamily uhc-gothic-1.0.tar.gz \\ \raisebox{1.5ex}[-1.5ex]{글자체} & \fontfamily{tz}\selectfont 타자 & \ttfamily uhc-taza-1.0.tar.gz \\ \hline & \fontfamily{gr}\selectfont 그래픽 & \ttfamily uhc-graphic-1.0.tar.gz \\ & \fontfamily{gs}\selectfont 궁서 & \ttfamily uhc-gungseo-1.0.tar.gz \\ & \fontfamily{sh}\selectfont 신문 & \ttfamily uhc-shinmun-1.0.tar.gz \\ & \fontfamily{pg}\selectfont 필기 & \ttfamily uhc-pilgi-1.0.tar.gz \\ & \fontfamily{pn}\selectfont 펜글씨/% \fontfamily{ph}\selectfont 펜흘림 & \ttfamily uhc-pen-1.0.tar.gz \\ \raisebox{1.5ex}[-1.5ex]{추가} & \fontfamily{bm}\selectfont 봄글씨 & \ttfamily uhc-bom-1.0.tar.gz \\ \raisebox{1.5ex}[-1.5ex]{글자체} & \fontfamily{yt}\selectfont 옛글 & \ttfamily uhc-yetgul-1.0.tar.gz \\ & \fontfamily{jmj}\selectfont 자모 (명조/% \fontfamily{jgt}\selectfont 고딕/% \fontfamily{jnv}\selectfont 노벨/% \fontfamily{jsr}\selectfont 소라) & \ttfamily uhc-jamo-1.0.tar.gz \\ & \fontfamily{vd}\selectfont 바다 & \ttfamily uhc-vada-1.0.tar.gz \\ & \fontfamily{pga}\selectfont 필기a & \ttfamily uhc-pilgia-1.0.tar.gz \\ & \fontfamily{dn}\selectfont 디나루 & \ttfamily uhc-dinaru-1.0.tar.gz \\ \hline \end{tabular} \smallskip UHC 글자체는 크게 기본 글자체와 추가 글자체로 분류되며 모두 \PS{} Type1 형식의 14가지 종류가 있습니다.\index{한글라텍!글자체} Type1 글자체는 \texttt{afm}과 \texttt{pfb} 형식의 파일로 구성되는데, \texttt{afm} 파일이 \texttt{tfm}과 \texttt{vf} 형식의 파일로 전환되어 라텍에서 사용할 수 있게 됩니다. Λ용으로는 \texttt{ofm}, \texttt{ovf} 형식의 파일로 제공됩니다. 이 글자체들은 \verb|\fontseries| 중 좁은 넓이(75\%)에서 보통 넓이(100\%), 확장 넓이(125\%), 초확장 넓이(200\%)까지의 크기를 갖고 있으며, 무게 부분은 명조체, 고딕체, 그래픽체, 필기체의 경우 보통 무게(medium)와 진한 무게(bold)가 있고, 디나루체에는 가는 무게(light)까지 있으며 그 외의 글자체에는 한 가지 종류만 있습니다.\index{글자체!넓이} \verb|\fontshape|은 모두 보통 모양과 기울인 모양으로 구성되며 기울인 모양이 이탤릭 모양을 대신합니다. 각종 글자체들은 \texttt{TEXMF/fonts} 자료방에서 \texttt{gunzip}/\texttt{tar}로 압축을 풀면 설치가 끝납니다. \begin{verbatim} gunzip -c uhc-myoungjo.tar.gz | tar xvf - ... \end{verbatim} \PS{} UHC 글자체를 사용하여 인쇄 및 다른 후처리 작업을 하기 위해서는 \PS{} 글자체의 설정 작업이 필요하며 이를 위해 기본 글자체와 추가 글자체의 설정에 필요한 \texttt{uhc-base.map}과 \texttt{uhc-extra.map} 파일이 제공됩니다.\index{한글라텍!설치!fontmap} 적어도 web2c 7.5.4 이상의 버전에서 이 fontmap 파일은 \texttt{TEXMF/fonts/map}의 하위 자료방에 설치되고 이전의 web2c 버전에서는 \texttt{TEXMF/dvips}의 하위 자료방에 설치됩니다. web2c 7.5.4 버전을 기준으로 할 때 이 두 fontmap 파일은 \texttt{TEXMF/fonts/map/hlatex} 자료방에 설치되는 것을 원칙으로 합니다. \texttt{uhc-fonts-1.0.tar.gz}을 적당한 위치에서 풀고 \texttt{uhc-fonts-1.0} 자료방에 있는 두 fontmap 파일을 \texttt{TEXMF/fonts/map/hlatex}에 복사합니다. fontmap 파일이 설치된 후에는 운영 체계의 관리자로서 \texttt{texhash}를 실행 시켜서 \texttt{ls-R} 데이터베이스를 갱신하고 \begin{verbatim} updmap-sys --enable Map=uhc-base.map \end{verbatim} 을 실행시키면 \texttt{dvips}, \texttt{pdftex}, \texttt{xdvi}, \texttt{ps2pk}, \texttt{gsftopk}, \texttt{dvipdfm} 등과 같은 후처리 프로그램에서 한글 라텍 글자체를 사용할 수 있게 설정 됩니다. 추가 글자체도 함께 설치하였을 경우에는 \texttt{uhc-extra.map}에 대해서도 위와 같은 명령을 수행합니다. \subsection{라텍 설치} \label{sec:instLaTeXe}\index{한글라텍!설치!라텍} 한글라텍은 라텍을 기반으로 움직입니다. 그러므로 운영 체계에 라텍이 설치되어 있어야 한글 문서를 만들 수 있습니다. 라텍은 모든 텍 운영 체계에 기본적으로 탑재되어 있습니다. 예를 들어 유닉스나 리눅스 운영 체계에는 주로 te\TeX{}이 텍 운영 체계로 설치되고 MS 윈도우 운영 체계에는 주로 Mik\TeX{}이 텍 운영 체계로 설치되는데 이 텍 운영 체계에는 라텍이 탑재되어 있습니다. 만일에 텍 운영 체계에 라텍이 포함되어 있지 않으면 가까운 CTAN에서는 모두가 파일 옮김 규약(ftp, File Transfer Protokol)을 통해 익명으로 \texttt{/tex-archive}에 있는 모든 텍 소프트웨어를 자유롭게 가져다 설치할 수 있습니다. 다음과 같이 라텍을 가져옵니다. \begin{verbatim} hpserv:> ftp ftp.dante.de login: ftp passwd: ftp ftp> cd /tex-archive/macros/latex ftp> bin ftp> get base.tar.gz ftp> get required.tar.gz ftp> bye \end{verbatim} 가져온 압축 파일을 풀고 라텍을 설치합니다. 이전의 라텍 버전 209가 설치되어 있으면 먼저 이를 여벌 만들기(backup)합니다. \begin{verbatim} mv TEXMF/tex/latex TEXMF/tex/latex209 mkdir TEXMF/tex/latex mkdir TEXMF/tex/latex/base tar xzvf base.tar.gz cd latex/base initex unpack.ins initex latex.ltx cp latex.fmt texmf/web2c cp *.sty *.tex *.fd *.clo *.cls *.def texmf/tex/latex/base \end{verbatim} 이 외에도 \texttt{required.tar.gz}을 풀면 \texttt{amslatex}, \texttt{babel}, \texttt{cyrillic}, \texttt{graphics}, \texttt{psnfss}, \texttt{tools} 하위 자료방이 생기며 각 하위 자료방의 꾸러미를 설치하는 것이 좋습니다. 설치 방법은 대부분의 경우 위에서 설치한 \texttt{latex}으로 \texttt{.ins} 파일을 돌리면 됩니다. 예를 들어 \begin{verbatim} cd ../required/tools latex tools.ins \end{verbatim} CTAN의 자료방 \texttt{/tex-archive/macros/latex} 밑에는 다른 꾸러미들이 있으며 \texttt{packages} 및 \texttt{contrib} 자료방에서 필요한 꾸러미를 찾아 추가적으로 설치할 수 있습니다. \subsection{요약} \label{sec:설치요약} 운영 체계의 관리자로서 ``파일''을 ``경로''에 복사한 후 경우에 따라서 ``설정''을 합니다. \begin{itemize} \item \begin{itemize} \item 파일: \texttt{hangul.sty}, \texttt{hfont.tex}, \texttt{euc-kr.tex} \texttt{hfont.sty}, \texttt{josa.tab}, \texttt{hfont.cfg}, \texttt{hsw*.fd}, \texttt{hww*.fd}, \texttt{hhw*.fd} (\texttt{latex} 자료방) \item 경로: \texttt{texmf-hlatex/tex/latex/hlatex} \item 설정: \texttt{texhash} \end{itemize} \item \begin{itemize} \item 파일: \texttt{u8hangul.tex}, \texttt{uhc-test.tex}, \texttt{uhc*.fd} (\texttt{lambda} 자료방) \item 경로: \texttt{texmf-hlatex/tex/lambda/hlatex} \item 설정: \texttt{texhash} \end{itemize} \item \begin{itemize} \item 파일: \texttt{hlatex.otp}, \texttt{hlatex.ocp} (\texttt{lambda} 자료방) \item 경로: \texttt{texmf-hlatex/omega/\{otp,ocp\}/hlatex} \item 설정: \texttt{texhash} \end{itemize} \item \begin{itemize} \item 파일: \texttt{hangulfn.sty}, \texttt{hfn-k.tex}, \texttt{hbibname-k.tex}, \texttt{khypher.sty},\\ \texttt{showhkeys.sty}, \texttt{showhtags.sty} (\texttt{contrib} 자료방) \item 경로: \texttt{texmf-hlatex/tex/latex/hlatex} \item 설정: \texttt{texhash} \end{itemize} \item \begin{itemize} \item 파일: \texttt{hfn-k.tex}, \texttt{hbibname-u.tex} (\texttt{contrib} 자료방) \item 경로: \texttt{texmf-hlatex/tex/lambda/hlatex} \item 설정: \texttt{texhash} \end{itemize} \item \begin{itemize} \item 파일: \texttt{halpha.bst} (\texttt{contrib} 자료방) \item 경로: \texttt{texmf-hlatex/bibtex/bst/hlatex} \item 설정: \texttt{texhash} \end{itemize} \item \begin{itemize} \item 파일: \texttt{hind.ist}, \texttt{hglo.ist} (\texttt{contrib} 자료방) \item 경로: \texttt{texmf-hlatex/makeindex} \item 설정: \texttt{texhash} \end{itemize} \item \begin{itemize} \item 파일: 유닉스 운영 체계에서는 \texttt{hmakeindex.c}, \texttt{hbibtex.c}. (윈도우즈 운영 체계에서는 \texttt{hmakeindex.exe}, \texttt{hbibtex.exe}. (\texttt{contrib} 자료방) \item 경로: 운영 체계의 실행 프로그램 자료방 \item 설정: 유닉스 운영 체계의 경우 실행 프로그램으로 번역, 윈도우즈 운영 체계의 경우 복사 \end{itemize} \item \begin{itemize} \item 파일: \texttt{uhc-base.map}, \texttt{uhc-extra.map} (\texttt{uhc-fonts-1.0.tar.gz}) \item 경로: \texttt{texmf-hlatex/fonts/map/hlatex} \item 설정: \texttt{texhash} \end{itemize} \item \begin{itemize} \item 파일: \texttt{uhc-*.tar.gz} \item 경로: \texttt{texmf-hlatex/fonts}에서 \texttt{tar}/\texttt{gzip}으로 압축과 묶음을 푼다. \item 설정: \begin{tabular}[t]{l} \texttt{texhash} \\ \texttt{updmap-sys {-}{-}enable Map=uhc-base.map} \\ \texttt{updmap-sys {-}{-}enable Map=uhc-extra.map} \\ \end{tabular} \end{itemize} \end{itemize} \section{한글라텍의 사용 설명} \label{sec:use}\index{한글라텍!사용법} 이 단원에서는 라텍 자체의 기본적인 사용법에 대한 설명을 피하고, 한글라텍에 관계되는 부분만을 간단히 다루려고 합니다. 라텍의 사용법에 관해서는 이에 해당하는 참고 서적을 보시기 바랍니다. 라텍의 원저자인 Lesley Lamport의 『\LaTeX\ --- A Document Preparation System』 (\cite{Lamport:1985:LDP})\을 참고로 하면 라텍에는 수 많은 명령들이 있음을 알 수 있습니다. 일반 사용자로서 이런 모든 명령을 전부 알아야 할 필요는 없습니다. 개인의 필요에 따라 약간의 기초 지식에, 필요할 때마다 \cite{Lamport:1985:LDP}\를 참고하여 사용하면 어렵지 않게 라텍 문서 작성을 시작할 수 있습니다. 독일에서는 『\LaTeX\ Eine Einf\"uhrung』이 (\cite{Kopka:LE91}) 잘 알려져 있습니다. 이 책은 미국에서 영어로 번역되어 『A Guide to \LaTeX{}』으로 출판되고 있고 (\cite{Kopka:1999:GLD}) 한국에는 한국어 판으로도 번역되어 나와 있는 것으로 알고 있습니다. 이 책에서는 모든 명령들을 간단히 설명한 목록이 있어서 사용자가 빠른 시간 안에 그 명령의 개요를 파악할 수 있고, 지정된 페이지로 가면 더욱 상세한 내용을 완벽하게 이해할 수 있도록 짜여져 있습니다. 참고서로 가장 많이 추천되는 책입니다. \subsection{한글 문서의 틀} \index{한글라텍!문서의 틀} 문서는 \verb|\documentclass[추가선택]{문서종류}| \noindent 로 시작합니다. \texttt{추가선택}에는 라텍의 \texttt{문서종류}(class)에 종속적인 추가 선택을 지정합니다. 문서 종류 지정 후에 한글라텍 꾸러미 사용을 지정합니다. \verb|\usepackage[추가선택]{hangul}| \noindent% 한글라텍의 \texttt{추가선택}의 종류는 다음과 같습니다.\index{한글라텍!추가 선택} \begin{list}{\textbullet}{\parsep0pt\itemsep0pt\topsep0pt\partopsep0pt} \item \texttt{hanja}: 문서의 단원명이나 날짜가 한자로 표기된다. \item \texttt{hardbold}: \MF{}에 의해 만들어지는 두꺼운 글씨체를 쓰도록 한다. \item \texttt{nojosa}: 자동 조사 처리 기능을 억제하여 텍의 기억 용량 사용을 감소시킨다. \item 판형: 책의 크기를 지정하는 선택 사항입니다. 책의 크기는 라텍 자체의 추가 선택으로 지정되는데, 이 추가 선택에는 한국의 출판 업계에서 사용되는 판형에 해당하는 크기가 없으므로 한글라텍의 추가 선택으로 지정해야 합니다. 한국에서 사용되는 책의 판형에는 표 \ref{표:판형}\과 같은 종류가 있습니다.\index{판형} 국전지의 크기는 939$\;\times\;$636mm이고 46전지의 크기는 788$\;\times\;$1091mm입니다. \begin{table}[htbp] \centering \begin{tabular}{|l|r@{$\;\times\;$}l*{4}{|l}|}\hline 판형명칭 & \multicolumn{2}{c|}{크기[mm]} & 사용종이 & 쪽수/전지 & \\\hline\hline \ttfamily 국판 & 148 & 210 & 국전지 & 32 & 교과서, 단행본 \\\hline \ttfamily 국배판 & 210 & 297 & 국전지 & 16 & 잡지 \\\hline \ttfamily 국반판 & 105 & 148 & 국전지 & 64 & 문고 \\\hline \ttfamily 타블로이드판 & 257 & 364 & 4x6전지 & 16 & 정보신문 \\\hline \ttfamily 사륙판 & 128 & 182 & 4x6전지 & 64 & 문고 \\\hline \ttfamily 사륙배판 & 182 & 257 & 4x6전지 & 32 & 참고서 \\\hline \ttfamily 사륙반판 & 94 & 128 & 4x6전지 & 128 & \\\hline \ttfamily 사륙배배판 & 254 & 374 & 4x6전지 & & \\\hline \ttfamily 신국판 & 152 & 225 & 국전지 & 32 & 단행본 \\\hline \ttfamily 대국전판 & 172 & 244 & 국전지 & & \\\hline \ttfamily 크라운판 & 176 & 248 & 4x6전지 & 36 & 사진집 \\\hline \ttfamily 삼십절판 & 125 & 205 & 4x6전지 & 60 & 단행본 \\\hline \ttfamily 신서판,삼륙판 & 103 & 182 & 4x6전지 & 80 & 문고 \\\hline \ttfamily 삼오판 & 84 & 148 & 4x6전지 & & \\\hline \end{tabular} \caption{판형의 종류} \label{표:판형} \end{table} \end{list} \texttt{hangul} 이외의 다른 꾸러미를 함께 쓰고자 할 경우에는 반점(\texttt{,})으로 구분하여 이름을 쓰거나 따로 \verb|\usepackage| 명령을 씁니다. \texttt{hangul}의 추가 선택은 문서 종류의 추가 선택에서 지정할 수도 있고 여기서 지정할 수도 있습니다. 추가 선택의 처리 방식은 다음과 같습니다.\index{추가 선택 처리 방식} \begin{itemize} \item \verb|\documentclass|의 추가 선택은 전역적(global)이다. 어느 문서 종류나 꾸러미에서든지 이 추가 선택을 처리할 수 있다. \item \verb|\usepackage|의 추가 선택은 울안적(local)이다. 그 꾸러미에서 이 추가 선택을 처리할 수 있어야 한다. \end{itemize} 다음의 예에서 보는 것처럼 \verb|\usepackage[신국판]{hangul,a4}| \noindent 에서는 지정된 추가 선택 \texttt{신국판}을 두 꾸러미 \texttt{hangul}과 \texttt{a4}가 모두 처리할 수 있어야 합니다. \texttt{a4} 꾸러미는 \texttt{신국판}이라는 추가 선택을 처리할 수 없으므로 오류가 발생하게 됩니다. 다음과 같이 각기 따로 지정하거나 \verb|\usepackage[신국판]{hangul}| \verb|\usepackage{a4}| \noindent 아니면 문제가 되는 추가 선택 \texttt{신국판}을 \verb|\documentclass|에서 전역적 추가 선택으로 지정하면 오류가 발생하지 않습니다. \verb|\begin{document}| \noindent 로 문서를 시작하여 쓰고자 하는 글을 작성한 뒤 \verb|\end{document}| \noindent 로 문서 작성을 마칩니다. (그림 \ref{그림:문서틀}\을 참조) \begin{figure}[htb] \centering \begin{tabular}{|p{6cm}cp{4.5cm}|}\hline \verb|\documentclass[추가선택]{문서종류}| & & \\[10pt] \verb|\usepackage[추가선택]{hangul}| & $\leftarrow$ & \fontfamily{pga}\selectfont \texttt{hangul} 꾸러미 대신 \texttt{hfont} 꾸러미를 쓸 수 있다. \\ \verb|\usepackage[추가선택]{꾸러미}| & $\leftarrow$ & \fontfamily{pga}\selectfont 필요에 따라 사용될 각종 \texttt{꾸러미}를 지정한다. \\ $\ldots$ & $\leftarrow$ & \fontfamily{pga}\selectfont 꾸러미뿐만 아니라 문자를 출력하지 않는 다른 명령들을 여기에서 선언할 수 있다. \\ \verb|\begin{document}| & $\leftarrow$ & \fontfamily{pga}\selectfont 이전까지를 전문 영역(pre\-amble)이라고 한다. \\ \ttfamily 나라의 말이 중국과 달라서 한자로는 서로 통하지 아니하므로 이런 까닭으로 어리석은 백성들이 말하고자 하는 바가 있어도 마침내 제뜻을 능히 펴지 못하는 사람이 많으니라. 내가 이를 불쌍히 여겨 새로 스물여덟자를 만드나니 & $\leftarrow$ & \fontfamily{pga}\selectfont 문서의 작성은 \textrm{\TeX}의 관습에 따른다. 즉, 중첩된 공간 문자는 하나로 처리된다. 줄바꿈 문자가 한번 나오면 공간 문자로 처리되나, 두번 이상 중첩되면 하나의 줄바꿈 문자 역할을 한다. 등등. \\ \verb|\end{document}| & $\leftarrow$ & \fontfamily{pga}\selectfont 이 명령이 나온 후의 모든 문장은 무시된다. \\\hline \end{tabular} \caption{한글라텍 문서의 기본 구조} \label{그림:문서틀} \end{figure} 이제 \texttt{latex}으로 파일을 돌리면 됩니다. \subsection{문서의 모양새 설정} \label{소절:문서모양새}\index{문서의 모양새} \verb|\documentclass|는 전반적인 문서의 종류를 결정합니다. \texttt{문서종류}에는 \texttt{article}, \texttt{report}, \texttt{book}, \texttt{letter}, \texttt{slides} 등이 있습니다. 각 \texttt{문서종류}는 \texttt{추가선택}에 의해 모양새가 달라질 수 있습니다. 즉, 종이의 규격을 설정하는 \texttt{a4paper}, \texttt{letterpaper}, $\cdots$ 및 글자의 크기를 정해주는 \texttt{10pt}, \texttt{11pt}, \texttt{12pt} 등등이 있습니다. 일반 영문 라텍의 문서 종류 설정은 \cite{Kopka:LE91,Lamport:1985:LDP,Goosens:LC94}에 잘 설명되어 있습니다. 위와 같이 라텍에서 제공하는 기본적인 문서 종류 이외에 추가로 꾸러미를 사용하고자 할 경우에는 \verb|\usepackage| 명령을 씁니다. 우리말의 처리와 같이, 라텍에서 제공되지 않는 기능을 쓸 경우에 \texttt{hangul.sty}을 쓰는 것과 같습니다. 각 꾸러미는 자체의 \texttt{추가선택}이 있습니다. 각종 꾸러미의 사용 방법 및 \texttt{추가선택}의 종류는 \cite{Goosens:LC94}에 자세히 설명되어 있습니다. \texttt{hangul.sty} 대신에 \texttt{hfont.sty}을 쓰면 문서 틀잡기가 우리말에 어울리는 한글화를 전혀 반영하지 않고 단순히 한글 및 한자, 상징 기호를 포함한 문서에서 우리말 처리가 제대로 될 수 있게만 합니다.\index{hfont.sty} 추가 선택도 \texttt{hangul.sty}과 같으나 의미 상 \texttt{hanja}는 무시됩니다. 영문 문서와 달리 우리말 문서에서는 줄간격을 특별히 취급해야 합니다. 이는 우리말 글자들이 영문자와 비교해서 모양이 복잡함으로 인해 발생하는 문제로서, 라텍의 애초값으로 우리말 문서를 만들 경우 각각의 \pagename\이 글자로 밀집된 인상을 받습니다. 이는 글을 읽는 독자의 시각을 분산시키는 악영향을 미치므로 다음과 같은 명령으로 줄간격을 조절하는 것이 좋습니다.\index{줄간격} \begin{verbatim} \renewcommand{\baselinestretch}{1.3} \normalsize \end{verbatim} 이 명령은 줄간격을 지정하는 레지스터인 \verb|\baselineskip|을 1.3배로 증가시키는 작용을 하며 \verb|\normalsize|와 같이 글자체의 크기 바꿈 명령이 나타날 때 이러한 변경이 효력을 발휘합니다. 한글라텍에는 \verb|\baselinestretch|의 기본값이 1.3으로 설정되어 있습니다. 이 설정은 문서의 어느 곳에서든지 사용자의 취향에 따라 변경될 수 있습니다. \subsection{글자체 선택} \label{글자체선택}\index{한글라텍!글자체 선택} 문서를 작성할 때, 어떤 특정한 부분의 글자체를 현재 쓰고 있는 글자체와 달리 하고 싶을 때가 있습니다. 글자의 두께를 진하게 한다든지, 크기를 크게 한다든지, 다른 모양을 쓴다든지, 또는 설계(design)가 전혀 다른 글자체를 쓴다든지 등등. 이러한 글자체 바꿈을 위해 라텍은 여러가지 글자체 바꿈 명령을 제공합니다. 라텍 209에서 제공됐던 \verb|\rm|, \verb|\sf|, \verb|\sl|, \verb|\it| 등등의 글자체 바꿈 명령들은 모두가 같은 차원에서 글자체를 바꾸기 때문에 여러가지 단점을 가지고 있습니다. 즉, 글자체의 설계가 \verb|\rm|이 아닌 \verb|\sf|를 계속 써 오다가 그 글자체의 기울인 모양인 \verb|\sl|로 글자체를 바꾸면 바뀐 글자체가 \verb|\sf|의 \verb|\sl|이 아니라 \verb|\rm|의 \verb|\sl|이 됩니다. 이는 이런 글자체 바꿈 명령이 일단 글자체를 애초값으로 복귀시킨 후 글자체를 바꾸기 때문입니다. 이러한 단점을 보완하기 위해 1989년부터 Frank Mittelbach와 Rainer Sch\"opf는 ``새로운 글자체 선택 방식''\textsf{(NFSS: New Font Selection Scheme)}을 고안하기 시작하여 현재 라텍 버전 2$\epsilon$에 채택되어 있는 \NFSS{}를 만들었습니다. \LaOm{한글라텍 버전 0.97부터는 \HFSS(Hangul Font Selection Scheme)\index{HFSS}에 의해 우리말 글자체가 선택됩니다. \HFSS{}는 \NFSS{}를 한글화한 것입니다.}{한글Λ에서는 우리말의 글자체 선택이 영문과 같이 \NFSS{}에 의해 처리됩니다.} \subsubsection{영문 글자체 선택 방법} \index{라텍!글자체 선택} \NFSS{}는 글자체를 다섯가지 요소로 구분하여 이 요소들을 각각 독립적으로 선택할 수 있게 합니다.\index{NFSS2} 그 다섯가지 요소는 다음과 같습니다.\index{글자체!구성 요소} \begin{description} \item[글자체 부호화(encoding)] 다른 알파벳을 쓸 때 각 나라별로 \texttt{codepage}가 정해져 있습니다. 라텍에서는 다른 프로그램와 마찬가지로 각 글자와 0--255 사이의 글자체 위치를 연관시킴으로써 이를 해결합니다. 라텍에서는 이를 ``부호화 방법''이라 합니다. \item[글자체 가족(family)] 글자체 가족은 같은 설계 원칙을 갖습니다. 가족 내에서는 크기(size)와 무게(weight), 폭(width), 모양(shape)으로 구성원이 구별됩니다. \item[글자체 모양(shape)] 글자체 가족의 구성원을 구별하는 중요한 속성으로서 ``\textup{곧은(upright) 모양}''과 ``\textit{굽은(italic) 모양}'' ``\textsl{기운(slanted) 모양}'' 혹은 대문자의 크기를 70\%정도로 축소하여 소문자로 쓰는 ``\textsc{작은키(Small Caps) 모양}''등으로 구별됩니다. 글자체 모양에 있어서 그 중요도는 떨어지지만 ``외곽형({\fontshape{ol}\selectfont outlined}) 모양''과 ``그림자(shaded) 모양'' 및 ``곧은 이탤릭({\fontshape{ui}\selectfont upright italic}) 모양'' 등도 글자체 모양에 속합니다. \item[글자체 무게(weight) 및 폭(width)] 무게와 폭은 서로의 조합으로 하나의 글자체 속성을 형성합니다. 무게는 글자의 두께로서 결정되며 ``보통 두께(medium)'', ``가벼운 두께(light)'', ``무거운 두께(bold)'' $\ldots$ 등으로 나뉩니다. ``가벼운 두께''에도 ``아주 가벼운 두께(extra light)'', ``매우 가벼운 두께(ultra light)'', ``보통 가벼운 두께(light)'', ``약간 가벼운 두께(semi light)'' 등등으로 분리되며 ``두꺼운 두께''도 이런 식으로 세분됩니다. 폭은 ``보통의 폭(medium width)'', ``확장된 폭(extended width)'' 등이 있습니다. \item[글자체 크기(size)] 글자체 크기는 인쇄기의 점을 단위로 표현됩니다. 인쇄기의 점을 텍에서는 \texttt{pt}라는 단위로 나타내며 1인치는 72.27\texttt{pt}입니다. 라텍에서는 글자체 크기가 1.2의 승으로 구별됩니다. 이렇게 정한 배경에는 후에 축소 복사를 할 때의 편이함이 있습니다. 즉 A5 크기의 책자를 만들 경우, A4 종이에 $1.44=\sqrt2$의 글자체 크기를 선택하여 인쇄한 후 A5 크기로 축소합니다. \end{description} 글자체 선택에는 명령형과 선언형이 사용될 수 있습니다.\index{명령형}\index{선언형} 명령형은 \verb|\textbf{...}|와 같이 한가지 변수를 요구하며, 선언형은 \verb|\bfseries|와 같이 변수를 요구하지 않습니다. 선언형은 다음과 같이 환경 형태로도 쓰일 수 있습니다.\index{환경형} \smallskip \begin{tabular}{|m{55mm}cm{5cm}|}\hline \begin{verbatim}몇몇 단어들은 \begin{bfseries} 두껍게 \end{bfseries} 인쇄됩니다.\end{verbatim} & $\Rightarrow$ & 몇몇 단어들은 \begin{bfseries} 두껍게 \end{bfseries} 인쇄됩니다. \\\hline \end{tabular} \smallskip 문서의 애초 글자체는 명령형 \verb|\textnormal|이나 선언형 \verb|\normalfont|로 선택되며, 이 명령/선언은 문서의 글자체를 초기화시킴으로써 항상 같은 모양을 선택할 수 있게 합니다. 문서의 글자체 가족에는 로만(roman)체, 산세리프(\textsf{sans serif})체, 타자(\texttt{typewriter})체가 있습니다. 이들은 각각 다음의 명령형과 \begin{verbatim} \textrm \textsf \texttt \end{verbatim} 선언형으로 \begin{verbatim} \rmfamily \sffamily \ttfamily \end{verbatim} 선택됩니다. 로만 글자체는 일반적으로 문서의 기본 글자체로 선언되어 있습니다. 문서의 글자체 시리즈(series)는 폭과 두께의 두 요소로 구성되며, 다음과 같은 명령 및 선언형으로 선택됩니다. \begin{verbatim} \textmd \mdseries \textbf \bfseries \end{verbatim} 애초값은 \verb|\textbf|가 확장된 두꺼운 두께(bold extended)이고 \verb|\textmd|는 보통의 폭과 보통의 두께입니다. 글자체 모양은 애초값인 곧은 모양을 비롯하여 굽은 모양, 작은키 모양, 기울인 모양이 있는데 이들은 각각 다음의 명령/선언형으로 선택됩니다. \begin{verbatim} \textup \upshape \textit \itshape \textsc \scshape \textsl \slshape \end{verbatim} 이 중에 굽은 모양과 곧은 모양 사이의 전환은 \verb|\emph| 명령 및 \verb|\em| 선언으로 이루어집니다. 글자체 크기 선택을 위해서는 10가지의 선언형이 사용됩니다. (명령형은 없습니다.) \noindent \begin{tabular}{ll} \verb|\tiny| & \tiny 미소한 크기 \\ \verb|\scriptsize| & \scriptsize 각본철 크기 \\ \verb|\footnotesize| & \footnotesize 주석 크기 \\ \verb|\small| & \small 작은 크기 \\ \verb|\normalsize| & \normalsize 보통 크기 \\ \verb|\large| & \large 큰 크기 \\ \verb|\Large| & \Large 좀더 큰 크기 \\ \verb|\LARGE| & \LARGE 아주 큰 크기 \\ \verb|\huge| & \huge 거대한 크기 \\ \verb|\Huge| & \Huge 아주 거대한 크기 \\ \end{tabular} \bigskip 위와 같은 외형 글자체 바꿈 명령들의 행동 방식은 내형 글자체 바꿈 명령에 의해 달라집니다.\index{외형 글자체 바꿈 명령}% \index{내형 글자체 바꿈 명령} 예를들어 \begin{verbatim} \renewcommand{\familydefault}{cmss} \end{verbatim} 와 같은 내형 글자체 바꿈 명령을 쓰면 글자체 가족의 애초값이 \texttt{cmss}(Computer Modern Sans Serif)로 바뀜으로써 주석 및 머릿말 등, 외형 글자체 바꿈 명령만으로는 바뀌지 않는 부분까지의 글자체 가족이 영향을 받습니다. 라텍에서 애초값은 다음 표와 같이 설정되어 있습니다. \smallskip \begin{tabular}{>{\ttfamily}l@{\quad}>{\ttfamily}l}\hline \textmj{내형 글자체} & \textmj{애초값} \\\hline \verb|\encodingdefault| & OT1 \\[3pt] \verb|\familydefault| & \verb|\rmdefault| \\ \verb|\seriesdefault| & m \\ \verb|\shapedefault| & n \\[3pt] \verb|\rmdefault| & cmr \\ \verb|\sfdefault| & cmss \\ \verb|\ttdefault| & cmtt \\[3pt] \verb|\bfdefault| & bx \\ \verb|\mddefault| & m \\[3pt] \verb|\itdefault| & it \\ \verb|\sldefault| & sl \\ \verb|\scdefault| & sc \\ \verb|\updefault| & n \\\hline \end{tabular} \subsubsection{우리말 글자체 선택 방법의 개요} \noindent \underline{라텍을 쓸 때} \medskip \HFSS{}는 \NFSS{}를 바탕으로 두고 있고 우리말 부호화의 특성에 따라 한국어 부호화 방식을 지정하는 \verb|\hfontencoding|과 한국어 글자체 가족을 지정하는 \verb|\hfontfamily|가 추가 되었으며 글자체 선택 방식도 우리말 글자체에 맞도록 변경되었습니다.\index{HFSS} \begin{description} \item[글자체 부호화] 우리말의 부호화는 \texttt{H}로 설정되어 있고 \NFSS{}에서 사용되는 글자체 부호화 설정 모듬 명령 \verb|\fontencoding|을 우리말화한 \verb|\hfontencoding|을 씁니다. 우리말 글자체의 부호화는 사용자의 입장에서 볼 때 달리 설정할 이유가 없고, 영어 부호화 방식과의 구별에 그 주 목적이 있으며 \HFSS{}의 작동시 우리말 글자체의 선택을 우리말에 맞게 하도록 하는 기능을 합니다. \item[글자체 가족] \NFSS{}에서와 같이 우리말의 글자체 가족은 글자체의 설계 원칙에 따라 구분이 되고, 우리말의 특성에 의해 두 요소로 표현됩니다. 첫번째 요소는, \verb|\kscfamily|로서 우리말의 상징 문자와 한글 및 한자를 구별합니다. 이 모듬 명령도 사용자의 입장에서는 쓸 일이 거의 없고, 주로 한글라텍의 내부 처리 과정에서 사용됩니다. 두번째 요소는 우리말의 글자체 가족을 나타내는 \verb|\hfontfamily|로서 우리말의 글자체 가족을 바꿀 때 사용자가 직면하게 되는, 실질상 우리말의 글자체 가족을 대표하는 요소입니다. \item[글자체 무게 및 폭] 작동 방식과 내용이 \NFSS{}와 동일합니다. 추가된 사항은 글자체 시리즈의 접두사 \texttt{S}로서 이는 우리말의 \verb|\bfseries|가 \texttt{softbold}로 처리되도록 합니다. \item[글자체 모양] \NFSS{}와 같습니다. \item[글자체 크기] \NFSS{}와 같습니다. \end{description} \noindent \underline{Λ를 쓸 때} \medskip 라텍을 쓸 때와 다른 점은 다음과 같습니다. \begin{description} \item[글자체 부호화] 우리말의 부호화는 \texttt{UHC}로 설정되며 \verb|\hfontencoding|은 없습니다. \item[글자체 가족] 모듬 명령 \verb|\kscfamily|나 \verb/\hfontfamily/는 없고 영문과 같이 \verb|\fontfamily|가 사용됩니다. \end{description} \subsubsection{우리말 글자체의 가족 선택} \noindent \underline{라텍을 쓸 때} \medskip KS X 1001의 부호 체계에 의한 상징 문자/한글/한자의 가족 구분은 글자의 부호값으로 정해지므로 특별한 명령/선언 모듬 명령을 필요로 하지 않습니다. 단지 미래에 추가될 수도 있는 가능성을 위해 혹은 운영 체계 관리자를 위해, 설치된 한글라텍의 특성에 따라 다음의 모듬 명령으로 상징 문자/한글/한자를 구분 설정할 수 있도록 하였습니다. \begin{verbatim} \kscfamily{상징문자}{한글}{한자} \end{verbatim} 이는 각각 \begin{verbatim} \symboldefault \hanguldefault \hanjadefault \end{verbatim} 로 설정되어 있으며 그 값은 각각 \texttt{s}, \texttt{w}, \texttt{h}입니다. 우리말 문서에서의 실질적인 『우리말 글자체 가족』은% \index{우리말 글자체 가족} \begin{verbatim} \textmj \mjfamily \textgt \gtfamily \texttz \tzfamily \end{verbatim} 로 선택되며 이들은 각각 \begin{verbatim} \textrm \rmfamily \textsf \sffamily \texttt \ttfamily \end{verbatim} 와 같은 작용을 합니다. (왼쪽은 명령형, 오른쪽은 선언형) 위와 같은 모듬 명령들은 우리말 가족을 바꾸어 주는 모듬 명령 \verb|\hfontfamily|를 사용합니다. \begin{verbatim} \hfontfamily{우리말가족} \end{verbatim} \texttt{우리말가족}에는 다음과 같은 글자체가 있습니다. \index{한글라텍!글자체 종류} \smallskip \begin{tabular}{|>{\ttfamily}ll>{\ttfamily}ll>{\ttfamily}ll|}\hline \multicolumn{6}{|l|}{기본가족:}\\ mj & (명조) & gt & (고딕) & tz & (타자) \\\hline \multicolumn{6}{|l|}{추가가족:}\\ gr & (그래픽) & gs & (궁서) & pg & (필기) \\ yt & (옛글) & bm & (봄글씨) & pn & (펜글씨) \\ ph & (펜흘림) & sh & (신문) & vd & (바다) \\ jmj & (자모명조) & jgt & (자모고딕) & jnv & (자모노벨) \\ jsr & (자모소라) & & & & \\ dn & (디나루) & pga & (필기a) & & \\\hline \end{tabular} \smallskip% 위와 같은 우리말 가족들은 상징 문자/한글/한자의 세 가족을 대표하는 외형 가족으로서, 문서에서 \texttt{우리말가족}을 \texttt{tz}으로 지정하였을 경우 한글라텍은 한글/상징 문자/한자의 순으로 각각 \begin{verbatim} wtt, wtt, wtt \end{verbatim} 의 내형 가족을 쓰도록 되어 있습니다. 외형 가족과 내형 가족의 연관은 사용자가 다음의 명령으로 문서의 어디에서든지 변경할 수 있습니다.\index{MapHangulFamily@\verb/\MapHangulFamily/}% \index{외형 가족} \begin{verbatim} \MapHangulFamily{외형가족}{한글가족,상징문자가족,한자가족} \end{verbatim} \texttt{tz}의 경우 \texttt{내형가족}과의 연관은 다음과 같은 명령으로 이루어집니다. \begin{verbatim} \MapHangulFamily{tz}{wtt,wtt,wtt} \end{verbatim} \underline{Λ를 쓸 때} \medskip% Λ를 쓸 때는 한 글자체에 상징문자와 한글 및 한자가 모두 들어 있습니다. 그래서 라텍을 쓸 때와는 달리 상징문자/한글/한자를 구분하는 모듬 명령은 필요없습니다. 다음과 같은 명령은 라텍을 사용할 때에만 사용되는 명령이며 Λ를 사용할 때에는 없는 명령입니다. \begin{verbatim} \kscfamily{상징문자}{한글}{한자} \symboldefault \hanguldefault \hanjadefault \MapHangulFamily{외형가족}{내형가족} \end{verbatim} 글자체의 가족은 \verb|\fontfamily|로 바꿀 수 있으며 사용할 수 있는 글자체 가족은 라텍의 경우와 같습니다. 라텍의 경우와 같이 기본 글자체 이외의 글자체에 해당하는 \verb/\text??/와 \verb/\??family/ 모듬 명령의 사용을 억제하고 \ref{소절:우리말모듬}의 우리말 모듬 명령을 사용하도록 되었습니다. \subsubsection{우리말 글자체 시리즈} \underline{라텍을 쓸 때} \medskip% 문서의 글자체 시리즈의 선택에는 \NFSS{}가 그대로 적용되며 라텍을 쓸 때는 한글라텍 버전 0.96까지 사용되었던 \texttt{softbold}를 위해 글자체 시리즈의 접두사 \texttt{S}가 추가되어 보통 두께의 글자체를(\texttt{mdseries}) 세 번 중첩 인쇄하는 기능을 합니다.\index{softbold@\texttt{softbold}} 그러므로 라텍 문서에서 다음의 명령은 \begin{verbatim} \renewcommand{\bfdefault}{Sbx} 혹은 \fontseries{Sbx} \end{verbatim} 우리말의 글자체 두께를 \texttt{softbold}로 처리하도록 하며 영문 글자체의 두께는 \texttt{bx}가 되도록 합니다. \texttt{hangul.sty}의 추가 선택 \texttt{softbold}는 위와 같은 기능을 애초값으로 설정합니다. \underline{Λ를 쓸 때} \medskip% \texttt{softbold}의 기능이 없고 두꺼운 글자체가 사용됩니다. 이 UHC 글자체를 쓰면 글자체 시리즈를 구성하는 두 요소 (넓이와 무게)가 구분되며, 넓이는 다음의 네가지 종류로 구분되고 \begin{tabular}{ll} \texttt{c} & (가로 축소 75\%) \\ \texttt{m} & (보통 넓이 100\%) \\ \texttt{x} & (가로 확대 125\%) \\ \texttt{ux} & (가로 확대 200\%) \\ \end{tabular} 무게는 \texttt{m} (보통 무게)와 \texttt{b} (진한 무게)의 두 종류가 있습니다. 예를 들어 가로로 두 배 확대한 두꺼운 글자체를 쓸 때는 다음과 같은 명령을 줍니다. \begin{verbatim} \fontseries{bux}\selectfont \end{verbatim} 위에서, 글자체의 선택 뒤에서 \verb|\selectfont| 명령을 줌으로써 글자체 선택이 효력을 발휘하게 됩니다. \subsubsection{우리말 글자체의 모양과 크기} 우리말 글자체의 모양/크기는 \NFSS{}와 같습니다. \subsubsection{우리말 글자체의 애초값} 문서의 애초 글자체는 \NFSS{}에서와 같이 다음의 명령/선언형으로 선택됩니다. \begin{verbatim} \textnormal \normalfont \end{verbatim} 한글라텍에서 애초값은 다음과 같이 설정되어 있습니다. \begin{verbatim} 한글라텍 한글Λ \hencodingdefault H \encodingdefault UHC \symboldefault s \hanguldefault w \hanjadefault h \mjdefault mj mj \gtdefault gt gt \tzdefault tt tz \hfamilydefault \mjdefault \familydefault \mjdefault \end{verbatim} \LaOm{위와 같은 애초값들은 운영 체계 관리자가 \texttt{hfont.cfg}에서 변경 설정할 수 있고, 사용자도 문서의 서두에서 재정의할 수 있습니다.} {Λ에서는 일반적으로 라텍을 사용할 때에 하는 방법으로 재정의합니다.} \subsubsection{그외 우리말 글자체의 모듬 명령} \label{소절:우리말모듬} 한글라텍 버전 0.96까지 써 오던 두 글자로 구성되는 글자체 바꿈 명령은 기본 글자체 이외에는 모두 삭제되었습니다. 이들은 라텍 버전 209 식의 글자체 바꿈 명령에 해당하며 사용을 회피하는 것이 좋습니다. \begin{verbatim} \mj \gt \tz \end{verbatim} 그 반면에 우리말로 구성되는 글자체 바꿈 명령은 글자체의 가족을 선택하는 선언형으로서 계속 존재합니다.% \index{한글라텍!글자체 바꿈 명령} \begin{verbatim} 한글라텍 한글Λ \명조 \textmj \mjfamily \mjfamily \고딕 \textgt \gtfamily \gtfamily \타자 \texttz \tzfamily \tzfamily \그래픽 \hfontfamily{gr} \fontfamily{gr} \궁서 \hfontfamily{gs} \fontfamily{gs} \신문 \hfontfamily{sh} \fontfamily{sh} \필기 \hfontfamily{pg} \fontfamily{pg} \펜글씨 \hfontfamily{pn} \fontfamily{pn} \펜흘림 \hfontfamily{ph} \fontfamily{ph} \봄글씨 \hfontfamily{bm} \fontfamily{bm} \옛글 \hfontfamily{yt} \fontfamily{yt} \자모명조 \hfontfamily{jmj} \fontfamily{jmj} \자모고딕 \hfontfamily{jgt} \fontfamily{jgt} \자모노벨 \hfontfamily{jnv} \fontfamily{jnv} \자모소라 \hfontfamily{jsr} \fontfamily{jsr} \바다 \hfontfamily{vd} \fontfamily{vd} \디나루 \hfontfamily{dn} \fontfamily{dn} \필기a \hfontfamily{pga} \fontfamily{pga} \end{verbatim} %\def\궁흘림 {\fontfamily{gh}\selectfont} \texttt{\textbackslash hfontfamily}나 \texttt{\textbackslash fontfamily}로 글자체를 지정한 후에는 \texttt{\textbackslash selectfont}로 글자체를 선택해야 글자체가 바뀝니다. \underline{라텍을 쓸 때} \medskip \verb|\usefont|는 \NFSS{}의 모듬 명령으로서 글자체의 부호화와 가족, 시리즈 및 모양을 한번에 정할 수 있도록 합니다. \begin{verbatim} \usefont{부호화}{가족}{시리즈}{모양} \end{verbatim} 이 모듬 명령에서 첫 번째 변수인 글자체 부호화가 \verb|\hfontencoding|과 같을 경우에는 두 번째 변수를 \verb|\hfontfamily|로 취급합니다. 그러므로 다음의 선언은 \begin{verbatim} \usefont{H}{gs}{m}{n} \end{verbatim} 우리말 글자체 중 궁서체의 보통 두께, 보통 모양을 쓰도록 합니다. 이때 영문의 경우도 두께와 모양에서 우리말을 따르게 됩니다. 다음과 같은 명령은 \NFSS{}에 대응하는, 우리말을 위한 선언으로서 \HFSS{}의 작동에 필수불가결한 모듬 명령입니다. 이들은 \verb|\begin{document}| 전에서만 선언할 수 있는 성질의 것인 만큼, 사용자의 입장에서는 보통의 경우 신경쓰지 않아도 됩니다. \begin{verbatim} \DeclareErrorHFont{부호화}{가족}{두께}{모양}{크기} \DeclareHFontSubstitution{부호화}{가족}{두께}{모양}{크기} \end{verbatim} \underline{Λ를 쓸 때} \medskip \NFSS{}의 모듬 명령을 그대로 사용하며, 다음과 같이 선언되어 있습니다. \begin{verbatim} \DeclareFontEncoding{UHC}{}{} \DeclareErrorFont{UHC}{mj}{m}{n}{10} \DeclareFontSubstitution{UHC}{mj}{m}{n} \end{verbatim} \subsection{우리말 숫자 모듬 명령} \label{소절:숫자 모듬}\index{한글라텍!숫자 모듬 명령} 한글라텍에서는 우리말 숫자를 숫자 환경에서 쓸 수 있도록 우리말 숫자 모듬 명령을 제공합니다. 우리말 숫자 모듬 명령에는 다음과 같은 것들이 있습니다. \begin{verbatim} \jaso(ㄱㄴㄷㄹ) \gana(가나다라) \ojaso(㉠㉡㉢㉣) \ogana(㉮㉯㉰㉱) \pjaso(㈀㈁㈂㈃) \pgana(㈎㈏㈐㈑) \onum(①②③④) \pnum(⑴⑵⑶⑷) \oeng(ⓐⓑⓒⓓ) \peng(⒜⒝⒞⒟) \hnum(하나둘셋) \Hnum(첫째둘째) \end{verbatim} 예를들어, 다음과 같이 정의를 하면 \begin{verbatim} \renewcommand{\labelenumi}{\gana{enumi})} \renewcommand{\labelenumii}{\jaso{enumii}.} \renewcommand{\labelitemi}{☞} \end{verbatim} \begin{tabular}[c]{|m{45mm}cm{4cm}|} \multicolumn{1}{l}{다음의 원전(text)은} & & \multicolumn{1}{l}{이렇게 나타납니다.} \\\hline \begin{verbatim} \begin{enumerate}\디나루 \item 한글 \begin{enumerate} \item 현대어 \item 고어 \end{enumerate} \item 漢字 \begin{enumerate} \item 韓國語 \item 中國語 \item 日本語 \end{enumerate} \item 상징 기호 \begin{itemize} \item ㉿ \item ₩ \item ㅫ \end{itemize} \end{enumerate} \end{verbatim}% & $\Rightarrow$ & \renewcommand{\labelenumi}{\gana{enumi})} \renewcommand{\labelenumii}{\jaso{enumii}.} \renewcommand{\labelitemi}{☞} \begin{enumerate}\디나루 \item 한글 \begin{enumerate} \item 현대어 \item 고어 \end{enumerate} \item 漢字 \begin{enumerate} \item 韓國語 \item 中國語 \item 日本語 \end{enumerate} \item 상징 기호 \begin{itemize} \item ㉿ \item ₩ \item ㅫ \end{itemize} \end{enumerate} \\\hline \end{tabular} \subsection{문장부호} \label{sec:문장부호} 우리말 문서에서 사용되는 문장 부호는 라텍에서 제공되는 문장 부호가 사용될 수 있습니다. 그러나 특수한 경우에는 우리말 문자 체계에서 제공하는 상징 문자를 사용해야 하고 경우에 따라서는 특별한 명령으로 구현되어야 합니다. \cite{한글연구회92}의 부록에서는 우리말 문서에서 다음과 같은 문장 부호의 사용법을 규정하고 있습니다. \newcommand{\xample}[1]{\bgroup\small\디나루 #1\egroup} \subsubsection{마침표} \begin{itemize} \item 온점(.), 고리점(。)\\ 가로쓰기에는 온점, 세로쓰기에는 고리점을 쓴다.\\ 온점은 마침표라고도 하며 영문 ASCII에서 사용되는 부호와 동일한 부호(.)로 입력되고 고리점은 우리말 상징 문자(。)가 사용된다.\\ \xample{젊은이는 나라의 기둥이다.} \item 물음표(?)\\ 의심이나 물음을 나타낸다.\\ 영문 ASCII에서 사용되는 부호와 동일한 부호(?)이다.\\ \xample{이제 가면 언제 돌아오니?} \item 느낌표(!)\\ 감탄이나 놀람, 부르짖음, 명령 등 강한 느낌을 나타낸다.\\ 영문자에서 사용되는 부호(!)와 동일하다.\\ \xample{아, 달이 밝구나!} \end{itemize} \subsubsection{쉽표} \begin{itemize} \item 반점(,), 모점(、)\\ 가로쓰기에는 반점, 세로쓰기에는 모점을 쓴다. 문장 안에서 짧은 휴지를 나타낸다.\\ 반점은 영문자에서 사용되는 부호(,)와 동일하고 모점은 우리말 상징 부호(、)를 사용한다. \xample{근면, 검소, 협동은 우리 겨례의 미덕이다.} \item 가운뎃점($\cdot$)\\ 열거된 여러 단위가 대등하거나 밀접한 관계임을 나타낸다.\\ 라텍의 수학 기호(\texttt{\$\textbackslash cdot\$})을 입력하거나 우리말 상징 부호(·)을 사용할 수 있다. \xample{철이$\cdot$영이, 영수$\cdot$순이가 서로 짝이 되어 윳놀이를 하였다.} \item 쌍점(:)\\ 내포되는 종류를 들 적에, 소표제 뒤에, 저자명과 저서명 사이 등에 쓴다.\\ 영문자 부호 콜론(:)을 입력한다. \xample{문방사우: 붓, 먹, 벼루, 종이} \item 빗금 (/)\\ 대응, 대립되거나 대등한 것을 함께 보이는 단어와 구, 절 사이에 쓴다. 분수를 나타낼 때에 쓰기도 한다.\\ 영문자(/)를 입력한다. \xample{착한 사람/악한 사람\qquad 맞닥뜨리다/맞닥트리다} \end{itemize} \subsubsection{따옴표} \begin{itemize} \item 큰따옴표(``''), 겹낫표(『』)\\ 가로쓰기에는 큰따옴표, 세로쓰기에는 겹낫표를 쓴다. 대화, 인용, 특별 어구 따위를 나타낸다.\\ 큰따옴표는 라텍의 입력 방식에 따라 작은따옴표를 두 번(\texttt{``''}) 입력하여 사용하고 겹낫표는 우리말 상징 부호(『』)를 입력하여 사용한다. (우리말 상징 부호의 겹낫표는 시계 반대 방향으로 $90^\circ$ 회전된 형태이다. 아마도 가로쓰기에서 사용될 수 있도록 변화된 것으로 보인다.) \xample{``전기가 없었을 때는 어떻게 책을 보았을까?''} \item 작은따옴표(`'), 낫표(「」)\\ 가로쓰기에는 작은따옴표, 세로쓰기에는 낫표를 쓴다. 큰따옴표는 라텍의 인용 부호(\texttt{`'})를 입력하여 사용하고 낫표는 우리말 상징 부호(「」)를 입력하여 사용한다. (우리말 상징 부호의 낫표는 시계 반대 방향으로 $90^\circ$ 회전된 형태이다. 아마도 가로쓰기에서 사용될 수 있도록 변화된 것으로 보인다.) \xample{지금 필요한 것은 `지식'이 아니라 `실천'입니다.} \end{itemize} \subsubsection{묶음표} \begin{itemize} \item 소괄호(())\\ 원어, 연대, 주석, 설명 등을 넣을 적에, 빈 자리임을 나타낼 적에도 쓴다.\\ 영문자의 소괄호 부호(())를 입력한다. \xample{우리 나라의 수도는 (\qquad)이다.} \item 중괄호 (\{\})\\ 여러 단위를 동등하게 묶어서 보일 때에 쓴다.\\ 라텍의 입력 방식에 따라 역사선 문자 다음에 해당 중괄호(\texttt{\textbackslash\{\textbackslash\}})를 입력한다. \xample{$$\mbox{주격 조사}\;\;\{{\mbox{이}\atop\mbox{가}}\}$$} \item 대괄호 (〔〕)\\ 묶음표 안의 말이 바깥 말과 음이 다를 때 혹은 묶음표 안에 또 묶음표가 있을 때에 쓴다.\\ 영문자 대괄호([])를 사용할 수도 있으나 우리말 상징 부호에 있는 대괄호의 꺾음 정도가 다르므로 (〔〕) 우리말 상징 부호를 입력하여 사용할 수 있다. \xample{명령에 있어서의 불확실〔단호(斷乎)하지 못함〕은 복종에 있어서의 불확실〔모호(模糊)함〕을 낳는다.} \end{itemize} \subsubsection{이음표} \begin{itemize} \item 줄표 (---)\\ 이미 말한 내용을 다른 말로 부연하거나 보충함을 나타낸다.\\ 라텍의 입력 방식에 따라 붙임표를 세번 입력하거나 우리말 상징 문자(―)를 입력하여 사용한다. \xample{어머님께 말했다가---아니, 말씀드렸다가---꾸중만 들었다.} \item 붙임표 (-)\\ 사전, 논문 등에서 합성어를 나타낼 적에, 또는 접사나 어미임을 나타낼 적에 혹은 외래어와 고유어 또는 한자어가 결합되는 경우에 쓴다.\\ 영문자 부호(-: hyphen)을 입력하여 사용하거나 우리말 상징 부호(­)을 입력하여 사용한다. 우리말 상징 부호를 사용할 때는 부호의 좌우 여백이 적당한 지를 확인하는 것이 좋다. \xample{겨울-나그네\qquad 빛­에너지} \item 물결표 (∼)\\ `내지'라는 뜻에 혹은 어떤 말의 앞이나 뒤에 들어갈 말 대신 쓴다.\\ 라텍 명령 \texttt{\textbackslash textasciitilde}를 입력하거나 우리말 상징 부호(∼)를 입력하여 사용한다. 아래의 왼쪽 예문에서와 같이 라텍 명령에 사용되는 물결표는 액센트 문자를 만드는 역할을 하므로 우리말의 물결표로는 부적당하게 보인다. \xample{9월15일\textasciitilde 9월25일\qquad 미술∼} \end{itemize} \subsubsection{드러냄표} \noindent $\dot{}$이나 $\scriptscriptstyle\circ$을 가로쓰기에는 글자 위에 세로쓰기에는 글자 오른쪽에 쓴다. \noindent 문장 내용 중에서 주의가 미쳐야 할 곳이나 중요한 부분을 특별히 드러내 보일 때 쓴다. \noindent 드러낼 낱말을 \texttt{\textbackslash dotemph} 혹은 \texttt{\textbackslash circemph} 명령의 변수로 지정하거나 \texttt{\textbackslash dotem} 혹은 \texttt{\textbackslash circem}을 선언한다. 이 명령/선언은 우리말 음절에만 적용된다. \xample{한글의 본 이름은 \dotemph{훈민정음}이다.} \xample{중요한 것은 \circemph{왜 사느냐}가 아니라 \circemph{어떻게 사느냐} 하는 문제이다.} \subsubsection{안드러냄표} \begin{itemize} \item 숨김표 (××, ○○)\\ 알면서도 고의로 드러내지 않음을 나타낸다.\\ 라텍 수학 모드의 명령(\texttt{\$\textbackslash times\$}/\texttt{\$\textbackslash bigcirc\$})을 입력하거나 우리말 상징 부호(× ○)를 입력하여 사용한다. \xample{그 말을 듣는 순간 ×××란 말이 목구멍까지 치밀었다.} \item 빠짐표(□)\\ 글자의 자리를 비워 둠을 나타낸다. \xample{훈민정음의 초성 중에서 아음(牙音)은 □□□의 석 자이다.} \item 줄임표 (……)\\ 할 말을 줄였을 때나 말이 없음을 나타낼 때에 쓴다.\\ 라텍의 수학 모드 명령(\texttt{\$\textbackslash cdots\$}/\texttt{\$\textbackslash ldots\$})를 입력하거나 우리말 상징 부호(…)를 입력하여 사용한다. \texttt{\$\textbackslash cdots\$}는 가운뎃점의 위치에 연속된 점 세 개를 \texttt{\$\textbackslash ldots\$}은 온점의 위치에 연속된 점 세 개를 나열한다. 우리말의 줄임 표시에 연속된 점을 세 개 사용해야 하는지 여섯 개를 사용해야 하는지는 확실하지 않다. 우리말 상징 부호는 연속된 점의 수가 세 개이다. \xample{``어디 나하고 한 번……'' 하고 철수가 나섰다.} \end{itemize} \subsection{우리말 각주 판짜기} \label{소절:각주판짜기} \index{각주 판짜기} 영문 라텍에서의 기본적인 각주 판짜기 방식을 사용하면 각주 번호가 표시되는 각주 첫 줄이 들여 쓰여집니다. 각주 번호에는 수학식에서 멱수를 나타내는 윗첨자가 사용되고 각주 번호와 각주문을 구분하는 공간이 없습니다. 이와 같은 판짜기 방식 이외에도 출판된 우리말 문서를 보면 다른 방식의 판짜기를 볼 수 있습니다. \cite{이종운91}\은 각주면을 본문의 왼쪽에 맞추는 방식과 각주면을 본문의 안쪽으로 들여 넣는 방식으로 각주면 판짜기를 대분하고 각주문의 첫줄을 들여쓰기와 내어쓰기에 의해 다시 세분하는 방식으로 각주 판짜기를 분류합니다. 한글라텍의 각주 판짜기는 영문에서의 방식을 그대로 사용합니다. 그러나 사용자의 선호도에 따른 각주 판짜기 방식을 쉽게 적용할 수 있도록 \texttt{hangulfn.sty} 패키지를 따로 제공합니다. 패키지의 사용법은 다음과 같습니다. \begin{verbatim} \usepackage[선택사항]{hangulfn} \end{verbatim} \texttt{선택사항}으로는 각주 번호의 판짜기 방식을 지정하는 \texttt{첨자}와 \texttt{괄호}가 있는데 각각 다음과 같이 짜여집니다. \begin{itemize} \item \texttt{첨자}: \xample{$^1$각주문} \item \texttt{괄호}: \xample{1) 각주문} \end{itemize} \texttt{첨자}의 경우에는 각주 번호와 각주문 사이가 붙고 \texttt{괄호}의 경우에는 소괄호와 각주문 사이에 구분 공간이 있습니다. 애초값은 \texttt{첨자}입니다. 각주 판면의 판짜기를 지정하는 \texttt{선택사항}의 종류는 다음과 같습니다. \begin{itemize} \item \texttt{다항이어쓰기}: 연이은 각주가 새 행에서 시작하지 않고 이전 행의 오른쪽에 나열되며, 새 각주의 넓이가 행의 오른쪽 경계를 넘어 설 때에 그 각주는 새 행에서 시작한다. 문서 전체가 길이가 짧은 각주로만 구성될 때에 사용할 수 있는 판짜기 방식이다. \xample{\rule{2in}{.4pt}\\ \footnotesize 12)~첫번째 각주\qquad 13)~두번째 각주\qquad 14)~세번째 각주\qquad 15)~네번째 각주\qquad 16)~다섯번째 각주\linebreak 17)~여섯번째 각주\qquad 18)~일곱번째 각주\qquad 19)~여덟번째 각주} \item \texttt{단순이어쓰기}: ``\texttt{다항이어쓰기}''와 같은 방식이나 한 각주의 넓이가 행의 오른쪽 경계를 넘어 설 때에 경계를 넘어서는 부분이 줄바꿈에 의해 다음 행으로 넘겨진다는 점이 다르다. \xample{\rule{2in}{.4pt}\\ \footnotesize 12)~첫번째 각주\quad 13)~두번째 각주\quad 14)~세번째 각주\quad 15)~네번째 각주\quad 16)~다섯번째 각주\quad 17)~여섯번째 각주\quad 18)~일곱번째 각주\quad 19)~여덟번째 각주} \item \texttt{내어쓰기}: 각각의 각주는 새 행에서 시작한다. 각주 번호가 각주문의 왼쪽으로 내어 써 지고, 각주문의 왼쪽맞춤 위치가 각주문의 첫 글자의 위치이다. 이 방식이 애초값이다. \xample{\rule{2in}{.4pt}\\ \footnotesize\tabcolsep0pt \begin{tabular}[t]{lp{.9\columnwidth}} 12)~ & 각주면의 각주 번호와 구분 공간을 각주문으로부터 왼쪽으로 내어 쓰는 방식이다. 각주문의 가로 넓이는 본문의 가로 넓이에서 각주 번호와 구분 공간의 넓이만큼 뺀 길이이다. \end{tabular} } \item \texttt{왼쪽맞춤}: 각각의 각주는 새 행에서 시작한다. 각주의 첫 줄이 왼쪽맞춤으로 짜진다. \xample{\rule{2in}{.4pt}\\ \footnotesize 12)~각주 번호와 각주문이 들여쓰기나 내어쓰기에 의해 구분되지 않고 전체가 하나로 왼쪽맞춤 되는 판짜기 방식이다. 각주 번호와 각주문의 사이에는 구분 공간이 삽입된다. 구분 공간은 \texttt{첨자}의 경우 0pt이고 \texttt{괄호}의 경우 공간 문자이다. } \item \texttt{들여쓰기}: 라텍이 제공하는 기본 각주 판짜기와 유사한 방식이다. 각주 번호는 3배각의 위치에서 오른쪽으로 정렬되며 각주문이 구분 공간을 사이에 두고 이어진다. 각주문 사이에 줄바꿈이 일어나면 새 행이 본문의 왼쪽 맞춤 위치에서 시작한다. \xample{\rule{2in}{.4pt}\\ \footnotesize\settowidth{\dimen0}{각주} \hbox to1.5\dimen0{\hss 12)}~첫줄 들여쓰기 방식이다. 각주 번호의 끝이 왼쪽 가장 자리에서부터 3배각의 위치이다. 연이은 각주의 각주 번호도 같은 위치에 정렬된다.\\ \hbox to1.5\dimen0{\hss 13)}~이어지는 각주이다. 각주 번호가 위쪽의 각주 번호와 함께 오른쪽으로 정렬되었다. } \item \texttt{들여왼쪽맞춤}: ``\texttt{왼쪽맞춤}''과 같은 방식이다. 전체 각주면이 본문으로부터 오른쪽으로 2배각 들여 써진다. \xample{\rule{2in}{.4pt}\\ \footnotesize\settowidth{\dimen0}{각주}\tabcolsep0pt \begin{tabular}[t]{lp{.9\columnwidth}} \rule{\dimen0}{0pt} & 12)~각주 번호와 각주문이 들여쓰기나 내어쓰기에 의해 구분되지 않고 전체가 하나로 왼쪽맞춤 되는 판짜기 방식이다. 전체 각주면이 본문의 왼쪽맞춤 위치에서 2배각 들여진다. \end{tabular} } \item \texttt{들여내어쓰기}: ``\texttt{들여쓰기}''와 같은 방식이다. 전체 각주면이 본문으로부터 오른쪽으로 2배각 들여 써진다. \xample{\rule{2in}{.4pt}\\ \footnotesize\tabcolsep0pt \settowidth{\dimen0}{각주} \hspace*{\dimen0} \multiply\dimen0 by-1 \advance\dimen0 .89\columnwidth \begin{tabular}[t]{lp{\dimen0}} 12)~ & 각주면의 각주 번호와 구분 공간을 각주문으로부터 왼쪽으로 내어 쓰는 방식이다. 전체 각주면은 본문의 왼쪽에서 2배각 들여 짜진다. 각주문의 가로 넓이는 본문의 가로 넓이에서 각주 번호와 구분 공간의 넓이 그리고 2배각의 넓이를 뺀 길이이다. \end{tabular} } \item \texttt{들여괄호맞춤}: ``\texttt{들여내어쓰기}'' 방식과 같으나 각주문에서 줄바꿈에 의해 새로 시작하는 행의 왼쪽이 각주 번호에 사용되는 괄호의 끝에 정렬되는 점이 다르다. 각주 번호 양식이 ``\texttt{괄호}''로 바뀐다. 각주 번호와 각주문의 간격은 1배각이다. \xample{\rule{2in}{.4pt}\\ \footnotesize\tabcolsep0pt \settowidth{\dimen0}{각주} \hspace*{\dimen0} \multiply\dimen0 by-1 \advance\dimen0 .89\columnwidth \begin{tabular}[t]{lp{\dimen0}} 12) & ~~각주면의 각주 번호를 각주문으로부터 왼쪽으로 내어 쓰는 방식이다. 각주 번호와 각주문 사이에는 1배각의 간격이 삽입된다. 전체 각주면은 본문의 왼쪽에서 2배각 들여 짜진다. 줄바꿈 후에 새 행이 각주 번호의 괄호 다음에서 시작했다. \end{tabular} } \end{itemize} \subsection{조사 이형태, 매개 모음, 지정사 탈락} \label{소절:자동음운변화처리} \index{자동 음운 변화} \index{조사 이형태} \index{매개 모음} \index{지정사 탈락} \verb|\ref|나 \verb|\pageref| 등의 교차 참조와 \texttt{\textbackslash cite} 등의 문헌 인용을 사용하면 숫자나 이름표가 자동\noHyphen 으로 생성됩니다. 이 경우 문서를 작성하고 있는 순간에는 이 숫자나 문자가 무엇인 지를 알 수 없습니다. 그러므로 그 다음에 오게 되는 주격 조사가 `\texttt{가}'가 될 지 아니면 `\texttt{이}'가 될 지를 결정할 수 없습니다. 사용되는 변이형은 자동으로 생성되는 숫자의 음가나 이름표의 마지막 음절이 무슨 받침을 갖고 있는가에 따라 다릅니다. 매개 모음 ``으''의 삽입이나 지정사 ``이''의 탈락도 같은 경우입니다. 한글라텍 버전 0.96부터는 다음과 같은 음운 이형태를 자동 처리할 수 있도록 했습니다.\index{자동 음운 변화} \begin{verbatim} 은/는 이/가 을/를 와/과 으로/로 으로서/로서 으로써/로써 \end{verbatim} 이를 처리해 주는 모듬 명령은 각각 다음과 같습니다. \begin{verbatim} \은 \는 \이 \가 \을 \를 \와 \과 \으로 \로 \으로서 \로서 \으로써 \로써 \end{verbatim} 매개 모음 ``으''의 삽입은 명령 ``\texttt{\{\textbackslash ㅡ\}}''를 통해 구현됩니다. 명령 이름은 ``으''의 모음 ``ㅡ''입니다. 예를 들어 ``\texttt{\textbackslash 로}''의 정의는 ``\texttt{\{\textbackslash ㅡ\}로}''입니다. 매개 모음의 삽입은 동사의 굴절에서도 나타나지만 이를 자동으로 처리해야 할 경우는 없을 것으로 보입니다. 그 이유는 동사가 굴절을 하지만 어간이 없는 동사가 없기 때문에 매개 모음의 앞에는 정해진 동사 어간이 있기 때문입니다. 한글라텍에서 제공되지 않은 경우의 매개 모음의 처리는 ``\texttt{\{\textbackslash ㅡ\}}''를 삽입하여 해결할 수 있습니다. 지정사 ``이''의 탈락은\footnote{지정사 ``이다''는 학자에 따라 조사로 취급하기도 하고 상태 동사의 하나로 분류하기도 합니다. 여기서 국어학적 측면은 논외입니다.} ``교수(이)시니 선생님이시니?'' 혹은 ``라텍이냐 워드(이)냐가 관건이다'' 등과 같이 많은 경우가 있습니다. 경우의 수가 많은 이유는 지정사가 동사의 한 하위 부류로서 다양한 굴절을 보이기 때문입니다. 따라서 탈락 가능한 지정사에는 다음의 일반적인 명령을 사용합니다. 명령의 이름에 사용된 문자는 ``이''의 모음 ``ㅣ''입니다. \begin{verbatim} {\ㅣ} \end{verbatim} 예: \begin{tabular}{|l@{$\;\;\;\rightarrow\;\;\;$}l|}\hline \ttfamily 참고한 문헌은 \textbackslash cite\{최99\}\{\textbackslash ㅣ\}다. & \필기a 참고한 문헌은 \cite{최99}{\ㅣ}다.\\\hline \end{tabular} \medskip \verb|\cite| 명령으로 문헌 인용을 할 때 \texttt{plain.bst} 모양새 파일을 쓰면 인용의 이름표가 숫자로 표현되고 \texttt{halpha.bst} 모양새 파일을 쓰면 인용의 이름표가 문자열로 표현됩니다.\footnote{\texttt{alpha.bst}를 쓰면 우리말이 깨집니다.}\index{자동 조사!인용} \index{halpha.bst} 후자의 경우, 한글라텍은 음운 변화 처리 기능을 쓰는데 있어서 문자열에 다음과 같은 제한을 두고 있습니다.\index{자동 음운 변화 처리} \begin{enumerate} \item 문자열은 두 바이트 이상이어야 합니다. (\texttt{halpha.bst}를 쓰면 문자열은 보통 다섯 글자 이상이 됩니다. 우리말은 한 글자가 두 바이트 혹은 세 바이트로 구성되므로 우리말 한 글자는 문제의 대상에서 제외됩니다.) \begin{tabular}[c]{|lcp{5cm}|}\hline 옳음: \verb|\bibitem[HKD]{홍길동}...| & & \\ 틀림: \verb|\bibitem[H]{홍길동}...| & $\leftarrow$ & {\필기a 이름표 \texttt{H}는 한 바이트이므로 착오를 발생시킨다.} \\\hline \end{tabular} 본문에서 \verb|\cite{홍길동}\을|이라 하면 ``\xample{[HKD]를}''로 찍힙니다. \item 문자열의 마지막 음절은 한글과 한자, 우리말 자소, 숫자 그리고 영문자로 구성됩니다. 즉, 자소를 제외한 상징 기호는 자동 음운 변화 처리에서 고려의 대상이 되지 않습니다.\footnote{상징 기호가 인용의 이름표로 나올 일이 없을 것으로 생각합니다.} 다시 말하자면, 자동 음운 변화 처리 기능은 작동하나 그 결과는 문법에 맞지 않을 수 있습니다. 이형태의 결정은 실질 형태소의 마지막 음절이 `ㄹ'이 아닌 종성인 경우로 간주됩니다. \item 문자열의 마지막 글자가 영문자일 경우에, 자동 음운 변화 처리 기능은 낱말의 음가를 고려하지 않고 마지막 문자의 우리말 음가로 이형태를 결정합니다.\footnote{모든 영어 낱말의 우리말 음가를 올바로 분석하기는 매우 힘듭니다.} \begin{tabular}[c]{|lcp{4.5cm}|}\hline 옳음: \verb|\bibitem[set]{홍길동}...| & $\leftarrow$ & {\필기a 영문자 이름표 \texttt{set}는 마지막 문자 \texttt{t}에 의해 이형태를 결정한다. \texttt{t}의 우리말 음가는 중성으로 끝나는 음절이다. \texttt{set}의 우리말 음가는 \texttt{세트}로서 역시 마지막 음절이 중성으로 끝난다. 문헌 인용의 결과는 \texttt{[set]로}이다.} \\ 틀림: \verb|\bibitem[ping]{홍길동}...| & $\leftarrow$ & {\필기a 영문자 이름표 \texttt{ping}은 마지막 문자 \texttt{g}가 이형태를 결정된다. \texttt{g}의 우리말 음가는 중성으로 끝나는 음절이다. 그러나 \texttt{ping}의 우리말 음가는 \texttt{핑}으로서 종성으로 끝나는 음절이다. 문헌 인용의 결과는 \texttt{[ping]로}이다.} \\\hline \end{tabular} \end{enumerate} \texttt{halpha.bst}를 사용할 경우에 인용의 부호는 저자의 이름 중 앞 세 글자와 책이 출판된 연도의 뒷 두 숫자로 구성되거나 (저자가 한 명일 때), 첫 번째 등장하는, 최대한 세 명의 저자 이름 중 첫 글자와 \verb+\etalchar+ 그리고 책이 출판된 연도의 뒷 두 숫자로 구성되므로 (저자가 여러명일 경우) 세 번째의 제한은 무시될 수 있습니다. 보통의 경우에도 \verb|\cite|의 이름표(label)는 일련 번호이거나 (\texttt{plain.bst}) \texttt{저자이름+책출판년도}를 약식으로 표현합니다 (\texttt{halpha.bst}). 그러므로 보통은 발생하기 힘든 경우에 해당합니다. 그러나 참고 문헌 작성 시에는 이런 사실을 알고 있으므로써, 발생할 가능성이 있는 오류를 사전에 방지하는 것이 좋습니다. 색인 작성 시에 \texttt{makeidx.sty}을 쓰면 \verb|\see| 명령이 정의됩니다. 이 명령을 쓸 때는 \verb|\see|의 변수가 빈 칸을 포함하게 되면 자동 음운 변화 처리 기능에 의해 오류가 발생합니다. 빈칸 대신에 ``\texttt{\textasciitilde}''나 ``\texttt{\textbackslash\textvisiblespace}''를 쓰면 문제가 발생하지 않습니다.\index{자동 음운 변화!색인} 예: \smallskip\noindent \begin{tabular}[c]{|lp{47mm}cp{5cm}|}\hline 옳음: & \verb!\index{절|see{첫장~첫절}}! \verb!\index{절|see{첫장\ 첫절}}! & $\leftarrow$ & \필기a `\texttt{\textasciitilde}'나 `\texttt{\textvisiblespace}'는 모두 빈 칸을 의미한다. `\texttt{\textasciitilde}'는 앞뒤의 단어를 같은 줄에 출력하도록 하고 `\texttt{\textvisiblespace}'는 다른 기능없이 빈 칸만 출력한다. \\ 틀림: & \verb!\index{절|see{첫장 첫절}}! & & \\\hline \end{tabular} \texttt{출력:} 첫장 첫절\textit{\seename} \verb|\pagename|, \verb|\chaptername|과 같이 우리말화 한 한글 이름들도 자동 음운 변화 처리를 할 수 있습니다. 그러므로 `\verb|\pagename\가|'라고 쓰면 ``\xample{\pagename\가}''라고 출력됩니다. \subsection{우리말 문헌 인용} \label{sec:문헌인용}\index{문헌 인용} 라텍에서 문헌을 인용하기 위해서는 \texttt{\textbackslash{}cite} 명령으로 참고 문헌 표지를 지정합니다. 참고 문헌 표지는 \texttt{thebibliography} 환경 내에서 \texttt{\textbackslash{}bibitem}으로 지정되는 참고 문헌 항목에 주어지거나 \BibTeX{}을 이용하는 참고 문헌 데이터 파일 \texttt{.bib}의 목록에서 주어집니다. 참고 문헌 데이터 파일을 사용하면 정해진 양식으로 참고 문헌 정보를 \texttt{.bib} 파일에 수집하여 둠으로써 어느 문서에서든지 그 정보를 꺼내 쓸 수 있고 참고 문헌 양식 파일을 지정하여 다양하고 일관된 참고 문헌 목록을 작성할 수 있습니다. 참고 문헌 양식 파일은 개별 언어에 맞게 수정되어야 할 부분이 많습니다. \texttt{alpha.bst}의 경우에는 저자나 편집자와 같은 이름을 약자로 바꾸기도 하는데, 이 때에는 한글 이름에서 오류가 발생하게 됩니다. 그 이유는 한글의 한 음절이 두 바이트(EUC-KR) 혹은 세 바이트(UTF-8)로 구성되는데, 양식 파일은 이를 인식하지 못하고 영문자처럼 한 바이트만을 약자로 사용하기 때문입니다. 한글 라텍은 \texttt{alpha.bst}를 한글화한 \texttt{halpha.bst}를 제공합니다. 이 문서는 다음과 같이 \texttt{halpha.bst}를 사용하여 참고 문헌 목록을 작성하였습니다. \begin{verbatim} \bibliographystyle{halpha} \bibliography{hlguide,texbook1,texbook3} \printindex \end{verbatim} 위에서는 참고 문헌 양식으로 \texttt{halpha.bst}를 사용하도록 지정하고 참고 문헌 데이터 파일로 \texttt{hlguide.bib}, \texttt{texbook1.bib}, \texttt{texbook3.bib}를 지정한 것입니다. \BibTeX{}을 이용하여 한글 참고 문헌을 만들기 위해서는 라텍이 8비트 문자를 보조 파일 (확장자가 \texttt{.aux})에 출력할 수 있어야 합니다. 적어도 te\TeX-3.0 (web2c-7.5.4) 버전에서는 \texttt{tcx} 파일을 이용하여 \texttt{latex.fmt} 파일을 만듦으로써 8비트 출력이 가능하도록 되어 있습니다. 그러나 \texttt{lambda.fmt}은 \texttt{tcx} 파일을 사용하지 않을 뿐만 아니라 프로그램 원천에서도 EUC (Extended Unix Code) 문자가 \TeX{}의 16진법 표기로 출력되도록 프로그래밍 되어 있습니다. 여기서 문제가 발생하는 부분은 참고 문헌 표지가 한글로 되어 있을 경우입니다. 예를 들어 참고 문헌 표지가 ``홍91''일 경우에 ``\texttt{\textbackslash{}cite\{홍91\}}''과 같이 인용을 했을 경우에 Λ는 보조 파일에 ``\texttt{\textbackslash{}citation\{\textasciitilde\textasciitilde ed\textasciitilde\textasciitilde 99\textasciitilde\textasciitilde 8d91\}}''을 기록하고 (UTF-8 부호화) \texttt{bibtex}은 이 정보를 읽어 참고 문헌 데이터 파일에서 이 표지를 갖는 참고 문헌 데이터 기재 항목을 찾아 냅니다. 그러나 참고 문헌 데이터 파일에 기록된 표지는 ``\texttt{홍91}''이므로 이 항목을 찾아 내지 못합니다. 따라서 한글 참고 문헌 데이터 파일을 사용하기 위해서는 보조 파일을 8비트 문자로 변환할 필요가 있고, 한글 라텍에서는 C 프로그래밍 언어로 짠 \texttt{hbibtex}을 제공하여 \BibTeX{}을 사용할 수 있도록 하였습니다.% \index{hbibtex@\texttt{hbibtex}} \texttt{hbibtex}의 사용법은 \texttt{bibtex}의 사용법과 동일합니다. 라텍을 사용할 경우나 참고 문헌 표지에 한글을 전혀 쓰지 않을 경우에는 \texttt{hbibtex}을 사용하지 않아도 됩니다. \subsection{우리말 색인 처리} \label{소절:색인작성}\index{색인} 우리말의 색인 작성은 EUC-KR 혹은 UTF-8 부호화 방식으로 만들어진 \texttt{.idx} 파일을 쓰는 것을 원칙으로 합니다. 이를 위해서는 \texttt{latex} 혹은 \texttt{lambda}가 8비트 문자를 보조 파일 (\texttt{.aux})에 출력할 수 있어야 합니다. 소절 \ref{sec:문헌인용}에서 설명한 바와 같이 라텍의 경우에는 보조 파일에 8비트 문자가 출력될 수 있으나 Λ의 경우에는 그렇지 못합니다. 참고 문헌 인용의 경우보다 더욱 심각한 문제는 색인의 머릿문자가 바뀌는 곳이 단순히 첫 문자의 부호값이 바뀌는 곳이어서 한글 색인 생성에 적합하지 않다는 것입니다. 이를 해결하기 위해서 지금까지 한글라텍에서는 한글 색인 양식 파일과 shell/awk 스크립트를 사용하였으나 한글 라텍 버전 1.0에서는 C 프로그래밍 언어로 작성된 \texttt{hmakeindex}를 사용합니다.\index{hmakeindex@\texttt{hmakeindex}} \texttt{hmakeindex}은 \texttt{latex}이 출력하는 \texttt{.idx} 파일의 16진법 표기를 모두 EUC 코드로 바꾼 후에 \texttt{makeindex}를 실행시키고 정렬된 \texttt{.ind} 파일을 재정리하여 우리말을 심벌, 한글, 한자로 대분한 후 한글의 머릿글자가 바뀌는 곳에 \texttt{\textbackslash{}hindexhead} 명령을 삽입합니다.\index{색인!\texttt{\textbackslash{}hindexhead}} \texttt{\textbackslash{}hindexhead}의 애초값은 \texttt{\textbackslash{}indexspace}이며 줄간격을 늘리는 역할을 합니다. 만일 색인의 머릿제목을 ``『가』, 『나』, 『다』, 『라』, ...''로 표시하고자 한다면 다음과 같이 라텍 문서에서 \texttt{\textbackslash{}hindexhead}를 재정의합니다.\index{hindexhead@\verb+\hindexhead+} \begin{verbatim} \renewcommand\hindexhead[1]{\indexspace {\bfseries 『\ifcase#1 심벌\or 가\or 까\or 나\or 다\or 따\or 라\or 마\or 바\or 빠\or 사\or 싸\or 아\or 자\or 짜\or 차\or 카\or 타\or 파\or 하\or 한자\fi 』} \nopagebreak } \end{verbatim} \texttt{hmakeindex} 프로그램은 C 언어로 작성되었으므로 운영 체계에서 기계어로 번역한 후 설치하여야 합니다. 윈도우즈 운영 체계에서는 미리 번역한 \texttt{hmakeindex.exe}를 설치하면 됩니다. 색인작성은 다음과 같이 합니다. \begin{verbatim} hmakeindex <문서이름> \end{verbatim} 한글 색인 양식 파일은 여전히 존재하며 색인과 쪽 번호 사이를 점선으로 채우는 기능만 수행합니다. 이 모양새 파일 \texttt{hind.ist}를 지정하기 위해서는 \texttt{hmakeindex}의 추가 선택으로 \texttt{-s hind}를 지정합니다. \begin{verbatim} hmakeindex -s hind <문서이름> \end{verbatim} 영문자로 표기되었으나 우리말 음가로 표기되는 한글 영역에 색인을 위치시키기 위해서는 문서에서 다음과 같은 방식으로 \verb|\index|를 지정합니다. \smallskip \begin{tabular}[c]{|lcm{5cm}|}\hline \verb|\LaTeX\index{라텍@\LaTeX}| & $\leftarrow$ & \필기a \verb|\LaTeX|은 `\textrm{\LaTeX}'으로 인쇄됩니다. 그러나 문자열이 `\verb|\|'로 시작하기 때문에 영문자 부호 `\verb|\|'에 `\textrm{\LaTeX}'이 위치하게 됩니다. 이 때는 `\texttt{@}' 글자의 앞에 \texttt{라텍}이라 적음으로써 그 위치가 `\texttt{라텍}'이 되도록 합니다. \\\hline \end{tabular} \subsection{우리말 이름} \label{소절:우리말이름}\index{우리말 이름} 한글라텍 0.99 버전부터는 라텍에서 사용되는 각종 이름들을 일률적으로 \verb+\ksnamedef+ 모듬 명령에 의해 변경될 수 있도록 하였습니다.\index{ksnamedef@\verb+\ksnamedef+} 예를 들어, 라텍에서 사용되는 `\refname{}'의 이름 `Reference'는 \verb+\refname+에 지정되어 있습니다. 이를 우리말화 하는 방법은 다음과 같습니다. \begin{verbatim} \ksnamedef{refname}{참고~문헌} \end{verbatim} 표~\ref{표:우리말이름}에는 한글라텍에서 한글화한 ``라텍 이름의 한글 및 한자화''가 나열되어 있습니다. 이 한글화는 \texttt{\textbackslash{}begin\{document\}} 앞에서 위에 예를 든 것처럼 \texttt{\textbackslash{}ksnamedef}로 재정의하면 원하는대로 변경됩니다. \begin{table}[htbp] \leavevmode \centering \begin{tabular}{|r|c|c|c|}\hline 라텍명령 & 한글라텍(한글) & 한글라텍(漢字) \\\hline\hline \texttt{today} & 1994년 3월 6일 & 1994年 3月 6日 \\\hline \texttt{enclname} & 동봉물 & 同封物 \\\hline \texttt{ccname} & 사본 & 寫本 \\\hline \texttt{headtoname} & 받는이 & 受信人 \\\hline \texttt{seename} & \verb+\+을 참조 & \verb+\+을 參考 \\\hline \texttt{seename} & 도 참조 & 도 參考 \\\hline \texttt{contentsname} & 목\~{}차 & 目\~{}次 \\\hline \texttt{listoffigurename} & 그림\~{}목차 & 그림\~{}目次 \\\hline \texttt{listoftablename} & 표\~{}목차 & 表\~{}目次 \\\hline \texttt{refname} & 참고\~{}문헌 & 參考\~{}文獻 \\\hline \texttt{indexname} & 찾아보기 & 索\~{}引 \\\hline \texttt{tablename} & 표 & 表 \\\hline \texttt{abstractname} & 요\~{}약 & 要\~{}約 \\\hline \texttt{bibname} & 참고\~{}문헌 & 參考\~{}文獻 \\\hline \texttt{appendixname} & 부록 & 附錄 \\\hline \texttt{ksTHE} & 제 & 第 \\\hline \texttt{partname} & 편 & 篇 \\\hline \texttt{chaptername} & 장 & 章 \\\hline \texttt{sectionname} & 절 & 節 \\\hline \texttt{colorlayer} & 환등판\~{}색깔 & 幻燈版\~{}色相 \\\hline \texttt{glossaryname} & 용어\~{}풀이 & 語\~{}彙 \\\hline \texttt{pagename} & 쪽 & 쪽 \\\hline \texttt{figurename} & 그림 & 그림 \\\hline \end{tabular} \caption{라텍 이름의 한글 및 한자화} \label{표:우리말이름} \end{table} \texttt{\textbackslash{}ksTHE}는 라텍에 정의되어 있지 않고, 한글라텍에서 단원의 숫자 판짜기에 사용되도록 도입된 이름 모듬 명령입니다. 이는 라텍 이름을 한글/한자화 함으로써 발생하는 문제점들을 해결하기 위해 사용됩니다. 예를 들어 \texttt{\textbackslash{}part}의 일련 번호는 단원 숫자의 한글화로 인해 ``편 I''과 같이 나오며 한글라텍에서는 \texttt{\textbackslash{}ksTHE}를 도입하여 ``제 I 편''과 같은 식으로 짜여지도록 하고 있습니다. 한글라텍에서는 \texttt{\textbackslash{}part}와 \texttt{\textbackslash{}chapter}, \texttt{\textbackslash{}appendix}, \texttt{\textbackslash{}section}까지를 위와 같이 한글화하고 있으며, 각각 다음과 같이 설정되어 있습니다.\index{한글라텍!단원 판짜기} \medskip \begin{tabular}{|r|rcl|}\hline 단원 종류 & 숫자 앞 & 숫자 & 숫자 뒤 \\\hline\hline \verb+\part+ & \verb+\ksTHE~+ & \verb+\thepart+ & \verb+~\partname+ \\\hline \verb+\chapter+ & \verb+\ksTHE~+ & \verb+\thechapter+ & \verb+~\chaptername+ \\\hline & & \verb+\thesection+ & article \\ \raisebox{1.5ex}[-1.5ex]{\texttt{\textbackslash appendix}} & \raisebox{1.5ex}[-1.5ex]{\texttt{\textbackslash appendixname\textasciitilde}} & \verb+\thechapter+ & book/report \\\hline \verb+\section+ & \verb+\ksTHE~+ & \verb+\thesection+ & \verb+~\sectionname+ \\\hline \end{tabular} \medskip 이를 사용자의 편의에 따라 재설정하기 위해서는 다음의 모듬 명령을 사용합니다. \begin{verbatim} \kscntformat{단원이름}{앞}{뒤} \end{verbatim} 예를 들어 \texttt{\textbackslash chapter}를 ``첫째 마당''과 같은 식으로 짜기 위해서는 \texttt{\textbackslash begin\{document\}} 앞에서 다음과 같이 지정합니다. \begin{verbatim} \renewcommand{\thechapter}{\Hnum{chapter}} \ksnamedef{chaptername}{마당} \kscntformat{chapter}{}{~\chaptername} \end{verbatim} \subsection{그외의 우리말화} \label{소절:우리말화} 우리말의 분철은\index{한글라텍!분철} 붙임표가 사용되지 않으므로 영어권 언어와는 다른 특별한 처리 방법이 요구됩니다. \def\hidewidth{\clearocplists\hskip\hideskip} \LaOm{\texttt{hfont.tex}에서 우리말의 글자 사이가 \texttt{\textbackslash hyphenchar} 없이 분리될 수 있게 하고 있습니다.} {\OTP{}에서 각 글자의 앞에 분철점을 집어 넣고 상황에 따라 분철 여부를 결정하도록 합니다.} 영어 문서에서 단원 제목에 이은 첫 문단에서는 들여쓰기를 하지 않습니다. 그러나 한글 문서에서는 모든 문단에 들여쓰기가 적용되는 것으로 보입니다. (이는 한글 문서 작성의 표준이 규정된 것으로 보이지 않으나 한국의 출판 서적을 볼 때 그렇게 판단됩니다.) 첫 문단 들여쓰기를 하는 국가는 한국 뿐만은 아닌 것으로 보이며, 텍 운영 체계에서 \texttt{indentfirst} 꾸러미를 사용하여 이를 해결하도록 되어 있습니다. 즉, 문서의 전문 영역에서 \begin{verbatim} \usepackage{indentfirst} \end{verbatim} 를 지정하면 첫 문단 들여쓰기가 쉽게 이루어집니다. 또한 들여쓰기의 정도에 있어서도 영어 문서와 우리말 문서는 차이가 있는 것으로 보입니다. (역시 정해진 표준이 있는 것으로 보이지 않고 출판사에서 관습적으로 들여쓰기의 양을 정해 쓰는 것으로 보입니다.) 한글라텍에서의 들여쓰기의 양은 한글 글자 두개의 넓이 즉 전각 2배각을 애초값으로 합니다. 이는 많은 한국어 서적에서 보이는 전각 들여쓰기보다 큰 값이지만 \cite{이종운91}\과 KS A 0104에서 채택되고 있는 값이고 우리말 문서에 적당하게 보입니다. 이 들여쓰기의 양은 다음과 같이 사용자가 원하는대로 변경될 수 있습니다. \begin{verbatim} \parindent15pt \end{verbatim} \subsection{PDF 문서 만들기} \label{소절:PDF}\index{PDF 문서} PDF는 Portable Document Format의 약자로서 Adobe 회사에서 제정한 문서 형식입니다. PDF 문서는 Adobe 회사의 PDF 프로그램에서 언급되는 Acrobat 문서로도 불려지고 있으며 어떤 운영 체계에서든지 미리 보기와 인쇄가 가능할 수 있는 이식성을 갖고 있습니다. PDF에는 \PS{} 글자체와 TrueType 글자체가 사용될 수 있고 이 문서 형식을 만들기 위해서 몇몇의 상업용 프로그램이 있습니다. 텍 사용자 층에서도 이러한 형식의 문서를 텍과 같은 강력한 식자 체계로 짤 수 있도록 많은 작업을 하였고, 그 결과로 초기의 pdf\TeX{}을 확장한 pdfe\TeX{}이 web2c 버전 7.5.4에 포함되어 공개되고 있습니다. pdf\TeX{}에서는 \PS{} 글자체와 TrueType 글자체를 사용하여야 하며, KAIST 수학과의 조진환님\footnote{chofchof@math.kaist.ac.kr. 현 수원대학교 교수, chofchof@ktug.or.kr}은 한글라텍의 \PS{} 글자체를 써서 한글 PDF 문서를 만들 수 있다는 소식을 알려 주신 바 있습니다. \underline{한글라텍}\\ 라텍을 사용하여 한글 PDF 문서를 만들기 위해서는 \texttt{pdflatex}을 사용하여야 합니다.\index{pdflatex@\texttt{pdflatex}} 우리말 글자체는 \PS{} 글자체를 사용하므로 \texttt{pdflatex}을 사용하는 데 문제가 없으며 영문 글자체는 \texttt{times.sty}과 같은 꾸러미로 Adobe Type1 글자체를 사용하거나 Computer Modern 글자체를 pfb나 ttf로 형식을 변환한 글자체를 설치하여 사용해야 합니다. 우리말 문서를 다음과 같이 \begin{verbatim} pdflatex <파일이름>.tex \end{verbatim} 하면 \texttt{<파일이름>.pdf} 파일이 만들어집니다. \underline{한글Λ}\\ 애석하게도 \texttt{pdfomega}나 \texttt{pdflambda}는 (아직) 없습니다. 따라서 한글Λ를 사용하여 PDF 파일을 만들기 위해서는 \texttt{dvi}, \texttt{ps}, \texttt{pdf}의 일련의 변환을 거치거나 \texttt{dvipdfm}을 사용해야 합니다.\index{dvipdfm@\texttt{dvipdfm}} 우리말 문서를 다음과 같이 \begin{verbatim} lambda <파일이름>.tex dvips <파일이름> -o epstopdf <파일이름>.ps \end{verbatim} 혹은\index{dvipdfm} \begin{verbatim} lambda <파일이름>.tex dvipdfm <파일이름> \end{verbatim} 하면 \texttt{<파일이름>.pdf} 파일이 만들어집니다. 경우에 따라서는 PDF 파일의 종이 규격이 A4 용지와 다를 경우가 있습니다. 일반적으로 \texttt{pdftex}을 사용할 때에 종이 규격은\index{pdflatex@\texttt{pdflatex}!종이 규격} \texttt{pdftex.cfg}에서 설정할 수 있습니다. 예를 들어 종이 규격을 국판(148mm$\times$210mm)으로 설정하기 위해서는 다음과 같이 \texttt{pdftex.cfg}를 수정합니다.\index{pdftex.cfg@\texttt{pdftex.cfg}} \begin{verbatim} page_width 148 true mm page_height 210 true mm \end{verbatim} 수정된 \texttt{pdftex.cfg} 파일은 작업 중인 자료방에 두면 됩니다. 그러나 \texttt{ps} 파일을 거쳐서 \texttt{pdf} 파일을 만들 때에는 \texttt{dvips}로 \texttt{ps} 파일을 출력하는 단계에서 선택 사항으로 종이 크기를 정해 주어야 합니다. \begin{verbatim} dvips -t 148mmx210mm <파일이름>.dvi -o \end{verbatim} pdf 파일을 미리보기 위해서는 adobe 회사에서 공개한 \texttt{acroread}나 \texttt{ghostscript} 혹은 유닉스 운영 체계에서만 제공되는 \texttt{xpdf}\footnote{\texttt{http://www.aimnet.com/\textasciitilde derekn/xpdf/}}를 사용할 수 있습니다. 라텍으로 문서 작업을 할 때에는 원천 문서에서 수정된 내용의 결과를 미리보기를 통해 확인하는데, 유닉스 운영 체계의 \texttt{xdvi}나 윈도우즈 운영 체계의 \texttt{yap}과 같은 \texttt{dvi} 미리보기 프로그램은 미리보기 화면의 ``재생(refresh)'' 기능을 통해 이미 열려져 있는 창에서 수정된 결과물을 간단히 확인 할 수 있습니다. 그러나 pdf 미리보기 프로그램은 \texttt{xpdf}만이 ``재생'' 기능이 있어서 다른 프로그램을 사용할 경우에는 조금 불편한 점이 있습니다. \newpage \appendix \section{참고 문헌 데이터베이스} \label{sec:bib} 라텍으로 문서의 판짜기에 익숙해진 후에는 참고 문헌 목록의 관리에 관심을 가질 수 있습니다. 참고 문헌 데이터베이스는 학술지 출판과 같이 전문 분야의 학회에서 유용하게 사용될 수 있고, 참고 문헌 양식 파일을 학회에서 제공함으로써 참고 문헌 목록의 판짜기가 일관성을 가질 수 있게 됩니다. 또한 참고 문헌 데이터베이스는 특정 분야에 독립적인 형식으로 구축되고 이 데이터베이스를 이용하는 사용자가 필요한 정보를 원하는 모양으로 출력할 수 있습니다. 한글 참고 문헌 데이터베이스를 구축하기 위해서는 영문 참고 문헌 데이터베이스와 다른 특별한 방식이 없습니다. 다만, 주의할 점이 있다면 데이터베이스의 기록 사항 중에서 특별한 기능을 갖는 기능어가 데이터베이스의 내용과 동일한 문자 세트를 사용하고 특별한 표시가 없으므로 오용될 수 있다는 점입니다. 참고 문헌 데이터베이스 파일의 확장자는 \texttt{.bib}이며 각 문헌이 정해진 순서 없이 다음과 같은 틀을 유지하며 나열됩니다. \begin{verbatim} @<문헌 유형> = {<라벨>, <필수 사항> = {<내용>}, ... <선택 사항> = {<내용>}, ... } \end{verbatim} \texttt{<라벨>}은 문서에서 문헌을 인용할 때 사용되는 참고 문헌 표지이며 \texttt{<필수 사항>}과 \texttt{<선택 사항>}은 \texttt{<문헌 유형>}에 따라 다릅니다. \subsection{문헌 유형} \label{sec:문헌유형} 대부분의 참고 문헌 양식 파일에서 사용되는 문헌의 유형과 필수/선택 사항은 다음과 같으며 필수/선택 사항이 아닌 사항은 \texttt{bibtex}에 의해 무시됩니다. \newcommand{\bibtype}[4]{\item \texttt{#1}: #2\\필수: #3\\선택: #4} \begin{itemize} \bibtype{article} {정기 간행물이나 잡지의 논문} {author, title, journal, year} {volume, number, pages, month, note} \bibtype{book} {출판된 서적} {author 혹은 editor, title, publisher, year} {volume 혹은 number, series, address, edition, month, note} \bibtype{booklet} {등록된 출판사나 기관을 통하지 않고 인쇄/제본된 책} {title} {author, howpublished, address, month, year, note} \bibtype{inbook} {출판물의 장, 절 혹은 쪽 범위} {author 혹은 editor, title, chapter 내지 pages, publisher, year} {volume 혹은 number, series, type, address, edition, month, note} \bibtype{incollection} {출판물을 구성하는, 자체의 제목을 가지고 있는 일부분} {author, titiel, booktitle, publisher, year} {editor, volume 혹은 number, series, type, chapter, pages, address, edition, month, note} \bibtype{inproceedings} {학회 회보에 발표된 논문} {author, title, booktitle} {editor, volume 혹은 number, series, pages, address, month, organization, publisher, note} \bibtype{manual} {기술 문서} {title} {author, organization, address, edition, month, year, note} \bibtype{masterthesis} {석사 학위 논문} {author, title, school, year} {type, address, month, note} \bibtype{misc} {어느 유형에도 속하지 않을 때 (선택 사항이 하나도 없으면 오류)} {없음} {author, title, howpublished, month, year, note} \bibtype{phdthesis} {박사 학위 논문} {author, title, school, year} {type, address, month, note} \bibtype{proceedings} {학회 회보} {title, year} {editor, volume 혹은 number, series, address, publisher, note, month, organization} \bibtype{techreport} {교육 기관과 같은 기관에서 월간/계관과 같은 연속물로 출판되는 보고서} {author, title, institution, year} {type, number, address, month, note} \bibtype{unpublished} {형식적으로 출판되지는 않았지만 저자와 제목을 가지고 있는 문서} {author, title, note} {month, year} \end{itemize} \subsection{기재 사항} \label{sec:기재사항} 각 기재 사항의 내용은 다음과 같습니다. \begin{itemize} \item \texttt{address}: \texttt{publisher}나 기관의 주소. 넓은 지역에 분포한 출판사의 경우에는 도시 이름만 기재한다. 작은 출판소의 경우에는 전체 주소를 기재하는 것이 독자에게 유용할 것이다. \item \texttt{annote}: 메모. 표준 참고 문헌 양식에서는 사용되지 않지만 \texttt{annote}와 같이 주해 참고 문헌을 생성하는 양식에서 사용된다. 이 터는 새 문장으로 시작하므로 영어의 경우에는 첫 글자가 대문자이어야 한다. \item \texttt{author}: 저자의 이름이며 \BibTeX 의 이름 형식으로 기재한다. \item \texttt{booktitle}: 일부분만 인용되는 서적의 제목. 서적 등재 사항에는 \texttt{title}이 사용된다. \item \texttt{chapter}: 장 번호. \item \texttt{crossref}: 참고 문헌 데이터베이스에 등재된 참고 문헌의 교차 참조 표지. \item \texttt{edition}: ``개정판''과 같은 간행물의 발행 판수. 서수로 주어져야 하며 영어의 경우 ``Second''와 같이 첫 글자가 대문자이어야 한다. 표준 양식을 통해 필요한 경우에는 첫 글자가 소문자로 바뀐다. \item \texttt{editor}: 편집자의 이름. \BibTeX{}의 이름 형식으로 기재한다. \texttt{author}와 함께 기재된 때에 \texttt{editor}는 참조가 등장하는 서적의 편집자를 나타낸다. \item \texttt{howpublished}: 통상적인 간행물이 아닌 경우 출판된 방식. \item \texttt{institution}: 기술 문서를 후원한 기관. \item \texttt{journal}: 정기 간행물의 이름. 잘 알려진 정기 간행물의 경우에는 약어를 사용할 수도 있다. \item \texttt{key}: 목록의 정렬이나 교차 참조 그리고 \texttt{author}나 \texttt{editor}가 없을 경우에 문헌 표지를 만드는데 사용된다. \texttt{\textbackslash cite} 명령의 표지 및 데이터베이스 등재 항목의 처음에 나오는 문헌 표지와 혼동해서는 안된다. \item \texttt{month}: 출판물이 출판된 달이나 출판되지 않은 출판물이 씌여진 달. 영어의 경우 일관성을 위해 세 문자 약어로 \texttt{jan}, \texttt{feb}, \texttt{mar} 등이 사용되어야 한다. \item \texttt{note}: 독자에게 유용하다고 생각되는 추가적인 정보. \item \texttt{number}: 정기 간행물이나 잡지, 기술 문서 혹은 연재물 내용의 번호. 정기 간행물이나 잡지의 판이나 호는 보통 \texttt{volume}과 \texttt{number}로 식별되고 기술 문서는 보통 \texttt{number}로 식별되며 이름을 갖는 연재물의 서적은 가끔 \texttt{nubmer}를 갖기도 한다. \item \texttt{organization}: 학회를 후원하거나 \texttt{manual}을 출판한 기관. \item \texttt{pages}: 하나 이상의 쪽이나 쪽 범위로 \texttt{42{-}{-}111}, \texttt{7, 41, 73{-}{-}97} 혹은 \texttt{43+}로 기재되는데 여기서 `\texttt{+}'는 단순하지 않은 범위의 쪽을 가리킨다. \item \texttt{publisher}: 출판사 이름. \item \texttt{school}: 논문이 쓰여진 학교의 이름. \item \texttt{series}: 연재물이나 여러 권으로 구성되는 출판물의 이름. 전체 출판물을 인용할 때에 \texttt{title}은 제목을 말하고 선택 사항인 \texttt{series}는 연재물의 이름이나 여러권으로 구성된 출판 서적의 이름을 말한다. \item \texttt{title}: 책의 제목. \item \texttt{type}: 기술 문서의 유형을 지정하며 ``연구 노트''와 같이 기재한다. 유형이 주어지지 않으면 애초값인 ``기술 문서''가 사용된다. 영어의 경우에는 애초값이 ``Technical Report''이다. \texttt{phdthesis} 유형의 경우에는 ``박사 학위 논문'' (애초값)이라고 명시할 수 있다. 영어의 경우에는 ``\{Ph.D.\} dissertation''이 애초값이다. \texttt{inbook}이나 \texttt{incollection} 유형에서도 \texttt{chapter = "1.2", type = "절"}이라고 기재함으로써 애초값인 ``1.2 장'' 대신에 ``1.2 절''을 얻을 수 있다. \item \texttt{volume}: 연속 간행물이나 여러 권으로 구성된 인쇄물의 권. \item \texttt{year}: 출판 연도. 출판되지 않은 서적의 경우 서적이 쓰여진 연도. 일반적으로 1984와 같이 네 개의 숫자로 구성되지만 표준 참고 문헌 양식은 ``about 1984''와 같이 마지막 네 문자가 숫자인 경우를 잘 처리한다. \end{itemize} \subsection{저자 및 편집자 이름 형식} \label{sec:이름} \texttt{author}나 \texttt{editor}의 영어 이름은 다음의 두 가지 형식으로 입력됩니다. \begin{verbatim} "<이름> <성>" "<성>, <이름>" \end{verbatim} 그러나 한국어 이름은 공백 문자가 없이 다음과 같은 형식으로 입력됩니다. \begin{verbatim} <성><이름> \end{verbatim} 영어 이름을 반점으로 성과 구분하는 방법은 성이 여러 낱말로 구성된 경우에 효과적입니다. 이름에 사용되는 기능어에는 \texttt{and}와 \texttt{others}가 있습니다. \texttt{and}는 여러 이름을 나열할 때 사용되고 \texttt{others}는 여러 이름을 축약할 때 사용됩니다. 따라서 이름 기재 내용이 \texttt{and others}로 끝날 때에 이는 ``\textvisiblespace 외''(영어의 경우는 ``\textit{et al.}'')로 출력됩니다. \section{한글화} \label{sec:한글화} EUC-KR 부호화 문자를 처리하는 한글라텍에서 발생하는 문제점들은 대부분이 문자의 범주에 기인합니다. 텍의 명령은 더 이상 \texttt{expand} 될 수 없을 때까지 \texttt{expand} 되는 반면에 문자는 더 이상 \texttt{expand} 되지 않는 범주에 속합니다. 영어 알파벳 문자는 모두 문자 범주에 속하므로 예를 들어 ``word''를 구성하는 네 개의 문자는 \texttt{expand} 후에도 그대로 남습니다. 반면에 EUC-KR로 부호화된 ``낱말''은 네 개의 부호가 두 개씩 쌍을 이루고 있으며 각 쌍이 두 개의 한글 음절 ``낱''과 ``말''을 형성합니다. EUC-KR 부호화 방식은 한 음절을 구성하는 두 개의 바이트 값에 의해 한국어 음절 값이 정해지므로 한글라텍에서는 첫 번째 바이트를 두 번째 바이트를 인수로 취하는 명령으로 인식하도록 하고 있습니다. 그 결과 한글 음절은 \texttt{expand} 된 후에 소위 말하는 원시 명령으로 구성되는 일련의 명령 집합체로 변합니다. 문자 범주를 기대하는 명령의 변수가 한글일 때에 라텍은 오류를 유발합니다. \texttt{\textbackslash label}이나 \texttt{\textbackslash cite} 명령 등의 변수가 한글일 때가 그렇습니다. 한글라텍에서는 표준 문서 양식에서 사용되는 이와 같은 명령들을 수정하여서 한글 라벨을 사용할 수 있도록 했습니다. 그러나 다른 패키지에서 이런 명령들을 재정의하면 또다시 문제가 발생할 수 있습니다. \texttt{showkeys} 패키지는 \texttt{\textbackslash label}, \texttt{\textbackslash ref}, \texttt{\textbackslash pageref}, \texttt{\textbackslash cite}, \texttt{\textbackslash bibitem} 명령을 수정하여 내부적으로 사용되는 표지를 출력하는 기능을 수행합니다. 한글라텍에서는 이 패키지를 한글화 하여 \texttt{showhkeys.sty}의 이름으로 제공합니다. \texttt{showtags} 패키지는 참고 문헌의 인용에 사용되는 표지를 \texttt{showkeys} 패키지와는 다른 방식으로 출력하는 기능을 수행합니다. 이 패키지를 한글화 한 파일은 \texttt{showhtags.sty}입니다. \texttt{hyperref} 패키지는 주로 \texttt{pdflatex}과 함께 쓰여 PDF 문서 내에서의 교차 참조 사이를 항해할 수 있는 기능을 제공합니다. 한글라텍에서는 이 패키지도 한글화 하여 \texttt{khyper.sty}로 제공합니다. 다만 bookmarks 기능은 제대로 구현하지 못했습니다. 그 이유는 한글 문자의 부호화가 EUC-KR이기 때문이며 PDF에서는 유니코드를 요구합니다. bookmarks의 한글화는 EUC-KR 부호화 문자를 출력하는 수준에서 그쳤습니다. 따라서 \texttt{pdflatex}의 bookmarks 기능은 사용하지 않는 편이 좋습니다. 한글Λ에서는 UTF-8로 부호화된 한글이 16비트의 문자 범주로 처리됩니다. 따라서 한글라텍의 경우와는 달리 \texttt{expand}에 의한 오류가 발생하지 않습니다. 그러므로 \texttt{showkeys}, \texttt{showtags}, \texttt{hyperref}에서 요구하는 한글화 작업이 필요하지 않습니다. 만일 한글Λ에서 위의 한글화된 패키지를 사용했을 때는 한글화 되지 않은 기존 패키지만 사용되고 한글화 부분은 적용되지 않습니다. \nocite{홍윤표91} %%% Local Variables: %%% mode: latex %%% TeX-header-end: "^%% End Of Header" %%% TeX-trailer-start: "^%% Start Of Trailer" %%% TeX-master: "hlguide" %%% End: