mirror of
https://github.com/keymanapp/keyman.git
synced 2026-09-24 00:27:40 +00:00
Keyman cross platform input methods system running on Android, iOS, Linux, macOS, Windows and mobile and desktop web
Fixes #7005. If a developer used single digit values in stores, unquoted (which is not really the usual approach, but should work just fine for non-zero values), the KMW compiler would emit invalid single-digit hexadecimal escapes for them, e.g. `"\x1"` instead of `"\x01"`. Sample code: ``` store(option) 1 if(option = 1) + 'a' > 'one' if(option = 2) + 'a' > 'two' + '1' > set(option = 1) + '2' > set(option = 2) ``` It is not immediately obvious from this code, but the value `1` is actually a character with value `'\x01'` or `U+0001`! The more usual approach will not encounter this problem: ``` store(option) '1' if(option = '1') + 'a' > 'one' if(option = '2') + 'a' > 'two' + '1' > set(option = '1') + '2' > set(option = '2') ``` Note that the following is a compile error (due to internal use of null terminated strings). ``` store(option) 0 ``` |
||
|---|---|---|
| .github | ||
| android | ||
| common | ||
| core | ||
| developer | ||
| docs | ||
| ios | ||
| linux | ||
| mac | ||
| oem/firstvoices | ||
| resources | ||
| web | ||
| windows | ||
| .clang-format | ||
| .editorconfig | ||
| .flake8 | ||
| .gitignore | ||
| CODE_OF_CONDUCT.md | ||
| configure-repo.sh | ||
| CONTRIBUTING.md | ||
| crowdin.yml | ||
| HISTORY.md | ||
| LICENSE.md | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
| TIER.md | ||
| tsconfig-base.json | ||
| tsconfig.json | ||
| VERSION.md | ||
Keyman makes it possible for you to type in any language on Windows, macOS, Linux, iPhone, iPad, Android tablets and phones, and even instantly in your web browser. Create keyboard layouts with Keyman Developer and share them with the community in the keyboards repository. The Keyman Community have already contributed keyboard layouts for over 2,000 languages!
License
Copyright (c) SIL International.
Keyman is an open source project distributed under the MIT license.
