mirror of
https://github.com/SubtitleEdit/subtitleedit.git
synced 2024-10-27 22:42:38 +01:00
commit
45c5849d08
@ -958,11 +958,13 @@ namespace Nikse.SubtitleEdit.Forms
|
|||||||
const string endTag = "</i>";
|
const string endTag = "</i>";
|
||||||
string fixAction = _language.FixInvalidItalicTag;
|
string fixAction = _language.FixInvalidItalicTag;
|
||||||
int noOfInvalidHtmlTags = 0;
|
int noOfInvalidHtmlTags = 0;
|
||||||
|
listViewFixes.BeginUpdate();
|
||||||
for (int i = 0; i < _subtitle.Paragraphs.Count; i++)
|
for (int i = 0; i < _subtitle.Paragraphs.Count; i++)
|
||||||
{
|
{
|
||||||
if (_subtitle.Paragraphs[i].Text.Contains("<"))
|
var text = _subtitle.Paragraphs[i].Text;
|
||||||
|
if (text.Contains("<"))
|
||||||
{
|
{
|
||||||
string text = _subtitle.Paragraphs[i].Text.Replace(beginTag.ToUpper(), beginTag).Replace(endTag.ToUpper(), endTag);
|
text = text.Replace(beginTag.ToUpper(), beginTag).Replace(endTag.ToUpper(), endTag);
|
||||||
string oldText = text;
|
string oldText = text;
|
||||||
|
|
||||||
text = Utilities.FixInvalidItalicTags(text);
|
text = Utilities.FixInvalidItalicTags(text);
|
||||||
@ -978,6 +980,8 @@ namespace Nikse.SubtitleEdit.Forms
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
listViewFixes.EndUpdate();
|
||||||
|
listViewFixes.Refresh();
|
||||||
if (noOfInvalidHtmlTags > 0)
|
if (noOfInvalidHtmlTags > 0)
|
||||||
LogStatus(_language.FixInvalidItalicTags, string.Format(_language.XInvalidHtmlTagsFixed, noOfInvalidHtmlTags));
|
LogStatus(_language.FixInvalidItalicTags, string.Format(_language.XInvalidHtmlTagsFixed, noOfInvalidHtmlTags));
|
||||||
}
|
}
|
||||||
|
@ -326,11 +326,18 @@ namespace Nikse.SubtitleEdit.Logic
|
|||||||
|
|
||||||
private static bool IsPartOfNumber(string s, int position)
|
private static bool IsPartOfNumber(string s, int position)
|
||||||
{
|
{
|
||||||
|
if (s == null || s.Trim().Length == 0)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
if (position + 2 > s.Length)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
const string numbers = "1234567890";
|
||||||
if (",.".Contains(s[position].ToString()))
|
if (",.".Contains(s[position].ToString()))
|
||||||
{
|
{
|
||||||
if (position > 0 && position < s.Length - 1)
|
if (position > 0 && position < s.Length - 1)
|
||||||
{
|
{
|
||||||
return "1234567890".Contains(s[position - 1].ToString()) && "1234567890".Contains(s[position + 1].ToString());
|
return numbers.Contains(s[position - 1].ToString()) && numbers.Contains(s[position + 1].ToString());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
@ -805,6 +812,9 @@ namespace Nikse.SubtitleEdit.Logic
|
|||||||
if (!s.Contains("<"))
|
if (!s.Contains("<"))
|
||||||
return s;
|
return s;
|
||||||
|
|
||||||
|
if(s.Contains("< "))
|
||||||
|
s = FixInvalidItalicTags(s);
|
||||||
|
|
||||||
s = s.Replace("<i>", string.Empty);
|
s = s.Replace("<i>", string.Empty);
|
||||||
s = s.Replace("<і>", string.Empty); // different unicode chars
|
s = s.Replace("<і>", string.Empty); // different unicode chars
|
||||||
s = s.Replace("</i>", string.Empty);
|
s = s.Replace("</i>", string.Empty);
|
||||||
@ -2520,6 +2530,7 @@ namespace Nikse.SubtitleEdit.Logic
|
|||||||
text = text.Replace("< /I>", endTag);
|
text = text.Replace("< /I>", endTag);
|
||||||
text = text.Replace("</ I>", endTag);
|
text = text.Replace("</ I>", endTag);
|
||||||
text = text.Replace("< /I>", endTag);
|
text = text.Replace("< /I>", endTag);
|
||||||
|
text = text.Replace("< / I >", endTag);
|
||||||
|
|
||||||
text = text.Replace("</i> <i>", "_@_");
|
text = text.Replace("</i> <i>", "_@_");
|
||||||
text = text.Replace(" _@_", "_@_");
|
text = text.Replace(" _@_", "_@_");
|
||||||
@ -2745,7 +2756,7 @@ namespace Nikse.SubtitleEdit.Logic
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// HTML-encodes a string
|
/// HTML-encodes a string
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="text">Text string to encode</param>
|
/// <param name="text">Text string to encode</param>
|
||||||
|
Loading…
Reference in New Issue
Block a user