Schematy reprezentują ogólny styl lub kompozycję przypisań. Na przykład w środowisku roboczym dostępne są schematy "Default" i "Emacs". W danym momencie tylko jeden schemat może być aktywny. Użytkownicy końcowi decydują, który schemat jest aktywny, używając ogólnego okna dialogowego Preferencje.
Z punktu widzenia implementacji schematy to po prostu nazwane grupy przypisań. Schemat nie pełni sam z siebie żadnej funkcji, dopóki nie zostaną z nim powiązane przypisania.
Warto ponownie przyjrzeć się punktowi rozszerzenia org.eclipse.ui.bindings w kodzie znaczników środowiska roboczego, aby znaleźć definicje przypisań i przekonać się, w jaki sposób definiuje się powiązanie konfiguracji klawiszy z przypisaniem.
... <key sequence="Ctrl+S" commandId="org.eclipse.ui.file.save" schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"> </key> ... <key sequence="Ctrl+X Ctrl+S" commandId="org.eclipse.ui.file.save" schemeId="org.eclipse.ui.emacsAcceleratorConfiguration"> </key> ...
Dla komendy "org.eclipse.ui.file.save" zdefiniowano dwa przypisania klawiszy. Należy zwrócić uwagę, że dla każdego z nich zdefiniowano inny parametr schemeId. Gdy aktywny jest schemat domyślny, do wywołania komendy służy przypisanie klawiszy "Ctrl+S". Gdy jest aktywny schemat emacs, komendę można wywołać przy użyciu sekwencji "Ctrl+X Ctrl+S".
Po zdefiniowaniu nowego przypisania dany moduł dodatkowy najprawdopodobniej przypisze je do istniejącego schematu. Jednak ten moduł dodatkowy może także definiować zupełnie nowy styl schematu. W takiej sytuacji można zdefiniować nowy typ schematu wewnątrz definicji punktu rozszerzenia org.eclipse.ui.bindings. Poniżej przedstawiono kod znaczników środowiska roboczego, który definiuje dwie konfiguracje klawiszy - domyślną i emacs:
... <scheme name="%keyConfiguration.default.name" description="%keyConfiguration.default.description" id="org.eclipse.ui.defaultAcceleratorConfiguration"> </scheme> <scheme name="%keyConfiguration.emacs.name" parentId="org.eclipse.ui.defaultAcceleratorConfiguration" description="%keyConfiguration.emacs.description" id="org.eclipse.ui.emacsAcceleratorConfiguration"> </scheme> ...
Należy zauważyć, że parametr name zdefiniowany w tym miejscu jest używany na stronie preferencji na liście schematów.
Użytkownik wybiera aktywny schemat na stronie preferencji. Można też zdefiniować domyślny schemat aktywny w pliku "plugin_customization.ini". Ustawienie to może wyglądać następująco:
org.eclipse.ui/KEY_CONFIGURATION_ID=org.eclipse.ui.defaultAcceleratorConfiguration