构建此代码后:
% !TeX program = xelatex
\documentclass{report} % or some other class
\usepackage{algorithm2e}
\begin{document}
some text
\end{document}
我在日志文件中收到以下警告:
...
("C:\Program Files\MiKTeX 2.9\tex\latex\base\ifthen.sty"
Package: ifthen 2014/09/29 v1.1c Standard LaTeX ifthen package (DPC)
)
Invalid UTF-8 byte or sequence at line 1311 replaced by U+FFFD.
Invalid UTF-8 byte or sequence at line 1313 replaced by U+FFFD.
Invalid UTF-8 byte or sequence at line 1315 replaced by U+FFFD.
首先,我拥有的 ifthen.sty 文件只有 152 行。其次,我没有将其包含在我的文档中。有人遇到过类似的事情吗?
我使用Win7 64位,TexStudio 2.12.2。
答案1
它们只是令人讨厌的警告;包装上应该有
1307 \DeclareOption{turkish}{%
1308 \renewcommand{\listalgorithmcfname}{Algoritma Listesi}%
1309 \renewcommand{\algorithmcfname}{Algoritma}%
1310 \renewcommand{\algorithmautorefname}{algoritma}%
1311 \renewcommand{\algorithmcflinename}{\c{c}izgi}%
1312 \renewcommand{\algocf@typo}{}%
1313 \renewcommand{\@algocf@procname}{Prosed\"ur}%
1314 \renewcommand{\@algocf@funcname}{Fonksiyon}%
1315 \renewcommand{\procedureautorefname}{prosed\"ur}%
1316 \renewcommand{\functionautorefname}{fonksiyon}%
1317 \renewcommand{\algocf@languagechoosen}{turkish}%
1318 }%
而不是使用 Latin-1 字符表示ç
和ü
。如果土耳其用户在使用 UTF-8 输入时不手动更改这些固定的单词,他们会感到惊讶。
LuaLaTeX 用户的情况更糟,因为字符会出现问题错误而不是警告:
! String contains an invalid utf-8 sequence.
l.1311 \renewcommand{\algorithmcflinename}{
?izizgi}%
不幸的是,在读取包时没有解决方法可以避免这种情况,因此无法跳过警告/错误。
除了在作业结束时发出警告外,还有另一个错误algorithm2e
(第 1061 行的虚假错误)可能导致内存溢出。让软件包作者知道这些错误似乎毫无用处。{