On both my local implementation of KeymanWeb 11.0.224 and online on KeymanWeb > Chinese, Mandarin, the Chinese character suggestions don’t show up. Instead on each keystroke an error is logged:
Uncaught TypeError: KeymanWeb.ShowPinnedHelp is not a function
at Keyboard_chinese.show (chinese-1.0.js:formatted:136)
at Keyboard_chinese.showCandidates (chinese-1.0.js:formatted:309)
Interestingly when I press PgDn, the suggestions show up. I could hack a workaround which adds PgDn+PgUp keystrokes after the user’s every character, but this bug is probably just a simple typo?
BTW, where is the proper GitHub repo to post this issue on, if not here?
Welcome Jacob. That’s a really old keyboard, and it does not look like we have the original source for it.
However, you can create an issue here [https://github.com/keymanapp/keyboards/issues] and, we’ll look into it.
Yes, it is a really old keyboard, but I think we do have source (currently in a private keyman-keyboards-internal repo, Chinese-Japanese-Korean KMW folder, not in the public repo). See also https://github.com/keymanapp/keyboards/pull/64 for a Windows equivalent which also needs work.
A few notes:
It depends on a database backend which is still running on legacy infrastructure.
It’s not written in .kmn; it’s written directly in JavaScript.
The source that we do have would take some time to organise and publish; it’s not well organised and needs careful preparation.
I think the bug arises because the KeymanWeb API shifted and we missed this keyboard in testing (@jahorton – ShowPinnedHelpdoes not seem to be implemented now?)
The source also includes Japanese, Korean and Chinese (Traditional) input methods, not all of which have been published.
Great article! The feedback on gaps in the documentation is appreciated (you can also add issues for documentation or even submit pull requests at keymanapp/help.keyman.com). I’ll get the rest of the Keyman team to read it too; they may have ideas for you.
FWIW: I was curious about the scaling issues you noted with Stackblitz. The issues seem to be because the images, fonts and CSS are not being handled correctly; .scss has the wrong mime type (text/plain) so it is being ignored; keymanweb-osk.ttf may have the wrong URL; it is downloading JavaScript instead of the font resource; some images have 403 or mime type issues.
I especially appreciate the documentation link as the number of different keyman related repos is a little hard to sort through at first. As I learn more about the engine and my thoughts coalesce, I think I’ll try submitting improvements through pull requests.
This is the second time I’ve tried to pull a big tool that is not an Angular-friendly NPM package into my project, and both times it’s been a bit of a struggle. So yes, there is definitely room for improvement on how I’m handling the images, fonts, and CSS (and I have much to learn). This was just the first configuration that I could get to actually work.
I’ll share a link to our production app later on when my keyboard addition reaches the surface.
Understood. NPM is on our roadmap … but it’s not a small project and we definitely have a lot of room for improvement ourselves. For example, the CSS in KeymanWeb is ancient and desperately needs rewriting (preferably in .scss).
I look forward to seeing the production app in the future!
Thanks for the clear and detailed bug report I may have a crack at some of these on my return to Australia in a few days; the mobile support is probably a bigger thing because they’ve never been supported on mobile, but the other issues are certainly easily fixable.