How to close and turn off Keymanweb keyboard?

In Keymanweb, after select a language keyboard, you can close the keyboard by clicking “x” on the right top corner of keyboard, and turn off the keyboard by clicking “off” button on the right of “Language” selection.

I try to test if other keyboards can work with the same browser with keymanweb keyboard, I test to use BC Sans general keyboard to type the text in the textarea of KeymanWeb, and notice that it will not work properly to type combined or composed character unless turn off keymanweb keyboard.

I am using the Multi-Language example (source code)

  • How to add keyboard close and turn off Keymanweb keyboard in it?
  • any sample code to refer?

“Toolbar” interface seems have all the required functions,
How to add “Toolbar” interface in above sample code?
How to only display a list of specified languages while click “Languages”? rather to display all languages?

The setActiveKeyboard() function is what you need. You may also like to review setKeyboardForControl() in the same API reference.

Here is one example of how to use setActiveKeyboard(): Manual Control - Custom Interface

The toolbar interface is documented here: User Interface Design

Hi Marc, thanks for the reply and advise.
I try to add Kwak’wala U’mista in the following steps:

  • right click fv_kwakwala and download fv_kwakwala-9.2.js in js folder
  • rename fv_kwakwala-9.2.js to kwakwala.js
  • add below in function loadKeyboards() of unified_loader.js
    “kwakwala”:{KN:“Kwakwala”, KLC:“kwk”, KL:“Kwakwala”}

run the code and select “Kwakwala” from the list, and get the error
error registering the Kwakwala keyboard for Kwakwala; keyboard script at ./js/kwakwala.js ,ay contain an error.

anything missing, do i need to load js for kwakwala? link laokeys_load.js?

Thanks
Feng Qi

Can you open the developer console and look for error reports there? There should be more detail about what is wrong.

Hi Marc,
kwakwala.js has this.KI=“Keyboard_fv_kwakwala” and this.KN=“Kwak̕wala”
I have done the following:

  • rename kwakwala.js to fv_kwakwala.js
  • change the line as below in function loadKeyboards() of unified_loader.js
    fv_kwakwala: { KN: “Kwak̕wala”, KLC: “kwk”, KL: “Kwakwala”}
    run the code and select “Kwakwala” from the list, the keyboard displays but it is different from keymanweb or installed windows keyboard. I have uploaded the screenshot for it.
    anything else is required?

Thanks
Feng Qi


OK, the issue here is just the encoding for the keyboard is incorrect, because your browser is not selecting the correct UTF-8 encoding for local javascript files (as you are running from file://).

If you were running the website from a server (http:// / https://), you would adjust the server headers. This is the best solution.

However, as you are currently running your web page from your local filesystem, you can add a script element for the keyboard, with the charset="UTF-8" attribute, between the <script src="keymanweb.js"> script and the keyman.init() script:

<script src="js/fv_kwakwala.js" charset="UTF-8"></script>

Note that running from filesystem has other browser-imposed security limitations (more details here), so running a local http server would be advisable to get more consistent results.

Hi Marc, it works, appreciate for your help!

1 Like