From 7d51fa2b5df1810685b58745a9496186615fd2b2 Mon Sep 17 00:00:00 2001 From: mergen3107 <6279855+mergen3107@users.noreply.github.com> Date: Sat, 14 Mar 2020 06:13:46 -0400 Subject: [PATCH] [UX] Update Russian keyboard layout (#5957) Closes #5953. --- .../keyboardlayouts/keypopup/ru_popup.lua | 81 +++++++++++++ .../ui/data/keyboardlayouts/ru_keyboard.lua | 106 ++++++++++++------ 2 files changed, 150 insertions(+), 37 deletions(-) diff --git a/frontend/ui/data/keyboardlayouts/keypopup/ru_popup.lua b/frontend/ui/data/keyboardlayouts/keypopup/ru_popup.lua index 89390019c..e83e09d64 100644 --- a/frontend/ui/data/keyboardlayouts/keypopup/ru_popup.lua +++ b/frontend/ui/data/keyboardlayouts/keypopup/ru_popup.lua @@ -15,4 +15,85 @@ return { "е", north = "ё", }, + _SH_ = { + "Ь", + north = "Ъ", + }, + _sh_ = { + "ь", + north = "ъ", + }, + -- + _KA_ = { + "А", + north = "Ә", + }, + _ka_ = { + "а", + north = "ә", + }, + _KI_ = { + "Ы", + north = "І", + }, + _ki_ = { + "ы", + north = "і", + }, + _KN_ = { + "Н", + north = "Ң", + }, + _kn_ = { + "н", + north = "ң", + }, + _KG_ = { + "Г", + north = "Ғ", + }, + _kg_ = { + "г", + north = "ғ", + }, + _KU_ = { + "У", + north = "Ү", + northeast = "Ұ", + }, + _ku_ = { + "у", + north = "ү", + northeast = "ұ", + }, + _KK_ = { + "К", + north = "Қ", + }, + _kk_ = { + "к", + north = "қ", + }, + _KO_ = { + "О", + north = "Ө", + }, + _ko_ = { + "о", + north = "ө", + }, + _KH_ = { + "Х", + north = "Һ", + }, + _kh_ = { + "х", + north = "һ", + }, + _qe_ = { + "?", + north = "!", + northwest = '"', + northeast = "'", + }, } diff --git a/frontend/ui/data/keyboardlayouts/ru_keyboard.lua b/frontend/ui/data/keyboardlayouts/ru_keyboard.lua index 8ca723608..a594c9c5c 100644 --- a/frontend/ui/data/keyboardlayouts/ru_keyboard.lua +++ b/frontend/ui/data/keyboardlayouts/ru_keyboard.lua @@ -9,70 +9,102 @@ local _je_ = ru_popup._je_ local _Ye_ = ru_popup._Ye_ local _ye_ = ru_popup._ye_ +-- the Russian soft/hard sign +local _SH_ = ru_popup._SH_ +local _sh_ = ru_popup._sh_ + +-- Kazakh Cyrillic letters: ә і ң ғ ү ұ қ ө һ +local _KA_ = ru_popup._KA_ +local _ka_ = ru_popup._ka_ +local _KI_ = ru_popup._KI_ +local _ki_ = ru_popup._ki_ +local _KN_ = ru_popup._KN_ +local _kn_ = ru_popup._kn_ +local _KG_ = ru_popup._KG_ +local _kg_ = ru_popup._kg_ +local _KU_ = ru_popup._KU_ +local _ku_ = ru_popup._ku_ +local _KK_ = ru_popup._KK_ +local _kk_ = ru_popup._kk_ +local _KO_ = ru_popup._KO_ +local _ko_ = ru_popup._ko_ +local _KH_ = ru_popup._KH_ +local _kh_ = ru_popup._kh_ + +-- Question mark, exclamation, quotes +local _qe_ = ru_popup._qe_ + + return { min_layer = 1, max_layer = 8, shiftmode_keys = {[""] = true, ["1/2"] = true, ["2/2"] = true}, symbolmode_keys = {["123"] = true, ["АБВ"] = true, ["ещё"] = true}, utf8mode_keys = {["🌐"] = true}, - umlautmode_keys = {["Жбъ"] = true}, + umlautmode_keys = {["αβγ"] = true}, keys = { -- first row { -- 1 2 3 4 5 6 7 8 - { "Й", "й", "„", "0", "?", "!", "1", "ª", }, - { "Ц", "ц", "!", "1", "(", "1", "2", "º", }, - { "У", "у", _at, "2", ")", "2", "3", "¡", }, - { "К", "к", "#", "3", "~", "3", "4", "¿", }, - { _Ye_, _ye_, "+", _eq, "Ә", "ә", "5", "¼", }, - { "Н", "н", "€", "(", "І", "і", "6", "½", }, - { "Г", "г", "‰", ")", "Ң", "ң", "7", "¾", }, - { "Ш", "ш", "|", "\\", "Ғ", "ғ", "8", "©", }, - { "Щ", "щ", "?", "/", "Х", "х", "9", "®", }, - { "З", "з", "~", "`", "Ъ", "ъ", "0", "™", }, + { "Й", "й", "'", "`", "∫", "∂", "∴", "`", }, + { "Ц", "ц", "[", "1", "ς", "ς", "¹", "1", }, + { _KU_, _ku_, "]", "2", "Ε", "ε", "²", "2", }, + { _KK_, _kk_, "{", "3", "Ρ", "ρ", "³", "3", }, + { _Ye_, _ye_, "}", "4", "Τ", "τ", "⁴", "4", }, + { _KN_, _kn_, "#", "5", "Υ", "υ", "⁵", "5", }, + { _KG_, _kg_, "%", "6", "Θ", "θ", "⁶", "6", }, + { "Ш", "ш", "^", "7", "Ι", "ι", "⁷", "7", }, + { "Щ", "щ", "*", "8", "Ο", "ο", "⁸", "8", }, + { "З", "з", "+", "9", "Π", "π", "⁹", "9", }, + { _KH_, _kh_, _eq, "0", "²", "√", "⁰", "0", }, }, -- second row { -- 1 2 3 4 5 6 7 8 - { "Ф", "ф", "…", _at, "*", "0", "«", "«", }, - { "Ы", "ы", "$", "4", "+", "4", "»", "»", }, - { "В", "в", "%", "5", "-", "5", "Ğ", "ğ", }, - { "А", "а", "^", "6", _eq, "6", "Ć", "ć", }, - { "П", "п", ":", ";", "Ү", "ү", "Č", "č", }, - { "Р", "р", '"', "'", "Ұ", "ұ", "Đ", "đ", }, - { "О", "о", "{", "[", "Қ", "қ", "Š", "š", }, - { "Л", "л", "}", "]", _Je_, _je_, "Ž", "ž", }, - { "Д", "д", "_", "-", "Э", "э", "§", "§", }, + { "Ф", "ф", "_", "+", "Α", "α", "„", "«", }, + { _KI_, _ki_, "\\", "-", "Σ", "σ", "“", "»", }, + { "В", "в", "_", "/", "Δ", "δ", "№", "≤", }, + { _KA_, _ka_, "~", ":", "Φ", "φ", "†", "≥", }, + { "П", "п", "<", ";", "Γ", "γ", "‡", "≈", }, + { "Р", "р", ">", "(", "Η", "η", "©", "≠", }, + { _KO_, _ko_, "€", ")", "Ξ", "ξ", "™", "≡", }, + { "Л", "л", "£", "$", "Κ", "κ", "🄯", "¶", }, + { "Д", "д", "¥", "&", "Λ", "λ", "®", "§", }, + { _Je_, _je_, "₸", _at, "×", "×", "½", "¤", }, + { "Э", "э", "¢", "”", "⋅", "⋅", "¼", "‰", }, }, -- third row { -- 1 2 3 4 5 6 7 8 { "", "", "2/2", "1/2", "", "", "", "", - width = 1.5 + width = 1.0 }, - { "Я", "я", "&", "7", ":", "7", "Ű", "ű", }, - { "Ч", "ч", "*", "8", ";", "8", "Ã", "ã", }, - { "С", "с", "£", "9", "'", "9", "Þ", "þ", }, - { "М", "м", "<", com, "Ө", "ө", "Ý", "ý", }, - { "И", "и", ">", prd, "Һ", "һ", "†", "‡", }, - { "Т", "т", "‘", "↑", "Б", "б", "–", "—", }, - { "Ь", "ь", "’", "↓", "Ю", "ю", "…", "¨", }, + { "Я", "я", "–", "–", "Ζ", "ζ", "∪", "±", }, + { "Ч", "ч", "—", "—", "Χ", "χ", "∩", "º", }, + { "С", "с", com, com, "Ψ", "ψ", "∈", "∞", }, + { "М", "м", prd, prd, "Ω", "ω", "∉", "…", }, + { "И", "и", "?", "?", "Β", "β", "∅", "¿", }, + { "Т", "т", "!", "!", "Ν", "ν", "∀", "¡", }, + { _SH_, _sh_, "’", "’", "Μ", "μ", "∃", "∝", }, + { "Б", "б", "↑", "↑", "≈", "≈", "↑", "↑", }, + { "Ю", "ю", "|", "|", "∇", "∇", "|", "|", }, { label = "", - width = 1.5, + width = 1.0, bold = false }, }, -- fourth row - { - { "123", "123", "АБВ", "АБВ", "ещё", "ещё", "АБВ", "АБВ", - width = 1.5}, + { -- 1 2 3 4 5 6 7 8 + { "123", "123", "АБВ", "АБВ", "ещё", "ещё", "ещё", "ещё", + width = 1.0}, { label = "🌐", }, - { "Жбъ", "Жбъ", "Жбъ", "Жбъ", "Жбъ", "Жбъ", "Жбъ", "Жбъ", }, + { "αβγ", "αβγ", "αβγ", "αβγ", "αβγ", "αβγ", "αβγ", "αβγ", }, { label = "пробел", " ", " ", " ", " ", " ", " ", " ", " ", - width = 3.0}, - { com, com, "“", "←", "Ё", "ё", com, com, }, - { prd, prd, "”", "→", prd, prd, prd, prd, }, + width = 4.0}, + { _qe_, _qe_, "←", "←", _qe_, _qe_, "←", "←", }, + { com, com, "↓", "↓", com, com, "↓", "↓", }, -- arrow down + { prd, prd, "→", "→", prd, prd, "→", "→", }, { label = "⮠", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", - width = 1.5, + width = 1.0, bold = true }, },