Index: TXM/trunk/org.txm.specificities.rcp/src/org/txm/specificities/rcp/editors/SpecificitiesEditor.java
===================================================================
--- TXM/trunk/org.txm.specificities.rcp/src/org/txm/specificities/rcp/editors/SpecificitiesEditor.java	(revision 3551)
+++ TXM/trunk/org.txm.specificities.rcp/src/org/txm/specificities/rcp/editors/SpecificitiesEditor.java	(revision 3552)
@@ -273,7 +273,7 @@
 				for (int i = 0, firstLexicalTableColumnIndex = 3; i < len; i++, firstLexicalTableColumnIndex += 2) {
 
 					if (i+3 >= MAX_NUMBER_OF_COLUMNS) {
-						Log.warning(NLS.bind("Warning The number of columns exceeds {0}. the table has been cut. You can, change the maximum in the TXM > User preference page", MAX_NUMBER_OF_COLUMNS));
+						Log.warning(NLS.bind("Warning The number of columns exceeds {0} ({1}). the table has been cut. You can, change the maximum in the TXM > User preference page", MAX_NUMBER_OF_COLUMNS, len));
 						break;
 					}
 					
@@ -345,7 +345,7 @@
 			// Updating the table headers from lexical table values
 			for (int i = 0, firstLexicalTableColumnIndex = 3; i < len; i++, firstLexicalTableColumnIndex += 2) {
 				
-				if (i+3 >= MAX_NUMBER_OF_COLUMNS) {
+				if (i+3 >= MAX_NUMBER_OF_COLUMNS) { // stop the loop
 //					Log.warning(NLS.bind("Warning The number of columns exceeds {0}. the table has been cut. You can, change the maximum in the TXM > User preference page", MAX_NUMBER_OF_COLUMNS));
 					break;
 				}
Index: TXM/trunk/org.txm.rcp/src/main/java/org/txm/rcp/___SWTAWTFocusBugsSnippet.java
===================================================================
--- TXM/trunk/org.txm.rcp/src/main/java/org/txm/rcp/___SWTAWTFocusBugsSnippet.java	(revision 0)
+++ TXM/trunk/org.txm.rcp/src/main/java/org/txm/rcp/___SWTAWTFocusBugsSnippet.java	(revision 3552)
@@ -0,0 +1,42 @@
+package org.txm.rcp;
+
+import java.awt.BorderLayout;
+import java.awt.Frame;
+import java.awt.Panel;
+import java.awt.TextField;
+
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.awt.SWT_AWT;
+import org.eclipse.swt.layout.FillLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.swt.widgets.Text;
+
+public class ___SWTAWTFocusBugsSnippet {
+
+    public static void main(String[] args) {
+
+        final Display display = new Display();
+        final Shell shell = new Shell(display);
+        shell.setLayout(new FillLayout());
+
+        Composite composite = new Composite(shell, SWT.EMBEDDED);
+
+        Frame frame = SWT_AWT.new_Frame(composite);
+        Panel panel = new Panel(new BorderLayout());
+        frame.add(panel);
+        panel.add(new TextField());
+
+        Text text = new Text(shell, SWT.BORDER);
+        shell.setSize(200,70);
+        shell.open();
+
+        while(!shell.isDisposed()) {
+            if (!display.readAndDispatch()) {
+                display.sleep();
+            }
+        }
+        display.dispose();
+    }
+}

Property changes on: TXM/trunk/org.txm.rcp/src/main/java/org/txm/rcp/___SWTAWTFocusBugsSnippet.java
___________________________________________________________________
Added: svn:mime-type
   + text/plain

Index: TXM/trunk/org.txm.rcp/src/main/java/org/txm/rcp/editors/TXMBrowserEditor.java
===================================================================
--- TXM/trunk/org.txm.rcp/src/main/java/org/txm/rcp/editors/TXMBrowserEditor.java	(revision 3551)
+++ TXM/trunk/org.txm.rcp/src/main/java/org/txm/rcp/editors/TXMBrowserEditor.java	(revision 3552)
@@ -42,6 +42,8 @@
 import org.eclipse.swt.events.DisposeListener;
 import org.eclipse.swt.events.MenuEvent;
 import org.eclipse.swt.events.MenuListener;
+import org.eclipse.swt.events.MouseEvent;
+import org.eclipse.swt.events.MouseWheelListener;
 import org.eclipse.swt.events.SelectionEvent;
 import org.eclipse.swt.events.SelectionListener;
 import org.eclipse.swt.graphics.Image;
@@ -125,6 +127,53 @@
 		getBrowser().addProgressListener(progresslistener);
 	}
 	
+	public static void zoomIn(Browser b) {
+		zoom(b, 0.1f);
+	}
+	
+	public static void zoomOut(Browser b) {
+		zoom(b, -0.1f);
+	}
+	
+	public static void zoomReset(Browser b) {
+		zoom(b, 0f);
+	}
+	
+	public static void zoom(Browser b, float diff) {
+		
+		if (b == null || b.isDisposed()) return;
+
+	//	b.evaluate("alert(document);");
+	//	b.evaluate("alert(document.children[0].style);");
+//		b.evaluate("alert(document.children[0].children[1]);");
+		boolean isHTML = (boolean) b.evaluate("return document.getElementsByTagName('body')[0] != null;");
+		if (isHTML) {
+			String zoom = (String) b.evaluate("return document.getElementsByTagName('body')[0].style.zoom;");
+			if (zoom == null || zoom.isEmpty()) {
+				zoom = "1.0";
+			}
+			
+			float fzoom = Float.parseFloat(zoom) + diff;
+			if (diff == 0f) {
+				fzoom = 1.0f;
+			}
+			
+			b.evaluate("document.getElementsByTagName('body')[0].style.zoom = \""+fzoom+"\";");
+		} else {
+			String zoom = (String) b.evaluate("return document.children[0].style.zoom;");
+			if (zoom == null || zoom.isEmpty()) {
+				zoom = "1.0";
+			}
+			
+			float fzoom = Float.parseFloat(zoom) + diff;
+			if (diff == 0f) {
+				fzoom = 1.0f;
+			}
+			
+			b.evaluate("document.children[0].style.zoom = \""+fzoom+"\";");
+		}
+	}
+	
 	public void initMenu() {
 		
 		// create a new menu
@@ -160,6 +209,47 @@
 				String text = TXMBrowserEditor.this.getTextSelection();
 				copyItem.setEnabled(text != null && text.length() > 0);
 				
+				MenuItem zoomInItem = new MenuItem(menu, SWT.NONE);
+				zoomInItem.setText("Zoom avant");
+				zoomInItem.addSelectionListener(new SelectionListener() {
+					
+					@Override
+					public void widgetSelected(SelectionEvent e) {
+						zoomIn(getBrowser());
+					}
+					
+					@Override
+					public void widgetDefaultSelected(SelectionEvent e) {}
+				});
+				
+				MenuItem zoomOutItem = new MenuItem(menu, SWT.NONE);
+				zoomOutItem.setText("Zoom arrière");
+				zoomOutItem.addSelectionListener(new SelectionListener() {
+					
+					@Override
+					public void widgetSelected(SelectionEvent e) {
+						
+						zoomOut(getBrowser());
+					}
+					
+					@Override
+					public void widgetDefaultSelected(SelectionEvent e) {}
+				});
+				
+				MenuItem zoomResetItem = new MenuItem(menu, SWT.NONE);
+				zoomResetItem.setText("Zoom initial");
+				zoomResetItem.addSelectionListener(new SelectionListener() {
+					
+					@Override
+					public void widgetSelected(SelectionEvent e) {
+						
+						zoomReset(getBrowser());
+					}
+					
+					@Override
+					public void widgetDefaultSelected(SelectionEvent e) {}
+				});
+				
 				MenuItem reloadItem = new MenuItem(menu, SWT.NONE);
 				reloadItem.setText(TXMUIMessages.Reload);
 				reloadItem.addSelectionListener(new SelectionListener() {
@@ -426,6 +516,66 @@
 	//		// System.out.println("Next texts "+nextText);
 	//	}
 	
+	public static void installZoomControls(Browser browser, Menu menu) {
+		
+		browser.addMouseWheelListener(new MouseWheelListener() {
+			
+			@Override
+			public void mouseScrolled(MouseEvent e) {
+				
+				if ((e.stateMask & SWT.CTRL) == SWT.CTRL) {
+					if (e.count > 0) {
+						zoomIn(browser);
+					} else {
+						zoomOut(browser);
+					}
+				}
+			}
+		});
+		
+
+		MenuItem zoomInItem = new MenuItem(menu, SWT.NONE);
+		zoomInItem.setText("Zoom avant");
+		zoomInItem.addSelectionListener(new SelectionListener() {
+			
+			@Override
+			public void widgetSelected(SelectionEvent e) {
+				zoomIn(browser);
+			}
+			
+			@Override
+			public void widgetDefaultSelected(SelectionEvent e) {}
+		});
+		
+		MenuItem zoomOutItem = new MenuItem(menu, SWT.NONE);
+		zoomOutItem.setText("Zoom arrière");
+		zoomOutItem.addSelectionListener(new SelectionListener() {
+			
+			@Override
+			public void widgetSelected(SelectionEvent e) {
+				
+				zoomOut(browser);
+			}
+			
+			@Override
+			public void widgetDefaultSelected(SelectionEvent e) {}
+		});
+		
+		MenuItem zoomResetItem = new MenuItem(menu, SWT.NONE);
+		zoomResetItem.setText("Zoom initial");
+		zoomResetItem.addSelectionListener(new SelectionListener() {
+			
+			@Override
+			public void widgetSelected(SelectionEvent e) {
+				
+				zoomReset(browser);
+			}
+			
+			@Override
+			public void widgetDefaultSelected(SelectionEvent e) {}
+		});
+	}
+	
 	/*
 	 * (non-Javadoc)
 	 * @see org.eclipse.ui.internal.browser.WebBrowserEditor#createPartControl(org.eclipse.swt.widgets.Composite)
@@ -452,6 +602,7 @@
 			return;
 		}
 		
+		
 		//		RowLayout navigLayout = new RowLayout(SWT.HORIZONTAL);
 		//		navigLayout.justify = true;
 		//		Composite panneau = new Composite(parent, SWT.NONE);
@@ -629,14 +780,29 @@
 		//		parent.setLayout(parentLayout);
 		//		parent.pack();
 		
-//		MenuManager menuManager = new MenuManager();
-//		Menu menu = menuManager.createContextMenu(getBrowser());
-//		
-//		// Set the MenuManager
-//		getBrowser().setMenu(menu);
+		//		MenuManager menuManager = new MenuManager();
+		//		Menu menu = menuManager.createContextMenu(getBrowser());
+		//		
+		//		// Set the MenuManager
+		//		getBrowser().setMenu(menu);
 		
 		initMenu();
 		
+		getBrowser().addMouseWheelListener(new MouseWheelListener() {
+			
+			@Override
+			public void mouseScrolled(MouseEvent e) {
+				
+				if ((e.stateMask & SWT.CTRL) == SWT.CTRL) {
+					if (e.count > 0) {
+						zoomIn(getBrowser());
+					} else {
+						zoomOut(getBrowser());
+					}
+				}
+			}
+		});
+		
 		ISelectionProvider selProvider = new ISelectionProvider() {
 			
 			@Override
Index: TXM/trunk/org.txm.index.rcp/src/org/txm/index/rcp/editors/PartitionIndexEditor.java
===================================================================
--- TXM/trunk/org.txm.index.rcp/src/org/txm/index/rcp/editors/PartitionIndexEditor.java	(revision 3551)
+++ TXM/trunk/org.txm.index.rcp/src/org/txm/index/rcp/editors/PartitionIndexEditor.java	(revision 3552)
@@ -455,7 +455,7 @@
 					for (int i = 0; i < partnames.size(); i++) {
 						
 						if (i >= MAX_NUMBER_OF_COLUMNS) {
-							Log.warning(NLS.bind("Warning The number of columns exceeds {0}. the table has been cut. You can, change the maximum in the TXM > User preference page", MAX_NUMBER_OF_COLUMNS));
+							Log.warning(NLS.bind("Warning The number of columns exceeds {0} ({1}). the table has been cut. You can, change the maximum in the TXM > User preference page", MAX_NUMBER_OF_COLUMNS, partnames.size()));
 							break;
 						}
 						
Index: TXM/trunk/org.txm.whatsnew.rcp/src/org/txm/whatsnew/rcp/NewsEditor.java
===================================================================
--- TXM/trunk/org.txm.whatsnew.rcp/src/org/txm/whatsnew/rcp/NewsEditor.java	(revision 3551)
+++ TXM/trunk/org.txm.whatsnew.rcp/src/org/txm/whatsnew/rcp/NewsEditor.java	(revision 3552)
@@ -6,6 +6,8 @@
 import org.eclipse.core.runtime.IProgressMonitor;
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.browser.Browser;
+import org.eclipse.swt.events.MouseEvent;
+import org.eclipse.swt.events.MouseWheelListener;
 import org.eclipse.swt.events.SelectionEvent;
 import org.eclipse.swt.events.SelectionListener;
 import org.eclipse.swt.layout.GridData;
@@ -21,6 +23,7 @@
 import org.txm.core.preferences.TBXPreferences;
 import org.txm.rcp.Activator;
 import org.txm.rcp.IImageKeys;
+import org.txm.rcp.editors.TXMBrowserEditor;
 import org.txm.rcp.p2.plugins.TXMUpdateHandler;
 import org.txm.utils.io.IOUtils;
 import org.txm.utils.logger.Log;
@@ -145,6 +148,20 @@
 		browser = new Browser(parent, SWT.EMBEDDED);
 		browser.setLayoutData(new GridData(GridData.FILL, GridData.FILL, true, true));
 		
+		browser.addMouseWheelListener(new MouseWheelListener() {
+			
+			@Override
+			public void mouseScrolled(MouseEvent e) {
+				
+				if ((e.stateMask & SWT.CTRL) == SWT.CTRL) {
+					if (e.count > 0) {
+						TXMBrowserEditor.zoomIn(browser);
+					} else {
+						TXMBrowserEditor.zoomOut(browser);
+					}
+				}
+			}
+		});
 		refreshNews();
 	}
 	
Index: TXM/trunk/org.txm.treetagger.core/src/org/txm/importer/xmltxm/AnnotationInjectionFromTTOutput.groovy
===================================================================
--- TXM/trunk/org.txm.treetagger.core/src/org/txm/importer/xmltxm/AnnotationInjectionFromTTOutput.groovy	(revision 3551)
+++ TXM/trunk/org.txm.treetagger.core/src/org/txm/importer/xmltxm/AnnotationInjectionFromTTOutput.groovy	(revision 3552)
@@ -132,7 +132,7 @@
 					writer.writeCharacters(headerparser.getText());
 			} else if (event == XMLStreamConstants.COMMENT) {
 				if (start)
-					writer.writeComment(headerparser.getText());
+					writer.writeComment(headerparser.getText().replace("--", "―"));
 			}
 		}
 		headerparser.close();
Index: TXM/trunk/org.txm.connlu.core/groovy/org/txm/scripts/importer/conllu/CoNLLUImporter.groovy
===================================================================
--- TXM/trunk/org.txm.connlu.core/groovy/org/txm/scripts/importer/conllu/CoNLLUImporter.groovy	(revision 3551)
+++ TXM/trunk/org.txm.connlu.core/groovy/org/txm/scripts/importer/conllu/CoNLLUImporter.groovy	(revision 3552)
@@ -241,7 +241,7 @@
 				writer.writeCharacters("\n")
 				
 				for (def comment : comments) {
-					writer.writeComment(comment)
+					writer.writeComment(comment.replace("--", "―"))
 					writer.writeCharacters("\n")
 				}
 				
Index: TXM/trunk/org.txm.connlu.core/src/org/txm/conllu/core/function/BratPrintTree.java
===================================================================
--- TXM/trunk/org.txm.connlu.core/src/org/txm/conllu/core/function/BratPrintTree.java	(revision 3551)
+++ TXM/trunk/org.txm.connlu.core/src/org/txm/conllu/core/function/BratPrintTree.java	(revision 3552)
@@ -11,8 +11,6 @@
 public class BratPrintTree {
 	public static File print(File file, List<String> conll, String[] Tvalues, String[] NTvalues) {
 		
-		
-		
 		try {
 			String bundle_id = "org.txm.conllu.core";
 			File HTMLTEMPATE = BundleUtils.getFile(bundle_id, "template", "/", "index.html");
@@ -30,7 +28,6 @@
 			e.printStackTrace();
 		}
 		
-		
 		return file;
 	}
 }
Index: TXM/trunk/org.txm.connlu.core/src/org/txm/conllu/core/function/UDSearch.java
===================================================================
--- TXM/trunk/org.txm.connlu.core/src/org/txm/conllu/core/function/UDSearch.java	(revision 3551)
+++ TXM/trunk/org.txm.connlu.core/src/org/txm/conllu/core/function/UDSearch.java	(revision 3552)
@@ -368,8 +368,8 @@
 	public File createTemporaryFile(File resultDir) {
 		
 		try {
-			String engine = UDTreePreferences.getInstance().getString(UDTreePreferences.ENGINE);
-			if (engine.equals("brat")) {
+			String engine = this.pVisualisation;//UDTreePreferences.getInstance().getString(UDTreePreferences.VISUALISATION);
+			if (engine.equals(UDTreePreferences.BRAT)) {
 				return File.createTempFile("UDTreeSearch", ".html", resultDir);
 			} else {
 				return File.createTempFile("UDTreeSearch", ".svg", resultDir);
Index: TXM/trunk/org.txm.connlu.core/template/index.html
===================================================================
--- TXM/trunk/org.txm.connlu.core/template/index.html	(revision 3551)
+++ TXM/trunk/org.txm.connlu.core/template/index.html	(revision 3552)
@@ -2,14 +2,15 @@
 <html>
 
 <head>
-    <meta charset="utf-8">
-    <title>conllu.js</title>
-    <meta name="viewport" content="width=device-width">
-    <meta name="description" content="CoNLL-U format library for JavaScript">
+    
+    <title>UD</title>
+    <meta charset="utf-8"></meta>
+    <meta name="viewport" content="width=device-width"></meta>
+    <meta name="description" content="CoNLL-U format library for JavaScript"></meta>
 
-    <link rel="stylesheet" href="HTMLROOTDIRECTORY/css/jquery-ui-redmond.css">
-    <link rel="stylesheet" href="HTMLROOTDIRECTORY/css/main.css">
-    <link rel="stylesheet" href="HTMLROOTDIRECTORY/css/style-vis.css">
+    <link rel="stylesheet" href="HTMLROOTDIRECTORY/css/jquery-ui-redmond.css"></link>
+    <link rel="stylesheet" href="HTMLROOTDIRECTORY/css/main.css"></link>
+    <link rel="stylesheet" href="HTMLROOTDIRECTORY/css/style-vis.css"></link>
 
     <script type="text/javascript" src="HTMLROOTDIRECTORY/lib/ext/head.load.min.js"></script>
 </head>
@@ -18,36 +19,37 @@
 
 <code class="conllu-parse" tabs="yes"><pre>
 CONLLUSENTENCE
+
 </pre></code>
 
 </body>
 
 <script type="text/javascript">
-    var root = 'HTMLROOTDIRECTORY'; // filled in by jekyll
+    var root = 'HTMLROOTDIRECTORY/'; // filled in by jekyll
     head.js(
         // External libraries
-        root + '/lib/ext/jquery.min.js',
-        root + '/lib/ext/jquery.svg.min.js',
-        root + '/lib/ext/jquery.svgdom.min.js',
-        root + '/lib/ext/jquery-ui.min.js',
-        root + '/lib/ext/waypoints.min.js',
+        root + 'lib/ext/jquery.min.js',
+        root + 'lib/ext/jquery.svg.min.js',
+        root + 'lib/ext/jquery.svgdom.min.js',
+        root + 'lib/ext/jquery-ui.min.js',
+        root + 'lib/ext/waypoints.min.js',
 
         // brat helper modules
-        root + '/lib/brat/configuration.js',
-        root + '/lib/brat/util.js',
-        root + '/lib/brat/annotation_log.js',
-        root + '/lib/ext/webfont.js',
+        root + 'lib/brat/configuration.js',
+        root + 'lib/brat/util.js',
+        root + 'lib/brat/annotation_log.js',
+        root + 'lib/ext/webfont.js',
         // brat modules
-        root + '/lib/brat/dispatcher.js',
-        root + '/lib/brat/url_monitor.js',
-        root + '/lib/brat/visualizer.js',
+        root + 'lib/brat/dispatcher.js',
+        root + 'lib/brat/url_monitor.js',
+        root + 'lib/brat/visualizer.js',
 
         // annotation documentation support
         'http://spyysalo.github.io/annodoc/lib/local/annodoc.js',
-        root + '/lib/local/config.js',
+        root + 'lib/local/config.js',
 
         // the conllu.js library itself
-        root + '/conllu.js'
+        root + 'conllu.js'
     );
 
     var webFontURLs = [
Index: TXM/trunk/org.txm.treesearch.rcp/src/org/txm/treesearch/editor/TreeSearchEditor.java
===================================================================
--- TXM/trunk/org.txm.treesearch.rcp/src/org/txm/treesearch/editor/TreeSearchEditor.java	(revision 3551)
+++ TXM/trunk/org.txm.treesearch.rcp/src/org/txm/treesearch/editor/TreeSearchEditor.java	(revision 3552)
@@ -7,6 +7,8 @@
 
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.browser.Browser;
+import org.eclipse.swt.events.MouseEvent;
+import org.eclipse.swt.events.MouseWheelListener;
 import org.eclipse.swt.events.SelectionEvent;
 import org.eclipse.swt.events.SelectionListener;
 import org.eclipse.swt.layout.GridData;
@@ -28,6 +30,7 @@
 import org.txm.core.results.Parameter;
 import org.txm.edition.rcp.handlers.OpenEdition;
 import org.txm.rcp.IImageKeys;
+import org.txm.rcp.editors.TXMBrowserEditor;
 import org.txm.rcp.editors.TXMEditor;
 import org.txm.rcp.editors.TXMResultEditorInput;
 import org.txm.rcp.messages.TXMUIMessages;
@@ -296,6 +299,14 @@
 			}
 		});
 		
+		search.setImage(IImageKeys.getImage(IImageKeys.ACTION_SEARCH));
+		queryArea.setVisible(false);
+		queryAreaLabel.setVisible(false);
+		queryAreaLayoutData.heightHint = 0;
+		queryAreaLayoutData.minimumHeight = 0;
+		queryAreaLayoutData.grabExcessVerticalSpace = false;
+		queryAreaLayoutData.grabExcessHorizontalSpace = false;
+		
 		// fill param Area
 		Label l3 = new Label(navigationAreaComposite, SWT.NONE);
 		l3.setText("Match "); //$NON-NLS-1$
@@ -342,6 +353,21 @@
 		svgPanel = new Browser(mainPanel, SWT.EMBEDDED | SWT.NO_BACKGROUND);
 		svgPanel.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
 		
+		svgPanel.addMouseWheelListener(new MouseWheelListener() {
+			
+			@Override
+			public void mouseScrolled(MouseEvent e) {
+				
+				if ((e.stateMask & SWT.CTRL) == SWT.CTRL) {
+					if (e.count > 0) {
+						TXMBrowserEditor.zoomIn(svgPanel);
+					} else {
+						TXMBrowserEditor.zoomOut(svgPanel);
+					}
+				}
+			}
+		});
+		
 		// this.getTopToolbar().setVisible(COMPUTING_PARAMETERS_GROUP_ID, true);
 		initializeFields();
 	}
Index: TXM/trunk/org.txm.properties.rcp/src/org/txm/properties/rcp/editors/DocumentationTab.java
===================================================================
--- TXM/trunk/org.txm.properties.rcp/src/org/txm/properties/rcp/editors/DocumentationTab.java	(revision 3551)
+++ TXM/trunk/org.txm.properties.rcp/src/org/txm/properties/rcp/editors/DocumentationTab.java	(revision 3552)
@@ -2,6 +2,8 @@
 
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.browser.Browser;
+import org.eclipse.swt.events.MouseEvent;
+import org.eclipse.swt.events.MouseWheelListener;
 import org.eclipse.swt.events.SelectionListener;
 import org.eclipse.swt.layout.GridData;
 import org.eclipse.swt.widgets.Composite;
@@ -13,6 +15,7 @@
 import org.txm.objects.Project;
 import org.txm.properties.rcp.messages.PropertiesUIMessages;
 import org.txm.rcp.IImageKeys;
+import org.txm.rcp.editors.TXMBrowserEditor;
 import org.txm.rcp.swt.GLComposite;
 import org.txm.utils.logger.Log;
 
@@ -43,6 +46,21 @@
 		createToolbar(parent);
 		this.browser = new Browser(parent, SWT.NONE);
 		this.browser.setLayoutData(new GridData(GridData.FILL, GridData.FILL, true, true));
+		
+		browser.addMouseWheelListener(new MouseWheelListener() {
+			
+			@Override
+			public void mouseScrolled(MouseEvent e) {
+				
+				if ((e.stateMask & SWT.CTRL) == SWT.CTRL) {
+					if (e.count > 0) {
+						TXMBrowserEditor.zoomIn(browser);
+					} else {
+						TXMBrowserEditor.zoomOut(browser);
+					}
+				}
+			}
+		});
 	}
 	
 	private ToolBar createToolbar(Composite parent) {
Index: TXM/trunk/org.txm.properties.rcp/src/org/txm/properties/rcp/editors/PropertiesGeneralTab.java
===================================================================
--- TXM/trunk/org.txm.properties.rcp/src/org/txm/properties/rcp/editors/PropertiesGeneralTab.java	(revision 3551)
+++ TXM/trunk/org.txm.properties.rcp/src/org/txm/properties/rcp/editors/PropertiesGeneralTab.java	(revision 3552)
@@ -8,6 +8,8 @@
 import org.eclipse.swt.browser.Browser;
 import org.eclipse.swt.events.KeyEvent;
 import org.eclipse.swt.events.KeyListener;
+import org.eclipse.swt.events.MouseEvent;
+import org.eclipse.swt.events.MouseWheelListener;
 import org.eclipse.swt.events.SelectionEvent;
 import org.eclipse.swt.events.SelectionListener;
 import org.eclipse.swt.graphics.Image;
@@ -20,11 +22,13 @@
 import org.txm.properties.rcp.Messages;
 import org.txm.properties.rcp.messages.PropertiesUIMessages;
 import org.txm.rcp.IImageKeys;
+import org.txm.rcp.editors.TXMBrowserEditor;
 import org.txm.rcp.views.corpora.CorporaView;
 
 public class PropertiesGeneralTab extends PropertiesTab {
 	
 	private Text nameField;
+	private Browser browser;
 	
 	public PropertiesGeneralTab(TabFolder folder, PropertiesPagedEditor editor2) {
 		super(folder, editor2);
@@ -147,9 +151,24 @@
 		l.setLayoutData(new GridData(GridData.BEGINNING, GridData.BEGINNING, false, false));
 		l.setText(PropertiesUIMessages.Description);
 		
-		Browser b = new Browser(parent, SWT.H_SCROLL | SWT.V_SCROLL);
-		b.setLayoutData(new GridData(GridData.FILL, GridData.FILL, true, true, 1, 1));
-		b.setText(editor.getResult().getProject().getDescription());
+		browser = new Browser(parent, SWT.H_SCROLL | SWT.V_SCROLL);
+		browser.setLayoutData(new GridData(GridData.FILL, GridData.FILL, true, true, 1, 1));
+		browser.setText(editor.getResult().getProject().getDescription());
+		
+		browser.addMouseWheelListener(new MouseWheelListener() {
+			
+			@Override
+			public void mouseScrolled(MouseEvent e) {
+				
+				if ((e.stateMask & SWT.CTRL) == SWT.CTRL) {
+					if (e.count > 0) {
+						TXMBrowserEditor.zoomIn(browser);
+					} else {
+						TXMBrowserEditor.zoomOut(browser);
+					}
+				}
+			}
+		});
 	}
 	
 	public void toClipboard() {
Index: TXM/trunk/org.txm.properties.rcp/src/org/txm/properties/rcp/editors/PropertiesEditor.java
===================================================================
--- TXM/trunk/org.txm.properties.rcp/src/org/txm/properties/rcp/editors/PropertiesEditor.java	(revision 3551)
+++ TXM/trunk/org.txm.properties.rcp/src/org/txm/properties/rcp/editors/PropertiesEditor.java	(revision 3552)
@@ -7,6 +7,8 @@
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.browser.Browser;
 import org.eclipse.swt.custom.StyledText;
+import org.eclipse.swt.events.MouseEvent;
+import org.eclipse.swt.events.MouseWheelListener;
 import org.eclipse.swt.events.SelectionEvent;
 import org.eclipse.swt.events.SelectionListener;
 import org.eclipse.swt.layout.GridData;
@@ -24,6 +26,7 @@
 import org.txm.properties.core.preferences.PropertiesPreferences;
 import org.txm.properties.rcp.messages.PropertiesUIMessages;
 import org.txm.rcp.IImageKeys;
+import org.txm.rcp.editors.TXMBrowserEditor;
 import org.txm.rcp.editors.TXMEditor;
 import org.txm.rcp.editors.listeners.ComputeSelectionListener;
 import org.txm.rcp.swt.GLComposite;
@@ -146,6 +149,21 @@
 
 		this.browser = new Browser(displayArea, SWT.NONE);
 		this.browser.setLayoutData(new GridData(GridData.FILL, GridData.FILL, true, true));
+		
+		browser.addMouseWheelListener(new MouseWheelListener() {
+			
+			@Override
+			public void mouseScrolled(MouseEvent e) {
+				
+				if ((e.stateMask & SWT.CTRL) == SWT.CTRL) {
+					if (e.count > 0) {
+						TXMBrowserEditor.zoomIn(browser);
+					} else {
+						TXMBrowserEditor.zoomOut(browser);
+					}
+				}
+			}
+		});
 	}
 
 	@Override
Index: TXM/trunk/org.txm.properties.rcp/src/org/txm/properties/rcp/editors/PropertiesTXMResultTab.java
===================================================================
--- TXM/trunk/org.txm.properties.rcp/src/org/txm/properties/rcp/editors/PropertiesTXMResultTab.java	(revision 3551)
+++ TXM/trunk/org.txm.properties.rcp/src/org/txm/properties/rcp/editors/PropertiesTXMResultTab.java	(revision 3552)
@@ -5,12 +5,15 @@
 
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.browser.Browser;
+import org.eclipse.swt.events.MouseEvent;
+import org.eclipse.swt.events.MouseWheelListener;
 import org.eclipse.swt.layout.GridData;
 import org.eclipse.swt.widgets.Label;
 import org.eclipse.swt.widgets.TabFolder;
 import org.eclipse.swt.widgets.TabItem;
 import org.txm.core.results.TXMResult;
 import org.txm.properties.rcp.Messages;
+import org.txm.rcp.editors.TXMBrowserEditor;
 import org.txm.rcp.swt.GLComposite;
 import org.txm.utils.logger.Log;
 
@@ -37,6 +40,21 @@
 	protected void buildContent(GLComposite parent) {
 		this.browser = new Browser(parent, SWT.NONE);
 		this.browser.setLayoutData(new GridData(GridData.FILL, GridData.FILL, true, true));
+		
+		browser.addMouseWheelListener(new MouseWheelListener() {
+			
+			@Override
+			public void mouseScrolled(MouseEvent e) {
+				
+				if ((e.stateMask & SWT.CTRL) == SWT.CTRL) {
+					if (e.count > 0) {
+						TXMBrowserEditor.zoomIn(browser);
+					} else {
+						TXMBrowserEditor.zoomOut(browser);
+					}
+				}
+			}
+		});
 	}
 
 	@Override
Index: TXM/trunk/org.txm.backtomedia.rcp/src/org/txm/backtomedia/editors/player/HTMLPlayer.java
===================================================================
--- TXM/trunk/org.txm.backtomedia.rcp/src/org/txm/backtomedia/editors/player/HTMLPlayer.java	(revision 3551)
+++ TXM/trunk/org.txm.backtomedia.rcp/src/org/txm/backtomedia/editors/player/HTMLPlayer.java	(revision 3552)
@@ -12,6 +12,8 @@
 import org.eclipse.swt.events.DisposeListener;
 import org.eclipse.swt.events.KeyEvent;
 import org.eclipse.swt.events.KeyListener;
+import org.eclipse.swt.events.MouseEvent;
+import org.eclipse.swt.events.MouseWheelListener;
 import org.eclipse.swt.events.SelectionEvent;
 import org.eclipse.swt.events.SelectionListener;
 import org.eclipse.swt.layout.GridData;
@@ -25,6 +27,7 @@
 import org.txm.backtomedia.commands.function.OpenMediaPlayer;
 import org.txm.backtomedia.commands.function.SimpleFileDialog;
 import org.txm.backtomedia.preferences.BackToMediaPreferences;
+import org.txm.rcp.editors.TXMBrowserEditor;
 import org.txm.rcp.swt.GLComposite;
 
 public class HTMLPlayer extends Composite implements IPlayer {
@@ -63,6 +66,21 @@
 		browser = new Browser(this, SWT.NONE);
 		browser.setLayoutData(new GridData(GridData.FILL, GridData.FILL, true, true));
 		
+		browser.addMouseWheelListener(new MouseWheelListener() {
+			
+			@Override
+			public void mouseScrolled(MouseEvent e) {
+				
+				if ((e.stateMask & SWT.CTRL) == SWT.CTRL) {
+					if (e.count > 0) {
+						TXMBrowserEditor.zoomIn(browser);
+					} else {
+						TXMBrowserEditor.zoomOut(browser);
+					}
+				}
+			}
+		});
+		
 		// use flex  to center the video
 		// use ondataload fix the video size depending on its ratio and the viewport height
 		// diable the fullscreen button, use a CSS special rule for webkit
Index: TXM/trunk/org.txm.core/src/java/org/txm/scripts/importer/SplitBy.groovy
===================================================================
--- TXM/trunk/org.txm.core/src/java/org/txm/scripts/importer/SplitBy.groovy	(revision 3551)
+++ TXM/trunk/org.txm.core/src/java/org/txm/scripts/importer/SplitBy.groovy	(revision 3552)
@@ -164,7 +164,7 @@
 		}
 		else if (event == XMLStreamConstants.COMMENT)
 		{
-			writer.writeComment(parser.getText());
+			writer.writeComment(parser.getText().replace("--", "―"));
 		}
 	}
 	
Index: TXM/trunk/org.txm.core/src/java/org/txm/importer/StaxIdentityParser.java
===================================================================
--- TXM/trunk/org.txm.core/src/java/org/txm/importer/StaxIdentityParser.java	(revision 3551)
+++ TXM/trunk/org.txm.core/src/java/org/txm/importer/StaxIdentityParser.java	(revision 3552)
@@ -476,7 +476,7 @@
 	}
 	
 	protected void processComment() throws XMLStreamException {
-		writer.writeComment(parser.getText());
+		writer.writeComment(parser.getText().replace("--", "―"));
 	}
 	
 	protected void processEndElement() throws XMLStreamException {
Index: TXM/trunk/org.txm.core/src/java/org/txm/importer/scripts/xmltxm/AnnotationInjectionFromTTOutput.groovy
===================================================================
--- TXM/trunk/org.txm.core/src/java/org/txm/importer/scripts/xmltxm/AnnotationInjectionFromTTOutput.groovy	(revision 3551)
+++ TXM/trunk/org.txm.core/src/java/org/txm/importer/scripts/xmltxm/AnnotationInjectionFromTTOutput.groovy	(revision 3552)
@@ -132,7 +132,7 @@
 					writer.writeCharacters(headerparser.getText());
 			} else if (event == XMLStreamConstants.COMMENT) {
 				if (start)
-					writer.writeComment(headerparser.getText());
+					writer.writeComment(headerparser.getText().replace("--", "―"));
 			}
 		}
 		headerparser.close();
Index: TXM/trunk/org.txm.core/src/java/org/txm/importer/scripts/xmltxm/AnnotationInjection.groovy
===================================================================
--- TXM/trunk/org.txm.core/src/java/org/txm/importer/scripts/xmltxm/AnnotationInjection.groovy	(revision 3551)
+++ TXM/trunk/org.txm.core/src/java/org/txm/importer/scripts/xmltxm/AnnotationInjection.groovy	(revision 3552)
@@ -149,7 +149,7 @@
 					writer.writeCharacters(headerparser.getText());
 			} else if (event == XMLStreamConstants.COMMENT) {
 				if (start)
-					writer.writeComment(headerparser.getText());
+					writer.writeComment(headerparser.getText().replace("--", "―"));
 			}
 		}
 		headerparser.close();
Index: TXM/trunk/org.txm.lexicaltable.rcp/src/org/txm/lexicaltable/rcp/editors/LexicalTableEditor.java
===================================================================
--- TXM/trunk/org.txm.lexicaltable.rcp/src/org/txm/lexicaltable/rcp/editors/LexicalTableEditor.java	(revision 3551)
+++ TXM/trunk/org.txm.lexicaltable.rcp/src/org/txm/lexicaltable/rcp/editors/LexicalTableEditor.java	(revision 3552)
@@ -534,7 +534,7 @@
 			for (int i = 0; i < colNames.length; i++) {
 				
 				if (i >= MAX_NUMBER_OF_COLUMNS) {
-					Log.warning(NLS.bind("Warning The number of columns exceeds {0}. the table has been cut. You can, change the maximum in the TXM > User preference page", MAX_NUMBER_OF_COLUMNS));
+					Log.warning(NLS.bind("Warning The number of columns exceeds {0} ({1}). the table has been cut. You can, change the maximum in the TXM > User preference page", MAX_NUMBER_OF_COLUMNS, colNames.length));
 					break;
 				}
 				TableViewerColumn column = new TableViewerColumn(viewer, SWT.RIGHT);
Index: TXM/trunk/org.txm.edition.rcp/src/org/txm/edition/rcp/editors/EditionPanel.java
===================================================================
--- TXM/trunk/org.txm.edition.rcp/src/org/txm/edition/rcp/editors/EditionPanel.java	(revision 3551)
+++ TXM/trunk/org.txm.edition.rcp/src/org/txm/edition/rcp/editors/EditionPanel.java	(revision 3552)
@@ -30,6 +30,7 @@
 import org.eclipse.swt.events.MenuListener;
 import org.eclipse.swt.events.MouseEvent;
 import org.eclipse.swt.events.MouseListener;
+import org.eclipse.swt.events.MouseWheelListener;
 import org.eclipse.swt.events.SelectionEvent;
 import org.eclipse.swt.events.SelectionListener;
 import org.eclipse.swt.widgets.Composite;
@@ -46,6 +47,7 @@
 import org.txm.rcp.StatusLine;
 import org.txm.rcp.commands.ShowSelected;
 import org.txm.rcp.editors.CommandLink;
+import org.txm.rcp.editors.TXMBrowserEditor;
 import org.txm.rcp.utils.IOClipboard;
 import org.txm.utils.io.IOUtils;
 import org.txm.utils.logger.Log;
@@ -719,6 +721,21 @@
 			}
 		});
 		
+		browser.addMouseWheelListener(new MouseWheelListener() {
+			
+			@Override
+			public void mouseScrolled(MouseEvent e) {
+				
+				if ((e.stateMask & SWT.CTRL) == SWT.CTRL) {
+					if (e.count > 0) {
+						TXMBrowserEditor.zoomIn(getBrowser());
+					} else {
+						TXMBrowserEditor.zoomOut(getBrowser());
+					}
+				}
+			}
+		});
+		
 		KeyListener kListener = new KeyListener() {
 			
 			boolean debug = true;
@@ -1463,6 +1480,47 @@
 				String text = EditionPanel.this.getTextSelection();
 				copyItem.setEnabled(text != null && text.length() > 0);
 				
+				MenuItem zoomInItem = new MenuItem(menu, SWT.NONE);
+				zoomInItem.setText("Zoom avant");
+				zoomInItem.addSelectionListener(new SelectionListener() {
+					
+					@Override
+					public void widgetSelected(SelectionEvent e) {
+						TXMBrowserEditor.zoomIn(browser);
+					}
+					
+					@Override
+					public void widgetDefaultSelected(SelectionEvent e) {}
+				});
+				
+				MenuItem zoomOutItem = new MenuItem(menu, SWT.NONE);
+				zoomOutItem.setText("Zoom arrière");
+				zoomOutItem.addSelectionListener(new SelectionListener() {
+					
+					@Override
+					public void widgetSelected(SelectionEvent e) {
+						
+						TXMBrowserEditor.zoomOut(browser);
+					}
+					
+					@Override
+					public void widgetDefaultSelected(SelectionEvent e) {}
+				});
+				
+				MenuItem zoomResetItem = new MenuItem(menu, SWT.NONE);
+				zoomResetItem.setText("Zoom initial");
+				zoomResetItem.addSelectionListener(new SelectionListener() {
+					
+					@Override
+					public void widgetSelected(SelectionEvent e) {
+						
+						TXMBrowserEditor.zoomReset(browser);
+					}
+					
+					@Override
+					public void widgetDefaultSelected(SelectionEvent e) {}
+				});
+				
 				MenuItem reloadItem = new MenuItem(menu, SWT.NONE);
 				reloadItem.setText(EditionUIMessages.reload);
 				reloadItem.addSelectionListener(new SelectionListener() {
