Acabei de ver um atalho estranho no dconf-editor:
<Primary><Alt>KP_End
O que é <Primary>
?
Eu também vi uma Above-Tab
chave. Entendo completamente a que isso se refere, mas foram esses nomes de chave definidos?
fonte
Acabei de ver um atalho estranho no dconf-editor:
<Primary><Alt>KP_End
O que é <Primary>
?
Eu também vi uma Above-Tab
chave. Entendo completamente a que isso se refere, mas foram esses nomes de chave definidos?
<Primary>
é uma gtk+
coisa.
gtk+ 2.24.7
e gtk+ 3.2.1
introduzimos o conceito de um modificador acelerador independente de plataforma <Primary>
, que pode ser usado em vez de <Control>
:
um novo recurso é fornecido no Gtk + (no momento em que este artigo está escrito no Git for Gtk + -2.24 e lançado no Gtk + -3.2.0) para usar o
<Primary>
descritor no lugar de<Control>
aceleradores e ligações. Isso mapeará o acelerador para Command no OSX e Control para qualquer outra coisa. 1
De acordo com este commit :
gtk: permite especificar aceleradores de forma independente da plataforma. Introduzir
<Primary>
nas seqüências de aceleração, que são resolvidas para GDK_CONTROL_MASK no X11 / Win23 e GDK_META_MASK no quartzo.
é definido (junto com outros aceleradores) em 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>
é uma coisa do gerenciador de janelas.
De acordo com este commit em metacity
:
Queremos que a troca entre as janelas de um aplicativo seja uma operação facilmente acessível. A combinação de teclas conveniente e memorável é a tecla acima da tecla tab, mas o timbre dessa tecla não é consistente em diferentes layouts de teclado. Adicione um código que identifique a chave da geometria XKB e um nome mágico de chave "Above_Tab" que se refere a essa chave e alterne a ligação padrão do cycle_group para Above_Tab
Veja também este commit nos mutter
arquivos de origem meta-accel-parse.c
emeta-accel-parse.h
<Primary>
normalmente significa (também conhecido como botão do Windows), mas pode ser redefinido (eu já o vi mapeado em alguns lugares). O wiki do GNOME diz :SuperCtrlShiftCtrl
Argh. Há alguma confusão aqui. Embora o Wiki do GNOME diga a "chave primária do modificador do sistema", isso pode ser de fato diferente da "chave primária". Duas postagens no fórum observam que a Primária é , como eu pensava originalmente. Há um bug (corrigido) de dois anos sobre confusão e o Primary arquivado no Ubuntu, que diz:CtrlCtrl
compiz
Fico com tentativa e erro: tente Ctrlprimeiro e depois Super.
fonte
<Primary>
não éSuper
, como você percebeu; infelizmente, isso é apenas uma expressão ambígua. Ainda assim, é muito é não definido comoCtrl
- ou seja, não é no Mac OS X. O seu propósito é mapear a principal tecla modificadora do sistema host, que no OS X éCommand
. Isso permite que os aplicativos que usam GTK + obtenham automaticamente atalhos que correspondem aos aplicativos nativos do OS X (por exemplo,Command
+Z
para desfazer) e não são incomuns / dissonantes (comoCtrl
é usado para coisas diferentes).<Primary>
certamente significa<Control>
(Ctrl
) no contexto Gtk em não Macs eCommand
(⌘
) em máquinas Mac. Por exemplo, sairCtrl+q
agora é mapeado automaticamente para⌘+q
. Além disso, a página wiki que você citou está falando apenas sobre<Super>
nada a ver<Primary>
.