【问题标题】:Vim and ASCII extended characters?Vim 和 ASCII 扩展字符?
【发布时间】:2009-12-17 12:06:41
【问题描述】:

我想知道如何设置 VIM 7.0 以毫无问题地显示和使用 ASCII 扩展字符。

【问题讨论】:

  • 定义“ASCII 扩展字符”。另外,哪个vivim?
  • 我的 vi 确实 可以毫无问题地显示和使用 ASCII 扩展字符,而且我没有进行任何更改。您需要更具体地了解您的配置。您使用的是什么语言环境?您的终端使用哪种编码?当您尝试在 vi 中输入扩展字符时会发生什么?
  • 我只能可视化 7 位 Ascii 字符。使用 VIM 7.0。终端默认使用 latin1 编码,并显示 ?对于扩展字符。将其设置为 utf-8 时,这些字符变为 等。谢谢!

标签: vim


【解决方案1】:

Vim(这是vi 在大多数系统上解析的内容)很容易支持扩展字符集。不过,您可能需要告诉 Vim 使用哪种 编码。

这由两个选项控制:

:set encoding
:set fileencoding

如果您加载的文件显示不正确,您可以使用:set encoding=<new encoding> 强制进行适当的编码。这改变了对角色的即时解释。如果你想用另一种编码保存文件保留当前的字符解释,使用set fileencoding=<new encoding> 让 Vim 用那种编码保存文件。

我建议您将utf-8 设置为.vimrc 中的默认编码。

【讨论】:

  • 感谢 Konrad,我按照你的评论做了,所以对 VIM 有了更多的了解。然而,当将编码设置为 utf-8 时,字符变为 等。我已经阅读了有关设置 guifont 的信息,但是在尝试设置它时,我收到了不支持的消息。我正在使用 VIM 7.0。谢谢!
【解决方案2】:

一旦字符被“扩展”,它就不再是 ASCII。

但是:只需使用 vim。 ":help unicode" 了解更多详情。

【讨论】:

    【解决方案3】:

    这里的其他解决方案对我不起作用。 Vim 告诉我 encodingfileencoding 不是受支持的选项。原来是因为我自己是从源代码构建的,并且我没有包含多字节功能。我的两台 Mac 类似,但其中一台默认启用,另一台未启用。

    如果您像我一样从源代码构建 Vim,请在 ./configure 的参数中包含 --enable-multibyte。在我的例子中,Vim 默认为 UTF-8 并在此之后支持扩展字符。

    【讨论】:

      【解决方案4】:

      我建议您尝试以下方法:

      • 将终端设置为 utf-8(如何设置取决于您的终端;在 PuTTY 中,它位于“窗口/翻译”菜单中)

      • 将您的语言环境设置为 utf-8(如何做到这一点取决于您的操作系统;在我的 Debian 机器上,set LC_ALL=en_GB.UTF-8 用于当前会话,sudo dpkg-reconfigure locales 用于永久系统范围的更改)——您可以使用 locale 检查您当前的语言环境。

      这就是它对我的工作方式(使用 VIM 7.1.314 并且没有 .vimrc)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-03-19
        • 2022-01-14
        • 2010-11-22
        • 1970-01-01
        • 1970-01-01
        • 2011-04-26
        相关资源
        最近更新 更多