Compiz – How to List Shortcut Keys in Use


Other than looking though each active plugin and manually searching for keybindings / keyboard-shortcuts in use by compiz, is there a 'simple' way to gather this information?

i.e. Some panel that displays all currently active keybindings in use (by compiz), or some terminal command to do same.

Keyboard-shortcuts does not appear to list certain specific compiz shortcuts.


Best Answer

Here's a (very long) one-liner that returns all shortcuts from all active plugins:

for i in $(gconftool-2 --get /apps/compiz-1/general/screen0/options/active_plugins|sed "s/\[\|\]//g"|sed "s/,/ /g"); do echo "# $i:"; gconftool-2 -a /apps/compiz-1/plugins/"$i"/screen0/options | grep "_key\|_button\|trigger_\|initiate\ \|panel_first_menu\|keyboard_focus\|execute_command\|show_launcher" | grep -v "Disabled\|=[[:space:]]*$" | sort; done; echo -e "\n# metacity overrides:"; gconftool-2 -a /apps/metacity/global_keybindings | grep -v "disabled\|cycle\|switch_panels" | sort; gconftool-2 -a /apps/metacity/window_keybindings | grep -v "disabled" | sort

Above version now gets all non-empty/disabled keybindings (key, mouse, key+mouse) from all active plugins.

However, the value of the key X-GNOME-WMSettingsModule in /usr/share/applications/compiz.desktop makes Metacity override several Compiz keys. You will notice the italic labels in ccsm - that's when the value comes from Metacity and not Compiz.

As I found no easy way to fix this, I simply added all Metacity shortcuts to the end of the output.