如何在vim中设置UI语言?

时间:2008-09-24 12:30:32

标签: vim user-interface

我在reddit上看到了this,它让我想起了我的一个抱怨:​​它显示了德语中的用户界面。该死的,你!我想要英语,但由于我的操作系统是用德语设置的(我们办公室的标准),我想vim实际上是想帮助。

要让vim切换UI语言,我必须执行哪些神奇的咒语?我曾尝试在各种场合使用谷歌搜索,但似乎无法找到答案(不,谷歌,你是我的朋友*拍*,*拍*,但我已经知道如何改变语法高亮,谢谢!) ...

编辑:使用下面的所有优秀提示,我最终将其添加到.vimrc的顶部(在Windows 7上运行Vim 7.2)

set langmenu=en_US.UTF-8    " sets the language of the menu (gvim)
language en                 " sets the language of the messages / ui (vim)

16 个答案:

答案 0 :(得分:97)

作为参考,在Windows(7)中我刚刚删除了目录C:\Program Files (x86)\Vim\vim72\lang。这使它成为en_US的后退。

答案 1 :(得分:35)

在_vimrc中试试这个。它适用于我的win7。

set langmenu=en_US
let $LANG = 'en_US'
source $VIMRUNTIME/delmenu.vim
source $VIMRUNTIME/menu.vim

答案 2 :(得分:34)

正如Ken所说,你想要 the :language command

请注意,将其放在.vimrc.gvimrc中对gvim中的菜单没有帮助,因为它们的定义在启动时很早就加载了一次,而不是再次重新读取后来。因此,您确实需要在您的环境中设置LC_ALL(或更具体地LC_MESSAGES) - 或者在非Unixoid系统(例如Windows)上,您可以通过--cmd开关(首先执行给定的命令,而不是-c选项):

gvim --cmd "lang en_US"

正如我所提到的,您不需要使用LC_ALL,它会强行切换计算环境的所有方面。你可以做更多细致入微的事情。 F.ex.,我自己的语言环境设置如下:

LANG=en_US.utf8
LC_CTYPE=de_DE.utf8
LC_COLLATE=C

这意味着我得到一个很大程度上英语的系统,但是使用德语语法来表示字母,除了默认的排序顺序是ASCIIbetical(即按代码点排序,而不是根据语言约定)。你可以使用不同的变体;有关详情,请参阅man 7 locale

答案 3 :(得分:17)

将这行代码放在我的_vimrc文件的顶部保存了我的一天:

set langmenu=en_US.UTF-8

答案 4 :(得分:10)

这适用于更改vim的菜单语言

set langmenu=en_US.UTF-8  [or just set langmenu=en for short]

但是

language en 

给了我一个错误,说它无法将en设置为一种语言,但这条线完成了工作

:let $LANG = 'en'

后者来自Vim's docs。我在_vimrc文件的开头添加了两行。我使用的是Windows 7 64计算机。

PS:这一行改变了语言和菜单语言

language messages en

在.vimrc文件中(如果你在windows中,则为_vimrc文件)

答案 5 :(得分:6)

Ubuntu 10.10 + VIM 7.2 IMproved。下面的代码更改了console vim的语言。 将其添加到vim.rc

的顶部
if has('unix')
    language messages C
else
    language messages en
endif

答案 6 :(得分:4)

.vimrc文件开头的这两行将完成这项工作:

let $LANG = 'en'
set langmenu=none

答案 7 :(得分:3)

使用更改的区域设置启动vim:

LC_ALL=en_GB.utf-8 vim

或者在bashrc / profile中默认导出该变量。

答案 8 :(得分:3)

:帮助语言

:语言fr_FR.ISO_8859-1

答案 9 :(得分:2)

将此添加到_vimrc适用于Windows 8:

set langmenu=en_US
let $LANG = 'en_US'

(请注意_vimrc位于包含我的vim74目录的同一目录中,这就是vim在启动时读取的_vimrc文件)

答案 10 :(得分:1)

我不知道为什么上述所有答案对我都不起作用。我不断收到有关不存在的语言环境的错误。也许这是Windows的事情。无论如何,我的解决方案是将其添加到我的vimrc: 让$ LANG ='en'

啊,我说得太早了。 gVim的菜单仍然是日语,但介绍屏幕是英文。

答案 11 :(得分:1)

Windows - 两个Vim

在我意识到我有2个Vim之前,这里没有任何帮助我。

  1. Git Bash通过MinGW(Cygwin,mintty)
  2. Windows上的Program Files中的单独安装
  3. 下一个command将过滤所有已观看的 vimrc 文件及其位置。

    vim --version | grep vimrc
    
    • _vimrc(Windows& CMD)
    • .vimrc(Bash for Git)
    • vimrc(两者都有不同的位置)

    1:Vim on Windows& CMD

    只有重命名(删除) lang 文件夹才能帮助我。

    您可以在C:\Program Files (x86)\Vim\vim80\lang

    找到它

    我已经尝试了此处列出的所有配置设置。这没用。

    2.1:Git Bash通过MinGW,Cygwin,薄荷

    对于Git Bash,我在language messages en_US

    的顶部添加了C:\Program Files\Git\etc\vimrc

    当然,如果你想删除 lang 文件夹,你可以在这里找到它

    • C:\Program Files\Git\usr\share\vim\vim80\lang
    • C:\Users\User_name_xxx\AppData\Local\Programs\Git\usr\share\vim\vim80\lang用于本地用户安装。

    2.2:仅调整Git的Bash(MinGW64,Cygwin,mintty)

    最后,对于Windows上的Bash,我选择使用 vimrc

    跳过操作

    我打开了C:\Program Files\Git\etc\bash.bashrc 并添加了下一行

    LANG='en_US'

    LANG=C

    但不使用en_US.UTF-8,因为它会对某些bash命令产生奇怪的影响。例如,在`find' xxx_yyy_zzz_aaa.bbbddd'对于不存在的文件。

答案 12 :(得分:0)

有类似问题,但上述解决方案均无效: https://superuser.com/questions/552504/vim-ui-language-issue/552523

我通过删除所有vim数据包并构建vim from sources来解决它。

希望它能帮到某人。

答案 13 :(得分:0)

如果你在Windows上并且不想被打扰发出命令

防止GUI加载本地化文件

只需转到print(rpairs)并在所有看起来与您的语言环境有关的文件前面加上下划线作为前缀。

阻止VIM自身加载本地化文件

在与上面相同的文件夹中,使用国家/地区代码命名的文件夹前缀为下划线。

注意:Windows 10可能会通过提出UAC警告来请求管理员权限。

顺便说一下

这种技术可以应用于许多移植到Windows上的Unix / Linux工具,通常也可以应用于可以轻松访问本地化文件的所有软件包。如果你重命名那些以防止应用程序找到它们,那么后备语言很可能是英语。

答案 14 :(得分:0)

尝试将此添加到您的_vimrc:

let $LANG='en_US'

答案 15 :(得分:-1)

我只是在安装gvim时禁用了本机语言支持(因此使其成为自定义安装)。

"Native Language Support" unchecked

在Windows 7下使用gvim82.exe成功测试。