Форум русскоязычного сообщества Ubuntu


Автор Тема: Индикатор раскладки клавиатуры, увеличивающийся при переключении. (Ubuntu 14.04)  (Прочитано 5020 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Azure

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 6017
  • Windows10, i3wm on Debian9, Manjaro20.0
    • Просмотр профиля
Которое индикатор переключения показывает. Или мы о чем говорим? Стоит поискать по «key», «kbd», «indicator»
В Линукс можно сделать ВСЁ что угодно, достаточно знать КАК !

Оффлайн DeadMetaler

  • Активист
  • *
  • Сообщений: 428
    • Просмотр профиля
Так это и есть Gnome-Shell. Встроенный функционал. Это в 3.16-3.18 есть. В старших не знаю как.
Arch Linux

adawdp

  • Гость
2015 Oct 20; 01:19 PM; Oakville, ON, Canada.

—Я Вас категорически приветствую, Azure !!! :)

— Я так понимаю что вот здесь
Код: (bash) [Выделить]
notify-send "${layout^^}" -i "${layout//\'/}"а именно вот тут наверное -i "${layout//\'/}" прописан вывод изображения, Вы там писали, что пользуетесь картинками xNeur.

— А если сторонние картинки как связать вывод раскладки с расположением картинки? Т.е под нужную картинку нужный текст раскладки?

Код: (bash) [Выделить]
notify-send -i /home/mif/.conky/En.png EN
notify-send -i /home/mif/.conky/Ru.png RU
— Ну чтобы было вот так:


— А кавычки одинарные „'RU'“ вокруг „RU“  они обязательны?

Оффлайн Azure

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 6017
  • Windows10, i3wm on Debian9, Manjaro20.0
    • Просмотр профиля
Раз пошёл разговор за кавычки, значит в целом работает 8)
Итак кавычки: меняем первую команду
Код: (bash) [Выделить]
layouts=($(gsettings get org.gnome.desktop.input-sources sources | grep -o "\b\w\w\b"))И вообще, я бы вынес её куда-нибудь в автозагрузку (возможно с export) — она нужна 1 раз: получить список установленных в системе языков между которыми надо переключаться. Более того, можно в этом списке поменять двухбуквенные названия на развернутые и вообще любой текст.
Сторонние картинки: специально для Вас
Код: (bash) [Выделить]
notify-send "${layout^^}" -i "$HOME/.conky/${layout^}.png"На будущее: если положить картинки (или ссылки на них) в $HOME/.local/share/icons/ они проиндексируются и сылаться на них будет можно по имени: без расширения и путей.
Код: (bash) [Выделить]
ln -s $HOME/.conky/[A-Z][a-z].png $HOME/.local/share/icons/Тогда достаточно
Код: (bash) [Выделить]
notify-send "${layout^^}" -i "${layout^}"
Так это и есть Gnome-Shell. Встроенный функционал.
Ну я не думаю, что это прям в ядре… :D 99% какая-то приложуха, поищите.
« Последнее редактирование: 20 Октября 2015, 21:17:01 от Azure »
В Линукс можно сделать ВСЁ что угодно, достаточно знать КАК !

adawdp

  • Гость
— Спасибо, Azure, всё очень красиво и здорово, а также хорошо тем, что не требует ничего дополнительного устанавливать. О том, что $HOME встроенная переменная, я страшно представить :) знал, а вот о помещении картинок в $HOME/.local/share/icons/, естественно нет :(

(Нажмите, чтобы показать/скрыть)

— В conky для демонстрации языка и флажков такая конструкция. Отображаются оба флажка (в скрипте только один „RU“)…
Код: (bash) [Выделить]
${font caviar dreams:size=24}${color 000000} ∗∗∗${exec skb 1}∗∗∗
${if_match "${exec skb 1}" == "Rus"} ${image /home/mif/.conky/Ru.png -p 0,875 -s 300x50}${else}${image /home/mif/.conky/En.png -p 0,875 -s 300x50}${endif}

— Это делалось до того, как Вы написали скрипт, потому пришлось скачать и установить SKB, а также установить ilbx11-dev, который потребовало SKB, громоздко получилось :(

— Скорее всего в comky  можно использовать вывод вашего скрипта и обойтись без установки SKB ilbx11-dev.

— А как в скрипте сделать, чтобы отображались оба флажка, там прописано по-моему всё только для для одного флажка „RU“?
« Последнее редактирование: 21 Октября 2015, 16:20:05 от adawdp »

Оффлайн Azure

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 6017
  • Windows10, i3wm on Debian9, Manjaro20.0
    • Просмотр профиля
как в скрипте сделать, чтобы отображались оба флажка, там прописано по-моему всё только для для одного флажка „RU“?
В переменной layout находится значение текущего языка в виде двубуквенного символа: us, ru, tr, fr и т.д. Следовательно опция -i команды notify вызывает иконку соответствующую текущему языку если она расположена в кэшируемой директории и имеет имя вида Ru.jpg, En.png, Fr.svg и т.д.
Посмотрите в моем сообщении есть скрин, где я быстро переключил раскладку и видны два сообщения notify — оба со своей иконкой.
В Линукс можно сделать ВСЁ что угодно, достаточно знать КАК !

adawdp

  • Гость
2015 Oct 21; 10:34 AM; Oakville, ON, Canada.

— Спасибо, Azure, ошибка моя в имени файла буква из другой раскладки, потому не отображался флажок :(
Как она туда попала непонятно изменил имя файла в соответствии с данными переменной и всё заработало…

Оффлайн Sancha

  • Автор темы
  • Любитель
  • *
  • Сообщений: 63
  • Я вроде здеся, но вроде и не здеся...
    • Просмотр профиля
Народ, отсутствовал почти сутки.

Вижу обсуждение и код скриптов :)

Сейчас почитаю, что тут без меня происходило.

ТС, как видно по состоянию на 30/01/2020 потерял интерес к созданной им теме (пометка Решено в теме отсутствует, тема оставлена не закрытой, сообщений в теме давно не было). Тема стародавняя (последнее сообщение в топике: 22/10/2015; последнее сообщение от ТС в топике: 21/10/2015). Модератором раздела принято решение закрыть тему.
--zg_nico
« Последнее редактирование: 30 Января 2020, 14:49:54 от zg_nico »
Вышел в астрал. Буду завтра.

adawdp

  • Гость
2015 Oct 21; 08:45 PM; Oakville, ON, Canada.

— Вот „итоги“ тут слегка всё утрировано, это тестовый пользователь… :)



« Последнее редактирование: 23 Октября 2015, 15:31:55 от adawdp »

 

Страница сгенерирована за 0.05 секунд. Запросов: 23.