
У меня такое чувство, что у меня это естьошибка, однако я только что установил новый Nano 4.7 из исходников
Когда я открываю файлы, многие символы (даже не юникодные) отображаются некорректно, а отображаются как пробелы. Когда я навожу на них курсор, они появляются (обычно).
Демонстрация ( nano /etc/environment
):
# nano --version
GNU nano, version 4.7
(C) 1999-2011, 2013-2019 Free Software Foundation, Inc.
(C) 2014-2019 the contributors to nano
Email: [email protected] Web: https://nano-editor.org/
Compiled options: --disable-libmagic --enable-utf8
# locale
LANG=en_US.UTF-8
LC_CTYPE=en_US.UTF-8
LC_NUMERIC=en_US.UTF-8
LC_TIME=en_US.UTF-8
LC_COLLATE=en_US.UTF-8
LC_MONETARY=en_US.UTF-8
LC_MESSAGES=en_US.UTF-8
LC_PAPER=en_US.UTF-8
LC_NAME=en_US.UTF-8
LC_ADDRESS=en_US.UTF-8
LC_TELEPHONE=en_US.UTF-8
LC_MEASUREMENT=en_US.UTF-8
LC_IDENTIFICATION=en_US.UTF-8
LC_ALL=
Моя ОС — CentOS 8. Это я вижу из PuttY и SSH-подключения, я не могу проверить, как это выглядит физически, так как это удаленный сервер.
vi
и cat
работать корректно в том же терминале/оболочке.
Что я сделал и что могло стать причиной проблемы:
- Локаль по умолчанию была
POSIX
и я обновил ее доen_US.UTF-8
(может я сделал что-то не так?). Причина в том, чтоPOSIX
ни с ,nano
ни с неvi
отображались символы юникода в файлах правильно. - Nano 2.9.8, который идет из коробки, начал жаловаться,
Error in /usr/share/nano/rust.nanorc on line 11: Bad regex
вот почему я решил попробовать новый Nano
Как мне настроить Nano так, чтобы файлы отображались правильно?
решение1
Кажется, я решил эту проблему, установив локали не на , en_US.UTF-8
а на ru_RU.UTF-8
.
Так что теперь у меня /etc/environment
так:
LANG=en_US.UTF-8
LC_CTYPE="ru_RU.UTF-8"
LC_NUMERIC="ru_RU.UTF-8"
LC_TIME="ru_RU.UTF-8"
LC_COLLATE="ru_RU.UTF-8"
LC_MONETARY="ru_RU.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="ru_RU.UTF-8"
LC_NAME="ru_RU.UTF-8"
LC_ADDRESS="ru_RU.UTF-8"
LC_TELEPHONE="ru_RU.UTF-8"
LC_MEASUREMENT="ru_RU.UTF-8"
LC_IDENTIFICATION="ru_RU.UTF-8"
(Я все еще хочу, чтобы сообщения и пользовательский интерфейс были на английском языке)
И причина этого, я полагаю, в том, что этот сервер изначально был настроен на русскую раскладку и язык, и, возможно, некоторые системные файлы получили ru_RU.UTF-8
кодировку/локаль/что угодно еще... В любом случае, теперь все вроде нормально.