Перейти к содержимому

Какой шрифт используется в терминале linux

  • автор:

Linux console (Русский)

Состояние перевода: На этой странице представлен перевод статьи Linux console. Дата последней синхронизации: 3 августа 2021. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

  • Конфигурация клавиатуры в консоли
  • Screen capture#Virtual console
  • Color output in console
  • getty

Linux консоль — консоль, реализованная в ядре Linux, стала первой функциональностью ядра, разработанной в 1991 году. Является способом взаимодействия с пользователем — позволяет ядру и другим процессам отправлять пользователю текстовые данные, а также получать данные, введённые пользователем. Обычно для ввода используется клавиатура, а для вывода – монитор. Linux-консоль поддерживает так называемые виртуальные консоли — консоли, которые отделены логически, но используют те же клавиатуру и дисплей.

Данная статья описывает основы консоли Linux и как настроить отображения шрифтов. Настройка клавиатуры описана в подстранице Конфигурация клавиатуры в консоли.

Реализация

Консоль, в отличии от сервисов которые взаимодействуют с пользователем напрямую, является частью ядра системы. Это отличает ее от эмуляторов терминала, таких как xterm (Русский), которые реализованы на уровне пользовательского пространства и являются обычными приложениями. Консоль оставалась компонентом ядра Linux, но имела заметные изменения, такие как графический вывод (framebuffer) и поддержка Юникода.

Не смотря на все усовершенствования консоли, она до сих пор имеет полную обратную совместимость с прежним оборудованием, ограниченным в своих возможностях по сравнению с графическими эмуляторами терминала.

Виртуальные консоли

Консоль в представлении пользователя это набор виртуальных консолей. Они создают впечатление параллельной работы нескольких терминалов: в каждую из виртуальных консолей могут быть залогинены разные пользователи. Они могут работать в своих оболочках и иметь собственные настройки шрифтов. Каждая консоль использует устройство /dev/ttyX и вы можете переключится между ними сочетанием клавиш Alt+FX , где X номер виртуальной консоли начиная с 1. Устройство /dev/console автоматически привязывается к активной виртуальной консоли.

Текстовый режим

Изначально Linux был создан как ядро для управления оборудованием ПК, консоль была разработана по стандартам IBM CGA/EGA/VGA, которые поддерживали на тот момент все ПК. Графические возможности, предоставляемые этим стандартом предоставляли простое отображение 80*25 сетки символов с поддержкой 16 цветов. Этот устаревший режим был похож на принцип работы текстовых терминалов, таких как VT100. Все еще существует возможность загрузиться в текстовом режиме, если оборудование поддерживает его, но большинство современных дистрибутивов (в том числе Arch Linux) используют framebuffer консоль.

Framebuffer консоль

Так как Linux был портирован на различные архитектуры, которые не использовали VGA-совместимых графических адаптеров и не поддерживали текстовый режим, требовалась другая реализация. Framebuffer консоль была разработана для предоставления стандартной консоли среди всех доступных платформ и представляла собой VGA-подобный интерфейс независимый от используемого графического оборудования. Таким образом, консоль Linux — это не эмулятор терминала, а сам по себе терминал. Она использует тип терминала linux и в значительной мере совместима с VT100.

Горячие клавиши

Горячие клавиши Описание
Ctrl+Alt+Del Перезапускает систему (указанно символической ссылкой /usr/lib/systemd/system/ctrl-alt-del.target )
Alt+F1 , F2 , F3 , . Переключает на n-ую виртуальную консоль
Alt+ ← Переключает на предыдущую виртуальную консоль
Alt+ → Переключает на следующую виртуальную консоль
Scroll Lock Когда Scroll Lock активен, ввод и вывод заблокированы
Ctrl+c Закрывает текущую задачу
Ctrl+d Вставляет EOF
Ctrl+z Прерывает текущую задачу

Шрифты

Примечание: Эта секция написана для Linux консоли. Для альтернативных реализаций, поддерживающих большее количество функций (Полная поддержка шрифтов Юникод, современных графических адаптеров и т.д.) смотрите KMSCON или похожие проекты.

По стандарту, виртуальная консоль использует встроенный в ядро шрифт с набором символов CP437 [1] , но это можно изменить.

Linux консоль по умолчанию использует кодирование UTF-8, но из-за особенностей VGA-совместимого framebuffer, консольный шрифт ограничен стандартными 256 или 512 глифами. Если в шрифте более чем 256 глифов, то количество цветов уменьшается с 16 до 8. Для корректного отображения нужного символа требуется специальная карта трансляции, называемая unimap. В настоящее время большинство консольных шрифтов имеют встроенную unimap, но исторически она загружалась отдельно.

Пакет kbd предоставляет инструменты для смены шрифта и его отображения в виртуальной консоли. Доступные шрифты находятся в директории /usr/share/kbd/consolefonts/ . Шрифты с расширением .psfu или .psfu.gz имеют встроенную карту трансляций Юникод.

Списки раскладок, являющиеся связью между нажатой клавишей и символом используемым системой, находятся в директории /usr/share/kbd/keymaps/ , подробности смотрите на странице Конфигурация клавиатуры в консоли.

Примечание: Замена шрифта может вызвать проблемы в программах, которые рассчитаны на стандартный шрифт, например, использующие линейную графику.

Предпросмотр и временные изменения

$ showconsolefont

Показывает таблицу глифов или символов шрифта.

setfont временно меняет шрифт, если команде передано имя шрифта (находящегося в директории /usr/share/kbd/consolefonts/ ), например:

$ setfont lat2-16 -m 8859-2

Название шрифта чувствительно к регистру. Без параметров setfont возвращает консоли стандартный шрифт.

Для смены на маленький шрифт размера 8×8, можете использовать данный шрифт:

$ setfont -h8 /usr/share/kbd/consolefonts/drdos8x8.psfu.gz

Для большого шрифта, можете рассмотреть шрифт terminus-font , он доступен в различных размерах. Например ter-132n .

Совет: Все команды смены шрифта могут быть набраны «в слепую».
Примечание: setfont влияет только на активную консоль, в других консолях изменений не будет.

Постоянные изменения

Переменная FONT в /etc/vconsole.conf используется для применения шрифта при загрузке системы для всех консолей. Смотрите vconsole.conf(5) для деталей.

Для отображения символов Č, ž, đ, š or Ł, ę, ą, ś используйте шрифт lat2-16.psfu.gz :

/etc/vconsole.conf
. FONT=lat2-16 FONT_MAP=8859-2

Вторая часть набора символов ISO/IEC 8859 будет размера 16. Вы можете поменять размер шрифта используя другие значения (например lat2-08 ). Для регионов определяемых спецификацией ISO 8859, смотрите Части ISO 8859

Для использования шрифта в пользовательском пространстве при загрузке системы используйте хук consolefont в /etc/mkinitcpio.conf . Смотрите mkinitcpio (Русский)#HOOKS для подробностей.

Если шрифт не применяется после загрузки системы, или изменения временные, то скорее всего шрифт сбрасывается когда графический драйвер инициализируется и консоль меняется на framebuffer. Как решение, загружайте графический драйвер раньше, для примера смотрите Kernel mode setting (Русский)#Ранний запуск KMS, [2] или другими способами сделайте загрузку framebuffer перед применением /etc/vconsole.conf .

HiDPI

Звуковые сигналы

Смотреть также

Лучшие шрифты для использования в терминале

Как и ожидалось, это шрифты фиксированной ширины (фиксированная ширина) или моноширинные (моноширинные).

  • 1 1. Безутешный
  • 2 2. Код зависти R
  • 3 3. Дроид Санс Моно
  • 4 4. Анонимный профи
  • 5 5. ДежаВю Без Моно
  • 6 6. Либерейшн Моно
  • 7 7. Терминал

1. Безутешный

2. Код зависти R

3. Дроид Санс Моно

4. Анонимный профи

5. ДежаВю Без Моно

6. Либерейшн Моно

7. Терминал

А вы, какой шрифт вы используете на своем терминале?

Содержание статьи соответствует нашим принципам редакционная этика. Чтобы сообщить об ошибке, нажмите здесь.

Полный путь к статье: Из Linux » ФайлДавайте использовать Linux » Лучшие шрифты для использования в терминале

6 комментариев, оставьте свой

Оставьте свой комментарий Отменить ответ

Карлос Салазар V сказал
тому назад 11 лет
Ubuntu Mono, даже в Chakra использую.
иззывп сказал
тому назад 10 лет
Это то же самое, что и я.
Бла бла бла сказал
тому назад 11 лет

Я даже использовал очень дорогой и не бесплатный PragmataTT (автор хвастается, что он лучший для программирования, но для меня он паршивый из-за того, насколько тонкий). Я предпочитаю Profont, хотя он немного широкий, мне он нравится, это пиксельный тип (что дает лучшую читаемость на маленьких экранах), он выглядит очень элегантно и разборчиво.

Лучано Лагасса сказал
тому назад 11 лет

Я настраиваю профиль на свой терминал, чтобы оставить его с зелеными буквами и полупрозрачным черным фоном, правда в том, что шрифт никогда не приходил мне в голову, меняя его.

Какой шрифт используется в терминале linux

— Шрифт «Ubuntu Mono» — один из лучших для терминалок https://fonts-online.ru/fonts/ubuntu

Чуть хуже, но тоже отличные

Кроме того — было бы интересно узнать:
1) А есть программы для конверсии grub’овского pf2 в другие форматы?

2) конверторы psf в otb/bdf/.

3) А этот setfont с его что-то там про какой-то VGA точно применим к kms’ной консоли?

4) Что насчет вяленда и того что под ним крутится?

> в консоли (а под этим словом я подразумеваю GUI-программу
> — эмулятор терминала)

Растровый шрифт в десктопном терминале в 2022 году — это не шутка?
На дворе уже 21 век. Любой современный терминал поддерживает векторные шрифты (ttf, otf) с нативным сзлаживанием и хинтингом. А уж по поводу выбора — пол-интернета завалено свободными ttf с любыми гарнитурами, плотностями и спецсимволами.

1) Обсчет векторных шрифтов требует операций с плавающей точкой. На 386-м процессоре без математического сопроцессора разница в скорости рендеринга будет действительно заметной.
А если вернуться в 21 век, то нет ни одного видеоускорителя, который бы не умел рендерить ttf-ы аппаратно на GPU (видео драйверы надо настраивать, а не растровые шрифты вкрячивать через ж@пу)
>Кристально четкий фонт. Всегда. Безусловно

Для рендера ттф надо уйму операций, хоть как Сложный формат с множеством фич, а. большой текст свёрнут, показать

Пожалуйста, не пишите больше _ничего_ про шрифты.

Очень жалко глаза молодежи, которая поведется на такие вот «советы» бывалых

�� Как посмотреть все доступные шрифты в терминале (CLI)?

Посмотреть все доступные шрифты в Linux с помощью CLI

Откройте приложение терминала. Чтобы просмотреть список всех шрифтов, выполните:

$ fc-list

Если появится сообщение:

Программа 'fc-list' на данный момент не установлена. Вы можете установить её, выполнив: sudo apt install fontconfig

то нужно установить программу fontconfig как требуется в сообщении.

Можно использовать команду more или grep command/egrep для уточнения поиска шрифтов:

$ fc-list | more $ fc-list | grep -i "word" $ fc-list | grep -i UbuntuMono

Быстро вывести список всех доступных шрифтов

Чтобы вывести список шрифтов, которые поддерживают русскую кириллицу:

$ fc-list: lang = ru
/usr/share/fonts/truetype/dejavu/DejaVuSerif-Bold.ttf: DejaVu Serif:style=Bold /usr/share/fonts/truetype/dejavu/DejaVuSansMono.ttf: DejaVu Sans Mono:style=Book /usr/share/fonts/truetype/dejavu/DejaVuSans.ttf: DejaVu Sans:style=Book /usr/share/fonts/truetype/dejavu/DejaVuSans-Bold.ttf: DejaVu Sans:style=Bold /usr/share/fonts/truetype/dejavu/DejaVuSansMono-Bold.ttf: DejaVu Sans Mono:style=Bold /usr/share/fonts/truetype/dejavu/DejaVuSerif.ttf: DejaVu Serif:style=Book ậm,Lodia,धृष्ट /usr/share/fonts/truetype/Gargi/Gargi.ttf: Gargi,गार्गी:style=Regular,गार्गी /usr/share/fonts/truetype/fonts-deva-extra/chandas1-2.ttf: Chandas:style=Regular /usr/share/fonts/truetype/Sahadeva/sahadeva.ttf: Sahadeva:style=Regular /usr/share/fonts/truetype/Nakula/nakula.ttf: Nakula:style=Regular /usr/share/fonts/truetype/fonts-deva-extra/samanata.ttf: Samanata:style=Regular

Подробный вывод списка доступных шрифтов

Вывести подробный вывод всего шаблона шрифта для каждого соответствия или элементов, если они есть, следующим образом:

fc-list -v "DejaVu Serif"
Pattern has 23 elts (size 32) family: "DejaVu Serif"(s) familylang: "en"(s) style: "Italic"(s) stylelang: "en"(s) fullname: "DejaVu Serif Italic"(s) fullnamelang: "en"(s) slant: 100(i)(s) weight: 80(i)(s) width: 100(i)(s) foundry: "PfEd"(s) file: "/usr/share/fonts/truetype/dejavu/DejaVuSerif-Italic.ttf"(s) index: 0(i)(s) outline: True(s) scalable: True(s) charset: 0000: 00000000 ffffffff ffffffff 7fffffff 00000000 ffffffff ffffffff ffffffff 0001: ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff 0002: ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff 7fcf3fff 0089d3ff 0003: ffffffff ffffffff 01008008 7cff0003 ffffd7f0 fffffffb ffffffff ffff0003 0004: ffffffff ffffffff ffffffff 00ff3c3c cfff3000 0cfffcff ffff999f 03ffffff 0005: 3c3f0000 fffe0000 fe7fffff fffffffe 000006ff 00000000 00000000 00000000 000e: 00000000 80000000 00000000 00000000 00000000 00000000 00000000 00000000 0010: 00000000 00000000 00000000 00000000 00000000 ffffffff ffff003f 1fffffff 001d: ffffffff ffffffff ffffffff f9800fff f8000020 ffffffff 000003f0 00000000 001e: ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff 0fffffff 001f: 3f3fffff ffffffff aaff3f3f 3fffffff ffffffff ffdfffff efcfffdf 7fdcffff 0020: ffffffff 77fffc7f 808efbf4 fff3fc1f 1fff7fff 27329040 00000000 00000000 0021: 0040c208 00040cc4 ffff481e ffffffff ffff023f ffffffff ffffffff ffffffff 0022: ffbf9bdd 3f003ff9 003f010c 00000033 fffff0fc 0000ffff 00000030 00000000 0023: 03030f04 00000123 00000000 20000000 f8000000 00007fff 00008000 00000000 0024: 00000000 00000008 00000000 00000000 00000000 00000000 00000000 00000000 0025: ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff 0026: 00000001 9f000000 000000ff 0000feff 00000000 00000000 00000000 00000000 0027: 00000000 00000000 00000000 00000000 00000000 00000002 00000060 ffff0301 0028: ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff 0029: ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000000 00000800 002a: 00007000 00008000 00000000 00000c00 00000000 00000000 00000000 00000000 002b: 07ffffff 00000000 00000000 00000000 00000000 00000000 00000000 00000000 002c: 00000000 00000000 00000000 feefff9b 00000000 00000000 00000000 00000000 002d: ffffffff 0000003f 00000000 00000000 00000000 00000000 00000000 00000000 002e: 81000000 0000403c 00000000 00000000 00000000 00000000 00000000 00000000 00a6: 00000000 00000000 00f300f0 00000000 00000000 00000000 00000000 00000000 00a7: f87fff00 ffffffc0 0000ccc3 18000300 000338ff 00000400 00000000 ff000000 00f4: ffffffff 0000017f 00000000 00000000 00000000 00000000 00000000 00000000 00f6: 00000000 00000000 00000000 00000000 00000000 00000000 001201f0 00000000 00fb: 0000007f 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00fe: 0000ffff 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00ff: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 20000000 01d4: 00000000 fff00000 ffdfffff 000000ff 00000000 00000000 00000000 00000000 01d6: 00000000 00000000 00000000 00000000 00000000 00000030 00000000 fffffffc 01d7: 0fffffff 00000000 00000000 00000000 00000000 00000000 00000000 00000000 (s) lang: aa|af|ast|av|ay|az-az|ba|bm|be|bg|bi|bin|br|bs|bua|ca|ce|ch|chm|co|cs|cv|cy|da|de|el|en|eo|es|et|eu|fi|fj|fo|fr|ff|fur|fy|ga|gd|gl|gn|gv|ha|haw|ho|hr|hu|hy|ia|ig|id|ie|ik|io|is|it|ka|kaa|ki|kk|kl|ku-am|kum|kv|kw|ky|la|lb|lez|ln|lt|lv|mg|mh|mi|mk|mo|mt|nb|nds|nl|nn|no|nr|nso|ny|oc|om|os|pl|pt|rm|ro|ru|sah|sco|se|sel|sh|shs|sk|sl|sm|sma|smj|smn|sms|so|sq|sr|ss|st|sv|sw|tg|tk|tl|tn|to|tr|ts|tt|tw|tyv|uk|uz|ve|vi|vo|vot|wa|wen|wo|xh|yap|yo|zu|ak|an|ber-dz|crh|csb|ee|fat|fil|hsb|ht|hz|jv|kab|kj|kr|ku-tr|kwm|lg|li|mn-mn|ms|na|ng|nv|pap-an|pap-aw|qu|quz|rn|rw|sc|sg|sn|su|ty|za(s) fontversion: 154009(i)(s) capability: "otlayout:DFLT otlayout:cyrl otlayout:grek otlayout:latn"(s) fontformat: "TrueType"(s) decorative: False(s) postscriptname: "DejaVuSerif-Italic"(s) color: False(s) symbol: False(s) .

Вывод очень длинный, поэтому сдесь привеён только кусок…

Использование команды fc-list

fc-list [-vqVh] [-f FORMAT] [—verbose] [—format = FORMAT] [—quiet] [—version] [—help] [pattern]

-v, —verbose отображать весь шаблон шрифта
-f, —format = FORMAT использовать данный формат вывода
-q, —quiet подавить все нормальные выходные данные, выйти из 1, если не найдено ни одного шрифта
-V, —version показать версию конфигурации шрифта и выйти
-h, —help показать эту справку и выйти

�� Похожие статьи на сайте

  • Альтернативы SSH, которые в некоторых случаях лучше оригинала
  • Полный набор лучших и современных консольных программ для Linux
  • Хитрости командной строки Bash, которые помогут вам работать быстрее
  • Команда ls в Linux — подробно и с примерами
  • Команда mkdir в Linux — подробно и с примерами
  • Команда chmod в Linux — подробно и с примерами
  • Команда cat и примеры её использования в Linux
  • Файловый менеджер nnn
  • Версия системы и версия ядра Ubuntu/Mint
  • Ошибка NO_PUBKEY. Как найти GPG-ключ и добавить его в базу apt системы Ubuntu
  • nmon — удобный инструмент для мониторинга Linux систем
  • Команда history или работа с историей введенных команд
  • Шпаргалка по архиватору 7z (7-Zip) в Linux Ubuntu/Mint
  • Как посмотреть все доступные шрифты в терминале (CLI)?
  • Команда id — найти UID пользователя или GID
  • nmblookup — аналог команды Windows nbtstat для Linux.
  • Inxi — программа вывода информации о системе и железе в Linux
  • dnstop — мониторинг и анализатор DNS-трафика
  • ss — программа для исследования сокетов
  • Команда netstat в Ubuntu — показ статуса сети
  • Команда ifconfig — настройка параметров сетевого интерфейса
  • Почему в меню загрузки ubuntu нет memtest86
  • Ethtool — программа изменения параметров сетевой платы в Ubuntu/Mint
  • Установка сервера точного времени NTP в Ubuntu 16.04
  • Удаление файлов старше N дней
  • Блокирование атак при помощи null route или blackhole
  • Расширенный менеджер пакетов APT
  • Архиватор tar
  • Шпаргалка по архиватору zip
  • Блокирование ip адреса при помощи iptables
  • Программа iftop
  • Top – сведения об активности процессов в Ubuntu
  • i-Nex — аналог CPU-Z в Windows
  • Защита сервера — Fail2Ban

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *