Сообщение об ошибке при запуске vim: «Не удалось установить тип языкового стандарта LC_NUMERIC в en_CH» (или en_BR, en_RU & LC_TIME, LC_COLLATE, LC_MONETARY, LC_MESSAGES) - PullRequest
5 голосов
/ 22 июня 2019

Я недавно установил vim (Vi IMproved 8.1) в качестве текстового редактора на моем MacOS 10.14.5 с Homebrew. Каждый раз, когда я запускаю vim, я получаю это сообщение об ошибке:

Warning: Failed to set locale category LC_NUMERIC to en_CH.
Warning: Failed to set locale category LC_TIME to en_CH.
Warning: Failed to set locale category LC_COLLATE to en_CH.
Warning: Failed to set locale category LC_MONETARY to en_CH.
Warning: Failed to set locale category LC_MESSAGES to en_CH.

Мне нужно нажать ENTER, и это работает, но я бы хотел избавиться от этого сообщения об ошибке.

Я видел похожее сообщение на этой ссылке

Как мне избавиться от этого сообщения об ошибке?

Ответы [ 4 ]

18 голосов
/ 24 июня 2019

Сначала откройте файл .bash_profile, введя следующее (используя vim в качестве текстового редактора):

vim ~/.bash_profile

Внутри файла .bash_profile вставьте следующую строку:

export LC_ALL=en_US.UTF-8

Перезапустите Терминал и снова запустите vim: сообщение об ошибке должно исчезнуть.

Спасибо @geoyws - Джорджу Йонгу и pkropachev Павлу Кропачеву за найденный ответ там , спасибо @bk2204 для подсказок в другом ответе

2 голосов
/ 22 июня 2019

Каким-то образом ваша локаль установлена ​​на "en_CH".Этот язык предназначен для английского языка, на котором говорят в Швейцарии, но в вашей системе он не является допустимым языком.Как правило, локали также содержат набор символов для использования, такой как «UTF-8» в «en_US.UTF-8», который также здесь отсутствует.

Возможно, что-то в вашей конфигурации оболочки настроеноэти значения, потому что macOS обычно не устанавливает эти конкретные значения;вместо этого он устанавливает переменную окружения LANG и всегда использует локали UTF-8.Вам следует проверить настройки .bashrc и .bash_profile или, возможно, настройки .zshenv, .zshrc и .zprofile и изменить любую LANG, LC_ALL или другую переменную LC_*, которую вы могли установить.

Как примечание, я не знаю ни о какой системе, имеющей локаль en_CH;как правило, языковые стандарты используются только в стране или регионе (часто, но не всегда, на официальных языках).Например, хотя в Соединенных Штатах, безусловно, много говорящих на французском языке, системы обычно не предоставляют языковой стандарт fr_US.UTF-8, потому что недостаточно говорящих, чтобы установить нормы для локализации.Возможно, вам придется выбрать другую английскую локаль, например, «en_GB.UTF-8» или «en_US.UTF-8», которая достаточно близка для ваших нужд, или установить отдельные переменные «LC» в зависимости от того, какие настройки вы хотите выбрать, иchooise.

0 голосов
/ 16 июля 2019

если вы используете рыбу, вы могли бы

vim ~/.config/fish/config.fish
set -x LC_ALL en_US.UTF-8
0 голосов
/ 04 июля 2019

если вы используете zsh, вы можете

vim ~/.zshrc

и раскомментировать следующую строку:

export LC_ALL=en_US.UTF-8
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...