Home | History | Annotate | Line # | Download | only in compat
      1 default partial xkb_compatibility "misc" {
      2 
      3     virtual_modifiers  Alt,Meta,Super,Hyper,ScrollLock;
      4 
      5     // Interpretations for some other useful keys.
      6 
      7     interpret Terminate_Server {
      8 	action = Terminate();
      9     };
     10 
     11     setMods.clearLocks= True;
     12 
     13     // Set the "Alt" virtual modifier.
     14 
     15     interpret Alt_L+Any {
     16 	virtualModifier= Alt;
     17 	action = SetMods(modifiers=modMapMods);
     18     };
     19 
     20     interpret Alt_L {
     21 	action = SetMods(modifiers=Alt);
     22     };
     23 
     24     interpret Alt_R+Any {
     25 	virtualModifier= Alt;
     26 	action = SetMods(modifiers=modMapMods);
     27     };
     28 
     29     interpret Alt_R {
     30 	action = SetMods(modifiers=Alt);
     31     };
     32 
     33     // Set the "Meta" virtual modifier.
     34 
     35     interpret Meta_L+Any {
     36 	virtualModifier= Meta;
     37 	action = SetMods(modifiers=modMapMods);
     38     };
     39 
     40     interpret Meta_L {
     41 	action = SetMods(modifiers=Meta);
     42     };
     43 
     44     interpret Meta_R+Any {
     45 	virtualModifier= Meta;
     46 	action = SetMods(modifiers=modMapMods);
     47     };
     48 
     49     interpret Meta_R {
     50 	action = SetMods(modifiers=Meta);
     51     };
     52 
     53     // Set the "Super" virtual modifier.
     54 
     55     interpret Super_L+Any {
     56 	virtualModifier= Super;
     57 	action = SetMods(modifiers=modMapMods);
     58     };
     59 
     60     interpret Super_L {
     61 	action = SetMods(modifiers=Super);
     62     };
     63 
     64     interpret Super_R+Any {
     65 	virtualModifier= Super;
     66 	action = SetMods(modifiers=modMapMods);
     67     };
     68 
     69     interpret Super_R {
     70 	action = SetMods(modifiers=Super);
     71     };
     72 
     73     // Set the "Hyper" virtual modifier.
     74 
     75     interpret Hyper_L+Any {
     76 	virtualModifier= Hyper;
     77 	action = SetMods(modifiers=modMapMods);
     78     };
     79 
     80     interpret Hyper_L {
     81 	action = SetMods(modifiers=Hyper);
     82     };
     83 
     84     interpret Hyper_R+Any {
     85 	virtualModifier= Hyper;
     86 	action = SetMods(modifiers=modMapMods);
     87     };
     88 
     89     interpret Hyper_R {
     90 	action = SetMods(modifiers=Hyper);
     91     };
     92 
     93     // Sets the "ScrollLock" virtual modifier and
     94     // makes it actually lock when pressed.  Sets
     95     // up a map for the scroll lock indicator.
     96     interpret Scroll_Lock+Any {
     97 	virtualModifier= ScrollLock;
     98 	action = LockMods(modifiers=modMapMods);
     99     };
    100 
    101     include "ledscroll"
    102 
    103     include "misc(assign_shift_left_action)"
    104 };
    105 
    106 partial xkb_compatibility "assign_shift_left_action" {
    107     // Because of the irrevertable modifier mapping in symbols/pc,
    108     // <LFSH> is getting bound to the Lock modifier when using
    109     // symbols/shift(both_capslock), creating unwanted behaviour.
    110     // This is a quirk, to circumvent the problem.
    111     interpret Shift_L {
    112 	action = SetMods(modifiers = Shift);
    113     };
    114 };
    115