spiegel-keyman/linux/mcompile/keymap
2024-02-20 17:16:31 +01:00
..
deadkey.cpp feat(linux): mcompile-dk edit comments 2024-02-20 17:16:31 +01:00
deadkey.h feat(linux): mcompile-dk edit comments 2024-02-20 17:16:31 +01:00
filesystem.cpp feat(linux): mcompile unchanged files 2023-11-07 12:59:15 +01:00
filesystem.h feat(linux): mcompile-dk edit comments 2024-02-20 17:16:31 +01:00
keymap.cpp feat(linux): mcompile-dk edit comments 2024-02-20 17:16:31 +01:00
keymap.h feat(linux): mcompile-dk edit comments 2024-02-20 17:16:31 +01:00
km_types.h feat(linux): mcompile-dk remove helpers.cpp/h 2024-02-15 12:09:47 +01:00
kmx_file.h feat(linux): mcompile minor changes2 2023-12-13 20:04:35 +01:00
mc_import_rules.cpp feat(linux): mcompile-dk edit comments 2024-02-20 17:16:31 +01:00
mc_import_rules.h feat(linux): mcompile-dk edit comments 2024-02-20 17:16:31 +01:00
mc_kmxfile.cpp feat(linux): mcompile-dk remove mc_savekeyboard 2024-02-15 12:37:33 +01:00
mc_kmxfile.h feat(linux): mcompile-dk remove mc_savekeyboard 2024-02-15 12:37:33 +01:00
mcompile.cpp feat(linux): mcompile-dk edit comments 2024-02-20 17:16:31 +01:00
mcompile.h feat(linux): mcompile-dk edit comments 2024-02-20 17:16:31 +01:00
meson.build feat(linux): mcompile-dk remove mc_savekeyboard 2024-02-15 12:37:33 +01:00
README.md feat(linux): mcompile-dk edit comments 2024-02-20 17:16:31 +01:00
u16.cpp feat(linux): mcompile unchanged files 2023-11-07 12:59:15 +01:00
u16.h feat(linux): mcompile unchanged files 2023-11-07 12:59:15 +01:00

This is a proposal to rewrite mcompile for Linux. For this we need to query the base keyboard data from the Linux platform, then rewriting the keyboard .kmx using the same approach as is done in mcompile for Windows, but working from the data from the x11 keyboard on Linux.

Ideally, we'd rewrite mcompile to be cross-platform (Windows, Linux, macOS), so that the keyboard interrogation would be separated from the .kmx rewriting, at least to some degree. Nevertheless it would probably be easiest to start from a standalone implementation. Sample program that reads US basic keyboard and compares to key value group

Keymap

_S2 TODO QUESTION check if US basic is the right Keyboard to compare with _S2 TODO check if I can use files from some other keyman path instead of a copy here ( e.g. filesystem.h exists elsewhere); where can I use incxstr from _S2 TODO Do I need HKL for Linux / can I just use a void* or remove HKL ??, typeddef of KMX_HKL - can I delete all m_hkl from classes? _S2 TODO Check/find use of wchar_t/wstring and replace with char16_t/u16string _S2 TODO check call by reference/value _S2 TODO replace GDK _S2 TODO what is wrong with kp->dpBitmapOffset/BitmapSize ? _s2 INFO idee spanish keyboard has dk on altgr !!

_S2 ...

./mcompile -d /Projects/keyman/keyman/linux/mcompile/keymap/mcompile_test.kmx bla.dll 0407 /Projects/keyman/keyman/linux/mcompile/keymap/mcompile_test_out.kmx

./mcompile -d /home/mcompileTest/Source/mcompile_test.kmx bla.dll 0407 /home/mcompileTest/Source_after_run_mcompile/mcompile_test_out.kmx