KTUGFaq

KTUG FAQ

로그인:
비밀번호:
가입
You have a will that can be influenced by all with whom you come in contact.
FrontPage › Windows에서설치하기/간단하게따라하기
<!> 아래의 글은 2006년 작성된 자료로서 현 시점에 맞지 않습니다. 2013년 1월 현시점에 맞는 자료는 TeX Live2012+ko.TeX설치 를 참조하세요.

TeX/LaTeX 의 발전 속도와는 비교가 되지 않게 한글 LaTeX 은 지속적인 발전을 거듭해 왔다. 이러한 발전의 결과로 긍정적인 측면은 '거의 완벽한' 한글 텍 환경이 윈도우즈/매킨토시/리눅스 바탕에서 구축 가능해졌다는 것이고, 부정적인 측면은 분화의 결과로서 몇가지 한글 텍 환경(HLaTeX/hangul-k/dhucs/hangul-ucs) 및 인스톨 방법이 있어서 지난 몇년간 KTUG 에서 진행된 개발과정을 따라오지 않는한 혼란에 빠질 위험이 있다는 것이다. 윈도우즈 환경에서 한글 텍을 인스톨 하는 방법도 격세지감을 느끼게 할만큼 간단해 졌고, 관리하기도 편해진 것이 사실이다. 그럼에도 불구하고 텍을 사용하고 싶어하는 텍에 관한한 초보자가 그냥 (눈감고) 따라 인스톨 할 수 있는 가이드가 조금은 부족한 듯 느껴져서 이 문서를 제작하게 되었다.

이 페이지에는 다음과 같은 것을 목적으로 한다. 한글환경은 KC2006 을 사용하는 것으로 가정한다.

  1. Step by step 으로 간단하게 윈도우 상에서 한글이 사용가능한 텍 환경을 구축
    • 간단한 것이 목적이므로 이를 위해서 단일 에디터, 단일 hangul-ucs 환경만을 인스톨 하는 것을 목표로 한다. 현재 현실적으로 hangul-ucs 이외의 한글 텍 환경을 사용하는 것은 큰 장점이 없게 느껴지기 때문이다. 실험해본 결과로는 인터넷을 통해서 설치하는 시간을 제외하고 10분 정도의 시간안에 문제없이 한글이 사용가능한 완벽한 텍환경을 설치하는 것이 가능했다.
  2. 간단한 용어의 해설
    • 처음 텍을 사용하는 입장에서 UTF-8, BOM, teTeX, dhucs 등의 용어가 생소하여 진입장벽으로 작용하는 것이 사실이므로 이를 간단하게나마 설명한다.

목차

1 MiKTeX?, KC2006? 뭐가 이렇게 복잡해 ...?
2 일단 인스톨 해서 문서 하나 만들어 보기
2.1 에디터
2.1.1 코드
2.1.2 BOM
2.1.3 EmEditor
2.2 설치
2.3 예제 만들어 실험
3 텍의 능력을 더 확인하기
3.1 트루타입 글꼴 추가 사용
3.1.1 트루타입 글꼴 추가 사용하기
3.2 일본어 및 중국어 사용
3.3 내가 만든 스타일 파일을 계속해서 사용하고 싶을때
3.4 기타 TeX
3.4.1 기타 한글 TeX 및 에디터
3.4.2 기타 인스톨 패키지
4 다른 OS 상에서 인스톨
4.1 Mac OS 상에서 인스톨
4.2 Linux 상에서 인스톨
5 참고
5.1 도움얻기

1 MiKTeX?, KC2006? 뭐가 이렇게 복잡해 ...?

텍이라고 하는 것이 원래 아스키코드 만을 상정하고 만들어진 것이기 때문에 동양어권의 2바이트 문자를 처리하기 위해서는 추가적인 노력이 필요하다. KTUG 은 이를 위해서 많은 연구를 해왔고 현재 KC2006 이라고 하는 이름으로 그 성과가 집대성 되었다.

KC2006 이 만들어지기 이전까지 MiKTeX 이라고 하는 윈도우즈용 텍 배포판에 한글을 사용할 수 있도록 여러가지 패치를 적용한 버전이 상당히 오랜동안 사용되어져 왔기 때문에 현실적으로 MiKTeX을 사용하는 것이 많이 알려진 방법이다. 그러나 MiKTeX이 새로운 버전을 내면서 한글을 온전히 활용하기에 여러가지 문제를 내포하게 되었고 KTUG은 이에 MiKTeX 을 사용하지 않고 새로운 배포판을 이용하여 완벽한 한글및 기존의 연구성과를 이용할 수 있는 배포판을 배포하게 되었다. 이 두가지 버전에 대한 자세한 내용에 대해서는 MiKTeX과KC2006 을 참조하기 바란다.

KTUG은 공식적으로 KC2006을 추천하며 MikTeX에서 한글을 사용하고 싶은 사용자는 MiKTeXMiKTeX설치 또는 Yhchoe/설치가이드 페이지를 참고하기 바란다.

2 일단 인스톨 해서 문서 하나 만들어 보기

2.1 에디터

2.1.1 코드

hangul-ucs 환경은 UTF-8 코드를 사용한다. 이는 유니코드의 한가지 형태로서 보통 유니코드로 알려진 UTF-16이 모든 코드에 16비트를 사용하는데 반해서 영문의 경우 1바이트, 한글의 경우 3바이트 길이의 코드를 사용하게 된다. UTF-8 코드를 사용하면 영문의 경우 기존의 ASCII코드와 같다는 장점과, 유니코드를 사용할 수 있다는 장점이 있기 때문에 많이 사용되고 있다. hangul-ucs 도 UTF-8 코드를 사용하게 된다.

2.1.2 BOM

UTF-8 은 두가지가 있는데 하나는 문서의 앞에 BOM 이 있거나 없는 경우이다. BOM은 3바이트의 문자로서 이 문서가 UTF-8 으로 되어 있는지를 알려주는 역할을 한다. 에디터로 UTF-8 문서를 열거나 저장하는 경우 BOM 에 대해서 확인 하는 경우가 있는데, 이는 문서 처음의 3 바이트를 어떻게 인식할 것인지에 관한 것이다. 앞으로 사용하는 UTF-8 의 경우 BOM 이 없는 것으로 한다.

2.1.3 EmEditor

hangul-ucs 가 UTF-8 코드를 바탕으로 하기 때문에 hangul-ucs로 텍 문서를 만들기 위해서는 당연히 UTF-8 코드를 사용할 수 있어야 한다. 여러가지 에디터 중에서 EmEditor 를 사용하도록 한다.

EmEditor는 Shareware 이므로 1달은 무료로 사용할 수 있다. 필요하다고 느껴지면 그때 구입하면 된다. 기능의 일부를 제거한 EmEditor Free는 freeware이다. (이전에, 학생이나 오픈소스 개발자로서 무료로 받은 라이센스는 제한 없이 계속 사용할 수 있다.)

2.3 예제 만들어 실험

가장 간단한 예제를 만들어 보자. EmEditor에 다음의 문서를 기록한다.

\documentclass{article}
\usepackage{dhucs}
\begin{document}
안녕하세요?
\end{document}

여기에서 \usepackage{dhucs} 바로 한글을 사용할 수 있는 비결이다. C 언어로 따지면 한글 라이브러리를 사용하라는 의미가 된다. 즉, 앞에서 본 것처럼 한글 라이브러리를 깔고, 그 한글 라이브러리를 사용하도록 명령을 내리면 그 다음부터는 자연스럽게 한글을 사용할 수 있는 것이다. ucs 는 unicode system 이라는 의미이고 앞의 dh 는 개발자 중의 한분인 `김도현'교수님의 성함의 이니셜(dh)이다.

이를 abc.tex 이라는 이름으로 저장한다. 반드시 BOM이 없는 UTF-8 형태로 저장해야 한다.

save_abc_tex_2.jpg

  • latex abc.tex으로 abc.dvi를 만든다.
  • dvipdfmx abc.dviabc.pdf를 만든다.
  • Adobe reader를 이용해서 생성된 문서를 본다.
a1.jpg

앞에서 본 것처럼 LaTeX 을 이용하여 문서를 컴파일 하면 dvi 문서를 만든다. dvips 프로그램을 이용하면 dvi 문서를 ps 문서로 만들게 되고 dvipdfmx 프로그램을 이용하면 dvi 문서를 pdf 문서로 변환하게 된다. YAP 과 같은 프로그램을 이용하면 dvi 문서를 볼 수 있다.

3 텍의 능력을 더 확인하기

3.1 트루타입 글꼴 추가 사용

3.1.1 트루타입 글꼴 추가 사용하기

임의의 한글 트투타입 글꼴을 사용하는 방법은 두 가지가 있다. 하나는 전통적인 latex, pdflatex을 위해서 tfm 폰트 메트릭을 만들어서 사용하는 것이고, 다른 하나는 XeTeX에서 트루타입을 직접 사용하는 것이다. XeTeX에 관한 것은 해당 페이지를 보라.

TTF2HLaTeXFont를 이용한 트루타입 설정

KC2006을 기준으로, 자신의 폰트 세트를 인스톨하는 방법을 간단히 요약한다.
  • 인스톨할 폰트를 모은다. 주의할 점은 반드시 유니코드 폰트 인코딩으로 된 글꼴만이 사용가능하며 완성형 인코딩의 폰트는 사용할 수 없다는 점이다. 아래 진행 과정에서 이와 관련된 에러를 만난다면 적어도 Hangul-ucs에서는 사용할 수 없는 글꼴이므로 다른 글꼴 조합을 선택하여야 한다.
  • 이 폰트를 어떠한 이름으로 텍에서 사용할지를 지정한다. 예를 들어서 yn 이라는 이름으로 윤폰트를 저장하는 경우를 생각하면 다음과 같이 기록한다. 다음과 같은 내용의 파일을 config-yn 이라고 저장한다.
FOUNDRY: yn
FONTmj: f=bt m=YMJO120.ttf b=YMJO140.ttf
FONTgt:      m=YGO120.ttf b=YGO130.ttf
FONTmg:      m=Hahoem.ttf b=Hahoeb.ttf
실제 사용은 /usr/sh config-yn.bat
  • 자동화 하기 위해서 다음과 같은 배치파일을 만들어서 실행시킨다. 다른 운영체제에서라면 디렉토리 경로를 지정하는 것만 주의해서 교체하면 될 것이다. 그리고 PATH 변수의 지정 등은 굳이 필요하지 않은 경우도 많다. ttf2hlatexfont를 두 번 실행한다는 점에 주의하라. 한번은 폰트 파일을 조성하는 것이고 다른 한번은 인스톨을 위한 것이다. 또한 설치를 위한 디렉토리는 특별한 경우가 아니면 사용자의 home texmf tree를 이용하도록 한다.
    @ECHO OFF
    ttf2hlatexfont -c config-yn
    ttf2hlatexfont -c config-yn -i %HOME%\texmf
    
    • 배치 파일을 실행시키면 자동으로 텍이 이해할 수 있는 여러가지 파일로 변환을 시키고 인스톨을 하기 위해서 질문을 한다. 이때 yes 로 답한다. <!> 위의 폰트 파일을 처리하는 과정에서 ttf2hlatexfont가 "완성형 글꼴인 것 같다"는 메시지를 보이는 경우, Hangul-ucs 용 폰트 파일은 만들어지지 않는다. 그 폰트를 포기하고 다른 글꼴로 바꿔야 한다. 애석하지만 현재 유통되는 대부분의 한글 트루타입 폰트는 거의 대부분 완성형 글꼴이다. 아시아글꼴을 Hangul-ucs에서 사용할 수 없는 이유가 바로 이 때문이다. 윤폰트의 경우에도 완성형 인코딩의 윤명조/윤고딕이 인터넷에 많이 유통되고 있으므로 반드시 구매시에 유니코드 인코딩인지를 확인하는 것이 필요하다.
    • 중요. 자신의 home 디렉토리를 열어서 %HOME%\texmf\dvipdfm\config\dvipdfmx.cfg를 <DRIVE>:\TeX\share\texmf-local\dvipdfm\config\ 디렉토리로 복사한다. 또, %HOME%\texmf\ttf2pk\base\ttf2pk.cfg를 <DRIVE>:\TeX\share\texmf-local\ttf2pk\base\ 디렉토리로 복사한다. 원래부터 있던 같은 이름의 파일을 백업해두거나 덮어쓴다.
      • HOMETEXMF를 맨 처음 읽는 디렉토리로 하면 위와 같은 파일 이동은 불필요하지만, KC2006은 kcupdate가 texmf-local 아래의 설정 파일들을 관리하기 때문에 만약을 위하여 texmf-local의 설정 파일이 제일 먼저 읽히도록 되어 있다. 즉, 원칙적으로 모든 KC2006 사용자가 동일한 설정을 가짐으로써 kcupdate가 원활하게 이루어지도록 하려는 것이다. 이 순서를 바꿈으로써 업데이트 등이 제대로 이루어지지 않는 경우에 대해서는 자신이 책임져야 하므로, 조금 번거롭더라도 개인 설정은 위와 같이 직접 설정파일을 이동하거나 수정하는 것이 좋을 것이다.
    • 만약 원한다면 pdftex을 위한 map 파일을 작성한다.
      • ttf2hlatexfont에 -p 옵션을 주어서 만들어지는 pdftex map 파일은 KC2006에는 맞지 않다. 그러나 Linux/Mac 등 teTeX에서는 그렇게 하는 것이 필요할 것이다. pdftex의 map 파일을 만드는 규칙은 게시판 등을 참고하라. 다만, KC2006의 pdftex을 위한 map 파일은 2006-08-21 현재, 다른 어떤 TeX 배포판에서도 사용할 수 없다.
  • 설치한 폰트 사용하기

    • 새로 설치한 폰트 선택 명령을 정의한다. TeX의 소스 파일을 관리해보면 알겠지만 공연히 \textmj 류의 비표준적인 사용자 폰트 선택명령을 정의해서 사용하면 나중에 심각한 문제점을 겪게 될 수 있다. 그러므로 되도록이면 dhucs의 표준 폰트 선택 명령만을 사용할 것을 *강력히* 권장한다. 또한 사용자 폰트는 다른 사람에게서는 찾을 수 없는 폰트 세트일 것이므로 이 폰트 세트를 타인에게 강제할 수 없다. 이런 여러 가지 점을 고려한다면 다음 한 줄을 소스에 추가하는 것이 적절하다.
    \IfFileExists{krfnt.sty}{\usepackage{krfnt}}{}
    
    • 이 코드는 만약 krfnt.sty라는 파일이 발견되면 포함하고 없으면 무시하라는 것이다. 따라서 krfnt.sty에 원하는 폰트 설정을 해둔 다음 이 파일이 없으면 기본 글꼴 세트만을 사용하도록 정의한다. 다시 주의를 환기하자면 krfnt.sty가 없는 경우 컴파일이 불가능하도록 krfnt.sty에 사용자 명령을 정의해두면 안된다. 어떤 경우에도 기본 글꼴로 컴파일이 가능하도록 코드를 작성하는 것은 생각보다 대단히 중요하다. 예를 들어 \textgl과 같은 명령은 기본 폰트 세트를 이용해서 컴파일할 때 에러를 내기 때문에 좋은 코딩이 아니다.
    • 위의 사용자 글꼴 세트를 정의하였다면 다음과 같은 사용법을 생각해보자. mj, gt, mg 세 개의 글꼴을 본문에서 사용하려 할 때, serif에는 mj, sans serif에는 gt, 그리고 제목을 위한 별도 글꼴로 mg를 사용하려 한다. 이 때 문서의 프리앰블에는 다음과 같이 정의한다.
    \newcommand{\titlefont}{\sffamily}
    \IfFileExists{krfnt.sty}{\usepackage{krfnt}}{}
    
    • 그 다음에 krfnt.sty에는 다음과 같이 설정해둔다.
    \SetHangulFonts{ynbt}{yngt}{untz}
    \SetHanjaFonts{ynbt}{yngt}{ungt}
    \def\titlefont{\SetAdhocFonts{ynmg}{ungt}}
    
    • 이제 본문에서는 \titlefont라는 매크로만을 사용하게 되면, 윤폰트 세트가 설치된 경우에는 ynmg가 사용되겠지만 그렇지 않은 경우에는 적어도 \sffamily(은돋움)로 에러 없이 문서는 처리될 것이다.
    • 예제는 다음과 같다.
    \documentclass{article}
    \usepackage{dhucs}
    \newcommand{\titlefont}{\sffamily}
    \IfFileExists{krfnt.sty}{\usepackage{krfnt}}{}
    \usepackage{txfonts}
    \begin{document}
    안녕하세요?
    \end{document}
    

    이를 컴파일 하여 결과를 보면 윤폰트로 폰트가 변경되어 있는 것을 알 수 있다.



    3.2 일본어 및 중국어 사용

    hangul-ucs 는 유니폰트를 사용하기 때문에 일본어나 중국어와 같은 CJK 문자들을 식자할 수있는 능력을 가지고 있다.

    예제는 다음과 같다. @japanesetest.tex (3.09 KB)

    결과는 다음과 같다. @japanesetest.pdf (56.3 KB)

    3.3 내가 만든 스타일 파일을 계속해서 사용하고 싶을때

    텍으로 작업을 하다보면 개인적인 스타일 파일이 많이 생긴다. 이때에는 다음과 같은 방법을 사용한다.
    • C:\TeX\localtexmf\tex\latex 에 디렉토리를 하나 만들고 여기에 스타일 파일등을 기록한다.
      • 스타일 파일등을 추가할때마다 데이터 베이스를 갱신해 주어야 한다.
    • c:\tex 디렉토리 아래에 아예 개인 디렉토리를 하나 추가한다. 이 때에는 앞에서 한글 디렉토리를 인스톨 한 다음에 mo 를 이용해서 정보를 추가하듯이 같은 작업을 반복해 주어야 한다.
      • 디렉토리의 구조는 기존의 텍 디렉토리 구조를 따라야 한다. 즉, 예를 들어서 C:\TeX\abc 에 새롭게 디렉토리를 만들고 이를 mo 를 통해서 등록한 경우 스타일 파일은 C:\TeX\abc\tex\latex 내부에 있어야 한다.

    3.4 기타 TeX

    3.4.1 기타 한글 TeX 및 에디터

    • 이전에 euc-kr 한글을 사용할때에는 HLaTeX 이나 한글 조사 부분을 개정한 hangul-k 등을 사용했지만 처음 배우는 입장에서는 별로 필요가 없다고 생각한다.
    • 텍용 에디터로 오랫동안 사랑 받아온 것으로 WinEdt 가 있다. 이는 Delphi 를 이용하여 만든 프로그램이므로 기본적으로 unicode 지원에 취약하다. 즉 hangul-ucs 를 현재까지 사용할 수없고, 앞으로도 사용할 수 없게될 확률이 아주 크다. HLaTeX 이나 hangul-k 를 사용하는 이유가 WinEdt 때문이라고 할 만큼 편의 성을 제공해주는 프로그램이지만 이제는 버릴 것은 버릴때가 되지 않았나 생각한다.

    3.4.2 기타 인스톨 패키지

    • 맥 및 리눅스에서 주로 사용하는 텍으로 teTeX 이 있다.
    • 맥용 텍으로는 XeTeX이 있는데 유니코드 및 맥용 폰트를 자유롭게 사용할 수 있다.
    • 그밖에 fpTeX 도 사용된다.

    4 다른 OS 상에서 인스톨

    4.1 Mac OS 상에서 인스톨

    MacOS에서 설치하기 현재 윈도우즈 이외에 매킨토시 및 리눅스에서도 쉽게 한글 텍을 인스톨 하여 사용할 수 있다. 현재 맥용 hangul-ucs 의 경우 반 자동화 방식으로 단순히 dmg 파일을 열고 디렉토리를 복사하는 방식으로 한글을 사용할 수 있다. 여러가지 의견이 있을 수 있지만 아직까지는 Mac OS 가 가장 완벽한 텍 개발 환경이라고 보는 사람이 많다.

    • 한글 텍을 사용하는 관점에서 윈도우즈와 (당연히) 동일한 문서를 생성한다.
    • 기본적으로 eps/pdf 를 생성하는 능력이 OS 에 있다. 즉, 거의 100% 유틸리티가 p[df 및 eps 를 생성하는 기능을 가지고 있다.
    • XeTeX 등의 뛰어난 텍을 추가로 사용할 수 있다.

    4.2 Linux 상에서 인스톨

    현재 Linux 상에서 hangul-ucs 를 인스톨 해주는 패키지가 개발 되어 있어서 간단하게 한글을 사용할 수 있다.

    5 참고

    5.1 도움얻기


    이 문서를 보고 도움이 되신 분은, 과정을 캡쳐해서 화면을 추가해 주었으면 좋겠습니다. 방법은 예를들어 abc.jpg 가 캡쳐한 화면일때, 일단 attachment:abc.jpg 등으로 위키에 넣고 저장을 하면 Upload new와 함께 문서를 추가하라고 버튼이 나오는데 그 때 버튼을 눌러 abc.jpg을 추가하면 됩니다. -- smcho
    Karnes-LaTeXTips 의 howtoinstalldhucs 문서의 소스를 풀면 MiKTeX 설치과정을 캡쳐한 그림들이 있습니다. 필요하다면 사용하셔도 좋을 것입니다. -- Karnes 2006-01-17 18:51:43

    memhangul-ucs 설치에 대한 사항은 설치 관련 기사에서 권장할 만한 사항은 아니라고 생각되어 삭제하였습니다. 누가 귀찮은 memhangul을 쓰겠습니까? ;) -- Karnes 2006-01-28 02:21:52


    감사합니다. 제가 원했던 설치가이드가 바로 이런 것이었습니다. Hangul-ucs를 사용할려고 시도해 봤지만 잘 되지 않아서 포기했었는데 내일 여기 적힌 방법대로 설치를 해봐야 겠군요.. 저를 포함한 일반사용자들은 너무 많은 한글 옵션으로 인해 어느 것을 설치해서 사용해야 하는 것인지에 혼동이 있지 않나 생각합니다. 여기 적힌 방법은 그래도 클리어하다고 생각합니다. by Daisyweb

    ^
    Valid XHTML 1.0! Valid CSS! powered by MoniWiki
    last modified 2013-02-07 12:07:11
    Processing time 0.0989 sec