Gestión de conflictos de atajos de teclado entre IDE y SO (Ubuntu)

89

Estoy usando IntelliJ IDEA, pero creo que esto se aplica a cualquier IDE.

En IDEA, algunos atajos de teclado muy útiles entran en conflicto con los atajos de teclado de Ubuntu. Algunos ejemplos:

  • Ctrl+ Alt+L : formatea el código fuente (asignado a "Pantalla de bloqueo" en Ubuntu)
  • Ctrl+ Alt+Left : navega hacia atrás (asignado a "cambiar al espacio de trabajo a la izquierda del espacio de trabajo actual" en Ubuntu)
  • ...

He estado usando Ubuntu durante mucho tiempo y estoy acostumbrado a estos atajos. Los uso todo el tiempo para cambiar entre espacios de trabajo, bloquear mi sesión ... Al mismo tiempo, sé lo útiles que pueden ser los atajos de IntelliJ y quiero evitar el uso del mouse tanto como sea posible.

Actualmente, mi solución para "formatear código fuente" es Alt+ D(abre el menú "Código"), seguido de "R" ("Reformatear código"). Funciona bien, ya que no formateo el código con tanta frecuencia, pero podría ser mejor. Sin embargo, no existe una alternativa real para Ctrl+ Alt+Left .

¿Cómo gestiona estos conflictos en su IDE?

¿Simplemente reasigna todos los atajos de teclado IDE en conflicto a otra cosa (y luego se pierde cuando está programando con un colega con diferentes atajos ...)?

¿Reasigna los atajos de teclado de Linux (aunque esté "acostumbrado" a ellos)?

¿Hay alguna forma de hacer que los atajos de teclado sean "contextuales"? Con esto, quiero decir: presione una tecla para entrar en "modo IDEA" al codificar (todos los accesos directos de Ubuntu en conflicto se desactivan temporalmente), presione la tecla nuevamente para volver al "Modo estándar" (los accesos directos de Ubuntu se reactivan).

¿Tiene otras ideas / consejos sobre cómo manejar este problema?

Etienne Neveu
fuente

Respuestas:

23

También uso Ubuntu y deshabilité el comando nativo (Ubuntu) Ctrl+ Alt+ Lporque prefiero el código de formato de IntelliJ que este comando nativo de Ubuntu. Sin embargo, en el segundo caso preferí el acceso directo de Ubuntu, así que no cambié nada.

Entonces, básicamente, puede elegir qué opción necesita más y luego actuar en consecuencia.

Por supuesto, hasta que IDEA se convierta en compatible con Ubuntu.

Al final, Ubuntu siempre preferirá sus atajos y hasta ahora no he encontrado ninguna herramienta que pueda deshabilitar los atajos nativos a pedido.

sandalias
fuente
1
CrazyCoder / askmo: Los voté a ambos. Tus respuestas son pragmáticas. En secreto, esperaba que hubiera un truco para administrar mapas de teclas sin reasignar todo, pero supongo que tendré que aceptarlo. Todavía voy a esperar unos días antes de aceptar tus respuestas, por si alguien conoce algún truco para evitarlo.
Etienne Neveu
Lamentablemente, no hay mejor solución que la que les dije. Hasta que IDEA realice cambios, no puede hacer mucho más que cambiar lo que pueda, y por el momento solo puede cambiar los atajos de Ubuntu. PD. Le sugiero que busque en la red para encontrar la utilidad de Ubuntu que pueda habilitar / deshabilitar todos los atajos. Si encuentra dicha herramienta, publíquela aquí, porque no pude encontrarla yo mismo. ¡Gracias!
sandalias
Podría haber encontrado algo, lo probaré esta noche: askubuntu.com/questions/17315/… . Puedo crear un script bash que habilita / deshabilita una lista de atajos usando el comando gconftool-2, y activarlo usando un atajo de teclado específico :)
Etienne Neveu
Ya no tienes que reasignar. Settings -> Keyboard -> Shortcutsle permitirá modificar la mayoría de los atajos de teclado inherentes en Ubuntu 16.04. Además, compizconfig-settings-manager le permitirá modificar cualquier otra tecla de acceso rápido que no esté cubierta en la configuración nativa de Ubuntu a su gusto.
anon58192932
23

Cambié los atajos de ubuntu a

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

similar al original. Funciona bien para mi.

fantom
fuente
5
como lo cambiaste
Jas
1
Cambié el acceso directo de "Pantalla de bloqueo" de Ubuntu para que sea simplemente Win-L. @Jas, si tiene problemas para reasignar accesos directos con la tecla "Win" (también conocida como "Super"), tal vez mi respuesta a otra pregunta de keymapping
Lambart
21

En Ubuntu, la forma de deshabilitar la combinación de teclas ctrl+ alt+ leftes abrir Configuración del sistema -> Teclado -> Accesos directos (pestaña) -> Navegación. Desplácese hasta "Cambiar al espacio de trabajo a la izquierda", haga clic en él y presione Retroceso. Es una tontería que esto esté habilitado incluso para Ubuntu 14.04, donde solo hay un escritorio por defecto.

postfuturista
fuente
Por alguna razón, esta configuración se restableció recientemente (tal vez después de algunas actualizaciones de paquetes) en mi escritorio. No sé por qué.
postfuturista
13

Existe una solicitud de función para proporcionar un mapa de teclas compatible con Ubuntu.

¿Qué reasignar, IDEA o claves de Linux? Decida usted mismo dependiendo de lo que esté usando con más frecuencia. ¿Supongo que reformatea el código con más frecuencia que la pantalla de bloqueo? Así que reasigne Linux y deje el atajo de teclado predeterminado de IDEA.

CrazyCoder
fuente
6

Puede usar la super(también conocida como tecla de Windows) en combinación con su intellijideaacceso directo, para dejar los accesos directos predeterminados para Ubuntu.

Entonces, puedes simplemente

Ctrl + Alt + WinKey + L para formatear el código y

Ctrl + Alt + WinKey + Left para navegar hacia atrás

Espero que esto ayude

besil
fuente
Terminé aquí por un problema algo diferente pero relacionado y usar super + (mi atajo) funcionó para mí. ¿Es esta una forma estándar de escapar de los atajos del sistema o simplemente una forma relativamente común?
4

Esto me funciona en Ubuntu Studio 14.04 (XFCE):

  • Abra el Administrador de Windows: xfwm4-settings
  • Ir a la pestaña Teclado
  • Desplácese hacia abajo hasta Acción en conflicto
  • Presione el botón Borrar o cambie la acción a un atajo diferente
luboskrnac
fuente
4

Para deshabilitar el mapa de teclas de XUbuntu (xfce) para Alt+ F8y Ctrl+ Alt+ Left/Right Arrow utilicé Settings -> Window Manager -> tab "Keyboard".

Aquí pude borrar estas asignaciones.

Cuando
fuente
2

Desde el enlace a la solicitud de funciones proporcionada por CrazyCoder:

En realidad, hay varios esquemas empaquetados: "Predeterminado para GNOME", "Predeterminado para KDE" creado exactamente para ese propósito. No he comprobado ahora atajos particulares como Ctrl + Alt + L, pero estos esquemas fueron creados para evitar conflictos con GNOME y KDE respectivamente.

"Default for Gnome" funcionó para mí (estoy en ArchLinux, Gnome3, AndroidStudio / InteliJ), reasignó Navegar / Volver a Shift + Alt + Izquierda (era Ctrl + Alt + Izquierda de "Predeterminado para XWin" no funcionó).

Pero ahora también cambia la distribución del teclado (Shift + Alt), otro problema)) Probablemente reasignaré el conmutador de teclado a otra cosa, aún es más simple que reasignar todas las teclas en conflicto en IDE / OS.

Mixaz
fuente
2

En la sección 'Configuración' 'Mapa de teclas' puedes elegir la plantilla de mapas de teclas de XWin, Gnome, Visual Studio, Eclipse, etc ... Esto soluciona cualquier problema en Ubuntu eligiendo Gnome.

RiRomain
fuente
Votado en contra porque las claves cortas de ubuntu todavía entran en conflicto con gnome. Consulte jetbrains.com/idea/help/reformatting-source-code.html
thomas.han