Me gustaría configurar algunos enlaces de teclas en eclipse (3.7.2) que implican la tecla (tecla "windows"), pero no parece estar recogiendo esa tecla modificadora cuando lo presiono. ¿Por qué? ¿Qué puedo hacer para que lo detecte?Cómo configurar enlaces de teclas Super/Windows/mod4 para eclipse
Respuesta
Eclipse no engancha la tecla de Windows. Lo único que puede hacer es usar una herramienta para volver a vincular la clave de Windows, por ejemplo, CTRL + ALT + SHIFT (si no usa eso). Las herramientas como AutoHotkey pueden hacer el trabajo.
Entonces, cada vez que se pulsa la tecla de Windows, será como si pulsó CTRL +ALT +SHIFT, que luego se puede utilizar para unir sus teclas de acceso rápido deseados.
Usted tiene "Linux" etiquetados en su pregunta, por lo que voy a suponer que está utilizando Linux y X ...
lo tanto, para utilizar Super con Eclipse, primero hay que descubrir si usted tiene a Súper, y si no, haz una. El resto de esto es probablemente mucho más de lo que necesitas sobre el tema de xmodmap.
Lo primero que debe hacer es ver si ya tiene una tecla de modificación Súper. Ejecute "xmodmap -pm" para ver cuáles son actualmente sus modificadores. Aquí hay una salida común:
$ xmodmap -pm
xmodmap: up to 4 keys per modifier, (keycodes in parentheses):
shift Shift_L (0x32), Shift_R (0x3e)
lock Caps_Lock (0x42)
control Control_L (0x25), Control_R (0x69)
mod1 Alt_L (0x40), Alt_R (0x6c), Meta_L (0xcd)
mod2 Num_Lock (0x4d)
mod3
mod4 Super_L (0x85), Super_R (0x86), Super_L (0xce), Hyper_L (0xcf)
mod5 ISO_Level3_Shift (0x5c), Mode_switch (0xcb)
En la salida anterior, un manojo de llaves que ya se asignan a Súper, con (hex) códigos de teclas 0x85, 0x86, 0xCE y 0xcf. Para ver si algo en su teclado es una de esas teclas (que no siempre es el caso), ejecute "xev" en un terminal y mueva el puntero del mouse a la ventana de entrada en su mayoría blanca de "xev", e intente llaves diferentes La salida típica se ve así para las teclas (prueba con el control y cambia para ver ejemplos) - presta especial atención a la tercera línea con el código clave y el nombre keysym, aquí 64 y Meta_L.
Asegúrese de probar su clave "Windows" también, para ver qué código de tecla y asignación tiene actualmente.
KeyPress event, serial 42, synthetic NO, window 0xe600003,
root 0x6b6, subw 0x0, time 2232472454, (-1,167), root:(871,683),
state 0x0, keycode 64 (keysym 0xffe7, Meta_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
Encuentre la parte "código clave" y convertirlo a la base 16. Si usted ha golpeado una de las Súper, el código convertido coincidirá con uno de los (en el ejemplo anterior, cuatro códigos de teclas hexagonales), y muestre Super_L o Super_R en lugar del Meta_L que se muestra arriba.
Si usted no tiene ninguna tecla asignada al Súper, o resulta que ninguno de ellos existe en el teclado, a continuación, utilizar xev para encontrar el código de tecla para la tecla que desea utilizar para Super (CapsLock podría ser una buena opción para algunas personas), luego use xmodmap o alguna otra herramienta en la interfaz de usuario de su escritorio para configurarlo. Este último está fuera del alcance de esta respuesta, pero con xmodmap, usted podría hacer un archivo llamado .Xmodmap en su directorio personal con esto en él:
! note: replace the 0xff below with your *actual* Super_L key's keycode.
! note: whether to use mod3 or mod4 depends on your environment.
keycode 0xff = Super_L
clear mod4
add mod4 = Super_L
Aplicar los resultados con "xmodmap ~/.Xmodmap ". Muchas startups X las aplicarán automáticamente. Si está utilizando Ubuntu Unity, busque Aplicaciones de inicio en el Tablero y agregue una para ese mismo comando. No estoy seguro de si "~" funciona en el contexto, es posible que desee probar $ HOME o simplemente usar su directorio particular allí. Termina produciendo un archivo en ~/.config/autostart/xmodmap.escritorio como este (Erlkonig = Me, poner su casa en su lugar):
$ cat ./.config/autostart/xmodmap.desktop
[Desktop Entry]
Type=Application
Exec=/usr/bin/xmodmap /home/erlkonig/.Xmodmap
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=true
Name[en_US]=Xmodmap Keymap Settings
Name=Xmodmap Keymap Settings
Comment[en_US]=Set Keyboard Bindings
Comment=Set Keyboard Bindings
puede verificar los resultados con "xmodmap -pm" o "xev". Aquí está el resultado para el primero para mi entorno de una configuración más compleja (que probablemente no coincidirá con lo que te gustaría).
$ xmodmap -pm
xmodmap: up to 4 keys per modifier, (keycodes in parentheses):
shift Shift_L (0x32), Shift_R (0x3e)
lock Caps_Lock (0x7f)
control Control_L (0x25)
mod1 Meta_L (0x40), Meta_L (0xcd)
mod2 Alt_L (0x6c), Alt_L (0xcc)
mod3 Super_R (0x69), Super_L (0x85), Super_R (0x86), Super_L (0xce)
mod4 Hyper_L (0x42), Hyper_L (0xcf)
mod5 Num_Lock (0x4d)
Hyper reemplaza CapsLock (que he trasladado a otro lugar); Lo uso para funciones de administrador de ventanas, como Hyper-f para "frontar" una ventana, Hyper-r para cambiar el tamaño, etc.
Para otro ejemplo aleatorio (ish) de lo que se puede con xmodmap, aquí hay un mapa de teclas que mapea cualquiera que sea el código clave 78 es Mode_switch, y luego te permite combinarlo con ', ",` y ~ para ingresar los prefijos que hacen que tu siguiente vocal tenga el mismo signo diacrítico. También puedes usar el Mode_switch con a para obtener æ, d para visten D,? ¿conseguir, y algunos otros.
! note: 78 is probably not the keycode most would want here; pick your own :-)
keycode 78 = Mode_switch
! no mods shift mode-switch shift+mode-switch
keysym a = a A ae AE
keysym d = d D thorn THORN
keysym n = n N ntilde Ntilde
keysym o = o O oslash Oslash
keysym t = t T eth ETH
keysym s = s S ssharp
keysym 0 = 0 parenright degree
keysym 6 = 6 asciicircum dead_circumflex
keysym 8 = 8 asterisk multiply
keysym apostrophe = apostrophe quotedbl dead_acute dead_diaeresis
keysym grave = grave asciitilde dead_grave
keysym comma = comma less dead_cedilla guillemotleft
keysym period = period greater NoSymbol guillemotright
keysym slash = slash question NoSymbol questiondown
keysym 1 = 1 exclam NoSymbol exclamdown
keysym equal = equal plus notequal plusminus
para más información utilice el "hombre xmodmap".
sospecho que su objetivo principal es la creación de asociaciones de teclas en Además de su control existente y enlaces alt. Entonces, por ejemplo, haga que Windows-L haga algo diferente de Control-L, Alt-L o Shift-L.
Desafortunadamente, parece que Eclipse en Linux no es compatible con modificadores que no sean shift, control y alt (que es mod1 en xmodmap). Entonces no hay un modificador adicional para mapear la clave de Windows. La elección lógica sería mod4, pero parece que SWT no es compatible con mod4 en plataformas que no sean de Windows.
Existe un error al agregar compatibilidad con mod4 que no son de Windows al https://bugs.eclipse.org/bugs/show_bug.cgi?id=55236. Desafortunadamente, se ha marcado "no arreglará" por un tiempo. Sugiero ir allí y votar por él y compartir casos de usuarios adicionales/razones para reabrirlo si los tiene.
- 1. Cómo configurar enlaces para NSPopUpButton
- 2. Crear un plugin de Eclipse con enlaces de teclas personalizables
- 3. PHP IDE con enlaces de teclas vi
- 4. Cómo configurar teclas rápidas para formularios de Windows Forms
- 5. Ayuda para configurar php para Eclipse
- 6. Cómo configurar Eclipse TPTP
- 7. ¿Cómo configurar Tesseract en Eclipse para el desarrollo de Android?
- 8. ¿Cómo configurar SplashScreen en Eclipse?
- 9. ¿Cómo configurar Groovy + Eclipse + Junit4?
- 10. combinaciones de teclas de Visual Studio para Eclipse
- 11. Scrapy + Eclipse PyDev: cómo configurar el depurador?
- 12. Cómo configurar EOL en Eclipse
- 13. ¿Configurar Eclipse para utilizar accesos directos de VS.Net?
- 14. ¿Cómo puedo configurar Eclipse para usar ssh-agent para cvs?
- 15. Configurar enlaces simbólicos para un solo directorio en Tomcat
- 16. Configurar Eclipse CDT para usar g ++
- 17. ¿Cómo configurar Eclipse para saltear Excepciones en modo de depuración?
- 18. ¿Cómo configurar el formato XML de Eclipse?
- 19. Configurar eclipse osgi log
- 20. Configurar Eclipse para usar keystore firmado
- 21. Configurar FindBugs en Eclipse
- 22. ¿Cómo configurar Eclipse para mostrar las coordenadas del cursor?
- 23. ¿Cómo configurar Eclipse para usar Phonegap en Ubuntu?
- 24. ¿Cómo configurar adecuadamente el complemento Mercurial para Eclipse?
- 25. ¿Cómo ofrecer enlaces en un plugin de editor de eclipse?
- 26. Cómo configurar eclipse-ide en playframework 2.0
- 27. ¿Cómo configurar el complemento findbugs en eclipse?
- 28. ¿Cómo consigo que Eclipse use las asociaciones de teclas de NetBeans?
- 29. Cómo configurar compilador de Java que no sea eclipse para Eclipse IDE
- 30. ¿Puedo configurar Eclipse para mostrar los cambios de código?
Por lo que puedo decir, Eclipse no parece ver mod4 (o mod3). Así que asignar Super a mod4 en realidad no ayuda. – studgeek
Ugh. Eso es lamentable. Si es realmente cierto en Linux + X11, y no acaba recibiendo otro nombre de Eclipse, pero simplemente no está allí ... bueno, maldición. Oh, bueno, es la mitad de la respuesta, lograr que el equipo de Eclipse admita que los modificadores X11 estándar sean el resto (si tienes razón y todavía no). –