我需要帮助诊断 WinEdt+MikTeX 中以下不必要的斯堪的纳维亚字母处理
系统:Windows 7,WinEdt 7.0,MikTeX 2.9
问题:斯堪的纳维亚字母 ä,Ä,ö,Ö 在最终产品中无法正确显示。
真正令人困惑的是:我正在处理一个多文件项目(每个文件一个章节 + 一个主文件)。第一章到第三章输出与输入匹配,但在处理第四章时,斯堪的纳维亚字母被转换为某种神秘的东西。
这是我的主文件的标题
\documentclass{report}[12pt]
\usepackage{latexsym,epsf,amsthm}
\usepackage{lmodern}
\usepackage[finnish]{babel}
\usepackage[T1]{fontenc}
\usepackage[dvips]{graphicx}
\usepackage{float}
\usepackage{amsmath}
\usepackage{amssymb}
%\usepackage[utf8]{inputenc}
\usepackage{color}
\usepackage{psfrag}
\usepackage{hyperref}
\usepackage{animate}
你看,我注释掉了可能很关键的一行\usepackage[utf8]{inputenc}
。这是在相关问题中提出的这里,并包含它解决了昨天另一篇文档的类似问题。现在,我为什么在这里注释掉它?以下是发生的事情:
- 如果没有 usepackage 命令,我就会得到上面描述的行为
- 包含它后,我收到类似以下错误消息
包 inputenc 错误:Unicode 字符 \u8:äll 未设置为用于 LaTeX。
这是在处理单词时发生的塔拉。
但另一份文件带有标题
\documentclass{report}[12pt]
\usepackage[utf8]{inputenc}
\usepackage{latexsym,epsf,amsthm}
\usepackage[finnish]{babel}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage[dvips]{graphicx}
\usepackage{float}
\usepackage{psfrag}
\usepackage{hyperref}
包含 utf8 包的这一行是绝对必要的。保留它,scandic 字母就可以正确处理,删除它会导致出现与我在上面第四章中遇到的类似错误字符。
我尝试过的事情:
- 使用 WinEdt 的文档设置和 CP 转换器设置。这可能会有所帮助,如果我知道我需要将选项设置为什么。自动检测至少偶尔会失败。将所有内容设置为 UTF-8 也是如此。
- 这样玩弄看似合理的选择现在给了我第一行的错误消息:
未定义控制序列 \ documentclass { report } [ 1 2 pt ]
我向上帝发誓——第 1 行在源窗口中看起来很正常!
我的理论:
- 一些问题的根本原因可能是我最初将主文件复制/粘贴到较旧的笔记本电脑(WinEdt 4 和 Windows XP)上。一位同事建议 WinEdt 自动处理来自较旧系统的文件,因为它们可能具有不同的字符集。
- 要解决这个问题,我可能需要弄清楚我的笔记本电脑当前使用的字符集是什么。我需要这方面的帮助,因为这不再是 MS-DOS。
有没有地方可以给新手解释一下这里发生了什么?如果我知道要查找哪些流行语,我可以研究在线帮助。如果我在打开相关项目的情况下在 WinEdt IDE 中创建未来章节的文件,这会对我将来有帮助吗?
答案1
我猜想编码一定是ANSI
(Windows 1252)。我建议你从WinEdt.org 宏页面 ANSI2UTF8
转换您的文件(当然,先进行备份)。
此外,您应该更新到 WinEdt 10.1,它比 WinEdt 7 具有更多的功能。