Я только что увидел странный ярлык в dconf-editor
:
<Primary><Alt>KP_End
Что <Primary>
?
Я также видел Above-Tab
ключ. Я полностью понимаю, о чем идет речь, но где определяются эти имена ключей?
Это также относится к XFCE и xfconf-query
.
решение1
<Primary>
есть gtk+
вещь.
gtk+ 2.24.7
и gtk+ 3.2.1
представил концепцию платформенно-независимого модификатора ускорения, <Primary>
который можно использовать вместо <Control>
:
В Gtk+ (на момент написания статьи он был в Git для Gtk+-2.24 и выпущен в Gtk+-3.2.0) появилась новая возможность использовать дескриптор
<Primary>
вместо<Control>
ускорителей и привязок. Это сопоставит ускоритель с Command на OSX и с Control для всего остального.1
Согласно этомусовершить:
gtk: позволяет указывать ускорители платформенно-независимым способом. Ввести
<Primary>
строки ускорителей, которые разрешаются в GDK_CONTROL_MASK на X11/Win23 и в GDK_META_MASK на quartz.
он определен (вместе с другими ускорителями) вgtkaccelgroup.c
gtk_accelerator_name (guint accelerator_key,
GdkModifierType accelerator_mods)
{
static const gchar text_release[] = "<Release>";
static const gchar text_primary[] = "<Primary>";
static const gchar text_shift[] = "<Shift>";
static const gchar text_control[] = "<Control>";
static const gchar text_mod1[] = "<Alt>";
static const gchar text_mod2[] = "<Mod2>";
static const gchar text_mod3[] = "<Mod3>";
static const gchar text_mod4[] = "<Mod4>";
static const gchar text_mod5[] = "<Mod5>";
static const gchar text_meta[] = "<Meta>";
static const gchar text_super[] = "<Super>";
static const gchar text_hyper[] = "<Hyper>";
<Above_tab>
это оконный менеджер.
По этомусовершитьв metacity
:
Мы хотим, чтобы переключение между окнами приложения было легкодоступной операцией. Удобная и запоминающаяся привязка клавиш — клавиша над клавишей Tab, но символ клавиши для этой клавиши не одинаков для разных раскладок клавиатуры. Добавьте код, который вычисляет клавишу из геометрии XKB и магическое имя символа клавиши «Above_Tab», которое ссылается на эту клавишу, и измените привязку по умолчанию для cycle_group на Above_Tab
Смотрите также этосовершитьв mutter
исходных файлах иmeta-accel-parse.c
иmeta-accel-parse.h