Gestion des conflits de raccourcis clavier entre IDE et OS (Ubuntu)

89

J'utilise IntelliJ IDEA, mais je pense que cela s'applique à n'importe quel IDE.

Dans IDEA, certains raccourcis clavier très utiles entrent en conflit avec les raccourcis clavier Ubuntu. Quelques exemples:

  • Ctrl+ Alt+L : formate le code source (mappé sur "Lock Screen" dans Ubuntu)
  • Ctrl+ Alt+Left : navigue vers l'arrière (mappé sur "basculer vers l'espace de travail à gauche de l'espace de travail actuel" dans Ubuntu)
  • ...

J'utilise Ubuntu depuis longtemps et je suis habitué à ces raccourcis. Je les utilise tout le temps pour basculer entre les espaces de travail, verrouiller ma session ... En même temps, je sais à quel point les raccourcis IntelliJ peuvent être utiles, et je veux éviter autant que possible d'utiliser la souris.

Actuellement, ma solution de contournement pour le «format du code source» est Alt+ D(ouvre le menu «Code»), suivi de «R» («Reformat Code»). Cela fonctionne bien, car je ne formate pas souvent le code, mais cela pourrait être mieux. Il n'y a cependant pas d'alternative réelle pour Ctrl+ Alt+Left .

Comment gérez-vous ces conflits dans votre IDE?

Remappez-vous simplement tous les raccourcis clavier de l'IDE en conflit avec autre chose (et vous perdez-vous lorsque vous programmez avec un collègue avec différents raccourcis ...)?

Remappez-vous les raccourcis clavier Linux (même si vous y êtes "habitué")?

Existe-t-il un moyen de rendre les raccourcis clavier "contextuels"? Je veux dire par là: appuyez sur une touche pour passer en "mode IDEA" lors du codage (tous les raccourcis Ubuntu en conflit sont temporairement désactivés), appuyez à nouveau sur la touche pour revenir en "mode standard" (les raccourcis Ubuntu sont réactivés).

Avez-vous d'autres idées / astuces pour gérer ce problème?

Etienne Neveu
la source

Réponses:

23

J'utilise également Ubuntu et j'ai désactivé la commande native (Ubuntu) Ctrl+ Alt+ Lcar je préfère le code de format d'IntelliJ à cette commande native Ubuntu. Cependant, dans le 2ème cas, j'ai préféré le raccourci d'Ubuntu donc je n'ai rien changé.

Donc, fondamentalement, vous pouvez choisir l'option dont vous avez le plus besoin, puis agir en conséquence.

Bien sûr, jusqu'à ce que IDEA devienne compatible avec Ubuntu.

En fin de compte, Ubuntu préférera toujours ses raccourcis et jusqu'à présent je n'ai trouvé aucun outil capable de désactiver les raccourcis natifs sur demande.

sandale
la source
1
CrazyCoder / askmo: J'ai voté pour vous deux. Vos réponses sont pragmatiques. J'espérais secrètement qu'il y avait une astuce pour gérer les keymaps sans tout remapper, mais je suppose que je vais juste devoir l'accepter. Je vais encore attendre quelques jours avant d'accepter vos réponses, au cas où quelqu'un connaîtrait une astuce pour éviter de faire ça.
Etienne Neveu
Malheureusement, il n'y a pas de meilleure solution que celle que je vous ai dite. Jusqu'à ce que IDEA fasse des changements, vous ne pouvez pas faire grand-chose mais changer ce que vous pouvez - et pour le moment, vous ne pouvez changer que les raccourcis d'Ubuntu. PS. Je vous suggère de creuser le net pour trouver l'utilitaire Ubuntu qui peut activer / désactiver tous les raccourcis. Si vous trouvez un tel outil, veuillez le poster ici, car je n'ai pas pu le trouver moi-même. Merci!
sandalone
J'aurais peut-être trouvé quelque chose en allant l'essayer ce soir: askubuntu.com/questions/17315/… . Je peux créer un script bash qui active / désactive une liste de raccourcis à l'aide de la commande gconftool-2, et le déclenche à l'aide d'un raccourci clavier spécifique :)
Etienne Neveu
Vous n'avez plus besoin de remapper. Settings -> Keyboard -> Shortcutsvous permettra de modifier la plupart des raccourcis clavier inhérents à Ubuntu 16.04. De plus, compizconfig-settings-manager vous permettra de modifier à votre convenance tous les autres raccourcis clavier non couverts dans les paramètres natifs d'Ubuntu.
anon58192932
23

J'ai changé les raccourcis ubuntu en

  • ctrl+ win+L
  • ctrl+ win+Left

similaire à l'original. Fonctionne bien pour moi.

fantôme
la source
5
comment l'avez-vous changé?
Jas
1
J'ai changé le raccourci Ubuntu "Lock Screen" pour qu'il soit simplement Win-L. @Jas, si vous rencontrez des difficultés pour remapper les raccourcis avec la touche "Win" (alias "Super"), ma réponse à une autre question de keymapping vous aidera peut-être: askubuntu.com/a/349614/54675
Lambart
21

Dans Ubuntu, la façon de désactiver la combinaison de touches ctrl+ alt+ leftconsiste à ouvrir Paramètres système -> Clavier -> Shorcuts (onglet) -> Navigation. Faites défiler jusqu'à "Basculer vers l'espace de travail à gauche", cliquez dessus et appuyez sur Retour arrière. Il est ridicule que cela soit même activé pour Ubuntu 14.04 stock où il n'y a qu'un seul bureau par défaut.

postfuturiste
la source
Pour une raison quelconque, ces paramètres se réinitialisent récemment (peut-être après certaines mises à jour de package) sur mon bureau. Je ne sais pas pourquoi.
postfuturist
13

Il y a une demande de fonctionnalité pour fournir un keymap convivial Ubuntu.

Que faut-il remapper, IDEA ou clés Linux? Décidez-vous en fonction de ce que vous utilisez le plus souvent. Je suppose que vous reformatez le code plus souvent que l'écran de verrouillage? Alors remappez Linux et laissez le raccourci clavier par défaut d'IDEA.

CrazyCoder
la source
6

Vous pouvez simplement utiliser la super(aka Windows Key) en combinaison avec votre intellijidearaccourci, afin de laisser les raccourcis par défaut pour Ubuntu.

Alors, tu peux juste

Ctrl + Alt + WinKey + L pour formater le code et

Ctrl + Alt + WinKey + Left pour naviguer vers l'arrière

J'espère que cela t'aides

besil
la source
Je me suis retrouvé ici pour un problème quelque peu différent mais lié et l'utilisation de super + (mon raccourci) a fonctionné pour moi. Est-ce une manière standard d'échapper aux raccourcis système ou simplement une manière relativement courante?
4

Cela fonctionne pour moi dans Ubuntu Studio 14.04 (XFCE):

  • Ouvrez le Gestionnaire Windows: xfwm4-settings
  • Aller à l'onglet Clavier
  • Faites défiler jusqu'à Action en conflit
  • Appuyez sur le bouton Effacer ou modifiez l'action en un raccourci différent
Luboskrnac
la source
4

Afin de désactiver le keymap de XUbuntu (xfce) pour Alt+ F8et Ctrl+ Alt+ Left/Right Arrow j'ai utilisé Settings -> Window Manager -> tab "Keyboard".

Ici, j'ai pu effacer ces mappages.

N'importe quand
la source
2

À partir du lien vers la demande de fonctionnalité fournie par CrazyCoder:

En fait, il existe plusieurs schémas groupés: "Par défaut pour GNOME", "Par défaut pour KDE" créés exactement dans ce but. Je n'ai pas vérifié maintenant des raccourcis particuliers comme Ctrl + Alt + L, mais ces schémas ont été créés pour éviter les conflits avec GNOME et KDE respectivement.

"Default for Gnome" a fait l'affaire pour moi (je suis sur ArchLinux, Gnome3, AndroidStudio / InteliJ), il a remappé Navigate / Back to Shift + Alt + Left (était Ctrl + Alt + Left de "Default for XWin" et il n'a pas fonctionné).

Mais maintenant, il peut également changer la disposition du clavier (Shift + Alt), un autre problème)) Je vais probablement remapper le sélecteur de clavier à autre chose, il est toujours plus simple de réaffecter toutes les touches en conflit dans IDE / OS.

Mixaz
la source
2

Dans la section 'Paramètres' 'Keymap' vous pouvez choisir le modèle de keymaps de XWin, Gnome, Visual Studio, Eclipse, etc ... Cela résout tout problème dans Ubuntu en choisissant Gnome.

RiRomain
la source
Down a voté parce que les touches courtes ubuntu sont toujours en conflit avec gnome. Reportez-vous à jetbrains.com/idea/help/reformatting-source-code.html
thomas.han