---
description: 'Доступные возможности в виртуальной консоли, полезные для обеспечения доступности'
next: books/accessibility/colors
params:
  path: /books/accessibility/virtual-terminal/
part: 'Часть II. Зрение'
prev: books/accessibility/partii
showBookMenu: 'true'
tags: ["Accessibility", "Terminal"]
title: 'Глава 2. Виртуальный терминал'
weight: 5
---

[[virtual-terminal]]
= Виртуальный терминал
:doctype: book
:toc: macro
:toclevels: 1
:icons: font
:sectnums:
:sectnumlevels: 6
:sectnumoffset: 2
:partnums:
:source-highlighter: rouge
:experimental:
:images-path: books/accessibility/virtual-terminal/

ifdef::env-beastie[]
ifdef::backend-html5[]
:imagesdir: ../../../../images/{images-path}
endif::[]
ifndef::book[]
include::shared/authors.adoc[]
include::shared/mirrors.adoc[]
include::shared/releases.adoc[]
include::shared/attributes/attributes-{{% lang %}}.adoc[]
include::shared/{{% lang %}}/teams.adoc[]
include::shared/{{% lang %}}/mailing-lists.adoc[]
include::shared/{{% lang %}}/urls.adoc[]
toc::[]
endif::[]
ifdef::backend-pdf,backend-epub3[]
include::../../../../../shared/asciidoctor.adoc[]
endif::[]
endif::[]

ifndef::env-beastie[]
toc::[]
include::../../../../../shared/asciidoctor.adoc[]
endif::[]

[[vt4-intro]]
== Введение

Виртуальный терминал, обычно упоминаемый и документированный как man:vt[4], является встроенной в систему extref:{handbook}ports[виртуальной консолью]. Он устанавливается по умолчанию, предоставляет интерфейс командной строки и запускается автоматически при загрузке. В этой главе представлен обзор и примеры ключевых функций и утилит, связанных с визуальной доступностью.

[[vt4-colors]]
== Цвета

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

[[vt4-colors-loader]]
=== Loader.conf

Цвета могут быть установлены и сохранены с помощью файла man:loader.conf[5]. Чтобы изменить цвет по умолчанию, добавьте строку в следующем формате: `kern.vt.color._colornum_.rgb="_colorspec_"`, где:

 - `_colornum_` — это числовой идентификатор цвета, который можно настроить (см. таблицу ниже).
 - `_colorspec_` — это спецификация цвета, представленная либо в виде разделённого запятыми RGB-триплета (красный, зелёный и синий, каждое значение от 0 до 255), либо в виде шестнадцатеричного значения в стиле HTML.

.Палитра по умолчанию: цвет, номер цвета, цвет по умолчанию в rgb, цвет по умолчанию в html.
[options="header", cols="1,1,1,1"]
|===
| Цвет | _colornum_ | _colorspec_ по умолчанию в RGB | _colorspec_ по умолчанию в html

| Черный (black)
| 0
| 0,0,0
| #000000

| Темно-красный (dark red)
| 1
| 127,0,0
| #7f0000

| Темно-зеленый (dark green)
| 2
| 0,127,0
| #00ff00

| Темно-желтый (dark yellow)
| 3
| 196,161,0
| #c4a100

| Темно-синий (dark blue)
| 4
| 51,102,163
| #3366a3

| Тёмный пурпурный (dark magenta)
| 5
| 127,0,127
| #7f007f

| Темно-голубой (dark cyan)
| 6
| 0,127,127
| #007f7f

| Светло-серый (light gray)
| 7
| 191,191,191
| #bfbfbf

| Темно-серый (dark gray)
| 8
| 115,130,138
| #73828a

| Светло-красный (light red)
| 9
| 255,0,0
| #ff0000

| Светло-зеленый (light green)
| 10
| 0,255, 0
| #00ff00

| Светло-желтый (light yellow)
| 11
| 255,255,0
| #ffff00

| Светло-синий (light blue)
| 12
| 115,158,207
| #739ecf

| Светло-пурпурный (light magenta)
| 13
| 255,0,255
| #ff00ff

| Светло-голубой (light cyan)
| 14
| 0,255,255
| #00ffff

| Белый (white)
| 15
| 255,255,255
| #ffffff

|===

[[vt4-example-loader-conf-colors]]
.Установить белый фон, черный текст, сообщения при загрузке системы — красным цветом.
[example]
====
[.filename]#/boot/loader.conf#

[.programlisting]
....
# Background black to white
kern.vt.color.0.rgb="255,255,255"

# Text light gray to black
kern.vt.color.7.rgb="0,0,0"

# Boot white to red
kern.vt.color.15.rgb="255,0,0"

....
====

[[vidcontrol]]
=== Vidcontrol

Утилита man:vidcontrol[1] позволяет интерактивно настраивать цвета. Используйте опцию `show` для отображения списка доступных цветов:

[source, shell]
....
% vidcontrol show
....

Чтобы установить цвет переднего плана, используйте `vidcontrol _цвет_`. Например, чтобы установить цвет текста зелёным:

[source, shell]
....
% vidcontrol green
....

Чтобы установить как цвет переднего плана, так и цвет фона, используйте `vidcontrol _передний_план_ _фон_`. Например, чтобы установить синий текст на зелёном фоне:

[source, shell]
....
% vidcontrol blue green
....

Настройки, выполненные с помощью man:vidcontrol[1], не сохраняются после выключения. Чтобы сделать настройки постоянными, добавьте следующую строку в man:rc.conf[5]: `allscreens_flags="-c _цвет_переднего_плана_ _цвет_фона_"`.

[[vt4-vidcontrol-colors-rc]]
.Установить синий цвет переднего плана и зелёный цвет фона.
[example]
====
[.filename]#/etc/rc.conf#

[.programlisting]
....
allscreens_flags="-c blue green"

....
====

[NOTE]
====
Установка параметра `allscreens_flags="-c _colors_"` в файле [.filename]#/etc/rc.conf# вступает в силу после загрузки системы. Чтобы изменить цвета во время процесса загрузки, отредактируйте файл [.filename]#/boot/loader.conf#, как описано ранее в разделе crossref:virtual-terminal[vt4-colors-loader,Loader.conf].
====

[[vt4-resolution]]
== Разрешение экрана

Параметр `kern.vt.fb.default_mode="<ширина>x<высота>"` в man:loader.conf[5] позволяет настроить разрешение экрана. Технически, он определяет режим отображения виртуального терминала, позволяя управлять размером элементов, отображаемых на экране.

[[vt4-example-resolution]]
.Устанавливает ширину в 800 и высоту в 600.
[example]
====
[.filename]#/boot/loader.conf#

[.programlisting]
....
kern.vt.fb.default_mode="800x600"

....
====

[[vt4-font]]
== Шрифт

Виртуальный терминал позволяет настроить используемый шрифт, а система поддерживает установку и использование дополнительных шрифтов.

[[vt4-select-font]]
=== Выбор шрифта

Утилиты man:vidfont[1] и man:vidcontrol[1] могут загрузить шрифт из [.filename]#/usr/share/vt/fonts/#. Для просмотра списка доступных шрифтов:

[source, shell]
....
% ls /usr/share/vt/fonts
....

Обычно имя файла имеет формат `<имя>-<ширина>x<высота>`, где:

 - `<имя>` — это название шрифта.
 - `<ширина>x<высота>` — это размер.

man:vidfont[1] предоставляет интерактивное меню в текстовом пользовательском интерфейсе для выбора шрифта. Выполните следующую команду:

[source, shell]
....
% vidfont
....

В качестве альтернативы, man:vidcontrol[1] предоставляет интерфейс командной строки: `vidcontrol -f _шрифт_`. Пример для `spleen-32x64.fnt`:

[source, shell]
....
% vidcontrol -f spleen-32x64.fnt
....

[TIP]
====
Совет: Вы можете опустить расширение _.fnt_ при указании имени файла. Например, чтобы загрузить `spleen-32x64.fnt`, используйте:

[source, shell]
....
% vidcontrol -f spleen-32x64
....
====

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

[[vt4-vidcontrol-font-rc]]
.Выберите шрифт для загрузки при каждом запуске.
[example]
====
[.filename]#/etc/rc.conf#

[.programlisting]
....
allscreens_flags="-f spleen-32x64.fnt"

....
====

[[vt4-new-font]]
=== Новые шрифты

Утилита man:vtfontcvt[8] позволяет преобразовать шрифт в формат .fnt для использования в виртуальном терминале. Преобразованный шрифт должен быть скопирован в [.filename]#/usr/share/vt/fonts/# и выбран, как описано ранее в разделе crossref:virtual-terminal[vt4-select-font, Выбор шрифта].

[[vt4-bell]]
== Bell

Можно активировать звуковой сигнал терминала:

[source, shell]
....
# sysctl kern.vt.enable_bell=1
....

Чтобы конфигурация сохранялась после перезагрузки, сохраните её в man:loader.conf[5] или man:sysctl.conf[5].

[[vt4-example-bell]]
.Активировать звуковой сигнал при каждой загрузке.
[example]
====
Добавить в [.filename]#/boot/loader.conf# или [.filename]#/etc/sysctl.conf#

[.programlisting]
....
kern.vt.enable_bell=1

....
====
