* merge with HEAD.
* Improved script builder perfomance for tcl
* fixed bug with long mixin index saving.
* some debugger improvements.
diff --git a/core/plugins/org.eclipse.dltk.ui/src/org/eclipse/dltk/ui/templates/ScriptTempalteCompletionProcessor.java b/core/plugins/org.eclipse.dltk.ui/src/org/eclipse/dltk/ui/templates/ScriptTempalteCompletionProcessor.java
index 3e62a41..16f2012 100644
--- a/core/plugins/org.eclipse.dltk.ui/src/org/eclipse/dltk/ui/templates/ScriptTempalteCompletionProcessor.java
+++ b/core/plugins/org.eclipse.dltk.ui/src/org/eclipse/dltk/ui/templates/ScriptTempalteCompletionProcessor.java
@@ -121,7 +121,7 @@
 
 	protected ICompletionProposal createProposal(Template template,
 			TemplateContext context, IRegion region, int relevance) {	
-		TemplateProposal proposal = new TemplateProposal(template, context, region, getImage(template), relevance);
+		TemplateProposal proposal = new ScriptTemplateProposal(template, context, region, getImage(template), relevance);
 		proposal.setInformationControlCreator(getInformationControlCreator());
 		return proposal;
 	}
diff --git a/core/plugins/org.eclipse.dltk.ui/src/org/eclipse/dltk/ui/templates/ScriptTemplateProposal.java b/core/plugins/org.eclipse.dltk.ui/src/org/eclipse/dltk/ui/templates/ScriptTemplateProposal.java
new file mode 100644
index 0000000..daf5a93
--- /dev/null
+++ b/core/plugins/org.eclipse.dltk.ui/src/org/eclipse/dltk/ui/templates/ScriptTemplateProposal.java
@@ -0,0 +1,46 @@
+package org.eclipse.dltk.ui.templates;
+
+import org.eclipse.jface.text.BadLocationException;
+import org.eclipse.jface.text.IDocument;
+import org.eclipse.jface.text.IRegion;
+import org.eclipse.jface.text.TextUtilities;
+import org.eclipse.jface.text.templates.Template;
+import org.eclipse.jface.text.templates.TemplateBuffer;
+import org.eclipse.jface.text.templates.TemplateContext;
+import org.eclipse.jface.text.templates.TemplateException;
+import org.eclipse.jface.text.templates.TemplateProposal;
+import org.eclipse.swt.graphics.Image;
+
+public class ScriptTemplateProposal extends TemplateProposal {
+
+	public ScriptTemplateProposal(Template template, TemplateContext context,
+			IRegion region, Image image, int relevance) {
+		super(template, context, region, image, relevance);
+	}
+
+	public String getAdditionalProposalInfo() {
+		TemplateContext context = getContext();
+		if (context instanceof ScriptTemplateContext) {
+			ScriptTemplateContext scriptContext = (ScriptTemplateContext) context;
+
+			try {
+				getContext().setReadOnly(true);
+				TemplateBuffer templateBuffer;
+				templateBuffer = scriptContext.evaluate(getTemplate());
+
+				// restore indenting
+				IDocument document = scriptContext.getDocument();
+				String indenting = ScriptTemplateContext.calculateIndent(
+						document, scriptContext.getStart());
+				String delimeter = TextUtilities.getDefaultLineDelimiter(document);
+
+				String info = templateBuffer.getString();
+				return info.replaceAll(delimeter + indenting, delimeter);
+			} catch (BadLocationException e) {
+			} catch (TemplateException e1) {
+			}
+		}
+		return null;
+	}
+
+}