Je cherche une solution similaire à "unity-win7", où je peux exécuter cmd+num pour activer le navigateur, la console, l'éditeur etc.... J'ai trouvé Activator et Services dans osx, cependant, je ne peux pas utiliser cmd+num car beaucoup d'applications comme chrome et iterm2 les utilisent pour activer les onglets. J'ai donc configuré le lancement des services via Activator sur chd+shift+num, et cela fonctionne partout, sauf dans Emacs). Il semble qu'Emacs gère le clavier avant les services, donc, par exemple, après cmd+shift+1, il attend "Shell command". Ce dont j'ai besoin, c'est de rendre ces raccourcis (cmd+shift+num) en quelque sorte transparents pour Emacs.
Réponse
Trop de publicités?Ajoutez la ligne suivante à votre .emacs
(global-set-key “\M-!” nil)
et de même pour le reste des numéros décalés.
(Si vous n'avez pas de .emacs, créez un fichier texte appelé ainsi dans votre répertoire personnel).
Cela déverrouillera les fonctions attachées à ces combinaisons de touches, afin qu'elles puissent sortir d'Emacs et être utilisées par le reste du système.
Toutefois, si vous utilisez une commande quelconque, vous devrez la lier à une combinaison de touches différente. Même si vous activez des choses avec la touche Escape puis la touche , c'est juste un alias pour Meta.
Vous pouvez voir quelle commande est liée à une touche avec C-h k, puis vous pouvez lier cette fonction à une autre touche dans votre fichier .emacs.
Par exemple, si je voulais déplacer query-replace-regexp, que j'ai sur M-%, je pourrais ajouter ces lignes :
(global-set-key “\M-%” nil)
(global-set-key “\C-%" 'query-replace-regexp)
L'autre option serait de changer la clé à utiliser comme Meta, mais cela poserait probablement beaucoup plus de problèmes.