페이지 번호 없이 항목 수준에서 색인에 항목을 추가하는 방법은 무엇입니까?

페이지 번호 없이 항목 수준에서 색인에 항목을 추가하는 방법은 무엇입니까?

내 색인에서 특정 항목을 그룹 항목 이름으로 그룹화하고 싶습니다. 이미 사용 가능한 세 가지 수준(항목, 하위 항목, 하위 항목)을 사용하고 있으므로 페이지 번호 없이 항목을 만들려고 했습니다. 아래 예에서 "Weird Languages" 뒤에는 페이지 번호가 와서는 안 됩니다. 왜냐하면 이는 다음에 나오는 수업 제목으로 사용되기 때문입니다.

 \documentclass[12pt,twoside,a4paper,openright]{book}

 \usepackage{xunicode}
 \usepackage{imakeidx} 
 \makeindex[name=texts,title=Texts,columns=1,options=-s mystyle -c -l] 
 \begin{document}

 \index[texts]{Script@\string\textbf{Weird Languages}}

 3.28\index[texts]{Script!Aramaic!3.28}
 5.1\index[texts]{Script!Greek!5.1}
 8.1\index[texts]{Script!Demotic!8.1}

 \printindex[texts]

 \end{document}

지금까지의 결과는 다음과 같습니다.

PDF 출력

개별 항목의 페이지 번호를 어떻게 억제합니까(여기서는 "이상한 언어"), 또는 다른 항목의 페이지 번호를 정상적으로 유지하면서 페이지 번호 없이 항목을 추가하려면 어떻게 합니까?

답변1

여기 내가 사용했을 때 작동하는 해킹이 있습니다.

서문에 다음 정의를 추가합니다.

\newcommand{\idxnopage}[1]{{}}
\providecommand{\gobble}[1]{{}}
\newcommand{\idxsechead}[1]{\textbf{#1}\gobble}

적절한 정렬 인수와 텍스트를 삽입하여 다음과 같이 사용하십시오.

\index{<sort argument>@\idxsechead{<header text>} |idxnopage}

나는 \idxnopage. (어쩌면 david나 egreg가 이 문제를 개선할 수 있을 것입니다.)

편집하다:여기에 위에서 설명한 출력을 생성하는 작은 예가 있습니다. 첫 번째 라텍스 실행으로 생성된 파일 makeindex에서 실행 .idx한 다음 .tex라텍스를 통해 파일을 다시 처리하여 실제로 출력에 인덱스를 포함시키는 것이 중요합니다 .

\documentclass{article}
\usepackage{makeidx}
\newcommand{\idxnopage}[1]{{}}
\providecommand{\gobble}[1]{{}}
\newcommand{\idxsechead}[1]{\textbf{#1}\gobble}
\makeindex

\begin{document}
Here is some text\index{some text} that we want indexed.

We also want a ``header'' in the index.
\index{00@\idxsechead{Header} |idxnopage}
\printindex
\end{document}

답변2

단지 개념 증명을 위해서입니다. .ind위에 제공된 예제 파일에서 생성된 파일을 사용하면 다음과 같은 결과를 얻을 수 있습니다.

\begin{theindex}

  \item Script
    \subitem Aramaic
      \subsubitem 3.28, 1
    \subitem Demotic
      \subsubitem 8.1, 1
    \subitem Greek
      \subsubitem 5.1, 1
  \item \string, \textbf{Weird Languages}{1}

\end{theindex}

다음과 같이 변경하면:

\begin{theindex}

  \item \textbf{Weird Languages}
  \item Script
    \subitem Aramaic
      \subsubitem 3.28, 1
    \subitem Demotic
      \subsubitem 8.1, 1
    \subitem Greek
      \subsubitem 5.1, 1

\end{theindex}

에 대한 옵션을 xelatex사용하여 한 번 더 실행하면 'noautomaticimakeidx이상한 언어'는 '스크립트' 위에 있고 동일한 수준에 있지만 페이지 참조는 없습니다. 일회성 편집의 경우 매우 간단합니다.

관련 정보