diff --git a/developer/20.0/context/keyboard-editor.md b/developer/20.0/context/keyboard-editor.md index 433cce5c4..033ec86c4 100644 --- a/developer/20.0/context/keyboard-editor.md +++ b/developer/20.0/context/keyboard-editor.md @@ -99,23 +99,25 @@ Features ## Layout tab +### Design view + +> Path: KMN → Layout tab → Design view (default) + Keyboard Editor - Layout tab, Design view The Layout tab gives you a simple interface to quickly create a keyboard -using a visual representation of a desktop/laptop computer keyboard. You +using a visual representation of a **desktop/laptop keyboard**. You can drag and drop characters from the character map to create keyboard -layouts. You cannot access most of Keyman's more powerful features from -the Layout Design view, but it will be useful to get you started on your -design. +layouts. Each key can have zero or more characters assigned to it. Each key can be assigned a different set of characters for each shift state. You can -change the shift state by clicking on the Shift, Ctrl, and Alt keys. +change the shift state by clicking on the Shift, Ctrl, and Alt keys. There are two ways to assign characters to the keys: - Click on a key, and then type the character's code into the Unicode - Character Value(s) field, or the type/paste the character itself + Character Value(s) field, or type/paste the character itself into the Output character(s) field. - Select the character from the Character Map and drag and drop it onto the appropriate key. This will set the key to output that @@ -130,7 +132,7 @@ There are two ways to assign characters to the keys: Distinguish between left and right Ctrl/Alt : A Keyman keyboard can treat left and right Ctrl and Alt identically, or it can distinguish between them. The Design view allows one or - the other mode (in Code view, you can use both interchangeably). + the other mode (in [Code view](#toc-code-view), you can use both interchangeably). Display 102nd Key (as on European keyboards) : European keyboards have one extra key that is not on US keyboards. @@ -143,8 +145,16 @@ Display 102nd Key (as on European keyboards) the backslash key will move down one row, but not otherwise change in behaviour. -You can press and release Ctrl to select -another key on the keyboard using your keyboard. +> [!TIP] +> You can press and release Ctrl to select another key on the keyboard using your keyboard. + +You cannot access most of Keyman's more powerful features from +the Layout Design view, but it will be useful to get you started on your +design. + +### Code view + +> Path: KMN → Layout tab → Code view Keyboard Editor - Layout tab, Code view @@ -156,6 +166,9 @@ the Code view. See the [Editor topic](editor) for more information on how to use the editor shown within this view. +> [!NOTE] +> Remember that any newly assigned keys from the layout tab won't be automatically added to the On-Screen keyboard except when you press the 'Fill from layout' button (See [On-screen](#toc-on-screen-tab) below). + ## On-Screen tab Keyboard Editor - On-Screen tab @@ -183,6 +196,9 @@ Fill from layout pre-populate the On-Screen Keyboard and reduces the complexity of designing it from scratch. +> [!CAUTION] +> The changes from the [Layout tab](#toc-layout-tab) will only apply to the On-Screen Keyboard once you use the 'Fill from layout'. + Import : Imports an On-Screen Keyboard from an XML file. diff --git a/developer/20.0/images/ui/frmKeymanWizard_Layout_Code.png b/developer/20.0/images/ui/frmKeymanWizard_Layout_Code.png index 2fbe3991e..6d9055239 100644 Binary files a/developer/20.0/images/ui/frmKeymanWizard_Layout_Code.png and b/developer/20.0/images/ui/frmKeymanWizard_Layout_Code.png differ diff --git a/developer/20.0/images/ui/frmKeymanWizard_Layout_Design.png b/developer/20.0/images/ui/frmKeymanWizard_Layout_Design.png index 5d3b57055..909a7d368 100644 Binary files a/developer/20.0/images/ui/frmKeymanWizard_Layout_Design.png and b/developer/20.0/images/ui/frmKeymanWizard_Layout_Design.png differ diff --git a/developer/20.0/reference/messages/km020bf.md b/developer/20.0/reference/messages/km020bf.md new file mode 100644 index 000000000..6e9023f93 --- /dev/null +++ b/developer/20.0/reference/messages/km020bf.md @@ -0,0 +1,19 @@ +--- +title: KM020BF: WARN_CallUsedOnUnsupportedPlatform +--- + +| | | +|------------|---------- | +| Message | The \`call\(\)\` statement is not supported on macOS or Linux platforms\. | +| Module | [kmc-kmn.KmnCompilerMessages](kmc-kmn.kmncompilermessages) | +| Identifier | `WARN_CallUsedOnUnsupportedPlatform` | + + +The `call()` statement is supported on Windows and web-based platforms, +including mobile and tablet. The target platforms can be specified in +the `&targets` system store; avoid the use of generic platforms such as +`'any'` or `'desktop'`. Note that the implementation of your call +target will differ across platforms; see +[`call()` statement](https://help.keyman.com/developer/language/reference/call) +in the documentation for more details. + diff --git a/developer/20.0/reference/messages/km05009.md b/developer/20.0/reference/messages/km05009.md index 1874676a9..0d0736b98 100644 --- a/developer/20.0/reference/messages/km05009.md +++ b/developer/20.0/reference/messages/km05009.md @@ -1,11 +1,11 @@ --- -title: KM05009: HINT_FilenameHasDifferingCase +title: KM05009: WARN_FilenameHasDifferingCase --- | | | |------------|---------- | | Message | File on disk '<param>' does not match case of '<param>' in source file; this is an error on platforms with case\-sensitive filesystems\. | | Module | [kmc.InfrastructureMessages](kmc.infrastructuremessages) | -| Identifier | `HINT_FilenameHasDifferingCase` | +| Identifier | `WARN_FilenameHasDifferingCase` | diff --git a/developer/20.0/reference/messages/kmc-kmn.kmncompilermessages.md b/developer/20.0/reference/messages/kmc-kmn.kmncompilermessages.md index 125071688..55d552e21 100644 --- a/developer/20.0/reference/messages/kmc-kmn.kmncompilermessages.md +++ b/developer/20.0/reference/messages/kmc-kmn.kmncompilermessages.md @@ -166,6 +166,7 @@ title: Compiler Messages Reference for @keymanapp/kmc-kmn [KM020BC](km020bc) | `WARN_DeprecatedValueFormat` | The decimal \(d\#\#\#\), octal \(\#\#\#\), and hexadecimal \(x\#\#\#\) value formats were deprecated in Keyman 19 and are scheduled to be removed in Keyman 20\. [KM020BD](km020bd) | `WARN_DeprecatedCompileTarget` | Compile target '<param>' was deprecated in Keyman 19 and will cause the line to always be ignored by kmc in Keyman 20\. [KM020BE](km020be) | `ERROR_StoreContainsUnsupportedStatement` | A store can contain only characters, deadkeys, virtual keys, and 'outs\(\)' statements\. +[KM020BF](km020bf) | `WARN_CallUsedOnUnsupportedPlatform` | The \`call\(\)\` statement is not supported on macOS or Linux platforms\. [KM020C0](km020c0) | `FATAL_BufferOverflow` | The compiler memory buffer overflowed [KM02900](km02900) | `FATAL_UnexpectedException` | This is an internal error; the message will vary [KM02901](km02901) | `FATAL_MissingWasmModule` | This is an internal error; the message will vary diff --git a/developer/20.0/reference/messages/kmc.infrastructuremessages.md b/developer/20.0/reference/messages/kmc.infrastructuremessages.md index f2afc1268..d4122177a 100644 --- a/developer/20.0/reference/messages/kmc.infrastructuremessages.md +++ b/developer/20.0/reference/messages/kmc.infrastructuremessages.md @@ -11,7 +11,7 @@ title: Compiler Messages Reference for @keymanapp/kmc [KM05005](km05005) | `ERROR_OutFileNotValidForProjects` | \-\-out\-file should not be specified for project builds [KM05006](km05006) | `INFO_FileBuiltSuccessfully` | <param> built successfully\. [KM05007](km05007) | `INFO_FileNotBuiltSuccessfully` | <param> failed to build\. -[KM05009](km05009) | `HINT_FilenameHasDifferingCase` | File on disk '<param>' does not match case of '<param>' in source file; this is an error on platforms with case\-sensitive filesystems\. +[KM05009](km05009) | `WARN_FilenameHasDifferingCase` | File on disk '<param>' does not match case of '<param>' in source file; this is an error on platforms with case\-sensitive filesystems\. [KM0500A](km0500a) | `ERROR_UnknownFileFormat` | Unknown file format <param>; only Markdown \(\.md\), JSON \(\.json\), and Text \(\.txt\) are supported\. [KM0500B](km0500b) | `INFO_ProjectBuiltSuccessfully` | Project <param> built successfully\. [KM0500C](km0500c) | `INFO_ProjectNotBuiltSuccessfully` | Project <param> failed to build\.