Я только что увидел странный ярлык в dconf-editor:
<Primary><Alt>KP_End
Что такое <Primary>
?
Я также видел Above-Tab
ключ. Я полностью понимаю, о чем идет речь, но были ли определены эти ключевые имена?
источник
Я только что увидел странный ярлык в dconf-editor:
<Primary><Alt>KP_End
Что такое <Primary>
?
Я также видел Above-Tab
ключ. Я полностью понимаю, о чем идет речь, но были ли определены эти ключевые имена?
<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 на кварце.
это определено (наряду с другими ускорителями) в 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
:
Мы хотим, чтобы переключение между окнами приложения было легко доступной операцией. Удобное и запоминающееся связывание клавиш - это клавиша над клавишей табуляции, но раскладка клавиатуры для этой клавиши не одинакова для разных раскладок клавиатуры. Добавьте код, который вычисляет ключ из геометрии XKB, и волшебное имя ключевого слова «Above_Tab», которое ссылается на этот ключ, и переключите привязку по умолчанию для cycle_group на Above_Tab
Смотрите также этот коммит в mutter
исходных файлах meta-accel-parse.c
иmeta-accel-parse.h
<Primary>
обычно означает (он же кнопка Windows), но может быть переопределен (я видел это в некоторых местах). Вики GNOME говорит :SuperCtrlShiftCtrl
Argh. Здесь есть некоторая путаница. Хотя в GNOME Wiki сказано «первичный ключ модификатора системы», на самом деле это может отличаться от «первичного ключа». В двух сообщениях на форуме отмечается, что Primary , как я изначально думал. Существует двухлетняя (исправленная) ошибка, связанная с путаницей в Primary, поданной в Ubuntu, которая гласит:CtrlCtrl
compiz
Я остался с методом проб и ошибок: Ctrlсначала попробуй , потом Super.
источник
<Primary>
нетSuper
, как вы поняли; это просто к сожалению двусмысленная формулировка. Тем не менее, он в значительной степени не определен какCtrl
- то есть он не на OS X. Его цель - сопоставить с основным ключом модификатора хост-системы, который на OS X естьCommand
. Это позволяет приложениям, использующим GTK +, автоматически получать ярлыки, которые соответствуют родным приложениям OS X (например,Command
+,Z
чтобы отменить) и не являются необычными / раздражающими (поскольку тамCtrl
используется для разных вещей).<Primary>
определенно означает<Control>
(Ctrl
) в контексте Gtk на не-Mac иCommand
(⌘
) на компьютерах Mac. Например, выходCtrl+q
теперь автоматически сопоставлен с⌘+q
. Кроме того , вики - странице вы процитировали говорит только о<Super>
ничего общего с<Primary>
.