mirror of
https://github.com/Radarr/Radarr.git
synced 2025-04-24 22:47:05 -04:00
New: Add Urdu Language (#10957)
This commit is contained in:
parent
16b6997b14
commit
107f843303
7 changed files with 31 additions and 1 deletions
|
@ -66,6 +66,7 @@ namespace NzbDrone.Core.Test.Languages
|
||||||
new object[] { 51, Language.Afrikaans },
|
new object[] { 51, Language.Afrikaans },
|
||||||
new object[] { 52, Language.Marathi },
|
new object[] { 52, Language.Marathi },
|
||||||
new object[] { 53, Language.Tagalog },
|
new object[] { 53, Language.Tagalog },
|
||||||
|
new object[] { 54, Language.Urdu }
|
||||||
};
|
};
|
||||||
|
|
||||||
public static object[] ToIntCases =
|
public static object[] ToIntCases =
|
||||||
|
@ -126,6 +127,7 @@ namespace NzbDrone.Core.Test.Languages
|
||||||
new object[] { Language.Afrikaans, 51 },
|
new object[] { Language.Afrikaans, 51 },
|
||||||
new object[] { Language.Marathi, 52 },
|
new object[] { Language.Marathi, 52 },
|
||||||
new object[] { Language.Tagalog, 53 },
|
new object[] { Language.Tagalog, 53 },
|
||||||
|
new object[] { Language.Urdu, 54 }
|
||||||
};
|
};
|
||||||
|
|
||||||
[Test]
|
[Test]
|
||||||
|
|
|
@ -80,5 +80,14 @@ namespace NzbDrone.Core.Test.ParserTests
|
||||||
var result = IsoLanguages.Find(isoCode);
|
var result = IsoLanguages.Find(isoCode);
|
||||||
result.Language.Should().Be(Language.Tagalog);
|
result.Language.Should().Be(Language.Tagalog);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[TestCase("ur")]
|
||||||
|
[TestCase("urd")]
|
||||||
|
[TestCase("ur-PK")]
|
||||||
|
public void should_return_urdu(string isoCode)
|
||||||
|
{
|
||||||
|
var result = IsoLanguages.Find(isoCode);
|
||||||
|
result.Language.Should().Be(Language.Urdu);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -492,6 +492,14 @@ namespace NzbDrone.Core.Test.ParserTests
|
||||||
result.Should().Contain(Language.Tagalog);
|
result.Should().Contain(Language.Tagalog);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[TestCase("Movie Title 2024 1080p Urdu WEB-DL HEVC x265 BONE")]
|
||||||
|
[TestCase("Movie.Title.2022.720p.Urdu.WEB-DL.AAC.x264-Mkvking")]
|
||||||
|
public void should_parse_language_urdu(string postTitle)
|
||||||
|
{
|
||||||
|
var result = LanguageParser.ParseLanguages(postTitle);
|
||||||
|
result.Should().Contain(Language.Urdu);
|
||||||
|
}
|
||||||
|
|
||||||
[TestCase("Movie.Title.en.sub")]
|
[TestCase("Movie.Title.en.sub")]
|
||||||
[TestCase("Movie Title.eng.sub")]
|
[TestCase("Movie Title.eng.sub")]
|
||||||
[TestCase("Movie.Title.eng.forced.sub")]
|
[TestCase("Movie.Title.eng.forced.sub")]
|
||||||
|
|
|
@ -70,5 +70,7 @@ namespace NzbDrone.Core.ImportLists.TMDb
|
||||||
mr,
|
mr,
|
||||||
[FieldOption(Hint = "Tagalog")]
|
[FieldOption(Hint = "Tagalog")]
|
||||||
tl,
|
tl,
|
||||||
|
[FieldOption(Hint = "Urdu")]
|
||||||
|
ur
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -124,6 +124,7 @@ namespace NzbDrone.Core.Languages
|
||||||
public static Language Afrikaans => new Language(51, "Afrikaans");
|
public static Language Afrikaans => new Language(51, "Afrikaans");
|
||||||
public static Language Marathi => new Language(52, "Marathi");
|
public static Language Marathi => new Language(52, "Marathi");
|
||||||
public static Language Tagalog => new Language(53, "Tagalog");
|
public static Language Tagalog => new Language(53, "Tagalog");
|
||||||
|
public static Language Urdu => new Language(54, "Urdu");
|
||||||
public static Language Any => new Language(-1, "Any");
|
public static Language Any => new Language(-1, "Any");
|
||||||
public static Language Original => new Language(-2, "Original");
|
public static Language Original => new Language(-2, "Original");
|
||||||
|
|
||||||
|
@ -187,6 +188,7 @@ namespace NzbDrone.Core.Languages
|
||||||
Afrikaans,
|
Afrikaans,
|
||||||
Marathi,
|
Marathi,
|
||||||
Tagalog,
|
Tagalog,
|
||||||
|
Urdu,
|
||||||
Any,
|
Any,
|
||||||
Original
|
Original
|
||||||
};
|
};
|
||||||
|
|
|
@ -63,6 +63,7 @@ namespace NzbDrone.Core.Parser
|
||||||
new IsoLanguage("af", "", "afr", "Afrikaans", Language.Afrikaans),
|
new IsoLanguage("af", "", "afr", "Afrikaans", Language.Afrikaans),
|
||||||
new IsoLanguage("mr", "", "mar", "Marathi", Language.Marathi),
|
new IsoLanguage("mr", "", "mar", "Marathi", Language.Marathi),
|
||||||
new IsoLanguage("tl", "", "tgl", "Tagalog", Language.Tagalog),
|
new IsoLanguage("tl", "", "tgl", "Tagalog", Language.Tagalog),
|
||||||
|
new IsoLanguage("ur", "", "urd", "Urdu", Language.Urdu)
|
||||||
};
|
};
|
||||||
|
|
||||||
private static readonly Dictionary<string, Language> AlternateIsoCodeMappings = new ()
|
private static readonly Dictionary<string, Language> AlternateIsoCodeMappings = new ()
|
||||||
|
|
|
@ -36,7 +36,8 @@ namespace NzbDrone.Core.Parser
|
||||||
(?<telugu>\btel\b)|
|
(?<telugu>\btel\b)|
|
||||||
(?<vietnamese>\bVIE\b)|
|
(?<vietnamese>\bVIE\b)|
|
||||||
(?<japanese>\bJPN\b)|
|
(?<japanese>\bJPN\b)|
|
||||||
(?<korean>\bKOR\b)",
|
(?<korean>\bKOR\b)|
|
||||||
|
(?<urdu>\burdu\b)",
|
||||||
RegexOptions.IgnoreCase | RegexOptions.Compiled | RegexOptions.IgnorePatternWhitespace);
|
RegexOptions.IgnoreCase | RegexOptions.Compiled | RegexOptions.IgnorePatternWhitespace);
|
||||||
|
|
||||||
private static readonly Regex CaseSensitiveLanguageRegex = new Regex(@"(?:(?i)(?<!SUB[\W|_|^]))(?:(?<lithuanian>\bLT\b)|
|
private static readonly Regex CaseSensitiveLanguageRegex = new Regex(@"(?:(?i)(?<!SUB[\W|_|^]))(?:(?<lithuanian>\bLT\b)|
|
||||||
|
@ -411,6 +412,11 @@ namespace NzbDrone.Core.Parser
|
||||||
{
|
{
|
||||||
languages.Add(Language.Korean);
|
languages.Add(Language.Korean);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (match.Groups["urdu"].Success)
|
||||||
|
{
|
||||||
|
languages.Add(Language.Urdu);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!languages.Any())
|
if (!languages.Any())
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue