Les configurations de raccourcis clavier sont utilisées pour représenter globalement les jeux de raccourcis. Par exemple, le plan de travail fournit une configuration de raccourcis clavier "par défaut" et une autre "Emacs". Une seule d'entre elles est active à un moment donné. Les utilisateurs finaux contrôlent laquelle est active à l'aide de la boîte de dialogue Préférences.
Du point de vue de l'implémentation, les configurations de raccourcis clavier sont simplement désignées comme groupes de jeux de raccourcis. Une configuration n'effectue aucune tâche si des jeux de raccourcis ne lui sont pas associés. En fait, une configuration de raccourcis n'apparaît pas dans la boîte de dialogue Préférences si aucun jeu de raccourcis clavier n'est défini pour elle.
Observons à nouveau le jeu de raccourcis emacs pour voir comment il est associé à une configuration :
<extension point="org.eclipse.ui.acceleratorSets"> <acceleratorSet scopeId="org.eclipse.ui.globalScope" configurationId="org.eclipse.ui.emacsAcceleratorConfiguration"> <accelerator key="Ctrl+F4||Ctrl+X Ctrl+K" id="org.eclipse.ui.file.close"> </accelerator> <accelerator key="Ctrl+Maj+F4||Ctrl+X Ctrl+C" id="org.eclipse.ui.file.closeAll"> </accelerator> <accelerator key="Ctrl+X Ctrl+S" id="org.eclipse.ui.file.save"> </accelerator> ...
Lorsqu'un jeu de raccourcis est défini, il indique l'ID de configuration de sa configuration associée. Le jeu de raccourcis sera uniquement employé si l'utilisateur a choisi la configuration à laquelle il appartient.
Lorsqu'un plug-in définit un jeu de raccourcis clavier, il l'assigne souvent à une configuration de raccourcis existante. Toutefois, votre plug-in peut vouloir définir un tout autre style de raccourcis. Dans ce cas, vous pouvez définir un nouveau type de configuration de raccourcis à l'aide du point d'extension org.eclipse.ui.acceleratorConfigurations. Les marques du plan de travail pour ses configurations de raccourcis se présentent comme suit :
<extension point="org.eclipse.ui.acceleratorConfigurations"> <acceleratorConfiguration name="%DefaultAcceleratorConfiguration.name" description="%DefaultAcceleratorConfiguration.description" id="org.eclipse.ui.defaultAcceleratorConfiguration"> </acceleratorConfiguration> <acceleratorConfiguration name="%EmacsAcceleratorConfiguration.name" description="%EmacsAcceleratorConfiguration.description" id="org.eclipse.ui.emacsAcceleratorConfiguration"> </acceleratorConfiguration> </extension>
Le nom est utilisé dans la page de préférences de la liste de configurations disponibles.