1

I am trying to create my custom index style but I receive an error if the index entry starts with an umlaut:

This is makeindex, version 2.15 [TeX Live 2020/W32TeX] (kpathsea + Thai support). Scanning style file ./index.ist...........done (11 attributes redefined, 0 ignored). Scanning input file main.idx....done (1 entries accepted, 0 rejected). Sorting entries...done (0 comparisons). Generating output file main.ind....done (5 lines written, 0 warnings). Output written in main.ind. Transcript written in main.ilg.
(./main.ind
! String contains an invalid utf-8 sequence.
l.2 
  Ã^^@
[2]) (./main.aux
))

How can I make it possible to use umlauts? I know that \index{\"Uberanpassung} works but the category will be "Symbol" but this is not a symbol.

MWE: Index style:

%- Listing -%
item_01 "\n \\subitem$\\bullet$ "
item_1 "\n \\subitem$\\bullet$ "
item_12 "\n \\subsubitem - "
item_2 "\n \\subsubitem - "

%- Delimiter -% delim_0 "\dotfill" delim_1 "\dotfill" delim_2 "\dotfill" % Seperator between the start and end of a page area delim_r "--"

%- Suffix -% % Suffix for a range of 2 pages suffix_2p "\,f." % Suffix for a range of 3 pages suffix_3p "\,ff."

%- Headings -% headings_flag 1

% Fancy heading heading_prefix " \vspace{\fill}\vspace{-\fill}\n \begin{tikzpicture} % Title header \node[ drop shadow={opacity=.5, shadow xshift=0pt}, fill=accentcolor, minimum height=2.25em, rounded rectangle, rounded rectangle west arc=0pt, text=white ] (text) {\large\noindent\bfseries " heading_suffix "};

% Gray bar
\\draw
    ([xshift=1.25em]text.north east)
    [color=gray, drop shadow={opacity=.5, shadow xshift=2pt}, fill=gray]
    coordinate (a) [bend right=0] to ([xshift=\\linewidth] text.north west)
    coordinate (b) [bend right] to +(0, -2.25em)
    coordinate (c) [bend right] to (a |- c) [bend right=60] to cycle;

\end{tikzpicture} \nopagebreak\n "

\documentclass{report}

\usepackage{imakeidx}
\usepackage[english, main = ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage{sanitize-umlaut}
\usepackage[babel]{csquotes}
\usepackage{tikz}
\usepackage{xpatch}

\AtBeginDocument{\xpatchcmd\theindex{\begin{multicols}}{\begin{multicols*}}{}{\fail}}
\AtBeginDocument{\xpatchcmd\endtheindex{\end{multicols}}{\end{multicols*}}{}{\fail}}
\usetikzlibrary{shadows.blur, shapes}

\title{Title}

\makeindex[
    columns=3,
    intoc,
    options=-s index
    ]

\begin{document}
\maketitle

\tableofcontents

Überanpassung\index{Überanpassung} % Does not work
Unteranpassung\index{Unteranpassung} % Works fine
Kanäle\index{Kanäle} % Works fine

\printindex
\end{document}

As you can see here, the entry Überanpassung is marked as symbols.

Example output

Nyanyan
  • 91
  • try \index{\"{U}beranpassung}. – Oni May 03 '21 at 13:22
  • The category header is still symbols. – Nyanyan May 03 '21 at 13:43
  • This seems relevant: https://tex.stackexchange.com/questions/199211/differences-between-xindy-and-makeindex. "Differences between “xindy” and “makeindex”" From the accepted answer: "xindy is far more flexible than makeindex. Unlike makeindex, xindy supports UTF8, can sort according to different language rules and can support enumeration systems outside of the European and Roman numbering systems." – Steven B. Segletes May 03 '21 at 14:02
  • 1
    German is european. – Oni May 03 '21 at 14:09
  • @Steven B. Segletes Thanks for the information! That solves only the problem with umlauts by passing the option xindy to imakeidx but the category is now "A" and my custom style is missing, – Nyanyan May 03 '21 at 18:31

0 Answers0