From a94a1a9c4ae13e26efc3af5c0dfbffd7009fbfbd Mon Sep 17 00:00:00 2001 From: Keyman Build Server Date: Tue, 27 Oct 2026 13:20:07 -0500 Subject: [PATCH] auto: Keyman for windows help deployment --- .../19.0/api/IKeymanKeyboardFile/Install.md | 4 ++ .../19.0/api/IKeymanKeyboardFile/index.md | 4 +- .../19.0/api/IKeymanKeyboardFile2/Install2.md | 4 ++ .../19.0/api/IKeymanKeyboardFile2/index.md | 12 +++-- .../19.0/api/IKeymanKeyboardFile3/Install3.md | 43 ++++++++++++++++ .../19.0/api/IKeymanKeyboardFile3/index.md | 33 ++++++++++++ .../api/IKeymanKeyboardInstalled/index.md | 12 +++-- .../MCompileForBaseKeyboard.md | 22 ++++++++ .../api/IKeymanKeyboardInstalled2/index.md | 31 ++++++++++++ .../api/IKeymanKeyboardsInstalled/Install.md | 4 ++ .../api/IKeymanKeyboardsInstalled/index.md | 14 +++--- .../IKeymanKeyboardsInstalled2/Install2.md | 4 ++ .../api/IKeymanKeyboardsInstalled2/index.md | 14 +++--- .../IKeymanKeyboardsInstalled3/Install3.md | 48 ++++++++++++++++++ .../api/IKeymanKeyboardsInstalled3/index.md | 35 +++++++++++++ .../19.0/api/IKeymanPackageFile/Install.md | 8 +++ .../19.0/api/IKeymanPackageFile/index.md | 12 +++-- .../19.0/api/IKeymanPackageFile2/Install2.md | 8 +++ .../19.0/api/IKeymanPackageFile2/index.md | 12 +++-- .../19.0/api/IKeymanPackageFile3/Install3.md | 42 ++++++++++++++++ .../19.0/api/IKeymanPackageFile3/index.md | 33 ++++++++++++ .../api/IKeymanPackagesInstalled/Install.md | 8 +++ .../api/IKeymanPackagesInstalled/index.md | 4 +- .../api/IKeymanPackagesInstalled2/Install2.md | 8 +++ .../api/IKeymanPackagesInstalled2/index.md | 12 +++-- .../api/IKeymanPackagesInstalled3/Install3.md | 50 +++++++++++++++++++ .../api/IKeymanPackagesInstalled3/index.md | 33 ++++++++++++ developer/engine/windows/19.0/api/index.md | 7 ++- 28 files changed, 480 insertions(+), 41 deletions(-) create mode 100644 developer/engine/windows/19.0/api/IKeymanKeyboardFile3/Install3.md create mode 100644 developer/engine/windows/19.0/api/IKeymanKeyboardFile3/index.md create mode 100644 developer/engine/windows/19.0/api/IKeymanKeyboardInstalled2/MCompileForBaseKeyboard.md create mode 100644 developer/engine/windows/19.0/api/IKeymanKeyboardInstalled2/index.md create mode 100644 developer/engine/windows/19.0/api/IKeymanKeyboardsInstalled3/Install3.md create mode 100644 developer/engine/windows/19.0/api/IKeymanKeyboardsInstalled3/index.md create mode 100644 developer/engine/windows/19.0/api/IKeymanPackageFile3/Install3.md create mode 100644 developer/engine/windows/19.0/api/IKeymanPackageFile3/index.md create mode 100644 developer/engine/windows/19.0/api/IKeymanPackagesInstalled3/Install3.md create mode 100644 developer/engine/windows/19.0/api/IKeymanPackagesInstalled3/index.md diff --git a/developer/engine/windows/19.0/api/IKeymanKeyboardFile/Install.md b/developer/engine/windows/19.0/api/IKeymanKeyboardFile/Install.md index bd66a121e..c4fa8329d 100644 --- a/developer/engine/windows/19.0/api/IKeymanKeyboardFile/Install.md +++ b/developer/engine/windows/19.0/api/IKeymanKeyboardFile/Install.md @@ -45,3 +45,7 @@ void Install(bool Force) [`IKeymanKeyboardFile2::Install2`](../IKeymanKeyboardFile2/Install2) : Installs a keyboard file, optionally with input method for default language + +[`IKeymanKeyboardFile3::Install3()`](../IKeymanKeyboardFile3/Install3) +: Installs the keyboard file and compiles its layout against the + specified base keyboard. diff --git a/developer/engine/windows/19.0/api/IKeymanKeyboardFile/index.md b/developer/engine/windows/19.0/api/IKeymanKeyboardFile/index.md index dd62427b4..4f8e154bd 100644 --- a/developer/engine/windows/19.0/api/IKeymanKeyboardFile/index.md +++ b/developer/engine/windows/19.0/api/IKeymanKeyboardFile/index.md @@ -17,7 +17,9 @@ will not have been installed but can be any keyboard file on disk. > > > > > **`IKeymanKeyboardFile`** > > > -> > > > [`IKeymanKeyboardFile2`](../IKeymanKeyboardFile2) +> > > > [`IKeymanKeyboardFile2`](../IKeymanKeyboardFile2) +> > > > +> > > > [`IKeymanKeyboardFile3`](../IKeymanKeyboardFile3) ## Properties diff --git a/developer/engine/windows/19.0/api/IKeymanKeyboardFile2/Install2.md b/developer/engine/windows/19.0/api/IKeymanKeyboardFile2/Install2.md index 5af6979a7..e74fe1a27 100644 --- a/developer/engine/windows/19.0/api/IKeymanKeyboardFile2/Install2.md +++ b/developer/engine/windows/19.0/api/IKeymanKeyboardFile2/Install2.md @@ -48,3 +48,7 @@ void Install(bool Force, bool InstallDefaultLanguage) [`IKeymanKeyboardFile::Install`](../IKeymanKeyboardFile/Install) : Installs a keyboard file and input method for default language + +[`IKeymanKeyboardFile3::Install3()`](../IKeymanKeyboardFile3/Install3) +: Installs the keyboard file and compiles its layout against the + specified base keyboard. diff --git a/developer/engine/windows/19.0/api/IKeymanKeyboardFile2/index.md b/developer/engine/windows/19.0/api/IKeymanKeyboardFile2/index.md index fbbc57b3e..d45974727 100644 --- a/developer/engine/windows/19.0/api/IKeymanKeyboardFile2/index.md +++ b/developer/engine/windows/19.0/api/IKeymanKeyboardFile2/index.md @@ -9,15 +9,17 @@ will not have been installed but can be any keyboard file on disk. ## Interface Hierarchy -`IDispatch` +`IDispatch` -> [`IKeymanObject`](../IKeymanObject) +> [`IKeymanObject`](../IKeymanObject) > -> > [`IKeymanKeyboard`](../IKeymanKeyboard) +> > [`IKeymanKeyboard`](../IKeymanKeyboard) > > -> > > [`IKeymanKeyboardFile`](../IKeymanKeyboardFile) +> > > [`IKeymanKeyboardFile`](../IKeymanKeyboardFile) > > > -> > > > **`IKeymanKeyboardFile2`** +> > > > **`IKeymanKeyboardFile2`** +> > > > +> > > > [`IKeymanKeyboardFile3`](../IKeymanKeyboardFile3) ## Methods diff --git a/developer/engine/windows/19.0/api/IKeymanKeyboardFile3/Install3.md b/developer/engine/windows/19.0/api/IKeymanKeyboardFile3/Install3.md new file mode 100644 index 000000000..72983bbc6 --- /dev/null +++ b/developer/engine/windows/19.0/api/IKeymanKeyboardFile3/Install3.md @@ -0,0 +1,43 @@ +--- +title: IKeymanKeyboardFile3::Install3 Method +--- + +## Introduction + +The `IKeymanKeyboardFile3::Install3` method installs the keyboard file +(.kmx) into Keyman Engine for Windows. During installation, the keyboard +layout is compiled against the specified base keyboard. As installing +Windows input methods is an asynchronous process, this method may not be +complete when it returns. + +This method requires elevated privileges. + +## Specification + +``` clike +void Install3(bool Force, int BaseKeyboardID) +``` + +## Parameters + +`Force` +: If `True`, overwrites an existing keyboard entry. + +`BaseKeyboardID` +: The ID of the base keyboard to compile the keyboard layout against. + +## See also + +[`IKeymanKeyboardsInstalled::Install`](../IKeymanKeyboardsInstalled/Install) +: Installs a keyboard file and input method for default language + +[`IKeymanKeyboardsInstalled::Install2`](../IKeymanKeyboardsInstalled2/Install2) +: Installs a keyboard file, optionally with input method for default + language + +[`IKeymanKeyboardFile::Install`](../IKeymanKeyboardFile/Install) +: Installs a keyboard file and input method for default language + +[`IKeymanKeyboardFile2::Install2`](../IKeymanKeyboardFile2/Install2) +: Installs a keyboard file, optionally with input method for default + language diff --git a/developer/engine/windows/19.0/api/IKeymanKeyboardFile3/index.md b/developer/engine/windows/19.0/api/IKeymanKeyboardFile3/index.md new file mode 100644 index 000000000..69cd54cf0 --- /dev/null +++ b/developer/engine/windows/19.0/api/IKeymanKeyboardFile3/index.md @@ -0,0 +1,33 @@ +--- +title: IKeymanKeyboardFile3 Interface +--- + +## Introduction + +The `IKeymanKeyboardFile3` interface describes a keyboard file and adds an +installation method that compiles the keyboard layout against a specified +base keyboard. + +## Interface Hierarchy + +`IDispatch` + +> [`IKeymanObject`](../IKeymanObject) +> +> > [`IKeymanKeyboard`](../IKeymanKeyboard) +> > +> > > [`IKeymanKeyboardFile`](../IKeymanKeyboardFile) +> > > +> > > > [`IKeymanKeyboardFile2`](../IKeymanKeyboardFile2) +> > > > +> > > > **`IKeymanKeyboardFile3`** + +## Methods + +[`Install3()`](Install3) +: Installs the keyboard file and compiles its layout against the + specified base keyboard. + +## History + +Added in Keyman Engine for Windows 19.0. diff --git a/developer/engine/windows/19.0/api/IKeymanKeyboardInstalled/index.md b/developer/engine/windows/19.0/api/IKeymanKeyboardInstalled/index.md index 04fe7d283..23ebefa56 100644 --- a/developer/engine/windows/19.0/api/IKeymanKeyboardInstalled/index.md +++ b/developer/engine/windows/19.0/api/IKeymanKeyboardInstalled/index.md @@ -6,17 +6,19 @@ title: IKeymanKeyboardInstalled Interface The `IKeymanKeyboardInstalled` interface describes a keyboard file that has been installed and allows modification of [keyboard option -values](Options) for the keyboard file. +values](../IKeymanKeyboardInstalled/Options) for the keyboard file. ## Interface Hierarchy -`IDispatch` +`IDispatch` -> [`IKeymanObject`](../IKeymanObject) +> [`IKeymanObject`](../IKeymanObject) > -> > [`IKeymanKeyboard`](../IKeymanKeyboard) +> > [`IKeymanKeyboard`](../IKeymanKeyboard) > > -> > > **`IKeymanKeyboardInstalled`** +> > > **`IKeymanKeyboardInstalled`** +> > > +> > > [`IKeymanKeyboardInstalled2`](../IKeymanKeyboardInstalled2) ## Properties diff --git a/developer/engine/windows/19.0/api/IKeymanKeyboardInstalled2/MCompileForBaseKeyboard.md b/developer/engine/windows/19.0/api/IKeymanKeyboardInstalled2/MCompileForBaseKeyboard.md new file mode 100644 index 000000000..7add080a6 --- /dev/null +++ b/developer/engine/windows/19.0/api/IKeymanKeyboardInstalled2/MCompileForBaseKeyboard.md @@ -0,0 +1,22 @@ +--- +title: IKeymanKeyboardInstalled2::MCompileForBaseKeyboard Method +--- + +## Introduction + +The `IKeymanKeyboardInstalled2::MCompileForBaseKeyboard` method recompiles +an installed keyboard layout against the specified Windows base +keyboard layout. The base layout is identified by its Windows Keyboard +Layout ID (KLID). + +## Specification + +``` clike +void MCompileForBaseKeyboard(integer KLID) +``` + +## Parameters + +`KLID` +: The Windows Keyboard Layout ID of the base keyboard layout to compile + this keyboard against. diff --git a/developer/engine/windows/19.0/api/IKeymanKeyboardInstalled2/index.md b/developer/engine/windows/19.0/api/IKeymanKeyboardInstalled2/index.md new file mode 100644 index 000000000..1a108812c --- /dev/null +++ b/developer/engine/windows/19.0/api/IKeymanKeyboardInstalled2/index.md @@ -0,0 +1,31 @@ +--- +title: IKeymanKeyboardInstalled2 Interface +--- + +## Introduction + +The `IKeymanKeyboardInstalled2` interface describes a keyboard file that +has been installed and allows modification of [keyboard option +values](../IKeymanKeyboardInstalled/Options) for the keyboard file. + +## Interface Hierarchy + +`IDispatch` + +> [`IKeymanObject`](../IKeymanObject) +> +> > [`IKeymanKeyboard`](../IKeymanKeyboard) +> > +> > > [`IKeymanKeyboardInstalled`](../IKeymanKeyboardInstalled) +> > > +> > > > **`IKeymanKeyboardInstalled2`** + + +## Methods + +[`MCompileForBaseKeyboard()`](MCompileForBaseKeyboard) +: Recompiles the keyboard layout against the supplied base keyboard ID. + +## History + +Added in Keyman Engine for Windows 19.0. diff --git a/developer/engine/windows/19.0/api/IKeymanKeyboardsInstalled/Install.md b/developer/engine/windows/19.0/api/IKeymanKeyboardsInstalled/Install.md index 0f37733bf..554e1d209 100644 --- a/developer/engine/windows/19.0/api/IKeymanKeyboardsInstalled/Install.md +++ b/developer/engine/windows/19.0/api/IKeymanKeyboardsInstalled/Install.md @@ -42,3 +42,7 @@ void Install(string Filename, bool Force) [`IKeymanKeyboardFile2::Install2`](../IKeymanKeyboardFile2/Install2) : Installs a keyboard file, optionally with input method for default language + +[`IKeymanKeyboardsInstalled3::Install3()`](../IKeymanKeyboardsInstalled3/Install3) +: Installs the keyboard file and compiles its layout against the + specified base keyboard diff --git a/developer/engine/windows/19.0/api/IKeymanKeyboardsInstalled/index.md b/developer/engine/windows/19.0/api/IKeymanKeyboardsInstalled/index.md index 057cecc6a..6a257d12d 100644 --- a/developer/engine/windows/19.0/api/IKeymanKeyboardsInstalled/index.md +++ b/developer/engine/windows/19.0/api/IKeymanKeyboardsInstalled/index.md @@ -9,17 +9,19 @@ in Keyman Engine for Windows API. ## Interface Hierarchy -`IDispatch` +`IDispatch` -> [`IKeymanObject`](../IKeymanObject) +> [`IKeymanObject`](../IKeymanObject) > -> > [`IKeymanCollection`](../IKeymanCollection) +> > [`IKeymanCollection`](../IKeymanCollection) > > -> > > [`IKeymanKeyboards`](../IKeymanKeyboards) +> > > [`IKeymanKeyboards`](../IKeymanKeyboards) > > > -> > > > **`IKeymanKeyboardsInstalled`** +> > > > **`IKeymanKeyboardsInstalled`** > > > > -> > > > > [`IKeymanKeyboardsInstalled2`](../IKeymanKeyboardsInstalled2) +> > > > > [`IKeymanKeyboardsInstalled2`](../IKeymanKeyboardsInstalled2) +> > > > > +> > > > > [`IKeymanKeyboardsInstalled3`](../IKeymanKeyboardsInstalled3) ## Properties diff --git a/developer/engine/windows/19.0/api/IKeymanKeyboardsInstalled2/Install2.md b/developer/engine/windows/19.0/api/IKeymanKeyboardsInstalled2/Install2.md index 7402560be..9f2a0842c 100644 --- a/developer/engine/windows/19.0/api/IKeymanKeyboardsInstalled2/Install2.md +++ b/developer/engine/windows/19.0/api/IKeymanKeyboardsInstalled2/Install2.md @@ -46,3 +46,7 @@ void Install2(string Filename, bool Force, bool InstallDefaultLanguage) [`IKeymanKeyboardFile2::Install2`](../IKeymanKeyboardFile2/Install2) : Installs a keyboard file, optionally with input method for default language + +[`IKeymanKeyboardsInstalled3::Install3()`](../IKeymanKeyboardsInstalled3/Install3) +: Installs the keyboard file and compiles its layout against the + specified base keyboard diff --git a/developer/engine/windows/19.0/api/IKeymanKeyboardsInstalled2/index.md b/developer/engine/windows/19.0/api/IKeymanKeyboardsInstalled2/index.md index 164dd1245..d33ef68cd 100644 --- a/developer/engine/windows/19.0/api/IKeymanKeyboardsInstalled2/index.md +++ b/developer/engine/windows/19.0/api/IKeymanKeyboardsInstalled2/index.md @@ -9,17 +9,19 @@ for installing additional keyboards. ## Interface Hierarchy -`IDispatch` +`IDispatch` -> [`IKeymanObject`](../IKeymanObject) +> [`IKeymanObject`](../IKeymanObject) > -> > [`IKeymanCollection`](../IKeymanCollection) +> > [`IKeymanCollection`](../IKeymanCollection) > > -> > > [`IKeymanKeyboards`](../IKeymanKeyboards) +> > > [`IKeymanKeyboards`](../IKeymanKeyboards) > > > -> > > > [`IKeymanKeyboardsInstalled`](../IKeymanKeyboardsInstalled) +> > > > [`IKeymanKeyboardsInstalled`](../IKeymanKeyboardsInstalled) > > > > -> > > > > **`IKeymanKeyboardsInstalled2`** +> > > > > **`IKeymanKeyboardsInstalled2`** +> > > > > +> > > > > [`IKeymanKeyboardsInstalled3`](../IKeymanKeyboardsInstalled3) ## Methods diff --git a/developer/engine/windows/19.0/api/IKeymanKeyboardsInstalled3/Install3.md b/developer/engine/windows/19.0/api/IKeymanKeyboardsInstalled3/Install3.md new file mode 100644 index 000000000..4511d8bbd --- /dev/null +++ b/developer/engine/windows/19.0/api/IKeymanKeyboardsInstalled3/Install3.md @@ -0,0 +1,48 @@ +--- +title: IKeymanKeyboardsInstalled3::Install3 Method +--- + +## Introduction + +The `IKeymanKeyboardsInstalled3::Install3` method installs a keyboard +file (.kmx) into Keyman Engine for Windows. This includes copying the +file into the Keyman Engine keyboard store, adding registry settings, +and optionally installing the Windows input method. During installation, +the keyboard layout is compiled against the specified base keyboard. As +installing Windows input methods is an asynchronous process, this method +may not be complete when it returns. + +If the input method is installed, this method adds the keyboard to the +default language as specified in the +[`IKeymanKeyboard::DefaultBCP47Languages`](../IKeymanKeyboard/DefaultBCP47Languages) +property. + +This method requires elevated privileges. + +## Specification + +``` clike +void Install3(string Filename, bool Force, int BaseKeyboardID) +``` + +## Parameters + +`Filename` +: The fully-qualified path to the .kmx file to be installed. This file + will be copied to the Keyman keyboard store. + +`Force` +: If `True`, overwrites an existing keyboard entry. + +`BaseKeyboardID` +: The ID of the base keyboard to compile the keyboard layout against. + +## See also + +[`IKeymanKeyboardsInstalled2::Install2`](../IKeymanKeyboardsInstalled2/Install2) +: Installs a keyboard file, optionally with input method for default + language + +[`IKeymanKeyboardFile3::Install3`](../IKeymanKeyboardFile3/Install3) +: Installs a keyboard file and compiles its layout against a specified + base keyboard diff --git a/developer/engine/windows/19.0/api/IKeymanKeyboardsInstalled3/index.md b/developer/engine/windows/19.0/api/IKeymanKeyboardsInstalled3/index.md new file mode 100644 index 000000000..12b7e379b --- /dev/null +++ b/developer/engine/windows/19.0/api/IKeymanKeyboardsInstalled3/index.md @@ -0,0 +1,35 @@ +--- +title: IKeymanKeyboardsInstalled3 Interface +--- + +## Introduction + +The `IKeymanKeyboardsInstalled3` interface extends the installed keyboard +collection with a method to install a keyboard and compile its layout +against a specified base keyboard. + +## Interface Hierarchy + +`IDispatch` + +> [`IKeymanObject`](../IKeymanObject) +> +> > [`IKeymanCollection`](../IKeymanCollection) +> > +> > > [`IKeymanKeyboards`](../IKeymanKeyboards) +> > > +> > > > [`IKeymanKeyboardsInstalled`](../IKeymanKeyboardsInstalled) +> > > > +> > > > > [`IKeymanKeyboardsInstalled2`](../IKeymanKeyboardsInstalled2) +> > > > > +> > > > > **`IKeymanKeyboardsInstalled3`** + +## Methods + +[`Install3()`](Install3) +: Installs a keyboard file and compiles its layout against the + specified base keyboard. + +## History + +Added in Keyman Engine for Windows 19.0. diff --git a/developer/engine/windows/19.0/api/IKeymanPackageFile/Install.md b/developer/engine/windows/19.0/api/IKeymanPackageFile/Install.md index 5be76680c..50e6c87af 100644 --- a/developer/engine/windows/19.0/api/IKeymanPackageFile/Install.md +++ b/developer/engine/windows/19.0/api/IKeymanPackageFile/Install.md @@ -35,6 +35,14 @@ void Install(bool Force) : Installs a package file, optionally with input method for default language +[`IKeymanPackagesInstalled3::Install3`](../IKeymanPackagesInstalled3/Install3) +: Installs a package from a path and compiles its keyboard layouts + against a specified base keyboard + [`IKeymanPackageFile2::Install2`](../IKeymanPackageFile2/Install2) : Installs a package file, optionally with input method for default language + +[`IKeymanPackageFile3::Install3`](../IKeymanPackageFile3/Install3) +Installs a package file and compiles its keyboard layouts + against a specified base keyboard diff --git a/developer/engine/windows/19.0/api/IKeymanPackageFile/index.md b/developer/engine/windows/19.0/api/IKeymanPackageFile/index.md index 015d5803e..6f699b76f 100644 --- a/developer/engine/windows/19.0/api/IKeymanPackageFile/index.md +++ b/developer/engine/windows/19.0/api/IKeymanPackageFile/index.md @@ -11,15 +11,17 @@ simplify distribution of keyboard layouts. ## Interface Hierarchy -`IDispatch` +`IDispatch` -> [`IKeymanObject`](../IKeymanObject) +> [`IKeymanObject`](../IKeymanObject) > -> > [`IKeymanPackage`](../IKeymanPackage) +> > [`IKeymanPackage`](../IKeymanPackage) > > -> > > **`IKeymanPackageFile`** +> > > **`IKeymanPackageFile`** > > > -> > > > [`IKeymanPackageFile2`](../IKeymanPackageFile2) +> > > > [`IKeymanPackageFile2`](../IKeymanPackageFile2) +> > > > +> > > > [`IKeymanPackageFile3`](../IKeymanPackageFile3) ## Methods diff --git a/developer/engine/windows/19.0/api/IKeymanPackageFile2/Install2.md b/developer/engine/windows/19.0/api/IKeymanPackageFile2/Install2.md index 33437373e..6ac18cbd8 100644 --- a/developer/engine/windows/19.0/api/IKeymanPackageFile2/Install2.md +++ b/developer/engine/windows/19.0/api/IKeymanPackageFile2/Install2.md @@ -39,5 +39,13 @@ void Install(bool Force, bool InstallDefaultLanguage) : Installs a package file, optionally with input method for default language +[`IKeymanPackagesInstalled3::Install3`](../IKeymanPackagesInstalled3/Install3) +: Installs a package from a path and compiles its keyboard layouts + against a specified base keyboard + [`IKeymanPackageFile::Install`](../IKeymanPackageFile/Install) : Installs a package file and input method for default language + +[`IKeymanPackageFile3::Install3`](../IKeymanPackageFile3/Install3) +Installs a package file and compiles its keyboard layouts + against a specified base keyboard diff --git a/developer/engine/windows/19.0/api/IKeymanPackageFile2/index.md b/developer/engine/windows/19.0/api/IKeymanPackageFile2/index.md index 996232bd5..61e993fe6 100644 --- a/developer/engine/windows/19.0/api/IKeymanPackageFile2/index.md +++ b/developer/engine/windows/19.0/api/IKeymanPackageFile2/index.md @@ -11,15 +11,17 @@ simplify distribution of keyboard layouts. ## Interface Hierarchy -`IDispatch` +`IDispatch` -> [`IKeymanObject`](../IKeymanObject) +> [`IKeymanObject`](../IKeymanObject) > -> > [`IKeymanPackage`](../IKeymanPackage) +> > [`IKeymanPackage`](../IKeymanPackage) > > -> > > [`IKeymanPackageFile`](../IKeymanPackageFile) +> > > [`IKeymanPackageFile`](../IKeymanPackageFile) > > > -> > > > **`IKeymanPackageFile2`** +> > > > **`IKeymanPackageFile2`** +> > > > +> > > > [`IKeymanPackageFile3`](../IKeymanPackageFile3) ## Methods diff --git a/developer/engine/windows/19.0/api/IKeymanPackageFile3/Install3.md b/developer/engine/windows/19.0/api/IKeymanPackageFile3/Install3.md new file mode 100644 index 000000000..d31c5eeef --- /dev/null +++ b/developer/engine/windows/19.0/api/IKeymanPackageFile3/Install3.md @@ -0,0 +1,42 @@ +--- +title: IKeymanPackageFile3::Install3 Method +--- + +## Introduction + +The `IKeymanPackageFile3::Install3` method installs the package file +(.kmp) into Keyman Engine for Windows. This includes decompressing the +archive, copying its files into the Keyman Engine package store, adding +registry settings, installing fonts, and installing keyboard layouts. +During installation, keyboard layouts are compiled against the specified +base keyboard. + +Fonts are copied and installed into the Windows Fonts folder, if an +existing font with the same name is not already present. + +This method requires elevated privileges. + +## Specification + +``` clike +void Install3(bool Force, int BaseKeyboardID) +``` + +## Parameters + +`Force` +: If `True`, overwrites an existing package entry. + +`BaseKeyboardID` +: The ID of the base keyboard to compile the package's keyboard layouts + against. + +## See also + +[`IKeymanPackageFile2::Install2`](../IKeymanPackageFile2/Install2) +: Installs a package, optionally with input method for default + language + +[`IKeymanPackagesInstalled3::Install3`](../IKeymanPackagesInstalled3/Install3) +: Installs a package from a path and compiles its keyboard layouts + against a specified base keyboard diff --git a/developer/engine/windows/19.0/api/IKeymanPackageFile3/index.md b/developer/engine/windows/19.0/api/IKeymanPackageFile3/index.md new file mode 100644 index 000000000..ff9f7f2d4 --- /dev/null +++ b/developer/engine/windows/19.0/api/IKeymanPackageFile3/index.md @@ -0,0 +1,33 @@ +--- +title: IKeymanPackageFile3 Interface +--- + +## Introduction + +The `IKeymanPackageFile3` interface describes a keyboard package file and +adds an installation method that compiles keyboard layouts against a +specified base keyboard. + +## Interface Hierarchy + +`IDispatch` + +> [`IKeymanObject`](../IKeymanObject) +> +> > [`IKeymanPackage`](../IKeymanPackage) +> > +> > > [`IKeymanPackageFile`](../IKeymanPackageFile) +> > > +> > > > [`IKeymanPackageFile2`](../IKeymanPackageFile2) +> > > > +> > > > **`IKeymanPackageFile3`** + +## Methods + +[`Install3()`](Install3) +: Installs the package and compiles its keyboard layouts against the + specified base keyboard. + +## History + +Added in Keyman Engine for Windows 19.0. diff --git a/developer/engine/windows/19.0/api/IKeymanPackagesInstalled/Install.md b/developer/engine/windows/19.0/api/IKeymanPackagesInstalled/Install.md index 83552824c..ae4dc6f9f 100644 --- a/developer/engine/windows/19.0/api/IKeymanPackagesInstalled/Install.md +++ b/developer/engine/windows/19.0/api/IKeymanPackagesInstalled/Install.md @@ -36,9 +36,17 @@ void Install(string Filename, bool Force) : Installs a package file, optionally with input method for default language +[`IKeymanPackagesInstalled3::Install3`](../IKeymanPackagesInstalled3/Install3) +: Installs a package from a path and compiles its keyboard layouts + against a specified base keyboard + [`IKeymanPackageFile::Install`](../IKeymanPackageFile/Install) : Installs a package file and input method for default language [`IKeymanPackageFile2::Install2`](../IKeymanPackageFile2/Install2) : Installs a package file, optionally with input method for default language + +[`IKeymanPackageFile3::Install3`](../IKeymanPackageFile3/Install3) +: Installs a package file and compiles its keyboard layouts + against a specified base keyboard diff --git a/developer/engine/windows/19.0/api/IKeymanPackagesInstalled/index.md b/developer/engine/windows/19.0/api/IKeymanPackagesInstalled/index.md index 571302a34..839a7c858 100644 --- a/developer/engine/windows/19.0/api/IKeymanPackagesInstalled/index.md +++ b/developer/engine/windows/19.0/api/IKeymanPackagesInstalled/index.md @@ -17,7 +17,9 @@ Keyman Engine. > > > > > **`IKeymanPackagesInstalled`** > > > -> > > > [`IKeymanPackagesInstalled2`](../IKeymanPackagesInstalled2) +> > > > [`IKeymanPackagesInstalled2`](../IKeymanPackagesInstalled2) +> > > > +> > > > [`IKeymanPackagesInstalled3`](../IKeymanPackagesInstalled3) ## Properties diff --git a/developer/engine/windows/19.0/api/IKeymanPackagesInstalled2/Install2.md b/developer/engine/windows/19.0/api/IKeymanPackagesInstalled2/Install2.md index 13271d854..452350cc5 100644 --- a/developer/engine/windows/19.0/api/IKeymanPackagesInstalled2/Install2.md +++ b/developer/engine/windows/19.0/api/IKeymanPackagesInstalled2/Install2.md @@ -39,9 +39,17 @@ void Install(string Filename, bool Force, bool InstallDefaultLanguage) [`IKeymanPackagesInstalled::Install`](../IKeymanPackagesInstalled/Install) : Installs a package file and input method for default language +[`IKeymanPackagesInstalled3::Install3`](../IKeymanPackagesInstalled3/Install3) +: Installs a package from a path and compiles its keyboard layouts + against a specified base keyboard + [`IKeymanPackageFile::Install`](../IKeymanPackageFile/Install) : Installs a package file and input method for default language [`IKeymanPackageFile2::Install2`](../IKeymanPackageFile2/Install2) : Installs a package file, optionally with input method for default language + +[`IKeymanPackageFile3::Install3`](../IKeymanPackageFile3/Install3) +: Installs a package file and compiles its keyboard layouts + against a specified base keyboard diff --git a/developer/engine/windows/19.0/api/IKeymanPackagesInstalled2/index.md b/developer/engine/windows/19.0/api/IKeymanPackagesInstalled2/index.md index c1ffa5b2f..33d0b5791 100644 --- a/developer/engine/windows/19.0/api/IKeymanPackagesInstalled2/index.md +++ b/developer/engine/windows/19.0/api/IKeymanPackagesInstalled2/index.md @@ -9,15 +9,17 @@ in Keyman Engine. ## Interface Hierarchy -`IDispatch` +`IDispatch` -> [`IKeymanObject`](../IKeymanObject) +> [`IKeymanObject`](../IKeymanObject) > -> > [`IKeymanCollection`](../IKeymanCollection) +> > [`IKeymanCollection`](../IKeymanCollection) > > -> > > [`IKeymanPackagesInstalled`](../IKeymanPackagesInstalled) +> > > [`IKeymanPackagesInstalled`](../IKeymanPackagesInstalled) > > > -> > > > **`IKeymanPackagesInstalled2`** +> > > > **`IKeymanPackagesInstalled2`** +> > > > +> > > > [`IKeymanPackagesInstalled3`](../IKeymanPackagesInstalled3) ## Methods diff --git a/developer/engine/windows/19.0/api/IKeymanPackagesInstalled3/Install3.md b/developer/engine/windows/19.0/api/IKeymanPackagesInstalled3/Install3.md new file mode 100644 index 000000000..7bc1958a5 --- /dev/null +++ b/developer/engine/windows/19.0/api/IKeymanPackagesInstalled3/Install3.md @@ -0,0 +1,50 @@ +--- +title: IKeymanPackagesInstalled3::Install3 Method +--- + +## Introduction + +The `IKeymanPackagesInstalled3::Install3` method installs the package +file (.kmp) into Keyman Engine for Windows. This includes decompressing +the archive, copying its files into the Keyman Engine package store, +adding registry settings, installing fonts, and installing keyboard +layouts. During installation, keyboard layouts are compiled against the +specified base keyboard. + +Fonts are copied and installed into the Windows Fonts folder, if an +existing font with the same name is not already present. + +This method requires elevated privileges. + +## Specification + +``` clike +void Install3(string Filename, bool Force, int BaseKeyboardID) +``` + +## Parameters + +`Filename` +: The fully-qualified path to the .kmp file to be installed. This file + will be copied to the Keyman package store. + +`Force` +: If `True`, overwrites an existing package entry. + +`BaseKeyboardID` +: The ID of the base keyboard to compile the package's keyboard layouts + against. + +## See also + +[`IKeymanPackagesInstalled2::Install2`](../IKeymanPackagesInstalled2/Install2) +: Installs a package, optionally with input method for default + language + +[`IKeymanPackagesInstalled3::Install3`](../IKeymanPackagesInstalled3/Install3) +: Installs a package from a path and compiles its keyboard layouts + against a specified base keyboard + +[`IKeymanPackageFile3::Install3`](../IKeymanPackageFile3/Install3) +: Installs a package file and compiles its keyboard layouts + against a specified base keyboard diff --git a/developer/engine/windows/19.0/api/IKeymanPackagesInstalled3/index.md b/developer/engine/windows/19.0/api/IKeymanPackagesInstalled3/index.md new file mode 100644 index 000000000..37340c6ce --- /dev/null +++ b/developer/engine/windows/19.0/api/IKeymanPackagesInstalled3/index.md @@ -0,0 +1,33 @@ +--- +title: IKeymanPackagesInstalled3 Interface +--- + +## Introduction + +The `IKeymanPackagesInstalled3` interface extends the installed package +collection with a method to install a package and compile its keyboard +layouts against a specified base keyboard. + +## Interface Hierarchy + +`IDispatch` + +> [`IKeymanObject`](../IKeymanObject) +> +> > [`IKeymanCollection`](../IKeymanCollection) +> > +> > > [`IKeymanPackagesInstalled`](../IKeymanPackagesInstalled) +> > > +> > > > [`IKeymanPackagesInstalled2`](../IKeymanPackagesInstalled2) +> > > > +> > > > **`IKeymanPackagesInstalled3`** + +## Methods + +[`Install3()`](Install3) +: Installs a package and compiles its keyboard layouts against the + specified base keyboard. + +## History + +Added in Keyman Engine for Windows 19.0. diff --git a/developer/engine/windows/19.0/api/index.md b/developer/engine/windows/19.0/api/index.md index f95332c45..731877dec 100644 --- a/developer/engine/windows/19.0/api/index.md +++ b/developer/engine/windows/19.0/api/index.md @@ -34,6 +34,7 @@ instantiated with `CreateObject("keymanapi.Keyman")`. > > > > [`IKeymanKeyboardsInstalled`](IKeymanKeyboardsInstalled) > > > > > > > > > [`IKeymanKeyboardsInstalled2`](IKeymanKeyboardsInstalled2) +> > > > > [`IKeymanKeyboardsInstalled3`](IKeymanKeyboardsInstalled3) > > > > > > > > [`IKeymanPackageContentKeyboards`](IKeymanPackageContentKeyboards) > > > @@ -44,6 +45,7 @@ instantiated with `CreateObject("keymanapi.Keyman")`. > > > [`IKeymanPackagesInstalled`](IKeymanPackagesInstalled) > > > > > > > [`IKeymanPackagesInstalled2`](IKeymanPackagesInstalled2) +> > > > [`IKeymanPackagesInstalled3`](IKeymanPackagesInstalled3) > > > > [`IKeymanControl`](IKeymanControl) > > [`IKeymanError`](IKeymanError) @@ -53,8 +55,10 @@ instantiated with `CreateObject("keymanapi.Keyman")`. > > > [`IKeymanKeyboardFile`](IKeymanKeyboardFile) > > > > > > > [`IKeymanKeyboardFile2`](IKeymanKeyboardFile2) +> > > > [`IKeymanKeyboardFile3`](IKeymanKeyboardFile3) > > > > > > [`IKeymanKeyboardInstalled`](IKeymanKeyboardInstalled) +> > > [`IKeymanKeyboardInstalled2`](IKeymanKeyboardInstalled2) > > > > [`IKeymanKeyboardLanguage`](IKeymanKeyboardLanguage) > > @@ -70,6 +74,7 @@ instantiated with `CreateObject("keymanapi.Keyman")`. > > > [`IKeymanPackageFile`](IKeymanPackageFile) > > > > > > > [`IKeymanPackageFile2`](IKeymanPackageFile2) +> > > > [`IKeymanPackageFile3`](IKeymanPackageFile3) > > > > > > [`IKeymanPackageInstalled`](IKeymanPackageInstalled) > > @@ -78,5 +83,3 @@ instantiated with `CreateObject("keymanapi.Keyman")`. > > [`IKeymanSystemInfo`](IKeymanSystemInfo) > > [`IKeymanVisualKeyboard`](IKeymanVisualKeyboard) > > [`IKeymanBCP47Canonicalization`](IKeymanBCP47Canonicalization) - -