![! 程序包 inputenc 错误: Unicode 字符 ́ (U+301)(inputenc)](https://linux22.com/image/379921/!%20%E7%A8%8B%E5%BA%8F%E5%8C%85%20inputenc%20%E9%94%99%E8%AF%AF%3A%20Unicode%20%E5%AD%97%E7%AC%A6%20%CC%81%20(U%2B301)(inputenc).png)
在编译我的 .tex 文档期间,我收到此错误消息。
line 234 - ! Package inputenc Error: Unicode char ́ (U+301)(inputenc) not set up for use with LaTeX.See the inputenc package documentation for explanation.Type H <return> for immediate help.... \cleardoublepage
我现在正在写论文,我对这个错误信息感到很困惑,因为它似乎与一个特殊字符有关,而我在手稿中没有用到这个字符。到目前为止,解决办法是重新加载旧版本的手稿……经过几个小时的工作和几次成功编译后,这个错误突然再次出现。我不明白为什么,因为我只写了一些文字,添加了一些图表,仅此而已……
有什么建议吗?我该如何解决这个问题?我不知道,我应该在这里发布什么样的 MWE :( 这个评论“line234”指的是哪里。第 234 行是我手稿中的普通文本……
答案1
如果你复制/粘贴一些源代码,可能会发生é
被编码为
U+0065 U+0301
在 Unicode 感知环境中,它按预期呈现。不幸的pdflatex
是不是Unicode 识别,无法处理组合字符,这些字符被放置在后他们所指的角色。
唯一能给出正确结果的方法是将组合更改为非组合字符。
这样做\DeclareUnicodeCharacter{0301}{\'{e}}
是错误的。以下是一个例子:
\documentclass{article}
\DeclareUnicodeCharacter{0301}{\'{e}}
\begin{document}
é % non composed character U+00E9
é % composed character U+0065 U+0301
ú % composed character U+0075 U+0301
\end{document}
您正在删除错误消息,但输出完全关闭。
笔记从上面复制不会显示预组合的字符,因为我的操作系统或这个网站都进行了规范化。
答案2
我这样做:
\DeclareUnicodeCharacter{0301}{*************************************}
并查看 char 生成此内容的 pdf 并将其删除/更正。
答案3
我遇到了非常类似的问题:
Error: Unicode char ́ (U+0301)(inputenc) not set up for use with LaTeX...;
问题似乎不在我的正文中,而是在我的.bib
文件中。我的汇编中有一个引用,指出我犯了错误,在检查文件中的这个引用后.bib
,我发现它有几个带重音的元音在花括号中。我将花括号中的元音改为相应的“正常重音”元音(我的意思是,用我的键盘将元音带重音),问题就解决了。
答案4
要么在 LuaLaTeX/XeLaTeX 中编译,要么将源文件规范化为 NFC 格式。PDFTeX 在组合字符时会遇到困难,但重音字符很可能具有可以处理的规范预组合形式inputenc
。
您可以使用iconv -f utf8-mac -t utf8
或这是我编写的一个小程序就这样。