KTUGFaq

KTUG FAQ

로그인:
비밀번호:
가입
You will soon meet a person who will play an important role in your life.
FrontPage › MakeIndex
MakeIndex 찾아보기(색인) 만들기

목차

1 찾아보기(색인) 만들기 개요
1.1 LaTeX 문서 작성
1.2 색인 파일 만들기
1.3 한국어 문서의 경우
2 makeidx 패키지
2.1 \index 명령어 사용법
2.2 한국어 문서의 경우
3 makeindex 또는 komkindex 프로그램
4 texindy 프로그램
5 theindex 환경
6 활용 팁
6.1 multind 패키지
6.2 index 패키지
6.3 makeindex의 한글화. 정렬문제.
6.4 강조색인과 하이퍼링크
7 Glossary(용어집)와 Index

1 찾아보기(색인) 만들기 개요

찾아보기를 만들려면 makeidx 패키지와 makeindex 프로그램을 사용한다. 한국어 문서의 경우에는 makeindex 대신에 한국어 텍 ko.TeX에서 제공되는 komkindex를 사용한다.

1.1 LaTeX 문서 작성

  1. preamble에서 makeidx 패키지를 로드하고 \makeindex 명령을 준다.
  2. 본문에서 색인어가 나타나는 자리에 \index 명령을 이용해서 색인에 포함되어야 할 단어를 지정한다.
  3. 찾아보기(색인)의 내용이 출력될 자리에 \printindex 명령을 준다.

간단한 예제:
% <preamble>
\usepackage{makeidx}
\makeindex

% <document>
다음과 같이 \index{명령}명령어를 지정하면
....
\printindex

1.2 색인 파일 만들기

색인을 만들려면 LaTeX 컴파일 시에 `makeindex 명령을 명령행에서 한 번 실행한 다음 latex을 다시 실행하여야 한다. 즉,
#> latex foo
#> makeindex foo
#> latex foo
순으로 컴파일하여야 한다. 위의 예에서는 index{명령}에 의해 명령이라는 단어가 색인에 추가된다. 명령어 \printindex 는 출력 파일(dvi, pdf 등)에서 색인이 나타나기를 원하는 곳에 둔다. 보통 \end{document} 바로 앞에 둔다.

1.3 한국어 문서의 경우

한국어 텍 ko.TeX을 사용하여 한글이 포함된 문서를 작성하였을 경우에는 별도로 제공되는 색인 생성 스크립트를 이용한다.

1. ko.TeX/uft 문서의 처리 예 (옵션은 필요에 따라):
#> latex foo
#> komkindex -s kotex foo
#> latex foo

2. ko.TeX/euc 문서의 처리 예 (옵션은 필요에 따라):
#> latex foo
#> komkindex -euc -s hind foo
#> latex foo
또는
#> latex foo
#> hmakeindex -s hind foo
#> latex foo

작업 과정을 자동화하기 위하여 texi2dvi를 사용하는 경우[1] 주의해야 할 점은 이 자동화의 결과가 바람직하지 않은 경우도 있다는 것이다. 특별한 index style(.ist라는 확장명을 가짐)을 지정하도록 요구하는 저널도 있다. (KTUGOperate:15128참조)

/!\ 아래 내용은 ko.TeX이 나오기 이전의 패키지들을 사용하는 경우에 해당함.

  1. HLaTeX에서 실행 프로그램은 hmakeindex이고 한글 자모별 분류를 만들기 위해서 hind.ist를 지정해주어야 한다. 그냥 makeindex를 스타일 지정없이 실행하는 것(TeXify하면 이렇게 된다)이 가져오는 한글 분류의 오류를 수정하려면 hmakeindex를 실행하는 것이 좋다.
    # hmakeindex -s hind.ist foo
    
  2. Hangul-ucs에서는 실행 프로그램 명칭이 makeindex-dhucs이다. 그냥 makeindex만을 실행해서는 원치 않는 결과를 얻는다. 또한 HLaTeX 의 hind에 해당하는 ist 명칭이 dhucs.ist이다.
    # makeindex-dhucs -s dhucs foo
    


원칙적으로 한글 TeX 환경에서는 makeindex를 실행하지 않는다. 그러므로 texi2dvi 또는 TeXify를 실행하는 것은 그다지 바람직하지 않다 (적어도 한글 TeX 환경에서는). 적어도 고품위 문서를 만들 의사가 있다면 한글 작업의 경우 TeXify 단추를 누르지 않는 것이 좋다.

----

2 makeidx 패키지

2.1 \index 명령어 사용법

\index 명령은 본문 중에 색인어가 가리키는 내용이 나오는 곳에서 사용한다. 가장 단순하게는 다음과 같이 색인어만 명시해 주면 찾아보기(색인) 목록에 해당 색인어와 페이지가 나타난다.

  • \index{동물}
  • \index{식물}

어떤 색인어에 대해서 다른 색인어를 참조하도록 하려면 다음과 같이 seeseealso를 사용하면 된다.

  • \index{짐승|see{동물}}
  • \index{감자|seealso{고구마}}

이 파이프(|) 표현은 여러가지 용도로 사용될 수 있다.

  • \index{포유류|textbf} : 해당 페이지가 굵은 글꼴로 나타남

색인어 목록을 계층적으로 나타내려고 할 때는 다음과 같이 느낌표(!)를 이용할 수 있다.

  • \index{동물!포유류!고양이}


색인어가 찾아보기(색인) 목록에 실제로 나타나는 형태를 바꾸기 위해서 골뱅이(@) 기호를 이용할 수 있다. 예를 들어, 특정 단어들을 굵은 글꼴로 출력하려고 할 때 다음과 같이 쓸 수 있다.

  • \index{영장목@\textbf{영장목}}

만약 단순히 \index{\textbf{영장목}}이라고 해주면 원하는 굵은 글꼴이 나타나기는 하지만 정렬할 때 \textbf... 이 기준이 되므로 엉뚱한 곳에 나타나게 된다. 이 문제 때문에 골뱅이(@) 기호를 사용하여 앞에는 정렬에 사용될 문자열을 쓰고 뒤에는 실제로 목록에 출력될 형태를 쓰는 것이다.

이것은 영문자로 된 단어를 한국어 발음에 맞추어 정렬하려고 할 때도 이용할 수 있다. 예를 들어, 다음과 같이 하면,

찾아보기(색인) 목록에 \LaTeX이 출력되면서 정렬할 때는 "라텍"으로 처리된다.




코드 입력 예: CTAN:macros/latex/contrib/beamer/doc/beameruserguide.tex에서 가져 왔음 <- 이 파일을 한번 컴파일하여 보려면 KTUGOperate:17090를 참조
\index{Themes|see{Presentation themes}}
\index{Templates|see{Beamer templates}}
\index{Colors|see{Beamer colors}}
\index{Fonts|see{Beamer fonts}}
\index{Beamer elements|see{Beamer templates, colors, and fonts}}
\index{Elements|see{Beamer templates, colors, and fonts}}
\index{Template inserts|see{Inserts}}


2.2 한국어 문서의 경우

한국어 문서를 작성하면서 index에 see 또는 seealso를 사용하는 경우 그 형태를 바꾸고 싶으면 프리앰블에 \see와 \seealso를 재정의해 주면 된다.

예를 들어 다음과 같은 식으로 정해주면 된다.
\usepackage[normalem]{ulem}
\renewcommand\see[2]{%
  \textsf{\footnotesize\uline{#1}\를 참조}, \hyperpage{#2}%
}
\renewcommand\seealso[2]{%
  \textsf{\footnotesize\uline{#1}도 함께 참조}, \hyperpage{#2}%
}

참조: KTUGOperate:22791

3 makeindex 또는 komkindex 프로그램

makeindex는 색인 항목을 정렬하고 출력될 형태를 만들어주는 프로그램이다. 한국어 문서의 경우에는 komkindex를 사용한다.

4 texindy 프로그램

영어 이외의 언어에서 makeindex 대신 쓸 수 있는 색인 작성 유틸리티이다. TeX Live 2009에 포함되어 있다. http://xindy.sourceforge.net/ 참조.

#> texindy -L french foo.idx
#> texindy -L german-din foo.idx
#> texindy -L german-duden foo.idx

5 theindex 환경


6 활용 팁

6.1 multind 패키지

예컨대 저자명 색인과 사항 등 둘 이상의 색인(찾아보기)을 만들 때 사용한다. \index{IndexCategory}{IndexKey}와 같이 본문에서 지정해야 하며, makeindex를 각각의 Index Category에 대하여 실행해야 한다.

from http://www.tex.ac.uk/cgi-bin/texfaq2html?label=multind
\usepackage{multind}
\makeindex{general}
\makeindex{authors}
...
\index{authors}{Robin Fairbairns}
...
\index{general}{FAQs}
...
\printindex{general}{General index}
\printindex{authors}{Author index}

#> makeindex general
#> makeindex authors

6.2 index 패키지


6.3 makeindex의 한글화. 정렬문제.


6.4 강조색인과 하이퍼링크

KTUGOperate:11713 Q. 강조 색인을 위하여 \newcommand\termdef[1]{\index{#1|textbf}#1}과 같은 명령을 정의했습니다. 그런데 termdef로 만든 색인은 하이퍼링크가 되지 않습니다.
A.
\newcommand*\MyIdxBf[1]{%
	\textbf{\hyperpage{#1}}%
}
\newcommand\termdef[1]{%
	\index{#1|MyIdxBf}#1%
}


7 Glossary(용어집)와 Index


^
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2009-12-07 17:27:52
Processing time 0.0676 sec