Swapping caps lock and escape in Xubuntu causes the super key to become caps lock. This is because "/etc/xdg/xdg-xubuntu/autostart/xcape-super-binding.desktop" runs "xcape -e 'Super_L=Control_L|Escape'" on startup, which binds super to LCtrl+Escape on release which is bound to xfce4-popup-whiskermenu in xfce4-keyboard-settings. Changing the xcape command in xcape-super-binding.desktop to something not involving escape like "xcape -e 'Super_L=Shift_L|Control_L|Alt_L|Super_L'" and then changing the whiskermenu bind in keyboard settings to Shift+Ctrl+Alt+Super L fixes the issue.
This fix can be applied with these two patch files, applying the first to "/etc/xdg/xdg-xubuntu/autostart/xcape-super-binding.desktop" and the second to "~/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml"
$ cat xcapepatch
--- xcape-super-binding.desktop 2021-08-19 06:33:42.000000000 -0500
+++ xcape-super-binding-updated.desktop 2022-02-19 21:15:45.383340028 -0600
@@ -1,4 +1,4 @@
[Desktop Entry]
Name=Bind Super Key
-Exec=xcape -e 'Super_L=Control_L|Escape'
+Exec=xcape -e 'Super_L=Shift_L|Control_L|Alt_L|Super_L'
OnlyShowIn=XFCE;
$ cat shortcutpatch
--- xfce4-keyboard-shortcuts.xml 2022-02-19 20:57:08.901876000 -0600
+++ xfce4-keyboard-shortcuts-updated.xml 2022-02-19 21:41:15.476227000 -0600
@@ -61,7 +61,6 @@
</property>
<property name="XF86Explorer" type="string" value="exo-open --launch FileManager"/>
<property name="<Super>m" type="string" value="exo-open --launch MailReader"/>
- <property name="<Primary>Escape" type="string" value="xfce4-popup-whiskermenu"/>
<property name="<Primary><Shift>Escape" type="string" value="xfce4-taskmanager"/>
<property name="XF86Calculator" type="string" value="mate-calc"/>
<property name="<Super>t" type="string" value="exo-open --launch TerminalEmulator"/>
@@ -78,6 +77,7 @@
<property name="<Super>e" type="string" value="exo-open --launch FileManager"/>
<property name="XF86WWW" type="string" value="exo-open --launch WebBrowser"/>
<property name="override" type="bool" value="true"/>
+ <property name="<Primary><Shift><Alt>Super_L" type="string" value="xfce4-popup-whiskermenu"/>
</property>
</property>
<property name="xfwm4" type="empty">
Swapping caps lock and escape in Xubuntu causes the super key to become caps lock. This is because "/etc/xdg/ xdg-xubuntu/ autostart/ xcape-super- binding. desktop" runs "xcape -e 'Super_ L=Control_ L|Escape' " on startup, which binds super to LCtrl+Escape on release which is bound to xfce4-popup- whiskermenu in xfce4-keyboard- settings. Changing the xcape command in xcape-super- binding. desktop to something not involving escape like "xcape -e 'Super_ L=Shift_ L|Control_ L|Alt_L| Super_L' " and then changing the whiskermenu bind in keyboard settings to Shift+Ctrl+ Alt+Super L fixes the issue. xdg-xubuntu/ autostart/ xcape-super- binding. desktop" and the second to "~/.config/ xfce4/xfconf/ xfce-perchannel -xml/xfce4- keyboard- shortcuts. xml" binding. desktop 2021-08-19 06:33:42.000000000 -0500 binding- updated. desktop 2022-02-19 21:15:45.383340028 -0600 L=Control_ L|Escape' L=Shift_ L|Control_ L|Alt_L| Super_L' shortcuts. xml 2022-02-19 20:57:08.901876000 -0600 shortcuts- updated. xml 2022-02-19 21:41:15.476227000 -0600 lt;Super& gt;m" type="string" value="exo-open --launch MailReader"/> lt;Primary& gt;Escape" type="string" value=" xfce4-popup- whiskermenu" /> lt;Primary& gt;< Shift> Escape" type="string" value=" xfce4-taskmanag er"/> lator" type="string" value="mate-calc"/> lt;Super& gt;t" type="string" value="exo-open --launch TerminalEmulator"/> lt;Super& gt;e" type="string" value="exo-open --launch FileManager"/> lt;Primary& gt;< Shift> <Alt& gt;Super_ L" type="string" value=" xfce4-popup- whiskermenu" />
This fix can be applied with these two patch files, applying the first to "/etc/xdg/
$ cat xcapepatch
--- xcape-super-
+++ xcape-super-
@@ -1,4 +1,4 @@
[Desktop Entry]
Name=Bind Super Key
-Exec=xcape -e 'Super_
+Exec=xcape -e 'Super_
OnlyShowIn=XFCE;
$ cat shortcutpatch
--- xfce4-keyboard-
+++ xfce4-keyboard-
@@ -61,7 +61,6 @@
</property>
<property name="XF86Explorer" type="string" value="exo-open --launch FileManager"/>
<property name="&
- <property name="&
<property name="&
<property name="XF86Calcu
<property name="&
@@ -78,6 +77,7 @@
<property name="&
<property name="XF86WWW" type="string" value="exo-open --launch WebBrowser"/>
<property name="override" type="bool" value="true"/>
+ <property name="&
</property>
</property>
<property name="xfwm4" type="empty">