Щойно я побачив дивний ярлик у редакторі dconf:
<Primary><Alt>KP_End
Що таке <Primary>?
Я також побачив Above-Tabключ. Я повністю розумію, про що йдеться, але чи були визначені ці ключові імена?
Щойно я побачив дивний ярлик у редакторі dconf:
<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", що посилається на цей ключ, і переключіть прив'язку за замовчуванням для cyc_group на Above_Tab
Дивіться також цю комісію у mutterта вихідних файлах meta-accel-parse.cтаmeta-accel-parse.h
<Primary>зазвичай означає (він же кнопка Windows), але його можна переосмислити (я десь бачив, як це відображено ). Вікі GNOME каже : SuperCtrlShiftCtrl
Основним ключем модифікатора системи повинен бути (клавіша Super / Windows / Command).
Арг. Тут є деяка плутанина. Хоча в GNOME Wiki йдеться про "ключ модифікатора первинної системи", він насправді може відрізнятися від "первинного ключа". У двох дописах на форумі зазначається, що Первинне - це , як я спочатку думав. Існує дворічна (виправлена) помилка щодо плутанини в і Початкова подана протиCtrlCtrlcompiz Ubuntu, яка говорить:
Раніше ми викликали клавішу управління,
<Control>але тепер це було змінено в GNOME, тому після натискання клавіші управління<primary>повертається. У compiz ми встановлюємо комбінації клавіш як (наприклад)<Control><Alt><Left>.
Мені залишаються пробні та помилкові: спробуйте Ctrlспочатку, потім Super.
<Primary>це не так Super, як ви зрозуміли; це, на жаль, неоднозначне формулювання. Тим НЕ менше, це дуже НЕ визначається як Ctrl- тобто не на OS X. Її метою є перетворення до основного ключу модифікатора хост - системи, яка на OS X є Command. Це дозволяє програмам, що використовують GTK +, автоматично отримувати ярлики, які відповідають нативним програмам OS X (наприклад, Command+ Zдля скасування) і не є незвичайними / жаткими (як Ctrlце використовується для різних речей там).
<Primary>безумовно, означає <Control>( Ctrl) у контексті Gtk на не-Macs та Command( ⌘) на машинах Mac. Наприклад, киньте Ctrl+qзараз автоматично відображається на ⌘+q. Також сторінка wiki, яку ви цитували, говорить лише про те, що <Super>ні до чого <Primary>.