Skip to content

Commit

Permalink
Merge pull request #41 from hmlendea/chars
Browse files Browse the repository at this point in the history
Improved existing character substitutions
  • Loading branch information
hmlendea authored Apr 28, 2021
2 parents c6e549d + 71d9852 commit e56cc57
Showing 1 changed file with 22 additions and 14 deletions.
36 changes: 22 additions & 14 deletions Service/NameNormaliser.cs
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,9 @@ public string ToCK3Charset(string name)
processedName = Regex.Replace(processedName, "[ḂḄ]", "B");
processedName = Regex.Replace(processedName, "[Ḏ]", "D");
processedName = Regex.Replace(processedName, "[Ǝ]", "E");
processedName = Regex.Replace(processedName, "[]", "H");
processedName = Regex.Replace(processedName, "[Ǧ]", "Ğ");
processedName = Regex.Replace(processedName, "[Ƙ]", "K'");
processedName = Regex.Replace(processedName, "[Ḫ]", "Kh");
processedName = Regex.Replace(processedName, "[Ḵ]", "K");
processedName = Regex.Replace(processedName, "[Ǫ]", "Ọ");
processedName = Regex.Replace(processedName, "[Ṡ]", "Ś");
Expand All @@ -49,8 +50,9 @@ public string ToCK3Charset(string name)
processedName = Regex.Replace(processedName, "[Ẓ]", "Z");
processedName = Regex.Replace(processedName, "[ḃḅ]", "b");
processedName = Regex.Replace(processedName, "[ḏɖ]", "d");
processedName = Regex.Replace(processedName, "[]", "");
processedName = Regex.Replace(processedName, "[ǧ]", "ğ");
processedName = Regex.Replace(processedName, "[ƙ]", "k'");
processedName = Regex.Replace(processedName, "[ḫ]", "kh");
processedName = Regex.Replace(processedName, "[ḵ]", "k");
processedName = Regex.Replace(processedName, "[ǫ]", "ọ");
processedName = Regex.Replace(processedName, "[ṡ]", "ś");
Expand Down Expand Up @@ -84,10 +86,12 @@ public string ToHOI4CityCharset(string name)
processedName = Regex.Replace(processedName, "[ḎḌƊ]", "D");
processedName = Regex.Replace(processedName, "[Ẽ]", "Ē");
processedName = Regex.Replace(processedName, "[Ǝ]", "E");
processedName = Regex.Replace(processedName, "[ḤḪ]", "H");
processedName = Regex.Replace(processedName, "[]", "Ķ");
processedName = Regex.Replace(processedName, "[Ǧ]", "Ğ");
processedName = Regex.Replace(processedName, "[]", "H");
processedName = Regex.Replace(processedName, "[Ƙ]", "K'");
processedName = Regex.Replace(processedName, "[Ḫ]", "Kh");
processedName = Regex.Replace(processedName, "[Ḵ]", "K");
processedName = Regex.Replace(processedName, "[Ḳ]", "Ķ");
processedName = Regex.Replace(processedName, "[Ḷ]", "Ļ");
processedName = Regex.Replace(processedName, "[Ṃ]", "M");
processedName = Regex.Replace(processedName, "[Ṅ]", "Ń");
Expand All @@ -111,11 +115,13 @@ public string ToHOI4CityCharset(string name)
processedName = Regex.Replace(processedName, "[ẽ]", "ē");
processedName = Regex.Replace(processedName, "[ệ]", "ê");
processedName = Regex.Replace(processedName, "[ẹ]", "e");
processedName = Regex.Replace(processedName, "[ḥḫ]", "h");
processedName = Regex.Replace(processedName, "[ǧ]", "ğ");
processedName = Regex.Replace(processedName, "[ḥ]", "h");
processedName = Regex.Replace(processedName, "[ĩ]", "ï");
processedName = Regex.Replace(processedName, "[ḳ]", "ķ");
processedName = Regex.Replace(processedName, "[ƙ]", "k'");
processedName = Regex.Replace(processedName, "[ḫ]", "kh");
processedName = Regex.Replace(processedName, "[ḵ]", "k");
processedName = Regex.Replace(processedName, "[ḳ]", "ķ");
processedName = Regex.Replace(processedName, "[ḷ]", "ļ");
processedName = Regex.Replace(processedName, "[ṃ]", "m");
processedName = Regex.Replace(processedName, "[ṅ]", "ń");
Expand Down Expand Up @@ -164,6 +170,7 @@ public string ToHOI4StateCharset(string name)
processedName = Regex.Replace(processedName, "[ĞĜĠĢ]", "G");
processedName = Regex.Replace(processedName, "[Ĥ]", "H");
processedName = Regex.Replace(processedName, "[İ]", "I");
processedName = Regex.Replace(processedName, "[Ǧ]", "J");
processedName = Regex.Replace(processedName, "[ĬĪĨ]", "Ï");
processedName = Regex.Replace(processedName, "[ĹĽĻ]", "L");
processedName = Regex.Replace(processedName, "[Ň]", "Ñ");
Expand All @@ -190,6 +197,7 @@ public string ToHOI4StateCharset(string name)
processedName = Regex.Replace(processedName, "[ğĝġģ]", "g");
processedName = Regex.Replace(processedName, "[ĥ]", "h");
processedName = Regex.Replace(processedName, "[ĭīĩ]", "ï");
processedName = Regex.Replace(processedName, "[ǧ]", "j");
processedName = Regex.Replace(processedName, "[ĺľļ]", "l");
processedName = Regex.Replace(processedName, "[ň]", "ñ");
processedName = Regex.Replace(processedName, "[ńņ]", "n");
Expand Down Expand Up @@ -237,7 +245,7 @@ public string ToImperatorRomeCharset(string name)
processedName = Regex.Replace(processedName, "[ĤḦĦ]", "H");
processedName = Regex.Replace(processedName, "[İĮỊ]", "I");
processedName = Regex.Replace(processedName, "[ĬĨ]", "Ī");
processedName = Regex.Replace(processedName, "[ĴJ̌]", "J");
processedName = Regex.Replace(processedName, "[ĴJ̌Ǧ]", "J");
processedName = Regex.Replace(processedName, "[ḲĶḴ]", "K");
processedName = Regex.Replace(processedName, "[ĹŁĽḶĻ]", "L");
processedName = Regex.Replace(processedName, "[ṂḾ]", "M");
Expand Down Expand Up @@ -278,7 +286,7 @@ public string ToImperatorRomeCharset(string name)
processedName = Regex.Replace(processedName, "[ĥḧħ]", "h");
processedName = Regex.Replace(processedName, "[įị]", "i");
processedName = Regex.Replace(processedName, "[ĭĩ]", "ī");
processedName = Regex.Replace(processedName, "[ĵǰ]", "j");
processedName = Regex.Replace(processedName, "[ĵǰǧ]", "j");
processedName = Regex.Replace(processedName, "[ḳķḵ]", "k");
processedName = Regex.Replace(processedName, "[ĺłľḷļ]", "l");
processedName = Regex.Replace(processedName, "[ṃḿ]", "m");
Expand Down Expand Up @@ -344,11 +352,12 @@ public string ToWindows1252(string name)
processedName = Regex.Replace(processedName, "[ỆĚ]", "Ê");
processedName = Regex.Replace(processedName, "[ĘƎ]", "E");
processedName = Regex.Replace(processedName, "[ĞĜĠĢǴ]", "G");
processedName = Regex.Replace(processedName, "[ĤḦḤḪĦ]", "H");
processedName = Regex.Replace(processedName, "[ĤḦḤḨĦ]", "H");
processedName = Regex.Replace(processedName, "[İĮỊ]", "I");
processedName = Regex.Replace(processedName, "[ĬĪĨ]", "Ï");
processedName = Regex.Replace(processedName, "[ĴJ̌]", "J");
processedName = Regex.Replace(processedName, "[ĴJ̌Ǧ]", "J");
processedName = Regex.Replace(processedName, "[Ƙ]", "K'");
processedName = Regex.Replace(processedName, "[Ḫ]", "Kh");
processedName = Regex.Replace(processedName, "[ḲĶḴ]", "K");
processedName = Regex.Replace(processedName, "[ĹŁĽḶĻ]", "L");
processedName = Regex.Replace(processedName, "[ṂḾ]", "M");
Expand Down Expand Up @@ -391,11 +400,12 @@ public string ToWindows1252(string name)
processedName = Regex.Replace(processedName, "[ệě]", "ê");
processedName = Regex.Replace(processedName, "[ęẹ]", "e");
processedName = Regex.Replace(processedName, "[ğĝġģǵ]", "g");
processedName = Regex.Replace(processedName, "[ĥḧḥḫħ]", "h");
processedName = Regex.Replace(processedName, "[ĥḧḥħḩ]", "h");
processedName = Regex.Replace(processedName, "[ıįị]", "i");
processedName = Regex.Replace(processedName, "[ĭīĩ]", "ï");
processedName = Regex.Replace(processedName, "[ĵǰ]", "j");
processedName = Regex.Replace(processedName, "[ĵǰǧ]", "j");
processedName = Regex.Replace(processedName, "[ƙ]", "k'");
processedName = Regex.Replace(processedName, "[ḫ]", "kh");
processedName = Regex.Replace(processedName, "[ḳķḵ]", "k");
processedName = Regex.Replace(processedName, "[ĺłľḷļ]", "l");
processedName = Regex.Replace(processedName, "[ṃḿ]", "m");
Expand Down Expand Up @@ -439,7 +449,6 @@ private string ApplyCommonReplacements(string name)
processedName = Regex.Replace(processedName, "[Ɖ]", "Đ");
processedName = Regex.Replace(processedName, "[ЕΕƐ]", "E");
processedName = Regex.Replace(processedName, "[∃]", "Ǝ");
processedName = Regex.Replace(processedName, "[Ǧ]", "Ğ");
processedName = Regex.Replace(processedName, "[Ƣ]", "Ğ"); // Untested in the games
processedName = Regex.Replace(processedName, "[Ȝ]", "Gh"); // Or G
processedName = Regex.Replace(processedName, "[Ɣ]", "Gh");
Expand All @@ -464,7 +473,6 @@ private string ApplyCommonReplacements(string name)
processedName = Regex.Replace(processedName, "[ǝ]", "ə");
processedName = Regex.Replace(processedName, "[еεɛ]", "e");
processedName = Regex.Replace(processedName, "[έ]", "é");
processedName = Regex.Replace(processedName, "[ǧ]", "ğ");
processedName = Regex.Replace(processedName, "[ƣ]", "ğ"); // Untested in the games
processedName = Regex.Replace(processedName, "[ȝ]", "gh"); // Or g
processedName = Regex.Replace(processedName, "[ɣ]", "gh");
Expand Down

0 comments on commit e56cc57

Please sign in to comment.