首页 > 解决方案 > 输入乌尔都语文本时的新环境问题

问题描述

我正在用乌尔都语写一些文字作为问答风格。

以下是一个最小的例子

    \documentclass[12pt]{book}
\usepackage{polyglossia}
\usepackage{fontspec}

\usepackage[margin=0.5in, paperwidth=5.5in, paperheight=8.5in] {geometry}
\usepackage[T1]{fontenc}
\usepackage{graphicx,color, xcolor}
\usepackage{amsmath, amssymb, amsthm}
\usepackage{multirow}
\setcounter{secnumdepth}{5}
\setcounter{tocdepth}{5}
\usepackage{multicol}

\usepackage{parskip}


\setmainlanguage{urdu}
\setotherlanguage{english}

\parskip 0in

\setmainfont[Path=/Users/imdad/fonts/]{Jameel-Noori-Nastaleeq.ttf}

\newcounter{uques}[chapter]

\newenvironment{question}[2][سوال \stepcounter{uques} \arabic{uques}:]{\begin{trivlist}
        \item[\hskip \labelsep\bfseries \noindent #1] #2\newline \textbf{جواب:} }   {\end{trivlist}}

\begin{document}
\chapter{اردو ٹیکسٹ}    
\begin{question}{آپ کیا کام کرتے ہو؟}
    میرا چھوٹا سا کمپیوٹر اور موبائل اسسریز کا کام ہے۔
\end{question}

\end{document}

新环境运行良好,但问题编号不会自动更新。在英文文档中,它工作正常(问题编号增量自动更新)。请指导并尽可能改进乌尔都语的问答风格。

标签: latexxelatex

解决方案


问题是Jameel Noori Nastaleeq字体仅包含从 U+06F0 开始的 EXTENDED ARABIC-INDIC DIGITS,而 polyglossia 中的乌尔都语支持使用从 U+0660 开始的 ARABIC-INDIC DIGITS。这很可能是 polyglossia 中的一个错误。随着 TexLive 2016gloss-urdu.ldf包含:

\def\urdunumber#1{%
  \if@western@numerals
    \number#1%
  \else
    %%FIXME use farsidigits instead???
    \protect\arabicdigits{\number#1}%
  \fi}

这使我们能够为\urdunumber(不支持西方阿拉伯数字)建立一个固定的定义:

\documentclass[12pt]{book}
\usepackage{polyglossia}
\usepackage{fontspec}
\setmainlanguage{urdu}

% use EXTENDED ARABIC-INDIC DIGITS from U+0F60 upwards
\def\urdunumber#1{\protect\farsidigits{\number#1}}

\setmainfont{Jameel Noori Nastaleeq}
\newcounter{uques}[chapter]

\newenvironment{question}[2][سوال \stepcounter{uques} \arabic{uques}:]{\begin{trivlist}
        \item[\hskip \labelsep\bfseries \noindent #1] #2\newline \textbf{جواب:} }   {\end{trivlist}}

\begin{document}
\chapter{اردو ٹیکسٹ}    
\begin{question}{آپ کیا کام کرتے ہو؟}
    میرا چھوٹا سا کمپیوٹر اور موبائل اسسریز کا کام ہے۔
\end{question}

\begin{question}{آپ کیا کام کرتے ہو؟}
    میرا چھوٹا سا کمپیوٹر اور موبائل اسسریز کا کام ہے۔
\end{question}

\begin{question}{آپ کیا کام کرتے ہو؟}
    میرا چھوٹا سا کمپیوٹر اور موبائل اسسریز کا کام ہے۔
\end{question}

\end{document}

这给了我:

在此处输入图像描述


推荐阅读