diff --git a/Dockerfile b/Dockerfile
index ad3e06c93..8f7558c68 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -2,7 +2,7 @@
# Please keep the content of this file in sync with Podmanfile.
ARG BUILDER_CONFIGURATION="release"
-FROM php:8.4-apache@sha256:51da594c844a97f31b1cd6b1ac6660982f40788f4fe13e75f7fd39e2f9b58651 AS composer-builder
+FROM php:8.4-apache@sha256:56e7dab56ae21ec10aae951f93cbe7069c1ca68a714dd22ca78724268c78f5de AS composer-builder
ENV BUILDER_PLATFORM=docker-composer
# Install Zip to use composer
@@ -29,7 +29,7 @@ RUN if [ "$BUILDER_CONFIGURATION" = "debug" ]; then \
fi
# Site
-FROM php:8.4-apache@sha256:51da594c844a97f31b1cd6b1ac6660982f40788f4fe13e75f7fd39e2f9b58651
+FROM php:8.4-apache@sha256:56e7dab56ae21ec10aae951f93cbe7069c1ca68a714dd22ca78724268c78f5de
ENV BUILDER_PLATFORM=docker
COPY resources/keyman-site.conf /etc/apache2/conf-available/
diff --git a/developer/19.0/context/keyboard-editor.md b/developer/19.0/context/keyboard-editor.md
index 433cce5c4..033ec86c4 100644
--- a/developer/19.0/context/keyboard-editor.md
+++ b/developer/19.0/context/keyboard-editor.md
@@ -99,23 +99,25 @@ Features
## Layout tab
+### Design view
+
+> Path: KMN → Layout tab → Design view (default)
+
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
@@ -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
@@ -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/19.0/images/ui/frmKeymanWizard_Layout_Code.png b/developer/19.0/images/ui/frmKeymanWizard_Layout_Code.png
index 2fbe3991e..6d9055239 100644
Binary files a/developer/19.0/images/ui/frmKeymanWizard_Layout_Code.png and b/developer/19.0/images/ui/frmKeymanWizard_Layout_Code.png differ
diff --git a/developer/19.0/images/ui/frmKeymanWizard_Layout_Design.png b/developer/19.0/images/ui/frmKeymanWizard_Layout_Design.png
index 5d3b57055..909a7d368 100644
Binary files a/developer/19.0/images/ui/frmKeymanWizard_Layout_Design.png and b/developer/19.0/images/ui/frmKeymanWizard_Layout_Design.png differ
diff --git a/developer/19.0/reference/messages/km020bf.md b/developer/19.0/reference/messages/km020bf.md
new file mode 100644
index 000000000..6e9023f93
--- /dev/null
+++ b/developer/19.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/19.0/reference/messages/km05009.md b/developer/19.0/reference/messages/km05009.md
index 1874676a9..0d0736b98 100644
--- a/developer/19.0/reference/messages/km05009.md
+++ b/developer/19.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/19.0/reference/messages/kmc-kmn.kmncompilermessages.md b/developer/19.0/reference/messages/kmc-kmn.kmncompilermessages.md
index 125071688..55d552e21 100644
--- a/developer/19.0/reference/messages/kmc-kmn.kmncompilermessages.md
+++ b/developer/19.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/19.0/reference/messages/kmc.infrastructuremessages.md b/developer/19.0/reference/messages/kmc.infrastructuremessages.md
index f2afc1268..d4122177a 100644
--- a/developer/19.0/reference/messages/kmc.infrastructuremessages.md
+++ b/developer/19.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\.
diff --git a/developer/19.0/whatsnew.md b/developer/19.0/whatsnew.md
index a0541ad51..549307f27 100644
--- a/developer/19.0/whatsnew.md
+++ b/developer/19.0/whatsnew.md
@@ -6,7 +6,7 @@ Keyman Developer 19 has the following significant changes:
- Updated to Unicode 17.0 (#14728)
- Updated langtags.json, ISO639-3, language-subtag-registry (#16371)
-- Validate a keyboard or lexical model project frmo within Keyman Developer (#16076)
+- Validate a keyboard or lexical model project from within Keyman Developer (#16076)
- Support for line numbers in LDML keyboard compiler messages (#13375)
- Convert from .keylayout (macOS keyboards, Ukelele) into .kmn (#12191)
- Compiler improvements - prevent illegal constructs (#16723, #16726, #36710, #16717)
diff --git a/developer/engine/android/19.0/KMManager/getPredictionsSuspended.md b/developer/engine/android/19.0/KMManager/getPredictionsSuspended.md
index 20bb66d4f..87d16ab1b 100644
--- a/developer/engine/android/19.0/KMManager/getPredictionsSuspended.md
+++ b/developer/engine/android/19.0/KMManager/getPredictionsSuspended.md
@@ -1,7 +1,6 @@
---
-title: KMManager.getPredictionsSuspended()
+title: KMManager.getPredictionsSuspended() (Deprecated)
---
-
## Summary
The **getPredictionsSuspended()** method returns a flag that determines whether predictions are temporarily disabled because the currently selected text field is a hidden password text field or a numeric text field.
@@ -24,6 +23,7 @@ Use this method to check if predictions are temporarily disabled because of the
## History
Added syntax in Keyman Engine for Android 18.0.
+Deprecated syntax in Keyman Engine for Android 19.0 in favor of [`setInputType`](setInputType), as it better maintains predictive-text state.
## See also
* [setPredictionsSuspended](setPredictionsSuspended)
diff --git a/developer/engine/android/19.0/KMManager/index.md b/developer/engine/android/19.0/KMManager/index.md
index 0f9d9c0fb..d21bf40a8 100644
--- a/developer/engine/android/19.0/KMManager/index.md
+++ b/developer/engine/android/19.0/KMManager/index.md
@@ -161,8 +161,8 @@ The KMManager is the core class which provides most of the methods and constants
[`getOrientation()`](getOrientation)
: returns the device's current orientation (Portrait vs Landscape)
-[`getPredictionsSuspended()`](getPredictionsSuspended)
-: returns whether predictions are temporarily disabled because the currently selected text field is a hidden password text field or a numeric text field.
+~~`getPredictionsSuspended()`~~ `(Deprecated)`
+: returns whether predictions are temporarily disabled because the currently selected text field is a hidden password text field or a numeric text field.
[`getSpacebarText()`](getSpacebarText)
: returns the current text display pattern for the spacebar
@@ -254,6 +254,9 @@ The KMManager is the core class which provides most of the methods and constants
[`setHTMLBanner()`](setHTMLBanner)
: sets the contents of an HTML banner for Keyman Engine to display when suggestions aren't available
+[`setInputType()`](setInputType)
+: informs the engine about what type of input text is expected, allowing it to configure predictive-text accordingly
+
[`setKeyboard()`](setKeyboard)
: sets the keyboard to be used
@@ -269,8 +272,8 @@ The KMManager is the core class which provides most of the methods and constants
[`setMaySendCrashReport()`](setMaySendCrashReport)
: sets whether Keyman Engine can send crash reports over the network to Sentry
-[`setPredictionsSuspended()`](setPredictionsSuspended)
-: sets whether predictions are temporarily disabled because the currently selected text field is a hidden password text field or a numeric text field.
+~~`setPredictionsSuspended()`~~ `(Deprecated)`
+: sets whether predictions are temporarily disabled because the currently selected text field is a hidden password text field or a numeric text field.
[`setShouldAllowSetKeyboard()`](setShouldAllowSetKeyboard)
: sets whether Keyman Engine allows setting a keyboard other than the default keyboard
diff --git a/developer/engine/android/19.0/KMManager/setInputType.md b/developer/engine/android/19.0/KMManager/setInputType.md
new file mode 100644
index 000000000..b730f15ba
--- /dev/null
+++ b/developer/engine/android/19.0/KMManager/setInputType.md
@@ -0,0 +1,38 @@
+---
+title: KMManager.setInputType()
+---
+
+## Summary
+The **setInputType()** method allows the engine to configure which predictive-text features
+will be presented to the user based upon the type of input expected for an input field.
+
+## Syntax
+```java
+KMManager.setInputType(KeyboardType keyboardType, int inputType)
+```
+
+### Parameters
+
+`keyboardType`
+: The keyboard type. `KEYBOARD_TYPE_INAPP` or
+ `KEYBOARD_TYPE_SYSTEM`.
+
+[`inputType`](https://developer.android.com/reference/android/text/InputType)
+: An integer defining the basic context type of text being edited.
+
+
+## Description
+Use this method to allow the engine to determine what types of suggestions may be offered to the
+user. It will disable predictions for contexts that should not provide them, such as password fields.
+It will prevent autocorrect for contexts where text prediction will not likely give a perfect result,
+such as email fields.
+
+### Example: Using `setInputType()`
+The following script illustrates the use of `setInputType()`:
+
+```java
+ KMManager.setInputType(textView.getInputType());
+```
+
+## History
+Added syntax in Keyman Engine for Android 19.0.
\ No newline at end of file
diff --git a/developer/engine/android/19.0/KMManager/setPredictionsSuspended.md b/developer/engine/android/19.0/KMManager/setPredictionsSuspended.md
index ebf8fcb37..4908cb12e 100644
--- a/developer/engine/android/19.0/KMManager/setPredictionsSuspended.md
+++ b/developer/engine/android/19.0/KMManager/setPredictionsSuspended.md
@@ -1,5 +1,5 @@
---
-title: KMManager.setPredictionsSuspended()
+title: KMManager.setPredictionsSuspended() (Deprecated)
---
## Summary
@@ -9,7 +9,6 @@ The **setPredictionsSuspended()** method sets a flag to temporarily disable pred
```java
KMManager.setPredictionsSuspended(int inputType, KeyboardType keyboardType)
```
-
### Parameters
[`inputType`](https://developer.android.com/reference/android/text/InputType)
@@ -31,6 +30,7 @@ Use this method to temporarily disable predictions because of the currently sele
## History
Added syntax in Keyman Engine for Android 18.0.
+Deprecated syntax in Keyman Engine for Android 19.0 in favor of [`setInputType`](setInputType).
## See also
* [getPredictionsSuspended](getPredictionsSuspended)
diff --git a/developer/engine/android/19.0/whatsnew.md b/developer/engine/android/19.0/whatsnew.md
index 2c8324549..ca9321c44 100644
--- a/developer/engine/android/19.0/whatsnew.md
+++ b/developer/engine/android/19.0/whatsnew.md
@@ -2,6 +2,8 @@
title: What's New in Keyman Engine 19.0 for Android
---
+* Added API for selecting and controlling what types of suggestions are offered
+for different `Editable` input types (#16644)
* **BREAKING** Apps that use the functionality of Keyman Engine for Android will have to add `androidx.webkit:webkit:1.14.0` as a dependency (#16146)
* **KNOWN ISSUE** `sil_euro_latin` keyboard must be included in an app if `setDefaultKeyboard()` is not called during initialization (#16215)
* Added [Intent `com.tavultesoft.kmapro.keyboard_changed`](KMAPro/) which is broadcast when Keyman system keyboard changes and includes font name (#15193)
diff --git a/developer/engine/android/20.0/whatsnew.md b/developer/engine/android/20.0/whatsnew.md
index 23979172d..9e9256bd8 100644
--- a/developer/engine/android/20.0/whatsnew.md
+++ b/developer/engine/android/20.0/whatsnew.md
@@ -2,7 +2,12 @@
title: What's New in Keyman Engine 20.0 for Android
---
-* Added API for broadcasting when Keyman system keyboard font changes (#15193)
+* **BREAKING** Apps that use the functionality of Keyman Engine for Android will have to add `androidx.webkit:webkit:1.14.0` as a dependency (#16146)
+* **KNOWN ISSUE** `sil_euro_latin` keyboard must be included in an app if `setDefaultKeyboard()` is not called during initialization (#16215)
+* Added [Intent `com.tavultesoft.kmapro.keyboard_changed`](KMAPro/) which is broadcast when Keyman system keyboard changes and includes font name (#15193)
+* Added [`KMManager.getKeyboardHeightMax()`](KMManager/getKeyboardHeightMax) API (#13663)
+* Added [`KMManager.getKeyboardHeightMin()`](KMManager/getKeyboardHeightMin) API (#13663)
+* Clarified font filename vs facename in various APIs (#16211)
## See Also
* [Keyman Engine for Android Documentation](index)
\ No newline at end of file
diff --git a/developer/engine/web/19.0/guide/adding-keyboards.md b/developer/engine/web/19.0/guide/adding-keyboards.md
index f294bee24..0787f340f 100644
--- a/developer/engine/web/19.0/guide/adding-keyboards.md
+++ b/developer/engine/web/19.0/guide/adding-keyboards.md
@@ -4,57 +4,82 @@ title: Adding Keyboards
There are multiple ways to add and install keyboards into your KeymanWeb installation.
-## Directly linking a local copy
+## Requesting from the Keyman cloud (CDN)
-The most efficient way to utilize a keyboard is to obtain a local copy of it and place this copy in a static location on your website. Once this is done, it can be directly linked into KeymanWeb as follows.
+The easiest way to utilize a keyboard is to request it from the Keyman cloud.
-```js
-await keyman.addKeyboards({
- id:'us', // The keyboard's unique identification code.
- name:'English', // The keyboard's user-readable name.
- language:{
- id:'en', // A BCP 47 code uniquely identifying the language.
- name:'English (US)' // The language's name.
- },
- filename:'./us-1.0.js' // A valid path to the compiled *.js file representing the keyboard.
-});
-```
+### Requested from the CDN by keyboard name
-Custom fonts may also be utilized via the `language.font` property. For example:
+To obtain a specific keyboard by name or by keyboard name and language code as a pair, see the
+following:
-```js
-font:{
- family:'LaoWeb',
- source:['../font/saysettha_web.ttf','../font/saysettha_web.woff','../font/saysettha_web.eot']
-}
+```typescript
+await keyman.addKeyboards('khmer_angkor','sil_euro_latin@sv','sil_euro_latin@no')
```
-## Requested from the CDN by language name
+This will install three keyboards - the Khmer Angkor one for Khmer and two copies
+of the EuroLatin keyboard - one for Swedish and one for Norwegian.
+
+### Requested from the CDN by language name
-To obtain the default Keyman keyboard for a given language, call the following function.
+To obtain the default Keyman keyboard for a given language, call the following function:
-```js
+```typescript
await keyman.addKeyboardsForLanguage('Dzongkha');
```
-This example would find the default keyboard for the Dzongkha language. This method will fail if the name doesn't perfectly match any language found in the CDN's repository.
+This example would find the default keyboard for the Dzongkha language. This method will fail if
+the name doesn't perfectly match any language found in the CDN's repository.
Alternatively, languages may be looked up via their BCP 47 language code as follows:
-```js
-await keyman.addKeyboards('@he');
+```typescript
+await keyman.addKeyboards('@he')
```
-The `@` prefix indicates the use of the BCP 47 language code, which in this case corresponds with Hebrew.
+The `@` prefix indicates the use of the BCP 47 language code, which in this case corresponds with
+Hebrew.
-## Requested from the CDN by keyboard name
+
-```js
-await keyman.addKeyboards('french', 'sil_euro_latin@sv', 'sil_euro_latin@no');
+## Directly linking a local copy
+
+The most efficient way to utilize a keyboard is to obtain a local copy of it and place this copy
+in a static location on your website. Once this is done, it can be directly linked into KeymanWeb
+as follows:
+
+```typescript
+await keyman.addKeyboards({
+ id: 'us', // The keyboard's unique identification code.
+ name: 'English', // The keyboard's user-readable name.
+ languages: {
+ id: 'en', // A BCP 47 code uniquely identifying the language.
+ name: 'English (US)' // The language's name.
+ },
+ filename: './us.js' // A valid path to the compiled *.js file representing the keyboard.
+});
```
-This will install three keyboards - one for French (named, quite simply, "French") and two copies of the EuroLatin keyboard - one for Swedish and one for Norwegian.
+Custom fonts may also be utilized via the `languages.font` property. For example:
+
+```typescript
+languages: {
+ id: 'lo',
+ name: 'Lao',
+ font: {
+ family: 'LaoWeb',
+ source: ['../font/saysettha_web.ttf','../font/saysettha_web.woff']
+ }
+}
+```
[Previous: What is a Keyboard?](what-is-a-keyboard) | [Next: Additional Examples](examples/)
diff --git a/developer/engine/web/19.0/reference/core/addKeyboards.md b/developer/engine/web/19.0/reference/core/addKeyboards.md
index e5f48680a..a048e7a0f 100644
--- a/developer/engine/web/19.0/reference/core/addKeyboards.md
+++ b/developer/engine/web/19.0/reference/core/addKeyboards.md
@@ -4,7 +4,7 @@ title: addKeyboards function
## Summary
-Adds keyboards to KeymanWeb.
+Adds keyboards to KeymanWeb. Note that this is an asynchronous operation.
## Syntax
@@ -53,6 +53,11 @@ The string format is one of the following:
The keyboard catalogue is online at
[https://keyman.com/developer/keymanweb/keyboards](https://keyman.com/developer/keymanweb/keyboards).
+
+
### Using an `object`
When keyboard spec is an object, then more parameters can be specified,
@@ -182,4 +187,4 @@ The `spec.languages.font` object contains the following members:
### Not passing any parameter
-Not passing any parameter will obtain all Keyman keyboards from the CDN.
\ No newline at end of file
+Not passing any parameter will obtain all Keyman keyboards from the CDN.
diff --git a/developer/engine/web/19.0/reference/core/addKeyboardsForLanguage.md b/developer/engine/web/19.0/reference/core/addKeyboardsForLanguage.md
index e3a1e553c..6812ea3ae 100644
--- a/developer/engine/web/19.0/reference/core/addKeyboardsForLanguage.md
+++ b/developer/engine/web/19.0/reference/core/addKeyboardsForLanguage.md
@@ -4,7 +4,8 @@ title: addKeyboardsForLanguage function
## Summary
-Add default or all keyboards for a given language to KeymanWeb.
+Add default or all keyboards for a given language to KeymanWeb. Note that this is an asynchronous
+operation.
## Syntax
@@ -30,6 +31,7 @@ The promise is an array containing the following:
* successfully registered keyboard objects which define some or all of these
[properties](../keyboard_properties)
+* [ErrorStub](../keyboard_registration_errors) objects for keyboards that failed to register
## Description
diff --git a/developer/engine/web/20.0/whatsnew.md b/developer/engine/web/20.0/whatsnew.md
index ec1bed654..0fc143f54 100644
--- a/developer/engine/web/20.0/whatsnew.md
+++ b/developer/engine/web/20.0/whatsnew.md
@@ -2,6 +2,42 @@
title: What's New in KeymanWeb 20.0
---
+* **BREAKING** `file:` protocol is no longer supported, as keyboards are loaded
+ with `fetch()` API (#12334)
+* Bug fix: the `keyboardloaded` event now fires only once per loaded keyboard.
+ Previously the event fired twice. (#16297)
+* Fixed `loaduserinterface` and `unloaduserinterface` events to fire
+ consistently (#16353)
+* Clarified use of asynchronous APIs (such as `addKeyboards()`) (#16064)
+* Cleanup of various examples (#16064)
+* Addressed several bugs with control of active keyboard (#16524)
+* Removed `keyman.FocusLastActiveElement()` (use
+ `keyman.focusLastActiveElement()`) (#16170)
+* Removed `keyman.GetLastActiveElement()` (use `keyman.getLastActiveElement()`)
+ (#16170)
+* Removed `keyman.HideHelp()` (use `keyman.osk.hide()`) (#16170)
+* Removed `keyman.ShowHelp()` (use `keyman.osk.show()`, `keyman.osk.setRect()`)
+ (#16170)
+* Removed `keyman.ShowPinnedHelp()` (use `keyman.osk.show()`,
+ `keyman.osk.setRect()`) (#16170)
+* Deprecated `keyman.build` and `keyman.version` (use `keyman.versionInfo`)
+ (#16351)
+* Deprecated `keyman.helpURL` (use Keyman Cloud APIs) (#16351)
+* Deprecated `keyman.moveToElement` (use `elem.focus()`) (#16661)
+* Deprecated `keyman.interface.FocusLastActiveElement()` (use
+ `keyman.interface.focusLastActiveTextStore()`) (#16170)
+* Deprecated `keyman.interface.GetLastActiveElement()` (use
+ `keyman.interface.getLastActiveTextStore()`) (#16170)
+* Deprecated `keyman.interface.HideHelp()` (use `keyman.osk.hide()`) (#16170)
+* Deprecated `keyman.interface.ShowHelp()` (use `keyman.osk.show()`) (#16170)
+* Deprecated `keyman.interface.ShowPinnedHelp()` (use `keyman.osk.show()`,
+ `keyman.osk.setRect()`) (#16170)
+* Deprecated `keyman.util.toFloat()` (#16351)
+* Deprecated `keyman.util.toNumber()` (#16351)
+* Deprecated `keyman.util.toNzString()` (#16351)
+* Removed deprecated `onunloaded` handler (#16351)
+* About [550 other fixes and changes](https://keyman.com/go/app/whatsnew/web/19.0)
+
## See also
* [Keyman Engine for Web Documentation](index)
diff --git a/developer/engine/windows/20.0/whatsnew.md b/developer/engine/windows/20.0/whatsnew.md
new file mode 100644
index 000000000..e5215baa4
--- /dev/null
+++ b/developer/engine/windows/20.0/whatsnew.md
@@ -0,0 +1,19 @@
+---
+title: What's New in Keyman Engine 19.0 for Windows
+---
+
+* **kmcomapi:** Added the `MCompileForBaseKeyboard(long KLID)` COM method to the
+ new `IKeymanKeyboardInstalled2` interface, which extends
+ `IKeymanKeyboardInstalled`. The method accepts the user's base keyboard ID and
+ allows `mcompile` to compile all installed keyboard layouts against that
+ keyboard ID. See #16162 for details.
+* **kmcomapi:** Added the `Install3` COM method, which accepts a base keyboard
+ ID. The base keyboard ID is passed to `mcompile` during installation so that
+ the keyboard layout can be compiled against the specified base keyboard.
+ `Install3` has been added to the following interfaces: `IKeymanKeyboardFile3`,
+ `IKeymanPackageFile3`, `IKeymanKeyboardsInstalled3`, and
+ `IKeymanPackagesInstalled3`. See #16528 for details.
+
+## See Also
+
+* [Keyman Engine for Windows Documentation](index)
\ No newline at end of file
diff --git a/developer/keyboards/index.md b/developer/keyboards/index.md
index 48d597cfa..a9a9f85ec 100644
--- a/developer/keyboards/index.md
+++ b/developer/keyboards/index.md
@@ -57,6 +57,16 @@ the keyboards that start with that letter. In addition, there are some
folders (fv and gff, for example) that correspond to organizations which
have contributed a number of keyboards.
+## Examples
+
+Many people have already contributed keyboards. If you find examples
+of the process, file structure, and interactions with the keyboard
+review team helpful, we encourage you to look at previous submissions:
+
+* [#4197](https://github.com/keymanapp/keyboards/pull/4197) - an example
+ of a really clear keyboard submission comment
+* [other successful keyboard submissions](https://github.com/keymanapp/keyboards/pulls?q=is%3Apr+state%3Amerged+-label%3Ainfrastructure)
+
## Get Involved
- [Advanced Keyboard Submission Guide](advanced)
diff --git a/keyboard/basuria/1.0/basuria.php b/keyboard/basuria/1.0/basuria.php
new file mode 100644
index 000000000..214a14e84
--- /dev/null
+++ b/keyboard/basuria/1.0/basuria.php
@@ -0,0 +1,541 @@
+
+
+
+ Basuria keyboard for Southwestern Mandarin Chinese Xi-Nàn Koan-Hóa +
+Ba-Șụ-Lí-Yá kọe-ủ-țứ șự i chỏng Xi-Nàn Koan-Hóa hò Hán-Ủ le Lò-mả hóa vần-țứ çí-thỏng. Ché kó kọe-ủ-țứ le mộ-đị șự fạ-chản i chỏng khỏ-ỉ miào-șộ txuyền-bố Xi-Nàn Koan-Hóa hò Hán-Ủ le biảo-in vần-țứ, ỉ-gị fạ-chản Ba-Șụ le kọe-gia ủ-yàn.
+The National Language Script of Basurian is a romanisation system for Southwestern Mandarin and Mandarin Chinese. This National Language Script is aimed to develop an phonetic script which can describe Southwestern Mandarin and all variants of Mandarin Chinese and develop the national language of Basurians.
+ +| character | +name | +pronunciation | +
|---|---|---|
| a | +a | +[a] | +
| â | +â | +[əʔ] | +
| ây | +ây | +[ei] | +
| ă | +ă | +[ə] | +
| an | +an | +[æ̃] | +
| b | +be/bă | +[p] [bʱ] | +
| c | +xê | ++ |
| ç | +çi | +[ɕ] | +
| ch | +chy | +[tʂ] | +
| d | +đe | +[dʱ] | +
| di | +di | +[ʑ] | +
| đ | +đă | +[t] [dʱ] | +
| dz | +dză | +[dzʱ] | +
| dzi | +dzi | +[dʑʱ] | +
| e | +e | +[e] | +
| ê | +ê | +[e] | +
| ên | +ên | +[ɛn] | +
| f | +ef/fô | +[f] | +
| g | +gi | +[tɕ] | +
| gh | +ghă | +[ɡʱ] | +
| ğ | +ğă | +[ɣ] | +
| h | +ha | +[x] | +
| i | +i | +[i] | +
| j | +giây/iota | ++ |
| k | +ka | +[k] | +
| kh | +kha | +[kʰ] | +
| ķ | +ķi | +[tɕʰ] | +
| l | +e-lă/lă | +[l] | +
| m | +e-mă/mă | +[m] | +
| n | +e-nă/nă | +[n] | +
| ng | +ngă | +[ŋ] | +
| nh | +nhi | +[ȵ] | +
| o | +o | +[o] | +
| ô | +ô | +[u] | +
| ơ | +ơ | +[ə] | +
| p | +phe | +[p] | +
| ph | +phă | +[pʰ] | +
| q | +khiô | ++ |
| r | +e-ră | +[ɹ] | +
| s | +es | +[s] | +
| ș | +șư | +[ʂʰ] | +
| t | +the | +[t] | +
| th | +thă | +[tʰ] | +
| ts | +tsư | +[tʂʰ] | +
| ț | +ță | +[t͡s] | +
| țx | +țxă | +[t͡sʰ] | +
| u | +u | +[y] | +
| ư | +ư | +[ɿ] [ʅ] | +
| v | +ve/vô | +[v] | +
| w | +đabliu | ++ |
| x | +ekhs/sư | +[s] | +
| y | +oai/i-grek | +[i] | +
| z | +ze-ta/zư | +[z] | +
| ż | +żư | +[ʐ] | +
| script | +IPA | +examples | +
|---|---|---|
| b/p | [p] | 布 |
| ph | [pʰ] | 拍 |
| m | [m] | 媽 |
| b | [bʱ] | 步 |
| f | [f] | 發 |
| v | [v] | 武 |
| đ/t | [t] | 端 |
| đ | [dʱ] | 同 |
| th | [tʰ] | 透 |
| n | [n] | 拿 |
| nh | [ȵ] | 你 |
| l | [l] | 來 |
| k | [k] | 干 |
| kh | [kʰ] | 快 |
| ng | [ŋ] | 我 |
| h | [h] [x] | 好 |
| gi | [ʨ] | 雞 |
| gh | [ɡʱ] | 共 |
| ğ | [ɣ] | 鞋 |
| ķ | [ʨʰ] | 氣 |
| ç | [ɕ] | 喜 |
| dzi | [dʑʱ] | 錢 |
| ț | [t͡s] | 走 |
| tx | [t͡sʰ] | 菜 |
| s | [s] | 三 |
| dz | [dzʱ] | 成 |
| di | [ʑʱ] | 謝 |
| ch | [tʂ] | 中 |
| ts | [tʂʰ] | 重 |
| ș | [ʂ] | 上 |
| ż/z | [ʐ] [z] | 日 |
| y | [i] [j] | 有 |
| u | [y] | 原 |
| o/u | [u] [w] | 玩 |
| v | [v] | 未 |
| / | [ʔ] | 安 |
在成都方言和大部分西南官話中,n往往變成l
+In the Tsằng-Đu accent and most of Southwestern Mandarin, the "n" sound often becomes "l" sound.
+在成都方言中,ch ts ș往往變成ț tx x
+In the Tsằng-Đu accent, the "ch" "ts" and "ș" sound are often pronounced as "ț" "tx" "x" sound.
+在成都方言中,z是ż的一種變體
+In the Tsằng-Đu accent, the "z" sound is an variant of "ż" sound.
+在成都方言中,聲母v往往读讀成[u]
+In the Tsằng-Đu accent, the "v" consonant is often pronounced as [u]
+在攔江話中,存在"b" "đ" "dz" "dzi" "di" "gh" "ğ"的濁音聲母
+In the Làn-Giang accent, the voiced consonants "b" "đ" "dz" "dzi" "di" "gh" "ğ" exist.
+在沒有濁音[b]和[d]的大多數官話口音中,仍然使用b和đ表示[p]和[t]
+In the most of mandarin accent without voiced consonants [b] and [d], the letter b and đ are still applied to indicate [p] and [t]
+ +| script | +IPA | +examples | +
|---|---|---|
| a | [a] | 阿 |
| ô | [u] | 古 |
| o | [o] | 哥 |
| i | [i] | 醫 |
| e | [e] | 車 |
| u | [y] | 區 |
| u | [y] [u] | 主書出入 |
| ư | [ɿ] [ʅ] | 四史 |
| ăl | [ɚ] | 二 |
| ă | [ə] [ɐ] | |
| â | [ɯ] | |
| ơ | [ʉ] [ɤ] | |
| ưu | [ʮ] | |
| ia | [ia] | 亞 |
| io | [io] | 藥 |
| iê | [ie] | 節 |
| oa | [ua] | 瓜 |
| uo | [uo] | 過 |
| oe | [ue] | 國 |
| io | [yo] | 曲 |
| uyê/iuê | [ye] | 月 |
| ui | [yi] | 橘 |
| ai | [ai] | 愛 |
| ây | [ei] | 梅 |
| ao | [au] | 高 |
| âu | [əu] | 狗 |
| iai | [iai] | 解 |
| iao | [iau] | 了 |
| iây | [iei] | 齊 |
| iâu | [iəu] | 九 |
| oai | [uai] | 怪 |
| uây | [uei] [yei] | 貴 |
| an | [æ̃] | 安 |
| ân | [ən] | 恩 |
| ang | [ɑŋ] | 羊 |
| ong | [oŋ] | 工 |
| ăng | [əŋ] | 成 |
| iên | [ien] | 電 |
| in | [in] | 民 |
| iang | [iɑŋ] | 兩 |
| iong | [ioŋ] | 雄 |
| iêng | [iəŋ] | 青 |
| oan | [uæ̃] | 彎 |
| uân | [uən] | 春 |
| oang | [uɑŋ] [yɑŋ] | 光 |
| uong | [uoŋ] | 翁 |
| oăng | [uəŋ] | 橫 |
| uyên/iuên | [yen] | 原 |
| un | [yn] | 軍 |
| dung | [yoŋ] | 榮 |
| uynh | [yəŋ] | 營 |
| ac | [aʔ] | |
| oac | [uaʔ] | |
| oc | [oʔ] | 戳 |
| ec | [eʔ] |
在聲母ch ts ș ż的後面,如果是[u]韻母,則使用字母u來表示韻母,在武漢話中,u韻母跟隨在聲母ch ts ș ż的後面時候讀[y]
+If vowel [u] appears after the "ch" "ts" "ș" "ż" consonant, then using letter "u" to spell the vowel. In Vủ-Hán accent, the vowel "u" is pronounced as [y] after "ch" "ts" "ș" "ż" consonant.
+在成都方言和大部分西南官話中,韻母ăng和ân合併,成爲[ən]
+In the Tsằng-Đu accent and most of Southwestern Mandarin, the "ăng" sound and "ân" sound became a same sound [ən].
+在成都方言和大部分西南官話中,韻母iêng和in合併,成爲[in]
+In the Tsằng-Đu accent and most of Southwestern Mandarin, the "iêng" sound and "in" sound became a same sound [in].
+在成都方言和大部分西南官話中,韻母oăng和uân合併,成爲[uən]
+In the Tsằng-Đu accent and most of Southwestern Mandarin, the "oăng" sound and "uân" sound became a same sound [uən].
+在成都方言和大部分西南官話中,韻母uynh和un合併,成爲[yn]
+In the Tsằng-Đu accent and most of Southwestern Mandarin, the "uynh" sound and "un" sound became a same sound [yn].
+在成都方言中,韻母ung和un合併,成爲[yn]
+In the Tsằng-Đu accent, the "ung" sound and "un" sound became a same sound [yn].
+韻母ă â ơ ưu存在在口語之中
+Vowels "ă" "â" "ơ" and "ưu" exist in practical using.
+柳州話存在"ac"[aʔ] "oac"[uaʔ] "oc"[oʔ] "ec"[eʔ]的塞音聲母
+The vowels end with glottal stop sound, such as "ac"[aʔ] "oac"[uaʔ] "oc"[oʔ] "ec"[eʔ], exist in Liẩu-Châu dialect.
+在西南官話中只存在ăl[ɚ]儿化音,在北方官話和中原官話中存在al [ä˞]、 iăl [jɚ]、 iêl [jɛ˞]、 ôl [u˞]、 ul [ɥɚ]、 ưl [ɻɚ] [ɨ̯ɚ]、 aol [ɑu̯˞]、 âul [ou̯˞]、 aăl [ɐ˞]、 angl [ɑ̃˞]、 ănl [ɚ̃]、 uyal[ ɥɐ˞]以及ongl[ʊ̃˞]等不同类型的儿化音
+In the southwestern mandarin there is only one ăl[ɚ] rhotacization. In northern mandarin and yellow-river mandarinal, there is more types of rhotacization such as al [ä˞], iăl [jɚ], iêl [jɛ˞], ôl [u˞], ul [ɥɚ], ưl [ɻɚ] [ɨ̯ɚ], aol [ɑu̯˞], âul [ou̯˞], aăl [ɐ˞], angl [ɑ̃˞], ănl [ɚ̃]. uyal [ɥɐ˞], and ongl [ʊ̃˞].
+[ʨyen]和[ʨye]音節的正寫是giuên和giuê
+The spelling of [ʨyen] and [ʨye] syllables are "giuên" and "giuê".
+ +| name | +script | +IPA | +examples | +Triggering key | +
|---|---|---|---|---|
| 1. in-phiềng陰平 | a | ˦˥ | 高kao | / |
| 2. yàng-phiềng陽平 | à | ˧˩ | 平phiềng | F |
| 3. șáng-șăng上聲 | ả | ˥˧ | 陡đẩu | R |
| 4. ķú-șăng去聲 | á | ˨˩˧ | 下çiá | S |
| 5. zụ-șăng入聲 | ạ | ˧ | 促txộ | J |
在成都方言中,入聲變成陽平
+In the Tsằng-Đô accent, the entering tone has evolved to the voiced flat tone.
+ + The dictionary of Basurian National Language Script巴蜀國音字彙Ba-Șụ Kọe-In Țứ-Huấy + + + +| Character | +Key pressed | +
|---|---|
| đ | +D + D | +
| ķ | +K + K | +
| ç | +C + C | +
| ș | +S + S | +
| ț | +T + T | +
| ż | +Z + Z | +
| ă | +A + W | +
| â | +A + A | +
| ê | +E + E | +
| ô | +O + O | +
| ơ | +O + O | +
| ư | +U + W | +
| ğ | +Alt G | +
+ If more than one tone marking key is pressed, the last one will be used. For example, typing asf will return "à". To write a tone marking key as a normal character, one has to press it twice: her becomes hẻ, while herr becomes her.
+
Ba-Șụ-Lí-Yá Mìn-Țộ Giển-Șử
+巴蜀利亞民族簡史
+Ba-Șụ-Lí-Yá mìn-țộ țái xin-hái độ-lị chán-chăng ỉ-hấu, çiảng-șấu liảo txiền-xỏ-vậy-yẩu hấu-vồ-lài-chẻ le țứ-yầu hò fàn-yùng.
+巴蜀利亞民族在辛亥獨立戰爭以後,享受了前所未有後無來者的自由和繁榮。
+Thào-gin-chẻ xị-koán ỉ gin-șa kấu-vộ, fảng-fộ Trump gia-țộ țái xi-bố khai lủ-koản le șừ-đái.
+淘金者習慣以金沙購物,彷彿川普家族在西部開旅館的時代。
+Țẩu çía-giang le șang-żần phổ-phiến șử-yóng ìn-uyền, thòng-yáng șứ ngắng-thong-hó.
+走下江的商人普遍使用銀元,同樣是硬通貨。
+Mìn-giên le ỉn-șự fố-ụ đáo gín-hô ị-vần-bộ-chự, Tsằng-Đô șứ-mìn mẩy-thiên ỉ 5 vần txiền le giá-kẹ, ke vồ-nhiệ-yầu-mìn thì-kong żậu-șự, đang-șừ le kố-kong mẩy-uyệ khỏ-ỉ chắng đáo 2000 vần.
+民間的飲食富裕到近乎一文不值,成都市民每天以五文錢的價格,給無業游民提供肉食,當時的雇工每月可以掙到兩千文。
+ +© cathaylab
\ No newline at end of file diff --git a/keyboard/bu_phonetic/2.1.1/bu_phonetic.php b/keyboard/bu_phonetic/2.1.1/bu_phonetic.php new file mode 100644 index 000000000..04d895d5c --- /dev/null +++ b/keyboard/bu_phonetic/2.1.1/bu_phonetic.php @@ -0,0 +1,34 @@ + +The BU Phonetic Keyboard provides access to a wide range of characters for Latin-based scripts in Unicode (www.unicode.org), including:
+PDF format documentation
+
+
diff --git a/keyboard/bu_phonetic/2.1.1/bukeys.pdf b/keyboard/bu_phonetic/2.1.1/bukeys.pdf
new file mode 100644
index 000000000..39538d83e
Binary files /dev/null and b/keyboard/bu_phonetic/2.1.1/bukeys.pdf differ
diff --git a/keyboard/burushaski_girminas_perso_arabic/2.0.3/bsk_perso_arabic_keyboard_keystrokes.png b/keyboard/burushaski_girminas_perso_arabic/2.0.3/bsk_perso_arabic_keyboard_keystrokes.png
new file mode 100644
index 000000000..5d4693fcc
Binary files /dev/null and b/keyboard/burushaski_girminas_perso_arabic/2.0.3/bsk_perso_arabic_keyboard_keystrokes.png differ
diff --git a/keyboard/burushaski_girminas_perso_arabic/2.0.3/burushaski_additional_characters.png b/keyboard/burushaski_girminas_perso_arabic/2.0.3/burushaski_additional_characters.png
new file mode 100644
index 000000000..b45bdd3d2
Binary files /dev/null and b/keyboard/burushaski_girminas_perso_arabic/2.0.3/burushaski_additional_characters.png differ
diff --git a/keyboard/burushaski_girminas_perso_arabic/2.0.3/burushaski_girminas_perso_arabic.php b/keyboard/burushaski_girminas_perso_arabic/2.0.3/burushaski_girminas_perso_arabic.php
new file mode 100644
index 000000000..ae4b668e5
--- /dev/null
+++ b/keyboard/burushaski_girminas_perso_arabic/2.0.3/burushaski_girminas_perso_arabic.php
@@ -0,0 +1,184 @@
+
+
+
بروشسکی + زبان میں لکھنے کے لیے آپ کو دو چیزوں کی + ضرورت ہوگی :
+بروشسکی رسم الخط یا + ارتھو گرافی اورکلیدی تختہ یا کی بورڈ۔
+اگر آپ قلم اور کاغذ + کے شیدائی ہیں تو چائے ساتھ رکھ لیجئے ، + قلم اور کا غذ کا ہی استعمال کر لیجئے۔ اُ + س صورت میں آپ کو صرف ارتھو گرافی ہی + چاہیے،کلیدی تختے یا کی بورڈ کی ضرورت آپ + کو نہیں ہوگی۔
+یہ دو + یونانی الفاظ سے مل کر بنا ہے
+"Orthos" جس
+کامطلب
+ "درست
+
+
+ "gráphein"
+ جس
+ کامطلب ہے "لکھنا"۔
+ یعنی + کسی بھی زبان کو لکھنے کے درست طریقہ کار + کو ہم ارتھو گرافی یا رسم الخط کہہ سکتے + ہیں۔ +
+برو شسکی
+ زبان میں لکھنے کے لیے دو رسم الخط منظور
+ ہو چکے ہیں۔
+
+ عربی یا
+ فارسی کی طرح کا رسم الخط
+ رومن
+ یا لاطینی طرز کا رسم الخط
+
یہ + دو ارتھو گرافیز، بروشو مرکہ (مرْکہ) + جو ہنزہ، یاسین + اور نگر کے بروشو قوم کی نمائندہ تنظیم + ہے۔ کے پلیٹ فارم سے تجویز اور منظور ہو + چکے ہیں۔ +
+ذیل میں مختصراً ہم + بروشسکی عربی یا فارسی طرز کی ارتھو گرافی + یا رسم الخط کو دیکھتے ہیں۔
+
+
اس گائید + کا مقصد ربروشسکی رسم الخط سکھانا نہیں + بلکہ بروشسکی رسم الخط کو لکھنے کے لیے + کی بورڈ کا استعمال کیسے کی جاتی ہےصرف + یہ دیکھانا مقصود ہے ۔ اگرآپ کو بروشسکی + کے رسم الخط کو تفصیل سے پڑھنا ہو تو براہ + کرم بروشسکی قائدہ (الف، + با)کو +پڑھ + لیجئے گا۔ +
+آپ نے غور کیا ہوگا + کہ اُوپر دیئے گئے حروف تہجی میں اردو کے + علاوہ بروشسکی کےکچھ اضافی الفاظ شامل + کئے گئے ہیں۔
+اس کا مطلب یہ ہے کہ + اگر آپ اردو لکھ سکتے ہیں تو پھر بروشسکی + میں لکھنا کوئی مشکل کام نہیں ہے۔ +
+صرف بروشسکی کے اضافی + الفاظ یاد کرنا ہوگا اور بروشسکی کی بورڈ + کی ضرورت ہوگی جو اب تک آپ نے ڈاون لوڈ + کرلیا ہوگا۔
+بروشسکی کے اضافی + الفاظ کی تفصیل کچھ یو ں ہے۔
+
+
بھی بروشسکی + حروف تہجی میں شامل ہیں جن کو لکھنے کا + طریقہ اس گائیڈ میں بیان کیا گیا ہے۔ + (Diacritics) اس + کے علاوہ کچھ +
+تو چلئے یہ جاننے کی + کوشش کرتےہیں کہ بروشسکی کے اضافی الفاظ + کو کمپیوٹر پر کیسے لکھے جاتے ہیں۔ +
+بروشسکی
+ کی بورڈ کو انسٹال کرنے کے بعد آپ کے کمپوٹر
+ کا فزیکل کی بورڈ انگریزی سے بروشسکی میں
+ تبدیل ہو جائے گا۔آپ کے کی بورڈ کے بٹنزکا
+ کام یعنی فنکشن تبدیل ہو گا۔
+
+ مندرجہ
+ ذیل جدول کو غور سے دیکھ لیجئے گا۔ یہ برو
+ شسکی کلیدی تختہ یا کی بورڈ کاترتیب ہے۔
+
+
ا س کی بورڈ میں یہ + دیکھایا گیا ہے کہ کونسا انگریزی حرف + دبانے سے بروشسکی کا کونسا حرف لکھاجائے + گا۔سبز اور سرمئی رنگ میں آپ کے کمپوٹر + کے فزیکل کی بورڈ کو دیکھایا گیا ہے۔ اور + ہلکے لال رنگ میں ان کا فنکش دیکھایا گیا + ہے۔ +
+
+
+
+ اگر
+ سرمئی رنگ کے خانے میں موجود حرف کوسبز
+ رنگ کے خانے میں سے کسی حرف کے ساتھ ملا
+ کر لکھے تو ہلکے لال رنگ میں موجود حرف
+ لکھا جائےگا۔
+
اس کے علاوہ بروشسکی + کی بورڈ بالکل اُسی طرح کا م کرتا ہے جس + طر ح اردو فونیٹِک کی بورڈ کام کرتا ہے۔ + یہاں اردو کلیدی تختے کا استعمال + سکھانا مقصود نہیں ہے لیکن آپ اس کے استعمال + کے لیے ذیل میں دیئے گئے لنک پر جا کر سیکھ + سکتے ہیں۔ +
+پر کلک + کریں ۔ https://urdu.ca/
+ذیل میں بروشسکی میں + لکھی گئی عبارت دی گئی ہے۔جو بروشسکی کی + بورڈ سے لکھی گئی ہے۔
+
+
اگر آپ موبائیل پر + لکھنا چاہتے ہیں تو پھر بروشسکی کی بورڈ + اپیپ ڈاون لوڈ کر لیجئے۔
+
+
+
+
The Ibibio Tonal keyboard types the full Ibibio alphabet and all five tone marks. +Ibibio (ibb) is spoken in Akwa Ibom State, Nigeria.
+| Letter | Desktop | Touch |
|---|---|---|
| ọ Ọ | o ; | ọ key, or long-press o |
| ị Ị | i ; | ị key, or long-press i |
| ụ Ụ | u ; | ụ key, or long-press u |
| ʌ Ʌ | v ; | ʌ key, or long-press u |
| ə Ə | e ; | long-press e |
| ñ Ñ | n ; | ñ key, or long-press n |
Press ; a second time to undo the letter and type a real semicolon.
+Type the vowel or nasal (m, n, ñ) first, then the tone.
+| Tone | Result | Desktop key |
|---|---|---|
| High | ó | ] |
| Low | ò | [ |
| Falling | ô | } |
| Rising | ǒ | { |
| Downstep | ō | \ |
A different tone key swaps the tone. The same tone key again removes it and types the key itself. +Example: o ; ] gives ọ́, and m [ gives m̀.
+On touch devices, use the five tone keys in the top row.
+ +The Ibibio Tonal keyboard types the full Ibibio alphabet and all five tone marks. +Ibibio (ibb) is spoken in Akwa Ibom State, Nigeria.
+| Letter | Desktop | Touch |
|---|---|---|
| ọ Ọ | o ; | ọ key, or long-press o |
| ị Ị | i ; | ị key, or long-press i |
| ụ Ụ | u ; | ụ key, or long-press u |
| ʌ Ʌ | v ; | ʌ key, or long-press u |
| ə Ə | e ; | long-press e |
| ñ Ñ | n ; | ñ key, or long-press n |
Press ; a second time to undo the letter and type a real semicolon.
+Type the vowel or nasal (m, n, ñ) first, then the tone.
+| Tone | Result | Desktop key |
|---|---|---|
| High | ó | ] |
| Low | ò | [ |
| Falling | ô | } |
| Rising | ǒ | { |
| Downstep | ō | \ |
A different tone key swaps the tone. The same tone key again removes it and types the key itself. +Example: o ; ] gives ọ́, and m [ gives m̀.
+On touch devices, use the five tone keys in the top row.
+ +
+To type in Indonesian language. This is a basic keyboard with no special letters. It will also be useful for other languages that do not require special characters.
+Untuk mengetik bahasa Indonesia. Ini adalah papan ketik dasar tanpa huruf khusus.
+
+The physical layout remain unchanged. For touch layout, the main features include:
+Untuk papan ketik fisik, tidak ada perubahan. Untuk layar sentuh, fitur-fitur utamanya:
+
+Website homepage/Situs web: https://github.com/bennylin/keyboards +
+© Benny Lin
+ ++ Authentic Nepali Romanized keyboard layout conforming strictly to the official Madan Puraskar Pustakalaya (MPP) & Language Technology Kendra (LTK) specification. +
+ ++ Authentic Nepali Traditional keyboard layout conforming strictly to the official Madan Puraskar Pustakalaya (MPP) & Language Technology Kendra (LTK) specification. +
+ +In accordance with the MPP/LTK specification, common complex conjuncts are directly accessible:
+nk->ङ्क्, nkh->ङ्ख्, ng->ङ्ग्, ngh->ङ्घ् nch->ञ्च्, nCh->ञ्छ्, nc->ञ्च्, nC->ञ्छ्, nchh->ञ्छ्, nj->ञ्ज्, njh->ञ्झ्, nT->ण्ट्, nTh->ण्ठ्, nD->ण्ड्, nDh->ण्ढ् - c->च्, C->छ्, z->श्, S->ष्, jn->ज्ञ्, R->ऋ
+ c->च्, C->छ्, z->ज़्, S->ष्, jn->ज्ञ्, R->ऋExamples: Type saMskRta for संस्कृत.
Nukta (़) letters for Perso-Arabic loans, plus ऱ्, are typed with a leading .. A few also have a bare key. As elsewhere, the forms below are halanta (add a vowel key for the signed form).
+| क़् | .k | + | ख़् | .K | + | ग़् | .g | + | ज़् | .j / z | + | ड़् | .D | + |
| य़् | .y / Y | + | फ़् | f | + | ऱ् | .r | + |
Arranged with the vowels are two consonantal diacritics, the final nasal anusvāra ं @@ -399,5 +419,4 @@
Sanskrit ISO-15919 Phonetic (OPTITRANS) keyboard is ISO 15919 romanization input method by a modified version of OPTITRANS and Harvard-Kyoto transliteration systems. +
You can use all the standard ITRANS key sequences plus key + sequences such as the below.
+nk->ṅk, nkh->ṅkh, ng->ṅg, ngh->ṅgh + nch->ñc, nCh->ñch, nc->ñc, nC->ñch, nchh->ñch, + nj->ñj, njh->ñjh, nT->ṇṭ, nTh->ṇṭh, nD->ṇḍ, nDh->ṇḍh + c->c, C->ch, z->z, S->ṣ, jn->jñ, R->r̥
+Examples: Type saMskRta for saṃskṛta.
The following table shows the English letters to type to get ISO 15919 letters. e.g. type k for k, ka for ka, R for r̥, RR for r̥̄, LLi for l̥, etc.
+| k | ka | + | kh | Ka/kha | + | g | ga | + | gh | Ga/gha | + | ṅ | ~Na | +
| c | ca/cha | + | ch | Ca/Cha | + | j | ja | + | jh | Ja/jha | + | ñ | ~na | +
| ṭ | Ta | + | ṭh | Tha | + | ḍ | Da | + | ḍh | Dha | + | ṇ | Na | +
| t | ta | + | th | tha | + | d | da | + | dh | dha | + | n | na | +
| p | pa | + | ph | pha | + | b | ba | + | bh | bha | + | m | ma | +
| y | ya | + | r | ra | + | l | la | + | ḷ | La | + | v | va/wa | +
| ś | sha | + | ṣ | Sa/Sha | + | s | sa | + | h | ha | + | k | k | +
| kṣ | xa/kSa | + | ṛ | .r | +ḻ | LH | +z | z | +f | f | +
In the following table, vowels on their own and vowels combined with the +consonant 'k' are shown in OPTITRANS transliteration scheme on the top two rows. +The third row shows ISO 15919 vowels. The fourth row shows the vowel combined +with the consonant 'k'. 'ka' needs no special key sequence, as the vowel 'a' +is simply typed after the consonant.
+Unlike the Indic-script versions of this keyboard, every key sequence below +directly produces complete Latin letters; there are no bare vowel signs.
+| a | +aa/A | +i | +ii/I | +u | +uu/U | +R | +RR | +LL^i | +LL^I | +e | +ai | +o | +Au/aau | +||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| a | ka | +aa | kA | +i | ki | +ii | kI | +u | ku | +uu | kU | +R | kR | +RR | kRR | +LLi | kLLi | +LLI | kLLI | +e | ke | +ai | kai | +o | ko | +au | kau | +
| a | a | +ā | ā | +i | i | +ī | ī | +u | u | +ū | ū | +r̥ | r̥ | +r̥̄ | r̥̄ | +l̥ | l̥ | +l̥̄ | l̥̄ | +ē | ē | +ai | ai | +ō | ō | +au | au | +
| a | ka | +ā | kā | +i | ki | +ī | kī | +u | ku | +ū | kū | +r̥ | kr̥ | +r̥̄ | kr̥̄ | +l̥ | kl̥ | +l̥̄ | kl̥̄ | +ē | kē | +ai | kai | +ō | kō | +au | kau | +
The following table shows the same consonants again, each with the inherent vowel a. +
| k | ka | + | kh | Ka/kha | + | g | ga | + | gh | Ga/gha | + | ṅ | ~Na | +
| c | ca/cha | + | ch | Ca/Cha | + | j | ja | + | jh | Ja/jha | + | ñ | ~na | +
| ṭ | Ta | + | ṭh | Tha | + | ḍ | Da | + | ḍh | Dha | + | ṇ | Na | +
| t | ta | + | th | tha | + | d | da | + | dh | dha | + | n | na | +
| p | pa | + | ph | pha | + | b | ba | + | bh | bha | + | m | ma | +
| y | ya | + | r | ra | + | l | la | + | ḷ | La | + | v | va/wa | +
| ś | sha | + | ṣ | Sa/Sha | + | s | sa | + | h | ha | + | k | k | +
| kṣ | xa/kSa | + | ṛ | .r | +ḻ | LH | +z | z | +f | f | +
Nukta loans of Perso-Arabic origin are typed with a leading .; Y also has a bare key. Output is Romanized (ISO 15919).
+| q | .k | + | ġ | .g | + | z | .j | + | ṛ | .D / .r | + | ẏ | .y / Y | + |
Arranged with the vowels are two consonantal diacritics, the final nasal anusvāra ṃ +M and the final fricative visarga ḥ H (called aṃ and aḥ). +Another diacritic used in transcribing other languages is the +candrabindu/anunāsika m̐ .N (am̐). These consonantal diacritics follow the +vowel signs including the implicit `a`. The following table shows consonant `k` followed by +various vowels and the consonantal diacritics ṃ and ḥ. + +
| + | ka | +kA | +ki | +kI | +ku | +kU | +kR | +kRR | +kLLi | +kLLI | +kai/kE | +kAi | +kau/kO | +kAu | +
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| M | +kṃ | +kāṃ | +kiṃ | +kīṃ | +kuṃ | +kūṃ | +kr̥ṃ | +kr̥̄ṃ | +kl̥ṃ | +kl̥̄ṃ | +kēṃ | +kaiṃ | +kōṃ | +kauṃ | +
| H | +kḥ | +kāḥ | +kiḥ | +kīḥ | +kuḥ | +kūḥ | +kr̥ḥ | +kr̥̄ḥ | +kl̥ḥ | +kl̥̄ḥ | +kēḥ | +kaiḥ | +kōḥ | +kauḥ | +
| .N | +km̐ | +kām̐ | +kim̐ | +kīm̐ | +kum̐ | +kūm̐ | +kr̥m̐ | +kr̥̄m̐ | +kl̥m̐ | +kl̥̄m̐ | +kēm̐ | +kaim̐ | +kōm̐ | +kaum̐ | +
There are no conjuncts in romanization: k t +simply produces kt. + +
Romanization has no halanta to mark, so the .h sequence from the +Indic-script versions does nothing special here: it produces the literal text +.h.
+ +| Key | +Output Character | +Comment | +
|---|---|---|
| ... | ॰ | Devanagari Abbreviation Sign |
| .. | । | DanDaa |
| ,. | ॥ | Double DanDaa |
| -- | – | En Dash |
| --- | — | Em Dash |
| Key | +Output Character | +Comment | +
|---|---|---|
| OM | ōṁ | OM |
| .a | ’ | AVAGRAHA |
| Key | +Output Character | +Comment | +
|---|---|---|
| !! | ́ | COMBINING ACUTE ACCENT (UDATTA) |
| ''' | ̋ | COMBINING DOUBLE ACUTE (SVATANTRA SVARITA, approximate) |
| _ | ̀ | COMBINING GRAVE ACCENT (ANUDATTA) |
| pH | ḫ | VEDIC SIGN UPADHMANIYA |
| kH | ẖ | VEDIC SIGN JIHVAMULIYA |
| '' | ́ | COMBINING ACUTE ACCENT (UDATTA) |
Kannada Sanskrit Phonetic (OPTITRANS) keyboard is kannaDa-sanskrit input method by a modified version of OPTITRANS and Harvard-Kyoto transliteration systems. +
You can use all the standard ITRANS key sequences plus key + sequences such as the below.
+nk->ಙ್ಕ್, nkh->ಙ್ಖ್, ng->ಙ್ಗ್, ngh->ಙ್ಘ್ + nch->ಞ್ಚ್, nCh->ಞ್ಛ್, nc->ಞ್ಚ್, nC->ಞ್ಛ್, nchh->ಞ್ಛ್, + nj->ಞ್ಜ್, njh->ಞ್ಝ್, nT->ಣ್ಟ್, nTh->ಣ್ಠ್, nD->ಣ್ಡ್, nDh->ಣ್ಢ್ + c->ಚ್, C->ಛ್, z->ಜ಼್, S->ಷ್, jn->ಜ್ಞ್, R->ಋ
+Examples: Type saMskRta for ಸಂಸ್ಕೃತ.
The following table shows the English letters to type to get Kannada consonants. e.g. type k for ಕ್, ka for ಕ, R for ಋ, RR for ೠ, LLi for ಌ, etc.
+| ಕ | ka | + | ಖ | Ka/kha | + | ಗ | ga | + | ಘ | Ga/gha | + | ಙ | ~Na | +
| ಚ | ca/cha | + | ಛ | Ca/Cha | + | ಜ | ja | + | ಝ | Ja/jha | + | ಞ | ~na | +
| ಟ | Ta | + | ಠ | Tha | + | ಡ | Da | + | ಢ | Dha | + | ಣ | Na | +
| ತ | ta | + | ಥ | tha | + | ದ | da | + | ಧ | dha | + | ನ | na | +
| ಪ | pa | + | ಫ | pha | + | ಬ | ba | + | ಭ | bha | + | ಮ | ma | +
| ಯ | ya | + | ರ | ra | + | ಲ | la | + | ಳ | La | + | ವ | va/wa | +
| ಶ | sha | + | ಷ | Sa/Sha | + | ಸ | sa | + | ಹ | ha | + | ಕ್ | k | +
| ಕ್ಷ | xa/kSa | + | ಱ್ | rH | +ೞ್ | LH | +ಜ಼್ | z | +ಫ಼್ | F | +
In the following table, independent vowels, dependent vowel signs and vowel signs +combined with the consonant 'k' are shown in OPTITRANS Sanskrit Pre-Vedic transliteration +scheme on the top two rows. The third row shows Kannada Vowels in their independent +form on the left and their corresponding dependent form (maatraa or vowel sign) on the +right. The fourth row shows the vowel sign combined with the consonant 'k' in +Kannada. 'ka' is without any added vowel sign, where the vowel 'a' is inherent.
+If there is a need to type ONLY the vowel signs, it can be done + using `.` instead of a consonant. e.g. .A will output ಾ, .Ai will output ೈ.
+| a | +aa/A | +i | +ii/I | +u | +uu/U | +R | +RR | +LL^i | +LL^I | +e | +ai | +o | +Au/aau | +||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| a | ka | +aa | kA | +i | ki | +ii | kI | +u | ku | +uu | kU | +R | kR | +RR | kRR | +LLi | kLLi | +LLI | kLLI | +e | ke | +ai | kai | +o | ko | +au | kau | +
| ಅ | + | ಆ | ಾ | +ಇ | ಿ | +ಈ | ೀ | +ಉ | ು | +ಊ | ೂ | +ಋ | ೃ | +ೠ | ೄ | +ಌ | ೢ | +ೡ | ೣ | +ಏ | ೇ | +ಐ | ೈ | +ಓ | ೋ | +ಔ | ೌ | +
| ಕ | +ಆ | ಕಾ | +ಇ | ಕಿ | +ಈ | ಕೀ | +ಉ | ಕು | +ಊ | ಕೂ | +ಋ | ಕೃ | +ೠ | ಕೄ | +ಌ | ಕೢ | +ೡ | ಕೣ | +ಏ | ಕೇ | +ಐ | ಕೈ | +ಓ | ಕೋ | +ಔ | ಕೌ | +|
The following table shows additional vowel signs used in Kannada script by other languages. +
| ಕ | ka | + | ಖ | Ka/kha | + | ಗ | ga | + | ಘ | Ga/gha | + | ಙ | ~Na | +
| ಚ | ca/cha | + | ಛ | Ca/Cha | + | ಜ | ja | + | ಝ | Ja/jha | + | ಞ | ~na | +
| ಟ | Ta | + | ಠ | Tha | + | ಡ | Da | + | ಢ | Dha | + | ಣ | Na | +
| ತ | ta | + | ಥ | tha | + | ದ | da | + | ಧ | dha | + | ನ | na | +
| ಪ | pa | + | ಫ | pha | + | ಬ | ba | + | ಭ | bha | + | ಮ | ma | +
| ಯ | ya | + | ರ | ra | + | ಲ | la | + | ಳ | La | + | ವ | va/wa | +
| ಶ | sha | + | ಷ | Sa/Sha | + | ಸ | sa | + | ಹ | ha | + | ಕ್ | k | +
| ಕ್ಷ | xa/kSa | + | ಱ್ | rH | +ೞ್ | LH | +ಜ಼್ | z | +ಫ಼್ | F | +
Nukta (಼) letters for Perso-Arabic loans, plus the Tamil ಱ್, are typed with a leading .. A few also have a bare key. As elsewhere, the forms below are halanta (add a vowel key for the signed form).
+| ಕ಼್ | .k | + | ಖ಼್ | .K | + | ಗ಼್ | .g | + | ಜ಼್ | .j / z | + | ಡ಼್ | .D | + |
| ಯ಼್ | .y / Y | + | ಫ಼್ | f | + | ಱ್ | .r | + |
Arranged with the vowels are two consonantal diacritics, the final nasal anusvāra ಂ +M and the final fricative visarga ಃ H (called ಅಂ aṃ and ಅಃ aḥ). +Another diacritic used in other languages written in Kannada script is the +candrabindu/anunāsika ಁ MM (ಅಁ). These consonantal diacritics follow the +vowel signs including the implicit `a`. The following table shows consonant `k` followed by +various dependent vowel signs and consonantal diacritics ಂ and ಃ. + +
| + | ka | +kA | +ki | +kI | +ku | +kU | +kR | +kRR | +kLLi | +kLLI | +kai/kE | +kAi | +kau/kO | +kAu | +
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| M | +ಕಂ | +ಕಾಂ | +ಕಿಂ | +ಕೀಂ | +ಕುಂ | +ಕೂಂ | +ಕೃಂ | +ಕೄಂ | +ಕೢಂ | +ಕೣಂ | +ಕೇಂ | +ಕೈಂ | +ಕೋಂ | +ಕೌಂ | +
| H | +ಕಃ | +ಕಾಃ | +ಕಿಃ | +ಕೀಃ | +ಕುಃ | +ಕೂಃ | +ಕೃಃ | +ಕೄಃ | +ಕೢಃ | +ಕೣಃ | +ಕೇಃ | +ಕೈಃ | +ಕೋಃ | +ಕೌಃ | +
| .N | +ಕಁ | +ಕಾಁ | +ಕಿಁ | +ಕೀಁ | +ಕುಁ | +ಕೂಁ | +ಕೃಁ | +ಕೄಁ | +ಕೢಁ | +ಕೣಁ | +ಕೇಁ | +ಕೈಁ | +ಕೋಁ | +ಕೌಁ | +
Consonant conjuncts are automatically formed, e.g. k t +produces ಕ್ತ್. + +
To force an explicit virama at end of word, use .h e.g. k +t .h space produces ಕ್ತ್ .
+ +| Key | +Output Character | +Comment | +
|---|---|---|
| ... | ॰ | Devanagari Abbreviation Sign |
| .. | । | DanDaa |
| ,. | ॥ | Double DanDaa |
| -- | – | En Dash |
| --- | — | Em Dash |
| Key | +Output Character | +Comment | +
|---|---|---|
| OM | ಓಂ | DEVANAGARI OM SIGN |
| .a | ಽ | AVAGRAHA |
| Key | +Output Character | +Comment | +
|---|---|---|
| !!' | ᳚ | VEDIC TONE SVARITA |
| '''' | ᳙ | VEDIC TONE SVATANTRA SVARITA |
| _ | ॒ | DEVANAGARI STRESS SIGN ANUDATTA |
| pH | ೲ | VEDIC SIGN UPADHMANIYA |
| '' | ᳓ | VEDIC SIGN NIHSHVASA (also used for udAtta) |
Tamil Subscripted Sanskrit Phonetic (OPTITRANS) keyboard is Tamil-subscripted Sanskrit input method by a modified version of OPTITRANS and Harvard-Kyoto transliteration systems (see tamil_subscripted.toml). +
You can use all the standard ITRANS key sequences plus key + sequences such as the below.
+nk->ங்க், nkh->ங்க்₂, ng->ங்க்₃, ngh->ங்க்₄ + nch->ஞ்ச், nCh->ஞ்ச்₂, nc->ஞ்ச், nC->ஞ்ச்₂, nchh->ஞ்ச்₂, + nj->ஞ்ஜ், njh->ஞ்ஜ்₂, nT->ண்ட், nTh->ண்ட்₂, nD->ண்ட்₃, nDh->ண்ட்₄ + c->ச், C->ச்₂, z->ஃ₂ஜ், S->ஷ், jn->ஜ்ஞ், R->ரு₂
+Examples: Type saMskRta for ஸம்₂ஸ்க்ரு₂த.
The following table shows the English letters to type to get Tamil consonants. e.g. type k for க், ka for க, R for ரு₂, RR for ரூ₂, LLi for லு₂, etc.
+| க் | ka | + | க்₂ | Ka/kha | + | க்₃ | ga | + | க்₄ | Ga/gha | + | ங | ~Na | +
| ச் | ca/cha | + | ச்₂ | Ca/Cha | + | ஜ் | ja | + | ஜ்₂ | Ja/jha | + | ஞ | ~na | +
| ட் | Ta | + | ட்₂ | Tha | + | ட்₃ | Da | + | ட்₄ | Dha | + | ண | Na | +
| த் | ta | + | த்₂ | tha | + | த்₃ | da | + | த்₄ | dha | + | ந | na | +
| ப் | pa | + | ப்₂ | pha | + | ப்₃ | ba | + | ப்₄ | bha | + | ம | ma | +
| ய | ya | + | ர | ra | + | ல | la | + | ள | La | + | வ | va/wa | +
| ஶ | sha | + | ஷ | Sa/Sha | + | ஸ | sa | + | ஹ | ha | + | க் | k | +
| க்ஷ | xa/kSa | + | ற் | rH | +ழ் | LH | +ஃ₂ஜ் | z | +ஃ₂ப் | f | +
In the following table, vowels on their own and vowels combined with the +consonant 'k' are shown in OPTITRANS transliteration scheme on the top two rows. +The third row shows Tamil vowels. The fourth row shows the vowel combined +with the consonant 'k'. 'ka' needs no special key sequence, as the vowel 'a' +is simply typed after the consonant.
+Aspirated and voiced consonants (kha, gha and the like) carry subscript +numerals that move to the end of the akshara when vowels are added: +e.g. g e produces கெ₃.
+| a | +aa/A | +i | +ii/I | +u | +uu/U | +R | +RR | +LL^i | +LL^I | +e | +ai | +o | +Au/aau | +||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| a | ka | +aa | kA | +i | ki | +ii | kI | +u | ku | +uu | kU | +R | kR | +RR | kRR | +LLi | kLLi | +LLI | kLLI | +e | ke | +ai | kai | +o | ko | +au | kau | +
| அ | + | ஆ | ா | +இ | ி | +ஈ | ீ | +உ | ு | +ஊ | ூ | +ரு₂ | ்ரு₂ | +ரூ₂ | ்ரூ₂ | +லு₂ | ்லு₂ | +லூ₂ | ்லூ₂ | +ஏ | ே | +ஐ | ை | +ஓ | ோ | +ஔ | ௌ | +
| க | +ஆ | கா | +இ | கி | +ஈ | கீ | +உ | கு | +ஊ | கூ | +ரு₂ | க்ரு₂ | +ரூ₂ | க்ரூ₂ | +லு₂ | க்லு₂ | +லூ₂ | க்லூ₂ | +ஏ | கே | +ஐ | கை | +ஓ | கோ | +ஔ | கௌ | +|
The following table shows consonants again, each with the inherent vowel a. +
| க | ka | + | க | Ka/kha | + | க | ga | + | க | Ga/gha | + | ங | ~Na | +
| ச | ca/cha | + | ச | Ca/Cha | + | ஜ | ja | + | ஜ | Ja/jha | + | ஞ | ~na | +
| ட | Ta | + | ட | Tha | + | ட | Da | + | ட | Dha | + | ண | Na | +
| த | ta | + | த | tha | + | த | da | + | த | dha | + | ந | na | +
| ப | pa | + | ப | pha | + | ப | ba | + | ப | bha | + | ம | ma | +
| ய | ya | + | ர | ra | + | ல | la | + | ள | La | + | வ | va/wa | +
| ஶ | sha | + | ஷ | Sa/Sha | + | ஸ | sa | + | ஹ | ha | + | க் | k | +
| க்ஷ | xa/kSa | + | ற் | rH | +ழ் | LH | +ஃ₂ஜ் | z | +ஃ₂ப் | f | +
Nukta (़) letters for Perso-Arabic loans, plus the Tamil-specific ற், are typed with a leading .. A few also have a bare key. As elsewhere, the forms below are halanta (add a vowel key for the signed form).
+| ஃ₂க் | .k | + | ஃ₂க்₂ | .K | + | ஃ₂க்₃ | .g | + | ஃ₂ஜ் | .j / z | + | ஃ₂ட்₂ | .D | +
| ஃ₂ட்₃ | .Dh | + | ஃ₂ய் | .y / Y | + | ஃ₂ப் | .ph / f | + | ற் | .r | +
Arranged with the vowels are two consonantal diacritics, the final nasal anusvāra ம்₂ +M and the final fricative visarga ஃ H (called அம்₂ aṃ and அஃ aḥ). +Another diacritic used in transcribing other languages is the +candrabindu/anunāsika ம்₃ .N (அம்₃). These consonantal diacritics follow the +vowel signs including the implicit `a`. The following table shows consonant `k` followed by +various vowels and the consonantal diacritics ம்₂ and ஃ. + +
| + | ka | +kA | +ki | +kI | +ku | +kU | +kR | +kRR | +kLLi | +kLLI | +kai/kE | +kAi | +kau/kO | +kAu | +
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| M | +கம்₂ | +காம்₂ | +கிம்₂ | +கீம்₂ | +கும்₂ | +கூம்₂ | +க்ரு₂ம்₂ | +க்ரூ₂ம்₂ | +க்லு₂ம்₂ | +க்லூ₂ம்₂ | +கேம்₂ | +கைம்₂ | +கோம்₂ | +கௌம்₂ | +
| H | +கஃ | +காஃ | +கிஃ | +கீஃ | +குஃ | +கூஃ | +க்ரு₂ஃ | +க்ரூ₂ஃ | +க்லு₂ஃ | +க்லூ₂ஃ | +கேஃ | +கைஃ | +கோஃ | +கௌஃ | +
| .N | +கம்₃ | +காம்₃ | +கிம்₃ | +கீம்₃ | +கும்₃ | +கூம்₃ | +க்ரு₂ம்₃ | +க்ரூ₂ம்₃ | +க்லு₂ம்₃ | +க்லூ₂ம்₃ | +கேம்₃ | +கைம்₃ | +கோம்₃ | +கௌம்₃ | +
Consonant clusters are automatically formed, e.g. k t +produces க்த். + +
To force an explicit pulli at end of word, use .h e.g. k +t .h space produces க்த்த் .
+ +| Key | +Output Character | +Comment | +
|---|---|---|
| ,. | .. | Double DanDaa |
| -- | – | En Dash |
| --- | — | Em Dash |
| Key | +Output Character | +Comment | +
|---|---|---|
| OM | ௐ | OM |
| .a | (அ) | AVAGRAHA |
| Key | +Output Character | +Comment | +
|---|---|---|
| !! | ॑ | VEDIC SVARITA |
| ''' | ᳙ | VEDIC TONE SVATANTRA SVARITA |
| _ | ॒ | DEVANAGARI STRESS SIGN ANUDATTA |
| pH | ᳶ | VEDIC SIGN UPADHMANIYA |
| kH | ᳵ | VEDIC SIGN JIHVAMULIYA |
| '' | ᳓ | VEDIC SIGN NIHSHVASA (also used for udAtta) |
Telugu Sanskrit Phonetic (OPTITRANS) keyboard is telugu-sanskrit input method by a modified version of OPTITRANS and Harvard-Kyoto transliteration systems. +
You can use all the standard ITRANS key sequences plus key + sequences such as the below.
+nk->ఙ్క్, nkh->ఙ్ఖ్, ng->ఙ్గ్, ngh->ఙ్ఘ్ + nch->ఞ్చ్, nCh->ఞ్ఛ్, nc->ఞ్చ్, nC->ఞ్ఛ్, nchh->ఞ్ఛ్, + nj->ఞ్జ్, njh->ఞ్ఝ్, nT->ణ్ట్, nTh->ణ్ఠ్, nD->ణ్డ్, nDh->ణ్ఢ్ + c->చ్, C->ఛ్, z->జ఼్, S->ష్, jn->జ్ఞ్, R->ఋ
+Examples: Type saMskRta for సంస్కృత.
The following table shows the English letters to type to get Telugu consonants. e.g. type k for క్, ka for క, R for ఋ, RR for ౠ, LLi for ఌ, etc.
+| క | ka | + | ఖ | Ka/kha | + | గ | ga | + | ఘ | Ga/gha | + | ఙ | ~Na | +
| చ | ca/cha | + | ఛ | Ca/Cha | + | జ | ja | + | ఝ | Ja/jha | + | ఞ | ~na | +
| ట | Ta | + | ఠ | Tha | + | డ | Da | + | ఢ | Dha | + | ణ | Na | +
| త | ta | + | థ | tha | + | ద | da | + | ధ | dha | + | న | na | +
| ప | pa | + | ఫ | pha | + | బ | ba | + | భ | bha | + | మ | ma | +
| య | ya | + | ర | ra | + | ల | la | + | ళ | La | + | వ | va/wa | +
| శ | sha | + | ష | Sa/Sha | + | స | sa | + | హ | ha | + | క్ | k | +
| క్ష | xa/kSa | + | ఱ్ | rH | +ఴ్ | LH | +జ఼్ | z | +ఫ఼్ | F | +
In the following table, independent vowels, dependent vowel signs and vowel signs +combined with the consonant 'k' are shown in OPTITRANS Sanskrit Pre-Vedic transliteration +scheme on the top two rows. The third row shows Telugu Vowels in their independent +form on the left and their corresponding dependent form (maatraa or vowel sign) on the +right. The fourth row shows the vowel sign combined with the consonant 'k' in +Telugu. 'ka' is without any added vowel sign, where the vowel 'a' is inherent.
+If there is a need to type ONLY the vowel signs, it can be done + using `.` instead of a consonant. e.g. .A will output ా, .Ai will output ై.
+| a | +aa/A | +i | +ii/I | +u | +uu/U | +R | +RR | +LL^i | +LL^I | +e | +ai | +o | +Au/aau | +||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| a | ka | +aa | kA | +i | ki | +ii | kI | +u | ku | +uu | kU | +R | kR | +RR | kRR | +LLi | kLLi | +LLI | kLLI | +e | ke | +ai | kai | +o | ko | +au | kau | +
| అ | + | ఆ | ా | +ఇ | ి | +ఈ | ీ | +ఉ | ు | +ఊ | ూ | +ఋ | ృ | +ౠ | ౄ | +ఌ | ౢ | +ౡ | ౣ | +ఏ | ే | +ఐ | ై | +ఓ | ో | +ఔ | ౌ | +
| క | +ఆ | కా | +ఇ | కి | +ఈ | కీ | +ఉ | కు | +ఊ | కూ | +ఋ | కృ | +ౠ | కౄ | +ఌ | కౢ | +ౡ | కౣ | +ఏ | కే | +ఐ | కై | +ఓ | కో | +ఔ | కౌ | +|
The following table shows additional vowel signs used in Telugu script by other languages. +
| క | ka | + | ఖ | Ka/kha | + | గ | ga | + | ఘ | Ga/gha | + | ఙ | ~Na | +
| చ | ca/cha | + | ఛ | Ca/Cha | + | జ | ja | + | ఝ | Ja/jha | + | ఞ | ~na | +
| ట | Ta | + | ఠ | Tha | + | డ | Da | + | ఢ | Dha | + | ణ | Na | +
| త | ta | + | థ | tha | + | ద | da | + | ధ | dha | + | న | na | +
| ప | pa | + | ఫ | pha | + | బ | ba | + | భ | bha | + | మ | ma | +
| య | ya | + | ర | ra | + | ల | la | + | ళ | La | + | వ | va/wa | +
| శ | sha | + | ష | Sa/Sha | + | స | sa | + | హ | ha | + | క్ | k | +
| క్ష | xa/kSa | + | ఱ్ | rH | +ఴ్ | LH | +జ఼్ | z | +ఫ఼్ | F | +
Nukta (఼) letters for Perso-Arabic loans, plus the Tamil ఱ్, are typed with a leading .. A few also have a bare key. As elsewhere, the forms below are halanta (add a vowel key for the signed form).
+| క఼్ | .k | + | ఖ఼్ | .K | + | గ఼్ | .g | + | జ఼్ | .j / z | + | డ఼్ | .D | + |
| య఼్ | .y / Y | + | ఫ఼్ | f | + | ఱ్ | .r | + |
Arranged with the vowels are two consonantal diacritics, the final nasal anusvāra ం +M and the final fricative visarga ః H (called అం aṃ and అః aḥ). +Another diacritic used in other languages written in Telugu script is the +candrabindu/anunāsika ఁ MM (అఁ). These consonantal diacritics follow the +vowel signs including the implicit `a`. The following table shows consonant `k` followed by +various dependent vowel signs and consonantal diacritics ం and ః. + +
| + | ka | +kA | +ki | +kI | +ku | +kU | +kR | +kRR | +kLLi | +kLLI | +kai/kE | +kAi | +kau/kO | +kAu | +
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| M | +కం | +కాం | +కిం | +కీం | +కుం | +కూం | +కృం | +కౄం | +కౢం | +కౣం | +కేం | +కైం | +కోం | +కౌం | +
| H | +కః | +కాః | +కిః | +కీః | +కుః | +కూః | +కృః | +కౄః | +కౢః | +కౣః | +కేః | +కైః | +కోః | +కౌః | +
| .N | +కఁ | +కాఁ | +కిఁ | +కీఁ | +కుఁ | +కూఁ | +కృఁ | +కౄఁ | +కౢఁ | +కౣఁ | +కేఁ | +కైఁ | +కోఁ | +కౌఁ | +
Consonant conjuncts are automatically formed, e.g. k t +produces క్త్. + +
To force an explicit virama at end of word, use .h e.g. k +t .h space produces క్త్ .
+ +| Key | +Output Character | +Comment | +
|---|---|---|
| ... | ॰ | Devanagari Abbreviation Sign |
| .. | । | DanDaa |
| ,. | ॥ | Double DanDaa |
| -- | – | En Dash |
| --- | — | Em Dash |
| Key | +Output Character | +Comment | +
|---|---|---|
| OM | ఓం | DEVANAGARI OM SIGN |
| .a | ఽ | AVAGRAHA |
| Key | +Output Character | +Comment | +
|---|---|---|
| !!' | ᳚ | VEDIC TONE SVARITA |
| '''' | ᳙ | VEDIC TONE SVATANTRA SVARITA |
| _ | ॒ | DEVANAGARI STRESS SIGN ANUDATTA |
| pH | ᳶ | VEDIC SIGN UPADHMANIYA |
| '' | ᳓ | VEDIC SIGN NIHSHVASA (also used for udAtta) |
+ Romania keyboard for Romanian language limba română. +
+This is an innovative Romanian keyboard for phone and computer.
+This keyboard can automatically remain the "î" letter in the beginning and the end of a word and transfer the "î" letter to "â" letter in the middle of a sentence.
+You can type "î" key and get "â" automatically, depending on the content.
+You can still type "â" individually as usual
+You can still type "î" specifically by Alt + I. In this way, the keyboard will remain the spelling with "î" letter.
+You can type "ă" "â" "î" "ș" "ț" by long-pressing the "a" "i" "s" "t" key on the phone and pad as usual.
+ +ˇc will produce č (available on cCdDeElLnNrRsStTzZ).
+^a will produce â (available on aAeEiIoOuU).
+˘a will produce ă (available on aA).
+°u will produce ů (available on uU).
+˛a will produce ą (available on aAeE).
+`a will produce à (available on aAeEiIoOuU).
+·z will produce ż (available on zZ).
+´a will produce á (available on aAcCeEiIlLnNoOrRsSuUyYzZ).
+˝o will produce ő (available on oOuU).
+¨a will produce ä (available on aAeEiIoOuUyY).
+¸c will produce ç (available on cCsStT).
+ +© cathaylab
\ No newline at end of file diff --git a/keyboard/sil_moore/2.1.3/sil_moore.php b/keyboard/sil_moore/2.1.3/sil_moore.php new file mode 100644 index 000000000..49e02182f --- /dev/null +++ b/keyboard/sil_moore/2.1.3/sil_moore.php @@ -0,0 +1,82 @@ + + +Gʋndg kãngã naana moor gʋls-biis la gom-biis yĩnga.
+B yag-a-la fãrendã gʋndg zugu.
+Moorã gʋndg mamseg lagma teed a taab n be kaane. Rẽ, bɩ-y pak mamsegã n bãng gʋls-biisã zĩisi.
+Gʋndgã naagda ne Charis n tʋmdẽ.
+Charis gʋls-wʋmdɩ wã lagma ne teed a taabã n be ka. Y tõe n paama yaolem gʋls-wʋmdɩ tilgẽ ka : +http://software.sil.org/charis.
+ + +Ce clavier est destiné à la saisie et à l’affichage de textes/documents en langue mooré. Il est construit +à partir du clavier AZERTY français. Une infographie incluse dans ce pack permet de repérer les différents +emplacements des caractères spécifiques au mooré.
+ +Ce clavier doit être utilisé conjointement avec une police de caractères comme Charis.
+ +Les polices Charis sont incluses dans ce pack. Vous pouvez effectuer des mises à jour +de ces polices de caractères depuis le site http://software.sil.org/charis.
+ +This keyboard is designed for input of the Mooré language. It is based on the French keyboard as used in Burkina + Faso. A visual keyboard is included in this package; please refer to it for placement of specific characters.
+ +This keyboard should be used with a font such as Charis. Charis is included in this package, and + updated versions of all these fonts can be downloaded from http://software.sil.org/charis.
+ +