Автор Тема: Индикатор раскладки клавиатуры в верхнем регистре  (Прочитано 999 раз)

Оффлайн KSS

  • Начинающий
  • *
  • Сообщений: 14
Индикатор раскладки клавиатуры в Alt WS (Mate) выводится маленькими прописными буковками (ru/en).
Через dconf-edior можно, конечно, увеличить шрифт и даже сделать его жирным. Так до сих пор и делаю. В xfce и cinnamon можно настроить показ раскладки в верхнем регистре RU/EN. Думал в Mate это невозможно, однако в Mate РедОС из коробки буквы раскладки выводятся в верхнем регистре - значит и в Mate можно. Для меня это критично - привычка, удобство и прочее. Как можно такое сделать ?
Всем спасибо.

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 19 926
    • Домашняя страница
    • Email
Пропатчить пакет.
Андрей Черепанов (cas@)

Оффлайн N0rbert

  • alt linux team
  • ***
  • Сообщений: 231
  • snk@
в Mate РедОС из коробки буквы раскладки выводятся в верхнем регистре - значит и в Mate можно

Я тоже обратил внимание на этот момент, но было некогда разбираться. А вот сейчас разберемся в деталях.

В РЕД ОС индикатор раскладки показывает раскладку картинками, а не текстом.
Исходники от РЕД ОС получить нельзя, но в этом случае достаточно бинарного пакета redos-icons-alternative - подмененные флаги они хранят по пути /usr/share/icons/RedOS-Alternative/scalable/animations/

В Альте с MATE это тоже возможно.
Нужно включить отображение национальных флагов вместо текста при показе раскладки, далее создать пользовательский каталог для флагов, затем создать сами флаги с помощью следующих команд от обычного пользователя:

gsettings set org.mate.peripherals-keyboard-xkb.kbd layouts "['us', 'ru']"
gsettings set org.mate.peripherals-keyboard-xkb.indicator show-flags true

mkdir -p ~/.local/share/icons/mate/scalable/animations
cd ~/.local/share/icons/mate/scalable/animations

pango-view --font=mono --background=transparent -qo ru.svg -t "<span size='x-large'>RU</span>" --markup --margin="0 0 0 0"
pango-view --font=mono --background=transparent -qo us.svg -t "<span size='x-large'>EN</span>" --markup --margin="0 0 0 0"

затем выйти из системы и зайти снова. Результат будет выглядеть как в РЕД ОС (см. картинку ru-en.png ниже).
Тестировал на Starterkit MATE p10. На Workstation p10 может не сработать из-за ошибки 43635 (временное решение - удаление пакета theme-mate-windows).

Еще есть другой вариант - найти шрифт, в котором все буквы заведомо только прописные, и затем назначить его индикатору раскладки через gsettings следующими командами:
gsettings set org.mate.peripherals-keyboard-xkb.indicator show-flags false
gsettings set org.mate.peripherals-keyboard-xkb.indicator font-family "CAPS_FONT"

где CAPS_FONT - имя существующего шрифта из заглавных букв (например, LASER, сохраненный по пути ~/.local/share/fonts).
Результат см. ниже на картинке laser.png.
« Последнее редактирование: 08.12.2023 01:23:05 от N0rbert »

Оффлайн KSS

  • Начинающий
  • *
  • Сообщений: 14
Отлично!
Спасибо, большую работу проделал и, главное, есть решение. Попробую обязательно.