gitextract___f_mrqn/ ├── .clang-format ├── .gemini/ │ └── config.yaml ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ └── bug_report.md │ ├── copilot-instructions.md │ └── workflows/ │ └── ci.yaml ├── .gitignore ├── CMakeLists.txt ├── CODE_OF_CONDUCT.md ├── LICENSE.txt ├── README.md ├── build.sh ├── bumpversion.py ├── data/ │ ├── CMakeLists.txt │ ├── add-phrase-hook.sh │ ├── associated-phrases-v2.txt │ ├── bpmfvs-pua.txt │ ├── bpmfvs-variants.txt │ ├── data-plain-bpmf.txt │ ├── data.txt │ └── dictionary_service.json ├── distro/ │ └── archlinux/ │ └── PKGBUILD ├── org.fcitx.Fcitx5.Addon.McBopomofo.metainfo.xml.in ├── po/ │ ├── CMakeLists.txt │ ├── LINGUAS │ ├── en.po │ ├── fcitx5-mcbopomofo.pot │ └── zh_TW.po ├── run-xgettext.sh └── src/ ├── Big5Utils/ │ ├── Big5Utils.cpp │ ├── Big5Utils.h │ ├── Big5UtilsTest.cpp │ └── CMakeLists.txt ├── CMakeLists.txt ├── ChineseNumbers/ │ ├── CMakeLists.txt │ ├── ChineseNumbers.cpp │ ├── ChineseNumbers.h │ ├── ChineseNumbersTest.cpp │ ├── StringUtils.cpp │ ├── StringUtils.h │ ├── SuzhouNumbers.cpp │ ├── SuzhouNumbers.h │ └── SuzhouNumbersTest.cpp ├── DictionaryService.cpp ├── DictionaryService.h ├── Engine/ │ ├── AssociatedPhrasesV2.cpp │ ├── AssociatedPhrasesV2.h │ ├── AssociatedPhrasesV2Test.cpp │ ├── ByteBlockBackedDictionary.cpp │ ├── ByteBlockBackedDictionary.h │ ├── ByteBlockBackedDictionaryBenchmark.cpp │ ├── ByteBlockBackedDictionaryTest.cpp │ ├── CMakeLists.txt │ ├── Mandarin/ │ │ ├── CMakeLists.txt │ │ ├── Mandarin.cpp │ │ ├── Mandarin.h │ │ └── MandarinTest.cpp │ ├── McBopomofoLM.cpp │ ├── McBopomofoLM.h │ ├── McBopomofoLMTest.cpp │ ├── MemoryMappedFile.cpp │ ├── MemoryMappedFile.h │ ├── MemoryMappedFileTest.cpp │ ├── ParselessLM.cpp │ ├── ParselessLM.h │ ├── ParselessLMBenchmark.cpp │ ├── ParselessLMTest.cpp │ ├── ParselessPhraseDB.cpp │ ├── ParselessPhraseDB.h │ ├── ParselessPhraseDBTest.cpp │ ├── PhraseReplacementMap.cpp │ ├── PhraseReplacementMap.h │ ├── PhraseReplacementMapTest.cpp │ ├── UTF8Helper.cpp │ ├── UTF8Helper.h │ ├── UTF8HelperTest.cpp │ ├── UserOverrideModel.cpp │ ├── UserOverrideModel.h │ ├── UserOverrideModelTest.cpp │ ├── UserPhrasesLM.cpp │ ├── UserPhrasesLM.h │ ├── UserPhrasesLMTest.cpp │ ├── VariantAnnotator.cpp │ ├── VariantAnnotator.h │ ├── VariantAnnotatorTest.cpp │ └── gramambular2/ │ ├── .clang-format │ ├── CMakeLists.txt │ ├── README.md │ ├── language_model.h │ ├── reading_grid.cpp │ ├── reading_grid.h │ └── reading_grid_test.cpp ├── Format.h ├── InputMacro.cpp ├── InputMacro.h ├── InputMode.h ├── InputState.cpp ├── InputState.h ├── Key.h ├── KeyHandler.cpp ├── KeyHandler.h ├── KeyHandlerTest.cpp ├── LanguageModelLoader.cpp ├── LanguageModelLoader.h ├── Log.cpp ├── Log.h ├── McBopomofo.cpp ├── McBopomofo.h ├── NumberInputHelper.cpp ├── NumberInputHelper.h ├── PathCompat.h ├── RomanNumbers/ │ ├── CMakeLists.txt │ ├── RomanNumbers.cpp │ ├── RomanNumbers.h │ └── RomanNumbersTest.cpp ├── TimestampedPath.cpp ├── TimestampedPath.h ├── TimestampedPathTest.cpp ├── mcbopomofo-addon.conf.in.in ├── mcbopomofo-plain.conf.in.in └── mcbopomofo.conf.in.in