1

Я хотел бы повторно связать ярлык следующей / предыдущей вкладки в терминале XFCE с Ctrl+PgDn / PgUp до Ctrl+Tab / Ctrl+Shift+Tab. Кажется, он не работает, редактируя accels.scm или изменяя ярлык в интерактивном режиме, наводя курсор мыши на меню и нажимая нужную комбинацию клавиш.

Для этого отлично работают другие клавиши, это просто ярлыки с использованием Tab . Я предполагаю, что они особенные для GTK и даже не доходят до приложения. Есть ли способ переопределить это?

1 ответ1

1

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

Прямые ответы

[...] проблема заключается только в ярлыках, включающих Tab. Я предполагаю, что они особенные для GTK и даже не доходят до приложения.

Ваше предположение верно. Ограничение действительно относится к прикладным программам GTK+, и Xfce Terminal является одной из них. И это не только сочетания клавиш, которые включают клавишу Tab, но также несколько других клавиш, например PageUp, PageDown, F10, которые нельзя использовать по отдельности (без клавиши-модификатора).

Есть ли способ переопределить это?

Скорее всего нет, хотя обходной путь может существовать. Лучший способ - искать альтернативы клавише Tab или использовать другие прикладные программы, которые позволяют это. Смотрите также следующие объяснения.

Объяснено авторами

Во-первых, существует устаревшая ошибка 3524 , сообщающая, что «Сочетания клавиш на следующей / предыдущей вкладке ничего не делают». Наиболее актуальный комментарий был приведен ниже.

[Комментарий 9: Ник Шермер 2009-10-10 13:49:08 CEST]

Xfwm и терминал используют разные способы обработки акселераторов (xfwm напрямую из x, терминал использует gtk). в gtk рассматривается как недопустимый ускоритель, поэтому для исправления этот терминал проверит, действителен ли ускоритель перед его настройкой. В результате нажатие с сегодняшнего дня ничего не будет делать в редакторе ярлыков.

Во-вторых, в « Переполнении стека» есть пост с просьбой «PyGTK: разрешить использование Tab в AccelGroup». Соответствующая часть вопроса приведена ниже.

При использовании GTK.AccelGroup любая комбинация с Tab charater недействительна. Теперь я понимаю, что навигация по пользовательскому интерфейсу осуществляется с помощью этого ключа [...]

Объяснено документацией

Что касается "навигации по пользовательскому интерфейсу с использованием этой клавиши", в документации разработчика GNOME отмечен этот вопрос в теме ввода с клавиатуры, как указано ниже.

Клавиатурная навигация

[...] Tab - это стандартная клавиша для перемещения по интерфейсу с GTK+ и GNOME.

Кроме того, ярлыки, использующие клавишу Tab, имеют специальные функции.

Стандартные навигационные клавиши

Tab и Shift+Tab Перемещает фокус клавиатуры на следующий / предыдущий элемент управления

Ctrl+Tab и Shift+Ctrl+Tab Перемещает фокус клавиатуры из включающего виджета к следующему / предыдущему элементу управления в тех ситуациях, когда одна вкладка имеет другую функцию.

Ctrl+Tab и Shift+Ctrl+Tab Перемещает фокус клавиатуры на следующую / предыдущую группу элементов управления.

Так что более ранние комментарии имеют смысл сейчас.

Исправленный ответ (2017.04.04)

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

Почему клавиша Tab не может использоваться как ярлык? Причина была проста: клавиша Tab и ее сочетания клавиш зарезервированы для GTK+ и GNOME.

Несмотря на то, что GNOME Terminal через GSettings позволяет использовать клавиши быстрого доступа для ярлыков, не существует эквивалентного хака для Xfce Terminal через Xfconf к этой дате ответа.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .