EDRSPIHCRSSRSS

Hangul And MiKTeX

Difference between r1.24 and the current

@@ -1,120 +1,50 @@
#keywords kotex,miktex,한글,ko.TeX,윈도우,설치 
[[TableOfContents]]
#keywords kotex,miktex,한글,ko.TeX,윈도우,설치,KTUG사설저장소

2013/11/01, MiKTeX kotex-utf, kotex-plain, kotex-oblivoir가 패키징됨으로써, ["ko.TeX"] 군 중 kotex-utils를 제외하고 모두 사용가능졌다.
MiKTeX에LaTeX 한글 타프세트 원은 다음과 같다. 
* pdftex, e-tex 엔진
* kotex-utf (UTF-8)
* cjk-ko (UTF-8)
* xetex 엔진
* xetexko
* luatex 엔진
* luatexko
MiKTeX 설치해서 [wiki:MiKTeX] 이지 참조.

CJK 패키지가 한글 지원하고 있지만 cjk-ko가차피 CJK 패키 이용하므로 여기에 논외로 한다.
페이지 논의되고 있던 "MiKTeX에서 한글 사용상의 여러 문제"들은 2022년 현재 '''모두 해결'''되었다. 따라서 해당 내용을 삭제한다. 문제점들이적되고 있었는지[http://wiki.ktug.org/wiki/wiki.php/HangulAndMiKTeX?action=recall&rev=1.31| r1.31 이전 버전]을 참고하라.

* '''MiKTeX 설치 Update반드시 실행해야 다.''' 특히 fontspec은 반드시 업데이트해야 .
MiKTeX을 사용할 때의 유일한 단점은 [wiki:KtugPrivateRepository KTUG 사설저장소]활용할 없다는 것이다. 이에 KTUG private repository를 사용하는 방법을 설명한다.

== MiKTeX 2.9에서 ko.TeX (xetex) ==
xelatex 한글 문서를 즉시 작성 있다.
{{{#!tex
%!TEX encoding = utf-8
\documentclass{article}
\usepackage{xetexko}
\begin{document}
테스트. 안녕.
\end{document}
== KTUG 사설저장소 패키지의 ==
제3자 방식으로 이 문제를 해결할 수 있다.
=== 필요성 ===
* 영어 문서만 작성하거나 일반적인 상황에서는 설치할 필요 없다.
* EUC-KR 인코딩의 한글 문서를 지원하는 kotex-euc가 필요하다면 이 패키지를 설치하여야 한다.
* KTUG에서의 토론 중에 등장하는 샘플 파일을 컴파일하기 위하여 필요때가 있다.
* 몇 가지 요긴한 패키지를 활용하는 것이 가능하다.
=== 적용 순서 ===
1. 압축 파일을 다운로드한다. [http://mirror.doeun.kr/texlive/texmf-kpr.zip 2024-01-18 외부링크] (약 190M)
2. 다운로드한 파일을 적당한 곳에 압축을 푼다. 권장하는 위치는 ```c:\usr```을 만들고 이곳에 가져다둔 다음 여기서 해동하는 것이다. 이렇게 하면 ```c:\usr\texmf-kpr``` 폴더 아래에 압축이 풀린다.
3. cmd 또는 Terminal을 열고 다음 명령을 실행다. (> 기호는 프롬프를 의미하므로 직접 써넣는 것이 아니다. 압축을 푼 위치는 각자의 사정에 맞게 하라. 만약 빈 칸이 있는 위치에 압축을 풀었다면 따옴표로 감싸준다.) {{{
> initexmf --register-root=C:\usr\texmf-kpr
> initexmf -u
}}}
== MiKTeX 2.9에서 ko.TeX 사용하기 (pdflatex) ==
pdflatex으로 ko.TeX 문서를 작성하려면 다음 절차가 더 필하다.
=== nanumtype1의 설치 ===
nanumtype1은 원래 자동 설치되어야 하는 것인데 버전 따라 되기도 하고 안 되기도 한다. 직접 다음 절차를 거쳐 설치하는 것이 좋다.
 
1. MiKTeX Package Manager를 열고 nanumtyp1을 검색하여 설치한다.
2. 패키지가 설치된 후에 명령행(cmd)을 열어서 다음 명령을 써넣는다.{{{
4. updmap 설정 파일 편집 (중): 커맨드 에서 다음 명령을 실행한다. {{{
> initexmf --edit-config-file updmap
}}}
3. 노트패드가 열리면 다음 내용을 넣고 저장한다.{{{
Map nanumtype1.map
5. 그러면 Notepad가 열리면서 주석문 한 줄 있는 상태가 될 것이다.여기에 다음 내용을 적어넣고 저장한다. {{{
Map unfonts-base.map
Map unfonts-other.map
Map nnmbrfonts.map
Map kotex-midkor.map
}}}
4. 명령행 다음 명령을 실행한다. {{{
6 저장 후에 다음 명령을 실행한다. {{{
> updmap
}}}
=== kotex-utf의 문제점 수정 ===
2015/10/15. '''이 항목 언급하는 문제점은 2015년 10월 15일자로 해결되었다. kotex-plain 패키지를 최신판으로 업데트하면 된다.'''
 
MiKTeX의 kotex-utf 패키지에 hfontspec.default라는 파일이 빠져 있다. (MiKTeX의 패키징 버그라고 추정됨.) oblivoir에 반드시 필요한 파일이므스스로 만들어넣기로 하자. 편집기를 열어다음 내용을 써넣은
{{{
hu = \z@
interhchar = \z@
fullstoplower = \z@
exclamationlower = \z@
questionlower = \z@
serifhangulfont = nanummj
sanshangulfont = nanumgt
monohangulfont = nanumgt
serifhanjafont = nanumgt
sanshanjafont = nanumgt
monohanjafont = nanumgt
}}}
hfontspec.default라이름으로 저장한. 혹시 hfontspec.default.txt와 같이 저장되지 않도록 주의한다.
파일을 {{{
%USERPROFILE%\AppData\Roaming\MiKTeX\2.9\tex\latex\kotex-utf\
}}}
폴더에 가져다두고  
{{{
initexmf -u
}}}
명령한 번 실행한다.
절차는 pdflatex 문서만드 필요으로 xetexkoluatexko 사용과는 무관하다.
== kotex-euc의 설치 ==
* 예전 \usepackage{hangul} 같은 식으로 된 문 컴파일하려면 kotex-euc를 별도로 설치해야 .
* [https://onedrive.live.com/redir?resid=E8D201D5BECE0215%217986 ktugrepformik.zip]
* ktugrep for mik을 이용면 간단히 설치 가능
1. opencmd를 더블 클릭
1. 다음처럼 써넣고 실행 {{{
> instktugpkg kotex-euc
}}}
1. unfonts도 설치 {{{
> instktugpkg unfonts-base-type1
}}}
1. {{{initexmf --edit-config-file updmap}}} 명령실행하여 노트패드가 열리면 다음을 추가하고 저장{{{
Map unfonts-base-type1.map
}}}
1. {{{updmap}}}을 명령행에서 실행.
== 주의사항 등 ==
=== pdfTeX 사용시의 주의사항 (한자) ===
* 명조체 한자는 표시되지 않는다.(MiKTeX에서만 그렇다. TeX Live에서는 명조체 한자도 잘 표시한다.)
* 만약 unfonts-base-type1 (KTUG 사설저장소 패키지)를 설치하였다면 한자만 은 글꼴의 것을 쓰게 할 수 있다. {{{
\SetHanjaFonts{utbt}{nanumgt}{nanumgt}
}}}
=== LuaTeX 사용시의 주의사항 ===
* luaotfload 실행을 방해하는 폰트가 C:\Windows\Fonts에 있을 경우 luatex이 실행되지 않는 경우가 있다. [LuaLaTeX]의 trouble shooting을 참조한다.
== 기타 ==
* MiKTeX 2.9 (Windows 7)에서 파일 이름을 띄어쓰기가 포함된 이름으로 지을 수 있다. 
* 단, 한글 파일 이름은 pdflatex으컴파일하는 경우만 용할 수 있다. xelatex, lualatex의 경우는 글 파일 이름을 쓸 수 없다.
* TeXworks에서는 이렇게 한글 파일 이름쓰면 inverse search가 동작하지 않는다. 그 이외에 컴파일 등에는 아무런 문제가 없다.
* TeXnicCenter 2.02를 편집기로, SumatraPDF를 pdf 뷰어로 사용하는 경우, 한글 파일름, 심지어 파일 이름에 띄어쓰기 공백문자포함된 경우에도 forward/inverse search가 잘 작동하였다.
* WinEdt에서는 확바람. 
* pdfLaTeX으로 컴파일하는 파일에 BOM 있으면 안 된다. XeLaTeX의 경우에는 있든 없든 상관없다. BOM 붙은 UTF-8 파일에서 BOM을 제거하는 가장 손쉬운 방법은, TeXworks 에디터에서 매직 코멘트를 다음과 같 달고 그냥 저장하는 것이다. {{{
%!TEX encoding = UTF-8 Unicode
%!TEX program = pdflatex
=== 폰트 ===
* ```c:\usr\texmf-kpr\fonts\truetype` 아래 종류의 트루타입 폰트가 다. 함초롬 LVT와 나눔 트루타입이다.
* 해당 디렉터리로 들어윈도우즈에 설치한.
=== komkindex arara rule ===
* arara에서 komkindex를 지시하기 위해서는 다 절차가 필요하다.
1. ```c:\usr\texmf-kpr\scripts\arara\rules``` 폴더에 있는 ```arara-rule-komkindex.yaml``` 파일확인한다.
1. MiKTeX패키지설치하위치를 확인다. winget으로 설치하였거인스톨러로 설치 때, ''Installation Scope'' 단계에```only for me```로 설치(default)하였다면치를 확인.
* ```C:\Users\<username>\AppData\Local\Programs\MiKTeX\scripts\arara\rules```
만약 인스톨러 설치 단계에서 ''for anyone''선택하여 설치하였다면
* ```C:\Program Files\MiKTeX 2.9\MiKTeX\scripts\arara\rules```
1. (1)에서 확인```arara-rule-komkindex.yaml``` 파일 (2)의 위치사한다.
1. 명령행열고 ```initexmf -u```를 한번 실행한다.
1. 만약 MiKTeX Console불평하면 로그아웃하였다 로그한다.
* 이 다음과 같 문법으로 사용할 다. {{{
% arara: komkindex: { koreanfirst: yes, style: kotex }
}}}
 
== 문제해결 ==
* [http://www.ktug.org/xe/index.php?document_srl=187262#comment_187300 nanumtype1과 hfontspec.default를 수동설치해야 하는 상황]
 
=== 참고: MiKTeX 업데이트 ===
MiKTeX 2.9.4987 이후 버전이면 한글 사용이 가능하다. 그 이전 버전으로 설치하였다면 다음과 같이 MiKTeX을 업데이트한다.
1. 시작 메뉴에서 {{{모든 프로그램 -> MiKTeX 2.9 -> Maintenance (Admin) -> Update (Admin)}}}
1. http://ftp.ktug.org 를 저장소로 선택하고 진행한다.
1. 업데이트는 두 단계로 진행되므로 위의 프로그램을 두 번 실행해야 한다.
1. 먼저 MiKTeX 자체를 업데이트한다.
1. MiKTeX 업데이트가 끝난 뒤에 같은 방법으로 다시 실행하면 현재 설치된 패키지를 최신 버전으로 갱신하는 업데이트가 진행된다.
 
패키지 매니저를 이용하여 패키지 리스트를 갱신한다. (위의 업데이트가 잘 이루어지면 이 단계는 건너뛰어도 된다.)
1. 시작 메뉴에서 {{{모든 프로그램 -> MiKTeX 2.9 -> Maintenance (Admin) -> Package Manager (Admin)}}} 을 실행하여 패키지매니저를 연다.
1. 메뉴의 "Repository" 아래 "Change Package Repository"를 선택하여 Korea, KTUG으로 저장소 위치를 맞추면 패키지 리스트가 갱신된다.
* attachment:capture_miktex_05.png
* attachment:capture_miktex_06.png




MiKTeX의 설치에 대해서는 MiKTeX 페이지를 참조.

이 페이지에서 논의되고 있던 "MiKTeX에서 한글 사용상의 여러 문제"들은 2022년 현재 모두 해결되었다. 따라서 해당 내용을 삭제한다. 어떤 문제점들이 지적되고 있었는지는 이 문서의 r1.31 이전 버전을 참고하라.

MiKTeX을 사용할 때의 유일한 단점은 KTUG 사설저장소를 활용할 수 없다는 것이다. 이에 KTUG private repository를 사용하는 방법을 설명한다.

KTUG 사설저장소 패키지의 활용

제3자 기여 방식으로 이 문제를 해결할 수 있다.

필요성

  • 영어 문서만 작성하거나 일반적인 상황에서는 설치할 필요 없다.
  • EUC-KR 인코딩의 한글 문서를 지원하는 kotex-euc가 필요하다면 이 패키지를 설치하여야 한다.
  • KTUG에서의 토론 중에 등장하는 샘플 파일을 컴파일하기 위하여 필요할 때가 있다.
  • 몇 가지 요긴한 패키지를 활용하는 것이 가능하다.

적용 순서

  1. 압축 파일을 다운로드한다. 2024-01-18 외부링크 (약 190M)
  2. 다운로드한 파일을 적당한 곳에 압축을 푼다. 권장하는 위치는 c:\usr을 만들고 이곳에 가져다둔 다음 여기서 해동하는 것이다. 이렇게 하면 c:\usr\texmf-kpr 폴더 아래에 압축이 풀린다.
  3. cmd 또는 Terminal을 열고 다음 명령을 실행한다. (> 기호는 프롬프트를 의미하므로 직접 써넣는 것이 아니다. 압축을 푼 위치는 각자의 사정에 맞게 하라. 만약 빈 칸이 있는 위치에 압축을 풀었다면 따옴표로 감싸준다.)
    > initexmf --register-root=C:\usr\texmf-kpr
    > initexmf -u
    
  4. updmap 설정 파일 편집 (중요): 커맨드 창에서 다음 명령을 실행한다.
    > initexmf --edit-config-file updmap
    
  5. 그러면 Notepad가 열리면서 주석문 한 줄 있는 상태가 될 것이다.여기에 다음 내용을 적어넣고 저장한다.
    Map unfonts-base.map
    Map unfonts-other.map
    Map nnmbrfonts.map
    Map kotex-midkor.map
    
    6 저장 후에 다음 명령을 실행한다.
    > updmap
    

폰트

  • c:\usr\texmf-kpr\fonts\truetype 아래에 두 종류의 트루타입 폰트가 있다. 함초롬 LVT와 나눔 트루타입이다.
  • 해당 디렉터리로 들어가서 윈도우즈에 설치한다.

komkindex arara rule

  • arara에서 komkindex를 지시하기 위해서는 다음 절차가 필요하다.
    1. c:\usr\texmf-kpr\scripts\arara\rules 폴더에 있는 arara-rule-komkindex.yaml 파일을 확인한다.
    2. MiKTeX이 패키지를 설치하는 위치를 확인한다. winget으로 설치하였거나 인스톨러로 설치할 때, Installation Scope 단계에서 only for me로 설치(default)하였다면 다음 위치를 확인하라.
      • C:\Users\<username>\AppData\Local\Programs\MiKTeX\scripts\arara\rules
    3. 만약 인스톨러 설치 단계에서 for anyone을 선택하여 설치하였다면
    4. (1)에서 확인한 arara-rule-komkindex.yaml 파일을 (2)의 위치로 복사한다.
    5. 명령행을 열고 initexmf -u를 한번 실행한다.
    6. 만약 MiKTeX Console이 뭔가 불평하면 로그아웃하였다가 로그인한다.
  • 이후 다음과 같은 문법으로 사용할 수 있다.
    % arara: komkindex: { koreanfirst: yes, style: kotex }