Index: /v2/trunk/de.ugoe.cs.swe.bnftools.ebnf.standalone/META-INF/MANIFEST.MF
===================================================================
--- /v2/trunk/de.ugoe.cs.swe.bnftools.ebnf.standalone/META-INF/MANIFEST.MF	(revision 74)
+++ /v2/trunk/de.ugoe.cs.swe.bnftools.ebnf.standalone/META-INF/MANIFEST.MF	(revision 75)
@@ -10,5 +10,10 @@
  org.eclipse.emf.ecore,
  org.eclipse.xtext,
- org.eclipse.xtext.ui
+ org.eclipse.xtext.ui,
+ de.ugoe.cs.swe.bnftools.ebnf,
+ de.ugoe.cs.swe.bnftools.ebnf.ui,
+ org.apache.commons.io,
+ org.eclipse.text,
+ org.eclipse.swt
 Bundle-RequiredExecutionEnvironment: JavaSE-1.7
 Bundle-ActivationPolicy: lazy
Index: /v2/trunk/de.ugoe.cs.swe.bnftools.ebnf.standalone/somefile.bnf
===================================================================
--- /v2/trunk/de.ugoe.cs.swe.bnftools.ebnf.standalone/somefile.bnf	(revision 75)
+++ /v2/trunk/de.ugoe.cs.swe.bnftools.ebnf.standalone/somefile.bnf	(revision 75)
@@ -0,0 +1,4 @@
+grammar dasd;
+
+1. x ::= "a"
+2. y ::=x
Index: /v2/trunk/de.ugoe.cs.swe.bnftools.ebnf.standalone/src/de/ugoe/cs/swe/bnftools/ebnf/standalone/EBNFEditedResourceProvider.java
===================================================================
--- /v2/trunk/de.ugoe.cs.swe.bnftools.ebnf.standalone/src/de/ugoe/cs/swe/bnftools/ebnf/standalone/EBNFEditedResourceProvider.java	(revision 74)
+++ /v2/trunk/de.ugoe.cs.swe.bnftools.ebnf.standalone/src/de/ugoe/cs/swe/bnftools/ebnf/standalone/EBNFEditedResourceProvider.java	(revision 75)
@@ -17,5 +17,5 @@
 	@Override
 	public XtextResource createResource() {
-		return (XtextResource) rsp.get().createResource(URI.createURI("test.ebnf"));
+		return (XtextResource) rsp.get().createResource(URI.createURI("test.bnf"));
 	}
 
Index: /v2/trunk/de.ugoe.cs.swe.bnftools.ebnf.standalone/src/de/ugoe/cs/swe/bnftools/ebnf/standalone/View.java
===================================================================
--- /v2/trunk/de.ugoe.cs.swe.bnftools.ebnf.standalone/src/de/ugoe/cs/swe/bnftools/ebnf/standalone/View.java	(revision 74)
+++ /v2/trunk/de.ugoe.cs.swe.bnftools.ebnf.standalone/src/de/ugoe/cs/swe/bnftools/ebnf/standalone/View.java	(revision 75)
@@ -1,5 +1,14 @@
 package de.ugoe.cs.swe.bnftools.ebnf.standalone;
 
+import java.io.File;
+import java.io.IOException;
+
+import org.apache.commons.io.FileUtils;
+import org.eclipse.emf.common.util.URI;
 import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+import org.eclipse.jface.text.IDocument;
+import org.eclipse.jface.text.ITextInputListener;
 import org.eclipse.jface.viewers.IStructuredContentProvider;
 import org.eclipse.jface.viewers.ITableLabelProvider;
@@ -10,20 +19,38 @@
 import org.eclipse.swt.custom.SashForm;
 import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.layout.FillLayout;
 import org.eclipse.swt.widgets.Composite;
 import org.eclipse.ui.ISharedImages;
 import org.eclipse.ui.PlatformUI;
 import org.eclipse.ui.part.ViewPart;
+import org.eclipse.xtext.resource.XtextResource;
 import org.eclipse.xtext.ui.editor.XtextSourceViewer;
 import org.eclipse.xtext.ui.editor.embedded.EmbeddedEditor;
+import org.eclipse.xtext.ui.editor.embedded.EmbeddedEditorFactory;
 import org.eclipse.xtext.ui.editor.embedded.EmbeddedEditorModelAccess;
+import org.eclipse.xtext.ui.editor.embedded.IEditedResourceProvider;
+import org.eclipse.xtext.ui.editor.model.XtextDocument;
 
+import com.google.inject.Inject;
+import com.google.inject.Injector;
+
+import de.ugoe.cs.swe.bnftools.EbnfStandaloneSetup;
+import de.ugoe.cs.swe.bnftools.ui.internal.EbnfActivator;
+
+@SuppressWarnings("restriction")
 public class View extends ViewPart {
+	private static final String FILE = "/Users/philip-iii/Dev/workspaces/bnf-v2/de.ugoe.cs.swe.bnftools.ebnf.standalone/somefile.bnf";
+
 	public static final String ID = "de.ugoe.cs.swe.bnftools.ebnf.standalone.view";
 
+	//NEW
+	@Inject EBNFEditedResourceProvider editedResourceProvider;
+	@Inject EmbeddedEditorFactory factory;
+
+	
 	private TableViewer viewer;
 	private EmbeddedEditor handle;
 	private SashForm sashForm;
 	private EmbeddedEditorModelAccess partialEditor;
-	private Resource resource;
 	private XtextSourceViewer viewer2;
 
@@ -51,4 +78,63 @@
 	}
 
+	//NEW
+	private void createEditor() {
+		IEditedResourceProvider resourceProvider = new IEditedResourceProvider() {
+
+	        @Override
+	        public XtextResource createResource() {
+	            try {
+	                EbnfStandaloneSetup.doSetup();
+	                ResourceSet resourceSet = new ResourceSetImpl();
+	                Resource resource = resourceSet.createResource(URI.createURI(FILE));
+	                return (XtextResource) resource;
+	            } catch (Exception e) {
+	                return null;
+	            }
+	        }
+	    };
+
+	    //or change to current activator...
+	    EbnfActivator activator = EbnfActivator.getInstance();
+	    Injector injector = activator
+	            .getInjector(EbnfActivator.DE_UGOE_CS_SWE_BNFTOOLS_EBNF);
+	    EmbeddedEditorFactory factory = injector.getInstance(EmbeddedEditorFactory.class);
+	    handle = factory.newEditor(resourceProvider).withParent(
+	            sashForm);
+	    
+	    
+	    // keep the partialEditor as instance var to read / write the edited text
+	    partialEditor = handle.createPartialEditor(true);
+	    viewer2 = handle.getViewer();
+		final File f = new File(FILE);
+    	try {
+			String string = FileUtils.readFileToString(f);
+			viewer2.getDocument().set(string);
+		} catch (IOException e1) {
+			e1.printStackTrace();
+		}
+	    viewer2.addTextInputListener(new ITextInputListener() {
+			
+			@Override
+			public void inputDocumentChanged(IDocument oldInput, IDocument newInput) {
+				System.out.println("-->save");
+				XtextDocument d = (XtextDocument) oldInput;
+				System.out.println(oldInput.get());
+				System.out.println(f.getAbsolutePath());
+				try {
+					FileUtils.writeStringToFile(f, oldInput.get());
+				} catch (IOException e) {
+					e.printStackTrace();
+				}
+			}
+			
+			@Override
+			public void inputDocumentAboutToBeChanged(IDocument oldInput,
+					IDocument newInput) {
+			}
+		});
+	}
+
+	
 	class ViewLabelProvider extends LabelProvider implements
 			ITableLabelProvider {
@@ -72,5 +158,9 @@
 	 */
 	public void createPartControl(Composite parent) {
-		viewer = new TableViewer(parent, SWT.MULTI | SWT.H_SCROLL
+		sashForm = new SashForm(parent, SWT.HORIZONTAL);
+		sashForm.setLayout(new FillLayout());
+		createEditor();
+
+		viewer = new TableViewer(sashForm, SWT.MULTI | SWT.H_SCROLL
 				| SWT.V_SCROLL);
 		viewer.setContentProvider(new ViewContentProvider());
