Nummerierung von Umgebungen und Seiten mit dem Devanagari-Alphabet

Nummerierung von Umgebungen und Seiten mit dem Devanagari-Alphabet

Ich erstelle ein großes Dokument mit xelatex-devanagari. Die Seitenzahlen im Frontmatter sind jedoch standardmäßig römisch. Wie kann ich sie in Devanagari-benutzerdefinierte alphabetische Nummerierung ändern, wieJa, nein …oderJa, nein, nein …?

Für Aufzählungslisten ist eine ähnliche Nummerierung erforderlich. Derzeit werden auf der ersten Ebene der Aufzählung Devanagari-Ziffern angezeigt. Was ist die beste Methode, um auch auf anderen Ebenen eine Devanagari-alphabetische Nummerierung zu erreichen?

Beispielcode -

\documentclass[oneside]{book}
\usepackage{fontspec}
\setmainfont[Script=Devanagari,Mapping=devanagarinumerals]{Sanskrit 2003}

\renewcommand{\chaptername}{अध्यायः}
\renewcommand{\contentsname}{विषयसूची}

\begin{document}

\frontmatter
\tableofcontents
\chapter{भूमिका}

\mainmatter
\chapter{सङ्ग्रहः}
\begin{enumerate}
  \item प्रथमम्
  \begin{enumerate}
    \item द्वितीयम्
    \begin{enumerate}
      \item तृतीयम्
      \begin{enumerate}
        \item चतुर्थम्
      \end{enumerate}
    \end{enumerate}
  \end{enumerate}
\end{enumerate}

\end{document}

Aufzählungsdemo

Antwort1

So werden Zähler angezeigt

In LaTeX wird ein Zähler in einem von mehreren „Stilen“ angezeigt, die durch \arabic, \roman, \Roman, \alph, \Alph, und gegeben sind \fnsymbol. (SieheKapitel 13ZählerIntexdoc latex2eoder Datei mltcounts.dtxIntexdoc source2e, oderHier/Hier/Hier/Hier.) Davon \fnsymbolhandelt es sich lediglich um Symbole, die für Fußnoten verwendet werden ( *, ‡, ‡, §, ¶, ∥, **, ††, ‡‡), so dass es ausreicht, die anderen neu zu definieren.

Beispielsweise \Alphist standardmäßig definiert über \@Alph, was definiert ist als

\def\@Alph#1{%
 \ifcase#1\or A\or B\or C\or D\or E\or F\or G\or H\or I\or J\or
  K\or L\or M\or N\or O\or P\or Q\or R\or S\or T\or U\or V\or W\or X\or
   Y\or Z\else\@ctrerr\fi}

Wir können dies ändern क, ख, ग, …, um überall Devanagari-Konsonanten anstelle von römischen Ziffern oder Buchstaben des lateinischen Alphabets zu verwenden. (Vielleicht möchten Sie अ, आ, इ, ई, …für einen davon auch Devanagari-Vokale; das ist Ihre Präferenz.)

Wie Beschriftungen in Aufzählungen angezeigt werden

Die Beschriftungen für enumerateauf jeder Ebene werden durch \labelenumi, \labelenumii, \labelenumiii, und angegeben \labelenumiv. (SieheAbschnitt 8.7aufzählenin texdoc latex2eoder 54,6Auflisten und AufzählenIntexdoc source2e.)

Beispielsweise \labelenumiiist standardmäßig definiert als (\theenumii)wobei \theenumiiwiederum definiert ist als \@alph\c@enumii, weshalb Sie auf der zweiten Verschachtelungsebene in Listen Beschriftungen wie sehen (a). Sie können diese auch neu definieren, wenn Sie beispielsweise die Klammern oder Punkte an anderen Stellen haben möchten.

Etwas zusammensetzen

Hier ist Ihr Beispiel-LaTeX-Quellcode aus der Frage mit den entsprechenden Änderungen (der Teil innerhalb \makeatlettervon „to“ \makeatotherist die einzige Änderung):

\documentclass[oneside]{book}
\usepackage{fontspec}
\setmainfont[Script=Devanagari,Mapping=devanagarinumerals]{Sanskrit 2003}

\makeatletter
% Always use Devanagari consonants for alph/Alph/roman/Roman styles.
\def\devanagari@alph#1{%
 \ifcase#1\or क\or ख\or ग\or घ\or ङ\or च\or छ\or ज\or झ\or ञ\or
  ट\or ठ\or ड\or ढ\or ण\or त\or थ\or द\or ध\or न\or प\or फ\or ब\or भ\or म\or
   य\or र\or ल\or व\or श\or ष\or स\or ह\else\@ctrerr\fi}
% Imitating xgreek.sty and xepersian.sty
\let\@alph\devanagari@alph
\let\@Alph\devanagari@alph
\let\@roman\devanagari@alph
\let\@Roman\devanagari@alph

% Change appearance of enumerate at levels 2, 3, 4.
\renewcommand{\labelenumii}{\theenumii.} % Instead of: (\theenumii)
\renewcommand{\labelenumiii}{(\theenumiii)} % Instead of: \theenumiii.
\renewcommand{\theenumiii}{\@arabic\c@enumiii} % Instead of: \@roman\c@enumiii
\renewcommand{\labelenumiv}{(\theenumiv)} % Instead of: \theenumiv.
\makeatother

\renewcommand{\chaptername}{अध्यायः}
\renewcommand{\contentsname}{विषयसूची}

\begin{document}

\frontmatter
\tableofcontents
\chapter{भूमिका}

\mainmatter
\chapter{सङ्ग्रहः}
\begin{enumerate}
  \item प्रथमम्
  \begin{enumerate}
    \item द्वितीयम्
    \begin{enumerate}
      \item तृतीयम्
      \begin{enumerate}
        \item चतुर्थम्
      \end{enumerate}
    \end{enumerate}
  \end{enumerate}
\end{enumerate}

\end{document}

Wenn man dies mit ausführt, xelatexerhält man Seitenzahlen in Devanagari-Konsonanten anstelle von römischen Ziffern (für den Vorspann) und für die Aufzählung Folgendes: Umgebung mit Devanagari-Labels aufzählen

verwandte Informationen