From 10c2931116d8da792ba4139639869797021576b0 Mon Sep 17 00:00:00 2001 From: Kostadin Bashev Date: Tue, 17 Jun 2025 22:10:49 +0300 Subject: [PATCH 1/4] translate unstralsated characters. --- lib/internal/Magento/Framework/Filter/Translit.php | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/lib/internal/Magento/Framework/Filter/Translit.php b/lib/internal/Magento/Framework/Filter/Translit.php index 9691b95b23ef3..b0e1e8b7948d4 100644 --- a/lib/internal/Magento/Framework/Filter/Translit.php +++ b/lib/internal/Magento/Framework/Filter/Translit.php @@ -248,7 +248,7 @@ class Translit implements FilterInterface 'Ж' => 'zh', 'З' => 'z', 'И' => 'i', - 'Й' => 'j', + 'Й' => 'Y', 'К' => 'k', 'Л' => 'l', 'М' => 'm', @@ -265,9 +265,9 @@ class Translit implements FilterInterface 'Ч' => 'ch', 'Ш' => 'sh', 'Щ' => 'sch', - 'Ъ' => '-', + 'Ъ' => 'A', 'Ы' => 'y', - 'Ь' => '-', + 'Ь' => 'Y', 'Э' => 'je', 'Ю' => 'ju', 'Я' => 'ja', @@ -280,7 +280,7 @@ class Translit implements FilterInterface 'ж' => 'zh', 'з' => 'z', 'и' => 'i', - 'й' => 'j', + 'й' => 'y', 'к' => 'k', 'л' => 'l', 'м' => 'm', @@ -297,9 +297,9 @@ class Translit implements FilterInterface 'ч' => 'ch', 'ш' => 'sh', 'щ' => 'sch', - 'ъ' => '-', + 'ъ' => 'a', 'ы' => 'y', - 'ь' => '-', + 'ь' => 'y', 'э' => 'je', 'ю' => 'ju', 'я' => 'ja', From b0b39b9af8d27603bc36de4894093ad31ffa5b9a Mon Sep 17 00:00:00 2001 From: Kostadin Bashev Date: Wed, 18 Jun 2025 07:22:58 +0300 Subject: [PATCH 2/4] update few additional characters --- .../Magento/Framework/Filter/Translit.php | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/lib/internal/Magento/Framework/Filter/Translit.php b/lib/internal/Magento/Framework/Filter/Translit.php index b0e1e8b7948d4..5f244377d0490 100644 --- a/lib/internal/Magento/Framework/Filter/Translit.php +++ b/lib/internal/Magento/Framework/Filter/Translit.php @@ -1,7 +1,7 @@ 'zh', 'З' => 'z', 'И' => 'i', - 'Й' => 'Y', + 'Й' => 'y', 'К' => 'k', 'Л' => 'l', 'М' => 'm', @@ -264,13 +264,13 @@ class Translit implements FilterInterface 'Ц' => 'c', 'Ч' => 'ch', 'Ш' => 'sh', - 'Щ' => 'sch', - 'Ъ' => 'A', + 'Щ' => 'sht', + 'Ъ' => 'a', 'Ы' => 'y', - 'Ь' => 'Y', + 'Ь' => 'y', 'Э' => 'je', - 'Ю' => 'ju', - 'Я' => 'ja', + 'Ю' => 'yu', + 'Я' => 'ya', 'а' => 'a', 'б' => 'b', 'в' => 'v', @@ -296,13 +296,13 @@ class Translit implements FilterInterface 'ц' => 'c', 'ч' => 'ch', 'ш' => 'sh', - 'щ' => 'sch', + 'щ' => 'sht', 'ъ' => 'a', 'ы' => 'y', 'ь' => 'y', 'э' => 'je', - 'ю' => 'ju', - 'я' => 'ja', + 'ю' => 'yu', + 'я' => 'ya', 'ё' => 'jo', 'є' => 'e', 'і' => 'i', From 99fb4f97364552d113d39e52376eb5e12ea3990b Mon Sep 17 00:00:00 2001 From: Kostadin Bashev Date: Wed, 18 Jun 2025 07:35:28 +0300 Subject: [PATCH 3/4] keep original case. --- .../Magento/Framework/Filter/Translit.php | 334 +++++++++--------- 1 file changed, 167 insertions(+), 167 deletions(-) diff --git a/lib/internal/Magento/Framework/Filter/Translit.php b/lib/internal/Magento/Framework/Filter/Translit.php index 5f244377d0490..7ad0aea5a5c3b 100644 --- a/lib/internal/Magento/Framework/Filter/Translit.php +++ b/lib/internal/Magento/Framework/Filter/Translit.php @@ -24,31 +24,31 @@ class Translit implements FilterInterface '@' => 'at', '©' => 'c', '®' => 'r', - 'À' => 'a', - 'Á' => 'a', - 'Â' => 'a', - 'Ä' => 'a', - 'Å' => 'a', - 'Æ' => 'ae', - 'Ç' => 'c', - 'È' => 'e', - 'É' => 'e', - 'Ë' => 'e', - 'Ì' => 'i', - 'Í' => 'i', - 'Î' => 'i', - 'Ï' => 'i', - 'Ò' => 'o', - 'Ó' => 'o', - 'Ô' => 'o', - 'Õ' => 'o', - 'Ö' => 'o', - 'Ø' => 'o', - 'Ù' => 'u', - 'Ú' => 'u', - 'Û' => 'u', - 'Ü' => 'u', - 'Ý' => 'y', + 'À' => 'A', + 'Á' => 'A', + 'Â' => 'A', + 'Ä' => 'A', + 'Å' => 'A', + 'Æ' => 'Ae', + 'Ç' => 'C', + 'È' => 'E', + 'É' => 'E', + 'Ë' => 'E', + 'Ì' => 'I', + 'Í' => 'I', + 'Î' => 'I', + 'Ï' => 'I', + 'Ò' => 'O', + 'Ó' => 'O', + 'Ô' => 'O', + 'Õ' => 'O', + 'Ö' => 'O', + 'Ø' => 'O', + 'Ù' => 'U', + 'Ú' => 'U', + 'Û' => 'U', + 'Ü' => 'U', + 'Ý' => 'Y', 'ß' => 'ss', 'à' => 'a', 'á' => 'a', @@ -78,199 +78,199 @@ class Translit implements FilterInterface 'ý' => 'y', 'þ' => 'p', 'ÿ' => 'y', - 'Ā' => 'a', + 'Ā' => 'A', 'ā' => 'a', - 'Ă' => 'a', + 'Ă' => 'A', 'ă' => 'a', - 'Ą' => 'a', + 'Ą' => 'A', 'ą' => 'a', - 'Ć' => 'c', + 'Ć' => 'C', 'ć' => 'c', - 'Ĉ' => 'c', + 'Ĉ' => 'C', 'ĉ' => 'c', - 'Ċ' => 'c', + 'Ċ' => 'C', 'ċ' => 'c', - 'Č' => 'c', + 'Č' => 'C', 'č' => 'c', - 'Ď' => 'd', + 'Ď' => 'D', 'ď' => 'd', - 'Đ' => 'd', + 'Đ' => 'D', 'đ' => 'd', - 'Ē' => 'e', + 'Ē' => 'E', 'ē' => 'e', - 'Ĕ' => 'e', + 'Ĕ' => 'E', 'ĕ' => 'e', - 'Ė' => 'e', + 'Ė' => 'E', 'ė' => 'e', - 'Ę' => 'e', + 'Ę' => 'E', 'ę' => 'e', - 'Ě' => 'e', + 'Ě' => 'E', 'ě' => 'e', - 'Ĝ' => 'g', + 'Ĝ' => 'G', 'ĝ' => 'g', - 'Ğ' => 'g', + 'Ğ' => 'G', 'ğ' => 'g', - 'Ġ' => 'g', + 'Ġ' => 'G', 'ġ' => 'g', - 'Ģ' => 'g', + 'Ģ' => 'G', 'ģ' => 'g', - 'Ĥ' => 'h', + 'Ĥ' => 'H', 'ĥ' => 'h', - 'Ħ' => 'h', + 'Ħ' => 'H', 'ħ' => 'h', - 'Ĩ' => 'i', + 'Ĩ' => 'I', 'ĩ' => 'i', - 'Ī' => 'i', + 'Ī' => 'I', 'ī' => 'i', - 'Ĭ' => 'i', + 'Ĭ' => 'I', 'ĭ' => 'i', - 'Į' => 'i', + 'Į' => 'I', 'į' => 'i', - 'İ' => 'i', + 'İ' => 'I', 'ı' => 'i', 'IJ' => 'ij', 'ij' => 'ij', - 'Ĵ' => 'j', + 'Ĵ' => 'J', 'ĵ' => 'j', - 'Ķ' => 'k', + 'Ķ' => 'K', 'ķ' => 'k', 'ĸ' => 'k', - 'Ĺ' => 'l', + 'Ĺ' => 'L', 'ĺ' => 'l', - 'Ļ' => 'l', + 'Ļ' => 'L', 'ļ' => 'l', - 'Ľ' => 'l', + 'Ľ' => 'L', 'ľ' => 'l', - 'Ŀ' => 'l', + 'Ŀ' => 'L', 'ŀ' => 'l', 'Ł' => 'l', 'ł' => 'l', - 'Ń' => 'n', + 'Ń' => 'N', 'ń' => 'n', - 'Ņ' => 'n', + 'Ņ' => 'N', 'ņ' => 'n', - 'Ň' => 'n', + 'Ň' => 'N', 'ň' => 'n', 'ʼn' => 'n', - 'Ŋ' => 'n', + 'Ŋ' => 'N', 'ŋ' => 'n', - 'Ō' => 'o', + 'Ō' => 'O', 'ō' => 'o', - 'Ŏ' => 'o', + 'Ŏ' => 'O', 'ŏ' => 'o', - 'Ő' => 'o', + 'Ő' => 'O', 'ő' => 'o', - 'Œ' => 'oe', + 'Œ' => 'Oe', 'œ' => 'oe', - 'Ŕ' => 'r', + 'Ŕ' => 'R', 'ŕ' => 'r', - 'Ŗ' => 'r', + 'Ŗ' => 'R', 'ŗ' => 'r', - 'Ř' => 'r', + 'Ř' => 'R', 'ř' => 'r', - 'Ś' => 's', + 'Ś' => 'S', 'ś' => 's', - 'Ŝ' => 's', + 'Ŝ' => 'S', 'ŝ' => 's', - 'Ş' => 's', + 'Ş' => 'S', 'ş' => 's', - 'Š' => 's', + 'Š' => 'S', 'š' => 's', - 'Ţ' => 't', + 'Ţ' => 'T', 'ţ' => 't', - 'Ť' => 't', + 'Ť' => 'T', 'ť' => 't', - 'Ŧ' => 't', + 'Ŧ' => 'T', 'ŧ' => 't', - 'Ũ' => 'u', + 'Ũ' => 'U', 'ũ' => 'u', - 'Ū' => 'u', + 'Ū' => 'U', 'ū' => 'u', - 'Ŭ' => 'u', + 'Ŭ' => 'U', 'ŭ' => 'u', - 'Ů' => 'u', + 'Ů' => 'U', 'ů' => 'u', - 'Ű' => 'u', + 'Ű' => 'U', 'ű' => 'u', - 'Ų' => 'u', + 'Ų' => 'U', 'ų' => 'u', - 'Ŵ' => 'w', + 'Ŵ' => 'W', 'ŵ' => 'w', - 'Ŷ' => 'y', + 'Ŷ' => 'Y', 'ŷ' => 'y', - 'Ÿ' => 'y', - 'Ź' => 'z', + 'Ÿ' => 'Y', + 'Ź' => 'Z', 'ź' => 'z', - 'Ż' => 'z', + 'Ż' => 'Z', 'ż' => 'z', - 'Ž' => 'z', + 'Ž' => 'Z', 'ž' => 'z', - 'ſ' => 'z', - 'Ə' => 'e', + 'ſ' => 'Z', + 'Ə' => 'E', 'ƒ' => 'f', - 'Ơ' => 'o', + 'Ơ' => 'O', 'ơ' => 'o', - 'Ư' => 'u', + 'Ư' => 'U', 'ư' => 'u', - 'Ǎ' => 'a', + 'Ǎ' => 'A', 'ǎ' => 'a', - 'Ǐ' => 'i', + 'Ǐ' => 'I', 'ǐ' => 'i', - 'Ǒ' => 'o', + 'Ǒ' => 'O', 'ǒ' => 'o', - 'Ǔ' => 'u', + 'Ǔ' => 'U', 'ǔ' => 'u', - 'Ǖ' => 'u', + 'Ǖ' => 'U', 'ǖ' => 'u', - 'Ǘ' => 'u', + 'Ǘ' => 'U', 'ǘ' => 'u', - 'Ǚ' => 'u', + 'Ǚ' => 'U', 'ǚ' => 'u', - 'Ǜ' => 'u', + 'Ǜ' => 'U', 'ǜ' => 'u', - 'Ǻ' => 'a', + 'Ǻ' => 'A', 'ǻ' => 'a', - 'Ǽ' => 'ae', + 'Ǽ' => 'Ae', 'ǽ' => 'ae', - 'Ǿ' => 'o', + 'Ǿ' => 'O', 'ǿ' => 'o', 'ə' => 'e', - 'Ё' => 'jo', + 'Ё' => 'Jo', 'Є' => 'e', - 'І' => 'i', - 'Ї' => 'i', - 'А' => 'a', - 'Б' => 'b', - 'В' => 'v', - 'Г' => 'g', - 'Д' => 'd', - 'Е' => 'e', - 'Ж' => 'zh', - 'З' => 'z', - 'И' => 'i', - 'Й' => 'y', - 'К' => 'k', - 'Л' => 'l', - 'М' => 'm', - 'Н' => 'n', - 'О' => 'o', - 'П' => 'p', - 'Р' => 'r', - 'С' => 's', - 'Т' => 't', - 'У' => 'u', - 'Ф' => 'f', - 'Х' => 'h', - 'Ц' => 'c', - 'Ч' => 'ch', - 'Ш' => 'sh', - 'Щ' => 'sht', - 'Ъ' => 'a', - 'Ы' => 'y', - 'Ь' => 'y', - 'Э' => 'je', - 'Ю' => 'yu', - 'Я' => 'ya', + 'І' => 'I', + 'Ї' => 'I', + 'А' => 'A', + 'Б' => 'B', + 'В' => 'V', + 'Г' => 'G', + 'Д' => 'D', + 'Е' => 'E', + 'Ж' => 'Zh', + 'З' => 'Z', + 'И' => 'I', + 'Й' => 'Y', + 'К' => 'K', + 'Л' => 'L', + 'М' => 'M', + 'Н' => 'N', + 'О' => 'O', + 'П' => 'P', + 'Р' => 'R', + 'С' => 'S', + 'Т' => 'T', + 'У' => 'U', + 'Ф' => 'V', + 'Х' => 'H', + 'Ц' => 'Ts', + 'Ч' => 'Ch', + 'Ш' => 'Sh', + 'Щ' => 'Sht', + 'Ъ' => 'A', + 'Ы' => 'Y', + 'Ь' => 'Y', + 'Э' => 'Ye', + 'Ю' => 'Uu', + 'Я' => 'Ya', 'а' => 'a', 'б' => 'b', 'в' => 'v', @@ -293,21 +293,21 @@ class Translit implements FilterInterface 'у' => 'u', 'ф' => 'f', 'х' => 'h', - 'ц' => 'c', + 'ц' => 'ts', 'ч' => 'ch', 'ш' => 'sh', 'щ' => 'sht', 'ъ' => 'a', 'ы' => 'y', 'ь' => 'y', - 'э' => 'je', + 'э' => 'ye', 'ю' => 'yu', 'я' => 'ya', - 'ё' => 'jo', + 'ё' => 'yo', 'є' => 'e', 'і' => 'i', 'ї' => 'i', - 'Ґ' => 'g', + 'Ґ' => 'G', 'ґ' => 'g', 'א' => 'a', 'ב' => 'b', @@ -339,64 +339,64 @@ class Translit implements FilterInterface '™' => 'tm', 'α' => 'a', 'ά' => 'a', - 'Ά' => 'a', - 'Α' => 'a', + 'Ά' => 'A', + 'Α' => 'A', 'β' => 'b', - 'Β' => 'b', + 'Β' => 'B', 'γ' => 'g', - 'Γ' => 'g', + 'Γ' => 'G', 'δ' => 'd', 'Δ' => 'd', 'ε' => 'e', 'έ' => 'e', - 'Ε' => 'e', - 'Έ' => 'e', + 'Ε' => 'E', + 'Έ' => 'E', 'ζ' => 'z', - 'Ζ' => 'z', + 'Ζ' => 'Z', 'η' => 'i', 'ή' => 'i', - 'Η' => 'i', + 'Η' => 'I', 'θ' => 'th', - 'Θ' => 'th', + 'Θ' => 'Th', 'ι' => 'i', 'ί' => 'i', 'ϊ' => 'i', 'ΐ' => 'i', - 'Ι' => 'i', - 'Ί' => 'i', + 'Ι' => 'I', + 'Ί' => 'I', 'κ' => 'k', - 'Κ' => 'k', + 'Κ' => 'K', 'λ' => 'l', - 'Λ' => 'l', + 'Λ' => 'L', 'μ' => 'm', - 'Μ' => 'm', + 'Μ' => 'M', 'ν' => 'n', - 'Ν' => 'n', + 'Ν' => 'N', 'ξ' => 'x', - 'Ξ' => 'x', + 'Ξ' => 'X', 'ο' => 'o', 'ό' => 'o', - 'Ο' => 'o', - 'Ό' => 'o', + 'Ο' => 'O', + 'Ό' => 'O', 'π' => 'p', - 'Π' => 'p', + 'Π' => 'P', 'ρ' => 'r', - 'Ρ' => 'r', + 'Ρ' => 'R', 'σ' => 's', 'ς' => 's', - 'Σ' => 's', + 'Σ' => 'S', 'τ' => 't', - 'Τ' => 't', + 'Τ' => 'T', 'υ' => 'u', 'ύ' => 'u', 'Υ' => 'y', - 'Ύ' => 'y', + 'Ύ' => 'Y', 'φ' => 'f', - 'Φ' => 'f', + 'Φ' => 'F', 'χ' => 'ch', - 'Χ' => 'ch', + 'Χ' => 'Ch', 'ψ' => 'ps', - 'Ψ' => 'ps', + 'Ψ' => 'Ps', 'ω' => 'o', 'ώ' => 'o', 'Ω' => 'o', @@ -501,7 +501,7 @@ class Translit implements FilterInterface 'ৢ' => 'n', 'ৣ' => 'nn', 'ñ' => 'n', - 'Ñ' => 'n', + 'Ñ' => 'N', ]; /** From fde9f30081175d5e868fb1d54914b2aa7218b96e Mon Sep 17 00:00:00 2001 From: Kostadin Bashev Date: Wed, 18 Jun 2025 07:45:22 +0300 Subject: [PATCH 4/4] few more upercased chars. --- lib/internal/Magento/Framework/Filter/Translit.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/internal/Magento/Framework/Filter/Translit.php b/lib/internal/Magento/Framework/Filter/Translit.php index 7ad0aea5a5c3b..373f0950e95f7 100644 --- a/lib/internal/Magento/Framework/Filter/Translit.php +++ b/lib/internal/Magento/Framework/Filter/Translit.php @@ -236,7 +236,7 @@ class Translit implements FilterInterface 'ǿ' => 'o', 'ə' => 'e', 'Ё' => 'Jo', - 'Є' => 'e', + 'Є' => 'E', 'І' => 'I', 'Ї' => 'I', 'А' => 'A', @@ -346,7 +346,7 @@ class Translit implements FilterInterface 'γ' => 'g', 'Γ' => 'G', 'δ' => 'd', - 'Δ' => 'd', + 'Δ' => 'D', 'ε' => 'e', 'έ' => 'e', 'Ε' => 'E', @@ -389,7 +389,7 @@ class Translit implements FilterInterface 'Τ' => 'T', 'υ' => 'u', 'ύ' => 'u', - 'Υ' => 'y', + 'Υ' => 'Y', 'Ύ' => 'Y', 'φ' => 'f', 'Φ' => 'F',