Splitidx가 생성한 인덱스에 독일어 움라우트를 전송하는 방법은 무엇입니까?

Splitidx가 생성한 인덱스에 독일어 움라우트를 전송하는 방법은 무엇입니까?

\sindex[p]{Böll, Heinrich}현재 인덱스 항목(예: )의 독일어 움라우트를 다음에서 생성된 인덱스로 전송하려고 합니다.splitidx. 지금은 항목을 올바른 방식으로 정렬하기 위해 움라우트를 \def Ä{"A}등으로 재정의합니다(아래 참조).

하지만 이제 TeXnicCenter에게 움라우트를 정렬한 후 올바르게 인쇄하도록 지시하는 명령은 무엇입니까? 현재 항목은 로 표시되고 Boll, Heinrich로 표시되지 않습니다 Böll, Heinrich. 의욕은 있지만 여전히 무능한 LaTeX 사용자를 지원할 수 있는 사람이 있습니까?

\documentclass{scrbook}
%...

\usepackage[ngerman]{betababel}
\usepackage[ansinew]{inputenc}

\shorthandon{"}

\AtBeginDocument{%
  \def Ä{"A}%
  \def Ö{"O}%
  \def Ü{"U}%
  \def ä{"a}%
  \def ö{"o}%
  \def ü{"u}%
  \def ß{"s}%
    \def \~n{"n}%
}
\shorthandoff{"} 

\usepackage[makeindex,split,idxcommands]{splitidx}
\newindex[Personenverzeichnis]{p}
\newindex[Sachregister]{s}

\frontmatter
%...
\mainmatter

Der Schriftsteller Heinrich Böll\sindex[p]{Böll, Heinrich} gilt zu unrecht als der \ldots

\appendix 
\printindex*
\end{document}

답변1

인코딩으로는 볼 수 없습니다 utf8.

\documentclass{scrbook}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}

\usepackage[makeindex]{splitidx}
\newindex[Personenverzeichnis]{p}
\newindex[Sachregister]{s}

\begin{document}
Der\sindex[p]{Äro, Willi} Schriftsteller Heinrich Böll\sindex[p]{Böll, Heinrich} 
gilt\sindex[p]{Boa, Heinz} zu unrecht als der \ldots
\sindex[p]{Boll, Willi}\sindex[s]{Æro, Heinrich}\sindex[s]{Aro, Will}\sindex[s]{Äro, Ernst}
\appendix 

\printsubindex*

\end{document}

여기에 이미지 설명을 입력하세요

난 달린다

pdflatex <file>
splitindex <file>
pdflatex  <file>

답변2

아마도 정확한 대답은 아니지만 문제가 해결될 것입니다. makeindex의 내장 기능을 사용하여 다음 형식으로 정렬 항목과 표시 항목을 가질 수 있습니다.

\sindex[p]{boll heinrich@Böll, Heinrich}

boll heinrich정렬 및 인쇄에 사용 됩니다 Böll, Heinrich. 이렇게 하면 원하는 경우 서식을 추가할 수도 있습니다.

\sindex[p]{boll heinrich@\textsc{Böll, Heinrich}}

예를 들어. 그리고 더 이상 움라우트를 재정의할 필요가 없을 것이라고 생각합니다.

관련 정보