La función del teclado puede personalizarse muchísimo en Eclipse. En Eclipse, las pulsaciones y secuencias de teclas se asignan para invocar mandatos concretos.
Una 'pulsación de teclas' es la pulsación de una tecla en el teclado, mientras que se mantiene pulsada opcionalmente una o más de estas teclas modificadoras: Control
, Alt
(Opción
en Macintosh), Mayús
o Comando
(solo en Macintosh.) Por ejemplo, si mantiene pulsada la tecla Control
y luego pulsa A
, se crea la pulsación Control+A
. La pulsación de las teclas modificadoras aisladamente no constituye pulsaciones de teclas.
Una 'secuencia de teclas' es una o más pulsaciones de teclas. Tradicionalmente, Emacs asignaba dos
o tres secuencias de pulsaciones a mandatos concretos. Por ejemplo, la secuencia de teclas normal asignada a Cerrar todo
en emacs es Control+X Control+C
.
Para especificar esta secuencia de teclas, efectúe la pulsación Control+X
seguida por la pulsación Control+C
.
Eclipse soporta secuencias de teclas de longitudes arbitrarias, pero
le recomendamos que los accesos directos del teclado consten, como
máximo, de cuatro pulsaciones.
Un 'enlace de teclas' es la asignación de una secuencia de teclas a un mandato.
Un 'esquema' es un conjunto de enlaces. Eclipse incluye dos esquemas:
El esquema Por omisión contiene un conjunto general de enlaces, reconocibles en muchos
casos para los usuarios como secuencias de teclas tradicionales. Por ejemplo,
Control+A
se asigna a Seleccionar todo
, y Control+S
se
asigna a Guardar
.
El esquema Emacs contiene un conjunto de enlaces de teclas familiar para los usuarios de Emacs.
Por ejemplo, Control+X H
se asigna a Seleccionar todo
, y Control+X
S
se asigna a Guardar
.
Es importante entender por qué el esquema Emacs dice que 'amplía la configuración Por
omisión'. El esquema Emacs no es un conjunto completo de enlaces como el esquema Por
omisión, sino que aprovecha del esquema Por omisión, definiendo solamente los enlaces
de estilo Emacs explícitos en lo que varían del esquema Por omisión. Por lo general, solo mandatos
bien conocidos como Seleccionar todo
,
Guardar
, etcétera, tienen asociados a ellos secuencias
de teclas específicas de Emacs.
El usuario decide con qué esquema se siente más cómodo, cambiando el valor de 'Esquema' en la página de preferencias de teclas. Si el usuario elige el esquema Por omisión, se ignoran todos los enlaces de Emacs. Si el usuario elige el esquema Emacs, las asignaciones de secuencias de teclas de estilo Emacs explícitas tienen preferencia sobre las asignaciones en conflicto que haya en el esquema Por omisión.
Los enlaces de teclas pueden variar según el contexto actual de Eclipse.
En ocasiones, la parte activa podría ser, por ejemplo, un editor de archivos
Java en el que un conjunto diferente de asignaciones de
secuencias de teclas pueda ser más adecuado que si la parte activa
fuera un editor de archivos html. Como ejemplo concreto, normalmente
Control+B
se asigna a Construir
en un
contexto como la edición de un archivo Java, mientras que
Control+B
se asigna a Poner texto en
negrita
en un contexto como la edición de un archivo
HTML. Este contexto suele venir determinado por la parte activa, pero
también puede verse afectado por la ventana activa o el diálogo
activo. Si la parte activa no elige un contexto concreto, el entorno de
trabajo establecerá que el contexto activo sea En ventanas.
Eclipse incluye nueve contextos distintos. Que son:
De modo muy parecido a las configuraciones, los contextos pueden ampliar otros contextos. Por ejemplo, el contexto Edición de fuente Java adopta enlaces de teclas del contexto Edición de texto, que a su vez adopta enlaces de teclas del contexto En ventanas.
Nota: le recomendamos que no promocione un enlace de teclas a un contexto ampliado por él. Por ejemplo, le recomendamos que no traslade un enlace de teclas de Edición de texto al contexto En diálogos y ventanas. Ello podría dar resultados imprevistos.
Es posible que algunos enlaces de teclas funciones en los diálogos. Esos enlaces de teclas se asignan al contexto En diálogos y ventanas. Un ejemplo de un enlace de teclas así sería el que corresponde al mandato "cortar". Es posible cambiar estos enlaces de teclas. Por ejemplo, se podría hacer que el mandato cortar se lograse con el enlace Control+X en los diálogos y con el enlace Control+W en las ventanas.
Los enlaces de teclas también pueden variar según la plataforma y el entorno local.
En la plataforma Macintosh, se asigna Comando+S
a
Guardar
, en lugar de la combinación habitual
Control+S
. En los entornos locales del chino (zh),
se asigna Alt+/
a la Asistencia de contenido
,
en lugar de la combinación habitual Control+Espaciadora
.
La plataforma y entorno local actuales se determinan al inicio de Eclipse y no varían durante el transcurso de una instancia de Eclipse.
Con las secuencias de teclas con múltiples pulsaciones, los esquemas y los contextos, hay muchos elementos a tener en cuenta al personalizar enlaces de teclas. Para facilitar esta tarea, toda la personalización de teclas se lleva a cabo en la página de preferencias de teclas.
Seleccione Ventana > Preferencias > General > Teclas para la página de preferencias Teclas.
En este ejemplo se ha decidido seleccionar Emacs como esquema y se ha seleccionado el
mandato Cerrar
de la lista de mandatos. Se muestra información
sobre este mandato y sus enlaces de teclas actuales.
Observe que Cerrar
tiene asignadas tres secuencias de teclas:
Control+F4
y Control+W
en el esquema Por omisión y
Control+X K
en el esquema Emacs. Se
asignan en el contexto En ventanas. Así, si el usuario establece el esquema como Por
omisión, Control+F4
y Control+W
se asignarán a Cerrar
mientras que Control+X K
no. No obstante, si el usuario establece el esquema como
Emacs, Control+X K
se asignará a Cerrar
. Además, debido a que el
esquema Emacs también toma enlaces de teclas del esquema Por omisión,
Control+F4
y Control+W
también se asignarán a Cerrar
,
siempre que este enlace de teclas no se haya asignado a otro mandato del esquema Emacs. En
este ejemplo, "Control+W" está enlazado con Cortar
en el esquema Emacs.
Bajo la lista de secuencias de teclas asignadas a Cerrar
, hay un lugar para añadir o eliminar enlaces de teclas. Por omisión,
selecciona el contexto como En ventanas.
Se escribe la secuencia de teclas Control+W
y el botón 'Añadir' pasa a estar disponible. Además,
bajo el botón Añadir, se muestra una lista de todos los mandatos a los que ya se ha asignado la secuencia de
teclas Control+W
. Podemos ver que Control+W
está asignado actualmente al mandato Cortar
en el contexto
En ventanas y diálogos. Se pulsa el botón 'Añadir' para asignar Control+W
a Cerrar
.
Los conectores proporcionan los enlaces de teclas y, en Eclipse, los conectores se pueden añadir o eliminar. Esto puede provocar que los enlaces de teclas declarados por estos conectores se añadan o se eliminen.
Eclipse almacena enlaces de teclas personalizados para compensar por esto. Considere el ejemplo
anterior donde se asignó Control+Alt+W
a Cortar
en el esquema
Emacs. Considere que el usuario instala un conector nuevo que asigna Control+Alt+W
a un mandato determinado.
Eclipse conservará la asignación del usuario a Cortar
.
Solo hay un número finito de pulsaciones de teclas sencillas y
comunes disponibles para que se puedan asignar a una multitud de
mandatos. Hemos visto que esquema, contexto, plataforma y entorno local dividen las asignaciones de
secuencias de teclas en dominios en los que no entran en conflicto entre sí. Considere el caso
de Control+B
, visto más arriba, si los contextos no
existieran. Un conector asignaría Control+B
a Construir
, otro conector asignaría Control+B
a Poner texto en negrita
. ¿Cómo resolvería Eclipse este conflicto correctamente?
A pesar que los conflictos se reducen drásticamente si se emplean los mecanismos anteriores, todavía pueden darse.
Dos conectores, independientes entre sí, podrían asignar la misma secuencia de teclas a distintos
mandatos con el mismo contexto, esquema, plataforma y entorno local. Considere si un conector ha
asignado Control+F4
en el contexto En ventanas y el esquema Por
omisión a uno de sus mandatos. Esto entra en conflicto directamente con la asignación de
Eclipse de Control+F4
al mandato de cerrar en el mismo contexto y esquema.
Esto es un conflicto. No sería adecuado invocar ambos mandatos ni
simplemente elegir uno de los dos mandatos para recibir la pulsación
de teclas. Lo correcto es ignorar ambos enlaces de teclas, dejando Control+F4
inutilizado en este contexto y esquema.
El usuario puede resolver estos tipos de conflictos asignando explícitamente la secuencia de teclas a uno de los mandatos.
Las secuencias de teclas de múltiples pulsaciones de teclas pueden provocar otro tipo de conflicto.
Por ejemplo, en el esquema Emacs, hay muchas secuencias de pulsaciones de varias teclas
que empiezan por la pulsación Control+X
. Control+X K
se asigna a
Cerrar
. Control+X H
se asigna a Seleccionar todo
.
Como se ha mencionado anteriormente, el esquema Emacs toma enlaces de teclas del esquema
Por omisión. En el esquema por omisión, Control+X
se asigna a
Cortar
. Aunque el esquema Emacs no redefine explícitamente
Control+X
, pulsar Control+X
es necesario como parte de muchos de sus
enlaces de teclas. En el esquema Emacs, cuando se pulsa Control+X
, ya se está
a medio camino de introducir una de las muchas secuencias de teclas asignadas posibles. No sería de esperar que la acción Cortar
se invocase en este momento.
Para este tipo de conflicto, la regla es que se ignore la secuencia de teclas Control+X
asignada a Cortar
. De lo contrario, no sería posible completar muchos de los enlaces de teclas en la configuración Emacs.
Características de accesibilidad en Eclipse
Cambiar los enlaces de tecla
Sistema de ayuda en línea