diff --git a/data/templates/project/CSharp/SharpDevelopAddin.xpt b/data/templates/project/CSharp/SharpDevelopAddin.xpt
index d4793cb00c..a747c09deb 100644
--- a/data/templates/project/CSharp/SharpDevelopAddin.xpt
+++ b/data/templates/project/CSharp/SharpDevelopAddin.xpt
@@ -8,7 +8,7 @@
SharpDevelop
C#.Project.ControlLibrary
${res:Templates.Project.SharpDevelopAddin.Description}
- v2.0
+ v4.0
@@ -28,6 +28,10 @@
+
+
+
+
diff --git a/src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Rendering/LinkElementGenerator.cs b/src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Rendering/LinkElementGenerator.cs
index a44e15f40e..8af70bf255 100644
--- a/src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Rendering/LinkElementGenerator.cs
+++ b/src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Rendering/LinkElementGenerator.cs
@@ -32,7 +32,7 @@ namespace ICSharpCode.AvalonEdit.Rendering
{
// a link starts with a protocol (or just with www), followed by 0 or more 'link characters', followed by a link end character
// (this allows accepting punctuation inside links but not at the end)
- internal readonly static Regex defaultLinkRegex = new Regex(@"\b(https?://|ftp://|www\.)[\w\d\._/\-~%@()+:?&=#]*[\w\d/]");
+ internal readonly static Regex defaultLinkRegex = new Regex(@"\b(https?://|ftp://|www\.)[\w\d\._/\-~%@()+:?&=#!]*[\w\d/]");
// try to detect email addresses
internal readonly static Regex defaultMailRegex = new Regex(@"\b[\w\d\.\-]+\@[\w\d\.\-]+\.[a-z]{2,6}\b");
diff --git a/src/Main/StartUp/Project/Dialogs/SplashScreen.cs b/src/Main/StartUp/Project/Dialogs/SplashScreen.cs
index 03c046f2dd..f947f26572 100644
--- a/src/Main/StartUp/Project/Dialogs/SplashScreen.cs
+++ b/src/Main/StartUp/Project/Dialogs/SplashScreen.cs
@@ -92,7 +92,12 @@ namespace ICSharpCode.SharpDevelop
markerLength = 2;
}
- parameterList.Add(arg.Substring(markerLength));
+ string param = arg.Substring(markerLength);
+ // work around .NET "feature" that causes trouble with /addindir:"c:\temp\"
+ // http://www.mobzystems.com/code/bugingetcommandlineargs.aspx
+ if (param.EndsWith("\"", StringComparison.Ordinal))
+ param = param.Substring(0, param.Length - 1) + "\\";
+ parameterList.Add(param);
} else {
requestedFileList.Add(arg);
}