설계

설계는 바인딩의 일반 스타일이나 주제를 나타내는 데 사용됩니다. 예를 들어, Workbench는 "기본" 설계와 "Emacs" 설계를 제공합니다. 지정된 시간에 하나의 설계만 활성화됩니다.  일반 사용자는 일반 환경 설정 대화 상자를 사용하여 활성화되는 키 구성을 제어합니다.

구현 관점에서 설계는 단순히 이름 지정된 바인딩 그룹화입니다. 설계는 연관된 바인딩이 있는 경우를 제외하고 단독으로는 아무 것도 수행하지 않습니다.  

바인딩 정의 및 설계가 바인딩과 연관되는 방법을 찾을 수 있도록 org.eclipse.ui.bindings에 대한 Workbench 마크업을 다시 살펴봅시다.

...
<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>
...

"org.eclipse.ui.file.save" 명령에 정의된 두 개의 키 바인딩이 있습니다. 각 바인딩마다 다른 schemeId가 정의되어 있음에 유의하십시오. 기본 설계가 활성 상태일 때 "Ctrl+S" 키 바인딩은 명령을 호출합니다. emacs 설계가 활성 상태일 때 순서 "Ctrl+X Ctrl+S"는 명령을 호출합니다.

새 설계 정의

플러그인이 바인딩을 정의할 때 대개 기존 설계에 바인딩을 지정하는 경우가 많습니다. 그러나 플러그인은 완전히 새로운 스타일의 설계를 정의할 수도 있습니다. 이런 경우, org.eclipse.ui.bindings 정의 내에 새로운 유형의 설계를 정의할 수 있습니다. 기본 및 emacs 키 구성을 정의하는 Workbench 마크업은 아래에 표시되어 있습니다.

...
<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>
...

여기서 정의된 이름은 설계 목록의 환경 설정 페이지에서 사용되는 이름임에 유의하십시오.

설계 활성화

사용자는 환경 설정 페이지를 통해 활성 설계를 제어합니다. 그러나 기본 활성 계획을 "plugin_customization.ini" 파일의 일부로 정의할 수 있습니다. 다음은 환경설정입니다.

org.eclipse.ui/KEY_CONFIGURATION_ID=org.eclipse.ui.defaultAcceleratorConfiguration