Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

3403 lines (3349 sloc) 119.328 kb
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.2"?>
<plugin>
<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.editors.clojure.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.editors.clojure.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.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.declaration">
</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>
</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.declaration"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
<key
sequence="M1+M3+Q R"
contextId="org.eclipse.ui.contexts.window"
commandId="ccw.ui.repl.showActiveREPL"
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>
</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.declaration"
label="Navigate to definition"
style="push">
</command>
<visibleWhen
checkEnabled="false">
<with
variable="activePartId">
<equals
value="ccw.clojureeditor">
</equals>
</with>
</visibleWhen>
</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.declaration"
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 Views">
</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>
</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>
</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.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>
</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>
</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.editors.clojure.clojure-hyperlink-detector/factory"/>
</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.editors.clojure.nrepl-hyperlink-detector/factory"/>
</class>
</hyperlinkDetector>
<hyperlinkDetector
activate="true"
id="ccw.nrepl.hyperlinkDetectorInClojureEditor"
name="%nreplHyperlinkDetectorInClojureEditor"
targetId="ccw.ui.clojureCode">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.editors.clojure.nrepl-hyperlink-detector/factory">
</parameter>
</class>
</hyperlinkDetector>
<hyperlinkDetector
activate="false"
id="ccw.nrepl.hyperlinkDetectorInTextEditor"
name="%nreplHyperlinkDetectorInTextEditor"
targetId="org.eclipse.ui.DefaultTextEditor">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.editors.clojure.nrepl-hyperlink-detector/factory">
</parameter>
</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.declaration">
<class
class="ccw.util.GenericExecutableExtension">
<parameter
name="factory"
value="ccw.core.factories/handler-factory">
</parameter>
<parameter
name="handler"
value="ccw.editors.clojure.handlers/open-declaration">
</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.commands">
<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">
<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>
</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"
label="%ccw.leiningen.popup.menu.label"
mnemonic="L"
sibling_order="&lt;command&#x0A; commandId=&quot;ccw.leiningen.command.launch-headless-repl&quot;&#x0A; label=&quot;%ccw.leiningen.command.launch-headless-repl.name&quot;&#x0A; mnemonic=&quot;H&quot;&#x0A; style=&quot;push&quot;&#x0A; tooltip=&quot;Launch a Headless REPL for the project through Leiningen&quot;&gt;&#x0A; &lt;visibleWhen&#x0A; checkEnabled=&quot;true&quot;&gt;&#x0A; &lt;/visibleWhen&gt;&#x0A; &lt;/command&gt;">
<command
commandId="ccw.leiningen.command.launch-headless-repl"
label="%ccw.leiningen.command.launch-headless-repl.name"
mnemonic="H"
style="push"
tooltip="%ccw.leiningen.command.launch-headless-repl.description">
<visibleWhen
checkEnabled="true">
</visibleWhen>
</command>
<command
commandId="ccw.leiningen.command.generic-launch"
label="%ccw.leiningen.command.generic-launch.name"
mnemonic="L"
style="push"
tooltip="%ccw.leiningen.command.generic-launch.description">
<visibleWhen
checkEnabled="true">
</visibleWhen>
</command>
<command
commandId="ccw.leiningen.command.reset-project-classpath"
label="%ccw.leiningen.command.reset-project-classpath.name"
mnemonic="R"
style="push">
<visibleWhen
checkEnabled="true">
</visibleWhen>
</command>
<command
commandId="ccw.leiningen.command.update-dependencies"
label="%ccw.leiningen.command.update-dependencies.name"
mnemonic="U"
style="push"
tooltip="Update the Eclipse project&apos;s classpath container for Leiningen dependencies from project.clj">
<visibleWhen
checkEnabled="true">
</visibleWhen>
</command>
<command
commandId="ccw.leiningen.command.remove-leiningen-nature"
label="%ccw.leiningen.command.remove-leiningen-nature.name"
mnemonic="R"
style="push">
<visibleWhen
checkEnabled="true">
</visibleWhen>
</command>
</menu>
</menuContribution>
<menuContribution
allPopups="true"
locationURI="popup:org.eclipse.ui.projectConfigure?after=additions">
<command
commandId="ccw.leiningen.command.add-leiningen-nature"
icon="leiningen16x16.png"
label="%ccw.leiningen.command.add-leiningen-nature.name"
style="push">
<visibleWhen
checkEnabled="true">
</visibleWhen>
</command>
</menuContribution>
</extension>
<extension
point="org.eclipse.core.expressions.definitions">
<definition
id="ccw.leiningen.expression.selection-single-leiningen-project">
<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>
</definition>
</extension>
<extension
point="org.eclipse.ui.perspectiveExtensions">
<perspectiveExtension
targetID="org.eclipse.jdt.ui.JavaPerspective">
<newWizardShortcut
id="ccw.leiningen.project.new.wizard">
</newWizardShortcut>
</perspectiveExtension>
<perspectiveExtension
targetID="org.eclipse.pde.ui.PDEPerspective">
<newWizardShortcut
id="ccw.leiningen.project.new.wizard">
</newWizardShortcut>
</perspectiveExtension>
<perspectiveExtension
targetID="org.eclipse.debug.ui.DebugPerspective">
<newWizardShortcut
id="ccw.leiningen.project.new.wizard">
</newWizardShortcut>
</perspectiveExtension>
</extension>
<extension
point="org.eclipse.core.runtime.adapters">
<factory
adaptableType="ccw.editors.clojure.ClojureEditor"
class="ccw.debug.BreakpointAdapterFactory">
<adapter
type="org.eclipse.debug.ui.actions.IToggleBreakpointsTarget">
</adapter>
</factory>
</extension>
<extension point="org.eclipse.ui.popupMenus">
<viewerContribution
id="ccw.editors.ClojureEditor.RulerPopupActions"
targetID="ccw.clojureeditor.RulerContext">
<action
class="org.eclipse.debug.ui.actions.RulerEnableDisableBreakpointActionDelegate"
id="ccw.editors.ClojureEditor.RulerContext.enableBreakpointAction"
label="Enable Breakpoint"
menubarPath="additions">
</action>
<action
class="org.eclipse.debug.ui.actions.RulerToggleBreakpointActionDelegate"
id="ccw.editors.ClojureEditor.RulerContext.toggleBreakpointAction"
label="Toggle Breakpoint"
menubarPath="additions">
</action>
</viewerContribution>
</extension>
<extension
point="org.eclipse.ui.editorActions">
<editorContribution
id="ccw.editors.ClojureEditor.RulerActions"
targetID="ccw.clojureeditor">
<action
actionID="RulerDoubleClick"
class="org.eclipse.debug.ui.actions.RulerToggleBreakpointActionDelegate"
id="ccw.editors.ClojureEditor.RulerContext.doubleClickBreakpointAction"
label="Not Used"
style="push">
</action>
</editorContribution>
</extension>
<extension