Index: tmp/org.txm.rcp/src/main/java/org/txm/rcp/commands/workspace/LoadBinaryCorporaDirectory.java
===================================================================
--- tmp/org.txm.rcp/src/main/java/org/txm/rcp/commands/workspace/LoadBinaryCorporaDirectory.java	(revision 1619)
+++ tmp/org.txm.rcp/src/main/java/org/txm/rcp/commands/workspace/LoadBinaryCorporaDirectory.java	(revision 1620)
@@ -94,7 +94,7 @@
 			
 			if (directory.exists()) {
 				LastOpened.set(ID, directory);
-				return loadBinaryCorpusFromCorporaDirectory(directory, true, true);
+				return loadBinaryCorpusFromCorporaDirectory(directory, true, true, false);
 			}
 		}
 		return null;
@@ -106,7 +106,7 @@
 	 * @param directory
 	 * @return
 	 */
-	public static JobHandler loadBinaryCorpusFromCorporaDirectory(final File directory, final boolean askSelection, final boolean replace) {
+	public static JobHandler loadBinaryCorpusFromCorporaDirectory(final File directory, final boolean askSelection, final boolean replace, final boolean loadDirectories) {
 		
 		JobHandler jobhandler = new JobHandler("Loading corpora from "+directory+"...", true) {
 			
@@ -134,14 +134,13 @@
 					return Status.CANCEL_STATUS;
 				}
 				
-				
 				final ArrayList<Project> newProjects = new ArrayList<Project>();
 				if (askSelection) {
 					
 					this.syncExec(new Runnable() {
 						@Override
 						public void run() {
-							List<File>  files = getBinaryCorpusSelection(directory);
+							List<File>  files = getBinaryCorpusSelection(directory, loadDirectories);
 							ArrayList<Project> tmp = loadBinaryCorpusFromCorporaDirectory(files, self, monitor, replace);
 							if (tmp != null) {
 								newProjects.addAll(tmp);
@@ -150,7 +149,8 @@
 					});
 					
 				} else { // try loading corpora and dont replace existing corpus
-					ArrayList<Project> tmp = loadBinaryCorpusFromCorporaDirectory(directory, this, monitor, replace);
+					List<File>  files = Arrays.asList(getBinaryCorpusFiles(directory, loadDirectories));
+					ArrayList<Project> tmp = loadBinaryCorpusFromCorporaDirectory(files, this, monitor, replace);
 					if (tmp != null) {
 						newProjects.addAll(tmp);
 					}
@@ -192,7 +192,7 @@
 		return jobhandler;
 	}
 	
-	protected static List<File> getBinaryCorpusSelection(File directory) {
+	protected static List<File> getBinaryCorpusSelection(File directory, boolean loadDirectories) {
 		ArrayList<File> selectedFiles = new ArrayList<File>();;
 		if (!directory.isDirectory()) return selectedFiles;
 		if (!directory.exists()) return selectedFiles;
@@ -208,23 +208,7 @@
 		} else {
 			return selectedFiles;
 		}
-		File[] files = directory.listFiles(new FileFilter() {
-			
-			@Override
-			public boolean accept(File arg0) {
-				return IOUtils.HIDDENFILE_FILTER.accept(arg0) && arg0.getName().endsWith(".txm");
-			}
-		});
-		Arrays.sort(files, new Comparator<File>() {
-			@Override
-			public int compare(File o1, File o2) {
-				int i = o1.getName().compareTo(o2.getName());
-				if (i == 0) {
-					return (int) (o1.lastModified() - o2.lastModified());
-				}
-				return i;
-			}
-		});
+		File[] files = getBinaryCorpusFiles(directory, loadDirectories);
 		
 		ListSelectionDialog lsd = new ListSelectionDialog(shell, files, new ArrayContentProvider(), new LabelProvider() {
 
@@ -260,6 +244,39 @@
 		return selectedFiles;
 	}
 
+	private static File[] getBinaryCorpusFiles(File directory, boolean loadDirectories) {
+		File[] files = null;
+		
+		if (loadDirectories) {
+			files = directory.listFiles(new FileFilter() {
+				@Override
+				public boolean accept(File arg0) {
+					return IOUtils.HIDDENFILE_FILTER.accept(arg0) && arg0.isDirectory();
+				}
+			});
+		} else {
+			files = directory.listFiles(new FileFilter() {
+				@Override
+				public boolean accept(File arg0) {
+					return IOUtils.HIDDENFILE_FILTER.accept(arg0) && arg0.getName().endsWith(".txm");
+				}
+			});
+		}
+		
+		Arrays.sort(files, new Comparator<File>() {
+			@Override
+			public int compare(File o1, File o2) {
+				int i = o1.getName().compareTo(o2.getName());
+				if (i == 0) {
+					return (int) (o1.lastModified() - o2.lastModified());
+				}
+				return i;
+			}
+		});
+		
+		return files;
+	}
+
 	/**
 	 * dont manage SearchEngine state
 	 * 
@@ -280,6 +297,7 @@
 	 * @param job
 	 * @param monitor
 	 * @param replace if true replace existing corpus
+	 * @param loadDirectories 
 	 * @return the loaded projects
 	 */
 	protected static ArrayList<Project> loadBinaryCorpusFromCorporaDirectory(List<File> corporaFiles, JobHandler job, IProgressMonitor monitor, boolean replace) {
@@ -311,14 +329,11 @@
 				}
 				
 				if (corpusDirectory.isDirectory()) {
-				//	project = LoadBinaryCorpus.loadBinaryCorpusAsDirectory(corpusDirectory, monitor, replace);
-					continue;
-				} else if (corpusDirectory.getName().endsWith(".txm")) {
+					project = LoadBinaryCorpus.loadBinaryCorpusAsDirectory(corpusDirectory, monitor, replace);
+				} else {
 					project = LoadBinaryCorpus.loadBinaryCorpusArchive(corpusDirectory, job, monitor, replace);
-				} else {
-					continue; // not a corpus
 				}
-
+				
 //				Project base = LoadBinaryCorpus.loadBinaryCorpusAsDirectory(corpusDirectory);
 				if (project == null) {
 					Log.warning("Failed to load binary corpus: "+corpusDirectory);
Index: tmp/org.txm.rcp/src/main/java/org/txm/rcp/ApplicationWorkbenchAdvisor.java
===================================================================
--- tmp/org.txm.rcp/src/main/java/org/txm/rcp/ApplicationWorkbenchAdvisor.java	(revision 1619)
+++ tmp/org.txm.rcp/src/main/java/org/txm/rcp/ApplicationWorkbenchAdvisor.java	(revision 1620)
@@ -863,7 +863,7 @@
 		// TXM-0.8.0 previous installation corpora
 		if (corporaDir.listFiles(IOUtils.HIDDENFILE_FILTER).length > 0) { // not a new install, restore previous corpora
 			Log.info(NLS.bind(TXMUIMessages.installingPreviousCorpusFromP0, corporaDir));
-			JobHandler job = LoadBinaryCorporaDirectory.loadBinaryCorpusFromCorporaDirectory(corporaDir, false, true);
+			JobHandler job = LoadBinaryCorporaDirectory.loadBinaryCorpusFromCorporaDirectory(corporaDir, false, true, true);
 			try {
 				job.join();
 			} catch (InterruptedException e) {
@@ -875,7 +875,7 @@
 		// TXM previous installation corpora
 		if (previousCorporaDirectory.exists()) { // new installation (empty corpora directory)
 			Log.info(NLS.bind(TXMUIMessages.installingPreviousCorpusFromP0, previousCorporaDirectory));
-			JobHandler job = LoadBinaryCorporaDirectory.loadBinaryCorpusFromCorporaDirectory(previousCorporaDirectory, false, false);
+			JobHandler job = LoadBinaryCorporaDirectory.loadBinaryCorpusFromCorporaDirectory(previousCorporaDirectory, false, false, true);
 			try {
 				job.join();
 			} catch (InterruptedException e) {
@@ -889,7 +889,7 @@
 
 			Log.info(TXMUIMessages.installingSampleCorpus);
 
-			JobHandler job = LoadBinaryCorporaDirectory.loadBinaryCorpusFromCorporaDirectory(sampleCorporaDirectory, false, true);
+			JobHandler job = LoadBinaryCorporaDirectory.loadBinaryCorpusFromCorporaDirectory(sampleCorporaDirectory, false, true, false);
 			try {
 				job.join();
 			} catch (InterruptedException e) {
Index: tmp/org.txm.annotation.kr.core/src/org/txm/annotation/kr/core/messages/messages.properties
===================================================================
--- tmp/org.txm.annotation.kr.core/src/org/txm/annotation/kr/core/messages/messages.properties	(revision 1619)
+++ tmp/org.txm.annotation.kr.core/src/org/txm/annotation/kr/core/messages/messages.properties	(revision 1620)
@@ -1,4 +1,3 @@
 savingP0Annotations=Saving {0} annotations...
-annotationSuccessfullyWritten=Annotations successfully written.
 annotationSuccesfullyWrittenIntheP0File=Annotations successfully written in the {0} file.
 savingAnnotations=Saving annotations.
\ No newline at end of file
Index: tmp/org.txm.annotation.kr.core/src/org/txm/annotation/kr/core/messages/messages_fr.properties
===================================================================
--- tmp/org.txm.annotation.kr.core/src/org/txm/annotation/kr/core/messages/messages_fr.properties	(revision 1619)
+++ tmp/org.txm.annotation.kr.core/src/org/txm/annotation/kr/core/messages/messages_fr.properties	(revision 1620)
@@ -1,5 +1,3 @@
 savingP0Annotations=Enregistrement de {0} annotations...
-annotationSuccessfullyWritten=Annotations enregistrées.
 savingAnnotations=Enregistrement des annotations
-annotationSuccesfullyWritten=Annotations enregistrées.
 annotationSuccesfullyWrittenIntheP0File=Annotations enregistrées dans le fichier {0}.
\ No newline at end of file
