Internationalization 乳胶中没有挪威字符

Internationalization 乳胶中没有挪威字符,internationalization,latex,document,texinfo,Internationalization,Latex,Document,Texinfo,我用LaTeX格式将一份文档从英语翻译成挪威语,在使用挪威语特殊字符时,我使用 \usepackage[utf8x]{inputenc} 要尝试以PostScript/PDF/DVI格式显示挪威(斯堪的纳维亚)特殊字符,请执行以下操作: Package utf8x Error: MalformedUTF-8sequence. 因此,虽然这不起作用,但我尝试了另一种可能的解决方案: \usepackage{ucs} \usepackage[norsk]babel 当我试图将其保存在Emac

我用LaTeX格式将一份文档从英语翻译成挪威语,在使用挪威语特殊字符时,我使用

\usepackage[utf8x]{inputenc}
要尝试以PostScript/PDF/DVI格式显示挪威(斯堪的纳维亚)特殊字符,请执行以下操作:

 Package utf8x Error: MalformedUTF-8sequence.
因此,虽然这不起作用,但我尝试了另一种可能的解决方案:

\usepackage{ucs}
\usepackage[norsk]babel
当我试图将其保存在Emacs中时,我得到了以下消息:

These default coding systems were tried to encode text
in the buffer `lol.tex':
(utf-8-unix (905 . 4194277) (916 . 4194245) (945 . 4194278) (950
. 4194277) (954 . 4194296) (990 . 4194277) (1010 . 4194277) (1013
. 4194278) (1051 . 4194277) (1078 . 4194296) (1105 . 4194296))
However, each of them encountered characters it couldn't encode:
utf-8-unix cannot encode these: \345 \305 \346 \345 \370 \345 \345 \346 \345 \370 ...
由于Emacs,我可以查看这些字符的属性,第一个字符告诉我:

character: \345 (4194277, #o17777745, #x3fffe5)
preferred charset: eight-bit (Raw bytes 128-255)
code point: 0xE5
syntax: w    which means: word
buffer code: #xE5
file code: not encodable by coding system utf-8-unix
display: not encodable for terminal
这并不能告诉我太多。当我尝试用texi2dvi--dvipdf filename.text构建这个文件时,我得到了一个非常好的PDF文件,没有特殊的挪威字符

当我准备保存Emacs时,也请询问我: “选择编码系统(默认原始文本):” 我输入utf-8来选择它的编码系统。我还尝试选择默认的原始文本,看看是否得到了一些不同的结果。但什么都没有

最后我试了一下 \lstset{inputeneconding=utf8x,extendedchars=\true} ... 我在谷歌搜索这个问题的解决方案时遇到了一个代码。这给了我一个错误: 未定义的控制序列

所以,基本上,我已经尝试了我能找到的每一种编码方式,但没有任何效果。由于挪威语的翻译必须在截止日期前出版,我正在拼命地努力使这项工作顺利进行

作为补充信息,我可能会补充,我后来发现我的语言环境中只有en_US.UTF-8,因此我添加了nb_NO.UTF-8和nb_NO.ISO-8859-15,并在没有任何更改的情况下运行了locale gen+重新启动


我希望我提供了足够的信息以获得帮助,所讨论的字符是æå。

显然,您的emacs很难将文件保存为UTF-8(这没有多大意义,因为它应该能够使用该编码表示所有字符)。您应该尝试使用另一个支持多种编码的编辑器将文件另存为UTF-8


当您无法以UTF-8格式保存文件时,LaTeX将无法正确读取该文件,除非您将当前文件编码指定为
inpuntec
package参数。例如,您可能希望尝试按emacs中的原样保存文件,但指定
\usepackage[latin1]{inputenc}
,如果emacs正在使用*iso-8859-**系列中的某个内容写入文件,则应使用该方法。

我通过设置保存文件的编码系统解决了此错误:


事实上,你的文件名为
lol.tex
,这让我笑了。它确实名为what-is-fs.tex,但我对它进行了重新编码,所以我需要一个新的副本,我的想象力没有激发任何其他好的建议。太棒了!我不敢相信整件事都是Emacs。我只是将整个文件复制到gedit中,效果非常好。我想知道Emacs的问题是什么,真的太糟糕了。无论如何,谢谢你!我在emacs中得到了关于char的类似错误。从具有不同编码的文档粘贴时进行编码。我也是。我使用utf-8作为文件输入编码。
C-x C-m f utf-8-unix