package org.easyb.ui.editor; import org.codehaus.groovy.eclipse.editor.GroovyPartitionScanner; import org.easyb.ui.utils.DocumentUtil; import org.eclipse.core.filebuffers.IDocumentSetupParticipant; import org.eclipse.jdt.ui.text.IJavaPartitions; import org.eclipse.jface.text.IDocument; import org.eclipse.jface.text.IDocumentPartitioner; import org.eclipse.jface.text.rules.FastPartitioner; public class BehaviourDocumentSetup implements IDocumentSetupParticipant { @Override public void setup(IDocument document) { setupPartitioner(document); } public static void setupPartitioner(IDocument document) { //Add the easyb partitoner IDocumentPartitioner easybPartitioner = new FastPartitioner(PartitionScannerBuilder.createBehaviourPartitionScanner(), PartitionScannerBuilder.EASYB_ALL_PARTITION_TYPES); DocumentUtil.setDocumentPartitioner( document,PartitionScannerBuilder.PARTITIONER_ID,easybPartitioner); easybPartitioner.connect(document); //Add the Groovy partitioner IDocumentPartitioner groovyPartitioner = new FastPartitioner(new GroovyPartitionScanner(), GroovyPartitionScanner.LEGAL_CONTENT_TYPES); DocumentUtil.setDocumentPartitioner( document,IJavaPartitions.JAVA_PARTITIONING,groovyPartitioner); groovyPartitioner.connect(document); } }