【发布时间】:2011-08-28 23:56:44
【问题描述】:
我使用 gnu emacs 23.3.1 在 Windows 7 64 位上创建了一个普通的文本文件。我可以使用 LinqPad 等其他程序编辑该文件(该文件恰好是一个 linqpad 脚本,扩展名为 .linq)。一切都很好,直到我将 Unicode 字符放入文件中,例如希腊字母 λ (lambda) 之类的字符。我可以在 emacs 中输入字母并正确显示。但是emacs拒绝保存文件,报如下错误
Failure in loading charset map: 8859-7
如果我在 LinqPad 中输入 λ,emacs 会读取并显示它们,但不会保存文件。
我刚刚注意到 Notepad++ 对该文件还有其他意想不到的行为:它不显示 λ,而是显示成对的奇数字符,例如 λ。这符合 unicode 字符成对存储的直觉(双关语)。所以看起来这是一种模棱两可的情况(将 unicode 存储在文本文件中),但看起来 linqPad 和 Visual Studio “做显而易见的事情”。
我想使用 emacs,因为它是我唯一可以重排注释行序列的程序(// 之后的行,用 Alt-Q 重排它们),并且我想在我的 cmets 中使用希腊字符,因为我是描述一个数学程序。
我会很感激你的建议和答案。
更新:其他问题中的一些建议说要尝试 M-x describe-char,也绑定到 C-x = ;这两个都给了我与上面相同的失败信息,所以他们在正确的轨道上,只是没有答案。
【问题讨论】:
标签: visual-studio-2010 unicode emacs notepad++ linqpad