keymanapp / keyman

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

bug(developer): kmc-package needs to translate backslashes to slashes for cross-platform (`common/test/keyboards/build.sh` fails on Linux) #10027

Closed ermshiperete closed 11 months ago

ermshiperete commented 11 months ago

When I try to compile the test keyboards with common/test/keyboards/build.sh --index on Linux, the build fails with:

...
k_046___deadkey_and_contextex.kmn - info KM05006: baseline/k_046___deadkey_and_contextex.kmn built successfully.
k_047___caps_always_off_initially_on.kmn - info KM05002: Building baseline/k_047___caps_always_off_initially_on.kmn
k_047___caps_always_off_initially_on.kmn - info KM05006: baseline/k_047___caps_always_off_initially_on.kmn built successfully.
k_048___modifier_keys_keep_context.kmn - info KM05002: Building baseline/k_048___modifier_keys_keep_context.kmn
k_048___modifier_keys_keep_context.kmn - info KM05006: baseline/k_048___modifier_keys_keep_context.kmn built successfully.
baseline.kpj - info KM0500B: Project baseline/baseline.kpj built successfully.

caps_lock_layer_3620.kpj - info KM05002: Building caps_lock_layer_3620/caps_lock_layer_3620.kpj
caps_lock_layer_3620.kmn - info KM05002: Building caps_lock_layer_3620/source/caps_lock_layer_3620.kmn
caps_lock_layer_3620.kmn - info KM05006: caps_lock_layer_3620/source/caps_lock_layer_3620.kmn built successfully.
caps_lock_layer_3620.kps - info KM05002: Building caps_lock_layer_3620/source/caps_lock_layer_3620.kps
caps_lock_layer_3620.kps - error KM04008: Keyboard caps_lock_layer_3620 was listed in <Keyboards> but a corresponding .kmx file was not found in <Files>
caps_lock_layer_3620.kps - info KM05007: caps_lock_layer_3620/source/caps_lock_layer_3620.kps failed to build.
caps_lock_layer_3620.kpj - info KM0500C: Project caps_lock_layer_3620/caps_lock_layer_3620.kpj failed to build.
[common/test/keyboards] ## build failed

master branch, commit cb1b995d62194b9a9ccca1df2434785fa7e3aa7b

ermshiperete commented 11 months ago

The reason it fails are the Windows path separators (\) in the .kps and .kpj files.

mcdurdin commented 11 months ago

This is a bug in kmc then, needs resolution before beta.