Permalink
Fetching contributors…
Cannot retrieve contributors at this time
3530 lines (3475 sloc) 121 KB
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.2"?>
<plugin>
<!-- see http://help.eclipse.org/indigo/topic/org.eclipse.jdt.doc.isv/reference/extension-points/org_eclipse_jdt_ui_javaEditorTextHovers.html -->
<extension-point id="ccw.core.cljEditorTextHovers" name="%cljEditorTextHoversExtensionName" schema="schema/cljEditorTextHovers.exsd"/>
<extension point="org.eclipse.ui.console.consolePatternMatchListeners">
<consolePatternMatchListener
id="ccw.editors.clojure.StacktraceHyperlink"
regex="at .*\([\w]+\.clj[\w]?:[0-9]+\)">
<class class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.editors.clojure.stacktrace-hyperlink/factory">
</parameter>
</class>
<enablement>
<or>
<test property="org.eclipse.ui.console.consoleTypeTest" value="javaStackTraceConsole"/>
<test property="org.eclipse.debug.ui.processTypeTest" value="java"/>
</or>
</enablement>
</consolePatternMatchListener>
<consolePatternMatchListener
id="ccw.editors.clojure.nREPLHyperlink"
regex="nrepl://[^':',' ']+:\d+">
<class class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.console.nrepl-hyperlink/factory">
</parameter>
</class>
<enablement>
<or>
<test property="org.eclipse.ui.console.consoleTypeTest" value="javaStackTraceConsole"/>
<test property="org.eclipse.debug.ui.processTypeTest" value="java"/>
</or>
</enablement>
</consolePatternMatchListener>
<consolePatternMatchListener
id="ccw.editors.clojure.debugProcessHyperlink"
regex="Listening for transport dt_socket at address: \d+">
<class class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.console.debug-hyperlink/factory">
</parameter>
</class>
<enablement>
<or>
<test property="org.eclipse.ui.console.consoleTypeTest" value="javaStackTraceConsole"/>
<test property="org.eclipse.debug.ui.processTypeTest" value="java"/>
</or>
</enablement>
</consolePatternMatchListener>
</extension>
<extension
point="org.eclipse.ui.newWizards">
<category
id="ccw.category.new"
name="Clojure">
</category>
<wizard
category="ccw.category.new"
class="ccw.leiningen.NewLeiningenProjectWizard"
hasPages="true"
icon="icons/clojure16x16.png"
descriptionImage="icons/clojure42x42.png"
id="ccw.project.new.wizard"
name="Clojure Project"
project="true">
<description>
Create a new Clojure project
</description>
</wizard>
<wizard
category="ccw.category.new"
class="ccw.wizards.NewClojureNamespaceWizard"
icon="icons/clojure16x16.png"
id="ccw.newClojureFileWizard"
name="Clojure Namespace"
project="false">
<description>
Create a new Clojure namespace
</description>
<selection
class="java.lang.Object">
</selection>
</wizard>
</extension>
<extension
id="ccw.nature"
name="Clojure Nature"
point="org.eclipse.core.resources.natures">
<builder id="ccw.builder"/>
<requires-nature
id="org.eclipse.jdt.core.javanature">
</requires-nature>
<runtime>
<run class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.clojure-project-nature/factory">
</parameter>
</run>
</runtime>
</extension>
<extension
id="ccw.builder"
name="Clojure Builder"
point="org.eclipse.core.resources.builders">
<builder
callOnEmptyDelta="false"
hasNature="true">
<run class="ccw.builder.ClojureBuilder"/>
</builder>
</extension>
<extension point="org.eclipse.debug.core.launchConfigurationTypes">
<launchConfigurationType
delegate="ccw.launching.EnhancedJavaLaunchDelegate"
delegateName="Enhanced Java Launcher"
id="ccw.launching.enhanced-java"
modes="run, debug"
name="Enhanced Java Launch"
public="false">
</launchConfigurationType>
<launchConfigurationType
delegate="ccw.launching.ClojureLaunchDelegate"
delegateName="Clojure Launcher"
id="ccw.launching.clojure"
modes="run, debug"
name="Clojure"
public="true"
sourcePathComputerId="ccw.sourcePathComputer">
<fileExtension extension="clj" default="true"/>
</launchConfigurationType>
</extension>
<extension point="org.eclipse.debug.ui.launchConfigurationTabGroups">
<launchConfigurationTabGroup
type="ccw.launching.clojure"
class="ccw.launching.ClojureTabGroup"
id="ccw.launching.clojure.launchConfigurationTabGroup">
</launchConfigurationTabGroup>
</extension>
<extension
point="org.eclipse.debug.ui.launchShortcuts">
<shortcut
class="ccw.launching.ClojureLaunchShortcut"
icon="icons/clojure16x16.png"
id="ccw.launching.clojureShortcut"
label="Clojure Application"
modes="run, debug">
<perspective
id="org.eclipse.jdt.ui.JavaPerspective">
</perspective>
<perspective
id="org.eclipse.jdt.ui.JavaHierarchyPerspective">
</perspective>
<perspective
id="org.eclipse.jdt.ui.JavaBrowsingPerspective">
</perspective>
<perspective
id="org.eclipse.debug.ui.DebugPerspective">
</perspective>
<perspective
id="org.eclipse.pde.ui.PDEPerspective">
</perspective>
<contextualLaunch>
<enablement>
<with
variable="selection">
<count
value="1">
</count>
<iterate>
<or>
<adapt
type="org.eclipse.core.resources.IProject">
<test
property="org.eclipse.core.resources.projectNature"
value="ccw.nature">
</test>
</adapt>
<adapt
type="org.eclipse.core.resources.IFolder">
<test
property="org.eclipse.core.resources.projectNature"
value="ccw.nature">
</test>
</adapt>
</or>
</iterate>
</with>
</enablement>
</contextualLaunch>
</shortcut>
<shortcut
class="ccw.launching.ClojureLaunchShortcut"
icon="icons/clojure16x16.png"
id="ccw.launching.clojureShortcut.preload"
label="Clojure Application (preload file)"
modes="run, debug">
<contextualLaunch>
<enablement>
<with
variable="selection">
<count
value="1">
</count>
<iterate>
<and>
<adapt
type="org.eclipse.core.resources.IFile">
<and>
<test
property="org.eclipse.core.resources.projectNature"
value="ccw.nature">
</test>
<test
forcePluginActivation="false"
property="org.eclipse.debug.ui.matchesPattern"
value="*.clj">
</test>
</and>
</adapt>
</and>
</iterate>
</with>
</enablement>
</contextualLaunch>
<perspective id="org.eclipse.jdt.ui.JavaPerspective"/>
<perspective id="org.eclipse.jdt.ui.JavaHierarchyPerspective"/>
<perspective id="org.eclipse.jdt.ui.JavaBrowsingPerspective"/>
<perspective id="org.eclipse.debug.ui.DebugPerspective"/>
<perspective
id="org.eclipse.pde.ui.PDEPerspective">
</perspective>
</shortcut>
</extension>
<extension
point="org.eclipse.ui.editors">
<editor
class="ccw.editors.clojure.ClojureEditor"
default="true"
contributorClass="ccw.editors.clojure.BasicClojureEditorActionContributor"
icon="icons/clojure16x16.png"
id="ccw.clojureeditor"
name="Clojure Editor">
<contentTypeBinding
contentTypeId="ccw.core.clj">
</contentTypeBinding>
</editor>
</extension>
<extension
point="org.eclipse.core.runtime.preferences">
<initializer
class="ccw.preferences.PreferenceInitializer">
</initializer>
<scope
class="org.eclipse.core.runtime.preferences.DefaultScope"
name="default">
</scope>
</extension>
<!-- =========================================================================== -->
<!-- CCW command definitions -->
<!-- =========================================================================== -->
<extension
point="org.eclipse.ui.contexts">
<context
name="%context.editingClojureSource.name"
description="%context.editingClojureSource.description"
parentId="org.eclipse.ui.textEditorScope"
id="ccw.ui.clojureEditorScope">
</context>
<context
description="%ccw.ui.context.repl.description"
id="ccw.ui.context.repl"
name="%ccw.ui.context.repl.name"
parentId="ccw.ui.clojureEditorScope">
</context>
</extension>
<extension
point="org.eclipse.ui.commands">
<command
categoryId="org.eclipse.ui.category.navigate"
description="%command.gotoMatchingBracket.description"
id="ccw.ui.edit.text.clojure.goto.matching.bracket"
name="%command.gotoMatchingBracket.name">
</command>
<command
categoryId="org.eclipse.ui.category.edit"
description="%command.expandSelection.up.description"
id="ccw.ui.edit.text.clojure.expand.selection.up"
name="%command.expandSelection.up.name">
</command>
<command
categoryId="org.eclipse.ui.category.edit"
description="%command.expandSelection.left.description"
id="ccw.ui.edit.text.clojure.expand.selection.left"
name="%command.expandSelection.left.name">
</command>
<command
categoryId="org.eclipse.ui.category.edit"
description="%command.expandSelection.right.description"
id="ccw.ui.edit.text.clojure.expand.selection.right"
name="%command.expandSelection.right.name">
</command>
<command
categoryId="org.eclipse.ui.category.edit"
description="%command.indentSelection.description"
id="ccw.ui.edit.text.clojure.indent.selection"
name="%command.indentSelection.name">
</command>
<command
categoryId="org.eclipse.ui.category.edit"
description="%command.selectLast.description"
id="ccw.ui.edit.text.clojure.select.last"
name="%command.selectLast.name">
</command>
<command
categoryId="org.eclipse.ui.category.edit"
description="%command.forward-slurp.description"
id="ccw.ui.edit.text.clojure.forward-slurp"
name="%command.forward-slurp.name">
</command>
<command
categoryId="org.eclipse.ui.category.edit"
description="%command.backward-slurp.description"
id="ccw.ui.edit.text.clojure.backward-slurp"
name="%command.backward-slurp.name">
</command>
<command
categoryId="org.eclipse.ui.category.edit"
description="%command.forward-barf.description"
id="ccw.ui.edit.text.clojure.forward-barf"
name="%command.forward-barf.name">
</command>
<command
categoryId="org.eclipse.ui.category.edit"
description="%command.backward-barf.description"
id="ccw.ui.edit.text.clojure.backward-barf"
name="%command.backward-barf.name">
</command>
<command
categoryId="org.eclipse.ui.category.edit"
description="%command.raiseSelection.description"
id="ccw.ui.edit.text.clojure.select.raise"
name="%command.raiseSelection.name">
</command>
<command
categoryId="org.eclipse.ui.category.edit"
description="%command.spliceSexp.description"
id="ccw.ui.edit.text.clojure.splice.sexpr"
name="%command.spliceSexp.name">
</command>
<command
categoryId="org.eclipse.ui.category.edit"
description="%command.splitSexpr.description"
id="ccw.ui.edit.text.clojure.split.sexpr"
name="%command.splitSexpr.name">
</command>
<command
categoryId="org.eclipse.ui.category.edit"
description="%command.joinSexpr.description"
id="ccw.ui.edit.text.clojure.join.sexpr"
name="%command.joinSexpr.name">
</command>
<command
categoryId="org.eclipse.ui.category.edit"
description="%command.switchStructuralEditionMode.description"
id="ccw.ui.edit.text.clojure.switch.structuraledition.mode"
name="%command.switchStructuralEditionMode.name">
</command>
<!-- navigate -->
<command
categoryId="org.eclipse.ui.category.navigate"
description="%command.gotoPreviousMember.description"
id="ccw.ui.edit.text.clojure.goto.previous.member"
name="%command.gotoPreviousMember.name">
</command>
<command
name="Go to matching bracket"
description="%command.gotoNextMember.description"
categoryId="org.eclipse.ui.category.navigate"
id="ccw.ui.edit.text.clojure.goto.next.member">
</command>
<command
name="%command.selectToplevelSExpression.name"
description="%command.selectToplevelSExpression.description"
categoryId="org.eclipse.ui.category.navigate"
id="ccw.ui.edit.text.clojure.select.toplevel.s.expression">
</command>
<command
name="%command.evaluateToplevelSExpression.name"
description="%command.evaluateToplevelSExpression.description"
categoryId="org.eclipse.ui.category.navigate"
id="ccw.ui.edit.text.clojure.evaluate.toplevel.s.expression">
</command>
<command
name="%command.loadFile.name"
description="%command.loadFile.description"
categoryId="org.eclipse.ui.category.navigate"
id="ccw.ui.edit.text.clojure.load.file">
</command>
<command
name="%command.switchNamespace.name"
description="%command.switchNamespace.description"
categoryId="org.eclipse.ui.category.navigate"
id="ccw.ui.edit.text.clojure.switchNamespace">
</command>
<command
name="%command.compileLib.name"
description="%command.compileLib.description"
categoryId="org.eclipse.ui.category.navigate"
id="ccw.ui.edit.text.clojure.compile.lib">
</command>
<command
name="%command.launchRepl.name"
description="%command.launchRepl.description"
categoryId="org.eclipse.ui.category.navigate"
id="ccw.ui.edit.text.clojure.launch.repl">
</command>
<!-- remove 'run tests' no-op -->
<!--
<command
name="%command.runTests.name"
description="%command.runTests.description"
categoryId="org.eclipse.ui.category.navigate"
id="ccw.ui.edit.text.clojure.run.tests">
</command>
-->
<!-- not considered stable enough -->
<!--command
name="%command.formatCode.name"
description="%command.formatCode.description"
categoryId="org.eclipse.ui.category.navigate"
id="ccw.ui.edit.text.clojure.format.code">
</command-->
<command
name="%command.reload.clojure.name"
description="%command.reload.clojure.description"
categoryId="org.eclipse.ui.category.navigate"
id="ccw.ui.edit.text.clojure.reload">
</command>
<command
name="%command.navigateToDefinition.name"
description="%command.navigateToDefinition.description"
categoryId="org.eclipse.ui.category.navigate"
id="ccw.ui.edit.text.clojure.open.hyperlink">
</command>
<command
categoryId="org.eclipse.debug.ui.category.run"
defaultHandler="ccw.repl.Actions$Connect"
description="%command.connectToREPL.description"
id="ccw.ui.repl.connect"
name="%command.connectToREPL.name">
</command>
<command
categoryId="org.eclipse.ui.category.navigate"
defaultHandler="ccw.repl.Actions$ShowActiveREPL"
description="Show active REPL"
id="ccw.ui.repl.showActiveREPL"
name="Show active REPL">
</command>
<command
categoryId="org.eclipse.debug.ui.category.run"
description="Print detailed output from the last exception"
id="ccw.view.repl.commands.printErrorDetail"
name="Print detailed output from the last exception">
</command>
<command
categoryId="org.eclipse.debug.ui.category.run"
description="Reconnect to this REPL&apos;s host and port (first disconnecting if necessary)"
id="ccw.view.repl.commands.reconnect"
name="Reconnect">
</command>
<command
categoryId="org.eclipse.debug.ui.category.run"
description="Forcibly interrupt the currently-running evaluation for this session."
id="ccw.view.repl.commands.interrupt"
name="Interrupt Evaluation">
</command>
<command
categoryId="org.eclipse.debug.ui.category.run"
description="Clear the REPL&apos;s log"
id="ccw.view.repl.commands.clearLog"
name="Clear REPL log">
</command>
<command
categoryId="org.eclipse.debug.ui.category.run"
description="Open a new REPL session connected to this REPL's Clojure process."
id="ccw.view.repl.commands.newSession"
name="New Session"/>
<command
categoryId="org.eclipse.debug.ui.category.run"
description="Show the console for the JVM process to which this REPL is connected"
id="ccw.view.repl.commands.showConsole"
name="Show Console">
</command>
<command
categoryId="org.eclipse.debug.ui.category.run"
defaultHandler="ccw.repl.Actions$ConnectToEclipseNREPL"
description="New REPL client for Eclipse embedded nrepl server (advanced usages)"
id="ccw.ui.repl.connectToEclipseNREPL"
name="New REPL client for Eclipse embedded nrepl server (advanced usages)">
</command>
<command
categoryId="org.eclipse.ui.category.edit"
description="%ccw.ui.repl.history.previous.description"
id="ccw.ui.repl.history.previous"
name="%ccw.ui.repl.history.previous.name">
</command>
<command
categoryId="org.eclipse.ui.category.edit"
description="%ccw.ui.repl.history.next.description"
id="ccw.ui.repl.history.next"
name="%ccw.ui.repl.history.next.name">
</command>
<command
categoryId="org.eclipse.ui.category.edit"
description="%ccw.ui.edit.text.clojure.comment.toggle.description"
id="ccw.ui.edit.text.clojure.comment.toggle"
name="%ccw.ui.edit.text.clojure.comment.toggle.name">
</command>
<command
categoryId="org.eclipse.ui.category.edit"
description="%ccw.ui.edit.text.clojure.pastewithescaping.description"
id="ccw.ui.edit.text.clojure.pastewithescaping"
name="%ccw.ui.edit.text.clojure.pastewithescaping.name">
</command>
<command
categoryId="org.eclipse.ui.category.edit"
description="%command.switchRainbowParens.description"
id="ccw.ui.edit.text.clojure.switch.rainbow.parens"
name="%command.switchRainbowParens.name">
</command>
<command
description="%ccw.core.command.toggle-clojure-nature.description"
id="ccw.core.command.toggle-clojure-nature"
name="%ccw.core.command.toggle-clojure-nature.name">
</command>
<category
description="%ccw.leiningen.category"
id="ccw.leiningen.category"
name="%ccw.leiningen.category">
</category>
<command
categoryId="ccw.leiningen.category"
description="%ccw.leiningen.command.update-dependencies.description"
id="ccw.leiningen.command.update-dependencies"
name="%ccw.leiningen.command.update-dependencies.name">
</command>
<command
categoryId="ccw.leiningen.category"
description="%ccw.leiningen.command.add-leiningen-nature.description"
id="ccw.leiningen.command.add-leiningen-nature"
name="%ccw.leiningen.command.add-leiningen-nature.name">
</command>
<command
categoryId="ccw.leiningen.category"
description="%ccw.leiningen.command.remove-leiningen-nature.description"
id="ccw.leiningen.command.remove-leiningen-nature"
name="%ccw.leiningen.command.remove-leiningen-nature.name">
</command>
<command
categoryId="ccw.leiningen.category"
description="%ccw.leiningen.command.reset-project-classpath.description"
id="ccw.leiningen.command.reset-project-classpath"
name="%ccw.leiningen.command.reset-project-classpath.name">
</command>
<command
categoryId="ccw.leiningen.category"
description="%ccw.leiningen.command.generic-launch.description"
id="ccw.leiningen.command.generic-launch"
name="%ccw.leiningen.command.generic-launch.name">
</command>
<command
categoryId="ccw.leiningen.category"
description="%ccw.leiningen.command.launch-headless-repl.description"
id="ccw.leiningen.command.launch-headless-repl"
name="%ccw.leiningen.command.launch-headless-repl.name">
</command>
</extension>
<extension
point="org.eclipse.ui.bindings">
<!-- win32: M1=CTRL, M2=SHIFT, M3=ALT, M4=-
carbon: M1=COMMAND, M2=SHIFT, M3=ALT, M4=CTRL -->
<!-- navigate -->
<key
sequence="M1+M2+P"
contextId="ccw.ui.clojureEditorScope"
commandId="ccw.ui.edit.text.clojure.goto.matching.bracket"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
<key
commandId="ccw.ui.edit.text.clojure.expand.selection.up"
contextId="ccw.ui.clojureEditorScope"
platform="win32"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M2+M3+ARROW_UP">
</key>
<key
commandId="ccw.ui.edit.text.clojure.expand.selection.up"
contextId="ccw.ui.clojureEditorScope"
platform="gtk"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M2+M3+ARROW_UP"/>
<key
sequence="M2+M1+ARROW_UP"
contextId="ccw.ui.clojureEditorScope"
commandId="ccw.ui.edit.text.clojure.expand.selection.up"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
platform="carbon"/>
<key
commandId="ccw.ui.edit.text.clojure.expand.selection.left"
contextId="ccw.ui.clojureEditorScope"
platform="win32"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M2+M3+ARROW_LEFT">
</key>
<key
commandId="ccw.ui.edit.text.clojure.expand.selection.left"
contextId="ccw.ui.clojureEditorScope"
platform="gtk"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M2+M3+ARROW_LEFT">
</key>
<key
commandId="ccw.ui.edit.text.clojure.expand.selection.left"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M2+M1+ARROW_LEFT"
platform="carbon">
</key>
<key
commandId="ccw.ui.edit.text.clojure.expand.selection.right"
contextId="ccw.ui.clojureEditorScope"
platform="win32"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M2+M3+ARROW_RIGHT">
</key>
<key
commandId="ccw.ui.edit.text.clojure.expand.selection.right"
contextId="ccw.ui.clojureEditorScope"
platform="gtk"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M2+M3+ARROW_RIGHT">
</key>
<key
commandId="ccw.ui.edit.text.clojure.expand.selection.right"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M2+M1+ARROW_RIGHT"
platform="carbon">
</key>
<key
commandId="ccw.ui.edit.text.clojure.select.last"
contextId="ccw.ui.clojureEditorScope"
platform="win32"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M2+M3+ARROW_DOWN">
</key>
<key
commandId="ccw.ui.edit.text.clojure.select.last"
contextId="ccw.ui.clojureEditorScope"
platform="gtk"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M2+M3+ARROW_DOWN">
</key>
<key
commandId="ccw.ui.edit.text.clojure.select.last"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M2+M1+ARROW_DOWN"
platform="carbon">
</key>
<!-- For AZERTY layout -->
<key
commandId="ccw.ui.edit.text.clojure.forward-slurp"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+) ARROW_LEFT">
</key>
<key
commandId="ccw.ui.edit.text.clojure.forward-slurp"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+) S">
</key>
<!-- For QWERTY layout -->
<key
commandId="ccw.ui.edit.text.clojure.forward-slurp"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+0 ARROW_LEFT">
</key>
<key
commandId="ccw.ui.edit.text.clojure.forward-slurp"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+0 S">
</key>
<!-- For AZERTY layout -->
<key
commandId="ccw.ui.edit.text.clojure.backward-slurp"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+( ARROW_RIGHT">
</key>
<key
commandId="ccw.ui.edit.text.clojure.backward-slurp"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+( S">
</key>
<!-- For QWERTY layout -->
<key
commandId="ccw.ui.edit.text.clojure.backward-slurp"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+9 ARROW_RIGHT">
</key>
<key
commandId="ccw.ui.edit.text.clojure.backward-slurp"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+9 S">
</key>
<!-- For AZERTY layout -->
<key
commandId="ccw.ui.edit.text.clojure.forward-barf"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+) ARROW_RIGHT">
</key>
<key
commandId="ccw.ui.edit.text.clojure.forward-barf"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+) B">
</key>
<!-- For QWERTY layout -->
<key
commandId="ccw.ui.edit.text.clojure.forward-barf"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+0 ARROW_RIGHT">
</key>
<key
commandId="ccw.ui.edit.text.clojure.forward-barf"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+0 B">
</key>
<!-- For AZERTY layout -->
<key
commandId="ccw.ui.edit.text.clojure.backward-barf"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+( ARROW_LEFT">
</key>
<key
commandId="ccw.ui.edit.text.clojure.backward-barf"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+( B">
</key>
<!-- For QWERTY layout -->
<key
commandId="ccw.ui.edit.text.clojure.backward-barf"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+9 ARROW_LEFT">
</key>
<key
commandId="ccw.ui.edit.text.clojure.backward-barf"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+9 B">
</key>
<key
commandId="ccw.ui.edit.text.clojure.select.raise"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M3+R">
</key>
<key
commandId="ccw.ui.edit.text.clojure.splice.sexpr"
contextId="ccw.ui.clojureEditorScope"
platform="carbon"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M4+S">
</key>
<key
commandId="ccw.ui.edit.text.clojure.indent.selection"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+I">
</key>
<key
commandId="ccw.ui.edit.text.clojure.split.sexpr"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M3+S">
</key>
<key
commandId="ccw.ui.edit.text.clojure.join.sexpr"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M3+J">
</key>
<key
commandId="ccw.ui.edit.text.clojure.switch.structuraledition.mode"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M3+D">
</key>
<key
sequence="M1+M3+A"
contextId="ccw.ui.clojureEditorScope"
commandId="ccw.ui.edit.text.clojure.goto.previous.member"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
<key
sequence="M1+M3+E"
contextId="ccw.ui.clojureEditorScope"
commandId="ccw.ui.edit.text.clojure.goto.next.member"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
<key
sequence="M1+M3+H"
contextId="ccw.ui.clojureEditorScope"
commandId="ccw.ui.edit.text.clojure.select.toplevel.s.expression"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
<key
sequence="M1+M3+T"
contextId="ccw.ui.clojureEditorScope"
commandId="ccw.ui.edit.text.clojure.select.toplevel.s.expression"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
<key
commandId="ccw.ui.edit.text.clojure.evaluate.toplevel.s.expression"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+Enter">
</key>
<key
commandId="ccw.ui.edit.text.clojure.launch.repl"
contextId="ccw.ui.clojureEditorScope"
platform="win32"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M2+M3+X C"/>
<key
commandId="ccw.ui.edit.text.clojure.launch.repl"
contextId="ccw.ui.clojureEditorScope"
platform="gtk"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M2+M3+X C">
</key>
<key
commandId="ccw.ui.edit.text.clojure.launch.repl"
contextId="ccw.ui.clojureEditorScope"
platform="carbon"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+M3+X C">
</key>
<key
commandId="ccw.ui.edit.text.clojure.launch.repl"
platform="win32"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M2+M3+X C">
</key>
<key
commandId="ccw.ui.edit.text.clojure.launch.repl"
platform="gtk"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M2+M3+X C">
</key>
<key
commandId="ccw.ui.edit.text.clojure.launch.repl"
platform="carbon"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+M3+X C">
</key>
<key
sequence="M1+M3+L"
contextId="ccw.ui.clojureEditorScope"
commandId="ccw.ui.edit.text.clojure.load.file"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
platform="win32"/>
<key
sequence="M1+M3+L"
contextId="ccw.ui.clojureEditorScope"
commandId="ccw.ui.edit.text.clojure.load.file"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
platform="carbon"/>
<key
sequence="M1+M3+S"
contextId="ccw.ui.clojureEditorScope"
commandId="ccw.ui.edit.text.clojure.load.file"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
<key
commandId="ccw.ui.edit.text.clojure.switchNamespace"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+M3+N"/>
<key
sequence="M1+M3+K"
contextId="ccw.ui.clojureEditorScope"
commandId="ccw.ui.edit.text.clojure.compile.lib"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
<!-- remove 'run tests' no-op -->
<!--<key
sequence="M1+T"
contextId="ccw.ui.clojureEditorScope"
commandId="ccw.ui.edit.text.clojure.run.tests"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>-->
<!-- not considered stable enough -->
<!--key
sequence="M1+M2+F"
contextId="ccw.ui.clojureEditorScope"
commandId="ccw.ui.edit.text.clojure.format.code"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/-->
<key
commandId="ccw.ui.edit.text.clojure.reload"
contextId="ccw.ui.context.repl"
platform="win32"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M2+M3+X R"/>
<key
commandId="ccw.ui.edit.text.clojure.reload"
contextId="ccw.ui.context.repl"
platform="gtk"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M2+M3+X R">
</key>
<key
sequence="M1+M3+X R"
contextId="ccw.ui.context.repl"
commandId="ccw.ui.edit.text.clojure.reload"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
platform="carbon"/>
<key
sequence="F3"
contextId="ccw.ui.clojureEditorScope"
commandId="ccw.ui.edit.text.clojure.open.hyperlink"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
<key
commandId="ccw.view.repl.commands.printErrorDetail"
contextId="ccw.ui.context.repl"
platform="win32"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M3+E">
</key>
<key
commandId="ccw.view.repl.commands.printErrorDetail"
contextId="ccw.ui.context.repl"
platform="gtk"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M3+E">
</key>
<key
commandId="ccw.view.repl.commands.interrupt"
contextId="ccw.ui.context.repl"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+I">
</key>
<key
commandId="ccw.view.repl.commands.printErrorDetail"
contextId="ccw.ui.context.repl"
platform="carbon"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+E">
</key>
<key
commandId="ccw.view.repl.commands.clearLog"
contextId="ccw.ui.context.repl"
platform="win32"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M3+K">
</key>
<key
commandId="ccw.view.repl.commands.clearLog"
contextId="ccw.ui.context.repl"
platform="gtk"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M3+K">
</key>
<key
commandId="ccw.view.repl.commands.clearLog"
contextId="ccw.ui.context.repl"
platform="carbon"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+K">
</key>
<key
commandId="ccw.ui.repl.history.previous"
contextId="ccw.ui.context.repl"
platform="win32"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+ARROW_UP">
</key>
<key
commandId="ccw.ui.repl.history.previous"
contextId="ccw.ui.context.repl"
platform="gtk"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+ARROW_UP">
</key>
<key
commandId="ccw.ui.repl.history.previous"
contextId="ccw.ui.context.repl"
platform="carbon"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M4+ARROW_UP">
</key>
<key
commandId="ccw.ui.repl.history.previous"
contextId="ccw.ui.context.repl"
platform="carbon"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M4+P">
</key>
<key
commandId="ccw.ui.repl.history.next"
contextId="ccw.ui.context.repl"
platform="win32"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+ARROW_DOWN">
</key>
<key
commandId="ccw.ui.repl.history.next"
contextId="ccw.ui.context.repl"
platform="gtk"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+ARROW_DOWN">
</key>
<key
commandId="ccw.ui.repl.history.next"
contextId="ccw.ui.context.repl"
platform="carbon"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M4+ARROW_DOWN">
</key>
<key
commandId="ccw.ui.repl.history.next"
contextId="ccw.ui.context.repl"
platform="carbon"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M4+N">
</key>
<key
commandId="ccw.ui.edit.text.clojure.comment.toggle"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+M2+C">
</key>
<key
commandId="ccw.ui.edit.text.clojure.comment.toggle"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+;">
</key>
<key
commandId="ccw.ui.edit.text.clojure.comment.toggle"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+/">
</key>
<key
commandId="ccw.ui.edit.text.clojure.switch.rainbow.parens"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+( R">
</key>
<key
commandId="org.eclipse.ui.edit.text.showInformation"
contextId="ccw.ui.clojureEditorScope"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="F2">
</key>
</extension>
<extension
point="org.eclipse.ui.menus">
<menuContribution
locationURI="menu:org.eclipse.ui.main.menu?after=additions">
<menu
id="ccw.menus.clojure"
label="Clojure"
mnemonic="C"
tooltip="Menu for Clojure related commands">
<menu
id="ccw.menus.clojure.goTo"
label="%GoTo_label">
<command
commandId="ccw.ui.edit.text.clojure.goto.matching.bracket"
label="%GoTo_matchingBracket_label"
style="push">
</command>
<command
commandId="ccw.ui.edit.text.clojure.goto.previous.member"
label="%GoTo_previousTopLevelSexpr_label"
style="push">
</command>
<command
commandId="ccw.ui.edit.text.clojure.goto.next.member"
label="%GoTo_nextTopLevelSexpr_label"
style="push">
</command>
</menu>
<menu
id="ccw.menus.clojure.expandSelTo"
label="%ExpandSelectionTo">
<command
commandId="ccw.ui.edit.text.clojure.expand.selection.up"
label="%ClojureSelectEnclosing_label"
style="push">
</command>
</menu>
<separator
name="ccw.menus.separator1"
visible="true">
</separator>
<command
commandId="ccw.ui.edit.text.clojure.switch.structuraledition.mode"
style="push">
</command>
<command
commandId="ccw.ui.edit.text.clojure.select.toplevel.s.expression"
label="Select top level s-expression"
style="push">
</command>
<command
commandId="ccw.ui.edit.text.clojure.evaluate.toplevel.s.expression"
label="Evaluate current selection or Top Level S-Expression"
style="push">
</command>
<separator
name="ccw.menus.separator2"
visible="true">
</separator>
<command
commandId="ccw.ui.edit.text.clojure.indent.selection"
label="%command.indentSelection.name"
style="push">
</command>
<separator
name="ccw.menus.separator3"
visible="true">
</separator>
<command
commandId="ccw.ui.edit.text.clojure.load.file"
label="Load file in REPL"
style="push">
</command>
<command
commandId="ccw.ui.edit.text.clojure.switchNamespace"
label="Switch REPL to File's Namespace"
style="push">
</command>
<command
commandId="ccw.ui.edit.text.clojure.compile.lib"
label="Compile file in REPL"
style="push">
</command>
<!-- remove 'run tests' no-op -->
<!--<command
commandId="ccw.ui.edit.text.clojure.run.tests"
label="Run tests in REPL"
style="push">
</command>-->
<!--command
commandId="ccw.ui.edit.text.clojure.format.code"
label="Format clojure code"
style="push">
</command-->
<command
commandId="ccw.ui.edit.text.clojure.open.hyperlink"
label="Navigate to definition"
style="push">
</command>
<separator
name="ccw.menus.separator4"
visible="true">
</separator>
<menu
id="ccw.menus.clojure.test"
label="%menu.test.label">
<command
commandId="ccw.ui.test.commands.testGenerator"
description="%command.testGenerator.description"
icon="icons/swtbot16.png"
label="%command.testGenerator.label"
mnemonic="G"
tooltip="%menuitem.testGenerator.tooltip">
<visibleWhen checkEnabled="false">
<and>
<reference definitionId="ccw.core.isCcwBundleInstalled"/>
</and>
</visibleWhen>
</command>
</menu>
</menu>
</menuContribution>
<menuContribution
locationURI="popup:org.eclipse.ui.popup.any?after=additions">
<menu
icon="icons/clojure16x16.png"
id="ccw.menus.clojure"
label="Clojure"
mnemonic="C"
tooltip="Menu for Clojure related commands">
<separator
name="ccw.menus.separator1"
visible="true">
</separator>
<command
commandId="ccw.ui.edit.text.clojure.switch.structuraledition.mode"
style="push">
</command>
<menu
id="ccw.menus.clojure.goTo"
label="%GoTo_label">
<command
commandId="ccw.ui.edit.text.clojure.goto.matching.bracket"
label="%GoTo_matchingBracket_label"
style="push">
</command>
<command
commandId="ccw.ui.edit.text.clojure.goto.previous.member"
label="%GoTo_previousTopLevelSexpr_label"
style="push">
</command>
<command
commandId="ccw.ui.edit.text.clojure.goto.next.member"
label="%GoTo_nextTopLevelSexpr_label"
style="push">
</command>
</menu>
<menu
id="ccw.menus.clojure.expandSelTo"
label="%ExpandSelectionTo">
<command
commandId="ccw.ui.edit.text.clojure.expand.selection.up"
label="%ClojureSelectEnclosing_label"
style="push">
</command>
</menu>
<separator
name="ccw.menus.separator1"
visible="true">
</separator>
<command
commandId="ccw.ui.edit.text.clojure.select.toplevel.s.expression"
label="Select top level s-expression"
style="push">
</command>
<command
commandId="ccw.ui.edit.text.clojure.evaluate.toplevel.s.expression"
label="Evaluate current selection or Top Level S-Expression"
style="push">
</command>
<separator
name="ccw.menus.separator2"
visible="true">
</separator>
<command
commandId="ccw.ui.edit.text.clojure.indent.selection"
label="%command.indentSelection.name"
style="push">
</command>
<separator
name="ccw.menus.separator3"
visible="true">
</separator>
<command
commandId="ccw.ui.edit.text.clojure.load.file"
label="Load file in REPL"
style="push">
</command>
<command
commandId="ccw.ui.edit.text.clojure.switchNamespace"
label="Switch REPL to File's Namespace"
style="push">
</command>
<command
commandId="ccw.ui.edit.text.clojure.compile.lib"
label="Compile file in REPL"
style="push">
</command>
<!-- remove 'run tests' no-op -->
<!--
<command
commandId="ccw.ui.edit.text.clojure.run.tests"
label="Run tests in REPL"
style="push">
</command>-->
<!--command
commandId="ccw.ui.edit.text.clojure.format.code"
label="Format clojure code"
style="push">
</command-->
<command
commandId="ccw.ui.edit.text.clojure.open.hyperlink"
label="Navigate to definition"
style="push">
</command>
<visibleWhen
checkEnabled="false">
<with
variable="activePartId">
<equals
value="ccw.clojureeditor">
</equals>
</with>
</visibleWhen>
</menu>
</menuContribution>
<menuContribution
locationURI="menu:edit?after=additions">
<menu
id="expandSelectionToMenuId"
label="%ExpandSelectionTo">
</menu>
</menuContribution>
<menuContribution
locationURI="menu:expandSelectionToMenuId">
<command
commandId="ccw.ui.edit.text.clojure.expand.selection.up"
id="ccw.ui.edit.text.clojure.expand.selection.up"
label="%ClojureSelectEnclosing_label"
style="push">
<visibleWhen
checkEnabled="false">
<reference
definitionId="ccw.ui.activeClojureEditorScope.definition">
</reference>
</visibleWhen>
</command>
</menuContribution>
<menuContribution
locationURI="menu:goTo?after=additions">
<command
commandId="ccw.ui.edit.text.clojure.goto.matching.bracket"
id="ccw.ui.edit.text.clojure.goto.matching.bracket"
label="%command.gotoMatchingBracket.name"
style="push">
<visibleWhen
checkEnabled="false">
<reference
definitionId="ccw.ui.activeClojureEditorScope.definition">
</reference>
</visibleWhen>
</command>
<command
commandId="ccw.ui.edit.text.clojure.goto.previous.member"
id="ccw.ui.edit.text.clojure.goto.previous.member"
label="%command.gotoPreviousMember.name"
style="push">
<visibleWhen
checkEnabled="false">
<reference
definitionId="ccw.ui.activeClojureEditorScope.definition">
</reference>
</visibleWhen>
</command>
<command
commandId="ccw.ui.edit.text.clojure.goto.next.member"
id="ccw.ui.edit.text.clojure.goto.next.member"
label="%command.gotoNextMember.name"
style="push">
<visibleWhen
checkEnabled="false">
<reference
definitionId="ccw.ui.activeClojureEditorScope.definition">
</reference>
</visibleWhen>
</command>
</menuContribution>
<menuContribution
locationURI="menu:window?before=preferences">
<command
commandId="ccw.ui.repl.connect"
icon="icons/clojure16x16.png"
id="ccw.ui.repl.connect"
label="%command.connectToREPL.name"
mode="FORCE_TEXT"
style="push"
tooltip="%command.connectToREPL.description">
</command>
</menuContribution>
<menuContribution
locationURI="menu:window?before=preferences">
<command
commandId="ccw.ui.repl.showActiveREPL"
icon="icons/repl/showActive.png"
disabledIcon="icons/repl/showActive_disabled.png"
id="ccw.ui.repl.showActiveREPL"
label="Show active REPL"
mode="FORCE_TEXT"
style="push"
tooltip="Show last-focused REPL, where all code will be sent to be evaluated.">
</command>
</menuContribution>
<!--
* There's a BUG starting with Eclipse Juno 4.2.2 with the compatibility
* layer and the context mgt / toolbar icons mgt (they just don't work).
* Reverting back from Command+Handler+MenuItems to Actions works,
* so that's what we're doing here.
* So for a temporary (Ah!) time, we're disabling menuContributions for REPL toolbar
-->
<!--
<menuContribution
locationURI="toolbar:ccw.view.repl">
<command
commandId="ccw.view.repl.commands.printErrorDetail"
icon="icons/repl/print_last_error.gif"
style="push">
</command>
<command
commandId="ccw.view.repl.commands.interrupt"
icon="icons/repl/interrupt.gif"
style="push">
</command>
<command
commandId="ccw.view.repl.commands.reconnect"
icon="icons/repl/reconnect.gif"
style="push"
tooltip="Reconnect to this REPL&apos;s host and port (first disconnecting if necessary)">
</command>
<command
commandId="ccw.view.repl.commands.clearLog"
disabledIcon="icons/repl/clear_disabled.gif"
icon="icons/repl/clear.gif"
style="push"
tooltip="Clear the REPL log">
</command>
<command
commandId="ccw.view.repl.commands.newSession"
icon="icons/repl/new_wiz.gif"
style="push"
tooltip="Open a new REPL session connected to this REPL's Clojure process.">
</command>
<command
commandId="ccw.view.repl.commands.showConsole"
disabledIcon="icons/repl/console_disabled.gif"
icon="icons/repl/console.gif"
style="push"
tooltip="Show the console for the JVM process to which this REPL is connected">
</command>
</menuContribution>
-->
<menuContribution
allPopups="true"
locationURI="popup:org.eclipse.ui.projectConfigure?after=additions">
<command
commandId="ccw.core.command.toggle-clojure-nature"
label="%ccw.core.command.toggle-clojure-nature.add.name"
style="push">
<visibleWhen
checkEnabled="false">
<not>
<and>
<count
value="1">
</count>
<iterate
ifEmpty="false"
operator="or">
<adapt
type="org.eclipse.core.resources.IProject">
<test
property="org.eclipse.core.resources.projectNature"
value="ccw.nature">
</test>
</adapt>
</iterate>
</and>
</not>
</visibleWhen>
</command>
</menuContribution>
<menuContribution
allPopups="true"
locationURI="popup:org.eclipse.ui.popup.any?after=additions">
<menu
icon="icons/clojure16x16.png"
id="ccw.core.project.menu"
label="%ccw.core.clojure.popup.menu.label"
mnemonic="C">
<separator
name="ccw.core.project.menu.separator1"
visible="true">
</separator>
<command
commandId="ccw.core.command.toggle-clojure-nature"
label="%ccw.core.command.toggle-clojure-nature.remove.label"
mnemonic="R"
style="push">
<visibleWhen
checkEnabled="false">
<and>
<count
value="1">
</count>
<iterate
ifEmpty="false"
operator="or">
<adapt
type="org.eclipse.core.resources.IProject">
<test
property="org.eclipse.core.resources.projectNature"
value="ccw.nature">
</test>
</adapt>
</iterate>
</and>
</visibleWhen>
</command>
</menu>
</menuContribution>
</extension>
<extension point="org.eclipse.debug.ui.launchConfigurationTypeImages">
<launchConfigurationTypeImage
configTypeID="ccw.launching.clojure"
icon="icons/clojure16x16.png"
id="ccw.launchConfigurationTypeImage">
</launchConfigurationTypeImage>
</extension>
<extension
point="org.eclipse.ui.views">
<view
category="ccw.category.views"
class="ccw.repl.NamespaceBrowser"
icon="icons/clojure16x16.png"
id="ccw.view.namespacebrowser"
name="Namespace Browser"
restorable="true">
</view>
<category
id="ccw.category.views"
name="Clojure">
</category>
<view
allowMultiple="true"
category="ccw.category.views"
class="ccw.repl.REPLView"
icon="icons/clojure16x16.png"
id="ccw.view.repl"
name="REPL"
restorable="false">
</view>
</extension>
<extension
point="org.eclipse.ui.perspectiveExtensions">
<perspectiveExtension
targetID="org.eclipse.jdt.ui.JavaPerspective">
<newWizardShortcut
id="ccw.project.new.wizard">
</newWizardShortcut>
<newWizardShortcut
id="ccw.newClojureFileWizard">
</newWizardShortcut>
<viewShortcut
id="ccw.view.namespacebrowser">
</viewShortcut>
<view
id="ccw.view.namespacebrowser"
minimized="false"
relationship="stack"
relative="org.eclipse.ui.views.ContentOutline">
</view>
<view
id="ccw.view.repl:*"
minimized="false"
relationship="stack"
relative="org.eclipse.ui.console.ConsoleView"
visible="false">
</view>
</perspectiveExtension>
<perspectiveExtension
targetID="org.eclipse.pde.ui.PDEPerspective">
<newWizardShortcut
id="ccw.project.new.wizard">
</newWizardShortcut>
<newWizardShortcut
id="ccw.newClojureFileWizard">
</newWizardShortcut>
<viewShortcut
id="ccw.view.namespacebrowser">
</viewShortcut>
<view
id="ccw.view.namespacebrowser"
minimized="false"
relationship="stack"
relative="org.eclipse.ui.views.ContentOutline">
</view>
<view
id="ccw.view.repl:*"
minimized="false"
relationship="stack"
relative="org.eclipse.ui.console.ConsoleView"
visible="false">
</view>
</perspectiveExtension>
<perspectiveExtension
targetID="org.eclipse.debug.ui.DebugPerspective">
<newWizardShortcut
id="ccw.project.new.wizard">
</newWizardShortcut>
<newWizardShortcut
id="ccw.newClojureFileWizard">
</newWizardShortcut>
<viewShortcut
id="ccw.view.namespacebrowser">
</viewShortcut>
<view
id="ccw.view.repl:*"
minimized="false"
relationship="stack"
relative="org.eclipse.ui.console.ConsoleView"
visible="false">
</view>
<view
id="ccw.view.namespacebrowser"
minimized="false"
relationship="stack"
relative="org.eclipse.ui.views.ContentOutline">
</view>
</perspectiveExtension>
</extension>
<extension
id="ccw.markers.problemmarkers.compilation"
name="Clojure Compilation Problem"
point="org.eclipse.core.resources.markers">
<persistent
value="true">
</persistent>
<super
type="org.eclipse.core.resources.problemmarker">
</super>
</extension>
<extension
point="org.eclipse.core.runtime.adapters">
<factory
adaptableType="org.eclipse.core.resources.IProject"
class="ccw.ProjectLaunchableAdapter">
<adapter
type="org.eclipse.debug.ui.actions.ILaunchable">
</adapter>
</factory>
<factory
adaptableType="org.eclipse.core.resources.IFile"
class="ccw.ProjectLaunchableAdapter">
<adapter
type="org.eclipse.debug.ui.actions.ILaunchable">
</adapter>
</factory>
</extension>
<extension
point="org.eclipse.ui.preferencePages">
<page
name="%preferencePage.clojure.name"
class="ccw.preferences.EmptyPreferencePage"
id="ccw.preferences.EmptyPreferencePage">
</page>
<page
name="%preferencePage.general.name"
category="ccw.preferences.EmptyPreferencePage"
class="ccw.preferences.GeneralPreferencePage"
id="ccw.preferences.GeneralPreferencePage">
</page>
<page
name="%preferencePage.editor.name"
category="ccw.preferences.EmptyPreferencePage"
class="ccw.preferences.EditorPreferencePage"
id="ccw.preferences.EditorPreferencePage">
</page>
<page
name="%preferencePage.syntaxColoring.name"
category="ccw.preferences.EmptyPreferencePage"
class="ccw.preferences.SyntaxColoringPreferencePage"
id="ccw.preferences.SyntaxColoringPreferencePage">
</page>
<page
category="ccw.preferences.EmptyPreferencePage"
class="ccw.preferences.REPLViewPreferencePage"
id="ccw.preferences.REPLViewPreferencePage"
name="%preferencePage.repl.name">
</page>
<page
category="ccw.preferences.EmptyPreferencePage"
class="ccw.preferences.REPLHistoryPreferencePage"
id="ccw.preferences.REPLHistoryPreferencePage"
name="%preferencePage.repl.history.name">
</page>
<page
name="%preferencePage.hover.name"
category="ccw.preferences.EditorPreferencePage"
class="ccw.preferences.HoverPreferencePage"
id="ccw.preferences.HoverPreferencePage">
</page>
</extension>
<extension
point="org.eclipse.debug.core.sourcePathComputers">
<sourcePathComputer
class="ccw.launching.SourcePathComputerDelegate"
id="ccw.sourcePathComputer">
</sourcePathComputer>
</extension>
<extension
point="org.eclipse.core.expressions.definitions">
<definition
id="ccw.ui.activeClojureEditorScope.definition">
<with
variable="activeContexts">
<iterate
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</definition>
<definition
id="ccw.core.project.with.clojure.nature">
<and>
<count
value="1">
</count>
<iterate
ifEmpty="false"
operator="or">
<adapt
type="org.eclipse.core.resources.IProject">
<test
property="org.eclipse.core.resources.projectNature"
value="ccw.nature">
</test>
</adapt>
</iterate>
</and>
</definition>
<definition id="ccw.core.isCcwBundleInstalled">
<with variable="org.eclipse.core.runtime.Platform">
<test property="org.eclipse.core.runtime.isBundleInstalled" args="ccw.core"/>
</with>
</definition>
</extension>
<extension
point="org.eclipse.ui.workbench.texteditor.hyperlinkDetectors">
<hyperlinkDetector
activate="true"
id="ccw.texteditor.hyperlinkDetector"
name="%clojureHyperlinkDetector"
targetId="ccw.ui.clojureCode">
<class class="ccw.util.GenericExecutableExtension">
<parameter name="factory" value="ccw.api.hyperlink/factory"/>
<parameter name="detect-hyperlinks" value="ccw.editors.clojure.clojure-hyperlink/detect-hyperlinks"/>
</class>
</hyperlinkDetector>
<hyperlinkDetector
activate="false"
id="ccw.nrepl.hyperlinkDetectorInJavaEditor"
name="%nreplHyperlinkDetectorInJavaEditor"
targetId="org.eclipse.jdt.ui.javaCode">
<class class="ccw.util.GenericExecutableExtension">
<parameter name="factory" value="ccw.api.hyperlink/factory"/>
<parameter name="detect-hyperlinks" value="ccw.editors.clojure.nrepl-hyperlink/detect-hyperlinks"/>
</class>
</hyperlinkDetector>
<hyperlinkDetector
activate="false"
id="ccw.nrepl.hyperlinkDetectorInClojureEditor"
name="%nreplHyperlinkDetectorInClojureEditor"
targetId="ccw.ui.clojureCode">
<class
class="ccw.util.GenericExecutableExtension">
<parameter name="factory" value="ccw.api.hyperlink/factory"/>
<parameter name="detect-hyperlinks" value="ccw.editors.clojure.nrepl-hyperlink/detect-hyperlinks"/>
</class>
</hyperlinkDetector>
<hyperlinkDetector
activate="true"
id="ccw.nrepl.hyperlinkDetectorInTextEditor"
name="%nreplHyperlinkDetectorInTextEditor"
targetId="org.eclipse.ui.DefaultTextEditor">
<class
class="ccw.util.GenericExecutableExtension">
<parameter name="factory" value="ccw.api.hyperlink/factory"/>
<parameter name="detect-hyperlinks" value="ccw.editors.clojure.nrepl-hyperlink/detect-hyperlinks"/>
</class>
</hyperlinkDetector>
</extension>
<extension
point="org.eclipse.ui.workbench.texteditor.hyperlinkDetectorTargets">
<target
id="ccw.ui.clojureCode"
name="Clojure Editor">
<context
type="ccw.editors.clojure.IClojureEditor">
</context>
</target>
</extension>
<extension
point="org.eclipse.ui.handlers">
<handler
class="ccw.editors.clojure.GotoMatchingBracketHandler"
commandId="ccw.ui.edit.text.clojure.goto.matching.bracket">
<enabledWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</enabledWhen>
<activeWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</activeWhen>
</handler>
<handler
class="ccw.repl.Actions$PrintErrorHandler"
commandId="ccw.view.repl.commands.printErrorDetail">
<enabledWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.context.repl">
</equals>
</iterate>
</with>
</enabledWhen>
<activeWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.context.repl">
</equals>
</iterate>
</with>
</activeWhen>
</handler>
<handler
class="ccw.repl.Actions$ReconnectHandler"
commandId="ccw.view.repl.commands.reconnect">
<enabledWhen>
<with variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.context.repl">
</equals>
</iterate>
</with>
</enabledWhen>
<activeWhen>
<with variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.context.repl">
</equals>
</iterate>
</with>
</activeWhen>
</handler>
<handler
class="ccw.repl.Actions$InterruptHandler"
commandId="ccw.view.repl.commands.interrupt">
<enabledWhen>
<with variable="activeContexts">
<iterate ifEmpty="false" operator="or">
<equals value="ccw.ui.context.repl"/>
</iterate>
</with>
</enabledWhen>
<activeWhen>
<with variable="activeContexts">
<iterate ifEmpty="false" operator="or">
<equals value="ccw.ui.context.repl"/>
</iterate>
</with>
</activeWhen>
</handler>
<handler
class="ccw.repl.Actions$ClearLogHandler"
commandId="ccw.view.repl.commands.clearLog">
<enabledWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.context.repl">
</equals>
</iterate>
</with>
</enabledWhen>
<activeWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.context.repl">
</equals>
</iterate>
</with>
</activeWhen>
</handler>
<handler
class="ccw.repl.Actions$NewSessionHandler"
commandId="ccw.view.repl.commands.newSession">
<enabledWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.context.repl">
</equals>
</iterate>
</with>
</enabledWhen>
</handler>
<handler
class="ccw.repl.Actions$ShowConsoleHandler"
commandId="ccw.view.repl.commands.showConsole">
<enabledWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.context.repl">
</equals>
</iterate>
</with>
</enabledWhen>
<activeWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.context.repl">
</equals>
</iterate>
</with>
</activeWhen>
</handler>
<handler
commandId="ccw.ui.edit.text.clojure.forward-slurp">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.core.factories/handler-factory">
</parameter>
<parameter
name="handler"
value="ccw.editors.clojure.handlers/forward-slurp">
</parameter>
</class>
<enabledWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</enabledWhen>
<activeWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</activeWhen>
</handler>
<handler
commandId="ccw.ui.edit.text.clojure.backward-slurp">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.core.factories/handler-factory">
</parameter>
<parameter
name="handler"
value="ccw.editors.clojure.handlers/backward-slurp">
</parameter>
</class>
<enabledWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</enabledWhen>
<activeWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</activeWhen>
</handler>
<handler
commandId="ccw.ui.edit.text.clojure.forward-barf">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.core.factories/handler-factory">
</parameter>
<parameter
name="handler"
value="ccw.editors.clojure.handlers/forward-barf">
</parameter>
</class>
<enabledWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</enabledWhen>
<activeWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</activeWhen>
</handler>
<handler
commandId="ccw.ui.edit.text.clojure.backward-barf">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.core.factories/handler-factory">
</parameter>
<parameter
name="handler"
value="ccw.editors.clojure.handlers/backward-barf">
</parameter>
</class>
<enabledWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</enabledWhen>
<activeWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</activeWhen>
</handler>
<handler
commandId="ccw.ui.edit.text.clojure.select.raise">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.core.factories/handler-factory">
</parameter>
<parameter
name="handler"
value="ccw.editors.clojure.handlers/raise">
</parameter>
</class>
<enabledWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</enabledWhen>
<activeWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</activeWhen>
</handler>
<handler
commandId="ccw.ui.edit.text.clojure.splice.sexpr">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.core.factories/handler-factory">
</parameter>
<parameter
name="handler"
value="ccw.editors.clojure.handlers/splice">
</parameter>
</class>
<enabledWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</enabledWhen>
<activeWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</activeWhen>
</handler>
<handler
commandId="ccw.ui.edit.text.clojure.split.sexpr">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.core.factories/handler-factory">
</parameter>
<parameter
name="handler"
value="ccw.editors.clojure.handlers/split">
</parameter>
</class>
<enabledWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</enabledWhen>
<activeWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</activeWhen>
</handler>
<handler
commandId="ccw.ui.edit.text.clojure.join.sexpr">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.core.factories/handler-factory">
</parameter>
<parameter
name="handler"
value="ccw.editors.clojure.handlers/join">
</parameter>
</class>
<enabledWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</enabledWhen>
<activeWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</activeWhen>
</handler>
<handler
commandId="ccw.ui.edit.text.clojure.expand.selection.right">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.core.factories/handler-factory">
</parameter>
<parameter
name="handler"
value="ccw.editors.clojure.handlers/expand-right">
</parameter>
</class>
<enabledWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</enabledWhen>
<activeWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</activeWhen>
</handler>
<handler
commandId="ccw.ui.edit.text.clojure.expand.selection.left">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.core.factories/handler-factory">
</parameter>
<parameter
name="handler"
value="ccw.editors.clojure.handlers/expand-left">
</parameter>
</class>
<enabledWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</enabledWhen>
<activeWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</activeWhen>
</handler>
<handler
commandId="ccw.ui.edit.text.clojure.expand.selection.up">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.core.factories/handler-factory">
</parameter>
<parameter
name="handler"
value="ccw.editors.clojure.handlers/expand-up">
</parameter>
</class>
<enabledWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</enabledWhen>
<activeWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</activeWhen>
</handler>
<handler
commandId="ccw.ui.edit.text.clojure.select.last">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.core.factories/handler-factory">
</parameter>
<parameter
name="handler"
value="ccw.editors.clojure.handlers/select-last">
</parameter>
</class>
<enabledWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</enabledWhen>
<activeWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</activeWhen>
</handler>
<handler
commandId="ccw.ui.edit.text.clojure.open.hyperlink">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.core.factories/handler-factory">
</parameter>
<parameter
name="handler"
value="ccw.editors.clojure.handlers/open-hyperlink">
</parameter>
</class>
<enabledWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</enabledWhen>
<activeWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</activeWhen>
</handler>
<handler
commandId="ccw.ui.edit.text.clojure.indent.selection">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.core.factories/handler-factory">
</parameter>
<parameter
name="handler"
value="ccw.editors.clojure.handlers/indent-selection">
</parameter>
</class>
<enabledWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</enabledWhen>
<activeWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</activeWhen>
</handler>
<handler
commandId="org.eclipse.ui.edit.text.contentAssist.proposals">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.core.factories/handler-factory">
</parameter>
<parameter
name="handler"
value="ccw.editors.clojure.handlers/content-assist">
</parameter>
</class>
<enabledWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</enabledWhen>
<activeWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</activeWhen>
</handler>
<handler
commandId="ccw.ui.edit.text.clojure.switch.structuraledition.mode">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.core.factories/handler-factory">
</parameter>
<parameter
name="handler"
value="ccw.editors.clojure.handlers/toggle-structural-edition-mode">
</parameter>
</class>
<enabledWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</enabledWhen>
<activeWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</activeWhen>
</handler>
<handler
commandId="ccw.ui.repl.history.previous">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.core.factories/handler-factory">
</parameter>
<parameter
name="handler"
value="ccw.repl.view-helpers/history-previous">
</parameter>
</class>
<enabledWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.context.repl">
</equals>
</iterate>
</with>
</enabledWhen>
<activeWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.context.repl">
</equals>
</iterate>
</with>
</activeWhen>
</handler>
<handler
commandId="ccw.ui.repl.history.next">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.core.factories/handler-factory">
</parameter>
<parameter
name="handler"
value="ccw.repl.view-helpers/history-next">
</parameter>
</class>
<enabledWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.context.repl">
</equals>
</iterate>
</with>
</enabledWhen>
<activeWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.context.repl">
</equals>
</iterate>
</with>
</activeWhen>
</handler>
<handler
commandId="ccw.ui.edit.text.clojure.comment.toggle">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.core.factories/handler-factory">
</parameter>
<parameter
name="handler"
value="ccw.editors.clojure.handlers/toggle-line-comment">
</parameter>
</class>
<enabledWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</enabledWhen>
<activeWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</activeWhen>
</handler>
<handler
commandId="ccw.ui.edit.text.clojure.pastewithescaping">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.core.factories/handler-factory">
</parameter>
<parameter
name="handler"
value="ccw.editors.clojure.handlers/smart-paste">
</parameter>
</class>
<enabledWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</enabledWhen>
<activeWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</activeWhen>
</handler>
<handler
commandId="org.eclipse.ui.edit.paste">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.core.factories/handler-factory">
</parameter>
<parameter
name="handler"
value="ccw.editors.clojure.handlers/smart-paste">
</parameter>
</class>
<enabledWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</enabledWhen>
<activeWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</activeWhen>
</handler>
<handler
commandId="ccw.ui.edit.text.clojure.switch.rainbow.parens">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.core.factories/handler-factory">
</parameter>
<parameter
name="handler"
value="ccw.editors.clojure.handlers/toggle-show-rainbow-parens">
</parameter>
</class>
<enabledWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</enabledWhen>
<activeWhen>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</activeWhen>
</handler>
<handler
class="ccw.commands.ToggleClojureNatureCommand"
commandId="ccw.core.command.toggle-clojure-nature">
</handler>
</extension>
<extension
point="org.eclipse.core.contenttype.contentTypes">
<content-type
base-type="org.eclipse.core.runtime.text"
default-charset="UTF-8"
file-extensions="clj,cljs,cljx,clja,cljc,dtm,edn"
id="ccw.core.clj"
name="Clojure/ ClojureScript / Datomic / EDN Source File"
priority="high">
</content-type>
</extension>
<extension
point="org.eclipse.jdt.core.classpathContainerInitializer">
<classpathContainerInitializer
id="ccw.LEININGEN_CONTAINER"
class="ccw.util.GenericExecutableExtension:ccw.leiningen.classpath-container/initializer-factory">
</classpathContainerInitializer>
</extension>
<extension
point="org.eclipse.jdt.ui.classpathContainerPage">
<classpathContainerPage
id="ccw.LEININGEN_CONTAINER"
name="%ccw.LEININGEN_CONTAINER"
class="ccw.util.GenericExecutableExtension:ccw.leiningen.classpath-container-ui/page-factory">
</classpathContainerPage>
</extension>
<extension
id="ccw.leiningen.problemmarkers.classpathcontainer"
name="%ccw.leiningen.problemmarker.classpathcontainer"
point="org.eclipse.core.resources.markers">
<persistent
value="true">
</persistent>
<super
type="org.eclipse.core.resources.problemmarker">
</super>
</extension>
<extension
point="org.eclipse.ui.bindings">
<key
commandId="ccw.leiningen.command.generic-launch"
contextId="org.eclipse.ui.contexts.window"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M3+L L">
</key>
<key
commandId="ccw.leiningen.command.update-dependencies"
contextId="org.eclipse.ui.contexts.window"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M3+L U">
</key>
<key
commandId="ccw.leiningen.command.launch-headless-repl"
contextId="org.eclipse.ui.contexts.window"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M3+L H">
</key>
<key
commandId="ccw.leiningen.command.reset-project-classpath"
contextId="org.eclipse.ui.contexts.window"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M3+L R">
</key>
</extension>
<extension
point="org.eclipse.ui.handlers">
<handler
commandId="ccw.leiningen.command.update-dependencies">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.core.factories/handler-factory">
</parameter>
<parameter
name="handler"
value="ccw.leiningen.handlers/update-dependencies">
</parameter>
</class>
<activeWhen>
<or>
<iterate
ifEmpty="false"
operator="and">
<adapt
type="org.eclipse.core.resources.IResource">
<test
property="org.eclipse.core.resources.projectNature"
value="ccw.leiningen.nature">
</test>
</adapt>
</iterate>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</or>
</activeWhen>
</handler>
<handler
commandId="ccw.leiningen.command.add-leiningen-nature">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.core.factories/handler-factory">
</parameter>
<parameter
name="handler"
value="ccw.leiningen.handlers/add-leiningen-nature">
</parameter>
</class>
<activeWhen>
<and>
<iterate
operator="and">
<adapt
type="org.eclipse.core.resources.IProject">
</adapt>
</iterate>
<not>
<and>
<count
value="1">
</count>
<iterate
ifEmpty="false"
operator="or">
<adapt
type="org.eclipse.core.resources.IProject">
<test
property="org.eclipse.core.resources.projectNature"
value="ccw.leiningen.nature">
</test>
</adapt>
</iterate>
</and>
</not>
</and>
</activeWhen>
<enabledWhen>
<and>
<iterate
operator="and">
<adapt
type="org.eclipse.core.resources.IProject">
</adapt>
</iterate>
<not>
<and>
<count
value="1">
</count>
<iterate
ifEmpty="false"
operator="or">
<adapt
type="org.eclipse.core.resources.IProject">
<test
property="org.eclipse.core.resources.projectNature"
value="ccw.leiningen.nature">
</test>
</adapt>
</iterate>
</and>
</not>
</and>
</enabledWhen>
</handler>
<handler
commandId="ccw.leiningen.command.remove-leiningen-nature">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.core.factories/handler-factory">
</parameter>
<parameter
name="handler"
value="ccw.leiningen.handlers/remove-leiningen-nature">
</parameter>
</class>
<activeWhen>
<and>
<iterate
operator="and">
<adapt
type="org.eclipse.core.resources.IProject">
</adapt>
</iterate>
<and>
<count
value="1">
</count>
<iterate
ifEmpty="false"
operator="or">
<adapt
type="org.eclipse.core.resources.IProject">
<test
property="org.eclipse.core.resources.projectNature"
value="ccw.leiningen.nature">
</test>
</adapt>
</iterate>
</and>
</and>
</activeWhen>
<enabledWhen>
<and>
<iterate
operator="and">
<adapt
type="org.eclipse.core.resources.IProject">
</adapt>
</iterate>
<and>
<count
value="1">
</count>
<iterate
ifEmpty="false"
operator="or">
<adapt
type="org.eclipse.core.resources.IProject">
<test
property="org.eclipse.core.resources.projectNature"
value="ccw.leiningen.nature">
</test>
</adapt>
</iterate>
</and>
</and>
</enabledWhen>
</handler>
<handler
commandId="ccw.leiningen.command.reset-project-classpath">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.core.factories/handler-factory">
</parameter>
<parameter
name="handler"
value="ccw.leiningen.handlers/reset-project-build-path">
</parameter>
</class>
<activeWhen>
<or>
<iterate
ifEmpty="false"
operator="and">
<adapt
type="org.eclipse.core.resources.IResource">
<test
property="org.eclipse.core.resources.projectNature"
value="ccw.leiningen.nature">
</test>
</adapt>
</iterate>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</or>
</activeWhen>
</handler>
<handler
commandId="ccw.leiningen.command.generic-launch">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.core.factories/handler-factory">
</parameter>
<parameter
name="handler"
value="ccw.leiningen.handlers/generic-launch">
</parameter>
</class>
<activeWhen>
<or>
<iterate
ifEmpty="false"
operator="and">
<adapt
type="org.eclipse.core.resources.IResource">
<test
property="org.eclipse.core.resources.projectNature"
value="ccw.leiningen.nature">
</test>
</adapt>
</iterate>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</or>
</activeWhen>
</handler>
<handler
commandId="ccw.leiningen.command.launch-headless-repl">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.core.factories/handler-factory">
</parameter>
<parameter
name="handler"
value="ccw.leiningen.handlers/launch-headless-repl">
</parameter>
</class>
<activeWhen>
<or>
<iterate
ifEmpty="false"
operator="and">
<adapt
type="org.eclipse.core.resources.IResource">
<test
property="org.eclipse.core.resources.projectNature"
value="ccw.leiningen.nature">
</test>
</adapt>
</iterate>
<with
variable="activeContexts">
<iterate
ifEmpty="false"
operator="or">
<equals
value="ccw.ui.clojureEditorScope">
</equals>
</iterate>
</with>
</or>
</activeWhen>
</handler>
<handler
class="ccw.editors.clojure.TestGeneratorHandler"
commandId="ccw.ui.test.commands.testGenerator">
</handler>
</extension>
<extension
id="ccw.leiningen.nature"
name="Leiningen Nature"
point="org.eclipse.core.resources.natures">
<runtime>
<run
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.leiningen.nature/factory">
</parameter>
</run>
</runtime>
<builder
id="ccw.leiningen.builder">
</builder>
<requires-nature
id="org.eclipse.jdt.core.javanature">
</requires-nature>
</extension>
<extension
id="ccw.leiningen.builder"
name="Leiningen Builder"
point="org.eclipse.core.resources.builders">
<builder
callOnEmptyDelta="false"
hasNature="true">
<run
class="ccw.leiningen.LeiningenBuilder">
</run></builder>
</extension>
<extension
point="org.eclipse.ui.menus">
<menuContribution
allPopups="true"
locationURI="popup:org.eclipse.ui.popup.any?after=additions">
<menu
icon="leiningen16x16.png"
id="ccw.leiningen.project.menu"