<Primary> สำหรับคีย์คืออะไร


18

ฉันเพิ่งเห็นทางลัดแปลก ๆ ใน dconf-editor:

<Primary><Alt>KP_End

คือ<Primary>อะไร

ฉันเห็นAbove-Tabกุญแจด้วย ฉันเข้าใจอย่างถ่องแท้ถึงสิ่งที่อ้างอิง แต่มีการระบุชื่อคีย์เหล่านั้นหรือไม่

คำตอบ:


16

<Primary>เป็นgtk+สิ่ง
gtk+ 2.24.7& gtk+ 3.2.1แนะนำแนวคิดของตัวปรับแต่งแพลตฟอร์มแบบไม่เชื่อเรื่องพระเจ้า<Primary>ซึ่งสามารถนำมาใช้แทน<Control>:

สิ่งอำนวยความสะดวกใหม่มีให้ใน Gtk + (ตามที่เขียนไว้ใน Git สำหรับ Gtk + -2.24, และเปิดตัวใน Gtk + -3.2.0) เพื่อใช้<Primary> descriptor แทน<Control>ตัวเร่งและการผูก นี่จะแมปคันเร่งกับคำสั่งบน OSX และเพื่อควบคุมสิ่งอื่น 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:

เราต้องการสลับระหว่างหน้าต่างของแอปพลิเคชันเพื่อให้สามารถใช้งานได้ง่าย ปุ่มลัดที่สะดวกและน่าจดจำคือกุญแจเหนือปุ่มแท็บ - แต่คีย์ymสำหรับกุญแจนั้นไม่สอดคล้องกันในรูปแบบแป้นพิมพ์ที่แตกต่างกัน เพิ่มรหัสที่ใช้คีย์จากรูปทรงเรขาคณิต XKB และชื่อคีย์มายากลแบบ "Above_Tab" ที่อ้างถึงคีย์นี้และเปลี่ยนการเชื่อมโยงเริ่มต้นสำหรับ cycle_group เป็น Above_Tab

ดูเพิ่มเติมนี้กระทำในmutterและแหล่งที่มาของไฟล์meta-accel-parse.cและmeta-accel-parse.h


เอ้ยสับสนอย่างไร คุณหมายถึงว่าปกติแล้วมันเป็นของ GNOME ยกเว้นว่าเหนือ - แท็บและหลักนั้นเป็นแบบพึมพำเท่านั้น? (เช่นผู้พึมพำเพียงคนเดียวสามารถเข้าใจคำอธิบายทางลัดที่มีคำเหล่านั้นได้หรือไม่)
Robert Siemer

5

<Primary>มักจะหมายถึง(ปุ่ม aka Windows) แต่สามารถกำหนดใหม่ได้ (ฉันได้เห็นมันถูกแมปไปในบางแห่ง) วิกิพีเดีย GNOME กล่าวว่า :Ctrl SuperCtrlShift

คีย์ตัวปรับเปลี่ยนระบบหลักควรเป็น (คีย์ Super / Windows / Command)

โอ๊ะ มีความสับสนอยู่ที่นี่ แม้ว่า GNOME Wiki จะพูดว่า "ตัวปรับเปลี่ยนระบบหลัก" ซึ่งอันที่จริงอาจแตกต่างจาก "กุญแจหลัก" โพสต์ในฟอรัม สองข้อความโปรดทราบว่าหลักคือCtrlตามที่ฉันคิดไว้ มีข้อผิดพลาด (คงที่) สองปีเกี่ยวกับความสับสนCtrlและการยื่นต่อcompizใน Ubuntu ซึ่งกล่าวว่า:

ก่อนหน้านี้เราเคยเรียกใช้ปุ่มควบคุม<Control>แต่ตอนนี้มีการเปลี่ยนแปลงใน GNOME ดังนั้นเมื่อกดปุ่มควบคุมจะ<primary>ถูกส่งกลับ ใน Compiz เราตั้งเป็นแป้นพิมพ์ลัด <Control><Alt><Left>(ตัวอย่าง)

ฉันทิ้งให้อยู่กับการพิจารณาคดีและข้อผิดพลาด: ลองก่อนแล้วCtrlSuper


2
<Primary>ไม่ใช่Superตามที่คุณรับรู้ นั่นเป็นเพียงถ้อยคำที่คลุมเครือเท่านั้น ยังคงเป็นอย่างมากที่ไม่ได้กำหนดให้เป็นCtrl- คือมันไม่ได้เกี่ยวกับวัตถุประสงค์ OS X ได้มันคือการ map คีย์ปรับปรุงระบบโฮสต์หลักซึ่งใน OS X Commandคือ สิ่งนี้ช่วยให้แอปพลิเคชันที่ใช้ GTK + รับทางลัดโดยอัตโนมัติที่ตรงกับแอปพลิเคชัน OS X ดั้งเดิม (เช่นCommand+ Zเพื่อเลิกทำ) และไม่ผิดปกติ / สั่นสะเทือน ( Ctrlใช้สำหรับสิ่งต่าง ๆ ที่นั่น)
underscore_d

คำตอบนี้งงมาก! <Primary>ไม่แน่นอนหมายความว่า<Control>( Ctrl) ในบริบท Gtk สำหรับผู้ที่ไม่ใช่ Mac และCommand( ) ในเครื่อง Mac ยกตัวอย่างเช่นเลิกตอนนี้แมปโดยอัตโนมัติCtrl+q ⌘+qอีกทั้งหน้าวิกิที่คุณอ้างถึงนั้นเป็นเพียงการพูดคุยเกี่ยวกับ<Super>สิ่งที่ไม่<Primary>เกี่ยวข้อง
Cas

@Cas ดีรู้ว่าพวกเขาปรับปรุง wiki
muru

เป็นไปได้ไหมที่จะทำการแมป Primary to Super บน non-quartz (โดยไม่ต้องสร้างใหม่)?
Edoardo Vacchi
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.