修复 latexbanglas.sty

修复 latexbanglas.sty

我正在尝试使用 latex workshop 在 Visual Studio 中使用 xelatex 编译 latex 文档。但我收到了错误:

main.tex:19: You can't use `macro parameter character #' after \the.
\bengalinumeral ...alinumber \expandafter {\the ##
                                                  1}
l.19 \end{document}

] (./main.aux)

这是我的 tex 文档:

% !TEX program = xelatex

\documentclass[a4paper,12pt]{book}

\usepackage[banglamainfont=Kalpurush,
banglattfont=Siyam Rupali]{latexbangla}

\begin{document}

    \title{Test}
    \author{Test}
    \date{Test}
    \maketitle

    \tableofcontents

    \chapter{asdf}

\end{document}

我认为乳胶孟加拉导致问题。禁用 changecounternumbering\usepackage[banglamainfont=Kalpurush, banglattfont=Siyam Rupali, changecounternumbering=0]{latexbangla}编译成 pdf。但自动编号功能已损坏。

特克斯:

% !TEX program = xelatex

\documentclass[a4paper,12pt]{book}

\usepackage[banglamainfont=Kalpurush,
banglattfont=Siyam Rupali,
changecounternumbering=0]{latexbangla}

\begin{document}

    \title{টেস্ট}
    \author{\today ১ ২ ৩ ৪ 1 2 3 4}
    \maketitle

\end{document}

输出:

破数

答案1

啊!在我输入这个答案时,修复答案已经发布了。


如果我设置了 polyglossia 语言(使用\setdefaultlanguage),polyglossia 会根据需要更改日期显示。

孟加拉语

我用来\bengalidigits{}将阿拉伯数字转换为孟加拉语;否则直接输入就可以了(因为字体)。

平均能量损失

\documentclass[a4paper,12pt]{book}

\usepackage[banglamainfont=Kalpurush,
banglattfont=Siyam Rupali,
%changecounternumbering=0
]{latexbangla}
\setdefaultlanguage[numerals=Bengali,
changecounternumbering=true]{bengali}

\begin{document}

    \title{টেস্ট}
    \author{\today ১ ২ ৩ ৪ 1 2 3 4\\০১২৩৪৫৬৭৮৯ \bengalidigits{123 456 789}}
    \maketitle

\today

০১২৩৪৫৬৭৮৯ \bengalidigits{123 456 789}

\end{document}

章节

答案2

有一个漏洞在 polyglossia 中,后来修复了这个问题。但是 LaTeXbangla 没有使用较新版本的 polyglossia 进行更新。如果您看到错误,则意味着您的 polyglossia 包未更新。更新您的包然后修复 LaTeXbangla。LaTeXbangla 导致数字中断。

修复 latexbanglas.sty

查找latexbangla.sty。您将在 Linux 中找到latexbangla.sty/usr/share/texmf-dist/tex/latex/latexbangla/我不知道 Windows 或 Mac 的情况。

line 139从此改变

\setmainlanguage[changecounternumbering=true]{bengali}

对此

\setmainlanguage[numerals=Bengali, changecounternumbering=true]{bengali}

这应该可以解决数字断裂的问题。


如何在 Arch Linux 中更新 polyglossia

现在,如果你Arch Linux像我一样使用,texlive存储库中不会更新。你可以选择从拖船或者直接用 GitHub 上的新版本替换 polyglossia。但是 GitHub 上的最新版本也显示了一些不同的错误。我的朋友提供了一个 polyglossia 的工作版本(下载链接)。

步骤1。下载并解压。

第2步。在其中找到 tex 文件夹,并用新文件替换系统多语种文件。在 Manjaro Linux 中,您可以通过以下方式执行此操作(我不知道其他操作系统将其文件存储在哪里)

sudo cp -r -v path_to_tex_folder /usr/share/texmf-dist/tex/latex/polyglossia/

步骤3.现在运行sudo texhash来更新tex。

现在,它运行良好。


我将在 github 上的 polyglossia 和 LaTeXbangla 上提出有关新错误的问题。

相关内容