web-dev-qa-db-fra.com

Comment lister les raccourcis clavier Compiz utilisés?

Existe-t-il un moyen "simple" de rassembler ces informations, en dehors de chaque plugin actif et de la recherche manuelle des raccourcis clavier/raccourcis clavier utilisés par compiz?

c'est-à-dire un panneau qui affiche toutes les combinaisons de clés actives actuellement utilisées (par compiz), ou une commande terminal permettant de faire de même.

Les raccourcis clavier ne semblent pas lister certains raccourcis Compiz spécifiques.

Merci

15
Jay_11

Voici un (très long) one-liner qui renvoie tous les raccourcis de tous les plugins actifs:

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

Mise à jour:
La version ci-dessus obtient maintenant tous les raccourcis clavier non vides/désactivés (clé, souris, clé + souris) de tous les plugins actifs.

Cependant, la valeur de la clé X-GNOME-WMSettingsModule dans /usr/share/applications/compiz.desktop permet à Metacity de remplacer plusieurs clés Compiz. Vous remarquerez les étiquettes italiques dans ccsm - c'est à ce moment-là que la valeur provient de Metacity et non de Compiz.

N'ayant trouvé aucun moyen facile de résoudre ce problème, j'ai simplement ajouté tous les raccourcis Metacity à la fin de la sortie.

12
htorque

Vous n'avez pas besoin de chaîner 2 scripts sed, ils pourraient être un, séparés par ';'. Mais encore plus simple serait piping to tr. Pour 12.04 sans métacité, cela devrait être:

for i in $(gconftool-2 --get /apps/compiz-1/general/screen0/options/active_plugins|tr '[],' ' '); 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

Cependant, comme Jay_11 l'a déjà noté, l'ensemble de la construction semble montrer une partie de ce qui entre dans compiz, pas le résultat. Par exemple. Je reçois close_window_key = <Alt>F4, mais je l’ai désactivée. En tant que fervent utilisateur d'Emacs, je ne laisse pas un gestionnaire de fenêtres s'approcher de quoi que ce soit sauf <Super>, mais cela ne s'affiche pas!

La question demeure donc: que fait réellement Compiz?

1
Daniel