keymanapp / keyman

Keyman cross platform input methods system running on Android, iOS, Linux, macOS, Windows and mobile and desktop web
https://keyman.com/
Other
398 stars 112 forks source link

bug(web): `keyman.init({root:path})` does not set `options.resources`, `options.keyboards`, or `options.fonts` as described in documentation #11476

Open mcdurdin opened 6 months ago

mcdurdin commented 6 months ago

If you call keyman.init({root: path}), the documentation says that options.resources, options.keyboards, and options.fonts properties will be set relative to the passed-in root.

However, instead these values are set to an empty string, or for options.resources, to the script's src path (which is empty string when #11475 is encountered).

KeymanWeb 16.0.147.

As a temporary workaround, I suggested the following to the user encountering this issue:

keyman.init({
  attachType: 'auto',
  root: 'https://s.keyman.com/kmw/engine/16.0.147/',
  resources: 'https://s.keyman.com/kmw/engine/16.0.147/',
  keyboards: 'https://s.keyman.com/keyboard/',
  fonts: 'https://s.keyman.com/font/'
});
ermshiperete commented 4 months ago

Moving this to the web bug fixes sprint since I didn't get to this in the assigned sprints. @mcdurdin