Index: tmp/org.txm.core/src/java/org/txm/objects/Project.java
===================================================================
--- tmp/org.txm.core/src/java/org/txm/objects/Project.java	(revision 1101)
+++ tmp/org.txm.core/src/java/org/txm/objects/Project.java	(revision 1102)
@@ -306,8 +306,8 @@
 		List<Text> texts = getTexts();
 		if (texts.size() > 0) {
 			int idx = texts.indexOf(t) + 1;
-			if (idx > 1 && idx < texts.size()) {
-				texts.get(idx);
+			if (idx >= 1 && idx < texts.size()) {
+				return texts.get(idx);
 			}
 		}
 
@@ -325,7 +325,7 @@
 		if (texts.size() > 0) {
 			int idx = texts.indexOf(t) -1 ;
 			if (idx >= 0) {
-				texts.get(idx);
+				return texts.get(idx);
 			}
 		}
 
Index: tmp/org.txm.core/src/java/org/txm/objects/Page.java
===================================================================
--- tmp/org.txm.core/src/java/org/txm/objects/Page.java	(revision 1101)
+++ tmp/org.txm.core/src/java/org/txm/objects/Page.java	(revision 1102)
@@ -38,7 +38,6 @@
 import org.txm.core.messages.TXMCoreMessages;
 import org.w3c.dom.Element;
 
-// TODO: Auto-generated Javadoc
 /**
  * The Class Page a fle to open in the Browser
  */
@@ -65,7 +64,7 @@
 		this.edition = edition;
 		this.name = name;
 		this.firstWordId = wordid;
-		this.htmlfile = new File(edition.getHtmlDir(), name+".html");
+		this.htmlfile = new File(edition.getHtmlDir(), edition.getText().getName()+"_"+name+".html");
 	}
 	
 	/**
Index: tmp/org.txm.core/src/java/org/txm/objects/Text.java
===================================================================
--- tmp/org.txm.core/src/java/org/txm/objects/Text.java	(revision 1101)
+++ tmp/org.txm.core/src/java/org/txm/objects/Text.java	(revision 1102)
@@ -43,8 +43,8 @@
  */
 public class Text extends TXMResult {
 
-	/** The editions. */
-	HashMap<String, Edition> editions = new HashMap<String, Edition>();
+//	/** The editions. */
+//	HashMap<String, Edition> editions = new HashMap<String, Edition>();
 	
 	/** The source file. */
 	@Parameter(key=TBXPreferences.SOURCE)
@@ -142,15 +142,13 @@
 	 * @return the edition
 	 */
 	public Edition getEdition(String name) {
-		if (!editions.containsKey(name)) {
-			for (Edition edition : getEditions()) {
-				if (edition.getName().equals(name)) {
-					editions.put(name, edition);
-					break;
-				}
+		List<Edition> editions = this.getEditions();
+		for (Edition ed : editions) {
+			if (name.equals(ed.getName())) {
+				return ed;
 			}
 		}
-		return editions.get(name);
+		return null;
 	}
 
 //	/**
Index: tmp/org.txm.core/src/java/org/txm/objects/Edition.java
===================================================================
--- tmp/org.txm.core/src/java/org/txm/objects/Edition.java	(revision 1101)
+++ tmp/org.txm.core/src/java/org/txm/objects/Edition.java	(revision 1102)
@@ -59,7 +59,7 @@
 	String pIndex;
 
 	/** The pages. */
-	ArrayList<Page> pages = new ArrayList<Page>();
+	ArrayList<Page> pages;
 
 	@Parameter(key=TBXPreferences.NAMES)
 	ArrayList<String> pPageNames = new ArrayList<String>();
@@ -311,7 +311,7 @@
 
 		if (defaultHtmlDir == null) {
 			File binDir = getText().getProject().getProjectDirectory();
-			defaultHtmlDir = new File(binDir, "HTML/"+getText().getName()+"/"+getName()); //$NON-NLS-1$ //$NON-NLS-2$
+			defaultHtmlDir = new File(binDir, "HTML/"+getText().getProject().getName()+"/"+getName()); //$NON-NLS-1$ //$NON-NLS-2$
 		}
 		return defaultHtmlDir;
 	}
@@ -358,7 +358,12 @@
 			pPageFirstWordIds = new ArrayList<>(Arrays.asList(wordids.split("\t")));
 		}
 		
-		pages.clear();
+		if (pages == null) {
+			pages = new ArrayList<Page>();
+		} else {
+			pages.clear();
+		}
+		
 		for (int i = 0 ; i < pPageNames.size() && i < pPageFirstWordIds.size() ; i++) {
 			pages.add(new Page(this, pPageNames.get(i), pPageFirstWordIds.get(i)));
 		}
Index: tmp/org.txm.edition.rcp/src/org/txm/edition/rcp/handlers/OpenEdition.java
===================================================================
--- tmp/org.txm.edition.rcp/src/org/txm/edition/rcp/handlers/OpenEdition.java	(revision 1101)
+++ tmp/org.txm.edition.rcp/src/org/txm/edition/rcp/handlers/OpenEdition.java	(revision 1102)
@@ -43,6 +43,7 @@
 import org.txm.edition.rcp.editors.SynopticEditorInput;
 import org.txm.edition.rcp.messages.EditionUIMessages;
 import org.txm.objects.Text;
+import org.txm.rcp.editors.TXMEditor;
 import org.txm.searchengine.cqp.corpus.CQPCorpus;
 import org.txm.searchengine.cqp.corpus.MainCorpus;
 import org.txm.searchengine.cqp.corpus.Property;
@@ -105,9 +106,8 @@
 
 				editor = openEdition(c, editionsToOpen);
 
-				if (editor != null)
-					editor.firstPage();
-
+//				if (editor != null)
+//					editor.firstPage();
 			} catch (Exception e) {
 				System.out.println(EditionUIMessages.OpenEdition_4+e);
 				org.txm.rcp.utils.Logger.printStackTrace(e);
@@ -167,11 +167,11 @@
 			//String[] editions = {maincorpus.getDefaultEdition()};
 			IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
 			IWorkbenchPage page = window.getActivePage();
-
+			
 			SynopticEditorInput editorInput = new SynopticEditorInput(corpus, text.getName(), editions);
 			SynopticEditionEditor editor = (SynopticEditionEditor) page.openEditor(editorInput,
 					SynopticEditionEditor.ID, true);
-
+			
 			return editor;
 
 		} catch (Exception e) {
Index: tmp/org.txm.edition.rcp/src/org/txm/edition/rcp/editors/SynopticEditionEditor.java
===================================================================
--- tmp/org.txm.edition.rcp/src/org/txm/edition/rcp/editors/SynopticEditionEditor.java	(revision 1101)
+++ tmp/org.txm.edition.rcp/src/org/txm/edition/rcp/editors/SynopticEditionEditor.java	(revision 1102)
@@ -550,6 +550,7 @@
 		});
 
 		openEditions(corpus, text, editionNames);
+		firstPage();
 	}
 
 	/**
@@ -776,13 +777,11 @@
 	@Override
 	public void updateResultFromEditor() {
 		// TODO Auto-generated method stub
-		
 	}
 
 	@Override
 	public void updateEditorFromResult(boolean update) throws Exception {
-		// TODO Auto-generated method stub
-		
+		this.firstPage();
 	}
 	
 	// Called by JavaScript
