Как установить язык пользовательского интерфейса в vim?
Я видел этой на reddit, и это напомнило мне об одном из моих Vim-захватов: он показывает пользовательский интерфейс в немецкий. Будь ты проклят, ВИМ! Я хочу!--5-->английский язык, но так как моя ОС настроена на немецком языке (стандарт в нашем офисе), я думаю, vim на самом деле пытается быть полезным.
какие магические заклинания я должен выполнить, чтобы заставить vim переключить язык пользовательского интерфейса? Я пробовал гуглить в разных случаях, но не могу найти ответ (Нет, Google, ты мой друг * pat*, * pat*, но я уже знаю, как изменить подсветку синтаксиса, спасибо!)...
EDIT: используя все хорошие советы ниже, я закончил тем, что добавил Это в верхнюю часть моего .vimrc
(запуск Vim 7.2 на Windows 7)
set langmenu=en_US.UTF-8 " sets the language of the menu (gvim)
language en " sets the language of the messages / ui (vim)
15 ответов:
как отметил Кен, вы хотите the
:language
команда.обратите внимание, что положить это в ваш
.vimrc
или.gvimrc
не поможет вам с меню в gvim, так как их определение загружается один раз при запуске, очень рано, а не перечитывается позже. Так что вам действительно нужно установитьLC_ALL
(или, более конкретноLC_MESSAGES
) в вашей среде – или на Unixoid систем (например. Windows), вы можете передать--cmd
переключатель (который выполняет данную команду во-первых, в отличие от ):gvim --cmd "lang en_US"
как я уже говорил, вам не нужно использовать
LC_ALL
, который принудительно переключит все аспекты вашей вычислительной среды. Вы можете сделать больше нюансов вещи. Ф. экс., мои собственные настройки локали выглядят так:LANG=en_US.utf8 LC_CTYPE=de_DE.utf8 LC_COLLATE=C
это означает, что я получаю в основном английскую систему, но с немецкой семантикой для букв, за исключением того, что порядок сортировки по умолчанию является ASCIIbetical (т. е. сортировка по кодовой точке, а не в соответствии с языковыми соглашениями). Вы можете использовать другой вариант; см.
man 7 locale
дополнительные.
Для справки, в Windows (7) я просто удалил каталог
C:\Program Files (x86)\Vim\vim72\lang
. Что сделали его переключение на язык.
попробуйте это в _vimrc. Он работает с моим win7.
set langmenu=en_US let $LANG = 'en_US' source $VIMRUNTIME/delmenu.vim source $VIMRUNTIME/menu.vim
размещение этой строки кода в верхней части моего файла _vimrc спасло мой день:
set langmenu=en_US.UTF-8
это сработало для изменения языка меню vim
set langmenu=en_US.UTF-8 [or just set langmenu=en for short]
но
language en
дал мне ошибку, сказав, что он не может установить en в качестве языка, но эта строка сделала работу
:let $LANG = 'en'
последние исходят от документы Vim. Я добавил обе строки в начале файла _vimrc. Я использую компьютер Windows 7 64.
PS: эта строка изменяет язык и язык меню
language messages en
в рамках .файл vimrc (или _vimrc файл если вы находитесь в Windows)
Ubuntu 10.10 + VIM 7.2 улучшено. Код ниже изменяет язык для консоли vim. Добавьте его в верхней части вашего vim.ру
if has('unix') language messages C else language messages en endif
эти две строки в самом начале вашего .файл vimrc будет выполнять эту работу:
let $LANG = 'en' set langmenu=none
запустите vim с измененной локализацией:
LC_ALL=en_GB.utf-8 vim
или экспортировать эту переменную по умолчанию в вашем bashrc / профиле.
добавление этого в _vimrc работает для меня в windows 8:
set langmenu=en_US let $LANG = 'en_US'
(обратите внимание, что _vimrc находится в том же каталоге, который содержит мой vim74 dir, это файл _vimrc, который vim читает при запуске)
Я не знаю, почему все вышеперечисленные ответы не работает для меня. Я продолжал получать ошибки о локалях, не существующих. Может быть, дело в окнах. Во всяком случае, мое решение состояло в том, чтобы добавить это в мой vimrc: пусть $LANG = 'en'
Ах, я заговорил слишком рано. Меню gVim по-прежнему на японском языке, но вводный экран на английском языке.
Windows-Два Vim
ничто отсюда не помогло мне, пока я не понял, что у меня есть 2 Vim.
- Git Bash via MinGW (Cygwin, mintty)
- отдельная установка в файлы программы на Windows
далее команда будет фильтровать вас всех смотрел vimrc-файлы и их расположение.
vim --version | grep vimrc
- _vimrc (Windows & CMD)
- .vimrc (Bash for Git)
- vimrc (имеет разные места для обоих)
1: Vim на Windows & CMD
только переименование (удаление)lang папка помогла мне.
вы можете найти его здесь
C:\Program Files (x86)\Vim\vim80\lang
я пробовал все настройки конфигурации, перечисленные здесь. Это было бесполезно.
2.1: Git Bash через MinGW, Cygwin, mintty
для 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's Bash (MinGW64, Cygwin, mintty)
в конце концов, для Bash на Windows я решил пропустить манипуляции с vimrc
открыл
C:\Program Files\Git\etc\bash.bashrc
и добавил следующую строку
LANG='en_US'
или
LANG=C
но не использовать
en_US.UTF-8
потому что это делает странные символы для некоторых команд bash. Например, в 'find' xxx_yyy_zzz_aaa.bbbddd ' для несуществующего файла.
была аналогичная проблема, но ни один из вышеперечисленных решений не работал: https://superuser.com/questions/552504/vim-ui-language-issue/552523
Я решил это, удалив все пакеты vim и построив vim источники.
надеюсь, что это поможет кому-то.
Если вы находитесь в Windows и не хотите, чтобы вас беспокоили команды
чтобы предотвратить загрузку файлов локализации графическим интерфейсом
просто зайдите в
Program Files\Vim\vim80\lang
и поставить подчеркивание в качестве префикса перед всеми файлами, которые выглядят так, как будто они имеют какое-то отношение к вашей локали.для предотвращения самого Vim от загрузки файлов локализации
в той же папке, что и выше, префикс с подчеркиванием папки с именем вашей страны код.
Примечание: Windows 10, вероятно, запросит права администратора, вызвав предупреждение UAC.
кстати
этот же метод может быть применен ко многим инструментам Unix / Linux, портированным на Windows, и вообще ко всем программным пакетам, где файлы локализации могут быть легко доступны. Если вы переименуете их, чтобы предотвратить их поиск приложением, резервным языком, скорее всего, будет английский.