La numeración enumera entornos y páginas con el alfabeto devanagari.

La numeración enumera entornos y páginas con el alfabeto devanagari.

Estoy creando un documento grande con xelatex-devanagari. Aún así, los números de página en la portada por defecto son la numeración romana. ¿Cómo puedo cambiarlos a numeración alfabética personalizada de Devanagari comoअ,आ...oक,ख,ग...?

Se necesita una numeración similar para las listas enumeradas. Actualmente, el primer nivel de enumeración muestra números devanagari. ¿Cuál es el mejor método para lograr la numeración alfabética devanagari también en otros niveles?

Código de muestra -

\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}

demostración de enumeración

Respuesta1

Cómo se muestran los contadores

En LaTeX, un contador se muestra en uno de varios "estilos", dados por \arabic, \roman, \Roman, \alph, \Alphy\fnsymbol . (VerCapítulo 13Contadoresentexdoc latex2e, o Archivo mltcounts.dtxentexdoc source2e, oaquí/aquí/aquí/aquí.) De estos, \fnsymbolsolo se utilizan símbolos para las notas a pie de página ( *, ‡, ‡, §, ¶, ∥, **, ††, ‡‡), por lo que basta con redefinir los demás.

Por ejemplo, por defecto \Alphse define vía \@Alphcual se define como

\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}

Podemos modificar esto para usar siempre consonantes devanagari क, ख, ग, …en todas partes, en lugar de números romanos o letras del alfabeto latino. (Es posible que también desees vocales devanagari अ, आ, इ, ई, …para una de ellas; es tu preferencia).

Cómo se muestran las etiquetas en las enumeraciones

Las etiquetas para enumeratecada nivel están dadas por \labelenumi, \labelenumii, \labelenumiiiy \labelenumiv. (Versección 8.7enumeraren texdoc latex2e, o 54,6Detallar y enumerarentexdoc source2e.)

Por ejemplo, por defecto \labelenumiise define como (\theenumii)donde \theenumiia su vez se define como \@alph\c@enumii, razón por la cual en el segundo nivel de anidamiento en listas se ven etiquetas como (a). También puede redefinirlos si (por ejemplo) desea que los paréntesis o puntos estén en diferentes lugares.

Poniendo todo junto

Aquí está su fuente LaTeX de muestra de la pregunta, con las modificaciones apropiadas (la parte dentro \makeatletterde \makeatotheres el único cambio):

\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}

Al ejecutar esto con xelatexse obtienen números de página consonantes devanagari en lugar de números romanos (para la portada) y, para la enumeración, lo siguiente: enumerar el entorno con etiquetas Devanagari

información relacionada