<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<plugin>
	<extension point="org.eclipse.dltk.ui.language">
		<language class="org.eclipse.dltk.sh.internal.ui.ShelledUILanguageToolkit"
			nature="org.eclipse.dltk.sh.core.nature" priority="0">
		</language>
	</extension>
	<extension point="org.eclipse.ui.newWizards">
		<category id="org.eclipse.dltk.sh.category" name="Shell Script">
		</category>
		<wizard
        category="org.eclipse.dltk.sh.category"
        class="org.eclipse.dltk.sh.internal.ui.wizards.ShellScriptProjectWizard"
        icon="icons/projectwizard.gif"
        id="org.eclipse.dltk.sh.projectwizard"
        name="Shell Script Project"
        project="true">
     <description>
        Create a new Shell Script project.
     </description>
		</wizard>
  <wizard
        category="org.eclipse.dltk.sh.category"
        class="org.eclipse.dltk.sh.internal.ui.wizards.NewShellScriptFileWizard"
        icon="icons/scriptwizard.gif"
        id="org.eclipse.dltk.sh.scriptfilewizard"
        name="Shell Script"
        project="false">
     <description>
        Create a new Shell Script.
     </description>
  </wizard>
	</extension>
	<extension point="org.eclipse.dltk.launching.interpreterInstallTypes">
		<interpreterInstallType
			class="org.eclipse.dltk.sh.internal.ui.interpreter.ShellScriptInstallType"
			id="org.eclipse.dltk.sh.ui.interpreter.ShellScriptInstallType">
		</interpreterInstallType>
	</extension>
	 <extension
        point="org.eclipse.dltk.launching.interpreterInstalls">
     <interpreterInstall
           home="/bin/sh"
           id="org.eclipse.dltk.sh.ui.interpreter.default"
           interpreterInstallType="org.eclipse.dltk.sh.ui.interpreter.ShellScriptInstallType"
           name="/bin/sh">
     </interpreterInstall>
     </extension>
	<extension point="org.eclipse.ui.preferencePages">
	<page id="org.eclipse.dltk.sh.ui.preferences"
 		name="Shell Script"
    		class="org.eclipse.dltk.sh.internal.ui.MainPreferencePage">
   	</page>

		<page
			class="org.eclipse.dltk.sh.internal.ui.interpreter.ShellInterpreterPreferencePage"
			category="org.eclipse.dltk.sh.ui.preferences" id="org.eclipse.dltk.sh.ui.preferences.interpreters" name="Interpreters" />
			<page
  category="org.eclipse.dltk.sh.ui.preferences"
  class="org.eclipse.dltk.sh.internal.ui.preferences.ShellTodoTaskPreferencePage"
  id="org.eclipse.dltk.sh.ui.preferences.TodoTasks"
  name="Task Tags"/>
  <page
	          category="org.eclipse.dltk.sh.ui.preferences.editor"
	          class="org.eclipse.dltk.sh.internal.ui.preferences.ShellSyntaxColoringPreferencePage"
	          id="org.eclipse.dltk.sh.ui.syntaxcoloring"
	          name="Syntax coloring"/>
	<page
          category="org.eclipse.dltk.sh.ui.preferences"
          class="org.eclipse.dltk.sh.internal.ui.preferences.ShellEditorPreferencesPage"
          id="org.eclipse.dltk.sh.ui.preferences.editor"
          name="Editor"/>
		<page
			category="org.eclipse.dltk.sh.ui.preferences.editor"
			class="org.eclipse.dltk.sh.internal.ui.preferences.ShellFoldingPreferencePage"
			id="org.eclipse.dltk.sh.ui.preferences.folding"
			name="Folding"/>
	</extension>
	<extension point="org.eclipse.ui.editors">
		<editor
        class="org.eclipse.dltk.sh.internal.ui.editor.ShellScriptEditor"
        contributorClass="org.eclipse.ui.texteditor.BasicTextEditorActionContributor"
        default="false"
        icon="icons/script.gif"
        id="org.eclipse.dltk.sh.ui.editor"
        name="Shell Script Editor">
			<contentTypeBinding contentTypeId="org.eclipse.dltk.sh.content-type" />
		</editor>
	</extension>
	<extension point="org.eclipse.core.runtime.preferences">
		<initializer
			class="org.eclipse.dltk.sh.internal.ui.ShelledUIPreferenceInitializer" />
	</extension>
	<extension point="org.eclipse.debug.core.launchConfigurationTypes">
		<launchConfigurationType
			id="org.eclipse.dltk.sh.ui.launchConfigurationType1" name="Shell Script"
			delegate="org.eclipse.dltk.sh.internal.ui.LaunchConfigurationDelegate"
			modes="run">
		</launchConfigurationType>
	</extension>
	<extension point="org.eclipse.debug.ui.launchConfigurationTypeImages">
		<launchConfigurationTypeImage icon="icons/shellapp.gif"
			configTypeID="org.eclipse.dltk.sh.ui.launchConfigurationType1"
			id="org.eclipse.dltk.sh.ui.launchConfigurationTypeImage.program">
		</launchConfigurationTypeImage>
	</extension>

	<extension point="org.eclipse.debug.ui.launchShortcuts">
		<shortcut class="org.eclipse.dltk.sh.internal.ui.LaunchShortcut"
			id="org.eclipse.dltk.sh.ui.shortcut" label="Shell script" modes="run"
			icon="icons/shellapp.gif">
			<contextualLaunch>
				<enablement>
					<with variable="selection">
						<count value="1" />
						<iterate>
							<or>
								<test args="org.eclipse.dltk.sh.core.nature" property="org.eclipse.dltk.launching.hasProjectNature">
								</test>
							</or>
						</iterate>
					</with>
				</enablement>
				<contextLabel label="Run shell script" mode="run">
				</contextLabel>
			</contextualLaunch>

		</shortcut>
	</extension>
	<extension point="org.eclipse.debug.ui.launchConfigurationTabGroups">
		<launchConfigurationTabGroup
			class="org.eclipse.dltk.sh.internal.ui.interpreter.ShellTabGroup" id="org.eclipse.dltk.sh.ui.interpreter.ShellTabGroup"
			type="org.eclipse.dltk.sh.ui.launchConfigurationType1">
		</launchConfigurationTabGroup>
	</extension>
	<extension point="org.eclipse.dltk.core.completionEngine">
		<completionEngine
			class="org.eclipse.dltk.sh.internal.ui.completion.ShellCompletionEngine"
			nature="org.eclipse.dltk.sh.core.nature" priority="0">
		</completionEngine>
	</extension>
	<extension point="org.eclipse.dltk.ui.scriptCompletionProposalComputer"
		id="ShellTypeCompletionProposalComputer">
		<scriptCompletionProposalComputer
			class="org.eclipse.dltk.sh.internal.ui.completion.ShellCompletionProposalComputer"
			categoryId="org.eclipse.dltk.ui.scriptTypeProposalCategory"
			toolkitId="org.eclipse.dltk.sh.core.nature">
			<partition type="__dftl_partition_content_type" />
		</scriptCompletionProposalComputer>
	</extension>
	<extension point="org.eclipse.search.searchPages">
		<page canSearchEnclosingProjects="true"
			class="org.eclipse.dltk.sh.internal.ui.search.ShelledSearchPage" enabled="true"
			id="org.eclipse.dltk.sh.ShelledSearchPage" label="Shell Script Search"
			showScopeSection="true" sizeHint="460,160">
		</page>
	</extension>
	<extension point="org.eclipse.dltk.core.search">
		<searchFactory
			class="org.eclipse.dltk.sh.internal.ui.search.ShelledSearchFactory"
			nature="org.eclipse.dltk.sh.core.nature" priority="0">
		</searchFactory>
	</extension>
	<extension point="org.eclipse.dltk.core.selectionEngine">
   <selectionEngine
         class="org.eclipse.dltk.sh.internal.ui.selection.ShelledSelectionEngine"
         nature="org.eclipse.dltk.sh.core.nature"
         priority="0">
   </selectionEngine>
</extension>
<extension
  point="org.eclipse.dltk.core.buildParticipant">
  <buildParticipant
    class="org.eclipse.dltk.core.builder.ParserBuildParticipantFactory"
    id="org.eclipse.dltk.sh.buildParticipant.parser"
    name="Shell build"
    nature="org.eclipse.dltk.sh.core.nature">
  </buildParticipant>
  <buildParticipant
    class="org.eclipse.dltk.sh.internal.ui.ShellTodoParserType"
    id="org.eclipse.dltk.sh.todo"
    name="Shelled"
    nature="org.eclipse.dltk.sh.core.nature">
    <requires
      id="org.eclipse.dltk.sh.buildParticipant.parser">
    </requires>
  </buildParticipant>

</extension>
<extension point="org.eclipse.dltk.ui.scriptDocumentationProviders">
     <provider
           class="org.eclipse.dltk.sh.internal.ui.selection.ShellDocumentationProvider"
           id="org.eclipse.dltk.sh.ShellDocumentationProvider"
           nature="org.eclipse.dltk.sh.core.nature"/>
</extension>
	<extension point="org.eclipse.ui.commands">
		<command name="Run shell" description="run shell script"
			categoryId="org.eclipse.debug.ui.category.run" id="org.eclipse.dltk.sh.ui.shortcut">
		</command>
		<command
        defaultHandler="org.eclipse.dltk.sh.internal.ui.commands.ShowManHandler"
        description="Show man page view"
        id="org.eclipse.dltk.sh.ui.showman"
        name="Show man page">
		</command>
  <command
        defaultHandler="org.eclipse.dltk.sh.internal.ui.commands.AddNature"
        description="Adds the Shell Script nature to these projects"
        id="org.eclipse.dltk.sh.ui.addnature"
        name="Add Shell Script Support">
  </command>
  <command
        defaultHandler="org.eclipse.dltk.sh.internal.ui.commands.RemoveNature"
        description="Removes the Shell Script nature from these projects"
        id="org.eclipse.dltk.sh.ui.removenature"
        name="Remove Shell Script Support">
  </command>
	</extension>
<extension
      point="org.eclipse.ui.bindings">
   <key
         commandId="org.eclipse.dltk.sh.ui.showman"
         contextId="org.eclipse.dltk.ui.shellEditorScope"
         schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
         sequence="Alt+M">
   </key>
</extension>
<extension
         point="org.eclipse.ui.contexts">
      <context
            name="Editing Shell Source"
            description="Editing Shell Source Context"
            parentId="org.eclipse.dltk.ui.scriptEditorScope"
            id="org.eclipse.dltk.ui.shellEditorScope">
      </context>
  </extension>
  <extension
      point="org.eclipse.ui.menus">
   <menuContribution
         allPopups="true"
         locationURI="popup:org.eclipse.ui.projectConfigure?after=additions">
     <command
           commandId="org.eclipse.dltk.sh.ui.addnature"
           style="push">
        <visibleWhen
              checkEnabled="false">
             <and>
               <with
                   variable="selection">
                <iterate
                      ifEmpty="false"
                      operator="and">
                    <adapt
                      type="org.eclipse.core.resources.IProject">
                      <not>
                        <or>
                          <test property="org.eclipse.dltk.hasScriptNature" />
                          <test property="org.eclipse.core.resources.projectNature" value="org.eclipse.dltk.sh.core.nature" />
                        </or>
                      </not>
                    </adapt>
                </iterate>
             </with>
           </and>
        </visibleWhen>
     </command>
     <command
           commandId="org.eclipse.dltk.sh.ui.removenature"
           style="push">
        <visibleWhen
              checkEnabled="false">
              <and>
             <with
                   variable="selection">
                <iterate
                      ifEmpty="false"
                      operator="and">
                    <adapt
                      type="org.eclipse.core.resources.IProject">
                      <test property="org.eclipse.core.resources.projectNature" value="org.eclipse.dltk.sh.core.nature" />
                    </adapt>
                </iterate>
             </with>
           </and>
        </visibleWhen>
     </command>
   </menuContribution>
</extension>
 <extension
   	point="org.eclipse.ui.workbench.texteditor.hyperlinkDetectors">
   	<hyperlinkDetector
   		id="org.eclipse.dltk.sh.SourceHyperlinkDetector"
   		targetId="org.eclipse.dltk.shell.code"
   		class="org.eclipse.dltk.sh.internal.ui.text.hyperlink.SourceHyperlinkDetector"
   		name="Shell source Hyperlink Detector">
   	</hyperlinkDetector>
 </extension>
 <extension
   	point="org.eclipse.ui.workbench.texteditor.hyperlinkDetectorTargets">
   	<target id="org.eclipse.dltk.shell.code" name="Shell script editor">
   		<context type="org.eclipse.dltk.sh.internal.ui.editor.ShellScriptEditor" />
   	</target>
 </extension>

<extension point="org.eclipse.dltk.ui.folding">
  <structureProvider
   	nature="org.eclipse.dltk.sh.core.nature"
   	class="org.eclipse.dltk.ui.text.folding.DelegatingFoldingStructureProvider">
  </structureProvider>
  <blockProvider
    nature="org.eclipse.dltk.sh.core.nature"
    class="org.eclipse.dltk.sh.internal.ui.text.folding.ShellCommentFoldingBlockProvider">
  </blockProvider>
  <blockProvider
    nature="org.eclipse.dltk.sh.core.nature"
    class="org.eclipse.dltk.sh.internal.ui.text.folding.ShellCodeFoldingBlockProvider">
  </blockProvider>
</extension>
</plugin>
