I have kmn file which compile perfectly on earlier TIKE 17. But after update to TIKE 17.0.185 I can’t compile any keyboard which is created on TIKE 15 or 16.
When ever i try to compile i got a instant crash at Desktop.
App : TIKE 17.0.199
OS : Win10
Crash Report:
Details for error report for Keyman app:
Application Identifier: tike-17.0.199-alpha
Error Identifier: 97DC7C62378947C7B7869E136EAFF8A2
I’m not sure what the issue was. I couldn’t compile it either. I tried changing the encoding and line endings, but it still crashed. I ended up creating a new .kmn file and then copied your rules in. Then it compiled.
The new format for Keyman packages is to require a .kpj file in the root. Then all the other source files go in source.
Your .kps needs to use a language tag for whatever language this is for or else it will not work on android.
Also, the .kps file called for a readme.htm and welcome.htm. Since those weren’t in your zip I had to remove those to get the package to compile. You’ll need to add those back in.
I also saw Keyman Developer crash. I reduced the .kmn file to:
store(&VERSION) '10.0'
store(&TARGETS) 'windows'
begin Unicode > use(main)
group(main) using keys
and Developer still crashed when trying to compile.
I put the files from your .zip file into a “source” folder, then put that under a folder named “kab_unicode_inscript”. Then using Developer’s Project, New Project, Blank I created an empty project, saved it to the “kab_unicode_inscript” folder as “kab_unicode_inscript.kpj”, then added the .kmn and .kps files using the “Add existing keyboard” and “Add existing package” buttons. (This is likely similar to what Lorna did to provide the .zip file, but I’m documenting this in case anyone else comes here looking for a solution.) There are compile errors in the touch layout, but Developer doesn’t crash.
@Marc will need to comment on what changes are needed to Developer to handle this situation more gracefully!
Did you have a project file (.kpj)?
I got a crash from Keyman Developer 17.0.200
if outfile <> '' then
cmdline := cmdline + Format(' --out-file "%s"', [outfile]);
if ProjectFile.Project.Options.CompilerWarningsAsErrors then
cmdline := cmdline + ' --compiler-warnings-as-errors'
else
cmdline := cmdline + ' --no-compiler-warnings-as-errors';
It’s possible the Options are invalid (ProjectFile.Project.Options.CompilerWarningsAsErrors), which would cause a crash. If I made a new project file, it seemed to compile fine.