<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<!--
     Copyright (c) 2005, 2015 IBM Corporation and others.

     This program and the accompanying materials
     are made available under the terms of the Eclipse Public License 2.0
     which accompanies this distribution, and is available at
     https://www.eclipse.org/legal/epl-2.0/

     SPDX-License-Identifier: EPL-2.0
    
     Contributors:
         IBM Corporation - initial API and implementation
         Kaloyan Raev <kaloyan.r@zend.com> - Bug 471433
 -->

<plugin>
     <extension
         point="org.eclipse.ui.editors">
      <editor
            name="%AntEditor.name"
            icon="$nl$/icons/full/obj16/ant_buildfile.png"
            class="org.eclipse.ant.internal.ui.editor.AntEditor"
            contributorClass="org.eclipse.ant.internal.ui.editor.AntEditorActionContributor"
            id="org.eclipse.ant.ui.internal.editor.AntEditor">
            <contentTypeBinding
               contentTypeId="org.eclipse.ant.core.antBuildFile"/> 
      </editor>
   </extension>
   <extension
         point="org.eclipse.ui.views">
      <category
            name="%CategoryView.antViews"
            id="org.eclipse.ant.ui.views">
      </category>
      <view
            name="%View.antView"
            icon="$nl$/icons/full/eview16/ant_view.png"
            category="org.eclipse.ant.ui.views"
            fastViewWidthRatio="0.40"
            class="org.eclipse.ant.internal.ui.views.AntView"
            id="org.eclipse.ant.ui.views.AntView">
      </view>
   </extension>
   
   <extension
          point="org.eclipse.ui.contexts">
       <context
             name="%context.editingAnt.name"
             description="%context.editingAnt.description"
             parentId="org.eclipse.ui.textEditorScope"
             id="org.eclipse.ant.ui.AntEditorScope">
       </context>
   </extension>
   
<!--   NOTE:
M1 = CTRL/COMMAND 
M2 = SHIFT 
M3 = ALT 
M4 = Platform-specific fourth key -->
   <extension
         point="org.eclipse.ui.commands">
      <command
            categoryId="org.eclipse.jdt.ui.category.source"
            defaultHandler="org.eclipse.ant.internal.ui.editor.actions.OpenExternalAntDocHandler"
            description="%ActionDefinition.openExternalDoc.description"
            helpContextId="open_ext_ant_doc_context"
            id="org.eclipse.ant.ui.openExternalDoc"
            name="%ActionDefinition.openExternalDoc.name">
      </command>
      <command
            name="%ActionDefinition.renameInFile.name"
            description="%ActionDefinition.renameInFile.description"
            categoryId="org.eclipse.jdt.ui.category.source"
            id="org.eclipse.ant.ui.renameInFile">
      </command>
      <command
            name="%AntShortcut.description.run"
            description="%AntShortcut.description.run"
            categoryId="org.eclipse.debug.ui.category.run"
            id="org.eclipse.ant.ui.antShortcut.run">
      </command>
       <command
            name="%AntShortcut.description.debug"
            description="%AntShortcut.description.debug"
            categoryId="org.eclipse.debug.ui.category.run"
            id="org.eclipse.ant.ui.antShortcut.debug">
      </command>
      <command 
      	name="%toggleMarkOccurrences.label"
      	description="%toggleMarkOccurrences.description"
      	categoryId="org.eclipse.jdt.ui.category.source"
      	id="org.eclipse.ant.ui.toggleMarkOccurrences" />
      <command
            categoryId="org.eclipse.jdt.ui.category.source"
            defaultHandler="org.eclipse.ant.internal.ui.editor.actions.OpenAntDeclarationHander"
            description="%OpenDeclarationCommand.description"
            helpContextId="open_ant_declaration_context"
            id="org.eclipse.ant.ui.open.declaration.command"
            name="%OpenDeclarationCommand.label">
      </command> 
   </extension>
   <extension point="org.eclipse.ui.bindings">
         <key
            sequence="M1+M2+F"
            contextId="org.eclipse.ant.ui.AntEditorScope"
            commandId="org.eclipse.jdt.ui.edit.text.java.format"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
      <key
            sequence="M2+F2"
            contextId="org.eclipse.ant.ui.AntEditorScope"
            commandId="org.eclipse.ant.ui.openExternalDoc"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
       <key
            sequence="M2+M3+R"
            contextId="org.eclipse.ant.ui.AntEditorScope"
            commandId="org.eclipse.ant.ui.renameInFile"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
       <key
         	platform="carbon"
            sequence="M2+M3+R"
            contextId="org.eclipse.ant.ui.AntEditorScope"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
       <key
         	platform="carbon"
            sequence="M1+M3+R"
            contextId="org.eclipse.ant.ui.AntEditorScope"
            commandId="org.eclipse.ant.ui.renameInFile"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
      <key
            sequence="M2+M3+X Q"
            
            commandId="org.eclipse.ant.ui.antShortcut.run"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
      <key
         	platform="carbon"
            sequence="M2+M3+X Q"
            
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
      <key
         	platform="carbon"
            sequence="M1+M3+X Q"
            
            commandId="org.eclipse.ant.ui.antShortcut.run"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
      <key
            sequence="M2+M3+D Q"
            
            commandId="org.eclipse.ant.ui.antShortcut.debug"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
      <!-- On carbon: Shift+Option+D is a character, Command+Option+D is Show/Hide Dock, Command+Control+D is dictionary lookup -->
      <key
         	platform="carbon"
            sequence="M2+M3+D Q"
            
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
      <key
         	platform="carbon"
            sequence="M1+M3+M4+D Q"
            
            commandId="org.eclipse.ant.ui.antShortcut.debug"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
      <key 
  	    	sequence="M2+M3+O"
  	    	contextId="org.eclipse.ant.ui.AntEditorScope"
  	    	commandId="org.eclipse.ant.ui.toggleMarkOccurrences"
  	    	schemeId="org.eclipse.ui.defaultAcceleratorConfiguration" /> 
      <key
         	platform="carbon"
         	sequence="M2+M3+O"
         	contextId="org.eclipse.ant.ui.AntEditorScope"
         	commandId=""
         	schemeId="org.eclipse.ui.defaultAcceleratorConfiguration" /> 
      <key 
      		platform="carbon" 
      		sequence="M1+M3+O" 
			contextId="org.eclipse.ant.ui.AntEditorScope"
			commandId="org.eclipse.ant.ui.toggleMarkOccurrences"
			schemeId="org.eclipse.ui.defaultAcceleratorConfiguration" />
      <key
            commandId="org.eclipse.ant.ui.open.declaration.command"
            contextId="org.eclipse.ant.ui.AntEditorScope"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
            sequence="F3">
      </key> 
	</extension>
   <extension
         point="org.eclipse.ui.perspectiveExtensions">
      <perspectiveExtension
            targetID="org.eclipse.ui.resourcePerspective">
         <view
               relative="org.eclipse.ui.views.ContentOutline"
               visible="false"
               id="org.eclipse.ant.ui.views.AntView"
               relationship="stack">
         </view>
         <viewShortcut
               id="org.eclipse.ant.ui.views.AntView">
         </viewShortcut>
      </perspectiveExtension>
      <perspectiveExtension
            targetID="org.eclipse.jdt.ui.JavaBrowsingPerspective">
         <view
               relative="org.eclipse.ui.views.ContentOutline"
               visible="false"
               id="org.eclipse.ant.ui.views.AntView"
               relationship="stack">
         </view>
         <viewShortcut
               id="org.eclipse.ant.ui.views.AntView">
         </viewShortcut>
      </perspectiveExtension>
      <perspectiveExtension
            targetID="org.eclipse.jdt.ui.JavaPerspective">
         <view
               relative="org.eclipse.ui.views.ContentOutline"
               visible="false"
               id="org.eclipse.ant.ui.views.AntView"
               relationship="stack">
         </view>
         <viewShortcut
               id="org.eclipse.ant.ui.views.AntView">
         </viewShortcut>
      </perspectiveExtension>
      <perspectiveExtension
            targetID="org.eclipse.jdt.ui.JavaHierarchyPerspective">
         <view
               relative="org.eclipse.ui.views.ContentOutline"
               visible="false"
               id="org.eclipse.ant.ui.views.AntView"
               relationship="stack">
         </view>
         <viewShortcut
               id="org.eclipse.ant.ui.views.AntView">
         </viewShortcut>
      </perspectiveExtension>
      <perspectiveExtension
            targetID="org.eclipse.debug.ui.DebugPerspective">
         <view
               relative="org.eclipse.ui.views.ContentOutline"
               visible="false"
               id="org.eclipse.ant.ui.views.AntView"
               relationship="stack">
         </view>
         <viewShortcut
               id="org.eclipse.ant.ui.views.AntView">
         </viewShortcut>
      </perspectiveExtension>
   </extension>
   <extension
         point="org.eclipse.ui.preferencePages">
      <page
            name="%PreferencePage.antPreferences"
            class="org.eclipse.ant.internal.ui.preferences.AntPreferencePage"
            id="org.eclipse.ant.ui.AntPreferencePage">
            <keywordReference id="org.eclipse.ant.ui.general"/>
      </page>
      <page
            name="%PreferencePage.antRuntimePreferences"
            category="org.eclipse.ant.ui.AntPreferencePage"
            class="org.eclipse.ant.internal.ui.preferences.AntRuntimePreferencePage"
            id="org.eclipse.ant.ui.AntRuntimePreferencePage">
            <keywordReference id="org.eclipse.ant.ui.runtime"/>
      </page>
      <page
            name="%PreferencePage.antEditorPreferences"
            category="org.eclipse.ant.ui.AntPreferencePage"
            class="org.eclipse.ant.internal.ui.preferences.AntEditorPreferencePage"
            id="org.eclipse.ant.ui.AntEditorPreferencePage">
            <keywordReference id="org.eclipse.ant.ui.editor"/>
      </page>
      <page
            name="%PreferencePage.antCodeFormatterPreferences"
            category="org.eclipse.ant.ui.AntEditorPreferencePage"
            class="org.eclipse.ant.internal.ui.preferences.AntCodeFormatterPreferencePage"
            id="org.eclipse.ant.ui.AntCodeFormatterPreferencePage">
            <keywordReference id="org.eclipse.ant.ui.formatter"/>
      </page>
       <page
            name="%PreferencePage.antCodeAssistPreferences"
            category="org.eclipse.ant.ui.AntEditorPreferencePage"
            class="org.eclipse.ant.internal.ui.preferences.AntCodeAssistPreferencePage"
            id="org.eclipse.ant.ui.AntCodeAssistPreferencePage">
            <keywordReference id="org.eclipse.ant.ui.codeAssist"/>
      </page>
      <page
            name="%PreferencePage.antTemplatePreferences"
            category="org.eclipse.ant.ui.AntEditorPreferencePage"
            class="org.eclipse.ant.internal.ui.editor.templates.AntTemplatePreferencePage"
            id="org.eclipse.ant.ui.TemplatesPreferencePage">
            <keywordReference id="org.eclipse.ant.ui.template"/>
      </page>
   </extension>
   <extension
         point="org.eclipse.ui.popupMenus">
      <viewerContribution
            targetID="#AntEditorRulerContext"
            id="#AntEditorRulerContext">
         <action
               label="%AddTask.label"
               helpContextId="org.eclipse.ui.AddTask_action_context"
               class="org.eclipse.ui.texteditor.TaskRulerAction"
               tooltip="%AddTask.tooltip"
               menubarPath="add"
               id="org.eclipse.ui.texteditor.TaskRulerAction">
         </action>
         <action
               label="%AddBookmark.label"
               helpContextId="org.eclipse.ui.bookmark_action_context"
               class="org.eclipse.ui.texteditor.BookmarkRulerAction"
               tooltip="%AddBookmark.tooltip"
               menubarPath="add"
               id="org.eclipse.ui.texteditor.BookmarkRulerAction">
         </action>
          <menu
			id="projection"
			label="%Folding.label"
			path="rulers">
		 </menu>
         <action
               label="%Dummy.label"
               tooltip="%Dummy.label"
               class="org.eclipse.ant.internal.ui.editor.actions.FoldingExpandAllRulerAction"
               menubarPath="projection/additions"
               definitionId="org.eclipse.ui.edit.text.folding.expand_all"
               id="org.eclipse.ant.ui.folding.expandAll">
         </action>
         <action
               label="%Dummy.label"
               tooltip="%Dummy.label"
               class="org.eclipse.ant.internal.ui.editor.actions.FoldingToggleRulerAction"
               menubarPath="projection/additions"
               definitionId="org.eclipse.ui.edit.text.folding.toggle"
               id="org.eclipse.ant.ui.folding.toggle">
         </action>
      </viewerContribution>
      <viewerContribution
            id="org.eclipse.ant.ui.RulerPopupActions"
            targetID="#AntEditorRulerContext">
         <action
               class="org.eclipse.debug.ui.actions.RulerEnableDisableBreakpointActionDelegate"
               id="org.eclipse.ant.ui.actions.EnableDisableBreakpointRulerActionDelegate"
               label="%EnableBreakpoint.label"
               menubarPath="debug">
         </action>
         <action
               class="org.eclipse.debug.ui.actions.RulerToggleBreakpointActionDelegate"
               id="org.eclipse.ant.ui.actions.ManageBreakpointRulerActionDelegate"
               label="%AddBreakpoint.label"
               menubarPath="debug">
         </action>
      </viewerContribution>
      <viewerContribution
            id="org.eclipse.ant.ui.debug.AntEditorPopupActions"
            targetID="org.eclipse.ant.internal.ui.editor.AntEditor">
         <action
               class="org.eclipse.debug.ui.actions.RunToLineActionDelegate"
               definitionId="org.eclipse.debug.ui.commands.RunToLine"
               helpContextId="run_to_line_action_context"
               id="org.eclipse.ant.ui.debug.RunToLine"
               label="%runToLineAction.label"
               menubarPath="additions">
         </action>
      </viewerContribution>
   </extension>
   
   <extension
         point="org.eclipse.ant.core.extraClasspathEntries">
      <extraClasspathEntry
            library="lib/antrunner.jar">
      </extraClasspathEntry>
      <extraClasspathEntry
            library="lib/remoteAnt.jar"
            eclipseRuntime="false">
      </extraClasspathEntry>
   </extension>
   <extension
         point="org.eclipse.debug.ui.consoleColorProviders">
      <consoleColorProvider
            class="org.eclipse.ant.internal.ui.console.AntConsoleColorProvider"
            processType="org.eclipse.ant.ui.antProcess"
            id="org.eclipse.ant.consoleColorProvider">
      </consoleColorProvider>
   </extension>
   <extension
         point="org.eclipse.ui.externaltools.configurationDuplicationMaps">
      <configurationMap
            sourceType="org.eclipse.ant.AntLaunchConfigurationType"
            builderType="org.eclipse.ant.AntBuilderLaunchConfigurationType">
      </configurationMap>
   </extension>
   <extension
         point="org.eclipse.debug.ui.launchConfigurationTabGroups">
      <launchConfigurationTabGroup
            type="org.eclipse.ant.AntLaunchConfigurationType"
            helpContextId="org.eclipse.ant.ui.ant_type_context"
            description="%antLaunchConfigurationTabGroup.description"
            class="org.eclipse.ant.internal.ui.launchConfigurations.AntTabGroup"
            id="org.eclipse.ant.ui.launchConfigurationTabGroup.ant">
      </launchConfigurationTabGroup>
      <launchConfigurationTabGroup
            type="org.eclipse.ant.AntBuilderLaunchConfigurationType"
            helpContextId="org.eclipse.ant.ui.ant_builder_type_context"
            description="%antBuilderLaunchConfigurationTabGroup.description"
            class="org.eclipse.ant.internal.ui.launchConfigurations.AntBuilderTabGroup"
            id="org.eclipse.ant.ui.launchConfigurationTabGroup.ant.builder">
      </launchConfigurationTabGroup>
   </extension>
   <extension
         point="org.eclipse.debug.ui.launchConfigurationTypeImages">
      <launchConfigurationTypeImage
            icon="$nl$/icons/full/obj16/ant.png"
            configTypeID="org.eclipse.ant.AntLaunchConfigurationType"
            id="org.eclipse.ant.launchConfigurationTypeImage.ant">
      </launchConfigurationTypeImage>
      <launchConfigurationTypeImage
            icon="$nl$/icons/full/obj16/ant.png"
            configTypeID="org.eclipse.ant.AntBuilderLaunchConfigurationType"
            id="org.eclipse.ant.launchConfigurationTypeImage.ant.builder">
      </launchConfigurationTypeImage>
   </extension>
   <extension point="org.eclipse.core.runtime.adapters">
	   <factory 
            class="" 
            adaptableType="org.eclipse.ant.internal.ui.model.AntTaskNode">
            <adapter type="org.eclipse.debug.ui.actions.ILaunchable"/>
        </factory>
      <factory 
            class="" 
            adaptableType="org.eclipse.ant.internal.ui.model.AntTargetNode">
            <adapter type="org.eclipse.debug.ui.actions.ILaunchable"/>
        </factory>
      <factory 
            class="" 
            adaptableType="org.eclipse.ant.internal.ui.model.AntProjectNode">
            <adapter type="org.eclipse.debug.ui.actions.ILaunchable"/>
        </factory>
         <factory 
            class=""
            adaptableType="org.eclipse.core.resources.IFile">
            <adapter type="org.eclipse.debug.ui.actions.ILaunchable"/>
         </factory>
         <factory 
            class="" 
            adaptableType="org.eclipse.ui.IPathEditorInput">
            <adapter type="org.eclipse.debug.ui.actions.ILaunchable"/>
         </factory>
      <factory
            adaptableType="org.eclipse.ant.internal.ui.model.IAntElement"
            class="org.eclipse.ant.internal.ui.model.AntElementAdapterFactory">
         <adapter
               type="org.eclipse.core.resources.IResource">
         </adapter>
      </factory>
   </extension>
   <extension
         point="org.eclipse.debug.ui.launchShortcuts">
      <shortcut
            category="org.eclipse.ui.externaltools"
            class="org.eclipse.ant.internal.ui.launchConfigurations.AntLaunchShortcut"
            description="%AntBuildShortcut.description"
            helpContextId="org.eclipse.ui.externaltools.launchShortcutHelpContext.antShortcut"
            icon="$nl$/icons/full/obj16/ant.png"
            id="org.eclipse.ant.ui.antShortcut"
            label="%AntLaunchShortcut.label"
            modes="run, debug">
        <contextualLaunch>
           <enablement>
             <with variable="selection">
               <count value="1"/>
               <iterate>
                 <or>
                   <instanceof value="org.eclipse.ant.internal.ui.model.AntElementNode"/>
                   <test property="org.eclipse.debug.ui.matchesContentType" value="org.eclipse.ant.core.antBuildFile"/>
                 </or>
               </iterate>
             </with>
           </enablement>
           <contextLabel
         	  mode="run"
         	  label="%AntLaunchShortcut.label"/>
         <contextLabel
         	  mode="debug"
         	  label="%AntLaunchShortcut.label"/>
  		 </contextualLaunch>
        <configurationType
              id="org.eclipse.ant.AntLaunchConfigurationType">
        </configurationType>
      </shortcut>
      <shortcut
            category="org.eclipse.ui.externaltools"
            class="org.eclipse.ant.internal.ui.launchConfigurations.AntLaunchShortcutWithDialog"
            description="%AntBuild...Shortcut.description"
            helpContextId="org.eclipse.ui.externaltools.launchShortcutHelpContext.antShortcutWithDialog"
            icon="$nl$/icons/full/obj16/ant.png"
            id="org.eclipse.ant.ui.antShortcutWithDialog"
            label="%AntLaunchShortcutWithDialog.label"
            modes="run, debug">
        <contextualLaunch>
           <enablement>
             <with variable="selection">
               <count value="1"/>
               <iterate>
                 <or>
                   <instanceof value="org.eclipse.ant.internal.ui.model.AntElementNode"/>
                   <test property="org.eclipse.debug.ui.matchesContentType" value="org.eclipse.ant.core.antBuildFile"/>
                 </or>
               </iterate>
             </with>
           </enablement>
           <contextLabel
         	  mode="run"
         	  label="%AntLaunchShortcutWithDialog.label"/>
          <contextLabel
         	  mode="debug"
         	  label="%AntLaunchShortcutWithDialog.label"/>
  		 </contextualLaunch>
        <configurationType
              id="org.eclipse.ant.AntLaunchConfigurationType">
        </configurationType>
      </shortcut>
   </extension>
<!-- Console Extensions -->
   <extension
         point="org.eclipse.debug.ui.consoleLineTrackers">
      <consoleLineTracker
            class="org.eclipse.ant.internal.ui.console.TaskLineTracker"
            processType="org.eclipse.ant.ui.antProcess"
            id="org.eclipse.ant.ui.taskLineTracker">
      </consoleLineTracker>
   </extension>
   <extension
         point="org.eclipse.debug.core.statusHandlers">
      <statusHandler
            code="1000"
            plugin="org.eclipse.ant.ui"
            class="org.eclipse.ant.internal.ui.launchConfigurations.RunAntStatusHandler"
            id="org.eclipse.ant.ui.statusHandler.runAntInit">
      </statusHandler>
   </extension>
   
   <extension
         point="org.eclipse.ui.editors.templates">
      <contextType
            name="%buildFile.contextType.name"
            class="org.eclipse.ant.internal.ui.editor.templates.BuildFileContextType"
            id="org.eclipse.ant.ui.templateContextType.buildFile">
      </contextType>
       <contextType
            name="%target.contextType.name"
            class="org.eclipse.ant.internal.ui.editor.templates.TargetContextType"
            id="org.eclipse.ant.ui.templateContextType.target">
      </contextType>
       <contextType
            name="%task.contextType.name"
            class="org.eclipse.ant.internal.ui.editor.templates.TaskContextType"
            id="org.eclipse.ant.ui.templateContextType.task">
      </contextType>
      <resolver
            name="%ant.resolvers.src"
            type="src"
            icon="$nl$/templates/resolver.gif"
            description="%ant.resolvers.src.description"
            contextTypeId="org.eclipse.ant.ui.templateContextType.XML"
            class="org.eclipse.ant.internal.ui.editor.templates.AntVariableResolver">
      </resolver>
      <resolver
            name="%ant.resolvers.dst"
            type="dst"
            icon="$nl$/templates/resolver.gif"
            description="%ant.resolvers.dst.description"
            contextTypeId="org.eclipse.ant.ui.templateContextType.XML"
            class="org.eclipse.ant.internal.ui.editor.templates.AntVariableResolver">
      </resolver>
      <include
      		file="templates/ant.xml"
      		translations="$nl$/templates/ant.properties">
      </include>
   </extension>
    
	<extension id="buildFileProblem" name="%Ant.marker.label" point="org.eclipse.core.resources.markers">
  		<super type="org.eclipse.core.resources.problemmarker" /> 
  			<persistent value="true" /> 
	</extension>
	
    <extension
         point="org.eclipse.ui.newWizards">
    <wizard
            name="%antNewJavaProjectWizard.name"
            icon="$nl$/icons/full/obj16/new_ant_project.png"
            class="org.eclipse.ant.internal.ui.datatransfer.AntNewJavaProjectWizard"
            preferredPerspectives="org.eclipse.jdt.ui.JavaPerspective,org.eclipse.jdt.ui.JavaBrowsingPerspective,org.eclipse.jdt.ui.JavaHierarchyPerspective"
            project="true"
            category="org.eclipse.jdt.ui.java"
            finalPerspective="org.eclipse.jdt.ui.JavaPerspective"
            id="org.eclipse.ant.ui.wizards.JavaProjectWizard">
         <description>
            %antNewJavaProjectWizard.description
         </description>
      </wizard>
    </extension>
   
   <extension
         id="org.eclipse.ant.ui.AntDocumentSetupParticipant"
         name="%antDocumentSetupParticipant.name"
         point="org.eclipse.core.filebuffers.documentSetup">
      <participant
            extensions="ant, macrodef"
            contentTypeId="org.eclipse.ant.core.antBuildFile"
            class="org.eclipse.ant.internal.ui.editor.text.AntDocumentSetupParticipant">
      </participant>
   </extension>
   
   <extension point="org.eclipse.core.runtime.preferences">
		<initializer class="org.eclipse.ant.internal.ui.AntUIPreferenceInitializer"/>
	</extension>
   <extension
         point="org.eclipse.core.filebuffers.annotationModelCreation">
      <factory
            contentTypeId="org.eclipse.ant.core.antBuildFile"
            class="org.eclipse.ant.internal.ui.editor.text.AnnotationModelFactory"
            extensions="xml, ant, ent, macrodef"/>
   </extension>
   
   <extension
         point="org.eclipse.debug.core.sourcePathComputers">
      <sourcePathComputer
            class="org.eclipse.ant.internal.launching.debug.AntSourcePathComputerDelegate"
            id="org.eclipse.ant.ui.debug.sourcePathComputer">
      </sourcePathComputer>
   </extension>
    <extension
         point="org.eclipse.debug.ui.debugModelPresentations">
      <debugModelPresentation
            class="org.eclipse.ant.internal.ui.debug.model.AntDebugModelPresentation"
            id="org.eclipse.ant.ui.debug">
      </debugModelPresentation>
   </extension>
   
    <extension
         point="org.eclipse.ui.editorActions">
      <editorContribution
            targetID="org.eclipse.ant.ui.internal.editor.AntEditor"
            id="org.eclipse.ant.ui.BreakpointRulerActions">
         <action
               label="%AddBreakpoint.label"
               class="org.eclipse.debug.ui.actions.RulerToggleBreakpointActionDelegate"
               actionID="RulerDoubleClick"
               id="org.eclipse.ant.ui.actions.ManageBreakpointRulerAction">
         </action>
      </editorContribution>
   </extension>
   <extension
         point="org.eclipse.ui.console.consolePatternMatchListeners">
      <consolePatternMatchListener
            class="org.eclipse.ant.internal.ui.console.EclipseJavacPatternMatcher"
            id="org.eclipse.ant.ui.eclipseJavacPatternMatcher"
            qualifier="javac"
            regex="\[javac.*\].*(ERROR|WARNING) in.*">
         <enablement>
            <test property="org.eclipse.debug.ui.processTypeTest" value="org.eclipse.ant.ui.antProcess"/>
         </enablement>
      </consolePatternMatchListener>
	  <consolePatternMatchListener
         class="org.eclipse.ant.internal.ui.console.JavacPatternMatcher"
         id="org.eclipse.ant.ui.JavacPatternMatcher"
         qualifier="javac"
         regex="\[.*javac.*\] .*(\.java:.*:.*|.*\.java)">
         <enablement>
            <test property="org.eclipse.debug.ui.processTypeTest" value="org.eclipse.ant.ui.antProcess"/>
         </enablement>
      </consolePatternMatchListener>
	  <consolePatternMatchListener
         class="org.eclipse.ant.internal.ui.console.JikesJavacPatternMatcher"
         id="org.eclipse.ant.ui.JikesJavacPatternMatcher"
         qualifier="javac"
         regex="\[javac\].*\&quot;.*\&quot;:">
         <enablement>
            <test property="org.eclipse.debug.ui.processTypeTest" value="org.eclipse.ant.ui.antProcess"/>
         </enablement>
      </consolePatternMatchListener>      
   </extension>
       
	<extension 
         point="org.eclipse.ui.exportWizards"> 
      <wizard 
            id="org.eclipse.ant.ui.export" 
            name="%antExportWizard.name"
            class="org.eclipse.ant.internal.ui.datatransfer.AntBuildfileExportWizard" 
            icon="$nl$/icons/full/elcl16/exportAnt_co.png"
            category="org.eclipse.ui.Basic">
         <description> 
            %antExportWizard.description
         </description>
         <selection
               class="org.eclipse.jdt.core.IJavaProject">
         </selection>
      </wizard> 
   </extension>
       
	<extension point="org.eclipse.ui.actionSets">
 		<actionSet label="%antEditorPresentationActionSet.label" 
 			visible="false" 
 			id="org.eclipse.ant.ui.actionSet.presentation">
  			<action allowLabelUpdate="true" 
  				style="toggle" 
  				toolbarPath="org.eclipse.ui.edit.text.actionSet.presentation/Presentation" 
  				id="org.eclipse.ant.ui.toggleMarkOccurrences" 
  				definitionId="org.eclipse.ant.ui.toggleMarkOccurrences"
  				disabledIcon="$nl$/icons/full/dtool16/mark_occurrences.png" 
  				icon="$nl$/icons/full/etool16/mark_occurrences.png" 
  				label="%toggleMarkOccurrences.label" 
  				retarget="true" 
  				tooltip="%toggleMarkOccurrences.tooltip" />
			<action allowLabelUpdate="true" 
  				style="toggle" 
  				toolbarPath="org.eclipse.ui.edit.text.actionSet.presentation/Presentation" 
  				id="org.eclipse.ant.ui.toggleAutoReconcile"
  				disabledIcon="$nl$/icons/full/dlcl16/refresh.png" 
  				icon="$nl$/icons/full/elcl16/refresh.png" 
  				label="%toggleAutoReconcile.label" 
  				retarget="true" 
  				tooltip="%toggleAutoReconcile.tooltip" />
  		</actionSet>
  	</extension>
  	
  	<extension point="org.eclipse.ui.actionSetPartAssociations">
	  	<actionSetPartAssociation
	            targetID="org.eclipse.ant.ui.actionSet.presentation">
	         <part
	               id="org.eclipse.ant.ui.internal.editor.AntEditor">
	         </part>
	      </actionSetPartAssociation>
    <actionSetPartAssociation
          targetID="org.eclipse.ui.edit.text.actionSet.presentation">
       <part
             id="org.eclipse.ant.ui.internal.editor.AntEditor">
       </part>
    </actionSetPartAssociation>
      </extension>

         <extension
   		point="org.eclipse.ui.keywords">
      <keyword
            label="%preferenceKeywords.general"
            id="org.eclipse.ant.ui.general"/>
      <keyword
            label="%preferenceKeywords.runtime"
            id="org.eclipse.ant.ui.runtime"/>
      <keyword
            label="%preferenceKeywords.editor"
            id="org.eclipse.ant.ui.editor"/>
      <keyword
            label="%preferenceKeywords.formatter"
            id="org.eclipse.ant.ui.formatter"/>
      <keyword
            label="%preferenceKeywords.codeAssist"
            id="org.eclipse.ant.ui.codeAssist"/>
      <keyword
            label="%preferenceKeywords.template"
            id="org.eclipse.ant.ui.template"/>      
   </extension>
   
   <!-- refactoring -->
   
   <extension point="org.eclipse.ltk.core.refactoring.renameParticipants">
     <renameParticipant
            class="org.eclipse.ant.internal.ui.refactoring.LaunchConfigurationBuildfileRenameParticipant"
            name="%AntRenameParticipant.name"
            id="org.eclipse.ant.ui.refactoring.launchConfiguration.buildfileRename"> 
         <enablement>
           <with variable="element">
   	         <instanceof value="org.eclipse.core.resources.IFile"/>
           </with>
         </enablement>
      </renameParticipant>
	 <renameParticipant
            class="org.eclipse.ant.internal.ui.refactoring.LaunchConfigurationIProjectRenameParticipant"
            name="%AntRenameParticipant.name"
            id="org.eclipse.ant.ui.refactoring.launchConfiguration.projectRename">
         <enablement>
           <with variable="element">
   	         <instanceof value="org.eclipse.core.resources.IProject"/>
           </with>
         </enablement>
      </renameParticipant>
   </extension>

	<extension
       point="org.eclipse.ui.workbench.texteditor.hyperlinkDetectors">
    	<hyperlinkDetector
        	  activate="true"
	          class="org.eclipse.ant.internal.ui.editor.AntElementHyperlinkDetector"
	          description="%AntElementHyperlinkDetector.description"
    	      id="org.eclipse.ant.ui.AntElementHyperlinkDetector"
	          name="%AntElementHyperlinkDetector.label"
    	      targetId="org.eclipse.ant.ui.buildFiles">
    	</hyperlinkDetector>
     </extension>
     
     <extension
  		point="org.eclipse.ui.workbench.texteditor.hyperlinkDetectorTargets">
  		<target
    		id="org.eclipse.ant.ui.buildFiles"
    		name="%AntEditorHyperlinkTarget.name">
    		<context type="org.eclipse.ant.internal.ui.editor.AntEditor"/>
  		</target>
	</extension>
	
     <extension
           id="antRunner"
           point="org.eclipse.core.runtime.applications">
        <application>
           <run
                 class="org.eclipse.ant.internal.ui.WorkbenchAntRunner">
           </run>
        </application>
     </extension>
     <extension
           point="org.eclipse.ui.ide.markerSupport">
        <markerTypeCategory
              name="%antBreakpointGroupName">
           <markerTypeReference
                 id="org.eclipse.ant.ui.antLineBreakpointMarker">
           </markerTypeReference>
        </markerTypeCategory>
     </extension>
     <extension
           point="org.eclipse.ui.menus">
        <menuContribution
              locationURI="menu:navigate?endof=open.ext">
           <command
                 commandId="org.eclipse.ant.ui.open.declaration.command"
                 style="push">
              <visibleWhen
                    checkEnabled="false">
                 <reference
                       definitionId="org.eclipse.ant.ui.activeAntEditor">
                 </reference>
              </visibleWhen>
           </command>
           <command
                 commandId="org.eclipse.ant.ui.openExternalDoc"
                 style="push">
              <visibleWhen
                    checkEnabled="false">
                 <reference
                       definitionId="org.eclipse.ant.ui.activeAntEditor">
                 </reference>
              </visibleWhen>
           </command>
        </menuContribution>
        <menuContribution
              locationURI="popup:#AntEditorContext?endof=group.open">
           <command
                 commandId="org.eclipse.ant.ui.open.declaration.command"
                 style="push">
           </command>
           <command
                 commandId="org.eclipse.ant.ui.openExternalDoc"
                 style="push">
           </command>
        </menuContribution>
        <menuContribution
              allPopups="false"
              locationURI="toolbar:org.eclipse.ant.ui.views.AntView?endof=additions">
           <command
                 commandId="org.eclipse.ui.navigate.collapseAll"
                 style="push">
           </command>
        </menuContribution>
     </extension>
     <extension
           point="org.eclipse.core.expressions.definitions">
        <definition
              id="org.eclipse.ant.ui.activeAntEditor">
           <with
                 variable="activeEditorId">
              <equals
                    value="org.eclipse.ant.ui.internal.editor.AntEditor">
              </equals>
           </with>
        </definition>
     </extension>
     <extension
           point="org.eclipse.ui.handlers">
        <handler
              class="org.eclipse.ant.internal.ui.views.actions.CollapseAllHandler"
              commandId="org.eclipse.ui.navigate.collapseAll"
              helpContextId="ant_collapse_all_handler">
           <activeWhen>
              <with
                    variable="activePartId">
                 <equals
                       value="org.eclipse.ant.ui.views.AntView">
                 </equals>
              </with>
           </activeWhen>
        </handler>
     </extension>
     
     <!-- dark theme defaults -->
     <extension
           point="org.eclipse.e4.ui.css.swt.theme">
        <stylesheet uri="css/e4-dark_ant_prefstyle.css"> 
           <themeid refid="org.eclipse.e4.ui.css.theme.e4_dark"></themeid>
        </stylesheet>
    </extension>
</plugin>
