Как починить кодировку в cmder

На некоторых версиях Windows бывает проблема: вместо русских букв показываются «кракозябры» в консоли cmder.

Типичные проблемы с кодировкой

Чтобы увидеть кириллические символы, нужно сообщить терминалу, какую кодировку использовать. Вот такой командой:

export LC_ALL=ru_RU.UTF-8 LANG=ru_RU.UTF-8

Смотрите, кодировка в приглашении сразу стала нормальной:

Правильная кодировка

Команда export просто установила две переменные для текущей вкладки. Поэтому в новой вкладке опять будут проблемы с кодировкой. И при перезапуске cmder кодировка слетит. Чтобы терминал всегда знал правильную кодировку, нужно указать её в настройках. Настройки открываются по хоткею Win+Alt+P. В разделе Startup → Environment в поле для переменных окружения нужно дописать:

set LC_ALL=ru_RU.UTF-8
set LANG=ru_RU.UTF-8

Вот так:

Как указать кодировку в настройках

Можно проверить, что после сохранения настроек и перезапуска cmder всё в порядке. Сначала проверьте вывод команды locale, везде должно быть написано ru_RU.UTF-8:

С новыми настройками кодировка при запуске нормальная

Если у вас нет кириллицы в имени пользователя, посмотрите список файлов в какой-нибудь папке, где есть кириллица в названиях.

Если вы используете git, то нужно и его подкрутить. Иногда он вместо кириллицы показывает цифры, хотя всё остальное нормально:

Цифры вместо имени файла в git

Проблема решается настройкой гита, нужно выключить опцию quotepath:

git config --global core.quotepath false

Эту команду достаточно выполнить однажды, и даже при следующем запуске всё будет в порядке: гит сам хранит свои настройки. Видите, после команды кириллические буквы нормально отображаются:

Кириллица, а не цифры в именах файлов в git

Теперь с кириллицей удобно работать. Но не забывайте, что в мире программистов принято всё-таки называть файлы латиницей.


Вам может быть интересна статья про настройку cmder.

Поделиться
Отправить