Update redocs to current code conventions

  - Adapt to docmlet
diff --git a/redocs/org.eclipse.statet.redocs.r/plugin.xml b/redocs/org.eclipse.statet.redocs.r/plugin.xml
index e3fe3ba..9a8de6c 100644
--- a/redocs/org.eclipse.statet.redocs.r/plugin.xml
+++ b/redocs/org.eclipse.statet.redocs.r/plugin.xml
@@ -35,7 +35,7 @@
          <with
                variable="activePart">
             <instanceof
-                  value="org.eclipse.statet.redocs.r.ui.sourceediting.IRweaveEditor">
+                  value="org.eclipse.statet.redocs.r.ui.sourceediting.RweaveEditor">
             </instanceof>
          </with>
       </definition>
diff --git a/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/internal/redocs/r/ui/debug/SubmitRChunkDirectLaunchShortcut.java b/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/internal/redocs/r/ui/debug/SubmitRChunkDirectLaunchShortcut.java
index 2a13aa6..f4e1563 100644
--- a/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/internal/redocs/r/ui/debug/SubmitRChunkDirectLaunchShortcut.java
+++ b/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/internal/redocs/r/ui/debug/SubmitRChunkDirectLaunchShortcut.java
@@ -44,7 +44,7 @@
 import org.eclipse.statet.r.launching.RCodeLaunching;
 import org.eclipse.statet.r.ui.RUI;
 import org.eclipse.statet.redocs.r.RedocsRweave;
-import org.eclipse.statet.redocs.r.core.source.IDocContentSectionsRweaveExtension;
+import org.eclipse.statet.redocs.r.core.source.DocContentSectionsRweaveExtension;
 
 
 /**
@@ -69,7 +69,7 @@
 		
 		private AbstractDocument document;
 		
-		private IDocContentSectionsRweaveExtension docContentSections;
+		private DocContentSectionsRweaveExtension docContentSections;
 		
 		private ITextSelection selection;
 		
@@ -113,8 +113,8 @@
 						if (UIAccess.isOkToUse(viewer)) {
 							data.document= (AbstractDocument) viewer.getDocument();
 							final IDocContentSections docContentInfo= sourceEditor.getDocumentContentInfo();
-							if (docContentInfo instanceof IDocContentSectionsRweaveExtension) {
-								data.docContentSections= (IDocContentSectionsRweaveExtension) docContentInfo;
+							if (docContentInfo instanceof DocContentSectionsRweaveExtension) {
+								data.docContentSections= (DocContentSectionsRweaveExtension) docContentInfo;
 							}
 							data.selection= (ITextSelection) viewer.getSelection();
 						}
diff --git a/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/core/source/AbstractRChunkPartitionNodeScanner.java b/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/core/source/AbstractRChunkPartitionNodeScanner.java
index 110abb1..f9d6f06 100644
--- a/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/core/source/AbstractRChunkPartitionNodeScanner.java
+++ b/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/core/source/AbstractRChunkPartitionNodeScanner.java
@@ -38,7 +38,7 @@
 		
 		@Override
 		public String getPartitionType() {
-			return IRweaveDocumentConstants.RCHUNK_BASE_CONTENT_TYPE;
+			return RweaveDocumentConstants.RCHUNK_BASE_CONTENT_TYPE;
 		}
 		
 		@Override
@@ -52,7 +52,7 @@
 		
 		@Override
 		public String getPartitionType() {
-			return IRweaveDocumentConstants.RCHUNK_CONTROL_CONTENT_TYPE;
+			return RweaveDocumentConstants.RCHUNK_CONTROL_CONTENT_TYPE;
 		}
 		
 		@Override
@@ -76,7 +76,7 @@
 		
 		@Override
 		public String getPartitionType() {
-			return IRweaveDocumentConstants.RCHUNK_COMMENT_CONTENT_TYPE;
+			return RweaveDocumentConstants.RCHUNK_COMMENT_CONTENT_TYPE;
 		}
 		
 		@Override
@@ -114,7 +114,7 @@
 		super.init();
 		
 		final ITreePartitionNode rootNode= getRootNode();
-		if (rootNode.getType().getPartitionType() == IRweaveDocumentConstants.RCHUNK_BASE_CONTENT_TYPE) {
+		if (rootNode.getType().getPartitionType() == RweaveDocumentConstants.RCHUNK_BASE_CONTENT_TYPE) {
 			this.chunkNode= rootNode;
 		}
 		this.chunkLine= NONE;
diff --git a/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/core/source/IDocContentSectionsRweaveExtension.java b/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/core/source/DocContentSectionsRweaveExtension.java
similarity index 69%
rename from redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/core/source/IDocContentSectionsRweaveExtension.java
rename to redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/core/source/DocContentSectionsRweaveExtension.java
index 511a5fc..e0a6292 100644
--- a/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/core/source/IDocContentSectionsRweaveExtension.java
+++ b/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/core/source/DocContentSectionsRweaveExtension.java
@@ -24,22 +24,24 @@
 import org.eclipse.statet.ecommons.text.core.treepartitioner.ITreePartitionNode;
 
 
-public interface IDocContentSectionsRweaveExtension extends IDocContentSections {
+public interface DocContentSectionsRweaveExtension extends IDocContentSections {
 	
 	
-	ITreePartitionNode getRChunkRegion(IDocument document, int offset)
+	ITreePartitionNode getRChunkRegion(final IDocument document, final int offset)
 			throws BadLocationException;
 	
-	List<ITreePartitionNode> getRChunkRegions(IDocument document, int offset, int length)
+	List<ITreePartitionNode> getRChunkRegions(final IDocument document,
+			final int offset, final int length)
 			throws BadLocationException;
 	
-	IRegion getRChunkContentRegion(IDocument document, int offset)
+	IRegion getRChunkContentRegion(final IDocument document, final int offset)
 			throws BadLocationException;
 	
-	List<ITreePartitionNode> getRChunkCodeRegions(IDocument document, int offset, int length)
+	List<ITreePartitionNode> getRChunkCodeRegions(final IDocument document,
+			final int offset, final int length)
 			throws BadLocationException;
 	
-	ITreePartitionNode getRCodeRegion(IDocument document, int offset)
+	ITreePartitionNode getRCodeRegion(final IDocument document, final int offset)
 			throws BadLocationException;
 	
 }
diff --git a/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/core/source/RweaveDocSectionTreePartImpl.java b/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/core/source/RweaveDocSectionTreePartImpl.java
index 13057b2..1dd7134 100644
--- a/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/core/source/RweaveDocSectionTreePartImpl.java
+++ b/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/core/source/RweaveDocSectionTreePartImpl.java
@@ -47,7 +47,7 @@
 	public ITreePartitionNode getRChunkRegion(final IDocument document, final int offset)
 			throws BadLocationException {
 		return TreePartitionUtils.searchNode(document, this.sections.getPartitioning(), offset, false,
-				IRweaveDocumentConstants.RCHUNK_BASE_CONTENT_TYPE );
+				RweaveDocumentConstants.RCHUNK_BASE_CONTENT_TYPE );
 	}
 	
 	public List<ITreePartitionNode> getRChunkRegions(final IDocument document,
@@ -75,7 +75,7 @@
 			if (child.getStartOffset() >= endOffset) {
 				break;
 			}
-			if (child.getType().getPartitionType() == IRweaveDocumentConstants.RCHUNK_BASE_CONTENT_TYPE) {
+			if (child.getType().getPartitionType() == RweaveDocumentConstants.RCHUNK_BASE_CONTENT_TYPE) {
 				nodes.add(child);
 			}
 			else {
diff --git a/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/core/source/IRweaveDocumentConstants.java b/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/core/source/RweaveDocumentConstants.java
similarity index 93%
rename from redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/core/source/IRweaveDocumentConstants.java
rename to redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/core/source/RweaveDocumentConstants.java
index 123f387..6909890 100644
--- a/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/core/source/IRweaveDocumentConstants.java
+++ b/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/core/source/RweaveDocumentConstants.java
@@ -16,11 +16,13 @@
 
 import org.eclipse.statet.jcommons.collections.ImCollections;
 import org.eclipse.statet.jcommons.collections.ImList;
+import org.eclipse.statet.jcommons.lang.NonNullByDefault;
 
 import org.eclipse.statet.ecommons.text.core.IPartitionConstraint;
 
 
-public interface IRweaveDocumentConstants {
+@NonNullByDefault
+public interface RweaveDocumentConstants {
 	
 	
 	String RCHUNK_BASE_CONTENT_TYPE= "RweaveChunk.Base"; //$NON-NLS-1$
diff --git a/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/ui/debug/RweaveSubmitContentHandler.java b/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/ui/debug/RweaveSubmitContentHandler.java
index 0ec9976..81bb804 100644
--- a/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/ui/debug/RweaveSubmitContentHandler.java
+++ b/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/ui/debug/RweaveSubmitContentHandler.java
@@ -27,7 +27,7 @@
 import org.eclipse.statet.ecommons.text.TextUtil;
 
 import org.eclipse.statet.r.launching.ICodeSubmitContentHandler;
-import org.eclipse.statet.redocs.r.core.source.IDocContentSectionsRweaveExtension;
+import org.eclipse.statet.redocs.r.core.source.DocContentSectionsRweaveExtension;
 
 
 public class RweaveSubmitContentHandler implements ICodeSubmitContentHandler {
@@ -35,11 +35,11 @@
 	
 	private final IDocumentSetupParticipant docSetup;
 	
-	private final IDocContentSectionsRweaveExtension docContentSections;
+	private final DocContentSectionsRweaveExtension docContentSections;
 	
 	
 	public RweaveSubmitContentHandler(final IDocumentSetupParticipant docSetup,
-			final IDocContentSectionsRweaveExtension docContentSections) {
+			final DocContentSectionsRweaveExtension docContentSections) {
 		this.docSetup= docSetup;
 		this.docContentSections= docContentSections;
 	}
diff --git a/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/ui/processing/RConsoleOperationContext.java b/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/ui/processing/RConsoleOperationContext.java
index 744c546..9996423 100644
--- a/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/ui/processing/RConsoleOperationContext.java
+++ b/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/ui/processing/RConsoleOperationContext.java
@@ -31,7 +31,7 @@
 
 import org.eclipse.statet.ecommons.ts.ui.ToolRunnableDecorator;
 
-import org.eclipse.statet.docmlet.base.ui.DocBaseUI;
+import org.eclipse.statet.docmlet.base.ui.DocmlBaseUI;
 import org.eclipse.statet.docmlet.base.ui.processing.DocProcessingToolOperationContext;
 import org.eclipse.statet.docmlet.base.ui.processing.DocProcessingToolProcess;
 import org.eclipse.statet.internal.redocs.r.Messages;
@@ -80,7 +80,7 @@
 			switch (event) {
 			case REMOVING_FROM:
 			case BEING_ABANDONED:
-				RConsoleOperationContext.this.toolProcess.log(new CancelStatus(DocBaseUI.BUNDLE_ID,
+				RConsoleOperationContext.this.toolProcess.log(new CancelStatus(DocmlBaseUI.BUNDLE_ID,
 						Messages.ProcessingOperationContext_RConsole_RTask_Canceled_label) );
 				cleanR();
 				cancel();
diff --git a/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/ui/processing/RunRCmdToolOperation.java b/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/ui/processing/RunRCmdToolOperation.java
index c13061e..b94e293 100644
--- a/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/ui/processing/RunRCmdToolOperation.java
+++ b/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/ui/processing/RunRCmdToolOperation.java
@@ -28,10 +28,10 @@
 import org.eclipse.statet.ecommons.variables.core.VariableText2;
 import org.eclipse.statet.ecommons.variables.core.VariableUtils;
 
-import org.eclipse.statet.docmlet.base.ui.DocBaseUI;
+import org.eclipse.statet.docmlet.base.ui.DocmlBaseUI;
 import org.eclipse.statet.docmlet.base.ui.processing.DocProcessingConfig;
 import org.eclipse.statet.docmlet.base.ui.processing.operations.AbstractLaunchConfigOperation;
-import org.eclipse.statet.docmlet.base.ui.processing.operations.RunExternalProgramOperation.IExternalProgramLaunchConfig;
+import org.eclipse.statet.docmlet.base.ui.processing.operations.RunExternalProgramOperation.ExternalProgramLaunchConfig;
 import org.eclipse.statet.internal.redocs.r.Messages;
 import org.eclipse.statet.r.cmd.ui.launching.RCmdLaunching;
 
@@ -72,15 +72,15 @@
 			if (value.isEmpty()) {
 				value= VariableUtils.getValue(getStepConfig().getToolConfig().getVariables()
 						.get(DocProcessingConfig.WD_LOC_VAR_NAME) );
-				additionalAttributes.put(IExternalProgramLaunchConfig.WORKING_DIRECTORY_ATTR_NAME, value);
+				additionalAttributes.put(ExternalProgramLaunchConfig.WORKING_DIRECTORY_ATTR_NAME, value);
 			}
 			else {
 				value= variableResolver.performStringSubstitution(value, null);
-				additionalAttributes.put(IExternalProgramLaunchConfig.ARGUMENTS_ATTR_NAME, value);
+				additionalAttributes.put(ExternalProgramLaunchConfig.ARGUMENTS_ATTR_NAME, value);
 			}
 		}
 		catch (final CoreException e) {
-			throw new CoreException(new Status(IStatus.ERROR, DocBaseUI.BUNDLE_ID,
+			throw new CoreException(new Status(IStatus.ERROR, DocmlBaseUI.BUNDLE_ID,
 					NLS.bind(Messages.ProcessingOperation_RunRCmdTool_Wd_error_SpecInvalid_message,
 							e.getMessage() )));
 		}
@@ -89,11 +89,11 @@
 			String value= config.getAttribute(RCmdLaunching.R_CMD_RESOURCE_ATTR_NAME, ""); //$NON-NLS-1$
 			if (!value.isEmpty()) {
 				value= variableResolver.performStringSubstitution(value, null);
-				additionalAttributes.put(IExternalProgramLaunchConfig.ARGUMENTS_ATTR_NAME, value);
+				additionalAttributes.put(ExternalProgramLaunchConfig.ARGUMENTS_ATTR_NAME, value);
 			}
 		}
 		catch (final CoreException e) {
-			throw new CoreException(new Status(IStatus.ERROR, DocBaseUI.BUNDLE_ID,
+			throw new CoreException(new Status(IStatus.ERROR, DocmlBaseUI.BUNDLE_ID,
 					NLS.bind(Messages.ProcessingOperation_RunRCmdTool_RCmdResource_error_SpecInvalid_message,
 							e.getMessage() )));
 		}
@@ -102,11 +102,11 @@
 			String value= config.getAttribute(RCmdLaunching.R_CMD_OPTIONS_ATTR_NAME, ""); //$NON-NLS-1$
 			if (!value.isEmpty()) {
 				value= variableResolver.performStringSubstitution(value, null);
-				additionalAttributes.put(IExternalProgramLaunchConfig.ARGUMENTS_ATTR_NAME, value);
+				additionalAttributes.put(ExternalProgramLaunchConfig.ARGUMENTS_ATTR_NAME, value);
 			}
 		}
 		catch (final CoreException e) {
-			throw new CoreException(new Status(IStatus.ERROR, DocBaseUI.BUNDLE_ID,
+			throw new CoreException(new Status(IStatus.ERROR, DocmlBaseUI.BUNDLE_ID,
 					NLS.bind(Messages.ProcessingOperation_RunRCmdTool_RCmdOptions_error_SpecInvalid_message,
 							e.getMessage() )));
 		}
diff --git a/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/ui/sourceediting/IRweaveEditor.java b/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/ui/sourceediting/RweaveEditor.java
similarity index 74%
rename from redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/ui/sourceediting/IRweaveEditor.java
rename to redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/ui/sourceediting/RweaveEditor.java
index f0a14a1..78acf6f 100644
--- a/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/ui/sourceediting/IRweaveEditor.java
+++ b/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/ui/sourceediting/RweaveEditor.java
@@ -14,14 +14,17 @@
 
 package org.eclipse.statet.redocs.r.ui.sourceediting;
 
+import org.eclipse.statet.jcommons.lang.NonNullByDefault;
+
 import org.eclipse.statet.r.ui.editors.IRSourceEditor;
-import org.eclipse.statet.redocs.r.core.source.IDocContentSectionsRweaveExtension;
+import org.eclipse.statet.redocs.r.core.source.DocContentSectionsRweaveExtension;
 
 
-public interface IRweaveEditor extends IRSourceEditor {
+@NonNullByDefault
+public interface RweaveEditor extends IRSourceEditor {
 	
 	
 	@Override
-	IDocContentSectionsRweaveExtension getDocumentContentInfo();
+	DocContentSectionsRweaveExtension getDocumentContentInfo();
 	
 }
diff --git a/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/ui/sourceediting/actions/RweaveToggleCommentHandler.java b/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/ui/sourceediting/actions/RweaveToggleCommentHandler.java
index 333cf25..0cfe9fd 100644
--- a/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/ui/sourceediting/actions/RweaveToggleCommentHandler.java
+++ b/redocs/org.eclipse.statet.redocs.r/src/org/eclipse/statet/redocs/r/ui/sourceediting/actions/RweaveToggleCommentHandler.java
@@ -25,7 +25,7 @@
 import org.eclipse.statet.ltk.ui.EditorUtils;
 import org.eclipse.statet.ltk.ui.sourceediting.SourceEditor1;
 import org.eclipse.statet.ltk.ui.sourceediting.actions.ToggleCommentHandler;
-import org.eclipse.statet.redocs.r.ui.sourceediting.IRweaveEditor;
+import org.eclipse.statet.redocs.r.ui.sourceediting.RweaveEditor;
 
 
 public abstract class RweaveToggleCommentHandler extends ToggleCommentHandler {
@@ -33,7 +33,7 @@
 	
 	public RweaveToggleCommentHandler(final SourceEditor1 editor) {
 		super(editor);
-		assert (editor instanceof IRweaveEditor);
+		assert (editor instanceof RweaveEditor);
 	}
 	
 	
@@ -67,7 +67,7 @@
 			throws BadLocationException, BadPartitioningException {
 		final IRegion block= EditorUtils.getTextBlockFromSelection(document,
 				selection.getOffset(), selection.getLength() );
-		final IRegion rContent= ((IRweaveEditor) getEditor()).getDocumentContentInfo()
+		final IRegion rContent= ((RweaveEditor) getEditor()).getDocumentContentInfo()
 				.getRChunkContentRegion(document, block.getOffset());
 		return (rContent == null || block.getOffset() < rContent.getOffset()
 				|| block.getOffset() + block.getLength() > rContent.getOffset() + rContent.getLength() );
diff --git a/redocs/org.eclipse.statet.redocs.tex.r.debug/plugin.xml b/redocs/org.eclipse.statet.redocs.tex.r.debug/plugin.xml
index d0eb0e2..7b8164d 100644
--- a/redocs/org.eclipse.statet.redocs.tex.r.debug/plugin.xml
+++ b/redocs/org.eclipse.statet.redocs.tex.r.debug/plugin.xml
@@ -21,7 +21,7 @@
    <extension
          point="org.eclipse.core.runtime.adapters">
       <factory
-            adaptableType="org.eclipse.statet.internal.redocs.tex.r.ui.editors.LtxRweaveEditor"
+            adaptableType="org.eclipse.statet.internal.redocs.tex.r.ui.editors.LtxRweaveDocEditor"
             class="org.eclipse.statet.internal.redocs.tex.r.ui.debug.RetargettableActionAdapterFactory">
          <adapter
                type="org.eclipse.debug.ui.actions.IToggleBreakpointsTarget">
diff --git a/redocs/org.eclipse.statet.redocs.tex.r.debug/src/org/eclipse/statet/internal/redocs/tex/r/ui/debug/ToggleBreakpointAdapter.java b/redocs/org.eclipse.statet.redocs.tex.r.debug/src/org/eclipse/statet/internal/redocs/tex/r/ui/debug/ToggleBreakpointAdapter.java
index be0c61e..c9adc8c 100644
--- a/redocs/org.eclipse.statet.redocs.tex.r.debug/src/org/eclipse/statet/internal/redocs/tex/r/ui/debug/ToggleBreakpointAdapter.java
+++ b/redocs/org.eclipse.statet.redocs.tex.r.debug/src/org/eclipse/statet/internal/redocs/tex/r/ui/debug/ToggleBreakpointAdapter.java
@@ -30,7 +30,7 @@
 import org.eclipse.statet.ltk.ui.sourceediting.ISourceEditor;
 import org.eclipse.statet.r.core.source.IRDocumentConstants;
 import org.eclipse.statet.r.debug.ui.actions.RToggleBreakpointAdapter;
-import org.eclipse.statet.redocs.tex.r.ui.editors.ILtxRweaveEditor;
+import org.eclipse.statet.redocs.tex.r.ui.editors.LtxRweaveEditor;
 
 
 public class ToggleBreakpointAdapter implements IToggleBreakpointsTargetExtension {
@@ -46,7 +46,7 @@
 	
 	@Override
 	public boolean canToggleLineBreakpoints(final IWorkbenchPart part, final ISelection selection) {
-		final ILtxRweaveEditor editor= getREditor(part, selection);
+		final LtxRweaveEditor editor= getREditor(part, selection);
 		return (editor != null && editor.getSourceUnit() instanceof IWorkspaceSourceUnit
 				&& selection instanceof ITextSelection );
 	}
@@ -54,7 +54,7 @@
 	@Override
 	public void toggleLineBreakpoints(final IWorkbenchPart part, final ISelection selection)
 			throws CoreException {
-		final ILtxRweaveEditor editor= getREditor(part, selection);
+		final LtxRweaveEditor editor= getREditor(part, selection);
 		if (editor != null && editor.getSourceUnit() instanceof IWorkspaceSourceUnit
 				&& selection instanceof ITextSelection) {
 			if (isRChunk(editor, (ITextSelection) selection) ) {
@@ -68,14 +68,14 @@
 	
 	@Override
 	public boolean canToggleMethodBreakpoints(final IWorkbenchPart part, final ISelection selection) {
-		final ILtxRweaveEditor editor= getREditor(part, selection);
+		final LtxRweaveEditor editor= getREditor(part, selection);
 		return (editor != null && editor.getSourceUnit() instanceof IWorkspaceSourceUnit
 				&& selection instanceof ITextSelection );
 	}
 	
 	@Override
 	public void toggleMethodBreakpoints(final IWorkbenchPart part, final ISelection selection) throws CoreException {
-		final ILtxRweaveEditor editor= getREditor(part, selection);
+		final LtxRweaveEditor editor= getREditor(part, selection);
 		if (editor != null && editor.getSourceUnit() instanceof IWorkspaceSourceUnit
 				&& selection instanceof ITextSelection) {
 			if (isRChunk(editor, (ITextSelection) selection) ) {
@@ -99,7 +99,7 @@
 	
 	@Override
 	public boolean canToggleBreakpoints(final IWorkbenchPart part, final ISelection selection) {
-		final ILtxRweaveEditor editor= getREditor(part, selection);
+		final LtxRweaveEditor editor= getREditor(part, selection);
 		return (editor != null && editor.getSourceUnit() instanceof IWorkspaceSourceUnit
 				&& selection instanceof ITextSelection );
 	}
@@ -107,7 +107,7 @@
 	@Override
 	public void toggleBreakpoints(final IWorkbenchPart part, final ISelection selection)
 			throws CoreException {
-		final ILtxRweaveEditor editor= getREditor(part, selection);
+		final LtxRweaveEditor editor= getREditor(part, selection);
 		if (editor != null && editor.getSourceUnit() instanceof IWorkspaceSourceUnit
 				&& selection instanceof ITextSelection) {
 			if (isRChunk(editor, (ITextSelection) selection) ) {
@@ -119,18 +119,18 @@
 		}
 	}
 	
-	private ILtxRweaveEditor getREditor(final IWorkbenchPart part, final ISelection selection) {
-		if (part instanceof ILtxRweaveEditor) {
-			return (ILtxRweaveEditor) part;
+	private LtxRweaveEditor getREditor(final IWorkbenchPart part, final ISelection selection) {
+		if (part instanceof LtxRweaveEditor) {
+			return (LtxRweaveEditor) part;
 		}
 		final Object adapter= part.getAdapter(ISourceEditor.class);
-		if (adapter instanceof ILtxRweaveEditor) {
-			return (ILtxRweaveEditor) adapter;
+		if (adapter instanceof LtxRweaveEditor) {
+			return (LtxRweaveEditor) adapter;
 		}
 		return null;
 	}
 	
-	private boolean isRChunk(final ILtxRweaveEditor editor, final ITextSelection selection) {
+	private boolean isRChunk(final LtxRweaveEditor editor, final ITextSelection selection) {
 		final SourceViewer viewer= editor.getViewer();
 		if (viewer != null) {
 			try {
diff --git a/redocs/org.eclipse.statet.redocs.tex.r/plugin.xml b/redocs/org.eclipse.statet.redocs.tex.r/plugin.xml
index b1e0f34..1145ae0 100644
--- a/redocs/org.eclipse.statet.redocs.tex.r/plugin.xml
+++ b/redocs/org.eclipse.statet.redocs.tex.r/plugin.xml
@@ -136,7 +136,7 @@
          <with
                variable="activeEditor">
             <instanceof
-                  value="org.eclipse.statet.redocs.tex.r.ui.editors.ILtxRweaveEditor">
+                  value="org.eclipse.statet.redocs.tex.r.ui.editors.LtxRweaveEditor">
             </instanceof>
          </with>
       </definition>
@@ -148,7 +148,7 @@
          <with
                variable="activePart">
             <instanceof
-                  value="org.eclipse.statet.redocs.tex.r.ui.editors.ILtxRweaveEditor">
+                  value="org.eclipse.statet.redocs.tex.r.ui.editors.LtxRweaveEditor">
             </instanceof>
          </with>
       </definition>
@@ -158,7 +158,7 @@
          point="org.eclipse.ui.editors">
       <editor
             id="org.eclipse.statet.redocs.editors.LtxRweave"
-            class="org.eclipse.statet.internal.redocs.tex.r.ui.editors.LtxRweaveEditor"
+            class="org.eclipse.statet.internal.redocs.tex.r.ui.editors.LtxRweaveDocEditor"
             contributorClass="org.eclipse.ui.editors.text.TextEditorActionContributor"
             default="true"
             icon="icons/obj_16/ltx_rweave-file.png"
diff --git a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/Messages.java b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/Messages.java
index 1b37fcd..79880b9 100644
--- a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/Messages.java
+++ b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/Messages.java
@@ -16,7 +16,11 @@
 
 import org.eclipse.osgi.util.NLS;
 
+import org.eclipse.statet.jcommons.lang.NonNullByDefault;
 
+
+@NonNullByDefault
+@SuppressWarnings("null")
 public class Messages extends NLS {
 	
 	public static String LtxCommand_SweaveOpts_description;
diff --git a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/core/CurlyExpandEmbeddedScanner.java b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/core/CurlyExpandEmbeddedScanner.java
index 99258e3..0e37dca 100644
--- a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/core/CurlyExpandEmbeddedScanner.java
+++ b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/core/CurlyExpandEmbeddedScanner.java
@@ -14,19 +14,21 @@
 
 package org.eclipse.statet.internal.redocs.tex.r.core;
 
+import org.eclipse.statet.jcommons.lang.NonNullByDefault;
 import org.eclipse.statet.jcommons.text.core.input.TextParserInput;
 
-import org.eclipse.statet.docmlet.tex.core.parser.ICustomScanner;
+import org.eclipse.statet.docmlet.tex.core.parser.CustomScanner;
 import org.eclipse.statet.docmlet.tex.core.parser.LtxLexer;
 
 
 /**
  * Scanner supporting expand variables {{ ... }}.
  */
-public class CurlyExpandEmbeddedScanner implements ICustomScanner {
+@NonNullByDefault
+public class CurlyExpandEmbeddedScanner implements CustomScanner {
 	
 	
-	protected static final ICustomScanner INSTANCE= new CurlyExpandEmbeddedScanner();
+	protected static final CustomScanner INSTANCE= new CurlyExpandEmbeddedScanner();
 	
 	
 	protected CurlyExpandEmbeddedScanner() {
diff --git a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/core/LtxRweavePersistenceUnitFactory.java b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/core/LtxRweavePersistenceUnitFactory.java
index 63522bf..79f9ee4 100644
--- a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/core/LtxRweavePersistenceUnitFactory.java
+++ b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/core/LtxRweavePersistenceUnitFactory.java
@@ -16,7 +16,7 @@
 
 import org.eclipse.core.resources.IFile;
 
-import org.eclipse.statet.internal.redocs.tex.r.model.LtxRweaveSourceUnit;
+import org.eclipse.statet.internal.redocs.tex.r.model.LtxRweaveResourceSourceUnit;
 import org.eclipse.statet.ltk.model.core.elements.ISourceUnit;
 import org.eclipse.statet.ltk.model.core.impl.AbstractFilePersistenceSourceUnitFactory;
 
@@ -30,7 +30,7 @@
 	
 	@Override
 	protected ISourceUnit createSourceUnit(final String id, final IFile file) {
-		return new LtxRweaveSourceUnit(id, file);
+		return new LtxRweaveResourceSourceUnit(id, file);
 	}
 	
 }
diff --git a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/core/ISweaveLtxCommands.java b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/core/SweaveLtxCommands.java
similarity index 87%
rename from redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/core/ISweaveLtxCommands.java
rename to redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/core/SweaveLtxCommands.java
index 5be6bc9..f052f96 100644
--- a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/core/ISweaveLtxCommands.java
+++ b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/core/SweaveLtxCommands.java
@@ -15,16 +15,18 @@
 package org.eclipse.statet.internal.redocs.tex.r.core;
 
 import org.eclipse.statet.jcommons.collections.ImCollections;
+import org.eclipse.statet.jcommons.lang.NonNullByDefault;
 
 import org.eclipse.statet.docmlet.tex.core.commands.Argument;
 import org.eclipse.statet.docmlet.tex.core.commands.TexCommand;
 import org.eclipse.statet.docmlet.tex.core.commands.TexEmbedCommand;
-import org.eclipse.statet.docmlet.tex.core.parser.ICustomScanner;
+import org.eclipse.statet.docmlet.tex.core.parser.CustomScanner;
 import org.eclipse.statet.internal.redocs.tex.r.Messages;
 import org.eclipse.statet.r.core.model.RModel;
 
 
-public interface ISweaveLtxCommands {
+@NonNullByDefault
+public interface SweaveLtxCommands {
 	
 	
 	TexCommand SWEAVE_SweaveOpts_COMMANDS= new TexCommand(0,
@@ -38,7 +40,7 @@
 			), Messages.LtxCommand_Sexpr_description) {
 		
 		@Override
-		public ICustomScanner getArgumentScanner(final int argIdx) {
+		public CustomScanner getArgumentScanner(final int argIdx) {
 			return CurlyExpandEmbeddedScanner.INSTANCE;
 		}
 		
diff --git a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/model/LtxRChunkReconciler.java b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/model/LtxRChunkReconciler.java
index 3dd5af9..f16495b 100644
--- a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/model/LtxRChunkReconciler.java
+++ b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/model/LtxRChunkReconciler.java
@@ -18,11 +18,11 @@
 
 import org.eclipse.statet.docmlet.tex.core.model.ILtxModelInfo;
 import org.eclipse.statet.redocs.r.core.model.RChunkReconciler;
-import org.eclipse.statet.redocs.tex.r.core.model.ILtxRweaveSourceUnit;
+import org.eclipse.statet.redocs.tex.r.core.model.LtxRweaveSourceUnit;
 
 
 class LtxRChunkReconciler extends RChunkReconciler
-		<ILtxRweaveSourceUnit, ILtxModelInfo, LtxRweaveSuModelContainer> {
+		<LtxRweaveSourceUnit, ILtxModelInfo, LtxRweaveSuModelContainer> {
 	
 	
 	private static LtxRChunkReconciler INSTANCE;
diff --git a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/model/LtxRweaveEditorWorkingCopy.java b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/model/LtxRweaveEditorWorkingCopy.java
index 7a4f0bd..03e9e1d 100644
--- a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/model/LtxRweaveEditorWorkingCopy.java
+++ b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/model/LtxRweaveEditorWorkingCopy.java
@@ -16,20 +16,20 @@
 
 import org.eclipse.core.runtime.IProgressMonitor;
 
-import org.eclipse.statet.docmlet.tex.core.ITexCoreAccess;
-import org.eclipse.statet.docmlet.tex.core.model.ITexWorkspaceSourceUnit;
+import org.eclipse.statet.docmlet.tex.core.TexCoreAccess;
+import org.eclipse.statet.docmlet.tex.core.model.TexWorkspaceSourceUnit;
 import org.eclipse.statet.ltk.model.core.IModelManager;
 import org.eclipse.statet.ltk.model.core.elements.ISourceUnitModelInfo;
 import org.eclipse.statet.ltk.ui.GenericEditorWorkspaceSourceUnitWorkingCopy2;
 import org.eclipse.statet.r.core.IRCoreAccess;
 import org.eclipse.statet.r.core.model.IRWorkspaceSourceUnit;
 import org.eclipse.statet.r.core.model.RModel;
-import org.eclipse.statet.redocs.tex.r.core.model.ILtxRweaveSourceUnit;
+import org.eclipse.statet.redocs.tex.r.core.model.LtxRweaveSourceUnit;
 
 
 public class LtxRweaveEditorWorkingCopy
 		extends GenericEditorWorkspaceSourceUnitWorkingCopy2<LtxRweaveSuModelContainer>
-		implements ILtxRweaveSourceUnit, ITexWorkspaceSourceUnit, IRWorkspaceSourceUnit {
+		implements LtxRweaveSourceUnit, TexWorkspaceSourceUnit, IRWorkspaceSourceUnit {
 	
 	
 	public LtxRweaveEditorWorkingCopy(final IRWorkspaceSourceUnit from) {
@@ -43,13 +43,13 @@
 	
 	
 	@Override
-	public ITexCoreAccess getTexCoreAccess() {
-		return ((ILtxRweaveSourceUnit) getUnderlyingUnit()).getTexCoreAccess();
+	public TexCoreAccess getTexCoreAccess() {
+		return ((LtxRweaveSourceUnit) getUnderlyingUnit()).getTexCoreAccess();
 	}
 	
 	@Override
 	public IRCoreAccess getRCoreAccess() {
-		return ((ILtxRweaveSourceUnit) getUnderlyingUnit()).getRCoreAccess();
+		return ((LtxRweaveSourceUnit) getUnderlyingUnit()).getRCoreAccess();
 	}
 	
 	
diff --git a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/model/LtxRweaveSourceUnit.java b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/model/LtxRweaveResourceSourceUnit.java
similarity index 85%
rename from redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/model/LtxRweaveSourceUnit.java
rename to redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/model/LtxRweaveResourceSourceUnit.java
index 9f406fc..bfbefca 100644
--- a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/model/LtxRweaveSourceUnit.java
+++ b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/model/LtxRweaveResourceSourceUnit.java
@@ -19,8 +19,8 @@
 
 import org.eclipse.statet.ecommons.text.core.sections.IDocContentSections;
 
-import org.eclipse.statet.docmlet.tex.core.ITexCoreAccess;
-import org.eclipse.statet.docmlet.tex.core.model.ITexWorkspaceSourceUnit;
+import org.eclipse.statet.docmlet.tex.core.TexCoreAccess;
+import org.eclipse.statet.docmlet.tex.core.model.TexWorkspaceSourceUnit;
 import org.eclipse.statet.ltk.model.core.IModelManager;
 import org.eclipse.statet.ltk.model.core.elements.ISourceUnitModelInfo;
 import org.eclipse.statet.ltk.model.core.impl.GenericResourceSourceUnit2;
@@ -31,16 +31,16 @@
 import org.eclipse.statet.r.core.model.IRWorkspaceSourceUnit;
 import org.eclipse.statet.r.core.model.RModel;
 import org.eclipse.statet.redocs.tex.r.core.TexRweaveCore;
-import org.eclipse.statet.redocs.tex.r.core.model.ILtxRweaveSourceUnit;
+import org.eclipse.statet.redocs.tex.r.core.model.LtxRweaveSourceUnit;
 import org.eclipse.statet.redocs.tex.r.core.model.TexRweaveModel;
 import org.eclipse.statet.redocs.tex.r.core.source.LtxRweaveDocumentContentInfo;
 
 
-public class LtxRweaveSourceUnit extends GenericResourceSourceUnit2<LtxRweaveSuModelContainer> 
-		implements ILtxRweaveSourceUnit, ITexWorkspaceSourceUnit, IRWorkspaceSourceUnit {
+public class LtxRweaveResourceSourceUnit extends GenericResourceSourceUnit2<LtxRweaveSuModelContainer> 
+		implements LtxRweaveSourceUnit, TexWorkspaceSourceUnit, IRWorkspaceSourceUnit {
 	
 	
-	public LtxRweaveSourceUnit(final String id, final IFile file) {
+	public LtxRweaveResourceSourceUnit(final String id, final IFile file) {
 		super(id, file);
 	}
 	
@@ -61,7 +61,7 @@
 	}
 	
 	@Override
-	public ITexCoreAccess getTexCoreAccess() {
+	public TexCoreAccess getTexCoreAccess() {
 		return TexRweaveCore.TEX_WORKBENCH_ACCESS;
 	}
 	
@@ -105,7 +105,7 @@
 	@Override
 	@SuppressWarnings("unchecked")
 	public <T> T getAdapter(final Class<T> adapterType) {
-		if (adapterType == ITexCoreAccess.class) {
+		if (adapterType == TexCoreAccess.class) {
 			return (T) getTexCoreAccess();
 		}
 		if (adapterType == IRCoreAccess.class) {
diff --git a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/model/LtxRweaveSuModelContainer.java b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/model/LtxRweaveSuModelContainer.java
index 09bfa9a..bc1ea4a 100644
--- a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/model/LtxRweaveSuModelContainer.java
+++ b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/model/LtxRweaveSuModelContainer.java
@@ -29,15 +29,15 @@
 import org.eclipse.statet.ltk.core.SourceContent;
 import org.eclipse.statet.ltk.issues.core.ProblemRequestor;
 import org.eclipse.statet.r.core.model.RModel;
-import org.eclipse.statet.redocs.tex.r.core.model.ILtxRweaveSourceUnit;
+import org.eclipse.statet.redocs.tex.r.core.model.LtxRweaveSourceUnit;
 import org.eclipse.statet.redocs.tex.r.core.model.TexRweaveModel;
 
 
-public class LtxRweaveSuModelContainer extends LtxSuModelContainer<ILtxRweaveSourceUnit>
+public class LtxRweaveSuModelContainer extends LtxSuModelContainer<LtxRweaveSourceUnit>
 		implements ILtxSuModelContainerEmbeddedExtension {
 	
 	
-	public LtxRweaveSuModelContainer(final ILtxRweaveSourceUnit su) {
+	public LtxRweaveSuModelContainer(final LtxRweaveSourceUnit su) {
 		super(su);
 	}
 	
diff --git a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/model/LtxRweaveTexBuildParticipant.java b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/model/LtxRweaveTexBuildParticipant.java
index e736bf1..86aef4e 100644
--- a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/model/LtxRweaveTexBuildParticipant.java
+++ b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/model/LtxRweaveTexBuildParticipant.java
@@ -24,13 +24,13 @@
 import org.eclipse.statet.jcommons.collections.ImList;
 
 import org.eclipse.statet.docmlet.tex.core.TexBuildParticipant;
-import org.eclipse.statet.docmlet.tex.core.model.ITexWorkspaceSourceUnit;
 import org.eclipse.statet.docmlet.tex.core.model.LtxSuModelContainer;
+import org.eclipse.statet.docmlet.tex.core.model.TexWorkspaceSourceUnit;
 import org.eclipse.statet.r.core.RProject;
 import org.eclipse.statet.r.core.RProjects;
 import org.eclipse.statet.r.core.model.RModel;
 import org.eclipse.statet.r.core.model.RModelIndexUpdate;
-import org.eclipse.statet.redocs.tex.r.core.model.ILtxRweaveSourceUnit;
+import org.eclipse.statet.redocs.tex.r.core.model.LtxRweaveSourceUnit;
 import org.eclipse.statet.redocs.tex.r.core.model.TexRweaveModel;
 
 
@@ -67,10 +67,10 @@
 	}
 	
 	@Override
-	public void ltxUnitUpdated(final ITexWorkspaceSourceUnit sourceUnit,
+	public void ltxUnitUpdated(final TexWorkspaceSourceUnit sourceUnit,
 			final IProgressMonitor monitor) throws CoreException {
-		if (sourceUnit instanceof ILtxRweaveSourceUnit) {
-			final ILtxRweaveSourceUnit unit= (ILtxRweaveSourceUnit) sourceUnit;
+		if (sourceUnit instanceof LtxRweaveSourceUnit) {
+			final LtxRweaveSourceUnit unit= (LtxRweaveSourceUnit) sourceUnit;
 			final LtxRweaveSuModelContainer modelContainer= (LtxRweaveSuModelContainer) unit.getAdapter(LtxSuModelContainer.class);
 			if (modelContainer != null) {
 				this.rIndexUpdate.update(unit,
diff --git a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/ui/editors/LtxRweaveEditor.java b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/ui/editors/LtxRweaveDocEditor.java
similarity index 93%
rename from redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/ui/editors/LtxRweaveEditor.java
rename to redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/ui/editors/LtxRweaveDocEditor.java
index 35810b7..7c5c9af 100644
--- a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/ui/editors/LtxRweaveEditor.java
+++ b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/ui/editors/LtxRweaveDocEditor.java
@@ -43,8 +43,8 @@
 import org.eclipse.statet.jcommons.text.core.TextRegion;
 
 import org.eclipse.statet.base.ui.IStatetUIMenuIds;
-import org.eclipse.statet.docmlet.base.ui.DocBaseUI;
-import org.eclipse.statet.docmlet.base.ui.sourceediting.IDocEditor;
+import org.eclipse.statet.docmlet.base.ui.DocmlBaseUI;
+import org.eclipse.statet.docmlet.base.ui.sourceediting.DocEditor;
 import org.eclipse.statet.docmlet.tex.core.ast.TexAstNode;
 import org.eclipse.statet.docmlet.tex.core.model.TexModel;
 import org.eclipse.statet.docmlet.tex.ui.TexUI;
@@ -73,14 +73,14 @@
 import org.eclipse.statet.r.ui.editors.RDefaultFoldingProvider;
 import org.eclipse.statet.r.ui.editors.RMarkOccurrencesLocator;
 import org.eclipse.statet.r.ui.sourceediting.InsertAssignmentHandler;
-import org.eclipse.statet.redocs.r.core.source.IDocContentSectionsRweaveExtension;
+import org.eclipse.statet.redocs.r.core.source.DocContentSectionsRweaveExtension;
 import org.eclipse.statet.redocs.r.ui.RedocsRUI;
 import org.eclipse.statet.redocs.r.ui.sourceediting.actions.RweaveToggleCommentHandler;
 import org.eclipse.statet.redocs.tex.r.core.TexRweaveCore;
-import org.eclipse.statet.redocs.tex.r.core.model.ILtxRweaveSourceUnit;
+import org.eclipse.statet.redocs.tex.r.core.model.LtxRweaveSourceUnit;
 import org.eclipse.statet.redocs.tex.r.core.source.LtxRweaveDocumentContentInfo;
 import org.eclipse.statet.redocs.tex.r.ui.TexRweaveUI;
-import org.eclipse.statet.redocs.tex.r.ui.editors.ILtxRweaveEditor;
+import org.eclipse.statet.redocs.tex.r.ui.editors.LtxRweaveEditor;
 import org.eclipse.statet.redocs.tex.r.ui.sourceediting.LtxRweaveSourceViewerConfiguration;
 import org.eclipse.statet.redocs.tex.r.ui.sourceediting.LtxRweaveSourceViewerConfigurator;
 import org.eclipse.statet.rj.renv.core.REnv;
@@ -89,12 +89,12 @@
 /**
  * Editor for Sweave (LaTeX+R) code.
  */
-public class LtxRweaveEditor extends SourceEditor1 implements ILtxRweaveEditor, IDocEditor {
+public class LtxRweaveDocEditor extends SourceEditor1 implements LtxRweaveEditor, DocEditor {
 	
 	
 	private static final ImList<String> KEY_CONTEXTS= ImCollections.newIdentityList(
 			TexUI.EDITOR_CONTEXT_ID,
-			DocBaseUI.DOC_EDITOR_CONTEXT_ID,
+			DocmlBaseUI.DOC_EDITOR_CONTEXT_ID,
 			RedocsRUI.RWEAVE_EDITOR_CONTEXT_ID );
 			
 	private static final ImList<String> CONTEXT_IDS= ImCollections.concatList(
@@ -144,7 +144,7 @@
 	private LtxRweaveSourceViewerConfigurator combinedConfig;
 	
 	
-	public LtxRweaveEditor() {
+	public LtxRweaveDocEditor() {
 		super(TexRweaveCore.LTX_R_CONTENT_TYPE);
 	}
 	
@@ -194,20 +194,20 @@
 	}
 	
 	@Override
-	public IDocContentSectionsRweaveExtension getDocumentContentInfo() {
-		return (IDocContentSectionsRweaveExtension) super.getDocumentContentInfo();
+	public DocContentSectionsRweaveExtension getDocumentContentInfo() {
+		return (DocContentSectionsRweaveExtension) super.getDocumentContentInfo();
 	}
 	
 	@Override
-	public ILtxRweaveSourceUnit getSourceUnit() {
-		return (ILtxRweaveSourceUnit) super.getSourceUnit();
+	public LtxRweaveSourceUnit getSourceUnit() {
+		return (LtxRweaveSourceUnit) super.getSourceUnit();
 	}
 	
 	@Override
 	protected void setupConfiguration(final IEditorInput newInput) {
 		super.setupConfiguration(newInput);
 		
-		final ILtxRweaveSourceUnit su= getSourceUnit();
+		final LtxRweaveSourceUnit su= getSourceUnit();
 		this.combinedConfig.setSource(
 				(su != null) ? su.getTexCoreAccess() : TexRweaveCore.TEX_WORKBENCH_ACCESS,
 				(su != null) ? su.getRCoreAccess() : RCore.WORKBENCH_ACCESS );
@@ -285,7 +285,7 @@
 	@Override
 	protected void editorContextMenuAboutToShow(final IMenuManager m) {
 		super.editorContextMenuAboutToShow(m);
-		final ILtxRweaveSourceUnit su= getSourceUnit();
+		final LtxRweaveSourceUnit su= getSourceUnit();
 		
 		m.insertBefore(ADDITIONS_GROUP_ID, new Separator(IStatetUIMenuIds.GROUP_SUBMIT_MENU_ID));
 		final IContributionItem additions= m.find(ADDITIONS_GROUP_ID);
diff --git a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/ui/editors/LtxRweaveDocumentProvider.java b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/ui/editors/LtxRweaveDocumentProvider.java
index 8ce1a66..bc6c02e 100644
--- a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/ui/editors/LtxRweaveDocumentProvider.java
+++ b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/ui/editors/LtxRweaveDocumentProvider.java
@@ -39,12 +39,12 @@
 import org.eclipse.statet.ltk.ui.sourceediting.SourceProblemAnnotation;
 import org.eclipse.statet.r.core.model.RModel;
 import org.eclipse.statet.r.ui.editors.REditorBuild;
-import org.eclipse.statet.redocs.tex.r.core.model.ILtxRweaveSourceUnit;
+import org.eclipse.statet.redocs.tex.r.core.model.LtxRweaveSourceUnit;
 import org.eclipse.statet.redocs.tex.r.core.model.TexRweaveModel;
 import org.eclipse.statet.redocs.tex.r.core.source.LtxRweaveDocumentSetupParticipant;
 
 
-public class LtxRweaveDocumentProvider extends SourceDocumentProvider<ILtxRweaveSourceUnit>
+public class LtxRweaveDocumentProvider extends SourceDocumentProvider<LtxRweaveSourceUnit>
 		implements Disposable {
 	
 	
diff --git a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/ui/editors/LtxRweaveEditorTemplatesPage.java b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/ui/editors/LtxRweaveEditorTemplatesPage.java
index ae8deb1..39123c1 100644
--- a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/ui/editors/LtxRweaveEditorTemplatesPage.java
+++ b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/ui/editors/LtxRweaveEditorTemplatesPage.java
@@ -34,11 +34,11 @@
 import org.eclipse.statet.r.ui.editors.templates.REditorContext;
 import org.eclipse.statet.r.ui.editors.templates.REditorTemplateContextType;
 import org.eclipse.statet.r.ui.sourceediting.RTemplateSourceViewerConfigurator;
-import org.eclipse.statet.redocs.tex.r.core.source.ITexRweaveDocumentConstants;
+import org.eclipse.statet.redocs.tex.r.core.source.TexRweaveDocumentConstants;
 
 
 /**
- * Page for {@link LtxRweaveEditor} / {@link TemplatesView}
+ * Page for {@link LtxRweaveDocEditor} / {@link TemplatesView}
  * 
  * At moment only for R templates.
  */
@@ -48,7 +48,7 @@
 	private SourceEditorViewerConfigurator rPreviewConfigurator;
 	
 	
-	public LtxRweaveEditorTemplatesPage(final LtxRweaveEditor editor, final ISourceViewer viewer) {
+	public LtxRweaveEditorTemplatesPage(final LtxRweaveDocEditor editor, final ISourceViewer viewer) {
 		super(RUIPlugin.getInstance().getREditorTemplateStore(), editor, viewer);
 	}
 	
@@ -66,7 +66,7 @@
 	@Override
 	protected String[] getContextTypeIds(final IDocument document, final int offset) {
 		try {
-			final String contentType= TextUtilities.getContentType(document, ITexRweaveDocumentConstants.LTX_R_PARTITIONING, offset, true);
+			final String contentType= TextUtilities.getContentType(document, TexRweaveDocumentConstants.LTX_R_PARTITIONING, offset, true);
 			if (IRDocumentConstants.R_ANY_CONTENT_CONSTRAINT.matches(contentType)) {
 				return new String[] { REditorTemplateContextType.RCODE_CONTEXTTYPE_ID };
 			}
diff --git a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/ui/sourceediting/LtxRweaveTemplateViewerConfigurator.java b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/ui/sourceediting/LtxRweaveTemplateViewerConfigurator.java
index b214623..74df5eb 100644
--- a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/ui/sourceediting/LtxRweaveTemplateViewerConfigurator.java
+++ b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/ui/sourceediting/LtxRweaveTemplateViewerConfigurator.java
@@ -18,7 +18,7 @@
 
 import org.eclipse.statet.ecommons.templates.TemplateVariableProcessor;
 
-import org.eclipse.statet.docmlet.tex.core.ITexCoreAccess;
+import org.eclipse.statet.docmlet.tex.core.TexCoreAccess;
 import org.eclipse.statet.ltk.ui.sourceediting.SourceEditorViewerConfiguration;
 import org.eclipse.statet.r.core.IRCoreAccess;
 import org.eclipse.statet.redocs.tex.r.core.source.LtxRweaveDocumentSetupParticipant;
@@ -29,7 +29,7 @@
 public class LtxRweaveTemplateViewerConfigurator extends LtxRweaveSourceViewerConfigurator {
 	
 	
-	public LtxRweaveTemplateViewerConfigurator(final ITexCoreAccess texCore, final IRCoreAccess rCore,
+	public LtxRweaveTemplateViewerConfigurator(final TexCoreAccess texCore, final IRCoreAccess rCore,
 			final TemplateVariableProcessor processor) {
 		super(texCore, rCore, new LtxRweaveSourceViewerConfiguration(SourceEditorViewerConfiguration.TEMPLATE_MODE) {
 			@Override
diff --git a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/TexRweaveCore.java b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/TexRweaveCore.java
index 56639f5..468421a 100644
--- a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/TexRweaveCore.java
+++ b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/TexRweaveCore.java
@@ -14,15 +14,20 @@
 
 package org.eclipse.statet.redocs.tex.r.core;
 
+import static org.eclipse.statet.jcommons.lang.ObjectUtils.nonNullAssert;
+
 import org.eclipse.core.runtime.Platform;
 import org.eclipse.core.runtime.content.IContentType;
 import org.eclipse.core.runtime.content.IContentTypeManager;
 
-import org.eclipse.statet.docmlet.tex.core.ITexCoreAccess;
+import org.eclipse.statet.jcommons.lang.NonNullByDefault;
+
 import org.eclipse.statet.docmlet.tex.core.TexCore;
+import org.eclipse.statet.docmlet.tex.core.TexCoreAccess;
 import org.eclipse.statet.redocs.tex.r.core.util.TexRweaveCoreAccessWrapper;
 
 
+@NonNullByDefault
 public class TexRweaveCore {
 	
 	
@@ -38,11 +43,11 @@
 	
 	static {
 		final IContentTypeManager contentTypeManager= Platform.getContentTypeManager();
-		LTX_R_CONTENT_TYPE= contentTypeManager.getContentType(LTX_R_CONTENT_ID);
+		LTX_R_CONTENT_TYPE= nonNullAssert(contentTypeManager.getContentType(LTX_R_CONTENT_ID));
 	}
 	
 	
-	public static final ITexCoreAccess TEX_WORKBENCH_ACCESS= new TexRweaveCoreAccessWrapper(
+	public static final TexCoreAccess TEX_WORKBENCH_ACCESS= new TexRweaveCoreAccessWrapper(
 			TexCore.WORKBENCH_ACCESS );
 	
 	
diff --git a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/model/ILtxRweaveSourceUnit.java b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/model/LtxRweaveSourceUnit.java
similarity index 78%
rename from redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/model/ILtxRweaveSourceUnit.java
rename to redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/model/LtxRweaveSourceUnit.java
index 7551266..6bf79c4 100644
--- a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/model/ILtxRweaveSourceUnit.java
+++ b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/model/LtxRweaveSourceUnit.java
@@ -14,11 +14,14 @@
 
 package org.eclipse.statet.redocs.tex.r.core.model;
 
-import org.eclipse.statet.docmlet.tex.core.model.ITexSourceUnit;
+import org.eclipse.statet.jcommons.lang.NonNullByDefault;
+
+import org.eclipse.statet.docmlet.tex.core.model.TexSourceUnit;
 import org.eclipse.statet.r.core.model.IRSourceUnit;
 
 
-public interface ILtxRweaveSourceUnit extends IRSourceUnit, ITexSourceUnit {
+@NonNullByDefault
+public interface LtxRweaveSourceUnit extends IRSourceUnit, TexSourceUnit {
 	
 	
 }
diff --git a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/source/LtxRweaveBracketPairMatcher.java b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/source/LtxRweaveBracketPairMatcher.java
index cedcb92..7fc8375 100644
--- a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/source/LtxRweaveBracketPairMatcher.java
+++ b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/source/LtxRweaveBracketPairMatcher.java
@@ -31,7 +31,7 @@
 		return new RBracketPairMatcher(scanner,
 				new String[] {
 					IRDocumentConstants.R_DEFAULT_CONTENT_TYPE,
-					ITexRweaveDocumentConstants.RCHUNK_CONTROL_CONTENT_TYPE
+					TexRweaveDocumentConstants.RCHUNK_CONTROL_CONTENT_TYPE
 				} );
 	}
 	
diff --git a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/source/LtxRweaveDocumentContentInfo.java b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/source/LtxRweaveDocumentContentInfo.java
index 56e7b1a..30cd0d7 100644
--- a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/source/LtxRweaveDocumentContentInfo.java
+++ b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/source/LtxRweaveDocumentContentInfo.java
@@ -25,29 +25,29 @@
 import org.eclipse.statet.ecommons.text.core.sections.AbstractDocContentSections;
 import org.eclipse.statet.ecommons.text.core.treepartitioner.ITreePartitionNode;
 
-import org.eclipse.statet.docmlet.tex.core.source.ITexDocumentConstants;
+import org.eclipse.statet.docmlet.tex.core.source.TexDocumentConstants;
 import org.eclipse.statet.r.core.source.IRDocumentConstants;
-import org.eclipse.statet.redocs.r.core.source.IDocContentSectionsRweaveExtension;
+import org.eclipse.statet.redocs.r.core.source.DocContentSectionsRweaveExtension;
 import org.eclipse.statet.redocs.r.core.source.RweaveDocSectionTreePartImpl;
 
 
 public class LtxRweaveDocumentContentInfo extends AbstractDocContentSections
-		implements IDocContentSectionsRweaveExtension {
+		implements DocContentSectionsRweaveExtension {
 	
 	
-	public static final String LTX=                         ITexDocumentConstants.LTX_PARTITIONING;
+	public static final String LTX=                         TexDocumentConstants.LTX_PARTITIONING;
 	public static final String R_CHUNK_CONTROL=             "org.eclipse.statet.LtxR-ChunkControl"; //$NON-NLS-1$
 	public static final String R=                           IRDocumentConstants.R_PARTITIONING;
 	
 	
-	public static final IDocContentSectionsRweaveExtension INSTANCE= new LtxRweaveDocumentContentInfo();
+	public static final DocContentSectionsRweaveExtension INSTANCE= new LtxRweaveDocumentContentInfo();
 	
 	
 	private final RweaveDocSectionTreePartImpl rweaveImpl;
 	
 	
 	public LtxRweaveDocumentContentInfo() {
-		super(ITexRweaveDocumentConstants.LTX_R_PARTITIONING, LTX,
+		super(TexRweaveDocumentConstants.LTX_R_PARTITIONING, LTX,
 				ImCollections.newList(LTX, R_CHUNK_CONTROL, R) );
 		
 		this.rweaveImpl= new RweaveDocSectionTreePartImpl(this);
@@ -59,7 +59,7 @@
 		if (IRDocumentConstants.R_ANY_CONTENT_CONSTRAINT.matches(contentType)) {
 			return R;
 		}
-		if (ITexRweaveDocumentConstants.RCHUNK_PARTITION_CONSTRAINT.matches(contentType)) {
+		if (TexRweaveDocumentConstants.RCHUNK_PARTITION_CONSTRAINT.matches(contentType)) {
 			return R_CHUNK_CONTROL;
 		}
 		return LTX;
diff --git a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/source/LtxRweaveDocumentSetupParticipant.java b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/source/LtxRweaveDocumentSetupParticipant.java
index a0b0b84..d4d75aa 100644
--- a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/source/LtxRweaveDocumentSetupParticipant.java
+++ b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/source/LtxRweaveDocumentSetupParticipant.java
@@ -40,14 +40,14 @@
 	
 	@Override
 	public String getPartitioningId() {
-		return ITexRweaveDocumentConstants.LTX_R_PARTITIONING;
+		return TexRweaveDocumentConstants.LTX_R_PARTITIONING;
 	}
 	
 	@Override
 	protected IDocumentPartitioner createDocumentPartitioner() {
 		return new TreePartitioner(getPartitioningId(),
 				new LtxRweavePartitionNodeScanner(this.templateMode),
-				ITexRweaveDocumentConstants.LTX_R_CONTENT_TYPES );
+				TexRweaveDocumentConstants.LTX_R_CONTENT_TYPES );
 	}
 	
 }
diff --git a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/source/LtxRweavePartitionNodeScanner.java b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/source/LtxRweavePartitionNodeScanner.java
index 03cd31d..ad9d124 100644
--- a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/source/LtxRweavePartitionNodeScanner.java
+++ b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/source/LtxRweavePartitionNodeScanner.java
@@ -53,7 +53,7 @@
 		
 		@Override
 		public String getPartitionType() {
-			return ITexRweaveDocumentConstants.RCHUNK_BASE_CONTENT_TYPE;
+			return TexRweaveDocumentConstants.RCHUNK_BASE_CONTENT_TYPE;
 		}
 		
 		@Override
diff --git a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/source/ITexRweaveDocumentConstants.java b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/source/TexRweaveDocumentConstants.java
similarity index 82%
rename from redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/source/ITexRweaveDocumentConstants.java
rename to redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/source/TexRweaveDocumentConstants.java
index 584908a..02b41c8 100644
--- a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/source/ITexRweaveDocumentConstants.java
+++ b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/source/TexRweaveDocumentConstants.java
@@ -17,12 +17,12 @@
 import org.eclipse.statet.jcommons.collections.ImCollections;
 import org.eclipse.statet.jcommons.collections.ImList;
 
-import org.eclipse.statet.docmlet.tex.core.source.ITexDocumentConstants;
+import org.eclipse.statet.docmlet.tex.core.source.TexDocumentConstants;
 import org.eclipse.statet.r.core.source.IRDocumentConstants;
-import org.eclipse.statet.redocs.r.core.source.IRweaveDocumentConstants;
+import org.eclipse.statet.redocs.r.core.source.RweaveDocumentConstants;
 
 
-public interface ITexRweaveDocumentConstants extends IRweaveDocumentConstants {
+public interface TexRweaveDocumentConstants extends RweaveDocumentConstants {
 	
 	
 	/**
@@ -35,7 +35,7 @@
 	 * List with all partition content types of Sweave (LaTeX+R) documents.
 	 */
 	ImList<String> LTX_R_CONTENT_TYPES= ImCollections.concatList(
-			ITexDocumentConstants.LTX_CONTENT_TYPES,
+			TexDocumentConstants.LTX_CONTENT_TYPES,
 			RCHUNK_CONTENT_TYPES,
 			IRDocumentConstants.R_CONTENT_TYPES );
 	
diff --git a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/util/TexRweaveCoreAccessWrapper.java b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/util/TexRweaveCoreAccessWrapper.java
index 14e951a..43494c5 100644
--- a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/util/TexRweaveCoreAccessWrapper.java
+++ b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/core/util/TexRweaveCoreAccessWrapper.java
@@ -24,11 +24,11 @@
 import org.eclipse.statet.jcommons.collections.ImCollections;
 import org.eclipse.statet.jcommons.collections.ImList;
 
-import org.eclipse.statet.docmlet.tex.core.ITexCoreAccess;
+import org.eclipse.statet.docmlet.tex.core.TexCoreAccess;
 import org.eclipse.statet.docmlet.tex.core.commands.TexCommand;
 import org.eclipse.statet.docmlet.tex.core.commands.TexCommandSet;
 import org.eclipse.statet.docmlet.tex.core.util.TexCoreAccessWrapper;
-import org.eclipse.statet.internal.redocs.tex.r.core.ISweaveLtxCommands;
+import org.eclipse.statet.internal.redocs.tex.r.core.SweaveLtxCommands;
 
 
 /**
@@ -38,8 +38,8 @@
 	
 	
 	private static final ImList<TexCommand> LTX_SWEAVE_COMMAND_LIST= ImCollections.newList( // ASorted
-			ISweaveLtxCommands.SWEAVE_Sexpr_COMMANDS,
-			ISweaveLtxCommands.SWEAVE_SweaveOpts_COMMANDS );
+			SweaveLtxCommands.SWEAVE_Sexpr_COMMANDS,
+			SweaveLtxCommands.SWEAVE_SweaveOpts_COMMANDS );
 	
 	private static final WeakHashMap<TexCommandSet, TexCommandSet> COMMAND_CACHE= new WeakHashMap<>();
 	
@@ -48,7 +48,7 @@
 	private volatile TexCommandSet texCommandSet;
 	
 	
-	public TexRweaveCoreAccessWrapper(final ITexCoreAccess texCoreAccess) {
+	public TexRweaveCoreAccessWrapper(final TexCoreAccess texCoreAccess) {
 		super(texCoreAccess);
 	}
 	
diff --git a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/ui/editors/ILtxRweaveEditor.java b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/ui/editors/LtxRweaveEditor.java
similarity index 62%
rename from redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/ui/editors/ILtxRweaveEditor.java
rename to redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/ui/editors/LtxRweaveEditor.java
index 08755f8..c4d35ac 100644
--- a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/ui/editors/ILtxRweaveEditor.java
+++ b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/ui/editors/LtxRweaveEditor.java
@@ -14,15 +14,19 @@
 
 package org.eclipse.statet.redocs.tex.r.ui.editors;
 
-import org.eclipse.statet.docmlet.tex.ui.editors.ILtxEditor;
-import org.eclipse.statet.redocs.r.ui.sourceediting.IRweaveEditor;
-import org.eclipse.statet.redocs.tex.r.core.model.ILtxRweaveSourceUnit;
+import org.eclipse.statet.jcommons.lang.NonNullByDefault;
+import org.eclipse.statet.jcommons.lang.Nullable;
+
+import org.eclipse.statet.docmlet.tex.ui.editors.LtxEditor;
+import org.eclipse.statet.redocs.r.ui.sourceediting.RweaveEditor;
+import org.eclipse.statet.redocs.tex.r.core.model.LtxRweaveSourceUnit;
 
 
-public interface ILtxRweaveEditor extends IRweaveEditor, ILtxEditor {
+@NonNullByDefault
+public interface LtxRweaveEditor extends RweaveEditor, LtxEditor {
 	
 	
 	@Override
-	public ILtxRweaveSourceUnit getSourceUnit();
+	public @Nullable LtxRweaveSourceUnit getSourceUnit();
 	
 }
diff --git a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/ui/sourceediting/LtxRweaveSourceViewerConfiguration.java b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/ui/sourceediting/LtxRweaveSourceViewerConfiguration.java
index 201ae68..3e4efc8 100644
--- a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/ui/sourceediting/LtxRweaveSourceViewerConfiguration.java
+++ b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/ui/sourceediting/LtxRweaveSourceViewerConfiguration.java
@@ -37,8 +37,8 @@
 import org.eclipse.statet.ecommons.text.ui.presentation.SingleTokenScanner;
 import org.eclipse.statet.ecommons.text.ui.settings.TextStyleManager;
 
-import org.eclipse.statet.docmlet.tex.core.ITexCoreAccess;
-import org.eclipse.statet.docmlet.tex.core.source.ITexDocumentConstants;
+import org.eclipse.statet.docmlet.tex.core.TexCoreAccess;
+import org.eclipse.statet.docmlet.tex.core.source.TexDocumentConstants;
 import org.eclipse.statet.docmlet.tex.ui.sourceediting.LtxSourceViewerConfiguration;
 import org.eclipse.statet.internal.redocs.tex.r.RedocsTexRPlugin;
 import org.eclipse.statet.internal.redocs.tex.r.ui.sourceediting.DocRQuickOutlineInformationProvider;
@@ -62,10 +62,10 @@
 import org.eclipse.statet.r.ui.sourceediting.RSourceViewerConfiguration;
 import org.eclipse.statet.r.ui.text.r.IRTextTokens;
 import org.eclipse.statet.r.ui.text.r.RDoubleClickStrategy;
-import org.eclipse.statet.redocs.tex.r.core.source.ITexRweaveDocumentConstants;
 import org.eclipse.statet.redocs.tex.r.core.source.LtxRweaveBracketPairMatcher;
 import org.eclipse.statet.redocs.tex.r.core.source.LtxRweaveDocumentContentInfo;
-import org.eclipse.statet.redocs.tex.r.ui.editors.ILtxRweaveEditor;
+import org.eclipse.statet.redocs.tex.r.core.source.TexRweaveDocumentConstants;
+import org.eclipse.statet.redocs.tex.r.ui.editors.LtxRweaveEditor;
 
 
 /**
@@ -74,21 +74,21 @@
 public class LtxRweaveSourceViewerConfiguration extends MultiContentSectionSourceViewerConfiguration {
 	
 	
-	private static final String[] CONTENT_TYPES= ITexRweaveDocumentConstants.LTX_R_CONTENT_TYPES.toArray(
-			new String[ITexRweaveDocumentConstants.LTX_R_CONTENT_TYPES.size()]);
+	private static final String[] CONTENT_TYPES= TexRweaveDocumentConstants.LTX_R_CONTENT_TYPES.toArray(
+			new String[TexRweaveDocumentConstants.LTX_R_CONTENT_TYPES.size()]);
 	
 	
 	private static class LtxConfiguration extends LtxSourceViewerConfiguration {
 		
 		public LtxConfiguration(final IDocContentSections documentContentInfo, final int flags,
 				final ISourceEditor editor,
-				final ITexCoreAccess texCoreAccess,
+				final TexCoreAccess texCoreAccess,
 				final IPreferenceStore preferenceStore) {
 			super(documentContentInfo, flags, editor, texCoreAccess, preferenceStore, null);
 		}
 		
 		@Override
-		protected void setCoreAccess(final ITexCoreAccess access) {
+		protected void setCoreAccess(final TexCoreAccess access) {
 			super.setCoreAccess(access);
 		}
 		
@@ -116,7 +116,7 @@
 				case '\"':
 				case '\'':
 					return TreePartitionUtils.searchPartitionRegion(partition,
-							ITexRweaveDocumentConstants.RCHUNK_PARTITION_CONSTRAINT );
+							TexRweaveDocumentConstants.RCHUNK_PARTITION_CONSTRAINT );
 				}
 				return null;
 			default:
@@ -168,8 +168,8 @@
 		this(flags, null, null, null, null);
 	}
 	
-	public LtxRweaveSourceViewerConfiguration(final int flags, final ILtxRweaveEditor sourceEditor,
-			final ITexCoreAccess texCoreAccess, final IRCoreAccess rCoreAccess,
+	public LtxRweaveSourceViewerConfiguration(final int flags, final LtxRweaveEditor sourceEditor,
+			final TexCoreAccess texCoreAccess, final IRCoreAccess rCoreAccess,
 			final IPreferenceStore preferenceStore) {
 		super(LtxRweaveDocumentContentInfo.INSTANCE, flags, sourceEditor);
 		
@@ -193,22 +193,22 @@
 	protected void initScanners() {
 		final TextStyleManager textStyles= this.rConfig.getTextStyles();
 		
-		addScanner(ITexRweaveDocumentConstants.RCHUNK_BASE_CONTENT_TYPE,
+		addScanner(TexRweaveDocumentConstants.RCHUNK_BASE_CONTENT_TYPE,
 				new SingleTokenScanner(textStyles, IRTextTokens.UNDEFINED_KEY ));
 	}
 	
 	@Override
 	protected ITokenScanner getScanner(final String contentType) {
-		if (contentType == ITexRweaveDocumentConstants.RCHUNK_CONTROL_CONTENT_TYPE) {
+		if (contentType == TexRweaveDocumentConstants.RCHUNK_CONTROL_CONTENT_TYPE) {
 			return this.rConfig.getScanner(IRDocumentConstants.R_DEFAULT_CONTENT_TYPE);
 		}
-		if (contentType == ITexRweaveDocumentConstants.RCHUNK_COMMENT_CONTENT_TYPE) {
+		if (contentType == TexRweaveDocumentConstants.RCHUNK_COMMENT_CONTENT_TYPE) {
 			return this.rConfig.getScanner(IRDocumentConstants.R_COMMENT_CONTENT_TYPE);
 		}
 		return super.getScanner(contentType);
 	}
 	
-	protected void setCoreAccess(final ITexCoreAccess texCoreAccess, final IRCoreAccess rCoreAccess) {
+	protected void setCoreAccess(final TexCoreAccess texCoreAccess, final IRCoreAccess rCoreAccess) {
 		this.docConfig.setCoreAccess(texCoreAccess);
 		this.rConfig.setCoreAccess(rCoreAccess);
 	}
@@ -223,7 +223,7 @@
 	protected void initPresentationReconciler(final PresentationReconciler reconciler) {
 		super.initPresentationReconciler(reconciler);
 		
-		for (final String contentType : ITexRweaveDocumentConstants.RCHUNK_CONTENT_TYPES) {
+		for (final String contentType : TexRweaveDocumentConstants.RCHUNK_CONTENT_TYPES) {
 			final ITokenScanner scanner= getScanner(contentType);
 			if (scanner != null) {
 				final DefaultDamagerRepairer dr= new DefaultDamagerRepairer(scanner);
@@ -278,28 +278,28 @@
 		final IContentAssistComputer chunkComputer= new RChunkTemplateCompletionComputer();
 		
 		final ContentAssistProcessor texProcessor= (ContentAssistProcessor) assistant.getContentAssistProcessor(
-				ITexDocumentConstants.LTX_DEFAULT_CONTENT_TYPE );
+				TexDocumentConstants.LTX_DEFAULT_CONTENT_TYPE );
 		texProcessor.addCategory(new ContentAssistCategory(
-				ITexDocumentConstants.LTX_DEFAULT_CONTENT_TYPE,
+				TexDocumentConstants.LTX_DEFAULT_CONTENT_TYPE,
 				ImCollections.newList(chunkComputer) ));
 		texProcessor.setCompletionProposalAutoActivationCharacters(new char[] { '\\', '<' });
 		
 		final ContentAssistProcessor mathProcessor= (ContentAssistProcessor) assistant.getContentAssistProcessor(
-				ITexDocumentConstants.LTX_MATH_CONTENT_TYPE );
+				TexDocumentConstants.LTX_MATH_CONTENT_TYPE );
 		mathProcessor.addCategory(new ContentAssistCategory(
-				ITexDocumentConstants.LTX_MATH_CONTENT_TYPE,
+				TexDocumentConstants.LTX_MATH_CONTENT_TYPE,
 				ImCollections.newList(chunkComputer) ));
 		mathProcessor.setCompletionProposalAutoActivationCharacters(new char[] { '\\', '<' });
 		
 		final ContentAssistProcessor controlProcessor= new ContentAssistProcessor(assistant,
-				ITexRweaveDocumentConstants.RCHUNK_BASE_CONTENT_TYPE,
+				TexRweaveDocumentConstants.RCHUNK_BASE_CONTENT_TYPE,
 				RedocsTexRPlugin.getInstance().getLtxRweaveEditorContentAssistRegistry(),
 				getSourceEditor() );
 		controlProcessor.addCategory(new ContentAssistCategory(
-				ITexRweaveDocumentConstants.RCHUNK_BASE_CONTENT_TYPE,
+				TexRweaveDocumentConstants.RCHUNK_BASE_CONTENT_TYPE,
 				ImCollections.newList(chunkComputer) ));
-		assistant.setContentAssistProcessor(controlProcessor, ITexRweaveDocumentConstants.RCHUNK_BASE_CONTENT_TYPE);
-		assistant.setContentAssistProcessor(controlProcessor, ITexRweaveDocumentConstants.RCHUNK_CONTROL_CONTENT_TYPE);
+		assistant.setContentAssistProcessor(controlProcessor, TexRweaveDocumentConstants.RCHUNK_BASE_CONTENT_TYPE);
+		assistant.setContentAssistProcessor(controlProcessor, TexRweaveDocumentConstants.RCHUNK_CONTROL_CONTENT_TYPE);
 	}
 	
 	
diff --git a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/ui/sourceediting/LtxRweaveSourceViewerConfigurator.java b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/ui/sourceediting/LtxRweaveSourceViewerConfigurator.java
index 45ae836..4230fe0 100644
--- a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/ui/sourceediting/LtxRweaveSourceViewerConfigurator.java
+++ b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/redocs/tex/r/ui/sourceediting/LtxRweaveSourceViewerConfigurator.java
@@ -22,8 +22,8 @@
 import org.eclipse.core.filebuffers.IDocumentSetupParticipant;
 
 import org.eclipse.statet.base.core.preferences.TaskTagsPreferences;
-import org.eclipse.statet.docmlet.tex.core.ITexCoreAccess;
 import org.eclipse.statet.docmlet.tex.core.TexCodeStyleSettings;
+import org.eclipse.statet.docmlet.tex.core.TexCoreAccess;
 import org.eclipse.statet.docmlet.tex.core.util.TexCoreAccessWrapper;
 import org.eclipse.statet.internal.r.ui.RUIPreferenceInitializer;
 import org.eclipse.statet.ltk.ui.sourceediting.SourceEditorViewerConfigurator;
@@ -51,7 +51,7 @@
 	
 	
 	public LtxRweaveSourceViewerConfigurator(
-			final ITexCoreAccess texCoreAccess, final IRCoreAccess rCoreAccess,
+			final TexCoreAccess texCoreAccess, final IRCoreAccess rCoreAccess,
 			final LtxRweaveSourceViewerConfiguration config) {
 		super(config);
 		
@@ -83,7 +83,7 @@
 	}
 	
 	
-	public final ITexCoreAccess getTexCoreAccess() {
+	public final TexCoreAccess getTexCoreAccess() {
 		return this.docCoreAccess;
 	}
 	
@@ -102,7 +102,7 @@
 	}
 	
 	
-	public void setSource(final ITexCoreAccess texCoreAccess, final IRCoreAccess rCoreAccess) {
+	public void setSource(final TexCoreAccess texCoreAccess, final IRCoreAccess rCoreAccess) {
 		boolean changed= false;
 		if (texCoreAccess != null) {
 			changed|= this.docCoreAccess.setParent(texCoreAccess);
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/plugin.xml b/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/plugin.xml
index 6107c0b..28d8f01 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/plugin.xml
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/plugin.xml
@@ -42,7 +42,7 @@
             name="CommonMark+R"
             label="RMarkdown (CommonMark+R)"
             class="org.eclipse.statet.internal.redocs.wikitext.r.commonmark.core.RCommonmarkLanguage"
-            configClass="org.eclipse.statet.internal.redocs.wikitext.r.commonmark.core.RCommonmarkConfig"
+            configClass="org.eclipse.statet.internal.redocs.wikitext.r.commonmark.core.RCommonmarkConfigImpl"
             contentTypeId="org.eclipse.statet.redocs.contentTypes.CommonmarkRweave">
       </markupLanguage>
    </extension>
@@ -103,10 +103,10 @@
    <extension
          point="org.eclipse.core.runtime.adapters">
       <factory
-            adaptableType="org.eclipse.statet.internal.redocs.wikitext.r.commonmark.core.RCommonmarkConfig"
+            adaptableType="org.eclipse.statet.internal.redocs.wikitext.r.commonmark.core.RCommonmarkConfigImpl"
             class="org.eclipse.statet.internal.redocs.wikitext.r.commonmark.ui.ConfigUIAdapterFactory">
          <adapter
-               type="org.eclipse.statet.docmlet.wikitext.ui.config.IMarkupConfigUIAdapter">
+               type="org.eclipse.statet.docmlet.wikitext.ui.config.MarkupConfigUIAdapter">
          </adapter>
       </factory>
    </extension>
@@ -116,7 +116,7 @@
             adaptableType="org.eclipse.statet.internal.redocs.wikitext.r.commonmark.core.RCommonmarkLanguage"
             class="org.eclipse.statet.internal.redocs.wikitext.r.commonmark.ui.LanguageUIAdapterFactory">
          <adapter
-               type="org.eclipse.statet.docmlet.wikitext.ui.sourceediting.IMarkupCompletionExtension">
+               type="org.eclipse.statet.docmlet.wikitext.ui.sourceediting.MarkupCompletionExtension">
          </adapter>
       </factory>
    </extension>
@@ -146,7 +146,7 @@
          point="org.eclipse.ui.editors">
       <editor
             id="org.eclipse.statet.redocs.editors.CommonmarkRweave"
-            class="org.eclipse.statet.internal.redocs.wikitext.r.commonmark.ui.CommonmarkRweaveEditor"
+            class="org.eclipse.statet.internal.redocs.wikitext.r.commonmark.ui.CommonmarkRweaveDocEditor"
             contributorClass="org.eclipse.ui.editors.text.TextEditorActionContributor"
             icon="platform:/plugin/org.eclipse.statet.redocs.wikitext.r/icons/obj_16/wikidoc_rweave-file.png"
             name="%editors_CommonmarkRweave_name"
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/CommonmarkRweavePlugin.java b/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/CommonmarkRweavePlugin.java
index 5047f03..58103db 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/CommonmarkRweavePlugin.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/CommonmarkRweavePlugin.java
@@ -26,7 +26,7 @@
 import org.eclipse.ui.plugin.AbstractUIPlugin;
 
 import org.eclipse.statet.docmlet.wikitext.core.WikitextCore;
-import org.eclipse.statet.docmlet.wikitext.core.markup.IMarkupLanguageManager1;
+import org.eclipse.statet.docmlet.wikitext.core.markup.WikitextMarkupLanguageManager1;
 import org.eclipse.statet.internal.redocs.wikitext.r.commonmark.core.RCommonmarkLanguage;
 import org.eclipse.statet.redocs.wikitext.r.core.source.WikitextRweaveTemplateContextType;
 
@@ -88,7 +88,7 @@
 		super.start(context);
 		instance= this;
 		
-		final IMarkupLanguageManager1 markupLanguageManager= WikitextCore.getMarkupLanguageManager();
+		final WikitextMarkupLanguageManager1 markupLanguageManager= WikitextCore.getMarkupLanguageManager();
 		
 		this.markupLanguage= (RCommonmarkLanguage) markupLanguageManager
 				.getLanguage(COMMONMARK_RWEAVE_LANGUAGE_NAME);
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/core/RCommonmarkConfig.java b/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/core/RCommonmarkConfig.java
deleted file mode 100644
index aff0f0f..0000000
--- a/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/core/RCommonmarkConfig.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*=============================================================================#
- # Copyright (c) 2014, 2019 Stephan Wahlbrink and others.
- # 
- # This program and the accompanying materials are made available under the
- # terms of the Eclipse Public License 2.0 which is available at
- # https://www.eclipse.org/legal/epl-2.0, or the Apache License, Version 2.0
- # which is available at https://www.apache.org/licenses/LICENSE-2.0.
- # 
- # SPDX-License-Identifier: EPL-2.0 OR Apache-2.0
- # 
- # Contributors:
- #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
- #=============================================================================*/
-
-package org.eclipse.statet.internal.redocs.wikitext.r.commonmark.core;
-
-import org.eclipse.statet.docmlet.wikitext.commonmark.core.AbstractCommonmarkConfig;
-import org.eclipse.statet.redocs.wikitext.r.commonmark.core.IRCommonmarkConfig;
-
-
-public class RCommonmarkConfig extends AbstractCommonmarkConfig<RCommonmarkConfig>
-		implements IRCommonmarkConfig {
-	
-	
-	public RCommonmarkConfig() {
-	}
-	
-	public RCommonmarkConfig(final RCommonmarkConfig config) {
-		load(config);
-	}
-	
-	
-	@Override
-	public RCommonmarkConfig clone() {
-		return new RCommonmarkConfig(this);
-	}
-	
-}
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/core/RCommonmarkConfigImpl.java b/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/core/RCommonmarkConfigImpl.java
new file mode 100644
index 0000000..8cd45b4
--- /dev/null
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/core/RCommonmarkConfigImpl.java
@@ -0,0 +1,41 @@
+/*=============================================================================#
+ # Copyright (c) 2014, 2019 Stephan Wahlbrink and others.
+ # 
+ # This program and the accompanying materials are made available under the
+ # terms of the Eclipse Public License 2.0 which is available at
+ # https://www.eclipse.org/legal/epl-2.0, or the Apache License, Version 2.0
+ # which is available at https://www.apache.org/licenses/LICENSE-2.0.
+ # 
+ # SPDX-License-Identifier: EPL-2.0 OR Apache-2.0
+ # 
+ # Contributors:
+ #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
+ #=============================================================================*/
+
+package org.eclipse.statet.internal.redocs.wikitext.r.commonmark.core;
+
+import org.eclipse.statet.jcommons.lang.NonNullByDefault;
+
+import org.eclipse.statet.docmlet.wikitext.commonmark.core.BasicCommonmarkConfig;
+import org.eclipse.statet.redocs.wikitext.r.commonmark.core.RCommonmarkConfig;
+
+
+@NonNullByDefault
+public class RCommonmarkConfigImpl extends BasicCommonmarkConfig<RCommonmarkConfigImpl>
+		implements RCommonmarkConfig {
+	
+	
+	public RCommonmarkConfigImpl() {
+	}
+	
+	public RCommonmarkConfigImpl(final RCommonmarkConfigImpl config) {
+		load(config);
+	}
+	
+	
+	@Override
+	public RCommonmarkConfigImpl clone() {
+		return new RCommonmarkConfigImpl(this);
+	}
+	
+}
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/core/RCommonmarkLanguage.java b/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/core/RCommonmarkLanguage.java
index caa619b..c9e125f 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/core/RCommonmarkLanguage.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/core/RCommonmarkLanguage.java
@@ -21,12 +21,12 @@
 import org.eclipse.statet.jcommons.collections.ImList;
 
 import org.eclipse.statet.docmlet.wikitext.commonmark.core.CommonmarkLanguage;
-import org.eclipse.statet.docmlet.wikitext.core.markup.IMarkupConfig;
+import org.eclipse.statet.docmlet.wikitext.core.markup.MarkupConfig;
 import org.eclipse.statet.docmlet.wikitext.core.markup.MarkupParser2;
 import org.eclipse.statet.docmlet.wikitext.core.source.RegexBlockWeaveParticipant;
 import org.eclipse.statet.docmlet.wikitext.core.source.RegexInlineWeaveParticipant;
 import org.eclipse.statet.docmlet.wikitext.core.source.WeaveLanguageProcessor;
-import org.eclipse.statet.docmlet.wikitext.core.source.extdoc.IExtdocMarkupLanguage;
+import org.eclipse.statet.docmlet.wikitext.core.source.extdoc.ExtdocMarkupLanguage;
 import org.eclipse.statet.docmlet.wikitext.core.source.extdoc.TexMathDollarsDisplayWeaveParticipant;
 import org.eclipse.statet.docmlet.wikitext.core.source.extdoc.TexMathDollarsInlineWeaveParticipant;
 import org.eclipse.statet.docmlet.wikitext.core.source.extdoc.TexMathSBackslashDisplayWeaveParticipant;
@@ -34,12 +34,12 @@
 import org.eclipse.statet.docmlet.wikitext.core.source.extdoc.YamlBlockWeaveParticipant;
 import org.eclipse.statet.ltk.core.SourceContent;
 import org.eclipse.statet.redocs.r.core.source.AbstractRChunkPartitionNodeScanner;
-import org.eclipse.statet.redocs.wikitext.r.commonmark.core.IRCommonmarkConfig;
-import org.eclipse.statet.redocs.wikitext.r.core.source.IRweaveMarkupLanguage;
+import org.eclipse.statet.redocs.wikitext.r.commonmark.core.RCommonmarkConfig;
+import org.eclipse.statet.redocs.wikitext.r.core.source.RweaveMarkupLanguage;
 
 
 public class RCommonmarkLanguage extends CommonmarkLanguage
-		implements IExtdocMarkupLanguage, IRweaveMarkupLanguage {
+		implements ExtdocMarkupLanguage, RweaveMarkupLanguage {
 	
 	
 	public static final String COMMONMARK_RWEAVE_LANGUAGE_NAME= "CommonMark+R"; //$NON-NLS-1$
@@ -63,7 +63,7 @@
 	private static final Pattern INLINE_PATTERN= Pattern.compile("`r ([^`]+)`"); //$NON-NLS-1$
 	
 	
-	private IRCommonmarkConfig configuredConfig;
+	private RCommonmarkConfig configuredConfig;
 	
 	private WeaveLanguageProcessor weaveProcessor;
 	
@@ -72,7 +72,7 @@
 		this(null, 0, null);
 	}
 	
-	public RCommonmarkLanguage(final String scope, final int mode, final IRCommonmarkConfig config) {
+	public RCommonmarkLanguage(final String scope, final int mode, final RCommonmarkConfig config) {
 		super(scope, mode, config);
 		
 		assert (COMMONMARK_LANGUAGE_NAME.equals(getName()));
@@ -95,13 +95,13 @@
 	
 	
 	@Override
-	public void setMarkupConfig(final IMarkupConfig config) {
+	public void setMarkupConfig(final MarkupConfig config) {
 		super.setMarkupConfig(config);
 	}
 	
 	@Override
-	public IRCommonmarkConfig getMarkupConfig() {
-		return (IRCommonmarkConfig) super.getMarkupConfig();
+	public RCommonmarkConfig getMarkupConfig() {
+		return (RCommonmarkConfig) super.getMarkupConfig();
 	}
 	
 	
@@ -113,7 +113,7 @@
 //	}
 //	
 	protected void configure(final WeaveLanguageProcessor weaveProcessor,
-			final IRCommonmarkConfig config) {
+			final RCommonmarkConfig config) {
 		weaveProcessor.addChunkParticipant(new RegexBlockWeaveParticipant(
 				EMBEDDED_R, EMBEDDED_R_CHUNK_DESCR,
 				CHUNK_START_LINE_PATTERN, CHUNK_END_LINE_PATTERN ) {
@@ -172,7 +172,7 @@
 			this.weaveProcessor= new WeaveLanguageProcessor();
 		}
 		
-		final IRCommonmarkConfig config= getMarkupConfig();
+		final RCommonmarkConfig config= getMarkupConfig();
 		if (config != this.configuredConfig) {
 			this.weaveProcessor.clearConfig();
 			configure(this.weaveProcessor, config);
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/ui/CommonmarkRweaveEditor.java b/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/ui/CommonmarkRweaveDocEditor.java
similarity index 88%
rename from redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/ui/CommonmarkRweaveEditor.java
rename to redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/ui/CommonmarkRweaveDocEditor.java
index 9dea592..765e00c 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/ui/CommonmarkRweaveEditor.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/ui/CommonmarkRweaveDocEditor.java
@@ -15,13 +15,13 @@
 package org.eclipse.statet.internal.redocs.wikitext.r.commonmark.ui;
 
 import org.eclipse.statet.internal.redocs.wikitext.r.commonmark.CommonmarkRweavePlugin;
-import org.eclipse.statet.redocs.wikitext.r.ui.editors.WikidocRweaveEditor;
+import org.eclipse.statet.redocs.wikitext.r.ui.editors.WikidocRweaveDocEditor;
 
 
-public class CommonmarkRweaveEditor extends WikidocRweaveEditor {
+public class CommonmarkRweaveDocEditor extends WikidocRweaveDocEditor {
 	
 	
-	public CommonmarkRweaveEditor() {
+	public CommonmarkRweaveDocEditor() {
 		super(CommonmarkRweavePlugin.DOC_CONTENT_TYPE, new CommonmarkRweaveDocumentSetupParticipant());
 	}
 	
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/ui/ConfigUIAdapterFactory.java b/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/ui/ConfigUIAdapterFactory.java
index 4b8bf52..e7c75f2 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/ui/ConfigUIAdapterFactory.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/ui/ConfigUIAdapterFactory.java
@@ -16,18 +16,18 @@
 
 import org.eclipse.core.runtime.IAdapterFactory;
 
-import org.eclipse.statet.docmlet.wikitext.ui.config.IMarkupConfigUIAdapter;
+import org.eclipse.statet.docmlet.wikitext.ui.config.MarkupConfigUIAdapter;
 
 
 public class ConfigUIAdapterFactory implements IAdapterFactory {
 	
 	
 	private static final Class<?>[] ADAPTERS= new Class[] {
-		IMarkupConfigUIAdapter.class,
+		MarkupConfigUIAdapter.class,
 	};
 	
 	
-	private IMarkupConfigUIAdapter markupConfigUI;
+	private MarkupConfigUIAdapter markupConfigUI;
 	
 	
 	public ConfigUIAdapterFactory() {
@@ -41,7 +41,7 @@
 	@Override
 	@SuppressWarnings("unchecked")
 	public <T> T getAdapter(final Object adaptableObject, final Class<T> adapterType) {
-		if (adapterType == IMarkupConfigUIAdapter.class) {
+		if (adapterType == MarkupConfigUIAdapter.class) {
 			synchronized (this) {
 				if (this.markupConfigUI == null) {
 					this.markupConfigUI= new RCommonmarkConfigUI();
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/ui/LanguageUIAdapterFactory.java b/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/ui/LanguageUIAdapterFactory.java
index be2183e..e25551a 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/ui/LanguageUIAdapterFactory.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/ui/LanguageUIAdapterFactory.java
@@ -17,18 +17,18 @@
 import org.eclipse.core.runtime.IAdapterFactory;
 
 import org.eclipse.statet.docmlet.wikitext.commonmark.ui.CommonmarkCompletionExtension;
-import org.eclipse.statet.docmlet.wikitext.ui.sourceediting.IMarkupCompletionExtension;
+import org.eclipse.statet.docmlet.wikitext.ui.sourceediting.MarkupCompletionExtension;
 
 
 public class LanguageUIAdapterFactory implements IAdapterFactory {
 	
 	
 	private static final Class<?>[] ADAPTERS= new Class[] {
-		IMarkupCompletionExtension.class
+		MarkupCompletionExtension.class
 	};
 	
 	
-	private IMarkupCompletionExtension markupCompletion;
+	private MarkupCompletionExtension markupCompletion;
 	
 	
 	public LanguageUIAdapterFactory() {
@@ -42,7 +42,7 @@
 	@Override
 	@SuppressWarnings("unchecked")
 	public <T> T getAdapter(final Object adaptableObject, final Class<T> adapterType) {
-		if (adapterType == IMarkupCompletionExtension.class) {
+		if (adapterType == MarkupCompletionExtension.class) {
 			synchronized (this) {
 				if (this.markupCompletion == null) {
 					this.markupCompletion= new CommonmarkCompletionExtension();
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/ui/RCommonmarkConfigUI.java b/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/ui/RCommonmarkConfigUI.java
index b01470b..5623919 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/ui/RCommonmarkConfigUI.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/internal/redocs/wikitext/r/commonmark/ui/RCommonmarkConfigUI.java
@@ -23,19 +23,19 @@
 import org.eclipse.statet.ecommons.ui.util.LayoutUtils;
 
 import org.eclipse.statet.docmlet.wikitext.commonmark.ui.AbstractCommonmarkConfigDialog;
-import org.eclipse.statet.docmlet.wikitext.core.markup.IMarkupConfig;
-import org.eclipse.statet.docmlet.wikitext.ui.config.IMarkupConfigUIAdapter;
-import org.eclipse.statet.internal.redocs.wikitext.r.commonmark.core.RCommonmarkConfig;
+import org.eclipse.statet.docmlet.wikitext.core.markup.MarkupConfig;
+import org.eclipse.statet.docmlet.wikitext.ui.config.MarkupConfigUIAdapter;
+import org.eclipse.statet.internal.redocs.wikitext.r.commonmark.core.RCommonmarkConfigImpl;
 
 
-public class RCommonmarkConfigUI implements IMarkupConfigUIAdapter {
+public class RCommonmarkConfigUI implements MarkupConfigUIAdapter {
 	
 	
-	static class RCommonmarkConfigDialog extends AbstractCommonmarkConfigDialog<RCommonmarkConfig> {
+	static class RCommonmarkConfigDialog extends AbstractCommonmarkConfigDialog<RCommonmarkConfigImpl> {
 		
 		
 		public RCommonmarkConfigDialog(final Shell parent, final String contextLabel,
-				final boolean isContextEnabeld, final RCommonmarkConfig config) {
+				final boolean isContextEnabeld, final RCommonmarkConfigImpl config) {
 			super(parent, contextLabel, isContextEnabeld, config);
 		}
 		
@@ -44,16 +44,16 @@
 		protected Composite createExtensionGroup(final Composite parent) {
 			final Composite composite= super.createExtensionGroup(parent);
 			
-			addProperty(composite, RCommonmarkConfig.YAML_METADATA_ENABLED_PROP);
-			addProperty(composite, RCommonmarkConfig.TEX_MATH_DOLLARS_ENABLED_PROP);
-			addProperty(composite, RCommonmarkConfig.TEX_MATH_SBACKSLASH_ENABLED_PROP);
+			addProperty(composite, RCommonmarkConfigImpl.YAML_METADATA_ENABLED_PROP);
+			addProperty(composite, RCommonmarkConfigImpl.TEX_MATH_DOLLARS_ENABLED_PROP);
+			addProperty(composite, RCommonmarkConfigImpl.TEX_MATH_SBACKSLASH_ENABLED_PROP);
 			LayoutUtils.addSmallFiller(composite, false);
-			addProperty(composite, RCommonmarkConfig.HEADER_INTERRUPT_PARAGRAPH_DISABLED_PROP);
-			addProperty(composite, RCommonmarkConfig.BLOCKQUOTE_INTERRUPT_PARAGRAPH_DISABLED_PROP);
+			addProperty(composite, RCommonmarkConfigImpl.HEADER_INTERRUPT_PARAGRAPH_DISABLED_PROP);
+			addProperty(composite, RCommonmarkConfigImpl.BLOCKQUOTE_INTERRUPT_PARAGRAPH_DISABLED_PROP);
 			LayoutUtils.addSmallFiller(composite, false);
-			addProperty(composite, RCommonmarkConfig.STRIKEOUT_DTILDE_ENABLED_PROP);
-			addProperty(composite, RCommonmarkConfig.SUPERSCRIPT_SCIRCUMFLEX_ENABLED_PROP);
-			addProperty(composite, RCommonmarkConfig.SUBSCRIPT_STILDE_ENABLED_PROP);
+			addProperty(composite, RCommonmarkConfigImpl.STRIKEOUT_DTILDE_ENABLED_PROP);
+			addProperty(composite, RCommonmarkConfigImpl.SUPERSCRIPT_SCIRCUMFLEX_ENABLED_PROP);
+			addProperty(composite, RCommonmarkConfigImpl.SUBSCRIPT_STILDE_ENABLED_PROP);
 			
 			return composite;
 		}
@@ -62,9 +62,9 @@
 	
 	
 	@Override
-	public boolean edit(final String contextLabel, final AtomicBoolean isContextEnabled, final IMarkupConfig config, final Shell parent) {
+	public boolean edit(final String contextLabel, final AtomicBoolean isContextEnabled, final MarkupConfig config, final Shell parent) {
 		final RCommonmarkConfigDialog dialog= new RCommonmarkConfigDialog(parent, contextLabel,
-				(isContextEnabled != null && isContextEnabled.get()), (RCommonmarkConfig) config );
+				(isContextEnabled != null && isContextEnabled.get()), (RCommonmarkConfigImpl) config );
 		if (dialog.open() == Dialog.OK) {
 			if (isContextEnabled != null) {
 				isContextEnabled.set(dialog.isCustomEnabled());
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/redocs/wikitext/r/commonmark/core/IRCommonmarkConfig.java b/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/redocs/wikitext/r/commonmark/core/RCommonmarkConfig.java
similarity index 79%
rename from redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/redocs/wikitext/r/commonmark/core/IRCommonmarkConfig.java
rename to redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/redocs/wikitext/r/commonmark/core/RCommonmarkConfig.java
index b19b31c..d8d43c3 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/redocs/wikitext/r/commonmark/core/IRCommonmarkConfig.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r.commonmark/src/org/eclipse/statet/redocs/wikitext/r/commonmark/core/RCommonmarkConfig.java
@@ -14,10 +14,13 @@
 
 package org.eclipse.statet.redocs.wikitext.r.commonmark.core;
 
-import org.eclipse.statet.docmlet.wikitext.commonmark.core.ICommonmarkConfig;
+import org.eclipse.statet.jcommons.lang.NonNullByDefault;
+
+import org.eclipse.statet.docmlet.wikitext.commonmark.core.CommonmarkConfig;
 
 
-public interface IRCommonmarkConfig extends ICommonmarkConfig {
+@NonNullByDefault
+public interface RCommonmarkConfig extends CommonmarkConfig {
 	
 	
 	boolean isYamlMetadataEnabled();
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r.debug/plugin.xml b/redocs/org.eclipse.statet.redocs.wikitext.r.debug/plugin.xml
index cc47749..c061dac 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r.debug/plugin.xml
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r.debug/plugin.xml
@@ -21,7 +21,7 @@
    <extension
          point="org.eclipse.core.runtime.adapters">
       <factory
-            adaptableType="org.eclipse.statet.redocs.wikitext.r.ui.editors.WikidocRweaveEditor"
+            adaptableType="org.eclipse.statet.redocs.wikitext.r.ui.editors.WikidocRweaveDocEditor"
             class="org.eclipse.statet.internal.redocs.wikitext.r.ui.debug.RetargettableActionAdapterFactory">
          <adapter
                type="org.eclipse.debug.ui.actions.IToggleBreakpointsTarget">
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r.debug/src/org/eclipse/statet/internal/redocs/wikitext/r/ui/debug/ToggleBreakpointAdapter.java b/redocs/org.eclipse.statet.redocs.wikitext.r.debug/src/org/eclipse/statet/internal/redocs/wikitext/r/ui/debug/ToggleBreakpointAdapter.java
index e795208..11acd2f 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r.debug/src/org/eclipse/statet/internal/redocs/wikitext/r/ui/debug/ToggleBreakpointAdapter.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r.debug/src/org/eclipse/statet/internal/redocs/wikitext/r/ui/debug/ToggleBreakpointAdapter.java
@@ -30,7 +30,7 @@
 import org.eclipse.statet.ltk.ui.sourceediting.ISourceEditor;
 import org.eclipse.statet.r.core.source.IRDocumentConstants;
 import org.eclipse.statet.r.debug.ui.actions.RToggleBreakpointAdapter;
-import org.eclipse.statet.redocs.wikitext.r.ui.editors.IWikidocRweaveEditor;
+import org.eclipse.statet.redocs.wikitext.r.ui.editors.WikidocRweaveEditor;
 
 
 public class ToggleBreakpointAdapter implements IToggleBreakpointsTargetExtension {
@@ -46,7 +46,7 @@
 	
 	@Override
 	public boolean canToggleLineBreakpoints(final IWorkbenchPart part, final ISelection selection) {
-		final IWikidocRweaveEditor editor= getREditor(part, selection);
+		final WikidocRweaveEditor editor= getREditor(part, selection);
 		return (editor != null && editor.getSourceUnit() instanceof IWorkspaceSourceUnit
 				&& selection instanceof ITextSelection );
 	}
@@ -54,7 +54,7 @@
 	@Override
 	public void toggleLineBreakpoints(final IWorkbenchPart part, final ISelection selection)
 			throws CoreException {
-		final IWikidocRweaveEditor editor= getREditor(part, selection);
+		final WikidocRweaveEditor editor= getREditor(part, selection);
 		if (editor != null && editor.getSourceUnit() instanceof IWorkspaceSourceUnit
 				&& selection instanceof ITextSelection) {
 			if (isRChunk(editor, (ITextSelection) selection) ) {
@@ -68,14 +68,14 @@
 	
 	@Override
 	public boolean canToggleMethodBreakpoints(final IWorkbenchPart part, final ISelection selection) {
-		final IWikidocRweaveEditor editor= getREditor(part, selection);
+		final WikidocRweaveEditor editor= getREditor(part, selection);
 		return (editor != null && editor.getSourceUnit() instanceof IWorkspaceSourceUnit
 				&& selection instanceof ITextSelection );
 	}
 	
 	@Override
 	public void toggleMethodBreakpoints(final IWorkbenchPart part, final ISelection selection) throws CoreException {
-		final IWikidocRweaveEditor editor= getREditor(part, selection);
+		final WikidocRweaveEditor editor= getREditor(part, selection);
 		if (editor != null && editor.getSourceUnit() instanceof IWorkspaceSourceUnit
 				&& selection instanceof ITextSelection) {
 			if (isRChunk(editor, (ITextSelection) selection) ) {
@@ -99,7 +99,7 @@
 	
 	@Override
 	public boolean canToggleBreakpoints(final IWorkbenchPart part, final ISelection selection) {
-		final IWikidocRweaveEditor editor= getREditor(part, selection);
+		final WikidocRweaveEditor editor= getREditor(part, selection);
 		return (editor != null && editor.getSourceUnit() instanceof IWorkspaceSourceUnit
 				&& selection instanceof ITextSelection );
 	}
@@ -107,7 +107,7 @@
 	@Override
 	public void toggleBreakpoints(final IWorkbenchPart part, final ISelection selection)
 			throws CoreException {
-		final IWikidocRweaveEditor editor= getREditor(part, selection);
+		final WikidocRweaveEditor editor= getREditor(part, selection);
 		if (editor != null && editor.getSourceUnit() instanceof IWorkspaceSourceUnit
 				&& selection instanceof ITextSelection) {
 			if (isRChunk(editor, (ITextSelection) selection) ) {
@@ -119,18 +119,18 @@
 		}
 	}
 	
-	private IWikidocRweaveEditor getREditor(final IWorkbenchPart part, final ISelection selection) {
-		if (part instanceof IWikidocRweaveEditor) {
-			return (IWikidocRweaveEditor) part;
+	private WikidocRweaveEditor getREditor(final IWorkbenchPart part, final ISelection selection) {
+		if (part instanceof WikidocRweaveEditor) {
+			return (WikidocRweaveEditor) part;
 		}
 		final Object adapter= part.getAdapter(ISourceEditor.class);
-		if (adapter instanceof IWikidocRweaveEditor) {
-			return (IWikidocRweaveEditor) adapter;
+		if (adapter instanceof WikidocRweaveEditor) {
+			return (WikidocRweaveEditor) adapter;
 		}
 		return null;
 	}
 	
-	private boolean isRChunk(final IWikidocRweaveEditor editor, final ITextSelection selection) {
+	private boolean isRChunk(final WikidocRweaveEditor editor, final ITextSelection selection) {
 		final SourceViewer viewer= editor.getViewer();
 		if (viewer != null) {
 			try {
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r.textile/plugin.xml b/redocs/org.eclipse.statet.redocs.wikitext.r.textile/plugin.xml
index dc51614..1ffd3f6 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r.textile/plugin.xml
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r.textile/plugin.xml
@@ -42,7 +42,7 @@
             name="Textile+R"
             label="RTextile (Textile+R)"
             class="org.eclipse.statet.internal.redocs.wikitext.r.textile.core.RTextileLanguage"
-            configClass="org.eclipse.statet.internal.redocs.wikitext.r.textile.core.RTextileConfig"
+            configClass="org.eclipse.statet.internal.redocs.wikitext.r.textile.core.RTextileConfigImpl"
             contentTypeId="org.eclipse.statet.redocs.contentTypes.TextileRweave">
       </markupLanguage>
    </extension>
@@ -97,10 +97,10 @@
    <extension
          point="org.eclipse.core.runtime.adapters">
       <factory
-            adaptableType="org.eclipse.statet.internal.redocs.wikitext.r.textile.core.RTextileConfig"
+            adaptableType="org.eclipse.statet.internal.redocs.wikitext.r.textile.core.RTextileConfigImpl"
             class="org.eclipse.statet.internal.redocs.wikitext.r.textile.ui.ConfigUIAdapterFactory">
          <adapter
-               type="org.eclipse.statet.docmlet.wikitext.ui.config.IMarkupConfigUIAdapter">
+               type="org.eclipse.statet.docmlet.wikitext.ui.config.MarkupConfigUIAdapter">
          </adapter>
       </factory>
    </extension>
@@ -130,7 +130,7 @@
          point="org.eclipse.ui.editors">
       <editor
             id="org.eclipse.statet.redocs.editors.TextileRweave"
-            class="org.eclipse.statet.internal.redocs.wikitext.r.textile.ui.TextileRweaveEditor"
+            class="org.eclipse.statet.internal.redocs.wikitext.r.textile.ui.TextileRweaveDocEditor"
             contributorClass="org.eclipse.ui.editors.text.TextEditorActionContributor"
             icon="platform:/plugin/org.eclipse.statet.redocs.wikitext.r/icons/obj_16/wikidoc_rweave-file.png"
             name="%editors_TextileRweave_name"
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/internal/redocs/wikitext/r/textile/core/RTextileConfig.java b/redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/internal/redocs/wikitext/r/textile/core/RTextileConfigImpl.java
similarity index 68%
rename from redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/internal/redocs/wikitext/r/textile/core/RTextileConfig.java
rename to redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/internal/redocs/wikitext/r/textile/core/RTextileConfigImpl.java
index 25aef49..f864ad6 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/internal/redocs/wikitext/r/textile/core/RTextileConfig.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/internal/redocs/wikitext/r/textile/core/RTextileConfigImpl.java
@@ -14,17 +14,20 @@
 
 package org.eclipse.statet.internal.redocs.wikitext.r.textile.core;
 
+import org.eclipse.statet.jcommons.lang.NonNullByDefault;
+
 import org.eclipse.statet.docmlet.wikitext.core.source.extdoc.AbstractMarkupConfig;
-import org.eclipse.statet.redocs.wikitext.r.textile.core.IRTextileConfig;
+import org.eclipse.statet.redocs.wikitext.r.textile.core.RTextileConfig;
 
 
-public class RTextileConfig extends AbstractMarkupConfig<RTextileConfig> implements IRTextileConfig {
+@NonNullByDefault
+public class RTextileConfigImpl extends AbstractMarkupConfig<RTextileConfigImpl> implements RTextileConfig {
 	
 	
-	public RTextileConfig() {
+	public RTextileConfigImpl() {
 	}
 	
-	public RTextileConfig(final RTextileConfig config) {
+	public RTextileConfigImpl(final RTextileConfigImpl config) {
 		load(config);
 	}
 	
@@ -35,8 +38,8 @@
 	}
 	
 	@Override
-	public RTextileConfig clone() {
-		return new RTextileConfig(this);
+	public RTextileConfigImpl clone() {
+		return new RTextileConfigImpl(this);
 	}
 	
 }
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/internal/redocs/wikitext/r/textile/core/RTextileLanguage.java b/redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/internal/redocs/wikitext/r/textile/core/RTextileLanguage.java
index 02a9a8f..32924eb 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/internal/redocs/wikitext/r/textile/core/RTextileLanguage.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/internal/redocs/wikitext/r/textile/core/RTextileLanguage.java
@@ -29,14 +29,14 @@
 import org.eclipse.statet.jcommons.collections.ImList;
 
 import org.eclipse.statet.docmlet.wikitext.core.WikitextProblemReporter;
-import org.eclipse.statet.docmlet.wikitext.core.markup.IMarkupConfig;
+import org.eclipse.statet.docmlet.wikitext.core.markup.MarkupConfig;
 import org.eclipse.statet.docmlet.wikitext.core.markup.MarkupParser2;
-import org.eclipse.statet.docmlet.wikitext.core.source.IMarkupSourceFormatAdapter;
 import org.eclipse.statet.docmlet.wikitext.core.source.MarkupEventPrinter;
+import org.eclipse.statet.docmlet.wikitext.core.source.MarkupSourceFormatAdapter;
 import org.eclipse.statet.docmlet.wikitext.core.source.RegexBlockWeaveParticipant;
 import org.eclipse.statet.docmlet.wikitext.core.source.RegexInlineWeaveParticipant;
 import org.eclipse.statet.docmlet.wikitext.core.source.WeaveLanguageProcessor;
-import org.eclipse.statet.docmlet.wikitext.core.source.extdoc.IExtdocMarkupLanguage;
+import org.eclipse.statet.docmlet.wikitext.core.source.extdoc.ExtdocMarkupLanguage;
 import org.eclipse.statet.docmlet.wikitext.core.source.extdoc.TexMathDollarsDisplayWeaveParticipant;
 import org.eclipse.statet.docmlet.wikitext.core.source.extdoc.TexMathDollarsInlineWeaveParticipant;
 import org.eclipse.statet.docmlet.wikitext.core.source.extdoc.TexMathSBackslashDisplayWeaveParticipant;
@@ -44,12 +44,12 @@
 import org.eclipse.statet.docmlet.wikitext.core.source.extdoc.YamlBlockWeaveParticipant;
 import org.eclipse.statet.ltk.core.SourceContent;
 import org.eclipse.statet.redocs.r.core.source.AbstractRChunkPartitionNodeScanner;
-import org.eclipse.statet.redocs.wikitext.r.core.source.IRweaveMarkupLanguage;
-import org.eclipse.statet.redocs.wikitext.r.textile.core.IRTextileConfig;
+import org.eclipse.statet.redocs.wikitext.r.core.source.RweaveMarkupLanguage;
+import org.eclipse.statet.redocs.wikitext.r.textile.core.RTextileConfig;
 
 
 public class RTextileLanguage extends TextileLanguage
-		implements IExtdocMarkupLanguage, IRweaveMarkupLanguage {
+		implements ExtdocMarkupLanguage, RweaveMarkupLanguage {
 	
 	
 	public static final String TEXTILE_LANGUAGE_NAME= "Textile"; //$NON-NLS-1$
@@ -72,9 +72,9 @@
 	
 	private /*final*/ int mode;
 	
-	private IRTextileConfig config;
+	private RTextileConfig config;
 	
-	private IRTextileConfig configuredConfig;
+	private RTextileConfig configuredConfig;
 	
 	private WeaveLanguageProcessor weaveProcessor;
 	
@@ -83,7 +83,7 @@
 		this(null, 0, null);
 	}
 	
-	public RTextileLanguage(final String scope, final int mode, final IRTextileConfig config) {
+	public RTextileLanguage(final String scope, final int mode, final RTextileConfig config) {
 		super();
 		
 		assert (TEXTILE_LANGUAGE_NAME.equals(getName()));
@@ -131,15 +131,15 @@
 	
 	
 	@Override
-	public void setMarkupConfig(final IMarkupConfig config) {
+	public void setMarkupConfig(final MarkupConfig config) {
 		if (config != null) {
 			config.seal();
 		}
-		this.config= (IRTextileConfig) config;
+		this.config= (RTextileConfig) config;
 	}
 	
 	@Override
-	public IRTextileConfig getMarkupConfig() {
+	public RTextileConfig getMarkupConfig() {
 		return this.config;
 	}
 	
@@ -156,7 +156,7 @@
 	
 	
 	protected void configure(final WeaveLanguageProcessor weaveProcessor,
-			final IRTextileConfig config) {
+			final RTextileConfig config) {
 		weaveProcessor.addChunkParticipant(new RegexBlockWeaveParticipant(
 				EMBEDDED_R, EMBEDDED_R_CHUNK_DESCR,
 				CHUNK_START_LINE_PATTERN, CHUNK_END_LINE_PATTERN ));
@@ -197,7 +197,7 @@
 			this.weaveProcessor= new WeaveLanguageProcessor();
 		}
 		
-		final IRTextileConfig config= getMarkupConfig();
+		final RTextileConfig config= getMarkupConfig();
 		if (config != this.configuredConfig) {
 			this.weaveProcessor.clearConfig();
 			configure(this.weaveProcessor, config);
@@ -290,7 +290,7 @@
 	}
 	
 	@Override
-	public IMarkupSourceFormatAdapter getSourceFormatAdapter() {
+	public MarkupSourceFormatAdapter getSourceFormatAdapter() {
 		return null;
 	}
 	
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/internal/redocs/wikitext/r/textile/core/TextileValidator.java b/redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/internal/redocs/wikitext/r/textile/core/TextileValidator.java
index 1f11ddc..6e6d8a4 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/internal/redocs/wikitext/r/textile/core/TextileValidator.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/internal/redocs/wikitext/r/textile/core/TextileValidator.java
@@ -24,8 +24,8 @@
 
 import org.eclipse.statet.docmlet.wikitext.core.WikitextProblemReporter;
 import org.eclipse.statet.docmlet.wikitext.core.model.IWikidocModelInfo;
-import org.eclipse.statet.docmlet.wikitext.core.model.IWikitextSourceUnit;
 import org.eclipse.statet.docmlet.wikitext.core.model.WikitextModel;
+import org.eclipse.statet.docmlet.wikitext.core.model.WikitextSourceUnit;
 import org.eclipse.statet.internal.redocs.wikitext.r.textile.Messages;
 import org.eclipse.statet.ltk.core.SourceContent;
 import org.eclipse.statet.ltk.issues.core.BasicProblem;
@@ -44,7 +44,7 @@
 	
 	
 	@Override
-	public void run(final IWikitextSourceUnit su, final SourceContent content,
+	public void run(final WikitextSourceUnit su, final SourceContent content,
 			final IWikidocModelInfo model,
 			final ProblemRequestor requestor, final int level, final IProgressMonitor monitor) {
 		
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/internal/redocs/wikitext/r/textile/ui/ConfigUIAdapterFactory.java b/redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/internal/redocs/wikitext/r/textile/ui/ConfigUIAdapterFactory.java
index 62265d9..523032c 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/internal/redocs/wikitext/r/textile/ui/ConfigUIAdapterFactory.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/internal/redocs/wikitext/r/textile/ui/ConfigUIAdapterFactory.java
@@ -16,18 +16,18 @@
 
 import org.eclipse.core.runtime.IAdapterFactory;
 
-import org.eclipse.statet.docmlet.wikitext.ui.config.IMarkupConfigUIAdapter;
+import org.eclipse.statet.docmlet.wikitext.ui.config.MarkupConfigUIAdapter;
 
 
 public class ConfigUIAdapterFactory implements IAdapterFactory {
 	
 	
 	private static final Class<?>[] ADAPTERS= new Class[] {
-		IMarkupConfigUIAdapter.class
+		MarkupConfigUIAdapter.class
 	};
 	
 	
-	private IMarkupConfigUIAdapter markupConfigUI;
+	private MarkupConfigUIAdapter markupConfigUI;
 	
 	
 	public ConfigUIAdapterFactory() {
@@ -41,7 +41,7 @@
 	@Override
 	@SuppressWarnings("unchecked")
 	public <T> T getAdapter(final Object adaptableObject, final Class<T> adapterType) {
-		if (adapterType == IMarkupConfigUIAdapter.class) {
+		if (adapterType == MarkupConfigUIAdapter.class) {
 			synchronized (this) {
 //				if (this.markupConfigUI == null) {
 //					this.markupConfigUI= new RTextileConfigUI();
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/internal/redocs/wikitext/r/textile/ui/TextileRweaveEditor.java b/redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/internal/redocs/wikitext/r/textile/ui/TextileRweaveDocEditor.java
similarity index 89%
rename from redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/internal/redocs/wikitext/r/textile/ui/TextileRweaveEditor.java
rename to redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/internal/redocs/wikitext/r/textile/ui/TextileRweaveDocEditor.java
index 204f52c..210d710 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/internal/redocs/wikitext/r/textile/ui/TextileRweaveEditor.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/internal/redocs/wikitext/r/textile/ui/TextileRweaveDocEditor.java
@@ -15,13 +15,13 @@
 package org.eclipse.statet.internal.redocs.wikitext.r.textile.ui;
 
 import org.eclipse.statet.internal.redocs.wikitext.r.textile.TextileRweavePlugin;
-import org.eclipse.statet.redocs.wikitext.r.ui.editors.WikidocRweaveEditor;
+import org.eclipse.statet.redocs.wikitext.r.ui.editors.WikidocRweaveDocEditor;
 
 
-public class TextileRweaveEditor extends WikidocRweaveEditor {
+public class TextileRweaveDocEditor extends WikidocRweaveDocEditor {
 	
 	
-	public TextileRweaveEditor() {
+	public TextileRweaveDocEditor() {
 		super(TextileRweavePlugin.DOC_CONTENT_TYPE, new TextileRweaveDocumentSetupParticipant());
 	}
 	
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/redocs/wikitext/r/textile/core/IRTextileConfig.java b/redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/redocs/wikitext/r/textile/core/RTextileConfig.java
similarity index 80%
rename from redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/redocs/wikitext/r/textile/core/IRTextileConfig.java
rename to redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/redocs/wikitext/r/textile/core/RTextileConfig.java
index b85c847..f5b0f1c 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/redocs/wikitext/r/textile/core/IRTextileConfig.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r.textile/src/org/eclipse/statet/redocs/wikitext/r/textile/core/RTextileConfig.java
@@ -14,10 +14,13 @@
 
 package org.eclipse.statet.redocs.wikitext.r.textile.core;
 
-import org.eclipse.statet.docmlet.wikitext.core.markup.IMarkupConfig;
+import org.eclipse.statet.jcommons.lang.NonNullByDefault;
+
+import org.eclipse.statet.docmlet.wikitext.core.markup.MarkupConfig;
 
 
-public interface IRTextileConfig extends IMarkupConfig {
+@NonNullByDefault
+public interface RTextileConfig extends MarkupConfig {
 	
 	
 	boolean isYamlMetadataEnabled();
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r/plugin.xml b/redocs/org.eclipse.statet.redocs.wikitext.r/plugin.xml
index 641dc56..a3e99a4 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r/plugin.xml
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r/plugin.xml
@@ -60,7 +60,7 @@
          <with
                variable="activeEditor">
             <instanceof
-                  value="org.eclipse.statet.redocs.wikitext.r.ui.editors.IWikidocRweaveEditor">
+                  value="org.eclipse.statet.redocs.wikitext.r.ui.editors.WikidocRweaveEditor">
             </instanceof>
          </with>
       </definition>
@@ -72,7 +72,7 @@
          <with
                variable="activePart">
             <instanceof
-                  value="org.eclipse.statet.redocs.wikitext.r.ui.editors.IWikidocRweaveEditor">
+                  value="org.eclipse.statet.redocs.wikitext.r.ui.editors.WikidocRweaveEditor">
             </instanceof>
          </with>
       </definition>
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/core/WikidocRweavePersistenceUnitFactory.java b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/core/WikidocRweavePersistenceUnitFactory.java
index 88e4c02..562cf6a 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/core/WikidocRweavePersistenceUnitFactory.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/core/WikidocRweavePersistenceUnitFactory.java
@@ -16,7 +16,7 @@
 
 import org.eclipse.core.resources.IFile;
 
-import org.eclipse.statet.internal.redocs.wikitext.r.core.model.WikidocRweaveSourceUnit;
+import org.eclipse.statet.internal.redocs.wikitext.r.core.model.WikidocRweaveResourceSourceUnit;
 import org.eclipse.statet.ltk.model.core.elements.ISourceUnit;
 import org.eclipse.statet.ltk.model.core.impl.AbstractFilePersistenceSourceUnitFactory;
 
@@ -30,7 +30,7 @@
 	
 	@Override
 	protected ISourceUnit createSourceUnit(final String id, final IFile file) {
-		return new WikidocRweaveSourceUnit(id, file);
+		return new WikidocRweaveResourceSourceUnit(id, file);
 	}
 	
 }
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/core/model/WikidocRChunkReconciler.java b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/core/model/WikidocRChunkReconciler.java
index 87db8a3..f8833c9 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/core/model/WikidocRChunkReconciler.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/core/model/WikidocRChunkReconciler.java
@@ -20,17 +20,17 @@
 
 import org.eclipse.statet.docmlet.wikitext.core.model.IWikidocModelInfo;
 import org.eclipse.statet.redocs.r.core.model.RChunkReconciler;
-import org.eclipse.statet.redocs.wikitext.r.core.model.IWikidocRweaveSourceUnit;
-import org.eclipse.statet.redocs.wikitext.r.core.source.IRweaveMarkupLanguage;
+import org.eclipse.statet.redocs.wikitext.r.core.model.WikidocRweaveSourceUnit;
+import org.eclipse.statet.redocs.wikitext.r.core.source.RweaveMarkupLanguage;
 
 
 class WikidocRChunkReconciler extends RChunkReconciler
-		<IWikidocRweaveSourceUnit, IWikidocModelInfo, WikidocRweaveSuModelContainer> {
+		<WikidocRweaveSourceUnit, IWikidocModelInfo, WikidocRweaveSuModelContainer> {
 	
 	
 	private static final Map<String, WikidocRChunkReconciler> INSTANCES= new HashMap<>();
 	
-	static final WikidocRChunkReconciler getInstance(final IRweaveMarkupLanguage markupLanguage) {
+	static final WikidocRChunkReconciler getInstance(final RweaveMarkupLanguage markupLanguage) {
 		synchronized(WikidocRChunkReconciler.class) {
 			WikidocRChunkReconciler reconciler= INSTANCES.get(markupLanguage.getName());
 			if (reconciler == null) {
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/core/model/WikidocRweaveEditorWorkingCopy.java b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/core/model/WikidocRweaveEditorWorkingCopy.java
index d6de904..2ab037b 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/core/model/WikidocRweaveEditorWorkingCopy.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/core/model/WikidocRweaveEditorWorkingCopy.java
@@ -16,21 +16,21 @@
 
 import org.eclipse.core.runtime.IProgressMonitor;
 
-import org.eclipse.statet.docmlet.wikitext.core.IWikitextCoreAccess;
-import org.eclipse.statet.docmlet.wikitext.core.model.IWikidocWorkspaceSourceUnit;
-import org.eclipse.statet.docmlet.wikitext.core.model.IWikitextSourceUnit;
+import org.eclipse.statet.docmlet.wikitext.core.WikitextCoreAccess;
+import org.eclipse.statet.docmlet.wikitext.core.model.WikidocWorkspaceSourceUnit;
+import org.eclipse.statet.docmlet.wikitext.core.model.WikitextSourceUnit;
 import org.eclipse.statet.ltk.model.core.IModelManager;
 import org.eclipse.statet.ltk.model.core.elements.ISourceUnitModelInfo;
 import org.eclipse.statet.ltk.ui.GenericEditorWorkspaceSourceUnitWorkingCopy2;
 import org.eclipse.statet.r.core.IRCoreAccess;
 import org.eclipse.statet.r.core.model.IRWorkspaceSourceUnit;
 import org.eclipse.statet.r.core.model.RModel;
-import org.eclipse.statet.redocs.wikitext.r.core.model.IWikidocRweaveSourceUnit;
+import org.eclipse.statet.redocs.wikitext.r.core.model.WikidocRweaveSourceUnit;
 
 
 public class WikidocRweaveEditorWorkingCopy
 		extends GenericEditorWorkspaceSourceUnitWorkingCopy2<WikidocRweaveSuModelContainer>
-		implements IWikidocRweaveSourceUnit, IWikidocWorkspaceSourceUnit, IRWorkspaceSourceUnit {
+		implements WikidocRweaveSourceUnit, WikidocWorkspaceSourceUnit, IRWorkspaceSourceUnit {
 	
 	
 	public WikidocRweaveEditorWorkingCopy(final IRWorkspaceSourceUnit from) {
@@ -44,13 +44,13 @@
 	
 	
 	@Override
-	public IWikitextCoreAccess getWikitextCoreAccess() {
-		return ((IWikitextSourceUnit) getUnderlyingUnit()).getWikitextCoreAccess();
+	public WikitextCoreAccess getWikitextCoreAccess() {
+		return ((WikitextSourceUnit) getUnderlyingUnit()).getWikitextCoreAccess();
 	}
 	
 	@Override
 	public IRCoreAccess getRCoreAccess() {
-		return ((IWikidocRweaveSourceUnit) getUnderlyingUnit()).getRCoreAccess();
+		return ((WikidocRweaveSourceUnit) getUnderlyingUnit()).getRCoreAccess();
 	}
 	
 	
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/core/model/WikidocRweaveSourceUnit.java b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/core/model/WikidocRweaveResourceSourceUnit.java
similarity index 84%
rename from redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/core/model/WikidocRweaveSourceUnit.java
rename to redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/core/model/WikidocRweaveResourceSourceUnit.java
index a97c1f7..0185d15 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/core/model/WikidocRweaveSourceUnit.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/core/model/WikidocRweaveResourceSourceUnit.java
@@ -19,9 +19,9 @@
 
 import org.eclipse.statet.ecommons.text.core.sections.IDocContentSections;
 
-import org.eclipse.statet.docmlet.wikitext.core.IWikitextCoreAccess;
 import org.eclipse.statet.docmlet.wikitext.core.WikitextCore;
-import org.eclipse.statet.docmlet.wikitext.core.model.IWikidocWorkspaceSourceUnit;
+import org.eclipse.statet.docmlet.wikitext.core.WikitextCoreAccess;
+import org.eclipse.statet.docmlet.wikitext.core.model.WikidocWorkspaceSourceUnit;
 import org.eclipse.statet.ltk.model.core.IModelManager;
 import org.eclipse.statet.ltk.model.core.elements.ISourceUnitModelInfo;
 import org.eclipse.statet.ltk.model.core.impl.GenericResourceSourceUnit2;
@@ -31,16 +31,16 @@
 import org.eclipse.statet.r.core.RProjects;
 import org.eclipse.statet.r.core.model.IRWorkspaceSourceUnit;
 import org.eclipse.statet.r.core.model.RModel;
-import org.eclipse.statet.redocs.wikitext.r.core.model.IWikidocRweaveSourceUnit;
+import org.eclipse.statet.redocs.wikitext.r.core.model.WikidocRweaveSourceUnit;
 import org.eclipse.statet.redocs.wikitext.r.core.model.WikitextRweaveModel;
 import org.eclipse.statet.redocs.wikitext.r.core.source.WikidocRweaveDocumentContentInfo;
 
 
-public class WikidocRweaveSourceUnit extends GenericResourceSourceUnit2<WikidocRweaveSuModelContainer> 
-		implements IWikidocRweaveSourceUnit, IWikidocWorkspaceSourceUnit, IRWorkspaceSourceUnit {
+public class WikidocRweaveResourceSourceUnit extends GenericResourceSourceUnit2<WikidocRweaveSuModelContainer> 
+		implements WikidocRweaveSourceUnit, WikidocWorkspaceSourceUnit, IRWorkspaceSourceUnit {
 	
 	
-	public WikidocRweaveSourceUnit(final String id, final IFile file) {
+	public WikidocRweaveResourceSourceUnit(final String id, final IFile file) {
 		super(id, file);
 	}
 	
@@ -61,7 +61,7 @@
 	}
 	
 	@Override
-	public IWikitextCoreAccess getWikitextCoreAccess() {
+	public WikitextCoreAccess getWikitextCoreAccess() {
 		return WikitextCore.WORKBENCH_ACCESS;
 	}
 	
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/core/model/WikidocRweaveSuModelContainer.java b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/core/model/WikidocRweaveSuModelContainer.java
index 9471805..6a07b5d 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/core/model/WikidocRweaveSuModelContainer.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/core/model/WikidocRweaveSuModelContainer.java
@@ -20,7 +20,7 @@
 
 import org.eclipse.statet.docmlet.wikitext.core.ast.Embedded;
 import org.eclipse.statet.docmlet.wikitext.core.ast.WikitextAstInfo;
-import org.eclipse.statet.docmlet.wikitext.core.markup.IMarkupLanguage;
+import org.eclipse.statet.docmlet.wikitext.core.markup.WikitextMarkupLanguage;
 import org.eclipse.statet.docmlet.wikitext.core.model.EmbeddingReconcileItem;
 import org.eclipse.statet.docmlet.wikitext.core.model.IWikidocModelInfo;
 import org.eclipse.statet.docmlet.wikitext.core.model.IWikidocSuModelContainerEmbeddedExtension;
@@ -31,16 +31,16 @@
 import org.eclipse.statet.ltk.core.SourceContent;
 import org.eclipse.statet.ltk.issues.core.ProblemRequestor;
 import org.eclipse.statet.r.core.model.RModel;
-import org.eclipse.statet.redocs.wikitext.r.core.model.IWikidocRweaveSourceUnit;
+import org.eclipse.statet.redocs.wikitext.r.core.model.WikidocRweaveSourceUnit;
 import org.eclipse.statet.redocs.wikitext.r.core.model.WikitextRweaveModel;
-import org.eclipse.statet.redocs.wikitext.r.core.source.IRweaveMarkupLanguage;
+import org.eclipse.statet.redocs.wikitext.r.core.source.RweaveMarkupLanguage;
 
 
-public class WikidocRweaveSuModelContainer extends WikidocSuModelContainer<IWikidocRweaveSourceUnit>
+public class WikidocRweaveSuModelContainer extends WikidocSuModelContainer<WikidocRweaveSourceUnit>
 		implements IWikidocSuModelContainerEmbeddedExtension {
 	
 	
-	public WikidocRweaveSuModelContainer(final IWikidocRweaveSourceUnit su) {
+	public WikidocRweaveSuModelContainer(final WikidocRweaveSourceUnit su) {
 		super(su);
 	}
 	
@@ -57,10 +57,10 @@
 	
 	@Override
 	public void reconcileEmbeddedAst(final SourceContent content, final List<Embedded> list,
-			final IMarkupLanguage markupLanguage, final int level,
+			final WikitextMarkupLanguage markupLanguage, final int level,
 			final IProgressMonitor monitor) {
-		if (markupLanguage instanceof IRweaveMarkupLanguage) {
-			WikidocRChunkReconciler.getInstance((IRweaveMarkupLanguage) markupLanguage)
+		if (markupLanguage instanceof RweaveMarkupLanguage) {
+			WikidocRChunkReconciler.getInstance((RweaveMarkupLanguage) markupLanguage)
 					.reconcileAst(this, content, list, monitor);
 		}
 	}
@@ -70,9 +70,9 @@
 			final List<EmbeddingReconcileItem> list,
 			final int level, final IProgressMonitor monitor) {
 		final WikitextAstInfo astInfo= wikitextModel.getAst();
-		final IMarkupLanguage markupLanguage= astInfo.getMarkupLanguage();
-		if (markupLanguage instanceof IRweaveMarkupLanguage) {
-			WikidocRChunkReconciler.getInstance((IRweaveMarkupLanguage) markupLanguage)
+		final WikitextMarkupLanguage markupLanguage= astInfo.getMarkupLanguage();
+		if (markupLanguage instanceof RweaveMarkupLanguage) {
+			WikidocRChunkReconciler.getInstance((RweaveMarkupLanguage) markupLanguage)
 					.reconcileModel(this, content, wikitextModel, list, level, monitor);
 		}
 	}
@@ -82,9 +82,9 @@
 			final ProblemRequestor problemRequestor, final int level,
 			final IProgressMonitor monitor) {
 		final WikitextAstInfo astInfo= wikitextModel.getAst();
-		final IMarkupLanguage markupLanguage= astInfo.getMarkupLanguage();
-		if (markupLanguage instanceof IRweaveMarkupLanguage) {
-			WikidocRChunkReconciler.getInstance((IRweaveMarkupLanguage) markupLanguage)
+		final WikitextMarkupLanguage markupLanguage= astInfo.getMarkupLanguage();
+		if (markupLanguage instanceof RweaveMarkupLanguage) {
+			WikidocRChunkReconciler.getInstance((RweaveMarkupLanguage) markupLanguage)
 					.reportEmbeddedProblems(this, content, wikitextModel, problemRequestor, level, monitor);
 		}
 	}
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/core/model/WikitextRweaveTexBuildParticipant.java b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/core/model/WikitextRweaveTexBuildParticipant.java
index 13d431b..baaab6c 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/core/model/WikitextRweaveTexBuildParticipant.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/core/model/WikitextRweaveTexBuildParticipant.java
@@ -24,13 +24,13 @@
 import org.eclipse.statet.jcommons.collections.ImList;
 
 import org.eclipse.statet.docmlet.wikitext.core.WikitextBuildParticipant;
-import org.eclipse.statet.docmlet.wikitext.core.model.IWikidocWorkspaceSourceUnit;
 import org.eclipse.statet.docmlet.wikitext.core.model.WikidocSuModelContainer;
+import org.eclipse.statet.docmlet.wikitext.core.model.WikidocWorkspaceSourceUnit;
 import org.eclipse.statet.r.core.RProject;
 import org.eclipse.statet.r.core.RProjects;
 import org.eclipse.statet.r.core.model.RModel;
 import org.eclipse.statet.r.core.model.RModelIndexUpdate;
-import org.eclipse.statet.redocs.wikitext.r.core.model.IWikidocRweaveSourceUnit;
+import org.eclipse.statet.redocs.wikitext.r.core.model.WikidocRweaveSourceUnit;
 import org.eclipse.statet.redocs.wikitext.r.core.model.WikitextRweaveModel;
 
 
@@ -67,10 +67,10 @@
 	}
 	
 	@Override
-	public void docUnitUpdated(final IWikidocWorkspaceSourceUnit sourceUnit,
+	public void docUnitUpdated(final WikidocWorkspaceSourceUnit sourceUnit,
 			final IProgressMonitor monitor) throws CoreException {
-		if (sourceUnit instanceof IWikidocRweaveSourceUnit) {
-			final IWikidocRweaveSourceUnit unit= (IWikidocRweaveSourceUnit) sourceUnit;
+		if (sourceUnit instanceof WikidocRweaveSourceUnit) {
+			final WikidocRweaveSourceUnit unit= (WikidocRweaveSourceUnit) sourceUnit;
 			final WikidocRweaveSuModelContainer modelContainer= (WikidocRweaveSuModelContainer) unit.getAdapter(WikidocSuModelContainer.class);
 			if (modelContainer != null) {
 				this.rIndexUpdate.update(unit,
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/ui/editors/WikidocRweaveDocumentProvider.java b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/ui/editors/WikidocRweaveDocumentProvider.java
index 252fb7b..da9fba0 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/ui/editors/WikidocRweaveDocumentProvider.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/ui/editors/WikidocRweaveDocumentProvider.java
@@ -39,13 +39,13 @@
 import org.eclipse.statet.ltk.ui.sourceediting.SourceProblemAnnotation;
 import org.eclipse.statet.r.core.model.RModel;
 import org.eclipse.statet.r.ui.editors.REditorBuild;
-import org.eclipse.statet.redocs.wikitext.r.core.model.IWikidocRweaveSourceUnit;
+import org.eclipse.statet.redocs.wikitext.r.core.model.WikidocRweaveSourceUnit;
 import org.eclipse.statet.redocs.wikitext.r.core.model.WikitextRweaveModel;
 import org.eclipse.statet.yaml.core.model.YamlModel;
 import org.eclipse.statet.yaml.ui.editors.YamlEditorBuild;
 
 
-public class WikidocRweaveDocumentProvider extends SourceDocumentProvider<IWikidocRweaveSourceUnit>
+public class WikidocRweaveDocumentProvider extends SourceDocumentProvider<WikidocRweaveSourceUnit>
 		implements Disposable {
 	
 	
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/ui/editors/WikidocRweaveEditorTemplatesPage.java b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/ui/editors/WikidocRweaveEditorTemplatesPage.java
index 52ec310..4a9757d 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/ui/editors/WikidocRweaveEditorTemplatesPage.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/ui/editors/WikidocRweaveEditorTemplatesPage.java
@@ -34,12 +34,12 @@
 import org.eclipse.statet.r.ui.editors.templates.REditorContext;
 import org.eclipse.statet.r.ui.editors.templates.REditorTemplateContextType;
 import org.eclipse.statet.r.ui.sourceediting.RTemplateSourceViewerConfigurator;
-import org.eclipse.statet.redocs.wikitext.r.core.source.IWikitextRweaveDocumentConstants;
-import org.eclipse.statet.redocs.wikitext.r.ui.editors.WikidocRweaveEditor;
+import org.eclipse.statet.redocs.wikitext.r.core.source.WikitextRweaveDocumentConstants;
+import org.eclipse.statet.redocs.wikitext.r.ui.editors.WikidocRweaveDocEditor;
 
 
 /**
- * Page for {@link WikidocRweaveEditor} / {@link TemplatesView}
+ * Page for {@link WikidocRweaveDocEditor} / {@link TemplatesView}
  * 
  * At moment only for R templates.
  */
@@ -49,7 +49,7 @@
 	private SourceEditorViewerConfigurator rPreviewConfigurator;
 	
 	
-	public WikidocRweaveEditorTemplatesPage(final WikidocRweaveEditor editor, final ISourceViewer viewer) {
+	public WikidocRweaveEditorTemplatesPage(final WikidocRweaveDocEditor editor, final ISourceViewer viewer) {
 		super(RUIPlugin.getInstance().getREditorTemplateStore(), editor, viewer);
 	}
 	
@@ -67,7 +67,7 @@
 	@Override
 	protected String[] getContextTypeIds(final IDocument document, final int offset) {
 		try {
-			final String contentType= TextUtilities.getContentType(document, IWikitextRweaveDocumentConstants.WIKIDOC_R_PARTITIONING, offset, true);
+			final String contentType= TextUtilities.getContentType(document, WikitextRweaveDocumentConstants.WIKIDOC_R_PARTITIONING, offset, true);
 			if (IRDocumentConstants.R_ANY_CONTENT_CONSTRAINT.matches(contentType)) {
 				return new String[] { REditorTemplateContextType.RCODE_CONTEXTTYPE_ID };
 			}
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/ui/editors/WikidocRweaveOutlinePage.java b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/ui/editors/WikidocRweaveOutlinePage.java
index 5ed1ff2..c0d40a4 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/ui/editors/WikidocRweaveOutlinePage.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/ui/editors/WikidocRweaveOutlinePage.java
@@ -46,7 +46,7 @@
 import org.eclipse.statet.ecommons.ui.viewers.ViewerUtils;
 
 import org.eclipse.statet.base.ui.IStatetUIMenuIds;
-import org.eclipse.statet.docmlet.base.ui.DocBaseUIResources;
+import org.eclipse.statet.docmlet.base.ui.DocmlBaseUIResources;
 import org.eclipse.statet.docmlet.wikitext.core.model.IWikidocModelInfo;
 import org.eclipse.statet.docmlet.wikitext.core.model.IWikitextSourceElement;
 import org.eclipse.statet.docmlet.wikitext.core.model.WikitextModel;
@@ -135,14 +135,14 @@
 					}
 					
 					final IWikidocModelInfo modelInfo= getCurrentInputModel();
-					final DocBaseUIResources baseResources= DocBaseUIResources.INSTANCE;
+					final DocmlBaseUIResources baseResources= DocmlBaseUIResources.INSTANCE;
 					final RedocsRUIResources redocsResources= RedocsRUIResources.INSTANCE;
 					if (modelInfo.getMinSectionLevel() > 0) {
 						if (modelInfo.getMinSectionLevel() < 2
 								&& modelInfo.getMaxSectionLevel() >= 2) {
 							manager.add(new HandlerContributionItem(new CommandContributionItemParameter(
 									getSite(), null, EXPAND_ELEMENTS_COMMAND_ID, H2_PARAMETERS,
-									baseResources.getImageDescriptor(DocBaseUIResources.OBJ_HEADING2_IMAGE_ID), null, null,
+									baseResources.getImageDescriptor(DocmlBaseUIResources.OBJ_HEADING2_IMAGE_ID), null, null,
 									"Show all H2 sections", "C", null,
 									HandlerContributionItem.STYLE_PUSH, null, false ),
 									ExpandElementsContributionItem.this.expandElementsHandler ));
@@ -151,7 +151,7 @@
 								&& modelInfo.getMaxSectionLevel() >= 3) {
 							manager.add(new HandlerContributionItem(new CommandContributionItemParameter(
 									getSite(), null, EXPAND_ELEMENTS_COMMAND_ID, H3_PARAMETERS,
-									baseResources.getImageDescriptor(DocBaseUIResources.OBJ_HEADING3_IMAGE_ID), null, null,
+									baseResources.getImageDescriptor(DocmlBaseUIResources.OBJ_HEADING3_IMAGE_ID), null, null,
 									"Show all H3 sections", "S", null,
 									HandlerContributionItem.STYLE_PUSH, null, false ),
 									ExpandElementsContributionItem.this.expandElementsHandler ));
@@ -160,7 +160,7 @@
 								&& modelInfo.getMaxSectionLevel() >= 4) {
 							manager.add(new HandlerContributionItem(new CommandContributionItemParameter(
 									getSite(), null, EXPAND_ELEMENTS_COMMAND_ID, H4_PARAMETERS,
-									baseResources.getImageDescriptor(DocBaseUIResources.OBJ_HEADING4_IMAGE_ID), null, null,
+									baseResources.getImageDescriptor(DocmlBaseUIResources.OBJ_HEADING4_IMAGE_ID), null, null,
 									"Show all H4 sections", "u", null,
 									HandlerContributionItem.STYLE_PUSH, null, false ),
 									ExpandElementsContributionItem.this.expandElementsHandler ));
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/ui/processing/YamlFormatDetector.java b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/ui/processing/YamlFormatDetector.java
index 1e4bcd6..9d9d00b 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/ui/processing/YamlFormatDetector.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/ui/processing/YamlFormatDetector.java
@@ -29,7 +29,7 @@
 
 import org.eclipse.statet.jcommons.text.core.TextLineInformation;
 
-import org.eclipse.statet.docmlet.base.ui.DocBaseUI;
+import org.eclipse.statet.docmlet.base.ui.DocmlBaseUI;
 import org.eclipse.statet.docmlet.base.ui.processing.DocProcessingConfig;
 import org.eclipse.statet.docmlet.wikitext.core.source.extdoc.YamlBlockWeaveParticipant;
 import org.eclipse.statet.ltk.core.LTK;
@@ -84,7 +84,7 @@
 			final String ext= toExtension(format);
 			
 			if (!isValidExt(ext)) {
-				throw new CoreException(new Status(IStatus.ERROR, DocBaseUI.BUNDLE_ID,
+				throw new CoreException(new Status(IStatus.ERROR, DocmlBaseUI.BUNDLE_ID,
 						NLS.bind("Failed to detect file extension for format ''{0}''.",
 								format )));
 			}
@@ -214,7 +214,7 @@
 		
 		if (searcher.format != null) {
 			if (searcher.format == FAIL) {
-				throw new CoreException(new Status(IStatus.ERROR, DocBaseUI.BUNDLE_ID,
+				throw new CoreException(new Status(IStatus.ERROR, DocmlBaseUI.BUNDLE_ID,
 						"Unexpected data for 'format'.\nYAML code:\n" + code ));
 			}
 			else {
@@ -226,7 +226,7 @@
 				return searcher.outputFormat;
 			}
 			else if (searcher.output == FAIL) {
-				throw new CoreException(new Status(IStatus.ERROR, DocBaseUI.BUNDLE_ID,
+				throw new CoreException(new Status(IStatus.ERROR, DocmlBaseUI.BUNDLE_ID,
 						"Unexpected data for 'output'.\nYAML code:\n" + code ));
 			}
 			else {
@@ -234,7 +234,7 @@
 			}
 		}
 		else {
-			throw new CoreException(new Status(IStatus.ERROR, DocBaseUI.BUNDLE_ID,
+			throw new CoreException(new Status(IStatus.ERROR, DocmlBaseUI.BUNDLE_ID,
 					"No 'format' or 'output' entry found.\nYAML code:\n" + code ));
 		}
 	}
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/ui/sourceediting/RChunkTemplateCompletionComputer.java b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/ui/sourceediting/RChunkTemplateCompletionComputer.java
index ef71821..712e47e 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/ui/sourceediting/RChunkTemplateCompletionComputer.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/ui/sourceediting/RChunkTemplateCompletionComputer.java
@@ -28,7 +28,7 @@
 
 import org.eclipse.statet.jcommons.text.core.TextRegion;
 
-import org.eclipse.statet.docmlet.wikitext.core.markup.IMarkupLanguage;
+import org.eclipse.statet.docmlet.wikitext.core.markup.WikitextMarkupLanguage;
 import org.eclipse.statet.docmlet.wikitext.core.source.MarkupLanguageDocumentSetupParticipant;
 import org.eclipse.statet.internal.redocs.wikitext.r.RedocsWikitextRPlugin;
 import org.eclipse.statet.ltk.ui.sourceediting.ISourceEditor;
@@ -38,14 +38,14 @@
 import org.eclipse.statet.ltk.ui.sourceediting.assist.TemplateCompletionComputer;
 import org.eclipse.statet.ltk.ui.sourceediting.assist.TemplateProposal;
 import org.eclipse.statet.redocs.r.ui.RedocsRUIResources;
-import org.eclipse.statet.redocs.wikitext.r.core.source.IRweaveMarkupLanguage;
+import org.eclipse.statet.redocs.wikitext.r.core.source.RweaveMarkupLanguage;
 import org.eclipse.statet.redocs.wikitext.r.core.source.WikitextRweaveTemplateContextType;
 
 
 public class RChunkTemplateCompletionComputer extends TemplateCompletionComputer {
 	
 	
-	private IRweaveMarkupLanguage markupLanguage;
+	private RweaveMarkupLanguage markupLanguage;
 	
 	
 	public RChunkTemplateCompletionComputer() {
@@ -57,10 +57,10 @@
 	// sessionStarted not called automatically, because computer is not registered in registry
 	@Override
 	public void sessionStarted(final ISourceEditor editor, final ContentAssist assist) {
-		final IMarkupLanguage markupLanguage= MarkupLanguageDocumentSetupParticipant.getMarkupLanguage(
+		final WikitextMarkupLanguage markupLanguage= MarkupLanguageDocumentSetupParticipant.getMarkupLanguage(
 				editor.getViewer().getDocument(), editor.getDocumentContentInfo().getPartitioning() );
-		if (markupLanguage instanceof IRweaveMarkupLanguage) {
-			this.markupLanguage= (IRweaveMarkupLanguage) markupLanguage;
+		if (markupLanguage instanceof RweaveMarkupLanguage) {
+			this.markupLanguage= (RweaveMarkupLanguage) markupLanguage;
 		}
 	}
 	
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/WikitextRweaveCore.java b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/WikitextRweaveCore.java
index 6372821..a76441e 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/WikitextRweaveCore.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/WikitextRweaveCore.java
@@ -14,7 +14,10 @@
 
 package org.eclipse.statet.redocs.wikitext.r.core;
 
+import org.eclipse.statet.jcommons.lang.NonNullByDefault;
 
+
+@NonNullByDefault
 public class WikitextRweaveCore {
 	
 	
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/model/IWikidocRweaveSourceUnit.java b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/model/WikidocRweaveSourceUnit.java
similarity index 77%
rename from redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/model/IWikidocRweaveSourceUnit.java
rename to redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/model/WikidocRweaveSourceUnit.java
index 3008319..3b486f2 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/model/IWikidocRweaveSourceUnit.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/model/WikidocRweaveSourceUnit.java
@@ -14,11 +14,14 @@
 
 package org.eclipse.statet.redocs.wikitext.r.core.model;
 
-import org.eclipse.statet.docmlet.wikitext.core.model.IWikitextSourceUnit;
+import org.eclipse.statet.jcommons.lang.NonNullByDefault;
+
+import org.eclipse.statet.docmlet.wikitext.core.model.WikitextSourceUnit;
 import org.eclipse.statet.r.core.model.IRSourceUnit;
 
 
-public interface IWikidocRweaveSourceUnit extends IRSourceUnit, IWikitextSourceUnit {
+@NonNullByDefault
+public interface WikidocRweaveSourceUnit extends IRSourceUnit, WikitextSourceUnit {
 	
 	
 }
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/source/IRweaveMarkupLanguage.java b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/source/RweaveMarkupLanguage.java
similarity index 89%
rename from redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/source/IRweaveMarkupLanguage.java
rename to redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/source/RweaveMarkupLanguage.java
index c38637e..e25d958 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/source/IRweaveMarkupLanguage.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/source/RweaveMarkupLanguage.java
@@ -17,12 +17,12 @@
 import java.util.List;
 import java.util.regex.Pattern;
 
-import org.eclipse.statet.docmlet.wikitext.core.markup.IMarkupLanguage;
+import org.eclipse.statet.docmlet.wikitext.core.markup.WikitextMarkupLanguage;
 import org.eclipse.statet.ltk.ast.core.EmbeddingAstNode;
 import org.eclipse.statet.redocs.r.core.source.AbstractRChunkPartitionNodeScanner;
 
 
-public interface IRweaveMarkupLanguage extends IMarkupLanguage {
+public interface RweaveMarkupLanguage extends WikitextMarkupLanguage {
 	
 	
 	String EMBEDDED_R= "R"; // RModel.R_TYPE_ID //$NON-NLS-1$
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/source/WikidocRweaveBracketPairMatcher.java b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/source/WikidocRweaveBracketPairMatcher.java
index ddab80d..1e006e4 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/source/WikidocRweaveBracketPairMatcher.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/source/WikidocRweaveBracketPairMatcher.java
@@ -31,7 +31,7 @@
 		return new RBracketPairMatcher(scanner,
 				new String[] {
 					IRDocumentConstants.R_DEFAULT_CONTENT_TYPE,
-					IWikitextRweaveDocumentConstants.RCHUNK_CONTROL_CONTENT_TYPE
+					WikitextRweaveDocumentConstants.RCHUNK_CONTROL_CONTENT_TYPE
 				} );
 	}
 	
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/source/WikidocRweaveDocumentContentInfo.java b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/source/WikidocRweaveDocumentContentInfo.java
index 7eb626a..3a73710 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/source/WikidocRweaveDocumentContentInfo.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/source/WikidocRweaveDocumentContentInfo.java
@@ -25,33 +25,33 @@
 import org.eclipse.statet.ecommons.text.core.sections.AbstractDocContentSections;
 import org.eclipse.statet.ecommons.text.core.treepartitioner.ITreePartitionNode;
 
-import org.eclipse.statet.docmlet.tex.core.source.ITexDocumentConstants;
-import org.eclipse.statet.docmlet.wikitext.core.source.IWikitextDocumentConstants;
+import org.eclipse.statet.docmlet.tex.core.source.TexDocumentConstants;
+import org.eclipse.statet.docmlet.wikitext.core.source.WikitextDocumentConstants;
 import org.eclipse.statet.r.core.source.IRDocumentConstants;
-import org.eclipse.statet.redocs.r.core.source.IDocContentSectionsRweaveExtension;
+import org.eclipse.statet.redocs.r.core.source.DocContentSectionsRweaveExtension;
 import org.eclipse.statet.redocs.r.core.source.RweaveDocSectionTreePartImpl;
-import org.eclipse.statet.yaml.core.source.IYamlDocumentConstants;
+import org.eclipse.statet.yaml.core.source.YamlDocumentConstants;
 
 
 public class WikidocRweaveDocumentContentInfo extends AbstractDocContentSections
-		implements IDocContentSectionsRweaveExtension {
+		implements DocContentSectionsRweaveExtension {
 	
 	
-	public static final String WIKITEXT=                    IWikitextDocumentConstants.WIKIDOC_PARTITIONING;
-	public static final String YAML=                        IYamlDocumentConstants.YAML_PARTITIONING;
-	public static final String LTX=                         ITexDocumentConstants.LTX_PARTITIONING;
+	public static final String WIKITEXT=                    WikitextDocumentConstants.WIKIDOC_PARTITIONING;
+	public static final String YAML=                        YamlDocumentConstants.YAML_PARTITIONING;
+	public static final String LTX=                         TexDocumentConstants.LTX_PARTITIONING;
 	public static final String R_CHUNK_CONTROL=             "org.eclipse.statet.WikitextR-ChunkControl"; //$NON-NLS-1$
 	public static final String R=                           IRDocumentConstants.R_PARTITIONING;
 	
 	
-	public static final IDocContentSectionsRweaveExtension INSTANCE= new WikidocRweaveDocumentContentInfo();
+	public static final DocContentSectionsRweaveExtension INSTANCE= new WikidocRweaveDocumentContentInfo();
 	
 	
 	private final RweaveDocSectionTreePartImpl rweaveImpl;
 	
 	
 	public WikidocRweaveDocumentContentInfo() {
-		super(IWikitextRweaveDocumentConstants.WIKIDOC_R_PARTITIONING, WIKITEXT,
+		super(WikitextRweaveDocumentConstants.WIKIDOC_R_PARTITIONING, WIKITEXT,
 				ImCollections.newList(WIKITEXT, YAML, LTX, R_CHUNK_CONTROL, R) );
 		
 		this.rweaveImpl= new RweaveDocSectionTreePartImpl(this);
@@ -63,13 +63,13 @@
 		if (IRDocumentConstants.R_ANY_CONTENT_CONSTRAINT.matches(contentType)) {
 			return R;
 		}
-		if (IWikitextRweaveDocumentConstants.RCHUNK_PARTITION_CONSTRAINT.matches(contentType)) {
+		if (WikitextRweaveDocumentConstants.RCHUNK_PARTITION_CONSTRAINT.matches(contentType)) {
 			return R_CHUNK_CONTROL;
 		}
-		if (IYamlDocumentConstants.YAML_ANY_CONTENT_CONSTRAINT.matches(contentType)) {
+		if (YamlDocumentConstants.YAML_ANY_CONTENT_CONSTRAINT.matches(contentType)) {
 			return YAML;
 		}
-		if (ITexDocumentConstants.LTX_ANY_CONTENT_CONSTRAINT.matches(contentType)) {
+		if (TexDocumentConstants.LTX_ANY_CONTENT_CONSTRAINT.matches(contentType)) {
 			return LTX;
 		}
 		return WIKITEXT;
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/source/WikidocRweaveDocumentSetupParticipant.java b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/source/WikidocRweaveDocumentSetupParticipant.java
index 93ee454..abcd743 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/source/WikidocRweaveDocumentSetupParticipant.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/source/WikidocRweaveDocumentSetupParticipant.java
@@ -14,11 +14,11 @@
 
 package org.eclipse.statet.redocs.wikitext.r.core.source;
 
-import org.eclipse.statet.docmlet.wikitext.core.markup.IMarkupLanguage;
-import org.eclipse.statet.docmlet.wikitext.core.source.IMarkupLanguagePartitioner;
+import org.eclipse.statet.docmlet.wikitext.core.markup.WikitextMarkupLanguage;
 import org.eclipse.statet.docmlet.wikitext.core.source.MarkupLanguageDocumentSetupParticipant1;
+import org.eclipse.statet.docmlet.wikitext.core.source.MarkupLanguagePartitioner;
 import org.eclipse.statet.docmlet.wikitext.core.source.WikitextPartitioner;
-import org.eclipse.statet.docmlet.wikitext.core.source.extdoc.IExtdocMarkupLanguage;
+import org.eclipse.statet.docmlet.wikitext.core.source.extdoc.ExtdocMarkupLanguage;
 
 
 /**
@@ -27,26 +27,26 @@
 public class WikidocRweaveDocumentSetupParticipant extends MarkupLanguageDocumentSetupParticipant1 {
 	
 	
-	public WikidocRweaveDocumentSetupParticipant(final IExtdocMarkupLanguage markupLanguage) {
+	public WikidocRweaveDocumentSetupParticipant(final ExtdocMarkupLanguage markupLanguage) {
 		this(markupLanguage, false);
 	}
 	
-	public WikidocRweaveDocumentSetupParticipant(final IExtdocMarkupLanguage markupLanguage,
+	public WikidocRweaveDocumentSetupParticipant(final ExtdocMarkupLanguage markupLanguage,
 			final boolean templateMode) {
-		super(markupLanguage, (templateMode) ? IMarkupLanguage.TEMPLATE_MODE : 0);
+		super(markupLanguage, (templateMode) ? WikitextMarkupLanguage.TEMPLATE_MODE : 0);
 	}
 	
 	
 	@Override
 	public String getPartitioningId() {
-		return IWikitextRweaveDocumentConstants.WIKIDOC_R_PARTITIONING;
+		return WikitextRweaveDocumentConstants.WIKIDOC_R_PARTITIONING;
 	}
 	
 	@Override
-	protected IMarkupLanguagePartitioner createDocumentPartitioner(final IMarkupLanguage markupLanguage) {
+	protected MarkupLanguagePartitioner createDocumentPartitioner(final WikitextMarkupLanguage markupLanguage) {
 		return new WikitextPartitioner(getPartitioningId(),
 				new WikidocRweavePartitionNodeScanner(markupLanguage, getMarkupLanguageMode()),
-				IWikitextRweaveDocumentConstants.WIKIDOC_R_CONTENT_TYPES );
+				WikitextRweaveDocumentConstants.WIKIDOC_R_CONTENT_TYPES );
 	}
 	
 }
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/source/WikidocRweavePartitionNodeScanner.java b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/source/WikidocRweavePartitionNodeScanner.java
index 6005cc3..57ea766 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/source/WikidocRweavePartitionNodeScanner.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/source/WikidocRweavePartitionNodeScanner.java
@@ -19,7 +19,7 @@
 import org.eclipse.statet.ecommons.text.core.treepartitioner.ITreePartitionNode;
 import org.eclipse.statet.ecommons.text.core.treepartitioner.ITreePartitionNodeType;
 
-import org.eclipse.statet.docmlet.wikitext.core.markup.IMarkupLanguage;
+import org.eclipse.statet.docmlet.wikitext.core.markup.WikitextMarkupLanguage;
 import org.eclipse.statet.docmlet.wikitext.core.source.EmbeddingAttributes;
 import org.eclipse.statet.docmlet.wikitext.core.source.extdoc.WikidocPartitionNodeScanner;
 import org.eclipse.statet.r.core.source.RPartitionNodeType;
@@ -32,11 +32,11 @@
 	private AbstractRChunkPartitionNodeScanner rScanner;
 	
 	
-	public WikidocRweavePartitionNodeScanner(final IMarkupLanguage markupLanguage) {
+	public WikidocRweavePartitionNodeScanner(final WikitextMarkupLanguage markupLanguage) {
 		super(markupLanguage);
 	}
 	
-	public WikidocRweavePartitionNodeScanner(final IMarkupLanguage markupLanguage,
+	public WikidocRweavePartitionNodeScanner(final WikitextMarkupLanguage markupLanguage,
 			final int markupLanguageMode) {
 		super(markupLanguage, markupLanguageMode);
 	}
@@ -44,9 +44,9 @@
 	
 	@Override
 	protected void init() {
-		{	final IMarkupLanguage markupLanguage= getMarkupLanguage();
-			if (markupLanguage instanceof IRweaveMarkupLanguage) {
-				final IRweaveMarkupLanguage rweaveLanguage= (IRweaveMarkupLanguage) markupLanguage;
+		{	final WikitextMarkupLanguage markupLanguage= getMarkupLanguage();
+			if (markupLanguage instanceof RweaveMarkupLanguage) {
+				final RweaveMarkupLanguage rweaveLanguage= (RweaveMarkupLanguage) markupLanguage;
 				
 				this.rScanner= rweaveLanguage.getRChunkPartitionScanner();
 			}
@@ -79,7 +79,7 @@
 	@Override
 	protected void beginEmbeddingBlock(final BlockType type, final Embedding embedding) {
 		if (type == BlockType.CODE
-				&& embedding.getForeignType() == IRweaveMarkupLanguage.EMBEDDED_R) {
+				&& embedding.getForeignType() == RweaveMarkupLanguage.EMBEDDED_R) {
 			addNode(R_CHUNK_BASE_TYPE, getEventBeginOffset());
 			embedding.init(getNode());
 			return;
@@ -101,7 +101,7 @@
 	@Override
 	protected void beginEmbeddingSpan(final SpanType type, final Embedding embedding) {
 		if (type == SpanType.CODE
-				&& embedding.getForeignType() == IRweaveMarkupLanguage.EMBEDDED_R) {
+				&& embedding.getForeignType() == RweaveMarkupLanguage.EMBEDDED_R) {
 			final EmbeddingAttributes attributes= embedding.getAttributes();
 			addNode(this.rScanner.getDefaultRootType(),
 					getStartOffset() + attributes.getContentRegion().getStartOffset() );
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/source/IWikitextRweaveDocumentConstants.java b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/source/WikitextRweaveDocumentConstants.java
similarity index 77%
rename from redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/source/IWikitextRweaveDocumentConstants.java
rename to redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/source/WikitextRweaveDocumentConstants.java
index 3b73090..00fb438 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/source/IWikitextRweaveDocumentConstants.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/core/source/WikitextRweaveDocumentConstants.java
@@ -16,13 +16,15 @@
 
 import org.eclipse.statet.jcommons.collections.ImCollections;
 import org.eclipse.statet.jcommons.collections.ImList;
+import org.eclipse.statet.jcommons.lang.NonNullByDefault;
 
-import org.eclipse.statet.docmlet.wikitext.core.source.IWikitextDocumentConstants;
+import org.eclipse.statet.docmlet.wikitext.core.source.WikitextDocumentConstants;
 import org.eclipse.statet.r.core.source.IRDocumentConstants;
-import org.eclipse.statet.redocs.r.core.source.IRweaveDocumentConstants;
+import org.eclipse.statet.redocs.r.core.source.RweaveDocumentConstants;
 
 
-public interface IWikitextRweaveDocumentConstants extends IRweaveDocumentConstants {
+@NonNullByDefault
+public interface WikitextRweaveDocumentConstants extends RweaveDocumentConstants {
 	
 	
 	/**
@@ -35,7 +37,7 @@
 	 * List with all partition content types of Wikitext+R documents.
 	 */
 	ImList<String> WIKIDOC_R_CONTENT_TYPES= ImCollections.concatList(
-			IWikitextDocumentConstants.WIKIDOC_EXT_CONTENT_TYPES,
+			WikitextDocumentConstants.WIKIDOC_EXT_CONTENT_TYPES,
 			RCHUNK_CONTENT_TYPES,
 			IRDocumentConstants.R_CONTENT_TYPES );
 	
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/ui/editors/IWikidocRweaveEditor.java b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/ui/editors/IWikidocRweaveEditor.java
deleted file mode 100644
index 1cf0893..0000000
--- a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/ui/editors/IWikidocRweaveEditor.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*=============================================================================#
- # Copyright (c) 2007, 2019 Stephan Wahlbrink and others.
- # 
- # This program and the accompanying materials are made available under the
- # terms of the Eclipse Public License 2.0 which is available at
- # https://www.eclipse.org/legal/epl-2.0, or the Apache License, Version 2.0
- # which is available at https://www.apache.org/licenses/LICENSE-2.0.
- # 
- # SPDX-License-Identifier: EPL-2.0 OR Apache-2.0
- # 
- # Contributors:
- #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
- #=============================================================================*/
-
-package org.eclipse.statet.redocs.wikitext.r.ui.editors;
-
-import org.eclipse.statet.docmlet.wikitext.ui.editors.IWikidocEditor;
-import org.eclipse.statet.redocs.r.ui.sourceediting.IRweaveEditor;
-import org.eclipse.statet.redocs.wikitext.r.core.model.IWikidocRweaveSourceUnit;
-
-
-public interface IWikidocRweaveEditor extends IRweaveEditor, IWikidocEditor {
-	
-	
-	@Override
-	public IWikidocRweaveSourceUnit getSourceUnit();
-	
-}
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/ui/editors/WikidocRweaveDocEditor.java b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/ui/editors/WikidocRweaveDocEditor.java
new file mode 100644
index 0000000..0002d1c
--- /dev/null
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/ui/editors/WikidocRweaveDocEditor.java
@@ -0,0 +1,411 @@
+/*=============================================================================#
+ # Copyright (c) 2007, 2019 Stephan Wahlbrink and others.
+ # 
+ # This program and the accompanying materials are made available under the
+ # terms of the Eclipse Public License 2.0 which is available at
+ # https://www.eclipse.org/legal/epl-2.0, or the Apache License, Version 2.0
+ # which is available at https://www.apache.org/licenses/LICENSE-2.0.
+ # 
+ # SPDX-License-Identifier: EPL-2.0 OR Apache-2.0
+ # 
+ # Contributors:
+ #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
+ #=============================================================================*/
+
+package org.eclipse.statet.redocs.wikitext.r.ui.editors;
+
+import static org.eclipse.statet.ecommons.ui.actions.UIActions.ADDITIONS_GROUP_ID;
+
+import java.util.Collection;
+import java.util.Collections;
+import java.util.List;
+import java.util.regex.Pattern;
+
+import org.eclipse.core.commands.IHandler2;
+import org.eclipse.core.runtime.content.IContentType;
+import org.eclipse.jface.action.IContributionItem;
+import org.eclipse.jface.action.IMenuManager;
+import org.eclipse.jface.action.Separator;
+import org.eclipse.jface.text.AbstractDocument;
+import org.eclipse.jface.text.BadLocationException;
+import org.eclipse.jface.text.BadPartitioningException;
+import org.eclipse.jface.text.IRegion;
+import org.eclipse.jface.text.ITextSelection;
+import org.eclipse.ui.IEditorInput;
+import org.eclipse.ui.IPageLayout;
+import org.eclipse.ui.handlers.IHandlerService;
+import org.eclipse.ui.menus.CommandContributionItem;
+import org.eclipse.ui.menus.CommandContributionItemParameter;
+import org.eclipse.ui.texteditor.AbstractDecoratedTextEditorPreferenceConstants;
+import org.eclipse.ui.texteditor.ITextEditorActionConstants;
+import org.eclipse.ui.texteditor.templates.ITemplatesPage;
+
+import org.eclipse.statet.jcommons.collections.ImCollections;
+import org.eclipse.statet.jcommons.collections.ImList;
+import org.eclipse.statet.jcommons.lang.Nullable;
+import org.eclipse.statet.jcommons.text.core.TextRegion;
+
+import org.eclipse.statet.base.ui.IStatetUIMenuIds;
+import org.eclipse.statet.docmlet.base.ui.DocmlBaseUI;
+import org.eclipse.statet.docmlet.base.ui.markuphelp.MarkupHelpContextProvider;
+import org.eclipse.statet.docmlet.base.ui.processing.actions.RunDocProcessingOnSaveExtension;
+import org.eclipse.statet.docmlet.base.ui.sourceediting.DocEditor;
+import org.eclipse.statet.docmlet.wikitext.core.WikitextCore;
+import org.eclipse.statet.docmlet.wikitext.core.ast.WikitextAstNode;
+import org.eclipse.statet.docmlet.wikitext.core.model.WikitextModel;
+import org.eclipse.statet.docmlet.wikitext.ui.WikitextUI;
+import org.eclipse.statet.docmlet.wikitext.ui.editors.WikidocDefaultFoldingProvider;
+import org.eclipse.statet.docmlet.wikitext.ui.editors.WikitextMarkOccurrencesLocator;
+import org.eclipse.statet.docmlet.wikitext.ui.sourceediting.WikitextEditingSettings;
+import org.eclipse.statet.internal.redocs.wikitext.r.RedocsWikitextRPlugin;
+import org.eclipse.statet.internal.redocs.wikitext.r.ui.editors.WikidocRweaveEditorTemplatesPage;
+import org.eclipse.statet.internal.redocs.wikitext.r.ui.editors.WikidocRweaveOutlinePage;
+import org.eclipse.statet.ltk.ast.core.util.AstSelection;
+import org.eclipse.statet.ltk.model.core.elements.ISourceUnitModelInfo;
+import org.eclipse.statet.ltk.ui.LTKUI;
+import org.eclipse.statet.ltk.ui.sourceediting.AbstractMarkOccurrencesProvider;
+import org.eclipse.statet.ltk.ui.sourceediting.ForwardSourceDocumentProvider;
+import org.eclipse.statet.ltk.ui.sourceediting.ISourceEditorAddon;
+import org.eclipse.statet.ltk.ui.sourceediting.SourceEditor1;
+import org.eclipse.statet.ltk.ui.sourceediting.SourceEditor1OutlinePage;
+import org.eclipse.statet.ltk.ui.sourceediting.SourceEditorViewer;
+import org.eclipse.statet.ltk.ui.sourceediting.SourceEditorViewerConfigurator;
+import org.eclipse.statet.ltk.ui.sourceediting.folding.FoldingEditorAddon;
+import org.eclipse.statet.r.core.IRCoreAccess;
+import org.eclipse.statet.r.core.RCore;
+import org.eclipse.statet.r.core.rsource.ast.RAstNode;
+import org.eclipse.statet.r.core.source.IRDocumentConstants;
+import org.eclipse.statet.r.launching.RCodeLaunching;
+import org.eclipse.statet.r.ui.RUI;
+import org.eclipse.statet.r.ui.editors.IRSourceEditor;
+import org.eclipse.statet.r.ui.editors.RCorrectIndentHandler;
+import org.eclipse.statet.r.ui.editors.RDefaultFoldingProvider;
+import org.eclipse.statet.r.ui.editors.RMarkOccurrencesLocator;
+import org.eclipse.statet.r.ui.sourceediting.InsertAssignmentHandler;
+import org.eclipse.statet.redocs.r.core.source.DocContentSectionsRweaveExtension;
+import org.eclipse.statet.redocs.r.ui.RedocsRUI;
+import org.eclipse.statet.redocs.r.ui.sourceediting.actions.RweaveToggleCommentHandler;
+import org.eclipse.statet.redocs.wikitext.r.core.model.WikidocRweaveSourceUnit;
+import org.eclipse.statet.redocs.wikitext.r.core.source.RweaveMarkupLanguage;
+import org.eclipse.statet.redocs.wikitext.r.core.source.WikidocRweaveDocumentContentInfo;
+import org.eclipse.statet.redocs.wikitext.r.core.source.WikidocRweaveDocumentSetupParticipant;
+import org.eclipse.statet.redocs.wikitext.r.ui.WikitextRweaveUI;
+import org.eclipse.statet.redocs.wikitext.r.ui.sourceediting.WikidocRweaveSourceViewerConfiguration;
+import org.eclipse.statet.redocs.wikitext.r.ui.sourceediting.WikidocRweaveSourceViewerConfigurator;
+import org.eclipse.statet.rj.renv.core.REnv;
+
+
+/**
+ * Editor for Wikitext-R documents.
+ */
+public abstract class WikidocRweaveDocEditor extends SourceEditor1 implements WikidocRweaveEditor,
+		DocEditor, MarkupHelpContextProvider {
+	
+	
+	private static final ImList<String> KEY_CONTEXTS= ImCollections.newIdentityList(
+			WikitextUI.EDITOR_CONTEXT_ID,
+			DocmlBaseUI.DOC_EDITOR_CONTEXT_ID,
+			RedocsRUI.RWEAVE_EDITOR_CONTEXT_ID );
+	
+	private static final ImList<String> CONTEXT_IDS= ImCollections.concatList(
+			ACTION_SET_CONTEXT_IDS, KEY_CONTEXTS );
+	
+	
+	private static class ThisMarkOccurrencesProvider extends AbstractMarkOccurrencesProvider {
+		
+		
+		private final WikitextMarkOccurrencesLocator docLocator= new WikitextMarkOccurrencesLocator();
+		private final RMarkOccurrencesLocator rLocator= new RMarkOccurrencesLocator();
+		
+		
+		public ThisMarkOccurrencesProvider(final SourceEditor1 editor) {
+			super(editor, IRDocumentConstants.R_DEFAULT_CONTENT_CONSTRAINT);
+		}
+		
+		@Override
+		protected void doUpdate(final RunData run, final ISourceUnitModelInfo info,
+				final AstSelection astSelection, final ITextSelection orgSelection)
+				throws BadLocationException, BadPartitioningException, UnsupportedOperationException {
+			if (astSelection.getCovering() instanceof WikitextAstNode) {
+				this.docLocator.run(run, info, astSelection, orgSelection);
+			}
+			else if (astSelection.getCovering() instanceof RAstNode) {
+				this.rLocator.run(run, info, astSelection, orgSelection);
+			}
+		}
+		
+	}
+	
+	private static class ThisCorrectIndentHandler extends RCorrectIndentHandler {
+		
+		public ThisCorrectIndentHandler(final IRSourceEditor editor) {
+			super(editor);
+		}
+		
+		@Override
+		protected List<? extends TextRegion> getCodeRanges(final AbstractDocument document,
+				final ITextSelection selection) throws BadLocationException {
+			return WikidocRweaveDocumentContentInfo.INSTANCE.getRChunkCodeRegions(document,
+					selection.getOffset(), selection.getLength() );
+		}
+		
+	}
+	
+	
+	private final WikidocRweaveDocumentSetupParticipant documentSetup;
+	
+	private WikidocRweaveSourceViewerConfigurator combinedConfig;
+	
+	private final RunDocProcessingOnSaveExtension autoDocProcessing;
+	
+	
+	public WikidocRweaveDocEditor(final IContentType contentType,
+			final WikidocRweaveDocumentSetupParticipant documentSetup) {
+		super(contentType);
+		if (documentSetup == null) {
+			throw new NullPointerException("documentSetup"); //$NON-NLS-1$
+		}
+		this.documentSetup= documentSetup;
+		
+		this.autoDocProcessing= new RunDocProcessingOnSaveExtension(this);
+		
+		initializeEditor();
+	}
+	
+	
+	@Override
+	protected void initializeEditor() {
+		if (this.documentSetup == null) {
+			return;
+		}
+		
+		super.initializeEditor();
+		
+		setEditorContextMenuId("org.eclipse.statet.redocs.menus.WikidocRweaveEditorContextMenu"); //$NON-NLS-1$
+		setRulerContextMenuId("org.eclipse.statet.redocs.menus.WikidocRweaveEditorRulerMenu"); //$NON-NLS-1$
+	}
+	
+	@Override
+	protected SourceEditorViewerConfigurator createConfiguration() {
+		setDocumentProvider(new ForwardSourceDocumentProvider(
+				RedocsWikitextRPlugin.getInstance().getDocRDocumentProvider(),
+				this.documentSetup ));
+		
+		enableStructuralFeatures(WikitextModel.getWikidocModelManager(),
+				WikitextEditingSettings.FOLDING_ENABLED_PREF,
+				WikitextEditingSettings.MARKOCCURRENCES_ENABLED_PREF );
+		
+		this.combinedConfig= new WikidocRweaveSourceViewerConfigurator(
+				this.documentSetup,
+				WikitextCore.WORKBENCH_ACCESS, RCore.WORKBENCH_ACCESS,
+				new WikidocRweaveSourceViewerConfiguration(0, this, null, null, null) );
+		return this.combinedConfig;
+	}
+	
+	@Override
+	protected int getSourceViewerFlags() {
+		return SourceEditorViewer.VARIABLE_LINE_HEIGHT;
+	}
+	
+	@Override
+	protected Collection<String> getContextIds() {
+		return CONTEXT_IDS;
+	}
+	
+	@Override
+	protected ISourceEditorAddon createCodeFoldingProvider() {
+		return new FoldingEditorAddon(new WikidocDefaultFoldingProvider(Collections.singletonMap(
+				RweaveMarkupLanguage.EMBEDDED_R, new RDefaultFoldingProvider() )));
+	}
+	
+	@Override
+	protected ISourceEditorAddon createMarkOccurrencesProvider() {
+		return new ThisMarkOccurrencesProvider(this);
+	}
+	
+	
+	@Override
+	public IRCoreAccess getRCoreAccess() {
+		return this.combinedConfig.getRCoreAccess();
+	}
+	
+	@Override
+	public DocContentSectionsRweaveExtension getDocumentContentInfo() {
+		return (DocContentSectionsRweaveExtension) super.getDocumentContentInfo();
+	}
+	
+	@Override
+	public WikidocRweaveSourceUnit getSourceUnit() {
+		return (WikidocRweaveSourceUnit) super.getSourceUnit();
+	}
+	
+	@Override
+	protected void setupConfiguration(final IEditorInput newInput) {
+		super.setupConfiguration(newInput);
+		
+		final WikidocRweaveSourceUnit su= getSourceUnit();
+		this.combinedConfig.setSource(
+				(su != null) ? su.getWikitextCoreAccess() : WikitextCore.WORKBENCH_ACCESS,
+				(su != null) ? su.getRCoreAccess() : RCore.WORKBENCH_ACCESS );
+		
+		this.autoDocProcessing.setAutoRunEnabled(false);
+	}
+	
+	
+	@Override
+	protected void handlePreferenceStoreChanged(final org.eclipse.jface.util.PropertyChangeEvent event) {
+		if (AbstractDecoratedTextEditorPreferenceConstants.EDITOR_TAB_WIDTH.equals(event.getProperty())
+				|| AbstractDecoratedTextEditorPreferenceConstants.EDITOR_SPACES_FOR_TABS.equals(event.getProperty())) {
+			return;
+		}
+		super.handlePreferenceStoreChanged(event);
+	}
+	
+	
+	@Override
+	protected boolean isTabsToSpacesConversionEnabled() {
+		return false;
+	}
+	
+	public void updateSettings(final boolean indentChanged) {
+		if (indentChanged) {
+			updateIndentPrefixes();
+		}
+	}
+	
+	
+	@Override
+	protected void collectContextMenuPreferencePages(final List<String> pageIds) {
+		super.collectContextMenuPreferencePages(pageIds);
+		pageIds.add(WikitextRweaveUI.EDITOR_PREF_PAGE_ID);
+		pageIds.add(WikitextUI.EDITOR_PREF_PAGE_ID);
+		pageIds.add("org.eclipse.mylyn.internal.wikitext.ui.editor.preferences.WikiTextTemplatePreferencePage"); //$NON-NLS-1$
+		pageIds.add("org.eclipse.statet.docmlet.preferencePages.WikitextCodeStyle"); //$NON-NLS-1$
+		pageIds.add("org.eclipse.statet.r.preferencePages.REditorOptions"); //$NON-NLS-1$
+		pageIds.add("org.eclipse.statet.r.preferencePages.RTextStyles"); //$NON-NLS-1$
+		pageIds.add("org.eclipse.statet.r.preferencePages.REditorTemplates"); //$NON-NLS-1$
+		pageIds.add("org.eclipse.statet.r.preferencePages.RCodeStyle"); //$NON-NLS-1$
+	}
+	
+	@Override
+	protected void createActions() {
+		super.createActions();
+		final IHandlerService handlerService= getServiceLocator()
+				.getService(IHandlerService.class);
+		
+		{	final IHandler2 handler= new InsertAssignmentHandler(this);
+			handlerService.activateHandler(LTKUI.INSERT_ASSIGNMENT_COMMAND_ID, handler);
+			markAsStateDependentHandler(handler, true);
+		}
+	}
+	
+	@Override
+	protected IHandler2 createToggleCommentHandler() {
+		final IHandler2 handler= new RweaveToggleCommentHandler(this) {
+			@Override
+			protected Pattern getPrefixPattern(final String contentType, final String prefix) {
+				if (prefix.equals("<!--")) { //$NON-NLS-1$
+					return HTML_SPACE_PREFIX_PATTERN;
+				}
+				return super.getPrefixPattern(contentType, prefix);
+			}
+			@Override
+			protected Pattern getPostfixPattern(final String contentType, final String prefix) {
+				if (prefix.equals("<!--")) { //$NON-NLS-1$
+					return HTML_SPACE_POSTFIX_PATTERN;
+				}
+				return super.getPostfixPattern(contentType, prefix);
+			}
+			@Override
+			protected void doPrefixPrimary(final AbstractDocument document, final IRegion block)
+					throws BadLocationException, BadPartitioningException {
+				doPrefix(document, block, "<!-- ", " -->"); //$NON-NLS-1$ //$NON-NLS-2$
+			}
+		};
+		markAsStateDependentHandler(handler, true);
+		return handler;
+	}
+	
+	@Override
+	protected IHandler2 createCorrectIndentHandler() {
+		final IHandler2 handler= new ThisCorrectIndentHandler(this);
+		markAsStateDependentHandler(handler, true);
+		return handler;
+	}
+	
+	@Override
+	protected void editorContextMenuAboutToShow(final IMenuManager m) {
+		super.editorContextMenuAboutToShow(m);
+		final WikidocRweaveSourceUnit su= getSourceUnit();
+		
+		m.insertBefore(ADDITIONS_GROUP_ID, new Separator(IStatetUIMenuIds.GROUP_SUBMIT_MENU_ID));
+		final IContributionItem additions= m.find(ADDITIONS_GROUP_ID);
+		if (additions != null) {
+			additions.setVisible(false);
+		}
+		
+		m.remove(ITextEditorActionConstants.SHIFT_RIGHT);
+		m.remove(ITextEditorActionConstants.SHIFT_LEFT);
+		
+		m.appendToGroup(IStatetUIMenuIds.GROUP_SUBMIT_MENU_ID, new CommandContributionItem(
+				new CommandContributionItemParameter(getSite(), null,
+						RCodeLaunching.SUBMIT_SELECTION_COMMAND_ID,
+						CommandContributionItem.STYLE_PUSH )));
+		m.appendToGroup(IStatetUIMenuIds.GROUP_SUBMIT_MENU_ID, new CommandContributionItem(
+				new CommandContributionItemParameter(getSite(), null,
+						RCodeLaunching.SUBMIT_UPTO_SELECTION_COMMAND_ID,
+						CommandContributionItem.STYLE_PUSH )));
+		
+		m.appendToGroup(ITextEditorActionConstants.GROUP_SETTINGS, new CommandContributionItem(
+				new CommandContributionItemParameter(getSite(), null,
+						DocmlBaseUI.CONFIGURE_MARKUP_COMMAND_ID, null,
+						null, null, null,
+						"Configure Markup...", "M", null,
+						CommandContributionItem.STYLE_PUSH, null, false )));
+	}
+	
+	
+	@Override
+	protected void editorSaved() {
+		super.editorSaved();
+		
+		this.autoDocProcessing.onEditorSaved();
+	}
+	
+	
+	@Override
+	protected SourceEditor1OutlinePage createOutlinePage() {
+		return new WikidocRweaveOutlinePage(this);
+	}
+	
+	@Override
+	protected ITemplatesPage createTemplatesPage() {
+		return new WikidocRweaveEditorTemplatesPage(this, getSourceViewer());
+	}
+	
+	@Override
+	public String[] getShowInTargetIds() {
+		return new String[] { IPageLayout.ID_PROJECT_EXPLORER, IPageLayout.ID_OUTLINE, RUI.R_HELP_VIEW_ID };
+	}
+	
+	@Override
+	public @Nullable String getHelpContentId() {
+		return WikitextUI.getMarkupHelpContentIdFor(this.documentSetup.getMarkupLanguage());
+	}
+	
+	@Override
+	@SuppressWarnings("unchecked")
+	public <T> T getAdapter(final Class<T> adapterType) {
+		if (adapterType == MarkupHelpContextProvider.class) {
+			return (T) this;
+		}
+		if (adapterType == RunDocProcessingOnSaveExtension.class) {
+			return (T) this.autoDocProcessing;
+		}
+		if (adapterType == REnv.class) {
+			return (T) getRCoreAccess().getREnv();
+		}
+		return super.getAdapter(adapterType);
+	}
+	
+}
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/ui/editors/WikidocRweaveEditor.java b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/ui/editors/WikidocRweaveEditor.java
index 497872b..08b7da3 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/ui/editors/WikidocRweaveEditor.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/ui/editors/WikidocRweaveEditor.java
@@ -14,397 +14,15 @@
 
 package org.eclipse.statet.redocs.wikitext.r.ui.editors;
 
-import static org.eclipse.statet.ecommons.ui.actions.UIActions.ADDITIONS_GROUP_ID;
-
-import java.util.Collection;
-import java.util.Collections;
-import java.util.List;
-import java.util.regex.Pattern;
-
-import org.eclipse.core.commands.IHandler2;
-import org.eclipse.core.runtime.content.IContentType;
-import org.eclipse.jface.action.IContributionItem;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.Separator;
-import org.eclipse.jface.text.AbstractDocument;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.BadPartitioningException;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ITextSelection;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IPageLayout;
-import org.eclipse.ui.handlers.IHandlerService;
-import org.eclipse.ui.menus.CommandContributionItem;
-import org.eclipse.ui.menus.CommandContributionItemParameter;
-import org.eclipse.ui.texteditor.AbstractDecoratedTextEditorPreferenceConstants;
-import org.eclipse.ui.texteditor.ITextEditorActionConstants;
-import org.eclipse.ui.texteditor.templates.ITemplatesPage;
-
-import org.eclipse.statet.jcommons.collections.ImCollections;
-import org.eclipse.statet.jcommons.collections.ImList;
-import org.eclipse.statet.jcommons.text.core.TextRegion;
-
-import org.eclipse.statet.base.ui.IStatetUIMenuIds;
-import org.eclipse.statet.docmlet.base.ui.DocBaseUI;
-import org.eclipse.statet.docmlet.base.ui.markuphelp.IMarkupHelpContextProvider;
-import org.eclipse.statet.docmlet.base.ui.processing.actions.RunDocProcessingOnSaveExtension;
-import org.eclipse.statet.docmlet.base.ui.sourceediting.IDocEditor;
-import org.eclipse.statet.docmlet.wikitext.core.WikitextCore;
-import org.eclipse.statet.docmlet.wikitext.core.ast.WikitextAstNode;
-import org.eclipse.statet.docmlet.wikitext.core.model.WikitextModel;
-import org.eclipse.statet.docmlet.wikitext.ui.WikitextUI;
-import org.eclipse.statet.docmlet.wikitext.ui.editors.WikidocDefaultFoldingProvider;
-import org.eclipse.statet.docmlet.wikitext.ui.editors.WikitextMarkOccurrencesLocator;
-import org.eclipse.statet.docmlet.wikitext.ui.sourceediting.WikitextEditingSettings;
-import org.eclipse.statet.internal.redocs.wikitext.r.RedocsWikitextRPlugin;
-import org.eclipse.statet.internal.redocs.wikitext.r.ui.editors.WikidocRweaveEditorTemplatesPage;
-import org.eclipse.statet.internal.redocs.wikitext.r.ui.editors.WikidocRweaveOutlinePage;
-import org.eclipse.statet.ltk.ast.core.util.AstSelection;
-import org.eclipse.statet.ltk.model.core.elements.ISourceUnitModelInfo;
-import org.eclipse.statet.ltk.ui.LTKUI;
-import org.eclipse.statet.ltk.ui.sourceediting.AbstractMarkOccurrencesProvider;
-import org.eclipse.statet.ltk.ui.sourceediting.ForwardSourceDocumentProvider;
-import org.eclipse.statet.ltk.ui.sourceediting.ISourceEditorAddon;
-import org.eclipse.statet.ltk.ui.sourceediting.SourceEditor1;
-import org.eclipse.statet.ltk.ui.sourceediting.SourceEditor1OutlinePage;
-import org.eclipse.statet.ltk.ui.sourceediting.SourceEditorViewer;
-import org.eclipse.statet.ltk.ui.sourceediting.SourceEditorViewerConfigurator;
-import org.eclipse.statet.ltk.ui.sourceediting.folding.FoldingEditorAddon;
-import org.eclipse.statet.r.core.IRCoreAccess;
-import org.eclipse.statet.r.core.RCore;
-import org.eclipse.statet.r.core.rsource.ast.RAstNode;
-import org.eclipse.statet.r.core.source.IRDocumentConstants;
-import org.eclipse.statet.r.launching.RCodeLaunching;
-import org.eclipse.statet.r.ui.RUI;
-import org.eclipse.statet.r.ui.editors.IRSourceEditor;
-import org.eclipse.statet.r.ui.editors.RCorrectIndentHandler;
-import org.eclipse.statet.r.ui.editors.RDefaultFoldingProvider;
-import org.eclipse.statet.r.ui.editors.RMarkOccurrencesLocator;
-import org.eclipse.statet.r.ui.sourceediting.InsertAssignmentHandler;
-import org.eclipse.statet.redocs.r.core.source.IDocContentSectionsRweaveExtension;
-import org.eclipse.statet.redocs.r.ui.RedocsRUI;
-import org.eclipse.statet.redocs.r.ui.sourceediting.actions.RweaveToggleCommentHandler;
-import org.eclipse.statet.redocs.wikitext.r.core.model.IWikidocRweaveSourceUnit;
-import org.eclipse.statet.redocs.wikitext.r.core.source.IRweaveMarkupLanguage;
-import org.eclipse.statet.redocs.wikitext.r.core.source.WikidocRweaveDocumentContentInfo;
-import org.eclipse.statet.redocs.wikitext.r.core.source.WikidocRweaveDocumentSetupParticipant;
-import org.eclipse.statet.redocs.wikitext.r.ui.WikitextRweaveUI;
-import org.eclipse.statet.redocs.wikitext.r.ui.sourceediting.WikidocRweaveSourceViewerConfiguration;
-import org.eclipse.statet.redocs.wikitext.r.ui.sourceediting.WikidocRweaveSourceViewerConfigurator;
-import org.eclipse.statet.rj.renv.core.REnv;
+import org.eclipse.statet.docmlet.wikitext.ui.editors.WikidocEditor;
+import org.eclipse.statet.redocs.r.ui.sourceediting.RweaveEditor;
+import org.eclipse.statet.redocs.wikitext.r.core.model.WikidocRweaveSourceUnit;
 
 
-/**
- * Editor for Wikitext-R documents.
- */
-public abstract class WikidocRweaveEditor extends SourceEditor1 implements IWikidocRweaveEditor,
-		IDocEditor, IMarkupHelpContextProvider {
-	
-	
-	private static final ImList<String> KEY_CONTEXTS= ImCollections.newIdentityList(
-			WikitextUI.EDITOR_CONTEXT_ID,
-			DocBaseUI.DOC_EDITOR_CONTEXT_ID,
-			RedocsRUI.RWEAVE_EDITOR_CONTEXT_ID );
-	
-	private static final ImList<String> CONTEXT_IDS= ImCollections.concatList(
-			ACTION_SET_CONTEXT_IDS, KEY_CONTEXTS );
-	
-	
-	private static class ThisMarkOccurrencesProvider extends AbstractMarkOccurrencesProvider {
-		
-		
-		private final WikitextMarkOccurrencesLocator docLocator= new WikitextMarkOccurrencesLocator();
-		private final RMarkOccurrencesLocator rLocator= new RMarkOccurrencesLocator();
-		
-		
-		public ThisMarkOccurrencesProvider(final SourceEditor1 editor) {
-			super(editor, IRDocumentConstants.R_DEFAULT_CONTENT_CONSTRAINT);
-		}
-		
-		@Override
-		protected void doUpdate(final RunData run, final ISourceUnitModelInfo info,
-				final AstSelection astSelection, final ITextSelection orgSelection)
-				throws BadLocationException, BadPartitioningException, UnsupportedOperationException {
-			if (astSelection.getCovering() instanceof WikitextAstNode) {
-				this.docLocator.run(run, info, astSelection, orgSelection);
-			}
-			else if (astSelection.getCovering() instanceof RAstNode) {
-				this.rLocator.run(run, info, astSelection, orgSelection);
-			}
-		}
-		
-	}
-	
-	private static class ThisCorrectIndentHandler extends RCorrectIndentHandler {
-		
-		public ThisCorrectIndentHandler(final IRSourceEditor editor) {
-			super(editor);
-		}
-		
-		@Override
-		protected List<? extends TextRegion> getCodeRanges(final AbstractDocument document,
-				final ITextSelection selection) throws BadLocationException {
-			return WikidocRweaveDocumentContentInfo.INSTANCE.getRChunkCodeRegions(document,
-					selection.getOffset(), selection.getLength() );
-		}
-		
-	}
-	
-	
-	private final WikidocRweaveDocumentSetupParticipant documentSetup;
-	
-	private WikidocRweaveSourceViewerConfigurator combinedConfig;
-	
-	private final RunDocProcessingOnSaveExtension autoDocProcessing;
-	
-	
-	public WikidocRweaveEditor(final IContentType contentType,
-			final WikidocRweaveDocumentSetupParticipant documentSetup) {
-		super(contentType);
-		if (documentSetup == null) {
-			throw new NullPointerException("documentSetup"); //$NON-NLS-1$
-		}
-		this.documentSetup= documentSetup;
-		
-		this.autoDocProcessing= new RunDocProcessingOnSaveExtension(this);
-		
-		initializeEditor();
-	}
+public interface WikidocRweaveEditor extends RweaveEditor, WikidocEditor {
 	
 	
 	@Override
-	protected void initializeEditor() {
-		if (this.documentSetup == null) {
-			return;
-		}
-		
-		super.initializeEditor();
-		
-		setEditorContextMenuId("org.eclipse.statet.redocs.menus.WikidocRweaveEditorContextMenu"); //$NON-NLS-1$
-		setRulerContextMenuId("org.eclipse.statet.redocs.menus.WikidocRweaveEditorRulerMenu"); //$NON-NLS-1$
-	}
-	
-	@Override
-	protected SourceEditorViewerConfigurator createConfiguration() {
-		setDocumentProvider(new ForwardSourceDocumentProvider(
-				RedocsWikitextRPlugin.getInstance().getDocRDocumentProvider(),
-				this.documentSetup ));
-		
-		enableStructuralFeatures(WikitextModel.getWikidocModelManager(),
-				WikitextEditingSettings.FOLDING_ENABLED_PREF,
-				WikitextEditingSettings.MARKOCCURRENCES_ENABLED_PREF );
-		
-		this.combinedConfig= new WikidocRweaveSourceViewerConfigurator(
-				this.documentSetup,
-				WikitextCore.WORKBENCH_ACCESS, RCore.WORKBENCH_ACCESS,
-				new WikidocRweaveSourceViewerConfiguration(0, this, null, null, null) );
-		return this.combinedConfig;
-	}
-	
-	@Override
-	protected int getSourceViewerFlags() {
-		return SourceEditorViewer.VARIABLE_LINE_HEIGHT;
-	}
-	
-	@Override
-	protected Collection<String> getContextIds() {
-		return CONTEXT_IDS;
-	}
-	
-	@Override
-	protected ISourceEditorAddon createCodeFoldingProvider() {
-		return new FoldingEditorAddon(new WikidocDefaultFoldingProvider(Collections.singletonMap(
-				IRweaveMarkupLanguage.EMBEDDED_R, new RDefaultFoldingProvider() )));
-	}
-	
-	@Override
-	protected ISourceEditorAddon createMarkOccurrencesProvider() {
-		return new ThisMarkOccurrencesProvider(this);
-	}
-	
-	
-	@Override
-	public IRCoreAccess getRCoreAccess() {
-		return this.combinedConfig.getRCoreAccess();
-	}
-	
-	@Override
-	public IDocContentSectionsRweaveExtension getDocumentContentInfo() {
-		return (IDocContentSectionsRweaveExtension) super.getDocumentContentInfo();
-	}
-	
-	@Override
-	public IWikidocRweaveSourceUnit getSourceUnit() {
-		return (IWikidocRweaveSourceUnit) super.getSourceUnit();
-	}
-	
-	@Override
-	protected void setupConfiguration(final IEditorInput newInput) {
-		super.setupConfiguration(newInput);
-		
-		final IWikidocRweaveSourceUnit su= getSourceUnit();
-		this.combinedConfig.setSource(
-				(su != null) ? su.getWikitextCoreAccess() : WikitextCore.WORKBENCH_ACCESS,
-				(su != null) ? su.getRCoreAccess() : RCore.WORKBENCH_ACCESS );
-		
-		this.autoDocProcessing.setAutoRunEnabled(false);
-	}
-	
-	
-	@Override
-	protected void handlePreferenceStoreChanged(final org.eclipse.jface.util.PropertyChangeEvent event) {
-		if (AbstractDecoratedTextEditorPreferenceConstants.EDITOR_TAB_WIDTH.equals(event.getProperty())
-				|| AbstractDecoratedTextEditorPreferenceConstants.EDITOR_SPACES_FOR_TABS.equals(event.getProperty())) {
-			return;
-		}
-		super.handlePreferenceStoreChanged(event);
-	}
-	
-	
-	@Override
-	protected boolean isTabsToSpacesConversionEnabled() {
-		return false;
-	}
-	
-	public void updateSettings(final boolean indentChanged) {
-		if (indentChanged) {
-			updateIndentPrefixes();
-		}
-	}
-	
-	
-	@Override
-	protected void collectContextMenuPreferencePages(final List<String> pageIds) {
-		super.collectContextMenuPreferencePages(pageIds);
-		pageIds.add(WikitextRweaveUI.EDITOR_PREF_PAGE_ID);
-		pageIds.add(WikitextUI.EDITOR_PREF_PAGE_ID);
-		pageIds.add("org.eclipse.mylyn.internal.wikitext.ui.editor.preferences.WikiTextTemplatePreferencePage"); //$NON-NLS-1$
-		pageIds.add("org.eclipse.statet.docmlet.preferencePages.WikitextCodeStyle"); //$NON-NLS-1$
-		pageIds.add("org.eclipse.statet.r.preferencePages.REditorOptions"); //$NON-NLS-1$
-		pageIds.add("org.eclipse.statet.r.preferencePages.RTextStyles"); //$NON-NLS-1$
-		pageIds.add("org.eclipse.statet.r.preferencePages.REditorTemplates"); //$NON-NLS-1$
-		pageIds.add("org.eclipse.statet.r.preferencePages.RCodeStyle"); //$NON-NLS-1$
-	}
-	
-	@Override
-	protected void createActions() {
-		super.createActions();
-		final IHandlerService handlerService= getServiceLocator()
-				.getService(IHandlerService.class);
-		
-		{	final IHandler2 handler= new InsertAssignmentHandler(this);
-			handlerService.activateHandler(LTKUI.INSERT_ASSIGNMENT_COMMAND_ID, handler);
-			markAsStateDependentHandler(handler, true);
-		}
-	}
-	
-	@Override
-	protected IHandler2 createToggleCommentHandler() {
-		final IHandler2 handler= new RweaveToggleCommentHandler(this) {
-			@Override
-			protected Pattern getPrefixPattern(final String contentType, final String prefix) {
-				if (prefix.equals("<!--")) { //$NON-NLS-1$
-					return HTML_SPACE_PREFIX_PATTERN;
-				}
-				return super.getPrefixPattern(contentType, prefix);
-			}
-			@Override
-			protected Pattern getPostfixPattern(final String contentType, final String prefix) {
-				if (prefix.equals("<!--")) { //$NON-NLS-1$
-					return HTML_SPACE_POSTFIX_PATTERN;
-				}
-				return super.getPostfixPattern(contentType, prefix);
-			}
-			@Override
-			protected void doPrefixPrimary(final AbstractDocument document, final IRegion block)
-					throws BadLocationException, BadPartitioningException {
-				doPrefix(document, block, "<!-- ", " -->"); //$NON-NLS-1$ //$NON-NLS-2$
-			}
-		};
-		markAsStateDependentHandler(handler, true);
-		return handler;
-	}
-	
-	@Override
-	protected IHandler2 createCorrectIndentHandler() {
-		final IHandler2 handler= new ThisCorrectIndentHandler(this);
-		markAsStateDependentHandler(handler, true);
-		return handler;
-	}
-	
-	@Override
-	protected void editorContextMenuAboutToShow(final IMenuManager m) {
-		super.editorContextMenuAboutToShow(m);
-		final IWikidocRweaveSourceUnit su= getSourceUnit();
-		
-		m.insertBefore(ADDITIONS_GROUP_ID, new Separator(IStatetUIMenuIds.GROUP_SUBMIT_MENU_ID));
-		final IContributionItem additions= m.find(ADDITIONS_GROUP_ID);
-		if (additions != null) {
-			additions.setVisible(false);
-		}
-		
-		m.remove(ITextEditorActionConstants.SHIFT_RIGHT);
-		m.remove(ITextEditorActionConstants.SHIFT_LEFT);
-		
-		m.appendToGroup(IStatetUIMenuIds.GROUP_SUBMIT_MENU_ID, new CommandContributionItem(
-				new CommandContributionItemParameter(getSite(), null,
-						RCodeLaunching.SUBMIT_SELECTION_COMMAND_ID,
-						CommandContributionItem.STYLE_PUSH )));
-		m.appendToGroup(IStatetUIMenuIds.GROUP_SUBMIT_MENU_ID, new CommandContributionItem(
-				new CommandContributionItemParameter(getSite(), null,
-						RCodeLaunching.SUBMIT_UPTO_SELECTION_COMMAND_ID,
-						CommandContributionItem.STYLE_PUSH )));
-		
-		m.appendToGroup(ITextEditorActionConstants.GROUP_SETTINGS, new CommandContributionItem(
-				new CommandContributionItemParameter(getSite(), null,
-						DocBaseUI.CONFIGURE_MARKUP_COMMAND_ID, null,
-						null, null, null,
-						"Configure Markup...", "M", null,
-						CommandContributionItem.STYLE_PUSH, null, false )));
-	}
-	
-	
-	@Override
-	protected void editorSaved() {
-		super.editorSaved();
-		
-		this.autoDocProcessing.onEditorSaved();
-	}
-	
-	
-	@Override
-	protected SourceEditor1OutlinePage createOutlinePage() {
-		return new WikidocRweaveOutlinePage(this);
-	}
-	
-	@Override
-	protected ITemplatesPage createTemplatesPage() {
-		return new WikidocRweaveEditorTemplatesPage(this, getSourceViewer());
-	}
-	
-	@Override
-	public String[] getShowInTargetIds() {
-		return new String[] { IPageLayout.ID_PROJECT_EXPLORER, IPageLayout.ID_OUTLINE, RUI.R_HELP_VIEW_ID };
-	}
-	
-	@Override
-	public String getHelpContentId() {
-		return WikitextUI.getMarkupHelpContentIdFor(this.documentSetup.getMarkupLanguage());
-	}
-	
-	@Override
-	@SuppressWarnings("unchecked")
-	public <T> T getAdapter(final Class<T> adapterType) {
-		if (adapterType == IMarkupHelpContextProvider.class) {
-			return (T) this;
-		}
-		if (adapterType == RunDocProcessingOnSaveExtension.class) {
-			return (T) this.autoDocProcessing;
-		}
-		if (adapterType == REnv.class) {
-			return (T) getRCoreAccess().getREnv();
-		}
-		return super.getAdapter(adapterType);
-	}
+	public WikidocRweaveSourceUnit getSourceUnit();
 	
 }
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/ui/sourceediting/WikidocRweaveSourceViewerConfiguration.java b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/ui/sourceediting/WikidocRweaveSourceViewerConfiguration.java
index caa2e30..60672d3 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/ui/sourceediting/WikidocRweaveSourceViewerConfiguration.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/ui/sourceediting/WikidocRweaveSourceViewerConfiguration.java
@@ -39,8 +39,8 @@
 import org.eclipse.statet.ecommons.text.ui.settings.TextStyleManager;
 
 import org.eclipse.statet.docmlet.tex.ui.sourceediting.LtxSourceViewerConfiguration;
-import org.eclipse.statet.docmlet.wikitext.core.IWikitextCoreAccess;
-import org.eclipse.statet.docmlet.wikitext.core.source.IWikitextDocumentConstants;
+import org.eclipse.statet.docmlet.wikitext.core.WikitextCoreAccess;
+import org.eclipse.statet.docmlet.wikitext.core.source.WikitextDocumentConstants;
 import org.eclipse.statet.docmlet.wikitext.ui.sourceediting.WikidocSourceViewerConfiguration;
 import org.eclipse.statet.internal.redocs.wikitext.r.RedocsWikitextRPlugin;
 import org.eclipse.statet.internal.redocs.wikitext.r.ui.sourceediting.DocRQuickOutlineInformationProvider;
@@ -64,10 +64,10 @@
 import org.eclipse.statet.r.ui.sourceediting.RSourceViewerConfiguration;
 import org.eclipse.statet.r.ui.text.r.IRTextTokens;
 import org.eclipse.statet.r.ui.text.r.RDoubleClickStrategy;
-import org.eclipse.statet.redocs.wikitext.r.core.source.IWikitextRweaveDocumentConstants;
 import org.eclipse.statet.redocs.wikitext.r.core.source.WikidocRweaveBracketPairMatcher;
 import org.eclipse.statet.redocs.wikitext.r.core.source.WikidocRweaveDocumentContentInfo;
-import org.eclipse.statet.redocs.wikitext.r.ui.editors.IWikidocRweaveEditor;
+import org.eclipse.statet.redocs.wikitext.r.core.source.WikitextRweaveDocumentConstants;
+import org.eclipse.statet.redocs.wikitext.r.ui.editors.WikidocRweaveEditor;
 import org.eclipse.statet.yaml.ui.sourceediting.YamlSourceViewerConfiguration;
 
 
@@ -77,21 +77,21 @@
 public class WikidocRweaveSourceViewerConfiguration extends MultiContentSectionSourceViewerConfiguration {
 	
 	
-	private static final String[] CONTENT_TYPES= IWikitextRweaveDocumentConstants.WIKIDOC_R_CONTENT_TYPES.toArray(
-			new String[IWikitextRweaveDocumentConstants.WIKIDOC_R_CONTENT_TYPES.size()]);
+	private static final String[] CONTENT_TYPES= WikitextRweaveDocumentConstants.WIKIDOC_R_CONTENT_TYPES.toArray(
+			new String[WikitextRweaveDocumentConstants.WIKIDOC_R_CONTENT_TYPES.size()]);
 	
 	
 	private static class WikidocConfiguration extends WikidocSourceViewerConfiguration {
 		
 		public WikidocConfiguration(final IDocContentSections documentContentInfo, final int flags,
 				final ISourceEditor editor,
-				final IWikitextCoreAccess wikitextCoreAccess,
+				final WikitextCoreAccess wikitextCoreAccess,
 				final IPreferenceStore preferenceStore) {
 			super(documentContentInfo, flags, editor, wikitextCoreAccess, preferenceStore);
 		}
 		
 		@Override
-		protected void setCoreAccess(final IWikitextCoreAccess access) {
+		protected void setCoreAccess(final WikitextCoreAccess access) {
 			super.setCoreAccess(access);
 		}
 		
@@ -124,7 +124,7 @@
 				case '\"':
 				case '\'':
 					return TreePartitionUtils.searchPartitionRegion(partition,
-							IWikitextRweaveDocumentConstants.RCHUNK_PARTITION_CONSTRAINT );
+							WikitextRweaveDocumentConstants.RCHUNK_PARTITION_CONSTRAINT );
 				}
 				return null;
 			default:
@@ -178,8 +178,8 @@
 	}
 	
 	public WikidocRweaveSourceViewerConfiguration(final int flags,
-			final IWikidocRweaveEditor sourceEditor,
-			final IWikitextCoreAccess wikitextCoreAccess, final IRCoreAccess rCoreAccess,
+			final WikidocRweaveEditor sourceEditor,
+			final WikitextCoreAccess wikitextCoreAccess, final IRCoreAccess rCoreAccess,
 			final IPreferenceStore preferenceStore) {
 		super(WikidocRweaveDocumentContentInfo.INSTANCE, flags, sourceEditor);
 		
@@ -209,22 +209,22 @@
 	protected void initScanners() {
 		final TextStyleManager textStyles= this.rConfig.getTextStyles();
 		
-		addScanner(IWikitextRweaveDocumentConstants.RCHUNK_BASE_CONTENT_TYPE,
+		addScanner(WikitextRweaveDocumentConstants.RCHUNK_BASE_CONTENT_TYPE,
 				new SingleTokenScanner(textStyles, IRTextTokens.UNDEFINED_KEY ));
 	}
 	
 	@Override
 	protected ITokenScanner getScanner(final String contentType) {
-		if (contentType == IWikitextRweaveDocumentConstants.RCHUNK_CONTROL_CONTENT_TYPE) {
+		if (contentType == WikitextRweaveDocumentConstants.RCHUNK_CONTROL_CONTENT_TYPE) {
 			return this.rConfig.getScanner(IRDocumentConstants.R_DEFAULT_CONTENT_TYPE);
 		}
-		if (contentType == IWikitextRweaveDocumentConstants.RCHUNK_COMMENT_CONTENT_TYPE) {
+		if (contentType == WikitextRweaveDocumentConstants.RCHUNK_COMMENT_CONTENT_TYPE) {
 			return this.rConfig.getScanner(IRDocumentConstants.R_COMMENT_CONTENT_TYPE);
 		}
 		return super.getScanner(contentType);
 	}
 	
-	protected void setCoreAccess(final IWikitextCoreAccess wikitextCoreAccess, final IRCoreAccess rCoreAccess) {
+	protected void setCoreAccess(final WikitextCoreAccess wikitextCoreAccess, final IRCoreAccess rCoreAccess) {
 		this.docConfig.setCoreAccess(wikitextCoreAccess);
 		this.rConfig.setCoreAccess(rCoreAccess);
 	}
@@ -239,7 +239,7 @@
 	protected void initPresentationReconciler(final PresentationReconciler reconciler) {
 		super.initPresentationReconciler(reconciler);
 		
-		for (final String contentType : IWikitextRweaveDocumentConstants.RCHUNK_CONTENT_TYPES) {
+		for (final String contentType : WikitextRweaveDocumentConstants.RCHUNK_CONTENT_TYPES) {
 			final ITokenScanner scanner= getScanner(contentType);
 			if (scanner != null) {
 				final DefaultDamagerRepairer dr= new DefaultDamagerRepairer(scanner);
@@ -294,20 +294,20 @@
 		final IContentAssistComputer chunkComputer= new RChunkTemplateCompletionComputer();
 		
 		final ContentAssistProcessor wikitextProcessor= (ContentAssistProcessor) assistant.getContentAssistProcessor(
-				IWikitextDocumentConstants.WIKIDOC_DEFAULT_CONTENT_TYPE );
+				WikitextDocumentConstants.WIKIDOC_DEFAULT_CONTENT_TYPE );
 		wikitextProcessor.addCategory(new ContentAssistCategory(
-				IWikitextDocumentConstants.WIKIDOC_DEFAULT_CONTENT_TYPE,
+				WikitextDocumentConstants.WIKIDOC_DEFAULT_CONTENT_TYPE,
 				ImCollections.newList(chunkComputer) ));
 //		wikitextProcessor.setCompletionProposalAutoActivationCharacters(new char[] { '\\', '<' });
 		
 		final ContentAssistProcessor controlProcessor= new ContentAssistProcessor(assistant,
-				IWikitextRweaveDocumentConstants.RCHUNK_BASE_CONTENT_TYPE,
+				WikitextRweaveDocumentConstants.RCHUNK_BASE_CONTENT_TYPE,
 				RedocsWikitextRPlugin.getInstance().getWikidocRweaveEditorContentAssistRegistry(),
 				getSourceEditor() );
-		controlProcessor.addCategory(new ContentAssistCategory(IWikitextRweaveDocumentConstants.RCHUNK_BASE_CONTENT_TYPE,
+		controlProcessor.addCategory(new ContentAssistCategory(WikitextRweaveDocumentConstants.RCHUNK_BASE_CONTENT_TYPE,
 				ImCollections.newList(chunkComputer) ));
-		assistant.setContentAssistProcessor(controlProcessor, IWikitextRweaveDocumentConstants.RCHUNK_BASE_CONTENT_TYPE);
-		assistant.setContentAssistProcessor(controlProcessor, IWikitextRweaveDocumentConstants.RCHUNK_CONTROL_CONTENT_TYPE);
+		assistant.setContentAssistProcessor(controlProcessor, WikitextRweaveDocumentConstants.RCHUNK_BASE_CONTENT_TYPE);
+		assistant.setContentAssistProcessor(controlProcessor, WikitextRweaveDocumentConstants.RCHUNK_CONTROL_CONTENT_TYPE);
 	}
 	
 	
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/ui/sourceediting/WikidocRweaveSourceViewerConfigurator.java b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/ui/sourceediting/WikidocRweaveSourceViewerConfigurator.java
index db8bbcb..ab59043 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/ui/sourceediting/WikidocRweaveSourceViewerConfigurator.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/ui/sourceediting/WikidocRweaveSourceViewerConfigurator.java
@@ -22,8 +22,8 @@
 import org.eclipse.core.filebuffers.IDocumentSetupParticipant;
 
 import org.eclipse.statet.base.core.preferences.TaskTagsPreferences;
-import org.eclipse.statet.docmlet.wikitext.core.IWikitextCoreAccess;
 import org.eclipse.statet.docmlet.wikitext.core.WikitextCodeStyleSettings;
+import org.eclipse.statet.docmlet.wikitext.core.WikitextCoreAccess;
 import org.eclipse.statet.docmlet.wikitext.core.util.WikitextCoreAccessWrapper;
 import org.eclipse.statet.internal.r.ui.RUIPreferenceInitializer;
 import org.eclipse.statet.ltk.ui.sourceediting.SourceEditorViewerConfigurator;
@@ -53,7 +53,7 @@
 	
 	
 	public WikidocRweaveSourceViewerConfigurator(final WikidocRweaveDocumentSetupParticipant documentSetup,
-			final IWikitextCoreAccess wikitextCoreAccess, final IRCoreAccess rCoreAccess,
+			final WikitextCoreAccess wikitextCoreAccess, final IRCoreAccess rCoreAccess,
 			final WikidocRweaveSourceViewerConfiguration config) {
 		super(config);
 		this.documentSetup= documentSetup;
@@ -106,7 +106,7 @@
 	}
 	
 	
-	public void setSource(final IWikitextCoreAccess wikitextCoreAccess, final IRCoreAccess rCoreAccess) {
+	public void setSource(final WikitextCoreAccess wikitextCoreAccess, final IRCoreAccess rCoreAccess) {
 		boolean changed= false;
 		if (wikitextCoreAccess != null) {
 			changed|= this.docCoreAccess.setParent(wikitextCoreAccess);
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/ui/sourceediting/WikidocRweaveTemplateViewerConfigurator.java b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/ui/sourceediting/WikidocRweaveTemplateViewerConfigurator.java
index d8b1ef4..e3cb61b 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/ui/sourceediting/WikidocRweaveTemplateViewerConfigurator.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/redocs/wikitext/r/ui/sourceediting/WikidocRweaveTemplateViewerConfigurator.java
@@ -16,7 +16,7 @@
 
 import org.eclipse.statet.ecommons.templates.TemplateVariableProcessor;
 
-import org.eclipse.statet.docmlet.wikitext.core.IWikitextCoreAccess;
+import org.eclipse.statet.docmlet.wikitext.core.WikitextCoreAccess;
 import org.eclipse.statet.ltk.ui.sourceediting.SourceEditorViewerConfiguration;
 import org.eclipse.statet.r.core.IRCoreAccess;
 import org.eclipse.statet.redocs.wikitext.r.core.source.WikidocRweaveDocumentSetupParticipant;
@@ -27,7 +27,7 @@
 	
 	public WikidocRweaveTemplateViewerConfigurator(
 			final WikidocRweaveDocumentSetupParticipant documentSetup,
-			final IWikitextCoreAccess wikitextCoreAccess, final IRCoreAccess rCoreAccess,
+			final WikitextCoreAccess wikitextCoreAccess, final IRCoreAccess rCoreAccess,
 			final TemplateVariableProcessor processor) {
 		super(documentSetup, wikitextCoreAccess, rCoreAccess,
 				new WikidocRweaveSourceViewerConfiguration(SourceEditorViewerConfiguration.TEMPLATE_MODE, null, null, null, null) {