Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add localization for Central Kurdish (ku) #1044

Merged
merged 9 commits into from
Apr 23, 2021
Prev Previous commit
Next Next commit
adjust some of the localization strings to make them more natural
  • Loading branch information
mhmd-azeez committed Mar 23, 2021
commit ed40fb977c77e147654467656778cc2e5719f572
44 changes: 22 additions & 22 deletions src/Humanizer.Tests.Shared/Localisation/ku/DateHumanizeTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,9 @@ public void DaysAgo(int days, string expected)

[Theory]
[InlineData(1, "بەیانی")]
[InlineData(2, "دوای 2 ڕۆژی دیکە")]
[InlineData(10, "دوای 10 ڕۆژی دیکە")]
[InlineData(17, "دوای 17 ڕۆژی دیکە")]
[InlineData(2, "2 ڕۆژی دیکە")]
[InlineData(10, "10 ڕۆژی دیکە")]
[InlineData(17, "17 ڕۆژی دیکە")]
public void DaysFromNow(int days, string expected)
{
DateHumanize.Verify(expected, days, TimeUnit.Day, Tense.Future);
Expand All @@ -37,10 +37,10 @@ public void HoursAgo(int hours, string expected)
}

[Theory]
[InlineData(1, "دوای کاتژمێرێکی دیکە")]
[InlineData(2, "دوای 2 کاتژمێری دیکە")]
[InlineData(10, "دوای 10 کاتژمێری دیکە")]
[InlineData(23, "دوای 23 کاتژمێری دیکە")]
[InlineData(1, "کاتژمێرێکی دیکە")]
[InlineData(2, "2 کاتژمێری دیکە")]
[InlineData(10, "10 کاتژمێری دیکە")]
[InlineData(23, "23 کاتژمێری دیکە")]
public void HoursFromNow(int hours, string expected)
{
DateHumanize.Verify(expected, hours, TimeUnit.Hour, Tense.Future);
Expand All @@ -58,10 +58,10 @@ public void MinutesAgo(int minutes, string expected)
}

[Theory]
[InlineData(1, "دوای خولەکێکی دیکە")]
[InlineData(2, "دوای 2 خولەکی دیکە")]
[InlineData(10, "دوای 10 خولەکی دیکە")]
[InlineData(23, "دوای 23 خولەکی دیکە")]
[InlineData(1, "خولەکێکی دیکە")]
[InlineData(2, "2 خولەکی دیکە")]
[InlineData(10, "10 خولەکی دیکە")]
[InlineData(23, "23 خولەکی دیکە")]
public void MinutesFromNow(int minutes, string expected)
{
DateHumanize.Verify(expected, minutes, TimeUnit.Minute, Tense.Future);
Expand All @@ -78,9 +78,9 @@ public void MonthsAgo(int months, string expected)
}

[Theory]
[InlineData(1, "دوای مانگێکی دیکە")]
[InlineData(2, "دوای 2 مانگی دیکە")]
[InlineData(10, "دوای 10 مانگی دیکە")]
[InlineData(1, "مانگێکی دیکە")]
[InlineData(2, "2 مانگی دیکە")]
[InlineData(10, "10 مانگی دیکە")]
public void MonthsFromNow(int months, string expected)
{
DateHumanize.Verify(expected, months, TimeUnit.Month, Tense.Future);
Expand All @@ -98,10 +98,10 @@ public void SecondsAgo(int seconds, string expected)

[Theory]
[InlineData(0, "ئێستا")]
[InlineData(1, "دوای چرکەیەکی دیکە")]
[InlineData(2, "دوای 2 چرکەی دیکە")]
[InlineData(10, "دوای 10 چرکەی دیکە")]
[InlineData(24, "دوای 24 چرکەی دیکە")]
[InlineData(1, "چرکەیەکی دیکە")]
[InlineData(2, "2 چرکەی دیکە")]
[InlineData(10, "10 چرکەی دیکە")]
[InlineData(24, "24 چرکەی دیکە")]
public void SecondsFromNow(int seconds, string expected)
{
DateHumanize.Verify(expected, seconds, TimeUnit.Second, Tense.Future);
Expand All @@ -118,10 +118,10 @@ public void YearsAgo(int years, string expected)
}

[Theory]
[InlineData(1, "دوای ساڵێکی دیکە")]
[InlineData(2, "دوای 2 ساڵی دیکە")]
[InlineData(7, "دوای 7 ساڵی دیکە")]
[InlineData(55, "دوای 55 ساڵی دیکە")]
[InlineData(1, "ساڵێکی دیکە")]
[InlineData(2, "2 ساڵی دیکە")]
[InlineData(7, "7 ساڵی دیکە")]
[InlineData(55, "55 ساڵی دیکە")]
public void YearsFromNow(int years, string expected)
{
DateHumanize.Verify(expected, years, TimeUnit.Year, Tense.Future);
Expand Down
18 changes: 13 additions & 5 deletions src/Humanizer.Tests.Shared/Localisation/ku/NumberToWordsTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -6,27 +6,34 @@ namespace Humanizer.Tests.Localisation.ku
public class NumberToWordsTests
{
[Theory]
[InlineData(-1, "نێگەتیڤ یەک")]
[InlineData(-10, "نێگەتیڤ دە")]
[InlineData(-100, "نێگەتیڤ سەد")]
[InlineData(-999, "نێگەتیڤ نۆ سەد و نەوەد و نۆ")]
[InlineData(-1000, "نێگەتیڤ هەزار")]
[InlineData(-1000000, "نێگەتیڤ یەک میلیۆن")]
[InlineData(1, "یەک")]
[InlineData(10, "دە")]
[InlineData(11, "یازدە")]
[InlineData(122, "سەد و بیست و دوو")]
[InlineData(3501, "سێ هەزار و پێنج سەد و یەک")]
[InlineData(100, "سەد")]
[InlineData(1000, "یەک هەزار")]
[InlineData(1000, "هەزار")]
[InlineData(100000, "سەد هەزار")]
[InlineData(1000000, "یەک میلیۆن")]
[InlineData(10000000, "دە میلیۆن")]
[InlineData(100000000, "سەد میلیۆن")]
[InlineData(1000000000, "یەک میلیارد")]
[InlineData(111, "سەد و یازدە")]
[InlineData(1111, "یەک هەزار و سەد و یازدە")]
[InlineData(1111, "هەزار و سەد و یازدە")]
[InlineData(111111, "سەد و یازدە هەزار و سەد و یازدە")]
[InlineData(1001001, "یەک میلیۆن و هەزار و یەک")]
[InlineData(1111111, "یەک میلیۆن و سەد و یازدە هەزار و سەد و یازدە")]
[InlineData(11111111, "یازدە میلیۆن و سەد و یازدە هەزار و سەد و یازدە")]
[InlineData(111111111, "سەد و یازدە میلیۆن و سەد و یازدە هەزار و سەد و یازدە")]
[InlineData(1111111111, "یەک میلیارد و سەد و یازدە میلیۆن و سەد و یازدە هەزار و سەد و یازدە")]
[InlineData(123, "سەد و بیست و سێ")]
[InlineData(1234, "یەک هەزار و دوو سەد و سی و چوار")]
[InlineData(1234, "هەزار و دوو سەد و سی و چوار")]
[InlineData(12345, "دوازدە هەزار و سێ سەد و چل و پێنج")]
[InlineData(123456, "سەد و بیست و سێ هەزار و چوار سەد و پەنجا و شەش")]
[InlineData(1234567, "یەک میلیۆن و دوو سەد و سی و چوار هەزار و پێنج سەد و شەست و حەوت")]
Expand Down Expand Up @@ -67,8 +74,9 @@ public void ToWordsKurdish(int number, string expected)
[InlineData(90, "نەوەدەم")]
[InlineData(100, "سەدەم")]
[InlineData(200, "دوو سەدەم")]
[InlineData(1000, "یەک هەزارەم")]
[InlineData(1333, "یەک هەزار و سێ سەد و سی و سێیەم")]
[InlineData(1000, "هەزارەم")]
[InlineData(1001, "هەزار و یەکەم")]
[InlineData(1333, "هەزار و سێ سەد و سی و سێیەم")]
[InlineData(1000000, "یەک میلیۆنەم")]
public void ToOrdinalWordsKurdish(int number, string words)
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ public override string Convert(long number)
parts.Add(KurdishUnitsMap[number]);
}

return string.Join(" و ", parts);
return string.Join(" و ", parts).Replace("یەک هەزار", "هەزار");
}

public override string ConvertToOrdinal(int number)
Expand Down
80 changes: 40 additions & 40 deletions src/Humanizer/Properties/Resources.ku.resx
Original file line number Diff line number Diff line change
Expand Up @@ -193,22 +193,22 @@
<value>1 هەفتە</value>
</data>
<data name="DateHumanize_MultipleDaysFromNow" xml:space="preserve">
<value>دوای {0} ڕۆژی دیکە</value>
<value>{0} ڕۆژی دیکە</value>
</data>
<data name="DateHumanize_MultipleHoursFromNow" xml:space="preserve">
<value>دوای {0} کاتژمێری دیکە</value>
<value>{0} کاتژمێری دیکە</value>
</data>
<data name="DateHumanize_MultipleMinutesFromNow" xml:space="preserve">
<value>دوای {0} خولەکی دیکە</value>
<value>{0} خولەکی دیکە</value>
</data>
<data name="DateHumanize_MultipleMonthsFromNow" xml:space="preserve">
<value>دوای {0} مانگی دیکە</value>
<value>{0} مانگی دیکە</value>
</data>
<data name="DateHumanize_MultipleSecondsFromNow" xml:space="preserve">
<value>دوای {0} چرکەی دیکە</value>
<value>{0} چرکەی دیکە</value>
</data>
<data name="DateHumanize_MultipleYearsFromNow" xml:space="preserve">
<value>دوای {0} ساڵی دیکە</value>
<value>{0} ساڵی دیکە</value>
</data>
<data name="DateHumanize_Now" xml:space="preserve">
<value>ئێستا</value>
Expand All @@ -217,34 +217,34 @@
<value>بەیانی</value>
</data>
<data name="DateHumanize_SingleHourFromNow" xml:space="preserve">
<value>دوای کاتژمێرێکی دیکە</value>
<value>کاتژمێرێکی دیکە</value>
</data>
<data name="DateHumanize_SingleMinuteFromNow" xml:space="preserve">
<value>دوای خولەکێکی دیکە</value>
<value>خولەکێکی دیکە</value>
</data>
<data name="DateHumanize_SingleMonthFromNow" xml:space="preserve">
<value>دوای مانگێکی دیکە</value>
<value>مانگێکی دیکە</value>
</data>
<data name="DateHumanize_SingleSecondFromNow" xml:space="preserve">
<value>دوای چرکەیەکی دیکە</value>
<value>چرکەیەکی دیکە</value>
</data>
<data name="DateHumanize_SingleYearFromNow" xml:space="preserve">
<value>دوای ساڵێکی دیکە</value>
<value>ساڵێکی دیکە</value>
</data>
<data name="DateHumanize_MultipleHoursFromNow_Dual" xml:space="preserve">
<value>دوای {0} کاتژمێری دیکە</value>
<value>{0} کاتژمێری دیکە</value>
</data>
<data name="DateHumanize_MultipleMinutesFromNow_Plural" xml:space="preserve">
<value>دوای {0} خولەکی دیکە</value>
<value>{0} خولەکی دیکە</value>
</data>
<data name="DateHumanize_MultipleSecondsAgo_Dual" xml:space="preserve">
<value>{0} چرکە لەمەوبەر</value>
</data>
<data name="DateHumanize_MultipleSecondsFromNow_Dual" xml:space="preserve">
<value>دوای {0} چرکەی دیکە</value>
<value>{0} چرکەی دیکە</value>
</data>
<data name="DateHumanize_MultipleYearsFromNow_Dual" xml:space="preserve">
<value>دوای {0} ساڵی دیکە</value>
<value>{0} ساڵی دیکە</value>
</data>
<data name="TimeSpanHumanize_MultipleDays_Dual" xml:space="preserve">
<value>{0} ڕۆژ</value>
Expand Down Expand Up @@ -286,16 +286,16 @@
<value>{0} ڕۆژ لەمەوبەر</value>
</data>
<data name="DateHumanize_MultipleDaysFromNow_Dual" xml:space="preserve">
<value>دوای {0} ڕۆژی دیکە</value>
<value>{0} ڕۆژی دیکە</value>
</data>
<data name="DateHumanize_MultipleDaysFromNow_Plural" xml:space="preserve">
<value>دوای {0} ڕۆژی دیکە</value>
<value>{0} ڕۆژی دیکە</value>
</data>
<data name="DateHumanize_MultipleDaysFromNow_Singular" xml:space="preserve">
<value>دوای {0} ڕۆژی دیکە</value>
<value>{0} ڕۆژی دیکە</value>
</data>
<data name="DateHumanize_MultipleDaysFromNow_TrialQuadral" xml:space="preserve">
<value>دوای {0} ڕۆژی دیکە</value>
<value>{0} ڕۆژی دیکە</value>
</data>
<data name="DateHumanize_MultipleHoursAgo_Above20" xml:space="preserve">
<value>{0} کاتژمێر لەمەوبەر</value>
Expand All @@ -313,13 +313,13 @@
<value>{0} کاتژمێر لەمەوبەر</value>
</data>
<data name="DateHumanize_MultipleHoursFromNow_Plural" xml:space="preserve">
<value>دوای {0} کاتژمێری دیکە</value>
<value>{0} کاتژمێری دیکە</value>
</data>
<data name="DateHumanize_MultipleHoursFromNow_Singular" xml:space="preserve">
<value>دوای {0} کاتژمێری دیکە</value>
<value>{0} کاتژمێری دیکە</value>
</data>
<data name="DateHumanize_MultipleHoursFromNow_TrialQuadral" xml:space="preserve">
<value>دوای {0} کاتژمێری دیکە</value>
<value>{0} کاتژمێری دیکە</value>
</data>
<data name="DateHumanize_MultipleMinutesAgo_Above20" xml:space="preserve">
<value>{0} خولەک لەمەوبەر</value>
Expand All @@ -337,13 +337,13 @@
<value>{0} خولەک لەمەوبەر</value>
</data>
<data name="DateHumanize_MultipleMinutesFromNow_Dual" xml:space="preserve">
<value>دوای {0} خولەکی دیکە</value>
<value>{0} خولەکی دیکە</value>
</data>
<data name="DateHumanize_MultipleMinutesFromNow_Singular" xml:space="preserve">
<value>دوای {0} خولەکی دیکە</value>
<value>{0} خولەکی دیکە</value>
</data>
<data name="DateHumanize_MultipleMinutesFromNow_TrialQuadral" xml:space="preserve">
<value>دوای {0} خولەکی دیکە</value>
<value>{0} خولەکی دیکە</value>
</data>
<data name="DateHumanize_MultipleMonthsAgo_Dual" xml:space="preserve">
<value>{0} مانگ لەمەوبەر</value>
Expand All @@ -358,16 +358,16 @@
<value>{0} مانگ لەمەوبەر</value>
</data>
<data name="DateHumanize_MultipleMonthsFromNow_Dual" xml:space="preserve">
<value>دوای {0} مانگی دیکە</value>
<value>{0} مانگی دیکە</value>
</data>
<data name="DateHumanize_MultipleMonthsFromNow_Plural" xml:space="preserve">
<value>دوای {0} مانگی دیکە</value>
<value>{0} مانگی دیکە</value>
</data>
<data name="DateHumanize_MultipleMonthsFromNow_Singular" xml:space="preserve">
<value>دوای {0} مانگی دیکە</value>
<value>{0} مانگی دیکە</value>
</data>
<data name="DateHumanize_MultipleMonthsFromNow_TrialQuadral" xml:space="preserve">
<value>دوای {0} مانگی دیکە</value>
<value>{0} مانگی دیکە</value>
</data>
<data name="DateHumanize_MultipleSecondsAgo_Above20" xml:space="preserve">
<value>{0} چرکە لەمەوبەر</value>
Expand All @@ -382,13 +382,13 @@
<value>{0} چرکە لەمەوبەر</value>
</data>
<data name="DateHumanize_MultipleSecondsFromNow_Plural" xml:space="preserve">
<value>دوای {0} چرکەی دیکە</value>
<value>{0} چرکەی دیکە</value>
</data>
<data name="DateHumanize_MultipleSecondsFromNow_Singular" xml:space="preserve">
<value>دوای {0} چرکەی دیکە</value>
<value>{0} چرکەی دیکە</value>
</data>
<data name="DateHumanize_MultipleSecondsFromNow_TrialQuadral" xml:space="preserve">
<value>دوای {0} چرکەی دیکە</value>
<value>{0} چرکەی دیکە</value>
</data>
<data name="DateHumanize_MultipleYearsAgo_Above20" xml:space="preserve">
<value>{0} ساڵ لەمەوبەر</value>
Expand All @@ -406,13 +406,13 @@
<value>{0} ساڵ لەمەوبەر</value>
</data>
<data name="DateHumanize_MultipleYearsFromNow_Plural" xml:space="preserve">
<value>دوای {0} ساڵی دیکە</value>
<value>{0} ساڵی دیکە</value>
</data>
<data name="DateHumanize_MultipleYearsFromNow_Singular" xml:space="preserve">
<value>دوای {0} ساڵی دیکە</value>
<value>{0} ساڵی دیکە</value>
</data>
<data name="DateHumanize_MultipleYearsFromNow_TrialQuadral" xml:space="preserve">
<value>دوای {0} ساڵی دیکە</value>
<value>{0} ساڵی دیکە</value>
</data>
<data name="TimeSpanHumanize_MultipleDays_Singular" xml:space="preserve">
<value>{0} ڕۆژ</value>
Expand Down Expand Up @@ -478,31 +478,31 @@
<value>{0} کاتژمێر لەمەوبەر</value>
</data>
<data name="DateHumanize_MultipleHoursFromNow_DualTrialQuadral" xml:space="preserve">
<value>دوای {0} کاتژمێری دیکە</value>
<value>{0} کاتژمێری دیکە</value>
</data>
<data name="DateHumanize_MultipleMinutesAgo_DualTrialQuadral" xml:space="preserve">
<value>{0} خولەک لەمەوبەر</value>
</data>
<data name="DateHumanize_MultipleMinutesFromNow_DualTrialQuadral" xml:space="preserve">
<value>دوای {0} خولەکی دیکە</value>
<value>{0} خولەکی دیکە</value>
</data>
<data name="DateHumanize_MultipleMonthsAgo_DualTrialQuadral" xml:space="preserve">
<value>{0} مانگ لەمەوبەر</value>
</data>
<data name="DateHumanize_MultipleMonthsFromNow_DualTrialQuadral" xml:space="preserve">
<value>دوای {0} مانگی دیکە</value>
<value>{0} مانگی دیکە</value>
</data>
<data name="DateHumanize_MultipleSecondsAgo_DualTrialQuadral" xml:space="preserve">
<value>{0} چرکە لەمەوبەر</value>
</data>
<data name="DateHumanize_MultipleSecondsFromNow_DualTrialQuadral" xml:space="preserve">
<value>دوای {0} چرکەی دیکە</value>
<value>{0} چرکەی دیکە</value>
</data>
<data name="DateHumanize_MultipleYearsAgo_DualTrialQuadral" xml:space="preserve">
<value>{0} ساڵ لەمەوبەر</value>
</data>
<data name="DateHumanize_MultipleYearsFromNow_DualTrialQuadral" xml:space="preserve">
<value>دوای {0} ساڵی دیکە</value>
<value>{0} ساڵی دیکە</value>
</data>
<data name="TimeSpanHumanize_MultipleHours_DualTrialQuadral" xml:space="preserve">
<value>{0} کاتژمێر</value>
Expand Down