



partial modifier_keys
xkb_symbols "rctrl_switch" {
  key <RCTL> {[  ISO_Level5_Shift  ], type[group1]="ONE_LEVEL" };
};


partial modifier_keys
xkb_symbols "lsgt_switch" {
  key <LSGT> {[  ISO_Level5_Shift  ], type[group1]="ONE_LEVEL" };
};


partial modifier_keys
xkb_symbols "ralt_switch" {
  key <RALT> {[  ISO_Level5_Shift  ], type[group1]="ONE_LEVEL" };
};


partial modifier_keys
xkb_symbols "caps_switch" {
  key <CAPS> {[  ISO_Level5_Shift  ], type[group1]="ONE_LEVEL" };
};


partial modifier_keys
xkb_symbols "menu_switch" {
  key <MENU> {[  ISO_Level5_Shift  ], type[group1]="ONE_LEVEL" };
};





partial modifier_keys
xkb_symbols "lock" {
  virtual_modifiers  NumLock;

  replace key <HYPR> {[  NoSymbol  ], type[group1] = "ONE_LEVEL", virtualMods = NumLock,
                                      actions[group1] = [ SetMods(modifiers=NumLock) ]};
  modifier_map Mod2 { <HYPR> };
};



partial modifier_keys
xkb_symbols "lsgt_switch_lock" {
  include "level5(lock)"
  key <LSGT> {[  ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift,
                 ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock  ],
                 type[group1] = "EIGHT_LEVEL" };
};

partial modifier_keys
xkb_symbols "lwin_switch_lock" {
  include "level5(lock)"
  key <LWIN> {[  ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift,
                 ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock  ],
                 type[group1] = "EIGHT_LEVEL" };
};

partial modifier_keys
xkb_symbols "ralt_switch_lock" {
  include "level5(lock)"
  key <RALT> {[  ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift,
                 ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock  ],
                 type[group1] = "EIGHT_LEVEL" };
};

partial modifier_keys
xkb_symbols "rwin_switch_lock" {
  include "level5(lock)"
  key <RWIN> {[  ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift,
                 ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock  ],
                 type[group1] = "EIGHT_LEVEL" };
};

partial modifier_keys
xkb_symbols "lsgt_switch_lock_cancel" {
  include "level5(lock)"
  key <LSGT> {[  ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift,
                 ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock  ],
                 type[group1] = "EIGHT_LEVEL_WITH_LEVEL5_LOCK" };
};

partial modifier_keys
xkb_symbols "lwin_switch_lock_cancel" {
  include "level5(lock)"
  key <LWIN> {[  ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift,
                 ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock  ],
                 type[group1] = "EIGHT_LEVEL_WITH_LEVEL5_LOCK" };
};

partial modifier_keys
xkb_symbols "ralt_switch_lock_cancel" {
  include "level5(lock)"
  key <RALT> {[  ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift,
                 ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock  ],
                 type[group1] = "EIGHT_LEVEL_WITH_LEVEL5_LOCK" };
};

partial modifier_keys
xkb_symbols "rwin_switch_lock_cancel" {
  include "level5(lock)"
  key <RWIN> {[  ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift,
                 ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock  ],
                 type[group1] = "EIGHT_LEVEL_WITH_LEVEL5_LOCK" };
};
