Mandarin // Add Fake-Seigyou Phonetic Layout.

This commit is contained in:
ShikiSuen 2022-02-13 12:28:39 +08:00
parent 0ebe252b42
commit 8c66e89e1a
9 changed files with 75 additions and 0 deletions

View File

@ -1258,9 +1258,59 @@ static BopomofoKeyboardLayout* CreateETen26Layout() {
ASSIGNKEY1(ktcm, vec, 'r', BPMF::ER);
ASSIGNKEY1(ktcm, vec, 'i', BPMF::AI);
ASSIGNKEY1(ktcm, vec, 'z', BPMF::AO);
return new BopomofoKeyboardLayout(ktcm, "ETen26");
}
static BopomofoKeyboardLayout* CreateFakeSeigyouLayout() {
std::vector<BPMF::Component> vec;
BopomofoKeyToComponentMap ktcm;
ASSIGNKEY1(ktcm, vec, '1', BPMF::Tone5);
ASSIGNKEY1(ktcm, vec, '2', BPMF::B);
ASSIGNKEY1(ktcm, vec, '3', BPMF::D);
ASSIGNKEY1(ktcm, vec, '4', BPMF::I);
ASSIGNKEY1(ktcm, vec, '5', BPMF::U);
ASSIGNKEY1(ktcm, vec, '6', BPMF::ZH);
ASSIGNKEY1(ktcm, vec, '7', BPMF::UE);
ASSIGNKEY1(ktcm, vec, '8', BPMF::A);
ASSIGNKEY1(ktcm, vec, '9', BPMF::AI);
ASSIGNKEY1(ktcm, vec, '0', BPMF::AN);
ASSIGNKEY1(ktcm, vec, '-', BPMF::ERR);
ASSIGNKEY1(ktcm, vec, ';', BPMF::ANG);
ASSIGNKEY1(ktcm, vec, ',', BPMF::E);
ASSIGNKEY1(ktcm, vec, '.', BPMF::OU);
ASSIGNKEY1(ktcm, vec, '/', BPMF::ENG);
ASSIGNKEY1(ktcm, vec, 'a', BPMF::Tone3);
ASSIGNKEY1(ktcm, vec, 'b', BPMF::X);
ASSIGNKEY1(ktcm, vec, 'c', BPMF::L);
ASSIGNKEY1(ktcm, vec, 'd', BPMF::N);
ASSIGNKEY1(ktcm, vec, 'e', BPMF::T);
ASSIGNKEY1(ktcm, vec, 'f', BPMF::K);
ASSIGNKEY1(ktcm, vec, 'g', BPMF::Q);
ASSIGNKEY1(ktcm, vec, 'h', BPMF::SH);
ASSIGNKEY1(ktcm, vec, 'i', BPMF::O);
ASSIGNKEY1(ktcm, vec, 'j', BPMF::C);
ASSIGNKEY1(ktcm, vec, 'k', BPMF::ER);
ASSIGNKEY1(ktcm, vec, 'l', BPMF::AO);
ASSIGNKEY1(ktcm, vec, 'm', BPMF::S);
ASSIGNKEY1(ktcm, vec, 'n', BPMF::R);
ASSIGNKEY1(ktcm, vec, 'o', BPMF::EI);
ASSIGNKEY1(ktcm, vec, 'p', BPMF::EN);
ASSIGNKEY1(ktcm, vec, 'q', BPMF::Tone2);
ASSIGNKEY1(ktcm, vec, 'r', BPMF::G);
ASSIGNKEY1(ktcm, vec, 's', BPMF::M);
ASSIGNKEY1(ktcm, vec, 't', BPMF::J);
ASSIGNKEY1(ktcm, vec, 'u', BPMF::Z);
ASSIGNKEY1(ktcm, vec, 'v', BPMF::H);
ASSIGNKEY1(ktcm, vec, 'w', BPMF::P);
ASSIGNKEY1(ktcm, vec, 'x', BPMF::F);
ASSIGNKEY1(ktcm, vec, 'y', BPMF::CH);
ASSIGNKEY1(ktcm, vec, 'z', BPMF::Tone4);
return new BopomofoKeyboardLayout(ktcm, "FakeSeigyou");
}
static BopomofoKeyboardLayout* CreateHanyuPinyinLayout() {
BopomofoKeyToComponentMap ktcm;
return new BopomofoKeyboardLayout(ktcm, "HanyuPinyin");
@ -1296,6 +1346,11 @@ const BopomofoKeyboardLayout* BopomofoKeyboardLayout::MiTACLayout() {
return layout;
}
const BopomofoKeyboardLayout* BopomofoKeyboardLayout::FakeSeigyouLayout() {
static BopomofoKeyboardLayout* layout = CreateFakeSeigyouLayout();
return layout;
}
const BopomofoKeyboardLayout* BopomofoKeyboardLayout::HanyuPinyinLayout() {
static BopomofoKeyboardLayout* layout = CreateHanyuPinyinLayout();
return layout;

View File

@ -214,6 +214,7 @@ public:
static const BopomofoKeyboardLayout* ETen26Layout();
static const BopomofoKeyboardLayout* IBMLayout();
static const BopomofoKeyboardLayout* MiTACLayout();
static const BopomofoKeyboardLayout* FakeSeigyouLayout();
static const BopomofoKeyboardLayout* HanyuPinyinLayout();
BopomofoKeyboardLayout(const BopomofoKeyToComponentMap& ktcm,

View File

@ -185,6 +185,9 @@ static NSString *const kGraphVizOutputfile = @"/tmp/vChewing-visualization.dot";
case KeyboardLayoutMiTAC:
_bpmfReadingBuffer->setKeyboardLayout(BopomofoKeyboardLayout::MiTACLayout());
break;
case KeyboardLayoutFakeSeigyou:
_bpmfReadingBuffer->setKeyboardLayout(BopomofoKeyboardLayout::FakeSeigyouLayout());
break;
case KeyboardLayoutHanyuPinyin:
_bpmfReadingBuffer->setKeyboardLayout(BopomofoKeyboardLayout::HanyuPinyinLayout());
break;

View File

@ -156,6 +156,7 @@ struct ComposingBufferSize {
case eten26 = 3
case IBM = 4
case MiTAC = 5
case FakeSeigyou = 6
case hanyuPinyin = 10
var name: String {
@ -172,6 +173,8 @@ struct ComposingBufferSize {
return "IBM"
case .MiTAC:
return "MiTAC"
case .FakeSeigyou:
return "FakeSeigyou"
case .hanyuPinyin:
return "HanyuPinyin"
}

View File

@ -596,6 +596,7 @@
<menuItem title="ETen26" tag="3" id="9"/>
<menuItem title="IBM" tag="4" id="137"/>
<menuItem title="MiTAC" tag="5" id="7fV-x8-WHQ"/>
<menuItem title="Fake Seigyou" tag="6" id="27F-8T-FkQ"/>
<menuItem title="Hanyu Pinyin" tag="10" id="10"/>
</items>
</menu>

View File

@ -92,6 +92,9 @@
/* Class = "NSMenuItem"; title = "MiTAC"; ObjectID = "7fV-x8-WHQ"; */
"7fV-x8-WHQ.title" = "MiTAC";
/* Class = "NSMenuItem"; title = "Fake Seigyou"; ObjectID = "27F-8T-FkQ"; */
"27F-8T-FkQ.title" = "Fake Seigyou (similar to JinYei)";
/* Class = "NSTabViewItem"; label = "Keyboard"; ObjectID = "1AW-xf-c2f"; */
"1AW-xf-c2f.label" = "Keyboard";

View File

@ -92,6 +92,9 @@
/* Class = "NSMenuItem"; title = "MiTAC"; ObjectID = "7fV-x8-WHQ"; */
"7fV-x8-WHQ.title" = "神通";
/* Class = "NSMenuItem"; title = "Fake Seigyou"; ObjectID = "27F-8T-FkQ"; */
"27F-8T-FkQ.title" = "偽精業";
/* Class = "NSTabViewItem"; label = "Keyboard"; ObjectID = "1AW-xf-c2f"; */
"1AW-xf-c2f.label" = "キーボード";

View File

@ -92,6 +92,9 @@
/* Class = "NSMenuItem"; title = "MiTAC"; ObjectID = "7fV-x8-WHQ"; */
"7fV-x8-WHQ.title" = "神通";
/* Class = "NSMenuItem"; title = "Fake Seigyou"; ObjectID = "27F-8T-FkQ"; */
"27F-8T-FkQ.title" = "伪精业";
/* Class = "NSTabViewItem"; label = "Keyboard"; ObjectID = "1AW-xf-c2f"; */
"1AW-xf-c2f.label" = "键盘";

View File

@ -92,6 +92,9 @@
/* Class = "NSMenuItem"; title = "MiTAC"; ObjectID = "7fV-x8-WHQ"; */
"7fV-x8-WHQ.title" = "神通";
/* Class = "NSMenuItem"; title = "Fake Seigyou"; ObjectID = "27F-8T-FkQ"; */
"27F-8T-FkQ.title" = "偽精業";
/* Class = "NSTabViewItem"; label = "Keyboard"; ObjectID = "1AW-xf-c2f"; */
"1AW-xf-c2f.label" = "鍵盤";