diff --git a/src/Test/Core/MergeShortLinesUtilsTest.cs b/src/Test/Core/MergeShortLinesUtilsTest.cs
new file mode 100644
index 000000000..0c996b668
--- /dev/null
+++ b/src/Test/Core/MergeShortLinesUtilsTest.cs
@@ -0,0 +1,46 @@
+using Microsoft.VisualStudio.TestTools.UnitTesting;
+using Nikse.SubtitleEdit.Core.Common;
+
+namespace Test.Core
+{
+ [TestClass]
+ public class MergeShortLinesUtilsTest
+ {
+ [TestMethod]
+ public void ThreeShortLines()
+ {
+ var subtitle = new Subtitle();
+ subtitle.Paragraphs.Add(new Paragraph("How", 0, 200));
+ subtitle.Paragraphs.Add(new Paragraph("are", 200, 400));
+ subtitle.Paragraphs.Add(new Paragraph("you?", 400, 600));
+ var mergedSubtitle = MergeShortLinesUtils.MergeShortLinesInSubtitle(subtitle, 500, 80, true);
+
+ Assert.AreEqual(1, mergedSubtitle.Paragraphs.Count);
+ Assert.AreEqual("How are you?", mergedSubtitle.Paragraphs[0].Text);
+ }
+
+ [TestMethod]
+ public void ThreeShortLinesNoMergeDueToLength()
+ {
+ var subtitle = new Subtitle();
+ subtitle.Paragraphs.Add(new Paragraph("How", 0, 200));
+ subtitle.Paragraphs.Add(new Paragraph("are", 200, 400));
+ subtitle.Paragraphs.Add(new Paragraph("you?", 400, 600));
+ var mergedSubtitle = MergeShortLinesUtils.MergeShortLinesInSubtitle(subtitle, 500, 2, true);
+
+ Assert.AreEqual(3, mergedSubtitle.Paragraphs.Count);
+ }
+
+ [TestMethod]
+ public void ThreeShortLinesNoMergeDueToGap()
+ {
+ var subtitle = new Subtitle();
+ subtitle.Paragraphs.Add(new Paragraph("How", 0, 200));
+ subtitle.Paragraphs.Add(new Paragraph("are", 2000, 2400));
+ subtitle.Paragraphs.Add(new Paragraph("you?", 4400, 4600));
+ var mergedSubtitle = MergeShortLinesUtils.MergeShortLinesInSubtitle(subtitle, 500, 80, true);
+
+ Assert.AreEqual(3, mergedSubtitle.Paragraphs.Count);
+ }
+ }
+}
diff --git a/src/Test/Test.csproj b/src/Test/Test.csproj
index cf4828629..bda14cee6 100644
--- a/src/Test/Test.csproj
+++ b/src/Test/Test.csproj
@@ -64,6 +64,7 @@
+
diff --git a/src/libse/Common/MergeShortLinesUtils.cs b/src/libse/Common/MergeShortLinesUtils.cs
index ce764d808..25b4bcf50 100644
--- a/src/libse/Common/MergeShortLinesUtils.cs
+++ b/src/libse/Common/MergeShortLinesUtils.cs
@@ -6,11 +6,11 @@ namespace Nikse.SubtitleEdit.Core.Common
{
public static Subtitle MergeShortLinesInSubtitle(Subtitle subtitle, double maxMillisecondsBetweenLines, int maxCharacters, bool onlyContinuousLines)
{
- string language = LanguageAutoDetect.AutoDetectGoogleLanguage(subtitle);
+ var language = LanguageAutoDetect.AutoDetectGoogleLanguage(subtitle);
var mergedSubtitle = new Subtitle();
- bool lastMerged = false;
+ var lastMerged = false;
Paragraph p = null;
- for (int i = 1; i < subtitle.Paragraphs.Count; i++)
+ for (var i = 1; i < subtitle.Paragraphs.Count; i++)
{
if (!lastMerged)
{
@@ -22,12 +22,11 @@ namespace Nikse.SubtitleEdit.Core.Common
{
if (Utilities.QualifiesForMerge(p, next, maxMillisecondsBetweenLines, maxCharacters, onlyContinuousLines))
{
- if (GetStartTag(p.Text) == GetStartTag(next.Text) &&
- GetEndTag(p.Text) == GetEndTag(next.Text))
+ if (GetStartTag(p.Text) == GetStartTag(next.Text) && GetEndTag(p.Text) == GetEndTag(next.Text))
{
- string s1 = p.Text.Trim();
+ var s1 = p.Text.Trim();
s1 = s1.Substring(0, s1.Length - GetEndTag(s1).Length);
- string s2 = next.Text.Trim();
+ var s2 = next.Text.Trim();
s2 = s2.Substring(GetStartTag(s2).Length);
p.Text = Utilities.AutoBreakLine(s1 + Environment.NewLine + s2, language);
}
@@ -71,7 +70,7 @@ namespace Nikse.SubtitleEdit.Core.Common
}
var endTag = string.Empty;
- int start = text.LastIndexOf("", StringComparison.Ordinal);
+ var start = text.LastIndexOf("", StringComparison.Ordinal);
if (start > 0 && start >= text.Length - 8)
{
endTag = text.Substring(start);
@@ -93,11 +92,12 @@ namespace Nikse.SubtitleEdit.Core.Common
}
var startTag = string.Empty;
- int end = text.IndexOf('>');
+ var end = text.IndexOf('>');
if (end > 0 && end < 25)
{
startTag = text.Substring(0, end + 1);
}
+
return startTag;
}
}
diff --git a/src/ui/Logic/CommandLineConvert/CommandLineConverter.cs b/src/ui/Logic/CommandLineConvert/CommandLineConverter.cs
index fc1e863da..83ea871c9 100644
--- a/src/ui/Logic/CommandLineConvert/CommandLineConverter.cs
+++ b/src/ui/Logic/CommandLineConvert/CommandLineConverter.cs
@@ -13,7 +13,7 @@ using Nikse.SubtitleEdit.Logic.Ocr;
using System;
using System.Collections.Generic;
using System.Drawing;
-using System.Drawing.Imaging;
+using System.Drawing.Imaging;
using System.Globalization;
using System.IO;
using System.Linq;