| <?xml version="1.0" encoding="UTF-8"?> | 
 | <?eclipse version="3.0"?> | 
 | <plugin> | 
 |   <extension point="org.eclipse.ui.editors"> | 
 |     <editor class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:com.google.eclipse.protobuf.ui.editor.ProtobufEditor" | 
 |       contributorClass="org.eclipse.ui.editors.text.TextEditorActionContributor" default="true" icon="icons/pb.gif" | 
 |       id="com.google.eclipse.protobuf.Protobuf" name="%editor.name"> | 
 |       <contentTypeBinding contentTypeId="com.google.eclipse.protobuf.Protobuf"> | 
 |       </contentTypeBinding> | 
 |     </editor> | 
 |   </extension> | 
 |   <extension point="org.eclipse.ui.handlers"> | 
 |     <handler | 
 |       class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclarationHandler" | 
 |       commandId="org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclaration"> | 
 |       <activeWhen> | 
 |         <reference definitionId="com.google.eclipse.protobuf.Protobuf.Editor.opened"> | 
 |         </reference> | 
 |       </activeWhen> | 
 |     </handler> | 
 |     <handler | 
 |       class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:org.eclipse.xtext.ui.editor.handler.ValidateActionHandler" | 
 |       commandId="com.google.eclipse.protobuf.Protobuf.validate"> | 
 |       <activeWhen> | 
 |         <reference definitionId="com.google.eclipse.protobuf.Protobuf.Editor.opened"> | 
 |         </reference> | 
 |       </activeWhen> | 
 |     </handler> | 
 |     <handler | 
 |       class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:com.google.eclipse.protobuf.ui.commands.semicolon.SmartSemicolonHandler" | 
 |       commandId="com.google.eclipse.protobuf.ui.smartSemicolon"> | 
 |       <activeWhen> | 
 |         <reference definitionId="com.google.eclipse.protobuf.Protobuf.Editor.opened"> | 
 |         </reference> | 
 |       </activeWhen> | 
 |     </handler> | 
 |   </extension> | 
 |   <extension point="org.eclipse.core.expressions.definitions"> | 
 |     <definition id="com.google.eclipse.protobuf.Protobuf.Editor.opened"> | 
 |       <and> | 
 |         <reference definitionId="isActiveEditorAnInstanceOfXtextEditor" /> | 
 |         <with variable="activeEditor"> | 
 |           <test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName" value="com.google.eclipse.protobuf.Protobuf" | 
 |             forcePluginActivation="true" /> | 
 |         </with> | 
 |       </and> | 
 |     </definition> | 
 |   </extension> | 
 |   <extension point="org.eclipse.ui.preferencePages"> | 
 |     <page | 
 |       class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:com.google.eclipse.protobuf.ui.preferences.general.GeneralPreferencePage" | 
 |       id="com.google.eclipse.protobuf.Protobuf" name="%page.name"> | 
 |       <keywordReference id="com.google.eclipse.protobuf.ui.keyword_Protobuf" /> | 
 |     </page> | 
 |     <page category="com.google.eclipse.protobuf.ui.preferences.editor.general.EditorPreferencePage" | 
 |       class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:org.eclipse.xtext.ui.editor.syntaxcoloring.SyntaxColoringPreferencePage" | 
 |       id="com.google.eclipse.protobuf.Protobuf.coloring" name="%page.name.0"> | 
 |       <keywordReference id="com.google.eclipse.protobuf.ui.keyword_Protobuf" /> | 
 |     </page> | 
 |     <page category="com.google.eclipse.protobuf.Protobuf" | 
 |       class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:com.google.eclipse.protobuf.ui.preferences.compiler.CompilerPreferencePage" | 
 |       id="com.google.eclipse.protobuf.ui.preferences.compiler.CompilerPreferencePage" name="%page.name.2"> | 
 |       <keywordReference id="com.google.eclipse.protobuf.ui.keyword_Protobuf" /> | 
 |     </page> | 
 |     <page category="com.google.eclipse.protobuf.Protobuf" | 
 |       class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:com.google.eclipse.protobuf.ui.preferences.editor.general.EditorPreferencePage" | 
 |       id="com.google.eclipse.protobuf.ui.preferences.editor.general.EditorPreferencePage" name="%page.name.4"> | 
 |       <keywordReference id="com.google.eclipse.protobuf.ui.keyword_Protobuf" /> | 
 |     </page> | 
 |     <page category="com.google.eclipse.protobuf.ui.preferences.editor.general.EditorPreferencePage" | 
 |       class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:com.google.eclipse.protobuf.ui.preferences.editor.save.SaveActionsPreferencePage" | 
 |       id="com.google.eclipse.protobuf.ui.preferences.editor.save.SaveActionsPreferencePage" name="%page.name.5"> | 
 |       <keywordReference id="com.google.eclipse.protobuf.ui.keyword_Protobuf" /> | 
 |     </page> | 
 |     <page category="com.google.eclipse.protobuf.ui.preferences.editor.general.EditorPreferencePage" | 
 |       class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:com.google.eclipse.protobuf.ui.preferences.editor.numerictag.NumericTagPreferencePage" | 
 |       id="com.google.eclipse.protobuf.ui.preferences.editor.numerictag.NumericTagPreferencePage" name="%page.name.6"> | 
 |       <keywordReference id="com.google.eclipse.protobuf.ui.keyword_Protobuf" /> | 
 |     </page> | 
 |   </extension> | 
 |   <extension point="org.eclipse.ui.keywords"> | 
 |     <keyword id="com.google.eclipse.protobuf.ui.keyword_Protobuf" label="%keyword.label" /> | 
 |   </extension> | 
 |   <extension point="org.eclipse.ui.commands"> | 
 |     <command description="%command.description" id="com.google.eclipse.protobuf.Protobuf.validate" name="%command.name"> | 
 |     </command> | 
 |   </extension> | 
 |   <extension point="org.eclipse.ui.menus"> | 
 |     <menuContribution locationURI="popup:#TextEditorContext?after=group.edit"> | 
 |       <command commandId="com.google.eclipse.protobuf.Protobuf.validate" style="push" tooltip="%command.tooltip"> | 
 |         <visibleWhen checkEnabled="false"> | 
 |           <reference definitionId="com.google.eclipse.protobuf.Protobuf.Editor.opened"> | 
 |           </reference> | 
 |         </visibleWhen> | 
 |       </command> | 
 |     </menuContribution> | 
 |   </extension> | 
 |   <extension point="org.eclipse.ui.menus"> | 
 |     <menuContribution locationURI="popup:#TextEditorContext?endof=group.find"> | 
 |       <command commandId="org.eclipse.xtext.ui.editor.FindReferences"> | 
 |         <visibleWhen checkEnabled="false"> | 
 |           <reference definitionId="com.google.eclipse.protobuf.Protobuf.Editor.opened"> | 
 |           </reference> | 
 |         </visibleWhen> | 
 |       </command> | 
 |     </menuContribution> | 
 |   </extension> | 
 |   <extension point="org.eclipse.ui.handlers"> | 
 |     <handler | 
 |       class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:org.eclipse.xtext.ui.editor.findrefs.FindReferencesHandler" | 
 |       commandId="org.eclipse.xtext.ui.editor.FindReferences"> | 
 |       <activeWhen> | 
 |         <reference definitionId="com.google.eclipse.protobuf.Protobuf.Editor.opened"> | 
 |         </reference> | 
 |       </activeWhen> | 
 |     </handler> | 
 |   </extension> | 
 |   <!-- adding resource factories --> | 
 |   <extension point="org.eclipse.emf.ecore.extension_parser"> | 
 |     <parser | 
 |       class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:org.eclipse.xtext.resource.IResourceFactory" | 
 |       type="proto"> | 
 |     </parser> | 
 |   </extension> | 
 |   <extension point="org.eclipse.xtext.extension_resourceServiceProvider"> | 
 |     <resourceServiceProvider | 
 |       class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:org.eclipse.xtext.ui.resource.IResourceUIServiceProvider" | 
 |       uriExtension="proto"> | 
 |     </resourceServiceProvider> | 
 |   </extension> | 
 |   <extension point="org.eclipse.emf.ecore.extension_parser"> | 
 |     <parser | 
 |       class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:org.eclipse.xtext.resource.IResourceFactory" | 
 |       type="protodevel"> | 
 |     </parser> | 
 |   </extension> | 
 |   <extension point="org.eclipse.xtext.extension_resourceServiceProvider"> | 
 |     <resourceServiceProvider | 
 |       class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:org.eclipse.xtext.ui.resource.IResourceUIServiceProvider" | 
 |       uriExtension="protodevel"> | 
 |     </resourceServiceProvider> | 
 |   </extension> | 
 |   <!-- Quick Outline --> | 
 |   <extension point="org.eclipse.ui.handlers"> | 
 |     <handler | 
 |       class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:org.eclipse.xtext.ui.editor.outline.quickoutline.ShowQuickOutlineActionHandler" | 
 |       commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline"> | 
 |       <activeWhen> | 
 |         <reference definitionId="com.google.eclipse.protobuf.Protobuf.Editor.opened"> | 
 |         </reference> | 
 |       </activeWhen> | 
 |     </handler> | 
 |   </extension> | 
 |   <extension point="org.eclipse.ui.commands"> | 
 |     <command description="%command.description.0" id="org.eclipse.xtext.ui.editor.outline.QuickOutline" name="%command.name.0"> | 
 |     </command> | 
 |     <command categoryId="org.eclipse.ui.category.textEditor" description="%command.description.1" | 
 |       id="com.google.eclipse.protobuf.ui.smartSemicolon" name="%command.name.1"> | 
 |     </command> | 
 |   </extension> | 
 |   <extension point="org.eclipse.ui.menus"> | 
 |     <menuContribution locationURI="popup:#TextEditorContext?after=group.open"> | 
 |       <command commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline" style="push" tooltip="%command.tooltip.0"> | 
 |         <visibleWhen checkEnabled="false"> | 
 |           <reference definitionId="com.google.eclipse.protobuf.Protobuf.Editor.opened" /> | 
 |         </visibleWhen> | 
 |       </command> | 
 |     </menuContribution> | 
 |   </extension> | 
 |   <!-- quickfix marker resolution generator --> | 
 |   <extension point="org.eclipse.ui.ide.markerResolution"> | 
 |     <markerResolutionGenerator class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator" | 
 |       markerType="com.google.eclipse.protobuf.ui.protobuf.check.fast"> | 
 |       <attribute name="FIXABLE_KEY" value="true"> | 
 |       </attribute> | 
 |     </markerResolutionGenerator> | 
 |     <markerResolutionGenerator class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator" | 
 |       markerType="com.google.eclipse.protobuf.ui.protobuf.check.normal"> | 
 |       <attribute name="FIXABLE_KEY" value="true"> | 
 |       </attribute> | 
 |     </markerResolutionGenerator> | 
 |     <markerResolutionGenerator class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator" | 
 |       markerType="com.google.eclipse.protobuf.ui.protobuf.check.expensive"> | 
 |       <attribute name="FIXABLE_KEY" value="true"> | 
 |       </attribute> | 
 |     </markerResolutionGenerator> | 
 |   </extension> | 
 |   <!-- Command Bindings --> | 
 |   <extension point="org.eclipse.ui.bindings"> | 
 |     <key commandId="com.google.eclipse.protobuf.ui.smartSemicolon" contextId="org.eclipse.xtext.ui.XtextEditorScope" | 
 |       schemeId="org.eclipse.ui.defaultAcceleratorConfiguration" sequence=";"> | 
 |     </key> | 
 |   </extension> | 
 |   <!-- Property Pages --> | 
 |   <extension point="org.eclipse.ui.propertyPages"> | 
 |     <page | 
 |       class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:com.google.eclipse.protobuf.ui.preferences.general.GeneralPreferencePage" | 
 |       id="com.google.eclipse.protobuf.Protobuf" name="%page.name" selectionFilter="single"> | 
 |       <enabledWhen> | 
 |         <adapt type="org.eclipse.core.resources.IProject"> | 
 |         </adapt> | 
 |       </enabledWhen> | 
 |     </page> | 
 |     <page category="com.google.eclipse.protobuf.Protobuf" | 
 |       class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:com.google.eclipse.protobuf.ui.preferences.compiler.CompilerPreferencePage" | 
 |       id="com.google.eclipse.protobuf.ui.properties.compiler.PropertyPage" name="%page.name.2" selectionFilter="single"> | 
 |       <enabledWhen> | 
 |         <adapt type="org.eclipse.core.resources.IProject" /> | 
 |       </enabledWhen> | 
 |     </page> | 
 |     <page category="com.google.eclipse.protobuf.Protobuf" | 
 |       class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:com.google.eclipse.protobuf.ui.preferences.paths.PathsPreferencePage" | 
 |       id="com.google.eclipse.protobuf.ui.properties.paths.PropertyPage" name="%page.name.3" selectionFilter="single"> | 
 |       <enabledWhen> | 
 |         <adapt type="org.eclipse.core.resources.IProject" /> | 
 |       </enabledWhen> | 
 |     </page> | 
 |   </extension> | 
 |   <extension point="org.eclipse.xtext.builder.participant"> | 
 |     <participant | 
 |       class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:com.google.eclipse.protobuf.ui.builder.protoc.ProtobufBuildParticipant"> | 
 |     </participant> | 
 |   </extension> | 
 |   <extension id="protocMarker" name="%protoc.marker.name" point="org.eclipse.core.resources.markers"> | 
 |     <super type="org.eclipse.core.resources.problemmarker"> | 
 |     </super> | 
 |     <super type="org.eclipse.core.resources.textmarker"> | 
 |     </super> | 
 |     <persistent value="true"> | 
 |     </persistent> | 
 |   </extension> | 
 |     <!-- marker definitions for com.google.eclipse.protobuf.Protobuf --> | 
 |   <extension id="protobuf.check.fast" name="%editor.marker.name" point="org.eclipse.core.resources.markers"> | 
 |     <super type="org.eclipse.xtext.ui.check.fast"/> | 
 |     <persistent value="true"/> | 
 |   </extension> | 
 |   <extension id="protobuf.check.normal" name="%editor.marker.name" point="org.eclipse.core.resources.markers"> | 
 |      <super type="org.eclipse.xtext.ui.check.normal"/> | 
 |      <persistent value="true"/> | 
 |   </extension> | 
 |   <extension id="protobuf.check.expensive" name="%editor.marker.name" point="org.eclipse.core.resources.markers"> | 
 |      <super type="org.eclipse.xtext.ui.check.expensive"/> | 
 |      <persistent value="true"/> | 
 |   </extension> | 
 |   <!-- Rename Refactoring --> | 
 |   <extension point="org.eclipse.ui.handlers"> | 
 |     <handler | 
 |       class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.IRenameElementHandler" | 
 |       commandId="org.eclipse.xtext.ui.refactoring.RenameElement"> | 
 |       <activeWhen> | 
 |         <reference definitionId="com.google.eclipse.protobuf.Protobuf.Editor.opened"> | 
 |         </reference> | 
 |       </activeWhen> | 
 |     </handler> | 
 |   </extension> | 
 |   <extension point="org.eclipse.ui.menus"> | 
 |     <menuContribution locationURI="popup:#TextEditorContext?after=group.edit"> | 
 |       <command commandId="org.eclipse.xtext.ui.refactoring.RenameElement" style="push"> | 
 |         <visibleWhen checkEnabled="false"> | 
 |           <reference definitionId="com.google.eclipse.protobuf.Protobuf.Editor.opened"> | 
 |           </reference> | 
 |         </visibleWhen> | 
 |       </command> | 
 |     </menuContribution> | 
 |   </extension> | 
 |   <extension point="org.eclipse.ui.newWizards"> | 
 |     <category id="com.google.eclipse.protobuf.ui" name="Protocol Buffer"> | 
 |     </category> | 
 |     <wizard category="com.google.eclipse.protobuf.ui" class="com.google.eclipse.protobuf.ui.wizards.NewProtoFileWizard" | 
 |       icon="icons/pb.gif" id="com.google.eclipse.protobuf.ui.wizards.NewProtoFileWizard" name="Protocol Buffer Descriptor File"> | 
 |     </wizard> | 
 |   </extension> | 
 |   <extension point="org.eclipse.ui.perspectiveExtensions"> | 
 |     <perspectiveExtension targetID="*"> | 
 |       <newWizardShortcut id="com.google.eclipse.protobuf.ui.wizards.NewProtoFileWizard" /> | 
 |     </perspectiveExtension> | 
 |   </extension> | 
 |     <extension point="org.eclipse.xtext.ui.shared.overridingGuiceModule"> | 
 |     <module class="com.google.eclipse.protobuf.ui.SharedModuleOverrides"/> | 
 |   </extension> | 
 |   <extension | 
 |          point="org.eclipse.ui.trace.traceComponents"> | 
 |       <component | 
 |             id="com.google.eclipse.protobuf.ui.trace" | 
 |             label="%trace.component.label"> | 
 |          <bundle | 
 |                consumed="false" | 
 |                name="com.google.eclipse.protobuf.ui"> | 
 |          </bundle> | 
 |       </component> | 
 |    </extension> | 
 | </plugin> |