Меню

Как настроить мышь в убунту

Настройка мыши

(Только одна мышь (PS/2 или USB) и только один дисплей.)

Мышь называют mouse (множ. mice или mouses), или pointer, или pointing device.

Разъёмы PS/2 — отдельные для клавиатуры и для мыши, нужно подключать правильно; или один совмещённый. Для USB-мышей подойдёт любой порт USB с подходящим разъёмом.

Устройства распознаются и частично настраиваются совместно ядром и демоном устройств (в настоящее время — udev).

Подключение/обнаружение мыши регистрируется в журнале ядра (dmesg или journalctl, некоторые числа могут отличаться, вывод сокращён):

# Мышь/клавиатура не подключена или не распознана.

i8042: PNP: No PS/2 controller found.

PNP: PS/2 Controller [PNP0303:PS2K,PNP0f03:PS2M] at 0x60,0x64 irq 1,12

serio: i8042 AUX port at 0x60,0x64 irq 12

mousedev: PS/2 mouse device common for all mice

input: ImExPS/2 Logitech Explorer Mouse as /devices/platform/i8042/serio1/input/input2

usb 1-8: New USB device found, idVendor=046d, idProduct=c077

usb 1-8: New USB device strings: Mfr=1, Product=2, SerialNumber=0

usb 1-8: Product: USB Optical Mouse

И, если есть, в журнале X Window (здесь показана только USB-мышь, вывод сокращён):

$ grep -E ‘.*udev.*(M|m)ouse’ /var/log/Xorg.0.log

(II) config/udev: Adding input device Logitech USB Optical Mouse (/dev/input/event14)

(II) config/udev: Adding input device Logitech USB Optical Mouse (/dev/input/mouse0)

Распознанная мышь видна в списке устройств ввода (input):

$ cat /proc/bus/input/devices | grep -A 4 -E ‘^N.*(M|m)ouse’

N: Name=»ImExPS/2 Logitech Explorer Mouse»

H: Handlers=mouse1 event2

N: Name=»Logitech USB Optical Mouse»

H: Handlers=mouse0 event14

Если USB-мышь распознана ядром, то видна по команде lsusb (вывод сокращён):

# Название может отличаться от указанного в ценнике.

# Например, эта мышь продаётся под маркой Logitech B100.

Bus 001 Device 004: ID 046d:c077 Logitech, Inc. M105 Optical Mouse

Если поступают события от мыши (хотя бы просто движения), в консоли появятся кракозябры:

$ sudo cat /dev/input/mouse0

Некоторые возможные причины проблем с работой мыши:

— неисправность самой мыши, порта системного блока;

— ошибочные файлы настроек модулей (modprobe), gpm, udev или X Window. Простейшее решение — попробовать удалить или временно переместить «лишние» (на ваш взгляд) файлы настроек;

— ошибки в ACPI. Стоит попробовать отключить ACPI в строке параметров ядра при загрузке:

(В поиске сведений и попытках отследить/реинициализировать устройство может пригодиться udevadm.)

Драйвер мыши отчасти входит в ядро (соединение по PS/2 или USB), отчасти — в консольный демон мыши или в графическую среду (протокол распознавания сигналов). Ядерный драйвер для PS/2-мыши — psmouse. Для работы USB-мыши от ядра требуется скомпилировать его с поддержкой USB HID (Human Interface Device): CONFIG_USB_?HCI_*=y; CONFIG_?HID_*=m (знаки ? и * — метасимволы оболочки). Примерный список загруженных модулей для USB HID (вывод сокращён):

$ lsmod | grep -E ‘(usb|hid)’

hid_generic 16384 0

hid 118784 3 i2c_hid,hid_generic,usbhid

Несколько мышей либо тачпад и мышь — без дополнительных настроек практически считаются одним устройством, то есть их события равносильны и указатель мыши один на всех. Общий файл-устройство — /dev/input/mice; отдельные — /dev/input/mouse0 и далее по номерам. Старые файлы: /dev/psaux — для PS/2-мыши; /dev/mouse — ссылка для совместимости.

Основные пользовательские программные параметры мыши:

— доступные кнопки и колёсики;

— соответствие физических и желаемых (логических) кнопок, то есть, например, при настройке мыши для левшей;

— «интервал двойного щелчка» (double click interval);

— «разрешение» — чувствительность сенсора перемещений, в dpi, это не столько скорость, сколько плавность движения указателя;

— собственно «скорость» перемещения указателя (speed или velocity), также упоминаемая как «чувствительность» (sensivity);

— «порог ускорения» (acceleration threshold) — ход, пройдённый на нормальной скорости, после чего включается перемещение указателя с увеличенной скоростью;

— коэффициент ускорения — множитель (acceleration numerator) или делитель (. denominator) относительно нормальной скорости;

В текстовом интерфейсе

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

В командной строке мышью можно выделять фрагмент текста левой кнопкой (как в большинстве GUI-редакторов), а потом щелчком средней кнопки (колёсика) добавлять копию выделенного в конец командного выражения. Правый щелчок добавляет выделение к уже имеющемуся.

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

В псевдографическом интерфейсе с мышью обращаются так же, как и в GUI, но с учётом ограничений (активная точка размером с один текстовый символ). Например, в Midnight Commander щелчком мыши можно выделить пункт списка, активировать меню (как по клавише F9), нажать виджет-кнопку («F1 Help», «F2 Menu» и остальные).

За предоставление мыши в текстовом интерфейсе отвечает демон gpm (General Purpose Mouse Interface). Демон может обработать три кнопки, которые с его точки зрения являются левой, средней (колёсико) и правой.

Если нет файлов для системы инициализации, то можно запустить демона вручную:

$ sudo gpm -m /dev/input/mice -t exps2

Опция -m указывает файл-устройство. Опция -t — тип (семейство моделей) мыши; аргумент exps2 должен подойти для обычной мыши с колёсиком. Если вместо exps2 набрать help, демон выведет список типов и завершится.

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

Некоторые аргументы (через пробел, как -m и -t выше):

-B — соответствие физических и желаемых кнопок (123 — по умолчанию, для правшей; 321 — для левшей);

-i — интервал двойного щелчка в миллисекундах (по умолчанию 250);

-r — скорость перемещения указателя в процентах (от 1 до 100, по умолчанию 10);

-d — порог ускорения (в символах, 2 и выше, по умолчанию 25);

-a — коэффициент ускорения (выше 1, по умолчанию 2).

Документация: страницы man и info для gpm.

В GUI (X Window/Xorg и чуть-чуть о Wayland)

В графических средах мышь обычно настраивают GUI-программами, например:

— Mouse (kcmshell5 mouse) из раздела Hardware/Input Devices в центре настроек System Settings (systemsettings5), среда KDE 5;

— Mouse and Touchpad (xfce4-mouse-settings) для центра настроек Settings (xfce4-settings-manager), среда XFCE 4.

Мышь считается набором пронумерованных кнопок (buttons):

2 — средняя (middle, обычное колёсико (wheel), когда нажимается для щелчка);

3 — правая (right);

4 — обычно колёсико при прокрутке вверх;

5 — обычно колёсико при прокрутке вниз;

6 и прочие — дополнительные элементы на игровых мышах.

Посмотреть, как распознаются события от мыши (или иного устройства ввода) можно программой xev (от X event) в эмуляторе терминала (вывода очень много, включая любое перемещение мыши):

# Появляется окно, события внутри которого выводятся.

# Нажата левая кнопка: «ButtonPress. button 1».

ButtonPress event, serial 37, synthetic NO, window 0x4800001,

root 0x2b8, subw 0x0, time 2002006, (91,81), root:(642,495),

state 0x0, button 1, same_screen YES

# Отпущена: «ButtonRelease. button 1».

ButtonRelease event, serial 37, synthetic NO, window 0x4800001,

root 0x2b8, subw 0x0, time 2002142, (91,81), root:(642,495),

state 0x100, button 1, same_screen YES

# Начато движение колёсиком вверх: «ButtonPress. button 4».

ButtonPress event, serial 37, synthetic NO, window 0x4800001,

root 0x2b8, subw 0x0, time 2006510, (91,81), root:(642,495),

state 0x0, button 4, same_screen YES

# Закончено: «ButtonRelease. button 4».

ButtonRelease event, serial 37, synthetic NO, window 0x4800001,

root 0x2b8, subw 0x0, time 2006510, (91,81), root:(642,495),

state 0x800, button 4, same_screen YES

Максимум кнопок для Xorg — 24 штуки; по умолчанию — 3. Обычно определяется автоматически. Или принудительно в файле настроек.

Файлы настройки Xorg — текстовые «.conf». Списки мест хранения есть в man-страницах xorg и xorg.conf. Наиболее частые:

— куча отдельных файлов «.conf» в /etc/X11/xorg.conf.d/;

— куча отдельных файлов «.conf» в /usr/share/X11/xorg.conf.d/.

Файлы нумеруют (если нужно, с ведущими нолями) в начале имени, чтобы указать очередь обработки, например: 80-custom-mouse-setup.conf.

Секция настройки мыши выглядит примерно так:

# Старое название секции мыши/тачпада — Pointer.

# Любое название в разумных пределах; можно с пробелами.

# Потом следует добавить строку в секцию «ServerLayout».

# CorePointer по смыслу — «главная мышь».

# InputDevice «Mouse0» «CorePointer»

# Старый собственный драйвер X Window — mouse,

# более новый — evdev, новейший — libinput.

# Протокол распознавания сигналов, подобно типу для gpm.

# Для обычной мыши подойдёт ExplorerPS/2,

# даже если она для разъёма USB.

# Ещё варианты: ImPS/2, USB. Список — в документации X.

# Или Auto, то есть сервер X попробует угадать.

Option «Protocol» «ExplorerPS/2»

Option «Device» «/dev/input/mice»

# Максимум кнопок. Необязательно.

Option «Buttons» «5»

# Для движения манипулятора предполагаются три оси:

# Y (от себя — к себе);

# Mapping — примерно «переназначение» или «привязка».

# Ось Z для мыши — обычно прокрутка (scrolling) колёсиком.

# Здесь движение колёсиком вперёд привязано к движению

# по оси Z вниз; назад — вверх. Интерпретировать это

# как прокрутку — задача отдельных программ/библиотек.

# У вас могут быть другие номера кнопок, смотрите вывод xev.

Option «ZAxisMapping» «4 5»

# Предположительно, для мыши с двумя колёсиками:

# Option «ZAxisMapping» «4 5 6 7»

# Соответствие физических и желаемых кнопок.

# По умолчанию — «1 2 3 8 9 10» (пропущены ZAxisMapping).

# Для левши — «3 2 1 8 9 10».

Option «ButtonMapping» «1 2 3 8 9 10»

# Частота опроса сигналов мыши в секунду.

# Помогает настроить более плавную реакцию на движение руки.

# Не для всех моделей мышей.

# Option «SampleRate» «число»

# Для USB-мыши можно попробовать настроить модуль HID ядра.

# Число — периодичность опроса в миллисекундах.

# По умолчанию — 8, то есть с частотой 1000/8 = 125 Гц.

# Разрешение в dpi. Не для всех моделей мышей.

# Option «Resolution» «число»

# «Чувствительность», множитель перемещений.

# Если выше единицы и мышь с высоким разрешением,

# то по некоторым пикселам попасть не удастся.

# Применяют как замедлитель (дробь меньше единицы)

Читайте также:  Как настроить часы самсунг галакси watch актив

# для мышей с высоким разрешением. По умолчанию «1.0».

# Option «Sensitivity» «число»

# Симуляция удержания кнопки нажатой.

# Нажать и отпустить дополнительную кнопку (обозначена Д)

# вместо удерживания основной (О):

# Option «DragLockButtons» «Д1 О1 Д2 О2»

# Или нажать общую дополнительную кнопку, потом основную:

# Option «DragLockButtons» «ОД1»

# В конце перетаскивания снова нажать дополнительную.

Для большего удобства в правке конфигурационных файлов можно запросить X-сервер создать файл с автоматически сгенерированными секциями (на основе уже подключённых устройств).

# Запустить в текстовой консоли.

# Число после двоеточия — номер дисплея ($DISPLAY).

# Первый дисплей — ноль, уже занят.

$ sudo X :1 -configure

В домашнем каталоге появится файл xorg.conf.new, который следует переместить/переименовать в /etc/X11/xorg.conf. Дальше правьте его по усмотрению.

man-страницы X, xorg.conf;

документация ядра input/input.txt, admin-guide/kernel-parameters.txt

Программа xinput показывает списки и свойства для распознанных работающей системой X Window устройств ввода; позволяет изменять многие свойства. (Вывод не показан.)

# Показать древовидный список.

# Устройства могут отобразиться несколько раз.

# Опции —list —long — максимум подробностей.

# Отобразить отдельное устройство — указать его номер

# (число после «id=», например, 12) или название в кавычках.

# Опции здесь можно вводить без дефисов.

# Распознавание событий от устройства ввода, наподобие xev.

# Или для более новой подсистемы ввода XInput2.

$ xinput test-xi2 12

# Показать разные доступные свойства.

$ xinput list-props «Logitech USB Optical Mouse»

# Показать параметры ускорения.

$ xinput get-feedbacks 12

# Основной способ настройки устройств — опция [—]set-prop.

# Свойство можно указывать как название в кавычках

# или как число без скобок.

# Делитель скорости мыши (если меньше единицы, то ускорит).

$ xinput set-prop 12 «Device Accel Constant Deceleration» .5

$ xinput set-prop 12 296 1.0

# Некоторые иные способы задания свойств.

# Соответствие физических и желаемых кнопок.

# Аналогично опции «ButtonMapping» в файле «.conf».

$ xinput set-button-map 12 1 2 3 8 9 10

# Установить параметры ускорения.

# Порядок операндов: номер, порог, множитель, делитель.

$ xinput set-ptr-feedback 12 4 2 1

# Игнорировать (disable), задействовать (enable) устройство.

$ xinput —disable 12

$ xinput —enable 12

# Уведомлять об изменении свойств из списка list-props.

# Отключить — как обычно, Ctrl C.

$ xinput watch-props 12

# Снимок состояния кнопок (нажато или нет) и координат.

$ xinput query-state 12

Программа xset может показывать и изменять некоторые свойства работающей подсистемы X Window.

# Показать параметры ускорения указателя.

# Подобно опции get-feedbacks для xinput.

$ xset q | grep -A 1 ‘Pointer Control’

acceleration: 2/1 threshold: 4

# Установить параметры ускорения.

# Подобно опции set-ptr-feedback для xinput.

# Но xset действует на все подключённые мыши/тачпады.

# Порядок операндов: множитель, делитель, порог.

Документация: man-страницы xinput, xset.

Также могут пригодиться программы easystroke, imwheel, xautomation, xbindkeys, xmodmap.

Тема указателей — набор изображений формата «X11 cursor» (расширение «*.xmc» обычно не используется) и некоторых текстовых настроек.

Изображения можно открыть в GIMP. Программа xcursorgen может преобразовывать файлы формата PNG в X11 cursor.

Готовые темы есть, например, здесь:

/.icons/, /usr/share/icons/, /usr/share/pixmaps/. Подкаталог — название темы; ещё более нижний подкаталог — cursors/. Например: /usr/share/icons/DMZ-White/cursors/ для темы «DMZ-White».

В подкаталоге с названием темы могут быть текстовые файлы index.theme и cursor.theme. Формат — аналогичный файлам «*.desktop», например:

Comment=White accessible cursor theme

# «Наследуемая» тема означает, что недостающие изображения

# будут взяты из неё, если текущая тема неполна.

# В крайнем случае — изображение по умолчанию (default):

Каталоги хранения можно указать в переменной окружения XCURSOR_PATH. Содержимое — аналогично PATH.

Ещё файлы настроек:

/.Xresources, /etc/X11/Xresources. Добавить строку, наподобие

Может потребоваться применить содержимое файла

/.Xresources в обход графической среды. Тогда нужно добавить строку

/.xprofile» (аналогично файлу «

Диспетчер дисплея (display manager) может сам себе задать тему указателей.

В графической подсистеме Wayland каждый композитный диспетчер (compositor: KWin, mutter, Weston) обращается с мышью по-своему, но в настоящее время — через библиотеку libinput. Программа xinput при обращении к libinput работает только для X Window; программа xset не влияет на устройства ввода даже в X Window, если задействована libinput. Поэтому настраивать мышь в Wayland придётся GUI-программами графической среды (или средствами навроде gsettings). Библиотека libinput сама предоставляет некоторые оптимальные низкоуровневые настройки. Есть наборы параметров движения указателя (acceleration profiles), здесь не рассказано.

Дубликаты не найдены

GNU/Linux

665 постов 12.1K подписчиков

Правила сообщества

Все дистрибутивы хороши.

Трепещите, виндузятники. Это всего лишь настройки мыши.

Да, две недели назад накатил убунту второй системой, за каждым чихом в консоль, спасибо интернету на каждый чих подобный мануал. Хотя пока что мозгов не хватает понять как настроить скролл так что бы настройки не сбивались с перезагрузкой.

И это ещё Убунту — типа юзер френдли.

Как вспомню свои размышления «Kali Linux или Black Arch?» тянет смеяться с такой наивности. Боюсь я бы их даже установить не смог.

Звучит как баг, на ланчпаде не искали? Там часто воркеранды пишут. Либо вы чего-то особенного хотите от скролла

Всего лишь изменить скорость скролла. В windows это стандартная штука с незапамятных времён, в линукс несколько строчек команд и создание конфига
Тут например вроде всё необходимое описано, хотя прежде читал несколько большую статью:
http://www.goubuntu.ru/kak-izmenit-skorost-kolesika-myshi-v-.

кто-нибудь понял, о чём этот пост?!

алсо, даже в генте у меня НИ РАЗУ не возникало проблем с работой мыши. для кого эта простыня, для LFS-ников?

Ошибки, порой, время от времени, встречаются в самых неожиданных местах.

И очень хорошо, если кто-то по таким вопросам пишет обьяснялки.

Из личного опыта: к Убунту Студио крутили граф. планшет Джениус. Дьявола было бы проще призвать. Инфа 146%.

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

Есть debian stable, mate.

Регулировки мыши не работают НИ-ХУ-Я.

Т.е. как то по дефолтным настройкам работает. И всё.

Unixforum нихера не знает.

Когда учился, кодил, была такая идея — использовать 2 мыши в шутерах. Левой — головой крутить, правой — стрелять.

Не знаю почему вспомнил это прочтя текст.

Устарело лет на шесть. Никакого configure и статики конфига нету с тех пор штатно, аналогично про GPM и мышь в консоли — просто не нужно. Курсоры в 99% переписываюттся всеми DM и WM/DE так же.

Поздравляю, вы заслужили ачивку «Самый скучный пост этого месяца(года, столетия, милениума)». В комплекте идет плюс

и ты думаешь кому то понадобится эта хуета?

Виндузятникам в холиварах. И да в посте то, что можно сделать, а не то, что необходимо делать.

я если чё *nix admin frontend backend twich.tv и мне ни разу не нежна мышка и GUI , а это долбоибизм изложен

Шрифты в Linux

(НЕ является инструкцией по руссификации интерфейса.)

Что такое шрифт

Файл шрифта (font file) содержит наборы изображений (рисунков) символов и соответствующие символам коды. Технически шрифты могут быть растровыми (bitmap fonts) или векторными (outline/vector fonts).

Растровые шрифты обычно применяют для текстового интерфейса. Рисунок символа (глиф) здесь — прямоугольный набор точек. Например, если размер текстового экрана 640×480 пикселов, а терминал настроен в режиме 80×30 (80 символов в 30 строках), то подойдёт шрифт, в котором ширина глифа — 8 пикселов, а высота — 16 (16×8).

Пример того, как может выглядеть буква А в растровом шрифте с глифами размером 16×8 точек. Пустые/фоновые пикселы показаны символом

Пустое место сверху можно оставить, чтобы строки не сливались, снизу — чтобы уместить, например, буквы р или у.

Отрисовка растровых глифов на экране — относительно простая операция отображения уже готовых наборов точек на пикселы дисплея. Но растровые шрифты обычно содержат глифы только одного размера. В GUI нередко требуется отрисовывать символы разных размеров (разного кегля) одновременно, поэтому применяют векторные шрифты. Как и прочие векторные изображения, глифы таких шрифтов содержат наборы параметров для математических фигур; при использовании шрифта программа «растеризУет» глифы (создаёт набор точек). Готовые растеризованные глифы называют «кэшем шрифта» (font cache).

Высоту заглавных символов называют «кеглем» (font size). Есть несколько шкал кегля; можно условно считать, что одна единица высоты примерно равна 0,3-0,4 мм. Например, «сделать двенадцатым кеглем» означает, что высота заглавных символов будет примерно 3,6-4,8 мм; «шрифт высотой десять» — 3-4 мм. Предполагается, что на разных мониторах растровые шрифты одинакового размера (в текстовом интерфейсе) выглядят различно; но векторные шрифты одного кегля (в GUI) должны выглядеть одинаково.

На не очень новых мониторах с разрешением около 100 dpi кегль 5 и ниже — неразборчиво мал; для виджетов обычно выбирают кегль 10 или 12.

Шрифты бывают моноширинными (monospace) и пропорциональными (proportional или не указано). «Моноширинный» означает, что все глифы одинаковой ширины, занимают одинаковое место по горизонтали; хотя между соседними символами в линии может быть видно немного свободного пространства (не пробелы), но сдвинуть символы поближе друг к другу не получится. Текстовый интерфейс — традиционно моноширинный. То есть, например, 80 символов в линии (видимой строке); символы выровнены по вертикали (строго друг над другом). В пропорциональном шрифте, например, символы Щ и Л — разной ширины; в линиях одного виджета (например, текстовой области) может умещаться разное число символов.

Основную графическую идею (стиль) шрифта называют «гарнитУрой» (typeface, или font face). Символы одной гарнитуры схожи примерно так же, как инструменты из одного набора или предметы посуды из одного сервиза.

Есть несколько классификаций гарнитур. В простых случаях выделяют «рубленые» шрифты (без засечек, sans serif) — обычно для заголовков или надписей; и шрифты «с засечками» (serif) — обычно для основного текста. ЗасЕчка — небольшой декоративный поперечный штрих на конце черты некоторого символа. «Декоративные» шрифты (в названии может быть script) — имитация письма от руки. Есть шрифты, состоящие разных вспомогательных символов (symbols, dingbats), например, шахматных фигур, маркеров или орнаментов.

Читайте также:  Т62а приставка как настроить

Внутри гарнитуры могут быть дополнительные стили — «начертания» (slants); обычно это нормальное начертание (Medium, Normal, Regular или Roman), курсИв[ное] (Italic, или Oblique), жирное/полужирное (Bold/Semibold). Начертания хранят в отдельных файлах; некоторые графические редакторы или офисные текстовые процессоры могут имитировать начертания, имея лишь один файл с нормальным начертанием.

Шрифты в текстовой консоли

Формат файлов шрифтов для текстового режима Linux — PC Screen Font («.psf» или «.psfu»). Здесь u означает Unicode. (Раньше для русского языка были кодировки KOI-8R и CP1251.) Документация по PC Screen Font есть в пакете kbd (/usr/share/doc/kbd/).

Сами файлы шрифтов обычно хранят в /usr/share/consolefonts, /usr/share/syscons/fonts/, /usr/share/kbd/consolefonts или в /usr/share/fonts. Обычно файлы дополнительно сжаты gzip. Размер — несколько КиБ. Файлы, включающие и глифы кириллицы, обычно имеют в имени Cyrillic или сокращённо cyr.

Традиционный шрифт — VGA или Fixed, более новый и приятный для глаз — Terminus. Пример файла шрифта гарнитуры Fixed:

$ file -z CyrSlav-Fixed16.psf.gz

CyrSlav-Fixed16.psf.gz: Linux/i386 PC Screen Font v1 data, 256 characters, Unicode directory, 8×16 (gzip compressed data, last modified: Wed Feb 1 12:35:37 2017, max compression, from Unix)

В настоящее время текстовая консоль Linux может использовать шрифты в кодировке Unicode (по умолчанию — кодировка CP437 и встроенный в ядро шрифт). В шрифте допустимо 512 глифов; возможно отображение 8 цветов. Или 256 глифов, но 16 цветов. Показать набор символов текущего шрифта (выполнять в текстовой консоли, не в эмуляторе терминала):

Для правильного соответствия глифов кодам Unicode — нужна вспомогательная таблица (translation map, unimap), которая раньше хранилась в отдельном файле, а сейчас может входить в основной файл шрифта (обычно, но не обязательно, с расширением «.psfu»). Таблицы unimaps («.acm» или «.acm.gz») хранят в /usr/share/consoletrans/, /usr/share/unimaps или /usr/share/syscons/scrnmaps/. Программа psfgettable служит для копирования таблицы unimap из шрифта; psfaddtable — для добавления.

Вспомогательные программы для правки шрифтов: nafe ( https://sourceforge.net/projects/nafe/ ), psftools ( https://tset.de/psftools/index.html ), rw-psf ( https://github.com/talamus/rw-psf ). Они конвертируют символы в ascii-art (вроде вышеуказанного примера буквы А) или растровые изображения. После правки в текстовом или графическом редакторе можно конвертировать файл обратно в шрифт.

Настройки применения шрифта — файл /etc/default/console-setup или

Применить настройки на текущей консоли:

Пакеты программ: kbd, console-setup. Документация: man-страницы console-setup, setfont, setupcon. В инсталляциях с systemd может быть файл настроек /etc/vconsole.conf и сервис systemd-vconsole-setup.service. Документация: man-страницы systemd-vconsole-setup.service, vconsole.conf.

Шрифты в графической консоли

Форматы шрифтов для GUI:

Portable Compiled Font (PCF, «.pcf» или сжатый «.pcf.gz»), растровый;

Bitmap Distribution Format (BDF, «.bdf» или сжатый «.bdf.gz»), растровый;

TrueType Font (TTF, «.ttf»), векторный;

OpenType Font (OTF, «.otf»), векторный;

Type 1 PostScript font ASCII (PFA, «.pfa»), векторный;

Type 1 PostScript font binary (PFB, «.pfb»), векторный;

и ещё несколько более редких.

Наиболее популярные форматы: TTF, OTF (и их контейнер для веб-страниц — Web Open Font Format, «.woff»/».woff2″).

Размеры файлов — от сотен КиБ до нескольких МиБ или ещё больше; зависит от количества символов (которых могут быть тысячи). Обычно файлы, содержащие латиницу и кириллицу, специально не помечаются. Файлы, содержащие символы восточных языков, содержат в имени указание на язык, например: arabic, thai.

NotoSans-Regular.ttf: TrueType font data

$ ls -ks NotoSans-Regular.ttf

Графическая подсистема X Window System задействует шрифты сама или через библиотеки. X-программа (клиент сервера X Window) может запросить отрисовку шрифта по записи формата X Logical Font Description (XLFD). Запись состоит из 14 полей через дефисы. Пример:

Здесь cronyx — семейство шрифтов, times — гарнитура, medium и i (italic) — начертания, 14 — кегль, 100 — предполагаемые разрешения дисплея по горизонтали и вертикали, iso10646 и следующее поле — кодировка. Остальные поля менее важны; звёздочка является метасимволом и предлагает программе самой выбрать значение поля.

Значения можно подбирать GUI-программой xfontsel. Кнопка select копирует запись в буфер X, откуда её можно вставить в редактор средней кнопкой мыши (колёсиком).

Посмотреть список доступных серверу шрифтов — xlsfonts.

Посмотреть таблицу глифов — xfd (или вообще указать некоторой X-программе использовать заданный шрифт опцией -fn):

$ xfd -fn ‘-cronyx-times-medium-i-*-*-14-*-100-100-*-*-iso10646-1’

Кодировка iso10646 — одно из названий Unicode. Поддержка Unicode в самой X Window System работает плохо, поэтому сейчас юникодные шрифты обрабатываются отдельными библиотеками. Но желательно иметь хоть какой-то шрифт в одной из кодировок семейства iso8859 или иной — просто для начального запуска сервера X Window.

Настройки применения шрифтов в общем файле /etc/X11/xorg.conf:

# Прочие параметры этой секции.

В указанных каталогах следует запустить программы mkfontscale и mkfontdir. В результате должны появиться файлы encodings.dir, fonts.alias, fonts.dir.

Шрифт можно подключить временно, вручную:

xset +fp /usr/share/fonts/X11/misc

# Перечитать списки шрифтов.

Вспомогательная шрифтовая библиотека для GUI — Fontconfig. Она ведёт каталоги установленных в системе шрифтов и предоставляет программам шрифты, подходящие по требованиям. Библиотека Fontconfig сама не занимается растеризацией шрифтов.

К библиотеке прилагается семейство программ fc-*, в том числе:

fc-cache — создать/пересоздать кэш шрифтов;

fc-list — показать список установленных в системе шрифтов (выводится много информации, в том числе поддерживаемые языки). Возможно задать условие, например (вывод сокращён):

# Показать установленные шрифты, имеющие символы русской кириллицы.

DejaVu Sans,DejaVu Sans Light

Nimbus Roman No9 L

fc-validate — узнать, есть ли в шрифте символы алфавита для заданного языка, например:

$ fc-validate -l ru NotoSans-Regular.ttf

NotoSans-Regular.ttf:0 Satisfy the coverage for ru language

$ fc-validate -l en NotoSans-Regular.ttf

NotoSans-Regular.ttf:0 Satisfy the coverage for en language

$ fc-validate -l ru NotoKufiArabic-Regular.ttf

NotoKufiArabic-Regular.ttf:0 Missing 66 glyph(s) to satisfy the coverage for ru language

$ fc-validate -l en NotoKufiArabic-Regular.ttf

NotoKufiArabic-Regular.ttf:0 Missing 72 glyph(s) to satisfy the coverage for en language

$ fc-validate -l ar NotoKufiArabic-Regular.ttf

NotoKufiArabic-Regular.ttf:0 Satisfy the coverage for ar language

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

Документация: man-страницы; HTML-документация в /usr/share/doc/fontconfig. Обозначения языков — по RFC-3066/ISO 639.

Основной XML-файл настроек Fontconfig — /etc/fonts/fonts.conf. Документация: man fonts-conf. Там же указаны имена других файлов, например пользовательский

Каталоги для хранения шрифтов: общий /usr/share/fonts/, пользовательский

/.fonts/). В fonts.conf можно указать другие.

Желательно иметь в GUI: пропорциональные шрифты с засечками и без них (для большинства виджетов), моноширинный шрифт (для эмулятора терминала), шрифт со вспомогательными символами (для офисного текстового процессора).

Семейства свободно доступных шрифтов, которые считают приятными для глаз: Cantarell, Droid, Noto, Ubuntu. Шрифты со вспомогательными символами: OpenSymbol, Symbola; или Dingbats и Wingdings из Windows.

Для установки шрифта, поддерживаемого Fontconfig, нужно скопировать его файлы в один из каталогов хранения (можно во вложенный каталог). Желательно правильно установить целевые права, например 444 для файлов и 555 для каталогов. Потом запустить fc-cache (может сработать автоматически).

Офисные документы, электронные книги и другие файлы документов/изображений нередко могут хранить внутри себя сами файлы шрифтов (полностью или частично), но часто — содержат только что-то вроде ссылки на имя шрифта. Если скопировать файл документа/изображения на другой компьютер, где нет подходящего шрифта — программа либо покажет пустые/неверные глифы, либо попробует (зависит от программистов) «подставить» хоть какой-то подходящий шрифт (substitute a font). Даже при подстановке вид документа/изображения может быть испорчен из-за того, что размеры глифов в разных шрифтах не совпадают.

Для офисных документов популярны семейства шрифты из Windows: Arial, Courier New, Times и другие (форматы TTF, OTF).

Их можно скопировать из инсталляции Windows (каталог Windows\Fonts\).

В дистрибутивах могут быть пакеты, копирующие файлы шрифтов из Интернета. Помещать сами эти шрифты в пакет запрещено лицензионным соглашением.

Можно скопировать их из Интернета самостоятельно и распаковать программой cabextract. Ищите в репозиториях сервиса SourceForge.net по выражению «Microsoft core fonts».

Для подстановки можно применять шрифты семейства Liberation (соответственно Sans, Mono, Serif). Они, насколько возможно, «метрически совместимы» (metrically compatible) со шрифтами из Windows, то есть глифы сходных размеров. Другие метрически совместимые шрифты:

семейство Croscore (соответственно Arimo, Cousine, Tinos);

[Astra] Sans, [Astra] Serif и Mono от фирмы Paratype;

семейство XO Fonts (Oriel, Courser, Thames, символьные шрифты Symbol и Windy).

В графической подсистеме X Window System растеризацией занимается своя библиотека Xft. В последние годы операции растеризации передаются внешним библиотекам: Cairo, FreeType, Pango. Графическая подсистема Wayland сама никак не взаимодействует со шрифтами, все программы обращаются к внешним библиотекам.

Растеризованные глифы малого кегля могут выглядеть грубо/нечётко. Чтобы улучшить вид, применяют методы отрисовки под общим названием «сглаживание» (anti-aliasing). Иногда сглаженные глифы выглядит отчасти цветными из-за «субпиксельного рендеринга» — то есть дорисованные пикселы не чёрные или серые, а других цветов. Эффект зависит от порядка расположения цветных элементов (субпикселов) в пикселах.

В шрифтах TrueType могут быть дополнительные встроенные данные (hints) по отрисовке; их применение называется «хИнтинг» (hinting). В библиотеке FreeType наилучший алгоритм отрисовки (TrueType Bytecode Interpreter) был запрещён патентами примерно до 2010 года/версии 2.4.

Источник



Про мышки в Ubuntu.

Большинство тех кто работает в Linux хоть раз в жизни встречались с такой проблемой как вертикальный скроллинг мышки.

На днях у меня сломалась лазерная мышка Logitech. В принципе я выявил закономерность по поломкам мышек Logitech: 1 мышка работает — 2 года (при активном использовании). Поскольку я уже 2 мышки Logitech сменил, то решил попробовать что нибудь другой, мой выбор пал на Microsoft ARC Mouse

Читайте также:  Как настроить блютуз hands free kit

Стоимость данного манипулятора

Купил, подключил к компьютеру. Все сразу заработало, курсор бегает. Но вот проблема со скроллингом по вертикали. Сразу же после вставки мышки он проматывал все страницы мгновенно. После перезагрузки скроллинг изменился, он стал проматывать

3 строки. Что согласитесь весьма не удобно. Покопавшись в интернете и перелопатив кучу статей, так и ничего толкового не нашел.

Как правило все решается случаем. Вот и сегодня совершенно случайно установил из Центра приложений Ubuntu программу «Манипуляторы».

Оказалась, что данная программа решает всю мою головную боль. Достаточно поставить галочку «Use wheel emulation» и выбрать цифру для промотки (buttons).

Источник

Как настроить мышь в убунту

Переходим на Ubuntu

Как изменить скорость колесика мыши в Ubuntu

До недавнего времени я даже не думал, как можно изменить скорость работы колёсика мыши. Однако, недавно мне подарили новую мышь, колесо которой работало очень медленно. Я с удивлением обнаружил, что в центре управления Unity / GNOME просто нет такой настройки.

После долгих поисков я выяснил, что самый простой способ сделать это — утилита «imwheel», работающая из командной строки и позволяющая настроить работу колесика мыши. Среди прочего, она позволяет изменять скорость перелистывания при прокрутке колёсика, и сегодня я расскажу вам, как это сделать.

Вот что вам потребуется, если вам нужно изменить скорость прокрутки при врщаении колеса мыши в Ubuntu, но ваш рабочий стол не поддерживает такой опции:

  1. Установите imwheel. Поскольку приложение доступно в официальных репозиториях Ubuntu, можно установить его из Synaptic, центра приложений Ubuntu и т.п., или просто выполнив следующую команду:
  2. Затем, создайте файл «.imwheelrc» в домашней папке. Например, можно использовать следующую команду для открытия этого файла в Gedit:

И вставьте в этот файл следующие строки:

Цифра «3» в конце второй и третьей строк отражает количество линий, прокручиваемых за один раз («3» указывается по умолчанию) — измените это число в зависимости от ваших потребностей. По завершении сохраните файл.

Первая строка («.*») из приведенного выше кода указывает, в каких приложениях будут использоваться правила. «.*» обозначает все приложения, но вы можете настроить разные значения для разных приложений, заменив «.*» на название окна. Подробную информацию можно найти в справке к программе («man imwheel»).

И, наконец, последние 4 строки кода нужны для того, чтобы работали комбинации прокрутки колёсика мыши с нажатыми кнопками Ctrl / Shift (например, для масштабирования страницы в браузере), что является поведением по умолчанию.

  • Запустите imwheel (выполните в терминале «imwheel —kill»). Параметр «—kill» используется для того, чтобы закрыть все остальные работающие экземпляры приложения, чтобы они не пересекались. Это важно для правильной настройки. Другой способ убедиться в том, что другие экземпляры imwheel не запущены, выполнить команду «killalll imwheel».Кроме того, если у вашей кнопки есть кнопки навигации назад/вперед, они перестанут работать в указанной выше конфигурации. Для такой мыши запускать imwheel нужно следующим образом:
  • Поскольку изменения применяются только когда приложение imwheel запущено, нужно добавить его в автозапуск. Для этого откройте диалоговое окно «Система — Параметры — Запускаемые приложения» и нажмите кнопку «Добавить». В поле «Название» и «Команда» введите строку запуска (imwheel —kill или imwheel —kill —buttons «4 5», если дополнительные кнопки не работают).
    • Важно понимать, что imwheel считывает параметры из файла

    /.imwheelrc при запуске приложения и не меняет их в случае обновления файла конфигурации. Если вы изменили файл конфигурации, то для того, чтобы изменения вступили в силу, нужно закрыть imwheel и запустить его заново. Для этого можно либо выполнить команду «killall imwheel», либо запустить новый экземпляр с параметром «—kill»).

  • Этот способ не поможет решить такие проблемы, как очень быстрая прокрутка. Если вы столкнулись с такой проблемой, то в большинстве случаев вам поможет аппаратное отключение мыши и подключение её снова.
  • Если вам требуется изменить скорость прокрутки колесика только в браузере Firefox или Chrome, можно обойтись и без этого приложения, используя этот совет для Firefox и это расширения для Chrome.
  • Источник

    Дополнительные кнопки мыши в Linux

    Дмитрий Корнев

    Я долго не знал, как подступиться к настройке дополнительных кнопок мыши в Linux. В отличие от Windows здесь нет или почти нет для этого программок с графическим интерфейсом. Меня пугало, что придётся возиться с командной строкой и какими-нибудь мутными конфигами. Теперь, вспоминая эти страхи, как-то даже смешно. На деле всё оказалось слишком просто.

    Инструкция годиться для любых современных версий Ubuntu, как впрочем и многих других дистрибутивов Linux. Все сразанное далее опробовано в Elementary OS 0.4 Loki, 5.0 Juno, 5.1 Hera. Я пользуюсь этой операционной системой, поэтому в статье чуть больше внимания будет именно ей.

    Моя мышка Logitech VX Revolution из-за которой пришлось заморочиться:

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

    Аналогично всё настраивается и для мышек очень многих других моделей и производителей. Позднее я настраивал:

    Для начала открываем консоль. В основном все действия будут производиться с её помощью.

    Устанавливаем необходимый софт:

    Драйвер или что-то ещё дополнительное для вашей мышки искать не надо! Она ведь у вас работает, курсор движется? Значит всё и так уже есть, обычно этого достаточно. Убедиться в работе всех кнопок мышки поможет следующая команда:

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

    Закройте маленькое окошко, чтобы закончить.

    Следующая команда создаёт в домашней папке текущего пользователя файл конфигурации, редактируя его потом мы будем настраивать кнопки. Вы должны выполнять эту команду под тем пользователем, под которым обычно работаете в системе. Если вы её выполните под root, то соответственно файл поместиться в домашнюю папку root, а это часто не то, что надо.

    В моём случае файл разместился по такому пути:

    Теперь редактируем его своим любимым редактором. Если у вас такового нет, могу порекомендовать встроенные редакторы файловых коммандеров mc или Double Commander.

    По умолчанию в файле на 40 строке присутствует включенный пример:

    Можно его отключить (закомментировать), установив вначале строк символ # . Следом пишем свои команды. Например, я для боковых кнопок мышки добавил две следующие:

    Из кода видно, что происходит. В первом случае, держим левый «Ctrl», нажимаем кнопку «Insert», отпускаем левый «Ctrl». Вся эта эмуляция клавиатуры происходит по нажатию кнопки мышки под номером 9.

    Комбинации кнопок Ctrl+Insert и Shift+Insert для копирования и вставки считаются общепринятыми, как и Ctrl+C и Ctrl+V. В настройки лучше прописывать именно первый вариант. Он будет работать всегда, при любой включенной раскладке клавиатуры.

    А вот комбинации Ctrl+C и Ctrl+V будут работать, только если будет включена латинская. Во всяком случае так в Elementary OS, возможно в простой Ubuntu такого нет. На англоязычных интернет-ресурсах часто советуют следующий код, т.к. у них нет трудностей с раскладками:

    Пример, когда нужно просто эмулировать нажатие кнопок клавиатуры:

    Эмуляция нажатия комбинации CTRL + левая кнопка мыши, чтобы по дополнительной кнопке 10 мыши в веб-браузере открывать вкладку в новом окне:

    Следующей командой можно посмотреть справку, где приводятся коды других функциональных кнопок клавиатуры, которые могут пригодиться для конфига:

    Ещё можно узнать коды вообще любых кнопок так:

    А такая команда позволяет протестировать сделанные в файле .xbindkeysrc настройки:

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

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

    В Ubuntu 20.04 есть специальная программа «Автоматически запускаемые приложения». Скорее всего там xbindkeys уже будет, тогда ничего делать не нужно.

    В Elementary OS заходим в «Приложения» → «Параметры системы» → «Приложения» → Вкладка «Автозапуск» → В нижнем левом углу есть кнопка «Добавить программу в автозапуск. ». Здесь просто вписываем «xbindkeys»:

    Всё, можно пользоваться. Согласитесь, ничего сложного.

    Я когда с этим разбирался, то у меня был косяк в том, что нужные мне дополнительные кнопки мыши не распознавались xev. Вот именно те две кнопки, которые я и хотел настроить. С остальными сразу всё было без проблем.

    В теории, если такая ситуация, то это означает, что используемый вами драйвер мышки не обеспечивает работу всех её кнопок. Где брать другой драйвер под Linux — не понятно. Производители железа редко когда заморачиваются и делают для своих устройств драйверы под эту операционную систему.

    Но благо, эта ситуация крайне редкая, обычно, как я понял из информации в интернете, кнопки мышек распознаются сразу без проблем. В моём случае это была аппаратная проблема. Две нужные мне кнопки тупо вообще не работали. Видать, слишком давно ими не пользовался. Разобрал грызуна, почистил, покликал, — заработали. После этого повесил на них нужные действия за считанные минуты.

    Определить, что кнопки вообще не работают помог другой компьютер с Windows. А так, наверное, еще долго бы ломал голову, почему нифига не работает и что с этим делать.

    Источник