diff --git a/CustomKeyboard/Resource/kb_keyboard_layout_config.json b/CustomKeyboard/Resource/kb_keyboard_layout_config.json index 85d0c37..a11f43a 100644 --- a/CustomKeyboard/Resource/kb_keyboard_layout_config.json +++ b/CustomKeyboard/Resource/kb_keyboard_layout_config.json @@ -521,135 +521,110 @@ ] }, "letters_bopomofo_full": { - "__comment": "繁体注音全键盘布局(参考 iOS 系统注音键盘)", - "__comment_symbols": "声母:ㄅㄆㄇㄈㄉㄊㄋㄌㄍㄎㄏㄐㄑㄒㄓㄔㄕㄖㄗㄘㄙ 韵母:ㄚㄛㄜㄝㄞㄟㄠㄡㄢㄣㄤㄥㄦㄧㄨㄩ 声调:ˊˇˋ˙", + "__comment": "繁体注音全键盘布局(iOS 标准注音排列)", + "__comment_layout": "第一行:ㄅㄉˇˋㄓˊ˙ㄚㄞㄢㄦ | 第二行:ㄆㄊㄍㄐㄔㄗㄧㄛㄟㄣ | 第三行:ㄇㄋㄎㄑㄕㄘㄨㄜㄠㄤ | 第四行:ㄈㄌㄏㄒㄖㄙㄩㄝㄡㄥ", "rows": [ { - "__comment": "第一行:声调 + 韵母", "align": "left", "insetLeft": 4, "insetRight": 4, "gap": 5, "items": [ - "letter:ˊ", "letter:ˇ", "letter:ˋ", "letter:˙", "letter:ㄚ", - "letter:ㄛ", "letter:ㄜ", "letter:ㄝ", "letter:ㄞ", "letter:ㄟ" + "letter:ㄅ", "letter:ㄉ", "letter:ˇ", "letter:ˋ", "letter:ㄓ", + "letter:ˊ", "letter:˙", "letter:ㄚ", "letter:ㄞ", "letter:ㄢ", "letter:ㄦ" ] }, { - "__comment": "第二行:声母 + 韵母", - "align": "center", - "insetLeft": 0, - "insetRight": 0, + "align": "left", + "insetLeft": 4, + "insetRight": 4, "gap": 5, "items": [ - "letter:ㄅ", "letter:ㄆ", "letter:ㄇ", "letter:ㄈ", "letter:ㄉ", - "letter:ㄊ", "letter:ㄋ", "letter:ㄌ", "letter:ㄍ" + "letter:ㄆ", "letter:ㄊ", "letter:ㄍ", "letter:ㄐ", "letter:ㄔ", + "letter:ㄗ", "letter:ㄧ", "letter:ㄛ", "letter:ㄟ", "letter:ㄣ" ] }, { - "__comment": "第三行:声母 + 韵母", - "align": "left", - "insetLeft": 4, - "insetRight": 4, - "gap": 5, - "segments": { - "left": [ - { "id": "shift", "width": "controlWidth" } - ], - "center": [ - "letter:ㄎ", "letter:ㄏ", "letter:ㄐ", "letter:ㄑ", "letter:ㄒ", "letter:ㄓ", "letter:ㄔ", "letter:ㄕ" - ], - "right": [ - { "id": "backspace", "width": "controlWidth" } - ] - } - }, - { - "__comment": "第四行:声母 + 韵母", "align": "left", "insetLeft": 4, "insetRight": 4, "gap": 5, "items": [ - "letter:ㄖ", "letter:ㄗ", "letter:ㄘ", "letter:ㄙ", "letter:ㄧ", - "letter:ㄨ", "letter:ㄩ", "letter:ㄠ", "letter:ㄡ", "letter:ㄢ" + "letter:ㄇ", "letter:ㄋ", "letter:ㄎ", "letter:ㄑ", "letter:ㄕ", + "letter:ㄘ", "letter:ㄨ", "letter:ㄜ", "letter:ㄠ", "letter:ㄤ" ] }, { - "__comment": "第五行:韵母 + 控制键", "align": "left", "insetLeft": 4, "insetRight": 4, "gap": 5, "items": [ - "letter:ㄣ", "letter:ㄤ", "letter:ㄥ", "letter:ㄦ", "mode_123", "emoji", "space", "send" + "letter:ㄈ", "letter:ㄌ", "letter:ㄏ", "letter:ㄒ", "letter:ㄖ", + "letter:ㄙ", "letter:ㄩ", "letter:ㄝ", "letter:ㄡ", "letter:ㄥ" + ] + }, + { + "align": "left", + "insetLeft": 4, + "insetRight": 4, + "gap": 5, + "items": [ + "mode_123", "emoji", "space", "send" ] } ] }, "letters_bopomofo_standard": { - "__comment": "繁体注音标准布局(传统排列方式)", - "__comment_symbols": "声母:ㄅㄆㄇㄈㄉㄊㄋㄌㄍㄎㄏㄐㄑㄒㄓㄔㄕㄖㄗㄘㄙ 韵母:ㄚㄛㄜㄝㄞㄟㄠㄡㄢㄣㄤㄥㄦㄧㄨㄩ 声调:ˊˇˋ˙", + "__comment": "繁体注音标准布局(与全键盘相同)", "rows": [ { - "__comment": "第一行:声母", "align": "left", "insetLeft": 4, "insetRight": 4, "gap": 5, "items": [ - "letter:ㄅ", "letter:ㄆ", "letter:ㄇ", "letter:ㄈ", "letter:ㄉ", - "letter:ㄊ", "letter:ㄋ", "letter:ㄌ", "letter:ㄍ", "letter:ㄎ" + "letter:ㄅ", "letter:ㄉ", "letter:ˇ", "letter:ˋ", "letter:ㄓ", + "letter:ˊ", "letter:˙", "letter:ㄚ", "letter:ㄞ", "letter:ㄢ", "letter:ㄦ" ] }, { - "__comment": "第二行:声母", - "align": "center", - "insetLeft": 0, - "insetRight": 0, + "align": "left", + "insetLeft": 4, + "insetRight": 4, "gap": 5, "items": [ - "letter:ㄏ", "letter:ㄐ", "letter:ㄑ", "letter:ㄒ", "letter:ㄓ", - "letter:ㄔ", "letter:ㄕ", "letter:ㄖ", "letter:ㄗ", "letter:ㄘ" + "letter:ㄆ", "letter:ㄊ", "letter:ㄍ", "letter:ㄐ", "letter:ㄔ", + "letter:ㄗ", "letter:ㄧ", "letter:ㄛ", "letter:ㄟ", "letter:ㄣ" ] }, { - "__comment": "第三行:声母 + 韵母", - "align": "left", - "insetLeft": 4, - "insetRight": 4, - "gap": 5, - "segments": { - "left": [ - { "id": "shift", "width": "controlWidth" } - ], - "center": [ - "letter:ㄙ", "letter:ㄧ", "letter:ㄨ", "letter:ㄩ", "letter:ㄚ", "letter:ㄛ", "letter:ㄜ", "letter:ㄝ" - ], - "right": [ - { "id": "backspace", "width": "controlWidth" } - ] - } - }, - { - "__comment": "第四行:韵母 + 声调", "align": "left", "insetLeft": 4, "insetRight": 4, "gap": 5, "items": [ - "letter:ㄞ", "letter:ㄟ", "letter:ㄠ", "letter:ㄡ", "letter:ㄢ", - "letter:ㄣ", "letter:ㄤ", "letter:ㄥ", "letter:ㄦ", "letter:ˊ" + "letter:ㄇ", "letter:ㄋ", "letter:ㄎ", "letter:ㄑ", "letter:ㄕ", + "letter:ㄘ", "letter:ㄨ", "letter:ㄜ", "letter:ㄠ", "letter:ㄤ" ] }, { - "__comment": "第五行:声调 + 控制键", "align": "left", "insetLeft": 4, "insetRight": 4, "gap": 5, "items": [ - "letter:ˇ", "letter:ˋ", "letter:˙", "mode_123", "emoji", "space", "send" + "letter:ㄈ", "letter:ㄌ", "letter:ㄏ", "letter:ㄒ", "letter:ㄖ", + "letter:ㄙ", "letter:ㄩ", "letter:ㄝ", "letter:ㄡ", "letter:ㄥ" + ] + }, + { + "align": "left", + "insetLeft": 4, + "insetRight": 4, + "gap": 5, + "items": [ + "mode_123", "emoji", "space", "send" ] } ] diff --git a/CustomKeyboard/Resource/kb_keyboard_layouts_i18n.json b/CustomKeyboard/Resource/kb_keyboard_layouts_i18n.json index 1f011f3..2a8ebc8 100644 --- a/CustomKeyboard/Resource/kb_keyboard_layouts_i18n.json +++ b/CustomKeyboard/Resource/kb_keyboard_layouts_i18n.json @@ -683,6 +683,265 @@ "items": ["mode_abc", "emoji", "space", "send"] } ] + }, + + "letters_bopomofo_full": { + "__comment": "繁体注音全键盘布局(标准注音排列)", + "__comment_layout": "第一行:ㄅㄉˇˋㄓˊ˙ㄚㄞㄢㄦ | 第二行:ㄆㄊㄍㄐㄔㄗㄧㄛㄟㄣ | 第三行:ㄇㄋㄎㄑㄕㄘㄨㄜㄠㄤ | 第四行:ㄈㄌㄏㄒㄖㄙㄩㄝㄡㄥ", + "rows": [ + { + "align": "left", + "insetLeft": 4, + "insetRight": 4, + "gap": 5, + "items": ["letter:ㄅ", "letter:ㄉ", "letter:ˇ", "letter:ˋ", "letter:ㄓ", "letter:ˊ", "letter:˙", "letter:ㄚ", "letter:ㄞ", "letter:ㄢ", "letter:ㄦ"] + }, + { + "align": "left", + "insetLeft": 4, + "insetRight": 4, + "gap": 5, + "items": ["letter:ㄆ", "letter:ㄊ", "letter:ㄍ", "letter:ㄐ", "letter:ㄔ", "letter:ㄗ", "letter:ㄧ", "letter:ㄛ", "letter:ㄟ", "letter:ㄣ"] + }, + { + "align": "left", + "insetLeft": 4, + "insetRight": 4, + "gap": 5, + "items": ["letter:ㄇ", "letter:ㄋ", "letter:ㄎ", "letter:ㄑ", "letter:ㄕ", "letter:ㄘ", "letter:ㄨ", "letter:ㄜ", "letter:ㄠ", "letter:ㄤ"] + }, + { + "align": "left", + "insetLeft": 4, + "insetRight": 4, + "gap": 5, + "items": ["letter:ㄈ", "letter:ㄌ", "letter:ㄏ", "letter:ㄒ", "letter:ㄖ", "letter:ㄙ", "letter:ㄩ", "letter:ㄝ", "letter:ㄡ", "letter:ㄥ"] + }, + { + "align": "left", + "insetLeft": 4, + "insetRight": 4, + "gap": 5, + "items": ["mode_123", "emoji", "space", "send"] + } + ] + }, + + "letters_bopomofo_full_numbers": { + "__comment": "繁体注音全键盘 - 数字面板(123 页)", + "rows": [ + { + "align": "left", + "insetLeft": 4, + "insetRight": 4, + "gap": 5, + "items": ["digit:1", "digit:2", "digit:3", "digit:4", "digit:5", "digit:6", "digit:7", "digit:8", "digit:9", "digit:0"] + }, + { + "align": "left", + "insetLeft": 4, + "insetRight": 4, + "gap": 5, + "items": ["sym:-", "sym:/", "sym::", "sym:;", "sym:(", "sym:)", "sym:NT$", "sym:&", "sym:@", "sym:\""] + }, + { + "align": "center", + "insetLeft": 4, + "insetRight": 4, + "gap": 5, + "segments": { + "left": [{ "id": "symbols_toggle_more", "width": "symbolsSideWidth" }], + "center": [ + { "id": "sym:.", "width": "symbolsWideWidth" }, + { "id": "sym:,", "width": "symbolsWideWidth" }, + { "id": "sym:?", "width": "symbolsWideWidth" }, + { "id": "sym:!", "width": "symbolsWideWidth" }, + { "id": "sym:'", "width": "symbolsWideWidth" } + ], + "right": [{ "id": "backspace", "width": "symbolsSideWidth" }] + } + }, + { + "align": "left", + "insetLeft": 4, + "insetRight": 4, + "gap": 5, + "items": ["mode_abc", "emoji", "space", "send"] + } + ] + }, + + "letters_bopomofo_full_symbols": { + "__comment": "繁体注音全键盘 - 符号面板(#+= 页)", + "rows": [ + { + "align": "left", + "insetLeft": 4, + "insetRight": 4, + "gap": 5, + "items": ["sym:[", "sym:]", "sym:{", "sym:}", "sym:#", "sym:%", "sym:^", "sym:*", "sym:+", "sym:="] + }, + { + "align": "left", + "insetLeft": 4, + "insetRight": 4, + "gap": 5, + "items": ["sym:_", "sym:\\", "sym:|", "sym:~", "sym:<", "sym:>", "sym:NT$", "sym:$", "sym:€", "sym:·"] + }, + { + "align": "center", + "insetLeft": 4, + "insetRight": 4, + "gap": 5, + "segments": { + "left": [{ "id": "symbols_toggle_123", "width": "symbolsSideWidth" }], + "center": [ + { "id": "sym:.", "width": "symbolsWideWidth" }, + { "id": "sym:,", "width": "symbolsWideWidth" }, + { "id": "sym:?", "width": "symbolsWideWidth" }, + { "id": "sym:!", "width": "symbolsWideWidth" }, + { "id": "sym:'", "width": "symbolsWideWidth" } + ], + "right": [{ "id": "backspace", "width": "symbolsSideWidth" }] + } + }, + { + "align": "left", + "insetLeft": 4, + "insetRight": 4, + "gap": 5, + "items": ["mode_abc", "emoji", "space", "send"] + } + ] + }, + + "letters_bopomofo_standard": { + "__comment": "繁体注音标准布局(与全键盘相同)", + "rows": [ + { + "align": "left", + "insetLeft": 4, + "insetRight": 4, + "gap": 5, + "items": ["letter:ㄅ", "letter:ㄉ", "letter:ˇ", "letter:ˋ", "letter:ㄓ", "letter:ˊ", "letter:˙", "letter:ㄚ", "letter:ㄞ", "letter:ㄢ", "letter:ㄦ"] + }, + { + "align": "left", + "insetLeft": 4, + "insetRight": 4, + "gap": 5, + "items": ["letter:ㄆ", "letter:ㄊ", "letter:ㄍ", "letter:ㄐ", "letter:ㄔ", "letter:ㄗ", "letter:ㄧ", "letter:ㄛ", "letter:ㄟ", "letter:ㄣ"] + }, + { + "align": "left", + "insetLeft": 4, + "insetRight": 4, + "gap": 5, + "items": ["letter:ㄇ", "letter:ㄋ", "letter:ㄎ", "letter:ㄑ", "letter:ㄕ", "letter:ㄘ", "letter:ㄨ", "letter:ㄜ", "letter:ㄠ", "letter:ㄤ"] + }, + { + "align": "left", + "insetLeft": 4, + "insetRight": 4, + "gap": 5, + "items": ["letter:ㄈ", "letter:ㄌ", "letter:ㄏ", "letter:ㄒ", "letter:ㄖ", "letter:ㄙ", "letter:ㄩ", "letter:ㄝ", "letter:ㄡ", "letter:ㄥ"] + }, + { + "align": "left", + "insetLeft": 4, + "insetRight": 4, + "gap": 5, + "items": ["mode_123", "emoji", "space", "send"] + } + ] + }, + + "letters_bopomofo_standard_numbers": { + "__comment": "繁体注音标准 - 数字面板(123 页)", + "rows": [ + { + "align": "left", + "insetLeft": 4, + "insetRight": 4, + "gap": 5, + "items": ["digit:1", "digit:2", "digit:3", "digit:4", "digit:5", "digit:6", "digit:7", "digit:8", "digit:9", "digit:0"] + }, + { + "align": "left", + "insetLeft": 4, + "insetRight": 4, + "gap": 5, + "items": ["sym:-", "sym:/", "sym::", "sym:;", "sym:(", "sym:)", "sym:NT$", "sym:&", "sym:@", "sym:\""] + }, + { + "align": "center", + "insetLeft": 4, + "insetRight": 4, + "gap": 5, + "segments": { + "left": [{ "id": "symbols_toggle_more", "width": "symbolsSideWidth" }], + "center": [ + { "id": "sym:.", "width": "symbolsWideWidth" }, + { "id": "sym:,", "width": "symbolsWideWidth" }, + { "id": "sym:?", "width": "symbolsWideWidth" }, + { "id": "sym:!", "width": "symbolsWideWidth" }, + { "id": "sym:'", "width": "symbolsWideWidth" } + ], + "right": [{ "id": "backspace", "width": "symbolsSideWidth" }] + } + }, + { + "align": "left", + "insetLeft": 4, + "insetRight": 4, + "gap": 5, + "items": ["mode_abc", "emoji", "space", "send"] + } + ] + }, + + "letters_bopomofo_standard_symbols": { + "__comment": "繁体注音标准 - 符号面板(#+= 页)", + "rows": [ + { + "align": "left", + "insetLeft": 4, + "insetRight": 4, + "gap": 5, + "items": ["sym:[", "sym:]", "sym:{", "sym:}", "sym:#", "sym:%", "sym:^", "sym:*", "sym:+", "sym:="] + }, + { + "align": "left", + "insetLeft": 4, + "insetRight": 4, + "gap": 5, + "items": ["sym:_", "sym:\\", "sym:|", "sym:~", "sym:<", "sym:>", "sym:NT$", "sym:$", "sym:€", "sym:·"] + }, + { + "align": "center", + "insetLeft": 4, + "insetRight": 4, + "gap": 5, + "segments": { + "left": [{ "id": "symbols_toggle_123", "width": "symbolsSideWidth" }], + "center": [ + { "id": "sym:.", "width": "symbolsWideWidth" }, + { "id": "sym:,", "width": "symbolsWideWidth" }, + { "id": "sym:?", "width": "symbolsWideWidth" }, + { "id": "sym:!", "width": "symbolsWideWidth" }, + { "id": "sym:'", "width": "symbolsWideWidth" } + ], + "right": [{ "id": "backspace", "width": "symbolsSideWidth" }] + } + }, + { + "align": "left", + "insetLeft": 4, + "insetRight": 4, + "gap": 5, + "items": ["mode_abc", "emoji", "space", "send"] + } + ] } } } diff --git a/CustomKeyboard/View/KBKeyboardView.m b/CustomKeyboard/View/KBKeyboardView.m index faf757a..bb91539 100644 --- a/CustomKeyboard/View/KBKeyboardView.m +++ b/CustomKeyboard/View/KBKeyboardView.m @@ -1282,6 +1282,7 @@ edgeSpacerMultiplier:(CGFloat)edgeSpacerMultiplier { @">": @"sym_gt", @"€": @"sym_euro", @"$": @"sym_dollar", + @"£": @"sym_pound", @"·": @"sym_bullet" }; });