Дистрибутив EOS, как и почти все современые дистры общего назначения, кроме узкоспециальных, по умолчанию грузится в графическом режиме с выбранным при инсталляции рабочим столом (в нашем случае KDE). Но, разумеется, никуда не девались и виртуальные консоли, обычно называемые текстовыми. Что не совсем верно, но для определённости будем использовать это название.
Оглавление
Вступление: кому лень — можно и не читать
Переключиться в консольный режим можно по комбинации клавиш Atl+Control+F2…F6, по Atl+F1 — возврат в графический режим умолчального десктопа. То есть доступно пять виртуальных консолей. Хотя поначалу радости от них мало: во-первых, буковки там маленькие и некрасивые, во-вторых, при русской локали ru_RU.UTF-8
вместо символов кириллицы, имеющихся, например, в приглашении командной строки, будут видны светлые квадратики:

Если же на экран файл с большим количеством русскоязычных вкраплений (например, мой конфиг оболочки ~/.zshrc
), зрелище будет вообще душераздирающим:

А о вводе русских букв с клавиатуры пока и говорить не приходится.
Если читатель подумает, что это безобразие — уникальная особенность EOS, то он сильно ошибётся: вот уже многие годы майнтайнеры всех дистрибутивов, которые мне довелось видеть, не утруждают себя настройкой консоли вообще, и кириллической консоли в частности. Даже наш Atl не будет исключением. А ведь он издревле (заслуженно) гордился образцовой русификацией всего и вся, с конца прошлого тысячелетия, когда звался ещё Mandrake Linux Russian Edition, и выпускался IPLabs Linux Team.
Такое пренебрежение консолью и её русификацией нынче объяют обычно тем, что она не нужна: обращаться к консольному приходится очень редко, и только при сбоях режима графического. для борьбы с чем и вражьей мовы достаточно.
Некоторые резоны в этом есть, хотя в принципе это не верно. Однако спорить по этому поводу я не буду, так как в опровержение в скажу точно в развитие известного высказывания АнтонПалыча Чехова:
У человека всё должно быть прекрасно: и операционка, и её дистр, и рабочая среда. И даже консоль.
© Моё
А, надеюсь, никому не придёт в голову называть прекрасными серые квадратики вместо русских букв. Разве что записному русофилу, полагающему прекрасным всё русское. Или, напротив, отъявленному русофобу, считающему: чем всё русское хуже — тем лучше. Ведь противоположности сходятся, не так ли?
Но мы-то, товарищи, знаем, что
…нет ничего слюнявее и плюгавее
Русского безбожия и православия.
©
Потому как
…если они не сходятся в теории вероятности,
То сходятся в неопрятности.
©
А вот побороть неопрятность в консоли — это вполне в наших силах.
Конечно, применителям deb based систем здесь совсем просто: у них есть утилита dpkg-reconfigure, способная решить проблему в «два притопа, три прихлопа», о чём здесь и далее некогда рассказывал кот Мануал.
Для более иных систем такого универсального решения нет — широкое внедрение systemd
и спровоцированное им развитие иных стилей инициализации (таких, как openRC, runit, Dinit, S6, Suite66, Shepherd) существенно осложнили ситуацию. Возвращая нас на 20 лет назад и заставляя читать соответствующую документацию (что, скажу вам по секрету, надоело хуже… любой редьки, редиски и прочих овощей; не говоря уж о том, о чём подумали все испорченные мальчики).
Так что и я не претендую на универсальность решения, предлагаемого для EOS. Однако кажется, что может работать в ряде Arch based систем, к коим эта дистра принадлежит. Хотя разработчики «головного» Arch’а вроде бы отказались от использования каких-либо схем инициализации по умолчанию.
Два притопа, три прихлопа: экранный вывод и клавиатурный ввод
Этот раздел описывает кириллизацию консоли в EOS. Поэтому страдающим от болезни печени и избытка грамотности можно начинать чтение прямо с него.
Так вот, в нашем случае два притопа, то есть обеспечение экранного вывода кириллицы и её же ввода с клавиатуры достигаются редактированием (от имени администратора) одного и того же файла, например, так:
~/ sudo nano /etc/vconsole.conf
По умолчанию в моём случае он содержит единственную строку типа
KEYMAP=ru
которая ничему не соответствует и ничего не даёт. Её можно смело удалить (или, скажем, политкорректней, закомментировать). И вместо неё прописать две строки:
- с описанием пути к имени шрифтового файла вывода (разумеется, и самого файла тоже), и
- с тем же самым для файла раскладки клавиатуры.
Разумеется, и шрифт, и раскладка должны быть в кодировке UTF-8 и поддерживать символы кириллицы. Так что начнём со шрифта, дабы избавиться от вида самой большой неопрятности кириллической консоли — квадратиков вместо русских букв.
Таких шрифтов у нас есть в каталоге /usr/share/kbd/consolefonts/
, например, LatArCyrHeb, LatGrkCyr, LatKaCyrHeb и тому подобные. Однако вопрос кириллических шрифтов в консоли — не тот, где может быть два мнения, моё и неправильное, идо неправильное мнение тут просто не имеет права на существование. Поэтому — веселее, моряк, веселее, моряк, делай так:
~/ yay -S terminus-font
и вот так (в том самом /etc/vconsole.conf
):
FONT=ter-u32b
Изменения вступают в силу сразу после сохранения — бывшие квадратики волшебным образом преобразуются в символы кириллицы:

Второй притоп: клавиатурный ввод
С клавиатурным вводом всё совсем просто: файлов раскладок, удовлетворяющих нашим потребностям, не так много:
~/ ls /usr/share/kbd/keymaps/i386/qwerty/ru*UTF-8* /usr/share/kbd/keymaps/i386/qwerty/ruwin_alt_sh-UTF-8.map.gz /usr/share/kbd/keymaps/i386/qwerty/ruwin_alt-UTF-8.map.gz /usr/share/kbd/keymaps/i386/qwerty/ruwin_cplk-UTF-8.map.gz /usr/share/kbd/keymaps/i386/qwerty/ruwin_ctrl-UTF-8.map.gz /usr/share/kbd/keymaps/i386/qwerty/ruwin_ct_sh-UTF-8.map.gz
Они различаются только переключателем с латиницы на кириллицу (в консольных раскладках, в отличие от иксовых, он встроен в файл). Выбирается подходящий (например, Alt+Shift) и вписывается в поле KEYMAP
.
В отличие от шрифтов, изменение консольной раскладки требует перезагруки системы (или её реинициализации иным образом). А файл /etc/vconsole.conf
приобретает такой вид:
#KEYMAP=ru KEYMAP=ruwin_alt_sh-UTF-8 FONT=ter-u32b #FONT=latarcyrheb-sun32 #FONT=LatGrkCyr-12x22 #FONT=solar24x32
Закомментированные строки я сохранил в педагогических целях — это результаты моих экспериментов с более иными шрифтами.
Третий прихлоп: служба консольной мыши
На этом кириллизация консоли закончилась. Осталось только прихлопнуть это дело включением службы консольной мыши. Для чего сначала устанавливаем соответствующий пакет:
~/ yay -S gpm
И, переключившись в консоль, получаем право root’а и активируем его:
~/ sudo -s eos# systemctl start gpm.service
После этого на чёрном фоне чёрной-чёрной консоли появляется маленький светлый прямоугольник, реагирующий на движения мыши. Это и есть её курсор в консольном воплощении/ С его помощью можно, зажав левую кнопку мыши, выделять фрагменты экрана (но не текста! — текст, продолжающийся за пределы экрана, выделен не будет) для автоматического помещения в экранный буфер. И в дальнейшем его (то есть буфера) содержимое можно вставить в любое место текущей виртуальной консоли щелчком средней кнопки (каковой у нынешних грызунов обчно является колёсико). Или любой из остальных четырёх, активных в данное время.