From 57ae834c23fe00201959060ed9bfe5178a2e83a0 Mon Sep 17 00:00:00 2001 From: niksedk Date: Thu, 5 Dec 2019 06:44:02 +0100 Subject: [PATCH] Refact cmd line (minor) --- libse/MergeShortLinesUtils.cs | 8 +-- .../CommandLineConverter.cs | 52 ++++--------------- 2 files changed, 14 insertions(+), 46 deletions(-) diff --git a/libse/MergeShortLinesUtils.cs b/libse/MergeShortLinesUtils.cs index a0858b954..31c78a138 100644 --- a/libse/MergeShortLinesUtils.cs +++ b/libse/MergeShortLinesUtils.cs @@ -2,7 +2,7 @@ namespace Nikse.SubtitleEdit.Core { - public class MergeShortLinesUtils + public static class MergeShortLinesUtils { public static Subtitle MergeShortLinesInSubtitle(Subtitle subtitle, double maxMillisecondsBetweenLines, int maxCharacters, bool onlyContinuousLines) { @@ -17,7 +17,7 @@ namespace Nikse.SubtitleEdit.Core p = new Paragraph(subtitle.GetParagraphOrDefault(i - 1)); mergedSubtitle.Paragraphs.Add(p); } - Paragraph next = subtitle.GetParagraphOrDefault(i); + var next = subtitle.GetParagraphOrDefault(i); if (next != null) { if (Utilities.QualifiesForMerge(p, next, maxMillisecondsBetweenLines, maxCharacters, onlyContinuousLines)) @@ -69,7 +69,7 @@ namespace Nikse.SubtitleEdit.Core return string.Empty; } - string endTag = string.Empty; + var endTag = string.Empty; int start = text.LastIndexOf(" 0 && start >= text.Length - 8) { @@ -91,7 +91,7 @@ namespace Nikse.SubtitleEdit.Core return string.Empty; } - string startTag = string.Empty; + var startTag = string.Empty; int end = text.IndexOf('>'); if (end > 0 && end < 25) { diff --git a/src/Logic/CommandLineConvert/CommandLineConverter.cs b/src/Logic/CommandLineConvert/CommandLineConverter.cs index 19d8af09b..bb140c105 100644 --- a/src/Logic/CommandLineConvert/CommandLineConverter.cs +++ b/src/Logic/CommandLineConvert/CommandLineConverter.cs @@ -123,12 +123,12 @@ namespace Nikse.SubtitleEdit.Logic.CommandLineConvert _stdOutWriter.WriteLine(" The following operations are applied in command line order"); _stdOutWriter.WriteLine(" from left to right, and can be specified multiple times."); _stdOutWriter.WriteLine(" /FixCommonErrors"); + _stdOutWriter.WriteLine(" /MergeSameTimeCodes"); + _stdOutWriter.WriteLine(" /MergeShortLines"); _stdOutWriter.WriteLine(" /ReverseRtlStartEnd"); _stdOutWriter.WriteLine(" /RemoveFormatting"); _stdOutWriter.WriteLine(" /RemoveTextForHI"); _stdOutWriter.WriteLine(" /RedoCasing"); - _stdOutWriter.WriteLine(" /MergeSameTimeCodes"); - _stdOutWriter.WriteLine(" /MergeShortLines"); _stdOutWriter.WriteLine(); _stdOutWriter.WriteLine(" example: SubtitleEdit /convert *.srt sami"); _stdOutWriter.WriteLine(" show this usage message: SubtitleEdit /help"); @@ -942,50 +942,18 @@ namespace Nikse.SubtitleEdit.Logic.CommandLineConvert private static List GetArgumentActions(IList commandLineArguments) { var actions = new List(); + var actionNames = typeof(BatchAction).GetEnumNames(); for (int i = commandLineArguments.Count - 1; i >= 0; i--) { var argument = commandLineArguments[i]; - if (argument.Equals("/fixcommonerrors", StringComparison.OrdinalIgnoreCase) || - argument.Equals("-fixcommonerrors", StringComparison.OrdinalIgnoreCase)) + foreach (var actionName in actionNames) { - actions.Add(BatchAction.FixCommonErrors); - commandLineArguments.RemoveAt(i); - } - else if (argument.Equals("/reversertlstartend", StringComparison.OrdinalIgnoreCase) || - argument.Equals("-reversertlstartend", StringComparison.OrdinalIgnoreCase)) - { - actions.Add(BatchAction.ReverseRtlStartEnd); - commandLineArguments.RemoveAt(i); - } - else if (argument.Equals("/redocasing", StringComparison.OrdinalIgnoreCase) || - argument.Equals("-redocasing", StringComparison.OrdinalIgnoreCase)) - { - actions.Add(BatchAction.ReDoCasing); - commandLineArguments.RemoveAt(i); - } - else if (argument.Equals("/removetextforhi", StringComparison.OrdinalIgnoreCase) || - argument.Equals("-removetextforhi", StringComparison.OrdinalIgnoreCase)) - { - actions.Add(BatchAction.RemoveTextForHI); - commandLineArguments.RemoveAt(i); - } - else if (argument.Equals("/removeformatting", StringComparison.OrdinalIgnoreCase) || - argument.Equals("-removeformatting", StringComparison.OrdinalIgnoreCase)) - { - actions.Add(BatchAction.RemoveFormatting); - commandLineArguments.RemoveAt(i); - } - else if (argument.Equals("/mergeshortlines", StringComparison.OrdinalIgnoreCase) || - argument.Equals("-mergeshortlines", StringComparison.OrdinalIgnoreCase)) - { - actions.Add(BatchAction.MergeShortLines); - commandLineArguments.RemoveAt(i); - } - else if (argument.Equals("/mergesametimecodes", StringComparison.OrdinalIgnoreCase) || - argument.Equals("-mergesametimecodes", StringComparison.OrdinalIgnoreCase)) - { - actions.Add(BatchAction.MergeSameTimeCodes); - commandLineArguments.RemoveAt(i); + if (argument.Equals("/" + actionName, StringComparison.OrdinalIgnoreCase) || + argument.Equals("-" + actionName, StringComparison.OrdinalIgnoreCase)) + { + actions.Add((BatchAction)Enum.Parse(typeof(BatchAction), actionName)); + commandLineArguments.RemoveAt(i); + } } } actions.Reverse();