From d8d2c408f5891a5d32001c4a365d1ae3c6dbd913 Mon Sep 17 00:00:00 2001 From: Agustin Moyano <agustinmoyano@theke.io> Date: Wed, 8 May 2019 23:41:43 -0300 Subject: [PATCH] Bug 17178: Add virtual keyboard to advanced cataloguing editor This patch adds Mottie keyboard (https://github.com/Mottie/Keyboard) to advanced editor. To test: 1) Apply patches 2) perl install/data/mysql/updatedatabase.pl 3) Enable EnableAdvancedCatalogingEditor system preference 4) Go to cataloguing and to Advanced editor 5) Click on Keyboard shortcuts SUCCESS => the keyboard shortcut "Ctrl-K" should be displayed, with "Toggle keyboard" as description 6) press Ctrl-K SUCCESS => a virtual keyboard should be displayed, and a new toolbar button labeled "Keyboard layout" should appear. => when you press a letter on both the physical and virtual keyboard, they should be added to the editor. 7) Click on "Keyboard layout" SUCCESS => a modal should appear, where you can filter and select keyboard layouts. => when you select a layout, it should be reflected on the keyboard. => when you close the modal without selecting a layout, it should keep using the previous layout. 8) Sign off Sponsored-by: Round Rock Public Library --- .../lib/keyboard/css/keyboard-basic.min.css | 1 + .../lib/keyboard/css/keyboard-dark.min.css | 1 + .../css/keyboard-previewkeyset.min.css | 1 + .../lib/keyboard/css/keyboard.min.css | 1 + .../js/jquery.keyboard.extension-all.min.js | 5 + ...ery.keyboard.extension-altkeyspopup.min.js | 2 + ...ery.keyboard.extension-autocomplete.min.js | 2 + .../js/jquery.keyboard.extension-caret.min.js | 2 + .../jquery.keyboard.extension-extender.min.js | 2 + .../jquery.keyboard.extension-mobile.min.js | 2 + ...query.keyboard.extension-navigation.min.js | 2 + ...ry.keyboard.extension-previewkeyset.min.js | 2 + .../jquery.keyboard.extension-scramble.min.js | 2 + .../jquery.keyboard.extension-typing.min.js | 2 + .../lib/keyboard/js/jquery.keyboard.js | 3573 +++++++++++++++++ .../lib/keyboard/js/jquery.keyboard.min.js | 2 + .../lib/keyboard/js/jquery.mousewheel.min.js | 2 + .../lib/keyboard/languages/all.min.js | 1 + .../lib/keyboard/layouts/all.min.js | 5 + .../lib/koha/cateditor/marc-editor.js | 78 + .../intranet-tmpl/prog/css/cateditor.css | 12 + .../prog/en/includes/cateditor-ui.inc | 4 + .../prog/en/includes/keyboard_shortcuts.inc | 1 + .../prog/en/modules/cataloguing/editor.tt | 20 + 24 files changed, 3725 insertions(+) create mode 100644 koha-tmpl/intranet-tmpl/lib/keyboard/css/keyboard-basic.min.css create mode 100644 koha-tmpl/intranet-tmpl/lib/keyboard/css/keyboard-dark.min.css create mode 100644 koha-tmpl/intranet-tmpl/lib/keyboard/css/keyboard-previewkeyset.min.css create mode 100644 koha-tmpl/intranet-tmpl/lib/keyboard/css/keyboard.min.css create mode 100644 koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-all.min.js create mode 100644 koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-altkeyspopup.min.js create mode 100644 koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-autocomplete.min.js create mode 100644 koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-caret.min.js create mode 100644 koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-extender.min.js create mode 100644 koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-mobile.min.js create mode 100644 koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-navigation.min.js create mode 100644 koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-previewkeyset.min.js create mode 100644 koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-scramble.min.js create mode 100644 koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-typing.min.js create mode 100644 koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.js create mode 100644 koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.min.js create mode 100644 koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.mousewheel.min.js create mode 100644 koha-tmpl/intranet-tmpl/lib/keyboard/languages/all.min.js create mode 100644 koha-tmpl/intranet-tmpl/lib/keyboard/layouts/all.min.js diff --git a/koha-tmpl/intranet-tmpl/lib/keyboard/css/keyboard-basic.min.css b/koha-tmpl/intranet-tmpl/lib/keyboard/css/keyboard-basic.min.css new file mode 100644 index 0000000000..20567ea16e --- /dev/null +++ b/koha-tmpl/intranet-tmpl/lib/keyboard/css/keyboard-basic.min.css @@ -0,0 +1 @@ +.ui-keyboard{font-size:14px;text-align:center;background:#fefefe;border:1px solid #aaa;padding:4px;width:100%;height:auto;left:0;top:auto;bottom:0;position:fixed;white-space:nowrap;overflow-x:auto;-ms-touch-action:manipulation;touch-action:manipulation}.ui-keyboard-has-focus{z-index:16001}.ui-keyboard-button{border:1px solid #aaa;padding:0 .5em;margin:1px;min-width:3em;height:3em;line-height:3em;vertical-align:top;font-family:Helvetica,Arial,sans-serif;color:#333;text-align:center;border-radius:5px;-webkit-box-shadow:1px 1px 3px 0 rgba(0,0,0,.5);box-shadow:1px 1px 3px 0 rgba(0,0,0,.5);background:#fff;background-image:-webkit-linear-gradient(-90deg,#fff 0,#e3e3e3 100%);background-image:linear-gradient(-90deg,#fff 0,#e3e3e3 100%);cursor:pointer;overflow:hidden;-moz-user-focus:ignore}.ui-keyboard-button:not([disabled]):hover{background:#eee;background-image:-webkit-linear-gradient(-90deg,#f2f2f2 0,#d3d3d3 100%);background-image:linear-gradient(-90deg,#f2f2f2 0,#d3d3d3 100%)}.ui-keyboard-button:not([disabled]):active{background:#ddd;background-image:-webkit-linear-gradient(-90deg,#e5e5e5 0,#d3d3d3 100%);background-image:linear-gradient(-90deg,#e5e5e5 0,#d3d3d3 100%)}.ui-keyboard-button span{display:block;width:100%;font-size:1.2em;text-align:center}.ui-keyboard-actionkey:not(.ui-keyboard-dec):not(.ui-keyboard-combo){min-width:6em}.ui-keyboard-space{width:15em}.ui-keyboard-actionkey:not(.ui-keyboard-dec):not(.ui-keyboard-combo) span{font-size:.8em;position:relative;top:-1em;left:-1.6em}.ui-keyboard-placeholder{color:#888}.ui-keyboard-nokeyboard{color:#888;border-color:#888}.ui-keyboard-spacer{display:inline-block;width:1px;height:0;cursor:default}.ui-keyboard-LRM span,.ui-keyboard-NBSP span,.ui-keyboard-RLM span,.ui-keyboard-ZWJ span,.ui-keyboard-ZWNJ span,.ui-keyboard-ZWSP span{font-size:.5em;line-height:1.5em;white-space:normal}.ui-keyboard-button.ui-keyboard-combo.ui-state-default{-webkit-box-shadow:1px 1px 3px 0 rgba(213,133,18,.5);box-shadow:1px 1px 3px 0 rgba(213,133,18,.5);border-color:#d58512}.ui-keyboard-button.ui-keyboard-combo.ui-state-active{-webkit-box-shadow:1px 1px 3px 0 rgba(38,154,188,.5);box-shadow:1px 1px 3px 0 rgba(38,154,188,.5);border-color:#269abc}button.ui-keyboard-accept.ui-keyboard-valid-input{-webkit-box-shadow:1px 1px 3px 0 rgba(57,132,57,.5);box-shadow:1px 1px 3px 0 rgba(57,132,57,.5);border-color:#398439}button.ui-keyboard-accept.ui-keyboard-valid-input:not([disabled]):hover{border-color:#4cae4c}button.ui-keyboard-accept.ui-keyboard-invalid-input{-webkit-box-shadow:1px 1px 3px 0 rgba(172,41,37,.5);box-shadow:1px 1px 3px 0 rgba(172,41,37,.5);border-color:#ac2925}button.ui-keyboard-accept.ui-keyboard-invalid-input:not([disabled]):hover{border-color:#d43f3a}button.ui-keyboard-toggle span{width:.9em;height:.9em;display:inline-block;background-repeat:no-repeat;background-position:center center;background-size:contain;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMCIgaGVpZ2h0PSIxMCIgZmlsbD0iIzExMSI+PHBhdGggZD0iTTguNyw0LjRINy41SDUuMHYtMS45YzAtMS40LTEuMS0yLjUtMi41LTIuNWMtMS40LDAtMi41LDEuMS0yLjUsMi41djEuOWgxLjIgdi0xLjljMC0wLjcsMC42LTEuMiwxLjItMS4yczEuMiwwLjYsMS4yLDEuMnYxLjljLTAuNywwLTEuMiwwLjYtMS4yLDEuMlY4LjggYzAsMC43LDAuNiwxLjIsMS4yLDEuMmg1LjBDOS40LDEwLDEwLDkuNCwxMCw4LjhWNS42QzEwLDUuMCw5LjQsNC40LDguOCw0LjR6IE02LjYsNy40djEuMCBjMCwwLjItMC4xLDAuMy0wLjMsMC4zUzYuMCw4LjYsNi4wLDguNFY3LjRjLTAuMi0wLjEtMC4zLTAuMy0wLjMtMC41YzAtMC4zLDAuMy0wLjYsMC42LTAuNiBTNi45LDYuNiw2LjksNi45QzYuOSw3LjEsNi44LDcuMyw2LjYsNy40eiIvPjwvc3ZnPg==)}button.ui-keyboard-toggle.ui-keyboard-disabled span{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMCIgaGVpZ2h0PSIxMCIgZmlsbD0iIzExMSI+PHBhdGggZD0iTTcuNCA0LjRWMi41YzAtMS40LTEuMS0yLjUtMi41LTIuNWMtMS40IDAtMi41IDEuMS0yLjUgMi41djEuOSBjLTAuNyAwLTEuMiAwLjUtMS4yIDEuMnYzLjFDMS4zIDkuNCAxLjggMTAgMi41IDEwaDQuOWMwLjcgMCAxLjItMC42IDEuMi0xLjJWNS42IEM4LjcgNC45IDguMSA0LjQgNy40IDQuNHogTTUuMyA3LjR2MS4wYzAgMC4yLTAuMSAwLjMtMC4zIDAuM2MtMC4yIDAtMC4zLTAuMS0wLjMtMC4zVjcuNCBjLTAuMi0wLjEtMC4zLTAuMy0wLjMtMC41YzAtMC4zIDAuMy0wLjYgMC42LTAuNmMwLjMgMCAwLjYgMC4zIDAuNiAwLjYgQzUuNiA3LjEgNS41IDcuMyA1LjMgNy40eiBNNi4yIDQuNEgzLjdWMi41YzAtMC43IDAuNS0xLjIgMS4yLTEuMmMwLjcgMCAxLjIgMC42IDEuMiAxLjIgVjQuNHoiLz48L3N2Zz4=)}.ui-keyboard.ui-keyboard-disabled button:not(.ui-keyboard-toggle),.ui-keyboard.ui-keyboard-disabled input{opacity:.5}.ui-keyboard-overlay{position:absolute;top:0;left:0;bottom:0;right:0;background:rgba(238,238,238,.5)}.ui-keyboard-popup{display:inline-block;max-width:22em}.ui-keyboard.ui-keyboard-popup-open .ui-keyboard-keyset .ui-keyboard-button{pointer-events:none}.ui-keyboard-caret{background:#c00;width:1px;margin-top:3px}div.ui-keyboard-extender{margin-left:5px;margin-right:10px}button.ui-keyboard-extender span{width:.9em;height:.9em;display:inline-block;margin-bottom:3px;background-repeat:no-repeat;background-position:center center;background-size:contain;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgc3R5bGU9ImZpbGw6IzExMSI+PGc+PHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6IzExMSIgZD0iTSAwLjUsNC41IDE1LjUsNC41IDE1LjUsMTUuNSAwLjUsMTUuNSBaIj48L3BhdGg+PHJlY3Qgd2lkdGg9IjIiIGhlaWdodD0iMiIgeD0iMiIgeT0iNiI+PC9yZWN0PjxyZWN0IHdpZHRoPSIyIiBoZWlnaHQ9IjIiIHg9IjUiIHk9IjYiPjwvcmVjdD48cmVjdCB3aWR0aD0iMiIgaGVpZ2h0PSIyIiB4PSI4IiB5PSI2Ij48L3JlY3Q+PHBhdGggZD0ibSAxMSw2IDMsMCAwLDUgLTIsMCAwLC0zIC0xLDAgeiI+PC9wYXRoPjxyZWN0IHdpZHRoPSIyIiBoZWlnaHQ9IjIiIHg9IjEyIiB5PSIxMiI+PC9yZWN0PjxyZWN0IHdpZHRoPSI2IiBoZWlnaHQ9IjIiIHg9IjUiIHk9IjEyIj48L3JlY3Q+PHJlY3Qgd2lkdGg9IjIiIGhlaWdodD0iMiIgeD0iOSIgeT0iOSI+PC9yZWN0PjxyZWN0IHdpZHRoPSIyIiBoZWlnaHQ9IjIiIHg9IjYiIHk9IjkiPjwvcmVjdD48cmVjdCB3aWR0aD0iMiIgaGVpZ2h0PSIyIiB4PSIyIiB5PSIxMiI+PC9yZWN0PjxyZWN0IHdpZHRoPSIzIiBoZWlnaHQ9IjIiIHg9IjIiIHk9IjkiPjwvcmVjdD48L2c+PC9zdmc+)} \ No newline at end of file diff --git a/koha-tmpl/intranet-tmpl/lib/keyboard/css/keyboard-dark.min.css b/koha-tmpl/intranet-tmpl/lib/keyboard/css/keyboard-dark.min.css new file mode 100644 index 0000000000..b8b451e4de --- /dev/null +++ b/koha-tmpl/intranet-tmpl/lib/keyboard/css/keyboard-dark.min.css @@ -0,0 +1 @@ +.ui-keyboard{font-size:14px;text-align:center;background:#282828;border:1px solid #484848;padding:4px;width:100%;height:auto;left:0;top:auto;bottom:0;position:fixed;white-space:nowrap;overflow-x:auto;-ms-touch-action:manipulation;touch-action:manipulation}.ui-keyboard-has-focus{z-index:16001}.ui-keyboard-button{border:1px solid #404040;padding:0 .5em;margin:1px;min-width:3em;height:3em;line-height:3em;vertical-align:top;font-family:Helvetica,Arial,sans-serif;color:#eee;text-align:center;border-radius:5px;-webkit-box-shadow:1px 1px 3px 0 rgba(0,0,0,.5);box-shadow:1px 1px 3px 0 rgba(0,0,0,.5);background:#444;background-image:-webkit-linear-gradient(-90deg,#444 0,#333 100%);background-image:linear-gradient(-90deg,#444 0,#333 100%);cursor:pointer;overflow:hidden;-moz-user-focus:ignore}.ui-keyboard-button:not([disabled]):hover{background:#eee;background-image:-webkit-linear-gradient(-90deg,#4f4f4f 0,#444 100%);background-image:linear-gradient(-90deg,#4f4f4f 0,#444 100%)}.ui-keyboard-button:not([disabled]):active{background:#ddd;background-image:-webkit-linear-gradient(-90deg,#555 0,#5f5f5f 100%);background-image:linear-gradient(-90deg,#555 0,#5f5f5f 100%)}.ui-keyboard-button span{display:block;width:100%;font-size:1.2em;text-align:center}.ui-keyboard-actionkey:not(.ui-keyboard-dec):not(.ui-keyboard-combo){min-width:6em}.ui-keyboard-space{width:15em}.ui-keyboard-actionkey:not(.ui-keyboard-dec):not(.ui-keyboard-combo) span{font-size:.8em;position:relative;top:-1em;left:-1.6em}.ui-keyboard-placeholder{color:#888}.ui-keyboard-nokeyboard{color:#888;border-color:#888}.ui-keyboard-spacer{display:inline-block;width:1px;height:0;cursor:default}.ui-keyboard-LRM span,.ui-keyboard-NBSP span,.ui-keyboard-RLM span,.ui-keyboard-ZWJ span,.ui-keyboard-ZWNJ span,.ui-keyboard-ZWSP span{font-size:.5em;line-height:1.5em;white-space:normal}.ui-keyboard-button.ui-keyboard-combo.ui-state-default{-webkit-box-shadow:1px 1px 3px 0 rgba(213,133,18,.5);box-shadow:1px 1px 3px 0 rgba(213,133,18,.5);border-color:#d58512}.ui-keyboard-button.ui-keyboard-combo.ui-state-active{-webkit-box-shadow:1px 1px 3px 0 rgba(38,154,188,.5);box-shadow:1px 1px 3px 0 rgba(38,154,188,.5);border-color:#269abc}button.ui-keyboard-accept.ui-keyboard-valid-input{-webkit-box-shadow:1px 1px 3px 0 rgba(57,132,57,.5);box-shadow:1px 1px 3px 0 rgba(57,132,57,.5);border-color:#398439}button.ui-keyboard-accept.ui-keyboard-valid-input:not([disabled]):hover{border-color:#4cae4c}button.ui-keyboard-accept.ui-keyboard-invalid-input{-webkit-box-shadow:1px 1px 3px 0 rgba(172,41,37,.5);box-shadow:1px 1px 3px 0 rgba(172,41,37,.5);border-color:#ac2925}button.ui-keyboard-accept.ui-keyboard-invalid-input:not([disabled]):hover{border-color:#d43f3a}button.ui-keyboard-toggle span{width:.9em;height:.9em;display:inline-block;background-repeat:no-repeat;background-position:center center;background-size:contain;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMCIgaGVpZ2h0PSIxMCIgZmlsbD0iI2VlZSI+PHBhdGggZD0iTTguNyw0LjRINy41SDUuMHYtMS45YzAtMS40LTEuMS0yLjUtMi41LTIuNWMtMS40LDAtMi41LDEuMS0yLjUsMi41djEuOWgxLjIgdi0xLjljMC0wLjcsMC42LTEuMiwxLjItMS4yczEuMiwwLjYsMS4yLDEuMnYxLjljLTAuNywwLTEuMiwwLjYtMS4yLDEuMlY4LjggYzAsMC43LDAuNiwxLjIsMS4yLDEuMmg1LjBDOS40LDEwLDEwLDkuNCwxMCw4LjhWNS42QzEwLDUuMCw5LjQsNC40LDguOCw0LjR6IE02LjYsNy40djEuMCBjMCwwLjItMC4xLDAuMy0wLjMsMC4zUzYuMCw4LjYsNi4wLDguNFY3LjRjLTAuMi0wLjEtMC4zLTAuMy0wLjMtMC41YzAtMC4zLDAuMy0wLjYsMC42LTAuNiBTNi45LDYuNiw2LjksNi45QzYuOSw3LjEsNi44LDcuMyw2LjYsNy40eiIvPjwvc3ZnPg==)}button.ui-keyboard-toggle.ui-keyboard-disabled span{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMCIgaGVpZ2h0PSIxMCIgZmlsbD0iI2VlZSI+PHBhdGggZD0iTTcuNCA0LjRWMi41YzAtMS40LTEuMS0yLjUtMi41LTIuNWMtMS40IDAtMi41IDEuMS0yLjUgMi41djEuOSBjLTAuNyAwLTEuMiAwLjUtMS4yIDEuMnYzLjFDMS4zIDkuNCAxLjggMTAgMi41IDEwaDQuOWMwLjcgMCAxLjItMC42IDEuMi0xLjJWNS42IEM4LjcgNC45IDguMSA0LjQgNy40IDQuNHogTTUuMyA3LjR2MS4wYzAgMC4yLTAuMSAwLjMtMC4zIDAuM2MtMC4yIDAtMC4zLTAuMS0wLjMtMC4zVjcuNCBjLTAuMi0wLjEtMC4zLTAuMy0wLjMtMC41YzAtMC4zIDAuMy0wLjYgMC42LTAuNmMwLjMgMCAwLjYgMC4zIDAuNiAwLjYgQzUuNiA3LjEgNS41IDcuMyA1LjMgNy40eiBNNi4yIDQuNEgzLjdWMi41YzAtMC43IDAuNS0xLjIgMS4yLTEuMmMwLjcgMCAxLjIgMC42IDEuMiAxLjIgVjQuNHoiLz48L3N2Zz4=)}.ui-keyboard.ui-keyboard-disabled button:not(.ui-keyboard-toggle),.ui-keyboard.ui-keyboard-disabled input{opacity:.5}.ui-keyboard-overlay{position:absolute;top:0;left:0;bottom:0;right:0;background:rgba(0,0,0,.5)}.ui-keyboard-popup{display:inline-block;max-width:22em}.ui-keyboard.ui-keyboard-popup-open .ui-keyboard-keyset .ui-keyboard-button{pointer-events:none}.ui-keyboard-caret{background:#c00;width:1px;margin-top:3px}div.ui-keyboard-extender{margin-left:5px;margin-right:10px}button.ui-keyboard-extender span{width:.9em;height:.9em;display:inline-block;margin-bottom:3px;background-repeat:no-repeat;background-position:center center;background-size:contain;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgc3R5bGU9ImZpbGw6I2VlZSI+PGc+PHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6I2VlZSIgZD0iTSAwLjUsNC41IDE1LjUsNC41IDE1LjUsMTUuNSAwLjUsMTUuNSBaIj48L3BhdGg+PHJlY3Qgd2lkdGg9IjIiIGhlaWdodD0iMiIgeD0iMiIgeT0iNiI+PC9yZWN0PjxyZWN0IHdpZHRoPSIyIiBoZWlnaHQ9IjIiIHg9IjUiIHk9IjYiPjwvcmVjdD48cmVjdCB3aWR0aD0iMiIgaGVpZ2h0PSIyIiB4PSI4IiB5PSI2Ij48L3JlY3Q+PHBhdGggZD0ibSAxMSw2IDMsMCAwLDUgLTIsMCAwLC0zIC0xLDAgeiI+PC9wYXRoPjxyZWN0IHdpZHRoPSIyIiBoZWlnaHQ9IjIiIHg9IjEyIiB5PSIxMiI+PC9yZWN0PjxyZWN0IHdpZHRoPSI2IiBoZWlnaHQ9IjIiIHg9IjUiIHk9IjEyIj48L3JlY3Q+PHJlY3Qgd2lkdGg9IjIiIGhlaWdodD0iMiIgeD0iOSIgeT0iOSI+PC9yZWN0PjxyZWN0IHdpZHRoPSIyIiBoZWlnaHQ9IjIiIHg9IjYiIHk9IjkiPjwvcmVjdD48cmVjdCB3aWR0aD0iMiIgaGVpZ2h0PSIyIiB4PSIyIiB5PSIxMiI+PC9yZWN0PjxyZWN0IHdpZHRoPSIzIiBoZWlnaHQ9IjIiIHg9IjIiIHk9IjkiPjwvcmVjdD48L2c+PC9zdmc+)} \ No newline at end of file diff --git a/koha-tmpl/intranet-tmpl/lib/keyboard/css/keyboard-previewkeyset.min.css b/koha-tmpl/intranet-tmpl/lib/keyboard/css/keyboard-previewkeyset.min.css new file mode 100644 index 0000000000..51b843fa95 --- /dev/null +++ b/koha-tmpl/intranet-tmpl/lib/keyboard/css/keyboard-previewkeyset.min.css @@ -0,0 +1 @@ +.ui-keyboard-keyset .ui-keyboard-button{position:relative}.ui-keyboard-keyset-normal .ui-keyboard-button::after{content:attr(data-shift);font-size:.6em;color:#999;position:absolute;top:-1em;left:2px;z-index:200}.ui-keyboard-keyset-shift .ui-keyboard-button::after{content:attr(data-normal);font-size:.6em;color:#999;position:absolute;top:-1em;left:2px;z-index:200}.ui-keyboard-keyset-alt .ui-keyboard-button::after{content:attr(data-alt-shift);font-size:.6em;color:#999;position:absolute;top:-1em;left:2px;z-index:200}.ui-keyboard-keyset-alt-shift .ui-keyboard-button::after{content:attr(data-alt);font-size:.6em;color:#999;position:absolute;top:-1em;left:2px;z-index:200} \ No newline at end of file diff --git a/koha-tmpl/intranet-tmpl/lib/keyboard/css/keyboard.min.css b/koha-tmpl/intranet-tmpl/lib/keyboard/css/keyboard.min.css new file mode 100644 index 0000000000..74e9e951bc --- /dev/null +++ b/koha-tmpl/intranet-tmpl/lib/keyboard/css/keyboard.min.css @@ -0,0 +1 @@ +.ui-keyboard{text-align:center;padding:.3em;position:absolute;left:0;top:0;z-index:16000;-ms-touch-action:manipulation;touch-action:manipulation}.ui-keyboard-has-focus{z-index:16001}.ui-keyboard div{font-size:1.1em}.ui-keyboard[contenteditable]{white-space:pre}.ui-keyboard-button{height:2em;min-width:2em;margin:.1em;cursor:pointer;overflow:hidden;line-height:2em;-moz-user-focus:ignore}.ui-keyboard-button span{padding:0;margin:0;white-space:nowrap;display:inline-block}.ui-keyboard-button-endrow{clear:left}.ui-keyboard-space{width:15em}.ui-keyboard-empty span,.ui-keyboard-space span{font:0/0 a;text-shadow:none;color:transparent}.ui-keyboard-preview-wrapper{text-align:center;position:relative;overflow:hidden}.ui-keyboard-preview{text-align:left;margin:0 0 3px 0;display:inline;width:99%}.ui-keyboard-keyset{text-align:center;white-space:nowrap}.ui-keyboard-input{text-align:left}.ui-keyboard-input-current{-moz-box-shadow:0 0 5px #4d90fe;-webkit-box-shadow:0 0 5px #4d90fe;box-shadow:0 0 5px #4d90fe}.ui-keyboard-placeholder{color:#888}.ui-keyboard-nokeyboard{color:#888;border-color:#888}.ui-keyboard-spacer{display:inline-block;width:1px;height:0;cursor:default}.ui-keyboard-LRM span,.ui-keyboard-NBSP span,.ui-keyboard-RLM span,.ui-keyboard-ZWJ span,.ui-keyboard-ZWNJ span,.ui-keyboard-ZWSP span{font-size:.5em;line-height:1.5em;white-space:normal}.ui-keyboard-button.ui-keyboard-combo.ui-state-default{border-color:#ffaf0f}button.ui-keyboard-accept.ui-keyboard-valid-input{border-color:#0c0;background:#080;color:#fff}button.ui-keyboard-accept.ui-keyboard-valid-input:not([disabled]):hover{background:#0a0}button.ui-keyboard-accept.ui-keyboard-invalid-input{border-color:#c00;background:#800;color:#fff;opacity:.5}button.ui-keyboard-accept.ui-keyboard-invalid-input:not([disabled]):hover{background:#a00}.ui-keyboard-caret{background:#c00;width:1px;margin-top:3px}div.ui-body.ui-keyboard button.ui-keyboard-button.ui-btn{padding:.5em 1em;border-color:transparent}.ui-body .ui-keyboard-button{width:3em;height:3em;display:inline-block}.ui-body .ui-keyboard-widekey{width:5.5em}.ui-body .ui-keyboard-space{width:15em}.ui-body .ui-keyboard-space span{visibility:hidden}.ui-body .ui-keyboard-keyset{line-height:.5em}.ui-body input.ui-input-text,.ui-body textarea.ui-input-text{width:95%}.ui-body .ui-btn-inner{height:2em;padding:.2em 0;margin:0}.ui-body .ui-btn{margin:0;font-size:13px}button.ui-keyboard-button.btn{padding:1px 6px}button.ui-keyboard-toggle span{width:.8em;height:.8em;display:inline-block;background-repeat:no-repeat;background-position:center center;background-size:contain}button.ui-keyboard-toggle span{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMCIgaGVpZ2h0PSIxMCIgZmlsbD0iIzExMSI+PHBhdGggZD0iTTguNyw0LjRINy41SDUuMHYtMS45YzAtMS40LTEuMS0yLjUtMi41LTIuNWMtMS40LDAtMi41LDEuMS0yLjUsMi41djEuOWgxLjIgdi0xLjljMC0wLjcsMC42LTEuMiwxLjItMS4yczEuMiwwLjYsMS4yLDEuMnYxLjljLTAuNywwLTEuMiwwLjYtMS4yLDEuMlY4LjggYzAsMC43LDAuNiwxLjIsMS4yLDEuMmg1LjBDOS40LDEwLDEwLDkuNCwxMCw4LjhWNS42QzEwLDUuMCw5LjQsNC40LDguOCw0LjR6IE02LjYsNy40djEuMCBjMCwwLjItMC4xLDAuMy0wLjMsMC4zUzYuMCw4LjYsNi4wLDguNFY3LjRjLTAuMi0wLjEtMC4zLTAuMy0wLjMtMC41YzAtMC4zLDAuMy0wLjYsMC42LTAuNiBTNi45LDYuNiw2LjksNi45QzYuOSw3LjEsNi44LDcuMyw2LjYsNy40eiIvPjwvc3ZnPg==)}.ui-keyboard-dark-theme button.ui-keyboard-toggle span{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMCIgaGVpZ2h0PSIxMCIgZmlsbD0iI2VlZSI+PHBhdGggZD0iTTguNyw0LjRINy41SDUuMHYtMS45YzAtMS40LTEuMS0yLjUtMi41LTIuNWMtMS40LDAtMi41LDEuMS0yLjUsMi41djEuOWgxLjIgdi0xLjljMC0wLjcsMC42LTEuMiwxLjItMS4yczEuMiwwLjYsMS4yLDEuMnYxLjljLTAuNywwLTEuMiwwLjYtMS4yLDEuMlY4LjggYzAsMC43LDAuNiwxLjIsMS4yLDEuMmg1LjBDOS40LDEwLDEwLDkuNCwxMCw4LjhWNS42QzEwLDUuMCw5LjQsNC40LDguOCw0LjR6IE02LjYsNy40djEuMCBjMCwwLjItMC4xLDAuMy0wLjMsMC4zUzYuMCw4LjYsNi4wLDguNFY3LjRjLTAuMi0wLjEtMC4zLTAuMy0wLjMtMC41YzAtMC4zLDAuMy0wLjYsMC42LTAuNiBTNi45LDYuNiw2LjksNi45QzYuOSw3LjEsNi44LDcuMyw2LjYsNy40eiIvPjwvc3ZnPg==)}button.ui-keyboard-toggle.ui-keyboard-disabled span{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMCIgaGVpZ2h0PSIxMCIgZmlsbD0iIzExMSI+PHBhdGggZD0iTTcuNCA0LjRWMi41YzAtMS40LTEuMS0yLjUtMi41LTIuNWMtMS40IDAtMi41IDEuMS0yLjUgMi41djEuOSBjLTAuNyAwLTEuMiAwLjUtMS4yIDEuMnYzLjFDMS4zIDkuNCAxLjggMTAgMi41IDEwaDQuOWMwLjcgMCAxLjItMC42IDEuMi0xLjJWNS42IEM4LjcgNC45IDguMSA0LjQgNy40IDQuNHogTTUuMyA3LjR2MS4wYzAgMC4yLTAuMSAwLjMtMC4zIDAuM2MtMC4yIDAtMC4zLTAuMS0wLjMtMC4zVjcuNCBjLTAuMi0wLjEtMC4zLTAuMy0wLjMtMC41YzAtMC4zIDAuMy0wLjYgMC42LTAuNmMwLjMgMCAwLjYgMC4zIDAuNiAwLjYgQzUuNiA3LjEgNS41IDcuMyA1LjMgNy40eiBNNi4yIDQuNEgzLjdWMi41YzAtMC43IDAuNS0xLjIgMS4yLTEuMmMwLjcgMCAxLjIgMC42IDEuMiAxLjIgVjQuNHoiLz48L3N2Zz4=)}.ui-keyboard-dark-theme button.ui-keyboard-toggle.ui-keyboard-disabled span{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMCIgaGVpZ2h0PSIxMCIgZmlsbD0iI2VlZSI+PHBhdGggZD0iTTcuNCA0LjRWMi41YzAtMS40LTEuMS0yLjUtMi41LTIuNWMtMS40IDAtMi41IDEuMS0yLjUgMi41djEuOSBjLTAuNyAwLTEuMiAwLjUtMS4yIDEuMnYzLjFDMS4zIDkuNCAxLjggMTAgMi41IDEwaDQuOWMwLjcgMCAxLjItMC42IDEuMi0xLjJWNS42IEM4LjcgNC45IDguMSA0LjQgNy40IDQuNHogTTUuMyA3LjR2MS4wYzAgMC4yLTAuMSAwLjMtMC4zIDAuM2MtMC4yIDAtMC4zLTAuMS0wLjMtMC4zVjcuNCBjLTAuMi0wLjEtMC4zLTAuMy0wLjMtMC41YzAtMC4zIDAuMy0wLjYgMC42LTAuNmMwLjMgMCAwLjYgMC4zIDAuNiAwLjYgQzUuNiA3LjEgNS41IDcuMyA1LjMgNy40eiBNNi4yIDQuNEgzLjdWMi41YzAtMC43IDAuNS0xLjIgMS4yLTEuMmMwLjcgMCAxLjIgMC42IDEuMiAxLjIgVjQuNHoiLz48L3N2Zz4=)}.ui-keyboard.ui-keyboard-disabled button:not(.ui-keyboard-toggle),.ui-keyboard.ui-keyboard-disabled input{opacity:.5}.ui-keyboard-overlay{position:absolute;top:0;left:0;bottom:0;right:0;background:rgba(0,0,0,.5)}.ui-keyboard-popup{display:inline-block;max-width:22em}.ui-keyboard.ui-keyboard-popup-open .ui-keyboard-keyset .ui-keyboard-button{pointer-events:none}div.ui-keyboard-extender{margin-left:5px}button.ui-keyboard-extender span{width:.9em;height:.9em;display:inline-block;margin-bottom:3px;background-repeat:no-repeat;background-position:center center;background-size:contain;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgc3R5bGU9ImZpbGw6IzExMSI+PGc+PHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6IzExMSIgZD0iTSAwLjUsNC41IDE1LjUsNC41IDE1LjUsMTUuNSAwLjUsMTUuNSBaIj48L3BhdGg+PHJlY3Qgd2lkdGg9IjIiIGhlaWdodD0iMiIgeD0iMiIgeT0iNiI+PC9yZWN0PjxyZWN0IHdpZHRoPSIyIiBoZWlnaHQ9IjIiIHg9IjUiIHk9IjYiPjwvcmVjdD48cmVjdCB3aWR0aD0iMiIgaGVpZ2h0PSIyIiB4PSI4IiB5PSI2Ij48L3JlY3Q+PHBhdGggZD0ibSAxMSw2IDMsMCAwLDUgLTIsMCAwLC0zIC0xLDAgeiI+PC9wYXRoPjxyZWN0IHdpZHRoPSIyIiBoZWlnaHQ9IjIiIHg9IjEyIiB5PSIxMiI+PC9yZWN0PjxyZWN0IHdpZHRoPSI2IiBoZWlnaHQ9IjIiIHg9IjUiIHk9IjEyIj48L3JlY3Q+PHJlY3Qgd2lkdGg9IjIiIGhlaWdodD0iMiIgeD0iOSIgeT0iOSI+PC9yZWN0PjxyZWN0IHdpZHRoPSIyIiBoZWlnaHQ9IjIiIHg9IjYiIHk9IjkiPjwvcmVjdD48cmVjdCB3aWR0aD0iMiIgaGVpZ2h0PSIyIiB4PSIyIiB5PSIxMiI+PC9yZWN0PjxyZWN0IHdpZHRoPSIzIiBoZWlnaHQ9IjIiIHg9IjIiIHk9IjkiPjwvcmVjdD48L2c+PC9zdmc+)}.ui-keyboard-dark-theme button.ui-keyboard-extender span{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgc3R5bGU9ImZpbGw6I2VlZSI+PGc+PHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6I2VlZSIgZD0iTSAwLjUsNC41IDE1LjUsNC41IDE1LjUsMTUuNSAwLjUsMTUuNSBaIj48L3BhdGg+PHJlY3Qgd2lkdGg9IjIiIGhlaWdodD0iMiIgeD0iMiIgeT0iNiI+PC9yZWN0PjxyZWN0IHdpZHRoPSIyIiBoZWlnaHQ9IjIiIHg9IjUiIHk9IjYiPjwvcmVjdD48cmVjdCB3aWR0aD0iMiIgaGVpZ2h0PSIyIiB4PSI4IiB5PSI2Ij48L3JlY3Q+PHBhdGggZD0ibSAxMSw2IDMsMCAwLDUgLTIsMCAwLC0zIC0xLDAgeiI+PC9wYXRoPjxyZWN0IHdpZHRoPSIyIiBoZWlnaHQ9IjIiIHg9IjEyIiB5PSIxMiI+PC9yZWN0PjxyZWN0IHdpZHRoPSI2IiBoZWlnaHQ9IjIiIHg9IjUiIHk9IjEyIj48L3JlY3Q+PHJlY3Qgd2lkdGg9IjIiIGhlaWdodD0iMiIgeD0iOSIgeT0iOSI+PC9yZWN0PjxyZWN0IHdpZHRoPSIyIiBoZWlnaHQ9IjIiIHg9IjYiIHk9IjkiPjwvcmVjdD48cmVjdCB3aWR0aD0iMiIgaGVpZ2h0PSIyIiB4PSIyIiB5PSIxMiI+PC9yZWN0PjxyZWN0IHdpZHRoPSIzIiBoZWlnaHQ9IjIiIHg9IjIiIHk9IjkiPjwvcmVjdD48L2c+PC9zdmc+)}@media all and (max-width:319px){.ui-keyboard div{font-size:9px}.ui-keyboard .ui-keyboard-input{font-size:12px}.ui-body .ui-btn{margin:0;font-size:9px}.ui-body .ui-keyboard-button{width:1.8em;height:2.5em}.ui-body .ui-keyboard-widekey{width:4em}.ui-body .ui-keyboard-space{width:8em}.ui-body .ui-btn-inner{height:2.5em;padding:.3em 0}}@media all and (min-width:320px) and (max-width:479px){.ui-keyboard div{font-size:9px}.ui-keyboard .ui-keyboard-input{font-size:14px}.ui-body .ui-btn{margin:0;font-size:11px}.ui-body .ui-keyboard-button{width:1.8em;height:3em}.ui-body .ui-keyboard-widekey{width:4.5em}.ui-body .ui-keyboard-space{width:10em}.ui-body .ui-btn-inner{height:3em;padding:.7em 0}}@media all and (min-width:480px) and (max-width:767px){.ui-keyboard div{font-size:13px}.ui-keyboard .ui-keyboard-input{font-size:14px}.ui-body .ui-btn{margin:0;font-size:10px}.ui-body .ui-keyboard-button{height:2.5em}.ui-body .ui-btn-inner{height:2.5em;padding:.5em 0}} \ No newline at end of file diff --git a/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-all.min.js b/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-all.min.js new file mode 100644 index 0000000000..68d8b0d07f --- /dev/null +++ b/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-all.min.js @@ -0,0 +1,5 @@ +/*! jQuery UI Virtual Keyboard (1.29.1) - ALL Extensions + Mousewheel */ +/*! jQuery UI Virtual Keyboard Alt Key Popup v2.0.0 */ +!function(e){"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof module&&"object"==typeof module.exports?module.exports=e(require("jquery")):e(jQuery)}(function(b){"use strict";var f=b.keyboard;b.extend(f.css,{altKeyPopup:"ui-keyboard-popup",altKeyOverlay:"ui-keyboard-overlay",altKeyPopupOpen:"ui-keyboard-popup-open"}),f.altKeys=b.extend({a:"å æ ā ă ą à á â ã ä",A:"Å Æ Ā Ă Ą À Á  à Ä",c:"ç ć ĉ ċ č",C:"Ç Ć Ĉ Ċ Č",d:"ď ð ď",D:"Ď Ð Ď",e:"ė ę ĕ ě ə è é ê ë ē",E:"Ė Ę Ĕ Ě Ǝ È É Ê Ë Ē",g:"ģ ğ ĝ ġ",G:"Ģ Ğ Ĝ Ġ",h:"ĥ ħ",H:"Ĥ Ħ",i:"ı į ī ï î í ì ĩ ĭ",I:"İ Į Ī Ï Î Í Ì Ĩ Ĭ",j:"ĵ",J:"Ĵ",k:"ķ",K:"Ķ",l:"Ł Ľ Ļ Ĺ Ŀ",L:"ł ľ ļ ĺ ŀ",n:"ʼn ň ņ ń ñ",N:"ʼn Ň Ņ Ń Ñ",o:"œ ő ø ö õ ô ó ò ō ŏ",O:"Œ Ő Ø Ö Õ Ô Ó Ò Ō Ŏ",r:"ŕ ř ŗ",R:"Ŕ Ř Ŗ",s:"ś š ş ß § ŝ",S:"Ś Š Ş ẞ § Ŝ",t:"þ ť ț ţ ŧ",T:"Þ Ť Ț Ţ Ŧ",u:"ų ű ů ū ü û ú ù ũ ŭ",U:"Ų Ű Ů Ū Ü Û Ú Ù Ũ Ŭ",w:"ŵ",W:"Ŵ",y:"ý",Y:"Ý",z:"ź ż ž",Z:"Ź Ż Ž","!":"¡",$:"€ £ ¤ ¥ ¢ ₡ ₱ ₩ ₹ ₪ ₭ ₮ ₦ ₤","?":"¿","'":"〈 「 『 “",'"':"〉 」 』 ”","(":"《 【 〔",")":"》 】 〕"},f.altKeys),b.fn.addAltKeyPopup=function(e){var t={holdTime:500,popupVisible:"popup-visible",popupHidden:"popup-hidden",popupPosition:null};return this.each(function(){var y=b(this).data("keyboard");if(y){if(y.altkeypopup_options=b.extend({},t,y.altkeypopup_options,e),y.altkeypopup_namespace)return y.altkeypopup_setup();y.altkeypopup_namespace=y.namespace+"AltKeyPopup",y.extensionNamespace.push(y.altkeypopup_namespace),y.altkeypopup_setup=function(){var a,e="mousedown touchstart ".split(" ").join(y.altkeypopup_namespace+" "),t="mouseup touchend touchcancel ".split(" ").join(y.altkeypopup_namespace+" ");y.options.repeatRate=0,y.unbindButton(y.altkeypopup_namespace).bindButton(e,function(){clearTimeout(a);var e=b(this),t=e.attr("data-value")||"",o=y.altkeypopup_options.holdTime;t in f.altKeys&&(o?a=setTimeout(function(){y.altKeyPopup_popup(t,e)},o):y.altKeyPopup_popup(t,e))}).bindButton(t,function(){clearTimeout(a)}),y.altkeypopup_blockingFlag=!1,y.$preview.unbind("keypress keydown keyup ".split(" ").join(y.altkeypopup_namespace+" ").trim()).bind("keypress keydown keyup ".split(" ").join(y.altkeypopup_namespace+" "),function(e){if("keyup"===e.type)return clearTimeout(a),y.altkeypopup_blockingFlag=!1,"Escape"!==e.key;var t=f.builtLayouts[y.layout],o=b(e.target),n=e.key,i=e.key;return"keydown"===e.type&&i in f.altKeys?y.altkeypopup_blockingFlag!==n&&(y.altkeypopup_blockingFlag=n,!0):y.altkeypopup_blockingFlag?(t.hasMappedKeys&&t.mappedKeys.hasOwnProperty(i)&&(i=t.mappedKeys[i]),i in f.altKeys&&(clearTimeout(a),a=setTimeout(function(){y.altkeypopup_blockingFlag===n&&y.altKeyPopup_popup(i,o)},y.altkeypopup_options.holdTime)),!0):void 0})},y.altKeyPopup_close=function(){y.altkeypopup_blockingFlag=!1,y.altKeyPopup_$overlay=null,setTimeout(function(){if(y.$keyboard.length){y.$keyboard.removeClass(f.css.altKeyPopupOpen);var e=y.$keyboard.find("."+f.css.altKeyOverlay);e&&e.remove()}},1),b(document).unbind(y.altkeypopup_namespace),y.$preview.focus(),y.options.ignoreEsc=y.altKeyPopup_savedIgnoreEsc,y.$el.trigger(y.altkeypopup_options.popupHidden,[y])},y.altKeyPopup_popup=function(e,t){if(!y.$keyboard.find("."+f.css.altKeyOverlay).length){var o,n,i,a,s,r,p,u,l,d=f.css,c={$kb:y.$keyboard,kbWidth:y.$keyboard.outerWidth(),kbHeight:y.$keyboard.outerHeight(),$key:t};y.altKeyPopup_$overlay=b('<div class="'+d.altKeyOverlay+'" />').css({width:c.kbWidth,height:c.kbHeight}).appendTo(y.$keyboard).bind("click touchstart",function(){y.altKeyPopup_close()}),l="inactive hidden ".split(" ").join(y.altkeypopup_namespace+" "),y.$keyboard.addClass(f.css.altKeyPopupOpen),y.$el.unbind(l).bind(l,function(){y.altKeyPopup_close()}),"bksp"!==e&&f.keyaction.bksp(y),n=b('<div class="'+d.altKeyPopup+" "+y.options.css.container+'" />'),o=f.altKeys[e].split(/\s+/),y.buildRow(n,0,o,[]),i=n.appendTo(y.altKeyPopup_$overlay).children().bind("mousedown touchstart",function(){y.altKeyPopup_close()}).bind("mouseover mouseleave",function(e){i.removeClass(y.options.css.buttonHover),"mouseleave"!==e.type&&b(this).addClass(y.options.css.buttonHover)}),y.altKeyPopup_navigate(!0),y.altKeyPopup_savedIgnoreEsc=y.options.ignoreEsc,y.options.ignoreEsc=!0,b(document).unbind(y.altkeypopup_namespace).bind("keydown"+y.altkeypopup_namespace,function(){return!1}).bind("keyup"+y.altkeypopup_namespace,function(e){return"Escape"===e.key?(e.which=0,y.altKeyPopup_close()):y.altKeyPopup_navigate(e),!1}),p=(c.$popup=n).outerWidth(),(a=t.position().left-p/2)+p>c.kbWidth&&(a=c.kbWidth-p)<0&&n.css({width:c.kbWidth,height:"auto"}),s=t.position().top-t.outerHeight()-5,u=n.outerHeight(),r=y.$keyboard.find("."+d.keySet).position().top,s+u>c.kbHeight&&(s=c.kbHeight-u)<r&&n.css({height:c.popupHeight,width:"auto"}),c.popupWidth=n.outerWidth(),c.popupHeight=n.outerHeight(),c.popupLeft=a<0?0:a,c.popupTop=s<r?r:s,n.css({position:"absolute",left:c.popupLeft,top:c.popupTop}),"function"==typeof y.altkeypopup_options.popupPosition&&y.altkeypopup_options.popupPosition(y,c),y.$preview.blur(),y.$el.trigger(y.altkeypopup_options.popupVisible,[y])}},y.altKeyPopup_navigate=function(e){var t,o=f.css,n=(f.navigationKeys,y.options.css.buttonHover),i=y.$keyboard.find("."+o.altKeyPopup).find("."+o.keyButton),a=i.length-1;if(!0===e)return i.eq(0).addClass(n),void(y.altKeyPopup_currentIndex=0);if(t=y.altKeyPopup_currentIndex,"Enter"===e.key)return y.insertText(i.eq(t).attr("data-value")),y.altKeyPopup_close(),!0;switch(e.key){case"End":t=a;break;case"Home":t=0;break;case"ArrowLeft":t-=1;break;case"ArrowRight":t+=1}t<0&&(t=0),a<t&&(t=a),y.altKeyPopup_currentIndex=t,i.removeClass(n).eq(t).addClass(n)},y.options.alwaysOpen&&y.isVisible()&&y.altkeypopup_setup(),y.$el.unbind(f.events.kbBeforeVisible+y.altkeypopup_namespace).bind(f.events.kbBeforeVisible+y.altkeypopup_namespace,function(){y.altkeypopup_setup()})}})}}),function(e){"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof module&&"object"==typeof module.exports?module.exports=e(require("jquery")):e(jQuery)}(function(s){"use strict";s.fn.addAutocomplete=function(i){var a={position:{of:null,my:"right top",at:"left top",collision:"flip"},events:"autocomplete",data:""};return this.each(function(){var t,o,n=s(this).data("keyboard");n&&(o=n.namespace+"Autocomplete",n.autocomplete_namespace=o,n.extensionNamespace.push(o),n.autocomplete_init=function(){var e=(t=n.autocomplete_options=s.extend(!0,{},a,i)).events||t.data||"autocomplete";n.options.alwaysOpen&&n.isVisible()&&n.autocomplete_setup(),n.$el.unbind(o).bind(s.keyboard.events.kbVisible+o,function(){n.autocomplete_setup()}).bind(s.keyboard.events.kbHidden+o,function(){n.$el[t.data||"autocomplete"]("close")}).bind(s.keyboard.events.kbChange+o,function(){n.hasAutocomplete&&n.isVisible()&&n.$el.val(n.$preview.val())}).bind(e+"open"+o,function(){if(n.hasAutocomplete){var e=s.extend({},t.position);e.of=e.of||n.$keyboard,n.$autocomplete.menu.element.position(e)}}).bind(e+"select"+o,function(e,t){n.autocomplete_getVal(t.item)})},n.autocomplete_getVal=function(e){var t;switch(typeof e){case"string":t=e||"";break;case"object":t=e.label||e.value||"";break;default:t=n.preview&&n.preview.value||n.el.value}t=t.toString(),n.hasAutocomplete&&""!==t&&((n.$preview||n.$el).val(t).focus(),n.last.start=t.length,n.last.end=t.length,n.last.val=t)},n.autocomplete_update=function(e){clearTimeout(n.$autocomplete.searching),n.$autocomplete.searching=setTimeout(function(){n.$autocomplete.term!==n.$autocomplete.element.val()&&(n.$autocomplete.selectedItem=null,n.$autocomplete.search(null,e))},n.$autocomplete.options.delay)},n.autocomplete_navKeys={8:"backSpace",9:"tab",13:"enter",20:"capsLock",27:"escape",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down",45:"insert",46:"delete"},n.autocomplete_setup=function(){var t;if(n.$autocomplete=n.$el.data(n.autocomplete_options.data)||n.$el.data("uiAutocomplete")||n.$el.data("ui-autocomplete")||n.$el.data("autocomplete"),n.hasAutocomplete=void 0!==n.$autocomplete&&!n.$autocomplete.options.disabled,n.hasAutocomplete){n.$preview.bind("keydown"+o+" keypress"+o,function(e){n.$preview&&e.namespace!==n.$autocomplete.eventNamespace&&(e.namespace=n.$autocomplete.eventNamespace.slice(1),(t=n.autocomplete_navKeys[e.which])?n.el!==n.preview&&(n.$el.triggerHandler(e),"enter"===t&&setTimeout(function(){n.$autocomplete&&(n.$preview.val(n.$autocomplete.selectedItem.value),n.$preview.focus())},100)):n.autocomplete_update(e))});var e="mouseup mousedown mouseleave touchstart touchend touchcancel ".split(" ").join(o+" ");n.bindButton(e,function(e){n.autocomplete_update(e)})}n.escCloseCallback.autocomplete||(n.escCloseCallback.autocomplete=n.checkAutocompleteMenu)},n.checkAutocompleteMenu=function(e){return n.hasAutocomplete&&e.closest("ul").hasClass("ui-autocomplete")},n.autocomplete_destroy=function(){clearTimeout(n.$autocomplete.searching),n.hasAutocomplete=!1,n.$el.unbind(o),n.$preview&&(n.$preview.unbind(o),n.unbindButton(o)),delete n.$autocomplete},n.autocomplete_init())})}}),function(e){"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof module&&"object"==typeof module.exports?module.exports=e(require("jquery")):e(jQuery)}(function(b){"use strict";var f=b.keyboard;f.firefox=void 0!==window.mozInnerScreenX,b.extend(f.css,{caret:"ui-keyboard-caret",caretMirror:"ui-keyboard-mirror-div"}),b.fn.addCaret=function(e){var t={caretClass:"",charAttr:"data-character",charIndex:1,offsetX:0,offsetY:0,adjustHt:0};return this.each(function(){var c,n,i=f.events,y=b(this).data("keyboard");y&&(c=y.caret_options=b.extend({},t,e),n=y.caret_namespace=y.namespace+"caret",y.extensionNamespace.push(n),y.textareaCaretProperties=["direction","boxSizing","width","height","overflowX","overflowY","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","borderStyle","paddingTop","paddingRight","paddingBottom","paddingLeft","fontStyle","fontVariant","fontWeight","fontStretch","fontSize","fontSizeAdjust","lineHeight","fontFamily","textAlign","textTransform","textIndent","textDecoration","letterSpacing","wordSpacing","tabSize","MozTabSize"],y.caret_setup=function(){var e=f.css,t="keyup keypress mouseup mouseleave ".split(" ").join(n+" "),o="position:absolute;visibility:hidden;top:-9999em;left:-9999em;white-space:pre-wrap;z-index:-10;"+("INPUT"===y.preview.nodeName?"":"word-wrap:break-word;");y.$keyboard.find("."+e.caretMirror).remove(),y.caret_$div=b('<div class="'+e.caretMirror+'" style="'+o+'">').appendTo(y.$keyboard),y.$caret&&y.$caret.remove(),y.$caret=b('<div class="'+e.caret+" "+c.caretClass+'" style="position:absolute;">').insertAfter(y.$preview),y.$el.unbind(i.kbChange+n).bind(i.kbChange+n,function(){y.findCaretPos()}),y.$preview.unbind(t).bind(t,function(){y.findCaretPos()})},y.findCaretPos=function(){if(y.caret_$div){var t,o,e,n,i,a,s,r,p=y.preview,u=parseFloat(y.$preview.css("fontSize")),l="INPUT"===p.nodeName,d=y.caret_$div[0];t=d.style,o=window.getComputedStyle?getComputedStyle(p,null):p.currentStyle,n=f.caret(y.$preview),i=Math["ltr"===o.direction?"max":"min"](n.start,n.end),y.textareaCaretProperties.forEach(function(e){t[e]=o[e]}),f.firefox&&(t.width=parseInt(o.width,10)-2+"px",p.scrollHeight>parseInt(o.height,10)&&(t.overflowY="scroll")),t.width=parseInt(l?p.scrollWidth:o.width,10)+(l?2*u:0)+"px",d.textContent=p.value.substring(0,i),"INPUT"===p.nodeName&&(d.textContent=d.textContent.replace(/\x20/g," ")),(s=document.createElement("span")).textContent=p.value.substring(i)||"",d.appendChild(s),r=b(s).position(),n="center"===t.textAlign?u:0,y.caretPos={top:r.top+parseInt(o.borderTopWidth,10)+c.offsetY,left:r.left+parseInt(o.borderLeftWidth,10)+c.offsetX-n},e=parseInt(y.$caret.css("margin-top"),10),t=Math.round(u+2*e)+c.adjustHt,r=y.$preview.position(),y.$caret.css({top:r.top-p.scrollTop+y.caretPos.top-e,left:r.left-p.scrollLeft+y.caretPos.left,height:t}),a=p.value.substring(i,i+c.charIndex).replace(/\s/," ")||" ",y.$caret.attr(c.charAttr,a)}},y.$el.unbind(n).bind(i.kbBeforeVisible+n,function(){y.caret_setup()}).bind(i.kbVisible+n,function(){y.findCaretPos()}).bind(i.kbHidden+n,function(){var e="keyup keypress mouseup mouseleave ".split(" ").join(n+" ");y.$preview.unbind(e),y.$caret.remove(),y.$caret=null,y.caret_$div=null}),y.options.alwaysOpen&&y.isVisible()&&(y.caret_setup(),y.findCaretPos()))})}}),function(e){"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof module&&"object"==typeof module.exports?module.exports=e(require("jquery")):e(jQuery)}(function(n){"use strict";var i=n.keyboard;i.css.extender="ui-keyboard-extender",i.language.en.display.extender=" :toggle_numpad",i.layouts.numpad={normal:["{clear} / * -","7 8 9 +","4 5 6 %","1 2 3 =","0 {dec} {left} {right}"]},i.keyaction.extender=function(e){return e.extender_toggle(),!1},n.fn.addExtender=function(e){var t={layout:"numpad",showing:!1,reposition:!0};return this.each(function(){var o=n(this).data("keyboard");if(o){if(o.extender_options=n.extend({},t,o.extender_options,e),o.extender_namespace)return o.extender_layoutSwitcher();o.extender_namespace=o.namespace+"extender",o.extensionNamespace.push(o.extender_namespace),o.extender_layoutSwitcher=function(){o.extender_lastKeyset=o.last.keyset,o.extender_bindEvents(!1),o.$el.one(i.events.kbBeforeVisible,function(){o.shiftActive=o.extender_lastKeyset[0],o.altActive=o.extender_lastKeyset[1],o.metaActive=o.extender_lastKeyset[2],o.showKeySet(),o.extender_setup(),o.extender_bindEvents()}),o.redraw()},o.extender_bindEvents=function(e){var t=i.events.kbBeforeVisible+o.extender_namespace;o.$el.unbind(t),!1!==e&&o.$el.bind(t,function(){o.extender_setup()})},o.extender_setup=function(){var e,t=o.extender_options.layout;void 0===i.builtLayouts[t]&&o.buildKeyboard(t),(e=i.builtLayouts[t].$keyboard.find("."+i.css.keySet+"-normal").clone()).removeClass().removeAttr("name").addClass(i.css.extender).children("button").removeAttr("data-pos"),e[0].style.display=o.extender_options.showing?"inline-block":"none",o.$keyboard.find("div."+i.css.extender).remove(),o.$keyboard.append(e),o.extender_toggle(o.extender_options.showing),o.bindKeys()},o.extender_toggle=function(e){o.extender_options.showing=void 0===e?!o.extender_options.showing:e,o.$keyboard.find("button."+i.css.extender).toggleClass(o.options.css.buttonActive,o.extender_options.showing).end().find("div."+i.css.extender)[0].style.display=o.extender_options.showing?"inline-block":"none",o.extender_options.reposition&&n(window).trigger("resize")},o.options.alwaysOpen&&o.isVisible()&&o.extender_setup(),o.extender_bindEvents()}})}}),function(e){"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof module&&"object"==typeof module.exports?module.exports=e(require("jquery")):e(jQuery)}(function(s){s.fn.addMobile=function(e){var a,t={container:{theme:"b",cssClass:"ui-body"},input:{theme:"b",cssClass:""},buttonMarkup:{theme:"b",cssClass:"ui-btn",shadow:"true",corners:"true"},buttonHover:{theme:"b",cssClass:"ui-btn-hover"},buttonAction:{theme:"b",cssClass:"ui-btn-active"},buttonActive:{theme:"b",cssClass:"ui-btn-active"},allThemes:"a b c"};return this.each(function(){var i=s(this).data("keyboard");i&&void 0!==s.fn.textinput&&(i.mobile_options=a=s.extend(!0,{},t,e),i.mobile_themes=s.trim((" "+a.allThemes).split(" ").join(" "+a.buttonMarkup.cssClass+"-")+(" "+a.allThemes).split(" ").join(" "+a.buttonAction.cssClass+"-")+(" "+a.allThemes).split(" ").join(" "+a.buttonActive.cssClass+"-")),void 0===i.options.mobile_savedActiveClass&&(i.options.mobile_savedActiveClass=""+i.options.css.buttonActive),i.mobile_init=function(){var e=i.namespace+"Mobile";s("."+s.keyboard.css.input).textinput(),i.options.alwaysOpen&&i.isVisible&&i.mobile_setup(),i.extensionNamespace.push(e),i.$el.unbind(e).bind(s.keyboard.events.kbBeforeVisible+e,function(){i&&i.el.active&&i.$keyboard.length&&i.$keyboard.css("visibility","hidden")}).bind(s.keyboard.events.kbVisible+e,function(){i&&i.el.active&&i.$keyboard.length&&(i.mobile_setup(),i.$keyboard.css("visibility","visible"),i.$preview.focus())})},i.mobile_setup=function(){var e,t=s.keyboard.css,o=i.options,n=i.mobile_themes;i.mobile_$actionKeys=i.$keyboard.find("."+i.options.css.buttonAction),o.css.buttonActive=o.mobile_savedActiveClass+" "+i.modOptions(a.buttonActive,a.buttonMarkup),i.$keyboard.addClass(i.modOptions(a.container,a.container)).find("."+t.preview).removeClass("ui-widget ui-widget-content").addClass(i.modOptions(a.input,a.input)).end().find("button").removeClass(s.trim("ui-corner-all ui-state-default "+n)).addClass(i.modOptions(a.buttonMarkup,a.buttonMarkup)).not(i.mobile_$actionKeys).hover(function(){s(this).removeClass(n).addClass(i.modOptions(a.buttonHover,a.buttonMarkup))},function(){s(this).removeClass(n+" "+a.buttonHover.cssClass).addClass(i.modOptions(a.buttonMarkup,a.buttonMarkup))}),i.mobile_$actionKeys.removeClass(n).addClass(i.modOptions(a.buttonAction,a.buttonMarkup)),i.msie&&i.$preview[0]!==i.el&&(i.$preview.hide(),i.$keyboard.css("width",""),i.width=i.$keyboard.outerWidth(),i.$keyboard.width(i.width+parseInt(i.$preview.css("fontSize"),10)),i.$preview.width(i.width),i.$preview.show()),s.ui&&s.ui.position&&((e=o.position).of=e.of||i.$el.data("keyboardPosition")||i.$el,e.collision=e.collision||"flipfit flipfit",i.$keyboard.position(e))},i.modOptions=function(e,t){return" "+(e.cssClass||"")+" "+(t&&t.cssClass?t.cssClass+"-"+(e.theme||""):"")+("true"==e.shadow?" ui-shadow":"")+("true"==e.corners?" ui-corner-all":"")},i.mobile_init())})}}),function(e){"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof module&&"object"==typeof module.exports?module.exports=e(require("jquery")):e(jQuery)}(function(b){"use strict";b.keyboard=b.keyboard||{},b.keyboard.navigationKeys={toggle:112,enter:13,pageup:33,pagedown:34,end:35,home:36,left:37,up:38,right:39,down:40,caretrt:45,caretlt:46,caretright:function(e){b.keyboard.keyaction.right(e)},caretleft:function(e){b.keyboard.keyaction.left(e)}},b.fn.addNavigation=function(t){return this.each(function(){var l,e,d=b(this).data("keyboard"),c=d.options,n=b.keyboard.events,y=b.keyboard.css;d&&(d.navigation_options=l=b.extend({},{position:[0,0],toggleMode:!1,focusClass:"hasFocus",toggleKey:null,rowLooping:!1},t),d.navigation_keys=e=b.extend({},b.keyboard.navigationKeys),d.navigation_namespace=d.namespace+"Nav",d.extensionNamespace.push(d.navigation_namespace),d.saveNav=[d.options.tabNavigation,d.options.enterNavigation],d.allNavKeys=b.map(e,function(e){return e}),d.navigation_init=function(){d.$keyboard.toggleClass(l.focusClass,l.toggleMode).find("."+y.keySet+":visible").find("."+y.keyButton+'[data-pos="'+l.position[0]+","+l.position[1]+'"]').addClass(c.css.buttonHover),d.$preview.unbind(d.navigation_namespace).bind("keydown"+d.navigation_namespace,function(e){return d.checkKeys(e.which)})},d.checkKeys=function(e,t){if(void 0!==e&&d.isVisible()){var o=d.navigation_keys;return(e===(l.toggleKey||o.toggle)||t)&&(l.toggleMode=!t&&!l.toggleMode,d.options.tabNavigation=!l.toggleMode&&d.saveNav[0],d.options.enterNavigation=!l.toggleMode&&d.saveNav[1]),d.$keyboard.toggleClass(l.focusClass,l.toggleMode),l.toggleMode&&e===o.enter?(d.$keyboard.find("."+y.keySet+":visible").find("."+y.keyButton+'[data-pos="'+l.position[0]+","+l.position[1]+'"]').trigger(n.kbRepeater),!1):l.toggleMode&&0<=b.inArray(e,d.allNavKeys)?(d.navigateKeys(e),!1):void 0}},d.getMaxIndex=function(e,t){return e.find("."+y.keyButton+'[data-pos^="'+t+',"]').length-1},d.leftNavigateKey=function(e,t){var o=d.navigation_options.rowLooping,n=e-1;return 0<=n?n:o?t:0},d.rightNavigateKey=function(e,t){var o=d.navigation_options.rowLooping,n=e+1;return n<=t?n:o?0:t},d.navigateKeys=function(e,t,o){if(d.isVisible()){o="number"==typeof o?o:l.position[1],t="number"==typeof t?t:l.position[0];var n,i=d.$keyboard.find("."+y.keySet+":visible"),a=i.find("."+y.endRow).length-1,s=d.getMaxIndex(i,t),r=d.last,p=d.$preview.val().length,u=d.navigation_keys;switch(e){case u.pageup:t=0;break;case u.pagedown:t=a;break;case u.end:o=s;break;case u.home:o=0;break;case u.left:o=d.leftNavigateKey(o,s);break;case u.up:t+=0<t?-1:0,n=d.getMaxIndex(i,t),o=o===s?n:o;break;case u.right:o=d.rightNavigateKey(o,s);break;case u.down:t+=a<t+1?0:1,n=d.getMaxIndex(i,t),o=o===s?n:o;break;case u.caretrt:r.start++;break;case u.caretlt:r.start--}e!==u.caretrt&&e!==u.caretlt||(r.start=r.start<0?0:r.start>p?p:r.start,d.last.start=d.last.end=r.end=r.start,b.keyboard.caret(d.$preview,d.last)),(s=d.getMaxIndex(i,t))<o&&(o=s),i.find("."+c.css.buttonHover).removeClass(c.css.buttonHover),i.find("."+y.keyButton+'[data-pos="'+t+","+o+'"]').addClass(c.css.buttonHover),l.position=[t,o]}},d.options.alwaysOpen&&d.isVisible()&&(d.$keyboard.find("."+c.css.buttonHover).removeClass(c.css.buttonHover),d.navigation_init()),d.$el.unbind(d.navigation_namespace).bind(n.kbVisible,function(){d.$keyboard.find("."+c.css.buttonHover).removeClass(c.css.buttonHover),d.navigation_init()}).bind(n.kbInactive+" "+n.kbHidden,function(e){d.checkKeys(e.which,!0)}).bind(n.kbKeysetChange,function(){d.navigateKeys(null)}).bind("navigate navigateTo",function(e,t,o){var n;(t=isNaN(t)?t.toLowerCase():t)in d.navigation_keys?(n=d.navigation_keys[t],isNaN(n)&&n in b.keyboard.keyaction?b.keyboard.keyaction[n](d,this,e):"function"==typeof n?n(d):d.checkKeys(n)):"string"==typeof t&&t in b.keyboard.keyaction?b.keyboard.keyaction[t](d,this,e):d.navigateKeys(null,t,o)}))})}}),function(e){"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof module&&"object"==typeof module.exports?module.exports=e(require("jquery")):e(jQuery)}(function(p){"use strict";p.keyboard=p.keyboard||{},p.fn.previewKeyset=function(o){return this.each(function(){var e=p(this).data("keyboard"),t=e.namespace+"Preview";e&&(e.previewKeyset_options=p.extend({},{sets:["normal","shift","alt","alt-shift"]},o),e.extensionNamespace.push(t),e.previewKeyset=function(){var a=p.keyboard.css,s=e.previewKeyset_options.sets,r=e.$keyboard.find("."+a.keySet).filter('[name="'+s.join('"],[name="')+'"]');1<r.length&&r.eq(0).find("."+a.keyButton).not("."+a.keyAction).each(function(){var e,t,o={},n=s.length,i=r.find('button[data-pos="'+p(this).attr("data-pos")+'"]');for(e=0;e<n;e++)t=i.eq(e).parent().attr("name"),0<=p.inArray(t,s)&&(o["data-"+t]=i.eq(e).find("."+a.keyText).text());i.attr(o)})},e.options.alwaysOpen&&e.isVisible()?e.previewKeyset():e.$el.unbind(p.keyboard.events.kbBeforeVisible+t).bind(p.keyboard.events.kbBeforeVisible+t,function(){e.previewKeyset()}))})}}),function(e){"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof module&&"object"==typeof module.exports?module.exports=e(require("jquery")):e(jQuery)}(function(b){"use strict";b.keyboard=b.keyboard||{},b.fn.addScramble=function(e){var n={targetKeys:/[a-z\d]/i,byRow:!0,byKeySet:!1,randomizeOnce:!0,randomizeInput:!1,init:null,sameForAll:!1};return this.each(function(){var c,y=b(this).data("keyboard"),t=y.namespace+"Scramble",o=y.options;y&&!y.scramble_options&&(c=y.scramble_options=b.extend({},n,e),y.extensionNamespace.push(t),c.orig_create=o.create,y.scramble_setup=function(e){var t,o,n,i,a,s,r,p,u,l,d;if(t=e.find("."+b.keyboard.css.keySet),e.length){for(c.byKeySet&&(t=t.eq(0)),o=0;o<t.length;o++)if(n=t.eq(o),r=0,d=[],u=[],p=[],l=[],n.children("button, span, br").each(function(){"BR"===this.tagName?(c.byRow?(d.push(this),u.push(!1),l[r]=d,p[r]=u,d=[],u=[]):(l[r]=this,p[r]=!1),r++):(s=!(1!==(s=b(this).attr("data-value")||"").length||!c.targetKeys.test(s))&&s,c.byRow?(d.push(this),u.push(s)):(l[r]=this,p[r]=s,r++))}),n.find("."+b.keyboard.css.endRow).remove(),c.byRow)for(a=0;a<l.length;a++)for(d=y.shuffle(l[a],p[a]),i=0;i<d.length;i++)n.append(d[i]);else for(d=y.shuffle(l,p),i=0;i<d.length;i++)n.append(d[i]);return c.byKeySet&&(e=y.realign(e)),e}},y.getRandomUInt=function(e){var t=window.crypto||window.msCrypto;if(void 0===t)return Math.floor(Math.random()*e);var o=new Uint32Array(1);return t.getRandomValues(o),o[0]%e},y.shuffle=function(e,t){for(var o,n,i=e.length;0<i;)n=y.getRandomUInt(i),!1===t[i-1]&&i--,!1!==t[i-1]&&!1!==t[n]&&(o=e[--i],e[i]=e[n],e[n]=o);return e},y.realign=function(e){var o,n,i,a=e.find("."+b.keyboard.css.keySet),t=a.eq(0);return a=a.filter(":gt(0)"),t.children().each(function(e,t){n="BR"===t.tagName,i=b(t).attr("data-pos"),a.each(function(e,t){o=n?"br:first":'button[data-pos="'+i+'"]',b(t).find(o).appendTo(t)})}),e},y.setScrambleLayout=function(){if(!/^scrambled/.test(o.layout)){y.orig_layout=o.layout;var e=e||"scrambled"+Math.round(1e4*Math.random());o.layout=c.sameForAll?e:"scrambled"+Math.round(1e4*Math.random())}},o.create=function(){var e=o.layout;b.keyboard.builtLayouts[e]={mappedKeys:{},acceptedKeys:[],$keyboard:null},y.layout=o.layout=y.orig_layout,y.buildKeyboard(y.layout,!0),y.layout=o.layout=e,b.keyboard.builtLayouts[e]=b.extend(!0,{},b.keyboard.builtLayouts[y.orig_layout]),c.randomizeOnce&&(b.keyboard.builtLayouts[e].$keyboard=y.scramble_setup(b.keyboard.builtLayouts[y.orig_layout].$keyboard.clone())),y.$keyboard=b.keyboard.builtLayouts[e].$keyboard,c.randomizeInput?y.$el.unbind(b.keyboard.events.kbChange+t).bind(b.keyboard.events.kbChange+t,function(e,t){c.targetKeys.test(t.last.key)&&(t.$keyboard.find("."+o.css.buttonHover).removeClass(o.css.buttonHover),t.$keyboard=t.scramble_setup(t.$keyboard),b(document.elementFromPoint(e.clientX,e.clientY)).trigger("mouseenter"))}):c.randomizeOnce||y.$el.unbind(b.keyboard.events.kbBeforeVisible+t).bind(b.keyboard.events.kbBeforeVisible+t,function(e,t){t.$keyboard=t.scramble_setup(t.$keyboard)}),"function"==typeof c.orig_create&&c.orig_create(y)},y.setScrambleLayout(),o.alwaysOpen&&y.$keyboard.length?setTimeout(function(){var e=b.keyboard.builtLayouts;y.$keyboard=y.scramble_setup(y.$keyboard),y.setScrambleLayout(),void 0===e[o.layout]&&(e[o.layout]={mappedKeys:b.extend({},e[y.layout].mappedKeys),acceptedKeys:b.extend([],e[y.layout].acceptedKeys),$keyboard:y.$keyboard.clone()}),"function"==typeof c.init&&c.init(y)},0):"function"==typeof c.init&&c.init(y))})}}),function(e){"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof module&&"object"==typeof module.exports?module.exports=e(require("jquery")):e(jQuery)}(function(i){i.fn.addTyping=function(e){var t={showTyping:!0,lockTypeIn:!1,delay:250,hoverDelay:250},b=i.keyboard;return this.each(function(){var c,y=i(this).data("keyboard");y&&(c=y.typing_options=i.extend({},t,e),y.typing_keymap={" ":"space",'"':"34","'":"39"," ":"space","\b":"bksp","{b}":"bksp","{d}":"del","{l}":"left","{r}":"right","\n":"enter","\r":"enter","{e}":"enter","\t":"tab","{t}":"tab"},y.typing_xref={8:"bksp",9:"tab",13:"enter",32:"space",37:"left",39:"right",46:"del"},y.typing_event=!1,y.typing_namespace=y.namespace+"typing",y.extensionNamespace.push(y.typing_namespace),c.savedLockInput=y.options.lockInput,y.typing_setup_reset=function(){var e=b.events,t=y.typing_namespace,o=[e.kbHidden,e.kbInactive,""].join(t+" ");y.$el.unbind(t).bind(o,function(){y.typing_reset()}),y.unbindButton(t).bindButton("mousedown"+t,function(){y.typing_reset()})},y.typing_setup=function(){var e=y.typing_namespace;y.typing_setup_reset(),y.$el.bind(b.events.kbBeforeVisible+e,function(){y.typing_setup()}),y.$preview.unbind(e).bind("keyup"+e,function(e){return!(c.init&&c.lockTypeIn||!c.showTyping)&&(37<=e.which&&e.which<=40?void 0:(16===e.which&&(y.shiftActive=!1),18===e.which&&(y.altActive=!1),16===e.which||18===e.which?(y.showSet(),void setTimeout(function(){y.$preview&&y.$preview.focus()},200)):void 0))}).bind("keydown"+e,function(e){if(c.init&&c.lockTypeIn||!c.showTyping)return!1;e.temp=!1,16===e.which&&(e.temp=!y.shiftActive,y.shiftActive=!0),18===e.which&&(e.temp=!y.altActive,y.altActive=!0),e.temp&&(y.showSet(),y.$preview.focus()),y.typing_event=!0,y.typing_xref[e.which]&&y.typing_findKey("",e)}).bind("keypress"+e,function(e){if(c.init&&c.lockTypeIn)return!1;y.typing_event&&!y.options.lockInput&&(y.typing_reset(),y.typing_event=!0,y.typing_findKey("",e))})},y.typing_reset=function(){y.typing_event=c.init=!1,c.text="",c.len=c.current=0,y.options.lockInput=c.savedLockInput},y.typeIn=function(e,t,o,n){if(!y.isVisible())return clearTimeout(y.typing_timer),void y.typing_reset();if(y.typing_event){if(void 0===e)return y.typing_event=!1,void(y.options.lockInput=c.savedLockInput)}else!0!==c.init&&(c.init=!0,y.options.lockInput=c.lockTypeIn,c.text=e||c.text||"",c.len=c.text.length,c.delay=t||c.delay,c.current=0,o&&(c.callback=o)),"{"===(e=c.text.substring(c.current,++c.current))&&"}"===c.text.substring(c.current+1,c.current+2)&&(e+=c.text.substring(c.current,c.current+=2)),y.typing_findKey(e,n)},y.typing_findKey=function(e,t){var o,n,i,a,s,r,p,u,l=b.css,d=b.builtLayouts[y.layout].mappedKeys;if(y.isOpen&&y.$keyboard.length)if(r=y.$keyboard.find("."+l.keySet),a=e in y.typing_keymap?y.typing_keymap[e]:e,o="."+l.keyButton+'[data-action="'+a+'"]',y.typing_event&&t&&(o="keypress"!==t.type&&y.typing_xref.hasOwnProperty(t.keyCode||t.which)?"."+l.keyPrefix+y.processName(y.typing_xref[t.keyCode||t.which]):(n=String.fromCharCode(t.charCode||t.which),d.hasOwnProperty(n)?"."+l.keyButton+'[data-value="'+d[n].replace(/"/g,'\\"')+'"]':"."+l.keyPrefix+y.processName(n))),(s=r.filter(":visible").find(o)).length?y.typing_simulateKey(s,e,t):(u=(s=y.typing_event?r.find(o):(i=e in y.typing_keymap?y.typing_keymap[e]:y.processName(e),r.find("."+l.keyPrefix+i))).closest("."+l.keySet)).attr("name")?(c.showTyping&&(p=u.attr("name"),y.shiftActive=/shift/.test(p),y.altActive=/alt/.test(p),y.metaActive=y.last.keyset[2]=!!/\bmeta/.test(p)&&p.match(/meta[\w-]+/)[0],y.showSet(y.metaActive)),y.typing_simulateKey(s,e,t)):y.typing_event||(e in y.typing_keymap&&y.typing_keymap[e]in b.keyaction?b.keyaction[y.typing_keymap[e]](y,s,t):y.insertText(e),y.checkCombos(),y.$el.trigger(b.events.kbChange,[y,y.el])),c.current<=c.len&&0!==c.len){if(!y.isVisible())return;y.typing_timer=setTimeout(function(){y.typeIn()},c.delay)}else{if(0!==c.len)return y.typing_reset(),void("function"==typeof c.callback&&(y.typing_timer=setTimeout(function(){"function"==typeof c.callback&&c.callback(y)},c.delay)));y.typing_reset()}},y.typing_simulateKey=function(e,t,o){var n=e.length;y.isVisible()&&(c.showTyping&&n&&(e.filter(":visible").trigger("mouseenter"+y.namespace),c.showTyping&&n&&setTimeout(function(){e.trigger("mouseleave"+y.namespace)},Math.min(c.hoverDelay,c.delay))),y.typing_event||setTimeout(function(){t in y.typing_keymap&&y.typing_keymap[t]in b.keyaction?((o=o||i.Event("keypress")).target=e,b.keyaction[y.typing_keymap[t]](y,e,o)):y.insertText(t),y.checkCombos(),y.$el.trigger(b.events.kbChange,[y,y.el])},c.delay/3))},c.showTyping&&y.options.alwaysOpen&&y.isVisible()?y.typing_setup():y.$el.unbind(b.events.kbBeforeVisible+y.typing_namespace).bind(b.events.kbBeforeVisible+y.typing_namespace,function(){c.showTyping?y.typing_setup():y.typing_setup_reset()}))})}}), +/*! Mousewheel version: 3.1.12 * (c) 2014 Brandon Aaron * MIT License */ +function(e){"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof exports?module.exports=e:e(jQuery)}(function(c){var y,b,e=["wheel","mousewheel","DOMMouseScroll","MozMousePixelScroll"],t="onwheel"in document||9<=document.documentMode?["wheel"]:["mousewheel","DomMouseScroll","MozMousePixelScroll"],f=Array.prototype.slice;if(c.event.fixHooks)for(var o=e.length;o;)c.event.fixHooks[e[--o]]=c.event.mouseHooks;var m=c.event.special.mousewheel={version:"3.1.12",setup:function(){if(this.addEventListener)for(var e=t.length;e;)this.addEventListener(t[--e],n,!1);else this.onmousewheel=n;c.data(this,"mousewheel-line-height",m.getLineHeight(this)),c.data(this,"mousewheel-page-height",m.getPageHeight(this))},teardown:function(){if(this.removeEventListener)for(var e=t.length;e;)this.removeEventListener(t[--e],n,!1);else this.onmousewheel=null;c.removeData(this,"mousewheel-line-height"),c.removeData(this,"mousewheel-page-height")},getLineHeight:function(e){var t=c(e),o=t["offsetParent"in c.fn?"offsetParent":"parent"]();return o.length||(o=c("body")),parseInt(o.css("fontSize"),10)||parseInt(t.css("fontSize"),10)||16},getPageHeight:function(e){return c(e).height()},settings:{adjustOldDeltas:!0,normalizeOffset:!0}};function n(e){var t,o=e||window.event,n=f.call(arguments,1),i=0,a=0,s=0,r=0,p=0;if((e=c.event.fix(o)).type="mousewheel","detail"in o&&(s=-1*o.detail),"wheelDelta"in o&&(s=o.wheelDelta),"wheelDeltaY"in o&&(s=o.wheelDeltaY),"wheelDeltaX"in o&&(a=-1*o.wheelDeltaX),"axis"in o&&o.axis===o.HORIZONTAL_AXIS&&(a=-1*s,s=0),i=0===s?a:s,"deltaY"in o&&(i=s=-1*o.deltaY),"deltaX"in o&&(a=o.deltaX,0===s&&(i=-1*a)),0!==s||0!==a){if(1===o.deltaMode){var u=c.data(this,"mousewheel-line-height");i*=u,s*=u,a*=u}else if(2===o.deltaMode){var l=c.data(this,"mousewheel-page-height");i*=l,s*=l,a*=l}if(t=Math.max(Math.abs(s),Math.abs(a)),(!b||t<b)&&v(o,b=t)&&(b/=40),v(o,t)&&(i/=40,a/=40,s/=40),i=Math[1<=i?"floor":"ceil"](i/b),a=Math[1<=a?"floor":"ceil"](a/b),s=Math[1<=s?"floor":"ceil"](s/b),m.settings.normalizeOffset&&this.getBoundingClientRect){var d=this.getBoundingClientRect();r=e.clientX-d.left,p=e.clientY-d.top}return e.deltaX=a,e.deltaY=s,e.deltaFactor=b,e.offsetX=r,e.offsetY=p,e.deltaMode=0,n.unshift(e,i,a,s),y&&clearTimeout(y),y=setTimeout(h,200),(c.event.dispatch||c.event.handle).apply(this,n)}}function h(){b=null}function v(e,t){return m.settings.adjustOldDeltas&&"mousewheel"===e.type&&t%120==0}c.fn.extend({mousewheel:function(e){return e?this.bind("mousewheel",e):this.trigger("mousewheel")},unmousewheel:function(e){return this.unbind("mousewheel",e)}})}); \ No newline at end of file diff --git a/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-altkeyspopup.min.js b/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-altkeyspopup.min.js new file mode 100644 index 0000000000..4597ca7f39 --- /dev/null +++ b/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-altkeyspopup.min.js @@ -0,0 +1,2 @@ +/*! jQuery UI Virtual Keyboard Alt Key Popup v2.0.0 */ +!function(e){"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof module&&"object"==typeof module.exports?module.exports=e(require("jquery")):e(jQuery)}(function(k){"use strict";var b=k.keyboard;k.extend(b.css,{altKeyPopup:"ui-keyboard-popup",altKeyOverlay:"ui-keyboard-overlay",altKeyPopupOpen:"ui-keyboard-popup-open"}),b.altKeys=k.extend({a:"å æ ā ă ą à á â ã ä",A:"Å Æ Ā Ă Ą À Á  à Ä",c:"ç ć ĉ ċ č",C:"Ç Ć Ĉ Ċ Č",d:"ď ð ď",D:"Ď Ð Ď",e:"ė ę ĕ ě ə è é ê ë ē",E:"Ė Ę Ĕ Ě Ǝ È É Ê Ë Ē",g:"ģ ğ ĝ ġ",G:"Ģ Ğ Ĝ Ġ",h:"ĥ ħ",H:"Ĥ Ħ",i:"ı į ī ï î í ì ĩ ĭ",I:"İ Į Ī Ï Î Í Ì Ĩ Ĭ",j:"ĵ",J:"Ĵ",k:"ķ",K:"Ķ",l:"Ł Ľ Ļ Ĺ Ŀ",L:"ł ľ ļ ĺ ŀ",n:"ʼn ň ņ ń ñ",N:"ʼn Ň Ņ Ń Ñ",o:"œ ő ø ö õ ô ó ò ō ŏ",O:"Œ Ő Ø Ö Õ Ô Ó Ò Ō Ŏ",r:"ŕ ř ŗ",R:"Ŕ Ř Ŗ",s:"ś š ş ß § ŝ",S:"Ś Š Ş ẞ § Ŝ",t:"þ ť ț ţ ŧ",T:"Þ Ť Ț Ţ Ŧ",u:"ų ű ů ū ü û ú ù ũ ŭ",U:"Ų Ű Ů Ū Ü Û Ú Ù Ũ Ŭ",w:"ŵ",W:"Ŵ",y:"ý",Y:"Ý",z:"ź ż ž",Z:"Ź Ż Ž","!":"¡",$:"€ £ ¤ ¥ ¢ ₡ ₱ ₩ ₹ ₪ ₭ ₮ ₦ ₤","?":"¿","'":"〈 「 『 “",'"':"〉 」 』 ”","(":"《 【 〔",")":"》 】 〕"},b.altKeys),k.fn.addAltKeyPopup=function(e){var p={holdTime:500,popupVisible:"popup-visible",popupHidden:"popup-hidden",popupPosition:null};return this.each(function(){var d=k(this).data("keyboard");if(d){if(d.altkeypopup_options=k.extend({},p,d.altkeypopup_options,e),d.altkeypopup_namespace)return d.altkeypopup_setup();d.altkeypopup_namespace=d.namespace+"AltKeyPopup",d.extensionNamespace.push(d.altkeypopup_namespace),d.altkeypopup_setup=function(){var n,e="mousedown touchstart ".split(" ").join(d.altkeypopup_namespace+" "),p="mouseup touchend touchcancel ".split(" ").join(d.altkeypopup_namespace+" ");d.options.repeatRate=0,d.unbindButton(d.altkeypopup_namespace).bindButton(e,function(){clearTimeout(n);var e=k(this),p=e.attr("data-value")||"",o=d.altkeypopup_options.holdTime;p in b.altKeys&&(o?n=setTimeout(function(){d.altKeyPopup_popup(p,e)},o):d.altKeyPopup_popup(p,e))}).bindButton(p,function(){clearTimeout(n)}),d.altkeypopup_blockingFlag=!1,d.$preview.unbind("keypress keydown keyup ".split(" ").join(d.altkeypopup_namespace+" ").trim()).bind("keypress keydown keyup ".split(" ").join(d.altkeypopup_namespace+" "),function(e){if("keyup"===e.type)return clearTimeout(n),d.altkeypopup_blockingFlag=!1,"Escape"!==e.key;var p=b.builtLayouts[d.layout],o=k(e.target),t=e.key,a=e.key;return"keydown"===e.type&&a in b.altKeys?d.altkeypopup_blockingFlag!==t&&(d.altkeypopup_blockingFlag=t,!0):d.altkeypopup_blockingFlag?(p.hasMappedKeys&&p.mappedKeys.hasOwnProperty(a)&&(a=p.mappedKeys[a]),a in b.altKeys&&(clearTimeout(n),n=setTimeout(function(){d.altkeypopup_blockingFlag===t&&d.altKeyPopup_popup(a,o)},d.altkeypopup_options.holdTime)),!0):void 0})},d.altKeyPopup_close=function(){d.altkeypopup_blockingFlag=!1,d.altKeyPopup_$overlay=null,setTimeout(function(){if(d.$keyboard.length){d.$keyboard.removeClass(b.css.altKeyPopupOpen);var e=d.$keyboard.find("."+b.css.altKeyOverlay);e&&e.remove()}},1),k(document).unbind(d.altkeypopup_namespace),d.$preview.focus(),d.options.ignoreEsc=d.altKeyPopup_savedIgnoreEsc,d.$el.trigger(d.altkeypopup_options.popupHidden,[d])},d.altKeyPopup_popup=function(e,p){if(!d.$keyboard.find("."+b.css.altKeyOverlay).length){var o,t,a,n,i,u,s,l,y,r=b.css,c={$kb:d.$keyboard,kbWidth:d.$keyboard.outerWidth(),kbHeight:d.$keyboard.outerHeight(),$key:p};d.altKeyPopup_$overlay=k('<div class="'+r.altKeyOverlay+'" />').css({width:c.kbWidth,height:c.kbHeight}).appendTo(d.$keyboard).bind("click touchstart",function(){d.altKeyPopup_close()}),y="inactive hidden ".split(" ").join(d.altkeypopup_namespace+" "),d.$keyboard.addClass(b.css.altKeyPopupOpen),d.$el.unbind(y).bind(y,function(){d.altKeyPopup_close()}),"bksp"!==e&&b.keyaction.bksp(d),t=k('<div class="'+r.altKeyPopup+" "+d.options.css.container+'" />'),o=b.altKeys[e].split(/\s+/),d.buildRow(t,0,o,[]),a=t.appendTo(d.altKeyPopup_$overlay).children().bind("mousedown touchstart",function(){d.altKeyPopup_close()}).bind("mouseover mouseleave",function(e){a.removeClass(d.options.css.buttonHover),"mouseleave"!==e.type&&k(this).addClass(d.options.css.buttonHover)}),d.altKeyPopup_navigate(!0),d.altKeyPopup_savedIgnoreEsc=d.options.ignoreEsc,d.options.ignoreEsc=!0,k(document).unbind(d.altkeypopup_namespace).bind("keydown"+d.altkeypopup_namespace,function(){return!1}).bind("keyup"+d.altkeypopup_namespace,function(e){return"Escape"===e.key?(e.which=0,d.altKeyPopup_close()):d.altKeyPopup_navigate(e),!1}),s=(c.$popup=t).outerWidth(),(n=p.position().left-s/2)+s>c.kbWidth&&(n=c.kbWidth-s)<0&&t.css({width:c.kbWidth,height:"auto"}),i=p.position().top-p.outerHeight()-5,l=t.outerHeight(),u=d.$keyboard.find("."+r.keySet).position().top,i+l>c.kbHeight&&(i=c.kbHeight-l)<u&&t.css({height:c.popupHeight,width:"auto"}),c.popupWidth=t.outerWidth(),c.popupHeight=t.outerHeight(),c.popupLeft=n<0?0:n,c.popupTop=i<u?u:i,t.css({position:"absolute",left:c.popupLeft,top:c.popupTop}),"function"==typeof d.altkeypopup_options.popupPosition&&d.altkeypopup_options.popupPosition(d,c),d.$preview.blur(),d.$el.trigger(d.altkeypopup_options.popupVisible,[d])}},d.altKeyPopup_navigate=function(e){var p,o=b.css,t=(b.navigationKeys,d.options.css.buttonHover),a=d.$keyboard.find("."+o.altKeyPopup).find("."+o.keyButton),n=a.length-1;if(!0===e)return a.eq(0).addClass(t),void(d.altKeyPopup_currentIndex=0);if(p=d.altKeyPopup_currentIndex,"Enter"===e.key)return d.insertText(a.eq(p).attr("data-value")),d.altKeyPopup_close(),!0;switch(e.key){case"End":p=n;break;case"Home":p=0;break;case"ArrowLeft":p-=1;break;case"ArrowRight":p+=1}p<0&&(p=0),n<p&&(p=n),d.altKeyPopup_currentIndex=p,a.removeClass(t).eq(p).addClass(t)},d.options.alwaysOpen&&d.isVisible()&&d.altkeypopup_setup(),d.$el.unbind(b.events.kbBeforeVisible+d.altkeypopup_namespace).bind(b.events.kbBeforeVisible+d.altkeypopup_namespace,function(){d.altkeypopup_setup()})}})}}); \ No newline at end of file diff --git a/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-autocomplete.min.js b/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-autocomplete.min.js new file mode 100644 index 0000000000..3d910eb73f --- /dev/null +++ b/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-autocomplete.min.js @@ -0,0 +1,2 @@ +/*! jQuery UI Virtual Keyboard Autocomplete v1.11.4 */ +!function(e){"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof module&&"object"==typeof module.exports?module.exports=e(require("jquery")):e(jQuery)}(function(c){"use strict";c.fn.addAutocomplete=function(l){var u={position:{of:null,my:"right top",at:"left top",collision:"flip"},events:"autocomplete",data:""};return this.each(function(){var t,o,a=c(this).data("keyboard");a&&(o=a.namespace+"Autocomplete",a.autocomplete_namespace=o,a.extensionNamespace.push(o),a.autocomplete_init=function(){var e=(t=a.autocomplete_options=c.extend(!0,{},u,l)).events||t.data||"autocomplete";a.options.alwaysOpen&&a.isVisible()&&a.autocomplete_setup(),a.$el.unbind(o).bind(c.keyboard.events.kbVisible+o,function(){a.autocomplete_setup()}).bind(c.keyboard.events.kbHidden+o,function(){a.$el[t.data||"autocomplete"]("close")}).bind(c.keyboard.events.kbChange+o,function(){a.hasAutocomplete&&a.isVisible()&&a.$el.val(a.$preview.val())}).bind(e+"open"+o,function(){if(a.hasAutocomplete){var e=c.extend({},t.position);e.of=e.of||a.$keyboard,a.$autocomplete.menu.element.position(e)}}).bind(e+"select"+o,function(e,t){a.autocomplete_getVal(t.item)})},a.autocomplete_getVal=function(e){var t;switch(typeof e){case"string":t=e||"";break;case"object":t=e.label||e.value||"";break;default:t=a.preview&&a.preview.value||a.el.value}t=t.toString(),a.hasAutocomplete&&""!==t&&((a.$preview||a.$el).val(t).focus(),a.last.start=t.length,a.last.end=t.length,a.last.val=t)},a.autocomplete_update=function(e){clearTimeout(a.$autocomplete.searching),a.$autocomplete.searching=setTimeout(function(){a.$autocomplete.term!==a.$autocomplete.element.val()&&(a.$autocomplete.selectedItem=null,a.$autocomplete.search(null,e))},a.$autocomplete.options.delay)},a.autocomplete_navKeys={8:"backSpace",9:"tab",13:"enter",20:"capsLock",27:"escape",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down",45:"insert",46:"delete"},a.autocomplete_setup=function(){var t;if(a.$autocomplete=a.$el.data(a.autocomplete_options.data)||a.$el.data("uiAutocomplete")||a.$el.data("ui-autocomplete")||a.$el.data("autocomplete"),a.hasAutocomplete=void 0!==a.$autocomplete&&!a.$autocomplete.options.disabled,a.hasAutocomplete){a.$preview.bind("keydown"+o+" keypress"+o,function(e){a.$preview&&e.namespace!==a.$autocomplete.eventNamespace&&(e.namespace=a.$autocomplete.eventNamespace.slice(1),(t=a.autocomplete_navKeys[e.which])?a.el!==a.preview&&(a.$el.triggerHandler(e),"enter"===t&&setTimeout(function(){a.$autocomplete&&(a.$preview.val(a.$autocomplete.selectedItem.value),a.$preview.focus())},100)):a.autocomplete_update(e))});var e="mouseup mousedown mouseleave touchstart touchend touchcancel ".split(" ").join(o+" ");a.bindButton(e,function(e){a.autocomplete_update(e)})}a.escCloseCallback.autocomplete||(a.escCloseCallback.autocomplete=a.checkAutocompleteMenu)},a.checkAutocompleteMenu=function(e){return a.hasAutocomplete&&e.closest("ul").hasClass("ui-autocomplete")},a.autocomplete_destroy=function(){clearTimeout(a.$autocomplete.searching),a.hasAutocomplete=!1,a.$el.unbind(o),a.$preview&&(a.$preview.unbind(o),a.unbindButton(o)),delete a.$autocomplete},a.autocomplete_init())})}}); \ No newline at end of file diff --git a/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-caret.min.js b/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-caret.min.js new file mode 100644 index 0000000000..e190893cf8 --- /dev/null +++ b/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-caret.min.js @@ -0,0 +1,2 @@ +/*! jQuery UI Virtual Keyboard Virtual Caret v1.1.5 (beta) */ +!function(e){"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof module&&"object"==typeof module.exports?module.exports=e(require("jquery")):e(jQuery)}(function(b){"use strict";var h=b.keyboard;h.firefox=void 0!==window.mozInnerScreenX,b.extend(h.css,{caret:"ui-keyboard-caret",caretMirror:"ui-keyboard-mirror-div"}),b.fn.addCaret=function(e){var t={caretClass:"",charAttr:"data-character",charIndex:1,offsetX:0,offsetY:0,adjustHt:0};return this.each(function(){var f,i,o=h.events,u=b(this).data("keyboard");u&&(f=u.caret_options=b.extend({},t,e),i=u.caret_namespace=u.namespace+"caret",u.extensionNamespace.push(i),u.textareaCaretProperties=["direction","boxSizing","width","height","overflowX","overflowY","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","borderStyle","paddingTop","paddingRight","paddingBottom","paddingLeft","fontStyle","fontVariant","fontWeight","fontStretch","fontSize","fontSizeAdjust","lineHeight","fontFamily","textAlign","textTransform","textIndent","textDecoration","letterSpacing","wordSpacing","tabSize","MozTabSize"],u.caret_setup=function(){var e=h.css,t="keyup keypress mouseup mouseleave ".split(" ").join(i+" "),r="position:absolute;visibility:hidden;top:-9999em;left:-9999em;white-space:pre-wrap;z-index:-10;"+("INPUT"===u.preview.nodeName?"":"word-wrap:break-word;");u.$keyboard.find("."+e.caretMirror).remove(),u.caret_$div=b('<div class="'+e.caretMirror+'" style="'+r+'">').appendTo(u.$keyboard),u.$caret&&u.$caret.remove(),u.$caret=b('<div class="'+e.caret+" "+f.caretClass+'" style="position:absolute;">').insertAfter(u.$preview),u.$el.unbind(o.kbChange+i).bind(o.kbChange+i,function(){u.findCaretPos()}),u.$preview.unbind(t).bind(t,function(){u.findCaretPos()})},u.findCaretPos=function(){if(u.caret_$div){var t,r,e,i,o,n,a,s,d=u.preview,c=parseFloat(u.$preview.css("fontSize")),p="INPUT"===d.nodeName,l=u.caret_$div[0];t=l.style,r=window.getComputedStyle?getComputedStyle(d,null):d.currentStyle,i=h.caret(u.$preview),o=Math["ltr"===r.direction?"max":"min"](i.start,i.end),u.textareaCaretProperties.forEach(function(e){t[e]=r[e]}),h.firefox&&(t.width=parseInt(r.width,10)-2+"px",d.scrollHeight>parseInt(r.height,10)&&(t.overflowY="scroll")),t.width=parseInt(p?d.scrollWidth:r.width,10)+(p?2*c:0)+"px",l.textContent=d.value.substring(0,o),"INPUT"===d.nodeName&&(l.textContent=l.textContent.replace(/\x20/g," ")),(a=document.createElement("span")).textContent=d.value.substring(o)||"",l.appendChild(a),s=b(a).position(),i="center"===t.textAlign?c:0,u.caretPos={top:s.top+parseInt(r.borderTopWidth,10)+f.offsetY,left:s.left+parseInt(r.borderLeftWidth,10)+f.offsetX-i},e=parseInt(u.$caret.css("margin-top"),10),t=Math.round(c+2*e)+f.adjustHt,s=u.$preview.position(),u.$caret.css({top:s.top-d.scrollTop+u.caretPos.top-e,left:s.left-d.scrollLeft+u.caretPos.left,height:t}),n=d.value.substring(o,o+f.charIndex).replace(/\s/," ")||" ",u.$caret.attr(f.charAttr,n)}},u.$el.unbind(i).bind(o.kbBeforeVisible+i,function(){u.caret_setup()}).bind(o.kbVisible+i,function(){u.findCaretPos()}).bind(o.kbHidden+i,function(){var e="keyup keypress mouseup mouseleave ".split(" ").join(i+" ");u.$preview.unbind(e),u.$caret.remove(),u.$caret=null,u.caret_$div=null}),u.options.alwaysOpen&&u.isVisible()&&(u.caret_setup(),u.findCaretPos()))})}}); \ No newline at end of file diff --git a/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-extender.min.js b/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-extender.min.js new file mode 100644 index 0000000000..44549bf0f1 --- /dev/null +++ b/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-extender.min.js @@ -0,0 +1,2 @@ +/*! jQuery UI Virtual Keyboard Extender v1.0.3 */ +!function(e){"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof module&&"object"==typeof module.exports?module.exports=e(require("jquery")):e(jQuery)}(function(o){"use strict";var s=o.keyboard;s.css.extender="ui-keyboard-extender",s.language.en.display.extender=" :toggle_numpad",s.layouts.numpad={normal:["{clear} / * -","7 8 9 +","4 5 6 %","1 2 3 =","0 {dec} {left} {right}"]},s.keyaction.extender=function(e){return e.extender_toggle(),!1},o.fn.addExtender=function(e){var n={layout:"numpad",showing:!1,reposition:!0};return this.each(function(){var t=o(this).data("keyboard");if(t){if(t.extender_options=o.extend({},n,t.extender_options,e),t.extender_namespace)return t.extender_layoutSwitcher();t.extender_namespace=t.namespace+"extender",t.extensionNamespace.push(t.extender_namespace),t.extender_layoutSwitcher=function(){t.extender_lastKeyset=t.last.keyset,t.extender_bindEvents(!1),t.$el.one(s.events.kbBeforeVisible,function(){t.shiftActive=t.extender_lastKeyset[0],t.altActive=t.extender_lastKeyset[1],t.metaActive=t.extender_lastKeyset[2],t.showKeySet(),t.extender_setup(),t.extender_bindEvents()}),t.redraw()},t.extender_bindEvents=function(e){var n=s.events.kbBeforeVisible+t.extender_namespace;t.$el.unbind(n),!1!==e&&t.$el.bind(n,function(){t.extender_setup()})},t.extender_setup=function(){var e,n=t.extender_options.layout;void 0===s.builtLayouts[n]&&t.buildKeyboard(n),(e=s.builtLayouts[n].$keyboard.find("."+s.css.keySet+"-normal").clone()).removeClass().removeAttr("name").addClass(s.css.extender).children("button").removeAttr("data-pos"),e[0].style.display=t.extender_options.showing?"inline-block":"none",t.$keyboard.find("div."+s.css.extender).remove(),t.$keyboard.append(e),t.extender_toggle(t.extender_options.showing),t.bindKeys()},t.extender_toggle=function(e){t.extender_options.showing=void 0===e?!t.extender_options.showing:e,t.$keyboard.find("button."+s.css.extender).toggleClass(t.options.css.buttonActive,t.extender_options.showing).end().find("div."+s.css.extender)[0].style.display=t.extender_options.showing?"inline-block":"none",t.extender_options.reposition&&o(window).trigger("resize")},t.options.alwaysOpen&&t.isVisible()&&t.extender_setup(),t.extender_bindEvents()}})}}); \ No newline at end of file diff --git a/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-mobile.min.js b/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-mobile.min.js new file mode 100644 index 0000000000..60ffd2daa1 --- /dev/null +++ b/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-mobile.min.js @@ -0,0 +1,2 @@ +/*! jQuery UI Virtual Keyboard for jQuery Mobile Themes v1.4.1 */ +!function(e){"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof module&&"object"==typeof module.exports?module.exports=e(require("jquery")):e(jQuery)}(function(a){a.fn.addMobile=function(e){var n,t={container:{theme:"b",cssClass:"ui-body"},input:{theme:"b",cssClass:""},buttonMarkup:{theme:"b",cssClass:"ui-btn",shadow:"true",corners:"true"},buttonHover:{theme:"b",cssClass:"ui-btn-hover"},buttonAction:{theme:"b",cssClass:"ui-btn-active"},buttonActive:{theme:"b",cssClass:"ui-btn-active"},allThemes:"a b c"};return this.each(function(){var o=a(this).data("keyboard");o&&void 0!==a.fn.textinput&&(o.mobile_options=n=a.extend(!0,{},t,e),o.mobile_themes=a.trim((" "+n.allThemes).split(" ").join(" "+n.buttonMarkup.cssClass+"-")+(" "+n.allThemes).split(" ").join(" "+n.buttonAction.cssClass+"-")+(" "+n.allThemes).split(" ").join(" "+n.buttonActive.cssClass+"-")),void 0===o.options.mobile_savedActiveClass&&(o.options.mobile_savedActiveClass=""+o.options.css.buttonActive),o.mobile_init=function(){var e=o.namespace+"Mobile";a("."+a.keyboard.css.input).textinput(),o.options.alwaysOpen&&o.isVisible&&o.mobile_setup(),o.extensionNamespace.push(e),o.$el.unbind(e).bind(a.keyboard.events.kbBeforeVisible+e,function(){o&&o.el.active&&o.$keyboard.length&&o.$keyboard.css("visibility","hidden")}).bind(a.keyboard.events.kbVisible+e,function(){o&&o.el.active&&o.$keyboard.length&&(o.mobile_setup(),o.$keyboard.css("visibility","visible"),o.$preview.focus())})},o.mobile_setup=function(){var e,t=a.keyboard.css,s=o.options,i=o.mobile_themes;o.mobile_$actionKeys=o.$keyboard.find("."+o.options.css.buttonAction),s.css.buttonActive=s.mobile_savedActiveClass+" "+o.modOptions(n.buttonActive,n.buttonMarkup),o.$keyboard.addClass(o.modOptions(n.container,n.container)).find("."+t.preview).removeClass("ui-widget ui-widget-content").addClass(o.modOptions(n.input,n.input)).end().find("button").removeClass(a.trim("ui-corner-all ui-state-default "+i)).addClass(o.modOptions(n.buttonMarkup,n.buttonMarkup)).not(o.mobile_$actionKeys).hover(function(){a(this).removeClass(i).addClass(o.modOptions(n.buttonHover,n.buttonMarkup))},function(){a(this).removeClass(i+" "+n.buttonHover.cssClass).addClass(o.modOptions(n.buttonMarkup,n.buttonMarkup))}),o.mobile_$actionKeys.removeClass(i).addClass(o.modOptions(n.buttonAction,n.buttonMarkup)),o.msie&&o.$preview[0]!==o.el&&(o.$preview.hide(),o.$keyboard.css("width",""),o.width=o.$keyboard.outerWidth(),o.$keyboard.width(o.width+parseInt(o.$preview.css("fontSize"),10)),o.$preview.width(o.width),o.$preview.show()),a.ui&&a.ui.position&&((e=s.position).of=e.of||o.$el.data("keyboardPosition")||o.$el,e.collision=e.collision||"flipfit flipfit",o.$keyboard.position(e))},o.modOptions=function(e,t){return" "+(e.cssClass||"")+" "+(t&&t.cssClass?t.cssClass+"-"+(e.theme||""):"")+("true"==e.shadow?" ui-shadow":"")+("true"==e.corners?" ui-corner-all":"")},o.mobile_init())})}}); \ No newline at end of file diff --git a/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-navigation.min.js b/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-navigation.min.js new file mode 100644 index 0000000000..a424d1e230 --- /dev/null +++ b/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-navigation.min.js @@ -0,0 +1,2 @@ +/*! jQuery UI Virtual Keyboard Navigation v1.7.0 */ +!function(e){"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof module&&"object"==typeof module.exports?module.exports=e(require("jquery")):e(jQuery)}(function(u){"use strict";u.keyboard=u.keyboard||{},u.keyboard.navigationKeys={toggle:112,enter:13,pageup:33,pagedown:34,end:35,home:36,left:37,up:38,right:39,down:40,caretrt:45,caretlt:46,caretright:function(e){u.keyboard.keyaction.right(e)},caretleft:function(e){u.keyboard.keyaction.left(e)}},u.fn.addNavigation=function(t){return this.each(function(){var c,e,v=u(this).data("keyboard"),y=v.options,n=u.keyboard.events,l=u.keyboard.css;v&&(v.navigation_options=c=u.extend({},{position:[0,0],toggleMode:!1,focusClass:"hasFocus",toggleKey:null,rowLooping:!1},t),v.navigation_keys=e=u.extend({},u.keyboard.navigationKeys),v.navigation_namespace=v.namespace+"Nav",v.extensionNamespace.push(v.navigation_namespace),v.saveNav=[v.options.tabNavigation,v.options.enterNavigation],v.allNavKeys=u.map(e,function(e){return e}),v.navigation_init=function(){v.$keyboard.toggleClass(c.focusClass,c.toggleMode).find("."+l.keySet+":visible").find("."+l.keyButton+'[data-pos="'+c.position[0]+","+c.position[1]+'"]').addClass(y.css.buttonHover),v.$preview.unbind(v.navigation_namespace).bind("keydown"+v.navigation_namespace,function(e){return v.checkKeys(e.which)})},v.checkKeys=function(e,t){if(void 0!==e&&v.isVisible()){var a=v.navigation_keys;return(e===(c.toggleKey||a.toggle)||t)&&(c.toggleMode=!t&&!c.toggleMode,v.options.tabNavigation=!c.toggleMode&&v.saveNav[0],v.options.enterNavigation=!c.toggleMode&&v.saveNav[1]),v.$keyboard.toggleClass(c.focusClass,c.toggleMode),c.toggleMode&&e===a.enter?(v.$keyboard.find("."+l.keySet+":visible").find("."+l.keyButton+'[data-pos="'+c.position[0]+","+c.position[1]+'"]').trigger(n.kbRepeater),!1):c.toggleMode&&0<=u.inArray(e,v.allNavKeys)?(v.navigateKeys(e),!1):void 0}},v.getMaxIndex=function(e,t){return e.find("."+l.keyButton+'[data-pos^="'+t+',"]').length-1},v.leftNavigateKey=function(e,t){var a=v.navigation_options.rowLooping,n=e-1;return 0<=n?n:a?t:0},v.rightNavigateKey=function(e,t){var a=v.navigation_options.rowLooping,n=e+1;return n<=t?n:a?0:t},v.navigateKeys=function(e,t,a){if(v.isVisible()){a="number"==typeof a?a:c.position[1],t="number"==typeof t?t:c.position[0];var n,o=v.$keyboard.find("."+l.keySet+":visible"),i=o.find("."+l.endRow).length-1,s=v.getMaxIndex(o,t),r=v.last,g=v.$preview.val().length,d=v.navigation_keys;switch(e){case d.pageup:t=0;break;case d.pagedown:t=i;break;case d.end:a=s;break;case d.home:a=0;break;case d.left:a=v.leftNavigateKey(a,s);break;case d.up:t+=0<t?-1:0,n=v.getMaxIndex(o,t),a=a===s?n:a;break;case d.right:a=v.rightNavigateKey(a,s);break;case d.down:t+=i<t+1?0:1,n=v.getMaxIndex(o,t),a=a===s?n:a;break;case d.caretrt:r.start++;break;case d.caretlt:r.start--}e!==d.caretrt&&e!==d.caretlt||(r.start=r.start<0?0:r.start>g?g:r.start,v.last.start=v.last.end=r.end=r.start,u.keyboard.caret(v.$preview,v.last)),(s=v.getMaxIndex(o,t))<a&&(a=s),o.find("."+y.css.buttonHover).removeClass(y.css.buttonHover),o.find("."+l.keyButton+'[data-pos="'+t+","+a+'"]').addClass(y.css.buttonHover),c.position=[t,a]}},v.options.alwaysOpen&&v.isVisible()&&(v.$keyboard.find("."+y.css.buttonHover).removeClass(y.css.buttonHover),v.navigation_init()),v.$el.unbind(v.navigation_namespace).bind(n.kbVisible,function(){v.$keyboard.find("."+y.css.buttonHover).removeClass(y.css.buttonHover),v.navigation_init()}).bind(n.kbInactive+" "+n.kbHidden,function(e){v.checkKeys(e.which,!0)}).bind(n.kbKeysetChange,function(){v.navigateKeys(null)}).bind("navigate navigateTo",function(e,t,a){var n;(t=isNaN(t)?t.toLowerCase():t)in v.navigation_keys?(n=v.navigation_keys[t],isNaN(n)&&n in u.keyboard.keyaction?u.keyboard.keyaction[n](v,this,e):"function"==typeof n?n(v):v.checkKeys(n)):"string"==typeof t&&t in u.keyboard.keyaction?u.keyboard.keyaction[t](v,this,e):v.navigateKeys(null,t,a)}))})}}); \ No newline at end of file diff --git a/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-previewkeyset.min.js b/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-previewkeyset.min.js new file mode 100644 index 0000000000..09d8df09a2 --- /dev/null +++ b/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-previewkeyset.min.js @@ -0,0 +1,2 @@ +/*! jQuery UI Virtual Keyboard previewKeyset v1.1.1 */ +!function(e){"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof module&&"object"==typeof module.exports?module.exports=e(require("jquery")):e(jQuery)}(function(d){"use strict";d.keyboard=d.keyboard||{},d.fn.previewKeyset=function(n){return this.each(function(){var e=d(this).data("keyboard"),t=e.namespace+"Preview";e&&(e.previewKeyset_options=d.extend({},{sets:["normal","shift","alt","alt-shift"]},n),e.extensionNamespace.push(t),e.previewKeyset=function(){var a=d.keyboard.css,r=e.previewKeyset_options.sets,s=e.$keyboard.find("."+a.keySet).filter('[name="'+r.join('"],[name="')+'"]');1<s.length&&s.eq(0).find("."+a.keyButton).not("."+a.keyAction).each(function(){var e,t,n={},i=r.length,o=s.find('button[data-pos="'+d(this).attr("data-pos")+'"]');for(e=0;e<i;e++)t=o.eq(e).parent().attr("name"),0<=d.inArray(t,r)&&(n["data-"+t]=o.eq(e).find("."+a.keyText).text());o.attr(n)})},e.options.alwaysOpen&&e.isVisible()?e.previewKeyset():e.$el.unbind(d.keyboard.events.kbBeforeVisible+t).bind(d.keyboard.events.kbBeforeVisible+t,function(){e.previewKeyset()}))})}}); \ No newline at end of file diff --git a/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-scramble.min.js b/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-scramble.min.js new file mode 100644 index 0000000000..29bd8f0604 --- /dev/null +++ b/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-scramble.min.js @@ -0,0 +1,2 @@ +/*! jQuery UI Virtual Keyboard Scramble Extension v1.8.0 */ +!function(e){"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof module&&"object"==typeof module.exports?module.exports=e(require("jquery")):e(jQuery)}(function(f){"use strict";f.keyboard=f.keyboard||{},f.fn.addScramble=function(e){var a={targetKeys:/[a-z\d]/i,byRow:!0,byKeySet:!1,randomizeOnce:!0,randomizeInput:!1,init:null,sameForAll:!1};return this.each(function(){var b,c=f(this).data("keyboard"),t=c.namespace+"Scramble",o=c.options;c&&!c.scramble_options&&(b=c.scramble_options=f.extend({},a,e),c.extensionNamespace.push(t),b.orig_create=o.create,c.scramble_setup=function(e){var t,o,a,n,r,i,u,y,d,s,l;if(t=e.find("."+f.keyboard.css.keySet),e.length){for(b.byKeySet&&(t=t.eq(0)),o=0;o<t.length;o++)if(a=t.eq(o),u=0,l=[],d=[],y=[],s=[],a.children("button, span, br").each(function(){"BR"===this.tagName?(b.byRow?(l.push(this),d.push(!1),s[u]=l,y[u]=d,l=[],d=[]):(s[u]=this,y[u]=!1),u++):(i=!(1!==(i=f(this).attr("data-value")||"").length||!b.targetKeys.test(i))&&i,b.byRow?(l.push(this),d.push(i)):(s[u]=this,y[u]=i,u++))}),a.find("."+f.keyboard.css.endRow).remove(),b.byRow)for(r=0;r<s.length;r++)for(l=c.shuffle(s[r],y[r]),n=0;n<l.length;n++)a.append(l[n]);else for(l=c.shuffle(s,y),n=0;n<l.length;n++)a.append(l[n]);return b.byKeySet&&(e=c.realign(e)),e}},c.getRandomUInt=function(e){var t=window.crypto||window.msCrypto;if(void 0===t)return Math.floor(Math.random()*e);var o=new Uint32Array(1);return t.getRandomValues(o),o[0]%e},c.shuffle=function(e,t){for(var o,a,n=e.length;0<n;)a=c.getRandomUInt(n),!1===t[n-1]&&n--,!1!==t[n-1]&&!1!==t[a]&&(o=e[--n],e[n]=e[a],e[a]=o);return e},c.realign=function(e){var o,a,n,r=e.find("."+f.keyboard.css.keySet),t=r.eq(0);return r=r.filter(":gt(0)"),t.children().each(function(e,t){a="BR"===t.tagName,n=f(t).attr("data-pos"),r.each(function(e,t){o=a?"br:first":'button[data-pos="'+n+'"]',f(t).find(o).appendTo(t)})}),e},c.setScrambleLayout=function(){if(!/^scrambled/.test(o.layout)){c.orig_layout=o.layout;var e=e||"scrambled"+Math.round(1e4*Math.random());o.layout=b.sameForAll?e:"scrambled"+Math.round(1e4*Math.random())}},o.create=function(){var e=o.layout;f.keyboard.builtLayouts[e]={mappedKeys:{},acceptedKeys:[],$keyboard:null},c.layout=o.layout=c.orig_layout,c.buildKeyboard(c.layout,!0),c.layout=o.layout=e,f.keyboard.builtLayouts[e]=f.extend(!0,{},f.keyboard.builtLayouts[c.orig_layout]),b.randomizeOnce&&(f.keyboard.builtLayouts[e].$keyboard=c.scramble_setup(f.keyboard.builtLayouts[c.orig_layout].$keyboard.clone())),c.$keyboard=f.keyboard.builtLayouts[e].$keyboard,b.randomizeInput?c.$el.unbind(f.keyboard.events.kbChange+t).bind(f.keyboard.events.kbChange+t,function(e,t){b.targetKeys.test(t.last.key)&&(t.$keyboard.find("."+o.css.buttonHover).removeClass(o.css.buttonHover),t.$keyboard=t.scramble_setup(t.$keyboard),f(document.elementFromPoint(e.clientX,e.clientY)).trigger("mouseenter"))}):b.randomizeOnce||c.$el.unbind(f.keyboard.events.kbBeforeVisible+t).bind(f.keyboard.events.kbBeforeVisible+t,function(e,t){t.$keyboard=t.scramble_setup(t.$keyboard)}),"function"==typeof b.orig_create&&b.orig_create(c)},c.setScrambleLayout(),o.alwaysOpen&&c.$keyboard.length?setTimeout(function(){var e=f.keyboard.builtLayouts;c.$keyboard=c.scramble_setup(c.$keyboard),c.setScrambleLayout(),void 0===e[o.layout]&&(e[o.layout]={mappedKeys:f.extend({},e[c.layout].mappedKeys),acceptedKeys:f.extend([],e[c.layout].acceptedKeys),$keyboard:c.$keyboard.clone()}),"function"==typeof b.init&&b.init(c)},0):"function"==typeof b.init&&b.init(c))})}}); \ No newline at end of file diff --git a/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-typing.min.js b/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-typing.min.js new file mode 100644 index 0000000000..1438409159 --- /dev/null +++ b/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.extension-typing.min.js @@ -0,0 +1,2 @@ +/*! jQuery UI Virtual Keyboard Typing Simulator v1.12.0 */ +!function(e){"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof module&&"object"==typeof module.exports?module.exports=e(require("jquery")):e(jQuery)}(function(p){p.fn.addTyping=function(e){var t={showTyping:!0,lockTypeIn:!1,delay:250,hoverDelay:250},f=p.keyboard;return this.each(function(){var g,l=p(this).data("keyboard");l&&(g=l.typing_options=p.extend({},t,e),l.typing_keymap={" ":"space",'"':"34","'":"39"," ":"space","\b":"bksp","{b}":"bksp","{d}":"del","{l}":"left","{r}":"right","\n":"enter","\r":"enter","{e}":"enter","\t":"tab","{t}":"tab"},l.typing_xref={8:"bksp",9:"tab",13:"enter",32:"space",37:"left",39:"right",46:"del"},l.typing_event=!1,l.typing_namespace=l.namespace+"typing",l.extensionNamespace.push(l.typing_namespace),g.savedLockInput=l.options.lockInput,l.typing_setup_reset=function(){var e=f.events,t=l.typing_namespace,n=[e.kbHidden,e.kbInactive,""].join(t+" ");l.$el.unbind(t).bind(n,function(){l.typing_reset()}),l.unbindButton(t).bindButton("mousedown"+t,function(){l.typing_reset()})},l.typing_setup=function(){var e=l.typing_namespace;l.typing_setup_reset(),l.$el.bind(f.events.kbBeforeVisible+e,function(){l.typing_setup()}),l.$preview.unbind(e).bind("keyup"+e,function(e){return!(g.init&&g.lockTypeIn||!g.showTyping)&&(37<=e.which&&e.which<=40?void 0:(16===e.which&&(l.shiftActive=!1),18===e.which&&(l.altActive=!1),16===e.which||18===e.which?(l.showSet(),void setTimeout(function(){l.$preview&&l.$preview.focus()},200)):void 0))}).bind("keydown"+e,function(e){if(g.init&&g.lockTypeIn||!g.showTyping)return!1;e.temp=!1,16===e.which&&(e.temp=!l.shiftActive,l.shiftActive=!0),18===e.which&&(e.temp=!l.altActive,l.altActive=!0),e.temp&&(l.showSet(),l.$preview.focus()),l.typing_event=!0,l.typing_xref[e.which]&&l.typing_findKey("",e)}).bind("keypress"+e,function(e){if(g.init&&g.lockTypeIn)return!1;l.typing_event&&!l.options.lockInput&&(l.typing_reset(),l.typing_event=!0,l.typing_findKey("",e))})},l.typing_reset=function(){l.typing_event=g.init=!1,g.text="",g.len=g.current=0,l.options.lockInput=g.savedLockInput},l.typeIn=function(e,t,n,i){if(!l.isVisible())return clearTimeout(l.typing_timer),void l.typing_reset();if(l.typing_event){if(void 0===e)return l.typing_event=!1,void(l.options.lockInput=g.savedLockInput)}else!0!==g.init&&(g.init=!0,l.options.lockInput=g.lockTypeIn,g.text=e||g.text||"",g.len=g.text.length,g.delay=t||g.delay,g.current=0,n&&(g.callback=n)),"{"===(e=g.text.substring(g.current,++g.current))&&"}"===g.text.substring(g.current+1,g.current+2)&&(e+=g.text.substring(g.current,g.current+=2)),l.typing_findKey(e,i)},l.typing_findKey=function(e,t){var n,i,p,y,s,o,r,a,c=f.css,u=f.builtLayouts[l.layout].mappedKeys;if(l.isOpen&&l.$keyboard.length)if(o=l.$keyboard.find("."+c.keySet),y=e in l.typing_keymap?l.typing_keymap[e]:e,n="."+c.keyButton+'[data-action="'+y+'"]',l.typing_event&&t&&(n="keypress"!==t.type&&l.typing_xref.hasOwnProperty(t.keyCode||t.which)?"."+c.keyPrefix+l.processName(l.typing_xref[t.keyCode||t.which]):(i=String.fromCharCode(t.charCode||t.which),u.hasOwnProperty(i)?"."+c.keyButton+'[data-value="'+u[i].replace(/"/g,'\\"')+'"]':"."+c.keyPrefix+l.processName(i))),(s=o.filter(":visible").find(n)).length?l.typing_simulateKey(s,e,t):(a=(s=l.typing_event?o.find(n):(p=e in l.typing_keymap?l.typing_keymap[e]:l.processName(e),o.find("."+c.keyPrefix+p))).closest("."+c.keySet)).attr("name")?(g.showTyping&&(r=a.attr("name"),l.shiftActive=/shift/.test(r),l.altActive=/alt/.test(r),l.metaActive=l.last.keyset[2]=!!/\bmeta/.test(r)&&r.match(/meta[\w-]+/)[0],l.showSet(l.metaActive)),l.typing_simulateKey(s,e,t)):l.typing_event||(e in l.typing_keymap&&l.typing_keymap[e]in f.keyaction?f.keyaction[l.typing_keymap[e]](l,s,t):l.insertText(e),l.checkCombos(),l.$el.trigger(f.events.kbChange,[l,l.el])),g.current<=g.len&&0!==g.len){if(!l.isVisible())return;l.typing_timer=setTimeout(function(){l.typeIn()},g.delay)}else{if(0!==g.len)return l.typing_reset(),void("function"==typeof g.callback&&(l.typing_timer=setTimeout(function(){"function"==typeof g.callback&&g.callback(l)},g.delay)));l.typing_reset()}},l.typing_simulateKey=function(e,t,n){var i=e.length;l.isVisible()&&(g.showTyping&&i&&(e.filter(":visible").trigger("mouseenter"+l.namespace),g.showTyping&&i&&setTimeout(function(){e.trigger("mouseleave"+l.namespace)},Math.min(g.hoverDelay,g.delay))),l.typing_event||setTimeout(function(){t in l.typing_keymap&&l.typing_keymap[t]in f.keyaction?((n=n||p.Event("keypress")).target=e,f.keyaction[l.typing_keymap[t]](l,e,n)):l.insertText(t),l.checkCombos(),l.$el.trigger(f.events.kbChange,[l,l.el])},g.delay/3))},g.showTyping&&l.options.alwaysOpen&&l.isVisible()?l.typing_setup():l.$el.unbind(f.events.kbBeforeVisible+l.typing_namespace).bind(f.events.kbBeforeVisible+l.typing_namespace,function(){g.showTyping?l.typing_setup():l.typing_setup_reset()}))})}}); \ No newline at end of file diff --git a/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.js b/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.js new file mode 100644 index 0000000000..e1fbefe7ee --- /dev/null +++ b/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.js @@ -0,0 +1,3573 @@ +/*! jQuery UI Virtual Keyboard v1.29.1 *//* +Author: Jeremy Satterfield +Maintained: Rob Garrison (Mottie on github) +Licensed under the MIT License + +An on-screen virtual keyboard embedded within the browser window which +will popup when a specified entry field is focused. The user can then +type and preview their input before Accepting or Canceling. + +This plugin adds default class names to match jQuery UI theme styling. +Bootstrap & custom themes may also be applied - See +https://github.com/Mottie/Keyboard#themes + +Requires: + jQuery v1.4.3+ + Caret plugin (included) +Optional: + jQuery UI (position utility only) & CSS theme + jQuery mousewheel + +Setup/Usage: + Please refer to https://github.com/Mottie/Keyboard/wiki + +----------------------------------------- +Caret code modified from jquery.caret.1.02.js +Licensed under the MIT License: +http://www.opensource.org/licenses/mit-license.php +----------------------------------------- +*/ +/*jshint browser:true, jquery:true, unused:false */ +/*global require:false, define:false, module:false */ +;(function (factory) { + if (typeof define === 'function' && define.amd) { + define(['jquery'], factory); + } else if (typeof module === 'object' && typeof module.exports === 'object') { + module.exports = factory(require('jquery')); + } else { + factory(jQuery); + } +}(function ($) { + 'use strict'; + var $keyboard = $.keyboard = function (el, options) { + var o, base = this; + + base.version = '1.29.1'; + + // Access to jQuery and DOM versions of element + base.$el = $(el); + base.el = el; + + // Add a reverse reference to the DOM object + base.$el.data('keyboard', base); + + base.init = function () { + base.initialized = false; + var k, position, tmp, + kbcss = $keyboard.css, + kbevents = $keyboard.events; + base.settings = options || {}; + // shallow copy position to prevent performance issues; see #357 + if (options && options.position) { + position = $.extend({}, options.position); + options.position = null; + } + base.options = o = $.extend(true, {}, $keyboard.defaultOptions, options); + if (position) { + o.position = position; + options.position = position; + } + + // keyboard is active (not destroyed); + base.el.active = true; + // unique keyboard namespace + base.namespace = '.keyboard' + Math.random().toString(16).slice(2); + // extension namespaces added here (to unbind listeners on base.$el upon destroy) + base.extensionNamespace = []; + // Shift and Alt key toggles, sets is true if a layout has more than one keyset + // used for mousewheel message + base.shiftActive = base.altActive = base.metaActive = base.sets = base.capsLock = false; + // Class names of the basic key set - meta keysets are handled by the keyname + base.rows = ['', '-shift', '-alt', '-alt-shift']; + + base.inPlaceholder = base.$el.attr('placeholder') || ''; + // html 5 placeholder/watermark + base.watermark = $keyboard.watermark && base.inPlaceholder !== ''; + // convert mouse repeater rate (characters per second) into a time in milliseconds. + base.repeatTime = 1000 / (o.repeatRate || 20); + // delay in ms to prevent mousedown & touchstart from both firing events at the same time + o.preventDoubleEventTime = o.preventDoubleEventTime || 100; + // flag indication that a keyboard is open + base.isOpen = false; + // is mousewheel plugin loaded? + base.wheel = typeof $.fn.mousewheel === 'function'; + // special character in regex that need to be escaped + base.escapeRegex = /[-\/\\^$*+?.()|[\]{}]/g; + base.isTextArea = base.el.nodeName.toLowerCase() === 'textarea'; + base.isInput = base.el.nodeName.toLowerCase() === 'input'; + // detect contenteditable + base.isContentEditable = !base.isTextArea && + !base.isInput && + base.el.isContentEditable; + + // keyCode of keys always allowed to be typed + k = $keyboard.keyCodes; + // base.alwaysAllowed = [20,33,34,35,36,37,38,39,40,45,46]; + base.alwaysAllowed = [ + k.capsLock, + k.pageUp, + k.pageDown, + k.end, + k.home, + k.left, + k.up, + k.right, + k.down, + k.insert, + k.delete + ]; + base.$keyboard = []; + // keyboard enabled; set to false on destroy + base.enabled = true; + + base.checkCaret = (o.lockInput || $keyboard.checkCaretSupport()); + + // disable problematic usePreview for contenteditable + if (base.isContentEditable) { + o.usePreview = false; + } + + base.last = { + start: 0, + end: 0, + key: '', + val: '', + preVal: '', + layout: '', + virtual: true, + keyset: [false, false, false], // [shift, alt, meta] + wheel_$Keys: [], + wheelIndex: 0, + wheelLayers: [] + }; + // used when building the keyboard - [keyset element, row, index] + base.temp = ['', 0, 0]; + + // Callbacks + $.each([ + kbevents.kbInit, + kbevents.kbBeforeVisible, + kbevents.kbVisible, + kbevents.kbHidden, + kbevents.inputCanceled, + kbevents.inputAccepted, + kbevents.kbBeforeClose, + kbevents.inputRestricted + ], function (i, callback) { + if (typeof o[callback] === 'function') { + // bind callback functions within options to triggered events + base.$el.bind(callback + base.namespace + 'callbacks', o[callback]); + } + }); + + // Close with esc key & clicking outside + if (o.alwaysOpen) { + o.stayOpen = true; + } + + tmp = $(document); + if (base.el.ownerDocument !== document) { + tmp = tmp.add(base.el.ownerDocument); + } + + var bindings = 'keyup checkkeyboard mousedown touchstart '; + if (o.closeByClickEvent) { + bindings += 'click '; + } + // debounce bindings... see #542 + tmp.bind(bindings.split(' ').join(base.namespace + ' '), function(e) { + clearTimeout(base.timer3); + base.timer3 = setTimeout(function() { + base.checkClose(e); + }, 1); + }); + + // Display keyboard on focus + base.$el + .addClass(kbcss.input + ' ' + o.css.input) + .attr({ + 'aria-haspopup': 'true', + 'role': 'textbox' + }); + + // set lockInput if the element is readonly; or make the element readonly if lockInput is set + if (o.lockInput || base.el.readOnly) { + o.lockInput = true; + base.$el + .addClass(kbcss.locked) + .attr({ + 'readonly': 'readonly' + }); + } + // add disabled/readonly class - dynamically updated on reveal + if (base.isUnavailable()) { + base.$el.addClass(kbcss.noKeyboard); + } + if (o.openOn) { + base.bindFocus(); + } + + // Add placeholder if not supported by the browser + if ( + !base.watermark && + base.getValue(base.$el) === '' && + base.inPlaceholder !== '' && + base.$el.attr('placeholder') !== '' + ) { + // css watermark style (darker text) + base.$el.addClass(kbcss.placeholder); + base.setValue(base.inPlaceholder, base.$el); + } + + base.$el.trigger(kbevents.kbInit, [base, base.el]); + + // initialized with keyboard open + if (o.alwaysOpen) { + base.reveal(); + } + base.initialized = true; + }; + + base.toggle = function () { + if (!base.hasKeyboard()) { return; } + var $toggle = base.$keyboard.find('.' + $keyboard.css.keyToggle), + locked = !base.enabled; + // prevent physical keyboard from working + base.preview.readonly = locked || base.options.lockInput; + // disable all buttons + base.$keyboard + .toggleClass($keyboard.css.keyDisabled, locked) + .find('.' + $keyboard.css.keyButton) + .not($toggle) + .attr('aria-disabled', locked) + .each(function() { + this.disabled = locked; + }); + $toggle.toggleClass($keyboard.css.keyDisabled, locked); + // stop auto typing + if (locked && base.typing_options) { + base.typing_options.text = ''; + } + // allow chaining + return base; + }; + + base.setCurrent = function () { + var kbcss = $keyboard.css, + // close any "isCurrent" keyboard (just in case they are always open) + $current = $('.' + kbcss.isCurrent), + kb = $current.data('keyboard'); + // close keyboard, if not self + if (!$.isEmptyObject(kb) && kb.el !== base.el) { + kb.close(kb.options.autoAccept ? 'true' : false); + } + $current.removeClass(kbcss.isCurrent); + // ui-keyboard-has-focus is applied in case multiple keyboards have + // alwaysOpen = true and are stacked + $('.' + kbcss.hasFocus).removeClass(kbcss.hasFocus); + + base.$el.addClass(kbcss.isCurrent); + base.$keyboard.addClass(kbcss.hasFocus); + base.isCurrent(true); + base.isOpen = true; + }; + + base.isUnavailable = function() { + return ( + base.$el.is(':disabled') || ( + !base.options.activeOnReadonly && + base.$el.attr('readonly') && + !base.$el.hasClass($keyboard.css.locked) + ) + ); + }; + + base.isCurrent = function (set) { + var cur = $keyboard.currentKeyboard || false; + if (set) { + cur = $keyboard.currentKeyboard = base.el; + } else if (set === false && cur === base.el) { + cur = $keyboard.currentKeyboard = ''; + } + return cur === base.el; + }; + + base.hasKeyboard = function () { + return base.$keyboard && base.$keyboard.length > 0; + }; + + base.isVisible = function () { + return base.hasKeyboard() ? base.$keyboard.is(':visible') : false; + }; + + base.setFocus = function () { + var $el = base.$preview || base.$el; + if (!o.noFocus) { + $el.focus(); + } + if (base.isContentEditable) { + $keyboard.setEditableCaret($el, base.last.start, base.last.end); + } else { + $keyboard.caret($el, base.last); + } + }; + + base.focusOn = function () { + if (!base && base.el.active) { + // keyboard was destroyed + return; + } + if (!base.isVisible()) { + clearTimeout(base.timer); + base.reveal(); + } else { + // keyboard already open, make it the current keyboard + base.setCurrent(); + } + }; + + // add redraw method to make API more clear + base.redraw = function (layout) { + if (layout) { + // allow updating the layout by calling redraw + base.options.layout = layout; + } + // update keyboard after a layout change + if (base.$keyboard.length) { + + base.last.preVal = '' + base.last.val; + base.saveLastChange(); + base.setValue(base.last.val, base.$el); + + base.removeKeyboard(); + base.shiftActive = base.altActive = base.metaActive = false; + } + base.isOpen = o.alwaysOpen; + base.reveal(true); + return base; + }; + + base.reveal = function (redraw) { + var temp, + alreadyOpen = base.isOpen, + kbcss = $keyboard.css; + base.opening = !alreadyOpen; + // remove all 'extra' keyboards by calling close function + $('.' + kbcss.keyboard).not('.' + kbcss.alwaysOpen).each(function(){ + var kb = $(this).data('keyboard'); + if (!$.isEmptyObject(kb)) { + // this closes previous keyboard when clicking another input - see #515 + kb.close(kb.options.autoAccept ? 'true' : false); + } + }); + + // Don't open if disabled + if (base.isUnavailable()) { + return; + } + base.$el.removeClass(kbcss.noKeyboard); + + // Unbind focus to prevent recursion - openOn may be empty if keyboard is opened externally + if (o.openOn) { + base.$el.unbind($.trim((o.openOn + ' ').split(/\s+/).join(base.namespace + ' '))); + } + + // build keyboard if it doesn't exist; or attach keyboard if it was removed, but not cleared + if (!base.$keyboard || base.$keyboard && + (!base.$keyboard.length || $.contains(base.el.ownerDocument.body, base.$keyboard[0]))) { + base.startup(); + } + + // clear watermark + if (!base.watermark && base.getValue() === base.inPlaceholder) { + base.$el.removeClass(kbcss.placeholder); + base.setValue('', base.$el); + } + // save starting content, in case we cancel + base.originalContent = base.isContentEditable ? + base.$el.html() : + base.getValue(base.$el); + if (base.el !== base.preview && !base.isContentEditable) { + base.setValue(base.originalContent); + } + + // disable/enable accept button + if (o.acceptValid && o.checkValidOnInit) { + base.checkValid(); + } + + if (o.resetDefault) { + base.shiftActive = base.altActive = base.metaActive = false; + } + base.showSet(); + + // beforeVisible event + if (!base.isVisible()) { + base.$el.trigger($keyboard.events.kbBeforeVisible, [base, base.el]); + } + if ( + base.initialized || + o.initialFocus || + ( !o.initialFocus && base.$el.hasClass($keyboard.css.initialFocus) ) + ) { + base.setCurrent(); + } + // update keyboard - enabled or disabled? + base.toggle(); + + // show keyboard + base.$keyboard.show(); + + // adjust keyboard preview window width - save width so IE won't keep expanding (fix issue #6) + if (o.usePreview && $keyboard.msie) { + if (typeof base.width === 'undefined') { + base.$preview.hide(); // preview is 100% browser width in IE7, so hide the damn thing + base.width = Math.ceil(base.$keyboard.width()); // set input width to match the widest keyboard row + base.$preview.show(); + } + base.$preview.width(base.width); + } + + base.reposition(); + + base.checkDecimal(); + + // get preview area line height + // add roughly 4px to get line height from font height, works well for font-sizes from 14-36px + // needed for textareas + base.lineHeight = parseInt(base.$preview.css('lineHeight'), 10) || + parseInt(base.$preview.css('font-size'), 10) + 4; + + if (o.caretToEnd) { + temp = base.isContentEditable ? $keyboard.getEditableLength(base.el) : base.originalContent.length; + base.saveCaret(temp, temp); + } + + // IE caret haxx0rs + if ($keyboard.allie) { + // sometimes end = 0 while start is > 0 + if (base.last.end === 0 && base.last.start > 0) { + base.last.end = base.last.start; + } + // IE will have start -1, end of 0 when not focused (see demo: https://jsfiddle.net/Mottie/fgryQ/3/) + if (base.last.start < 0) { + // ensure caret is at the end of the text (needed for IE) + base.last.start = base.last.end = base.originalContent.length; + } + } + + if (alreadyOpen || redraw) { + // restore caret position (userClosed) + $keyboard.caret(base.$preview, base.last); + base.opening = false; + return base; + } + + // opening keyboard flag; delay allows switching between keyboards without immediately closing + // the keyboard + base.timer2 = setTimeout(function () { + var undef; + base.opening = false; + // Number inputs don't support selectionStart and selectionEnd + // Number/email inputs don't support selectionStart and selectionEnd + if (!/(number|email)/i.test(base.el.type) && !o.caretToEnd) { + // caret position is always 0,0 in webkit; and nothing is focused at this point... odd + // save caret position in the input to transfer it to the preview + // inside delay to get correct caret position + base.saveCaret(undef, undef, base.$el); + } + if (o.initialFocus || base.$el.hasClass($keyboard.css.initialFocus)) { + $keyboard.caret(base.$preview, base.last); + } + // save event time for keyboards with stayOpen: true + base.last.eventTime = new Date().getTime(); + base.$el.trigger($keyboard.events.kbVisible, [base, base.el]); + base.timer = setTimeout(function () { + // get updated caret information after visible event - fixes #331 + if (base) { // Check if base exists, this is a case when destroy is called, before timers fire + base.saveCaret(); + } + }, 200); + }, 10); + // return base to allow chaining in typing extension + return base; + }; + + base.updateLanguage = function () { + // change language if layout is named something like 'french-azerty-1' + var layouts = $keyboard.layouts, + lang = o.language || layouts[o.layout] && layouts[o.layout].lang && + layouts[o.layout].lang || [o.language || 'en'], + kblang = $keyboard.language; + + // some languages include a dash, e.g. 'en-gb' or 'fr-ca' + // allow o.language to be a string or array... + // array is for future expansion where a layout can be set for multiple languages + lang = (Object.prototype.toString.call(lang) === '[object Array]' ? lang[0] : lang); + base.language = lang; + lang = lang.split('-')[0]; + + // set keyboard language + o.display = $.extend(true, {}, + kblang.en.display, + kblang[lang] && kblang[lang].display || {}, + base.settings.display + ); + o.combos = $.extend(true, {}, + kblang.en.combos, + kblang[lang] && kblang[lang].combos || {}, + base.settings.combos + ); + o.wheelMessage = kblang[lang] && kblang[lang].wheelMessage || kblang.en.wheelMessage; + // rtl can be in the layout or in the language definition; defaults to false + o.rtl = layouts[o.layout] && layouts[o.layout].rtl || kblang[lang] && kblang[lang].rtl || false; + + // save default regex (in case loading another layout changes it) + if (kblang[lang] && kblang[lang].comboRegex) { + base.regex = kblang[lang].comboRegex; + } + // determine if US '.' or European ',' system being used + base.decimal = /^\./.test(o.display.dec); + base.$el + .toggleClass('rtl', o.rtl) + .css('direction', o.rtl ? 'rtl' : ''); + }; + + base.startup = function () { + var kbcss = $keyboard.css; + // ensure base.$preview is defined; but don't overwrite it if keyboard is always visible + if (!((o.alwaysOpen || o.userClosed) && base.$preview)) { + base.makePreview(); + } + if (!base.hasKeyboard()) { + // custom layout - create a unique layout name based on the hash + if (o.layout === 'custom') { + o.layoutHash = 'custom' + base.customHash(); + } + base.layout = o.layout === 'custom' ? o.layoutHash : o.layout; + base.last.layout = base.layout; + + base.updateLanguage(); + if (typeof $keyboard.builtLayouts[base.layout] === 'undefined') { + if (typeof o.create === 'function') { + // create must call buildKeyboard() function; or create it's own keyboard + base.$keyboard = o.create(base); + } else if (!base.$keyboard.length) { + base.buildKeyboard(base.layout, true); + } + } + base.$keyboard = $keyboard.builtLayouts[base.layout].$keyboard.clone(); + base.$keyboard.data('keyboard', base); + if ((base.el.id || '') !== '') { + // add ID to keyboard for styling purposes + base.$keyboard.attr('id', base.el.id + $keyboard.css.idSuffix); + } + + base.makePreview(); + } + + // Add layout and laguage data-attibutes + base.$keyboard + .attr('data-' + kbcss.keyboard + '-layout', o.layout) + .attr('data-' + kbcss.keyboard + '-language', base.language); + + base.$decBtn = base.$keyboard.find('.' + kbcss.keyPrefix + 'dec'); + // add enter to allowed keys; fixes #190 + if (o.enterNavigation || base.isTextArea) { + base.alwaysAllowed.push($keyboard.keyCodes.enter); + } + + base.bindKeyboard(); + + base.$keyboard.appendTo(o.appendLocally ? base.$el.parent() : o.appendTo || 'body'); + + base.bindKeys(); + + // reposition keyboard on window resize + if (o.reposition && $.ui && $.ui.position && o.appendTo === 'body') { + $(window).bind('resize' + base.namespace, function () { + base.reposition(); + }); + } + + }; + + base.reposition = function () { + base.position = $.isEmptyObject(o.position) ? false : o.position; + // position after keyboard is visible (required for UI position utility) + // and appropriately sized + if ($.ui && $.ui.position && base.position) { + base.position.of = + // get single target position + base.position.of || + // OR target stored in element data (multiple targets) + base.$el.data('keyboardPosition') || + // OR default @ element + base.$el; + base.position.collision = base.position.collision || 'flipfit flipfit'; + base.position.at = o.usePreview ? o.position.at : o.position.at2; + if (base.isVisible()) { + base.$keyboard.position(base.position); + } + } + // make chainable + return base; + }; + + base.makePreview = function () { + if (o.usePreview) { + var indx, attrs, attr, removedAttr, + kbcss = $keyboard.css; + base.$preview = base.$el.clone(false) + .data('keyboard', base) + .removeClass(kbcss.placeholder + ' ' + kbcss.input) + .addClass(kbcss.preview + ' ' + o.css.input) + .attr('tabindex', '-1') + .show(); // for hidden inputs + base.preview = base.$preview[0]; + + // Switch the number input field to text so the caret positioning will work again + if (base.preview.type === 'number') { + base.preview.type = 'text'; + } + + // remove extraneous attributes. + removedAttr = /^(data-|id|aria-haspopup)/i; + attrs = base.$preview.get(0).attributes; + for (indx = attrs.length - 1; indx >= 0; indx--) { + attr = attrs[indx] && attrs[indx].name; + if (removedAttr.test(attr)) { + // remove data-attributes - see #351 + base.preview.removeAttribute(attr); + } + } + // build preview container and append preview display + $('<div />') + .addClass(kbcss.wrapper) + .append(base.$preview) + .prependTo(base.$keyboard); + } else { + base.$preview = base.$el; + base.preview = base.el; + } + }; + + // Added in v1.26.8 to allow chaining of the caret function, e.g. + // keyboard.reveal().caret(4,5).insertText('test').caret('end'); + base.caret = function(param1, param2) { + var result = $keyboard.caret(base.$preview, param1, param2), + wasSetCaret = result instanceof $; + // Caret was set, save last position & make chainable + if (wasSetCaret) { + base.saveCaret(result.start, result.end); + return base; + } + // return caret position if using .caret() + return result; + }; + + base.saveCaret = function (start, end, $el) { + if (base.isCurrent()) { + var p; + if (typeof start === 'undefined') { + // grab & save current caret position + p = $keyboard.caret($el || base.$preview); + } else { + p = $keyboard.caret($el || base.$preview, start, end); + } + base.last.start = typeof start === 'undefined' ? p.start : start; + base.last.end = typeof end === 'undefined' ? p.end : end; + } + }; + + base.saveLastChange = function (val) { + base.last.val = val || base.getValue(base.$preview || base.$el); + if (base.isContentEditable) { + base.last.elms = base.el.cloneNode(true); + } + }; + + base.setScroll = function () { + // Set scroll so caret & current text is in view + // needed for virtual keyboard typing, NOT manual typing - fixes #23 + if (!base.isContentEditable && base.last.virtual) { + + var scrollWidth, clientWidth, adjustment, direction, + value = base.last.val.substring(0, Math.max(base.last.start, base.last.end)); + + if (!base.$previewCopy) { + // clone preview + base.$previewCopy = base.$preview.clone() + .removeAttr('id') // fixes #334 + .css({ + position: 'absolute', + left: 0, + zIndex: -10, + visibility: 'hidden' + }) + .addClass($keyboard.css.inputClone); + // prevent submitting content on form submission + base.$previewCopy[0].disabled = true; + if (!base.isTextArea) { + // make input zero-width because we need an accurate scrollWidth + base.$previewCopy.css({ + 'white-space': 'pre', + 'width': 0 + }); + } + if (o.usePreview) { + // add clone inside of preview wrapper + base.$preview.after(base.$previewCopy); + } else { + // just slap that thing in there somewhere + base.$keyboard.prepend(base.$previewCopy); + } + } + + if (base.isTextArea) { + // need the textarea scrollHeight, so set the clone textarea height to be the line height + base.$previewCopy + .height(base.lineHeight) + .val(value); + // set scrollTop for Textarea + base.preview.scrollTop = base.lineHeight * + (Math.floor(base.$previewCopy[0].scrollHeight / base.lineHeight) - 1); + } else { + // add non-breaking spaces + base.$previewCopy.val(value.replace(/\s/g, '\xa0')); + + // if scrollAdjustment option is set to "c" or "center" then center the caret + adjustment = /c/i.test(o.scrollAdjustment) ? base.preview.clientWidth / 2 : o.scrollAdjustment; + scrollWidth = base.$previewCopy[0].scrollWidth - 1; + + // set initial state as moving right + if (typeof base.last.scrollWidth === 'undefined') { + base.last.scrollWidth = scrollWidth; + base.last.direction = true; + } + // if direction = true; we're scrolling to the right + direction = base.last.scrollWidth === scrollWidth ? + base.last.direction : + base.last.scrollWidth < scrollWidth; + clientWidth = base.preview.clientWidth - adjustment; + + // set scrollLeft for inputs; try to mimic the inherit caret positioning + scrolling: + // hug right while scrolling right... + if (direction) { + if (scrollWidth < clientWidth) { + base.preview.scrollLeft = 0; + } else { + base.preview.scrollLeft = scrollWidth - clientWidth; + } + } else { + // hug left while scrolling left... + if (scrollWidth >= base.preview.scrollWidth - clientWidth) { + base.preview.scrollLeft = base.preview.scrollWidth - adjustment; + } else if (scrollWidth - adjustment > 0) { + base.preview.scrollLeft = scrollWidth - adjustment; + } else { + base.preview.scrollLeft = 0; + } + } + + base.last.scrollWidth = scrollWidth; + base.last.direction = direction; + } + } + }; + + base.bindFocus = function () { + if (o.openOn) { + // make sure keyboard isn't destroyed + // Check if base exists, this is a case when destroy is called, before timers have fired + if (base && base.el.active) { + base.$el.bind(o.openOn + base.namespace, function () { + base.focusOn(); + }); + // remove focus from element (needed for IE since blur doesn't seem to work) + if ($(':focus')[0] === base.el) { + base.$el.blur(); + } + } + } + }; + + base.bindKeyboard = function () { + var evt, + keyCodes = $keyboard.keyCodes, + layout = $keyboard.builtLayouts[base.layout], + namespace = base.namespace + 'keybindings'; + base.$preview + .unbind(base.namespace) + .bind('click' + namespace + ' touchstart' + namespace, function () { + if (o.alwaysOpen && !base.isCurrent()) { + base.reveal(); + } + // update last caret position after user click, use at least 150ms or it doesn't work in IE + base.timer2 = setTimeout(function () { + if (base){ + base.saveCaret(); + } + }, 150); + + }) + .bind('keypress' + namespace, function (e) { + if (o.lockInput) { + return false; + } + if (!base.isCurrent()) { + return; + } + + var k = e.charCode || e.which, + // capsLock can only be checked while typing a-z + k1 = k >= keyCodes.A && k <= keyCodes.Z, + k2 = k >= keyCodes.a && k <= keyCodes.z, + str = base.last.key = String.fromCharCode(k); + // check, that keypress wasn't rise by functional key + // space is first typing symbol in UTF8 table + if (k < keyCodes.space) { //see #549 + return; + } + base.last.virtual = false; + base.last.event = e; + base.last.$key = []; // not a virtual keyboard key + if (base.checkCaret) { + base.saveCaret(); + } + + // update capsLock + if (k !== keyCodes.capsLock && (k1 || k2)) { + base.capsLock = (k1 && !e.shiftKey) || (k2 && e.shiftKey); + // if shifted keyset not visible, then show it + if (base.capsLock && !base.shiftActive) { + base.shiftActive = true; + base.showSet(); + } + } + + // restrict input - keyCode in keypress special keys: + // see http://www.asquare.net/javascript/tests/KeyCode.html + if (o.restrictInput) { + // allow navigation keys to work - Chrome doesn't fire a keypress event (8 = bksp) + if ((e.which === keyCodes.backSpace || e.which === 0) && + $.inArray(e.keyCode, base.alwaysAllowed)) { + return; + } + // quick key check + if ($.inArray(str, layout.acceptedKeys) === -1) { + e.preventDefault(); + // copy event object in case e.preventDefault() breaks when changing the type + evt = $.extend({}, e); + evt.type = $keyboard.events.inputRestricted; + base.$el.trigger(evt, [base, base.el]); + } + } else if ((e.ctrlKey || e.metaKey) && + (e.which === keyCodes.A || e.which === keyCodes.C || e.which === keyCodes.V || + (e.which >= keyCodes.X && e.which <= keyCodes.Z))) { + // Allow select all (ctrl-a), copy (ctrl-c), paste (ctrl-v) & cut (ctrl-x) & + // redo (ctrl-y)& undo (ctrl-z); meta key for mac + return; + } + // Mapped Keys - allows typing on a regular keyboard and the mapped key is entered + // Set up a key in the layout as follows: 'm(a):label'; m = key to map, (a) = actual keyboard key + // to map to (optional), ':label' = title/tooltip (optional) + // example: \u0391 or \u0391(A) or \u0391:alpha or \u0391(A):alpha + if (layout.hasMappedKeys && layout.mappedKeys.hasOwnProperty(str)) { + base.last.key = layout.mappedKeys[str]; + base.insertText(base.last.key); + e.preventDefault(); + } + if (typeof o.beforeInsert === 'function') { + base.insertText(base.last.key); + e.preventDefault(); + } + base.checkMaxLength(); + + }) + .bind('keyup' + namespace, function (e) { + if (!base.isCurrent()) { return; } + base.last.virtual = false; + switch (e.which) { + // Insert tab key + case keyCodes.tab: + // Added a flag to prevent from tabbing into an input, keyboard opening, then adding the tab + // to the keyboard preview area on keyup. Sadly it still happens if you don't release the tab + // key immediately because keydown event auto-repeats + if (base.tab && !o.lockInput) { + base.shiftActive = e.shiftKey; + // when switching inputs, the tab keyaction returns false + var notSwitching = $keyboard.keyaction.tab(base); + base.tab = false; + if (!notSwitching) { + return false; + } + } else { + e.preventDefault(); + } + break; + + // Escape will hide the keyboard + case keyCodes.escape: + if (!o.ignoreEsc) { + base.close(o.autoAccept && o.autoAcceptOnEsc ? 'true' : false); + } + return false; + } + + // throttle the check combo function because fast typers will have an incorrectly positioned caret + clearTimeout(base.throttled); + base.throttled = setTimeout(function () { + // fix error in OSX? see issue #102 + if (base && base.isVisible()) { + base.checkCombos(); + } + }, 100); + + base.checkMaxLength(); + + base.last.preVal = '' + base.last.val; + base.saveLastChange(); + + // don't alter "e" or the "keyup" event never finishes processing; fixes #552 + var event = $.Event( $keyboard.events.kbChange ); + // base.last.key may be empty string (shift, enter, tab, etc) when keyboard is first visible + // use e.key instead, if browser supports it + event.action = base.last.key; + base.$el.trigger(event, [base, base.el]); + + // change callback is no longer bound to the input element as the callback could be + // called during an external change event with all the necessary parameters (issue #157) + if (typeof o.change === 'function') { + event.type = $keyboard.events.inputChange; + o.change(event, base, base.el); + return false; + } + if (o.acceptValid && o.autoAcceptOnValid) { + if ( + typeof o.validate === 'function' && + o.validate(base, base.getValue(base.$preview)) + ) { + base.$preview.blur(); + base.accept(); + } + } + }) + .bind('keydown' + namespace, function (e) { + base.last.keyPress = e.which; + // ensure alwaysOpen keyboards are made active + if (o.alwaysOpen && !base.isCurrent()) { + base.reveal(); + } + // prevent tab key from leaving the preview window + if (e.which === keyCodes.tab) { + // allow tab to pass through - tab to next input/shift-tab for prev + base.tab = true; + return false; + } + if (o.lockInput || e.timeStamp === base.last.timeStamp) { + return !o.lockInput; + } + + base.last.timeStamp = e.timeStamp; // fixes #659 + base.last.virtual = false; + switch (e.which) { + + case keyCodes.backSpace: + $keyboard.keyaction.bksp(base, null, e); + e.preventDefault(); + break; + + case keyCodes.enter: + $keyboard.keyaction.enter(base, null, e); + break; + + // Show capsLock + case keyCodes.capsLock: + base.shiftActive = base.capsLock = !base.capsLock; + base.showSet(); + break; + + case keyCodes.V: + // prevent ctrl-v/cmd-v + if (e.ctrlKey || e.metaKey) { + if (o.preventPaste) { + e.preventDefault(); + return; + } + base.checkCombos(); // check pasted content + } + break; + } + }) + .bind('mouseup touchend '.split(' ').join(namespace + ' '), function () { + base.last.virtual = true; + base.saveCaret(); + }); + + // prevent keyboard event bubbling + base.$keyboard.bind('mousedown click touchstart '.split(' ').join(base.namespace + ' '), function (e) { + e.stopPropagation(); + if (!base.isCurrent()) { + base.reveal(); + $(base.el.ownerDocument).trigger('checkkeyboard' + base.namespace); + } + base.setFocus(); + }); + + // If preventing paste, block context menu (right click) + if (o.preventPaste) { + base.$preview.bind('contextmenu' + base.namespace, function (e) { + e.preventDefault(); + }); + base.$el.bind('contextmenu' + base.namespace, function (e) { + e.preventDefault(); + }); + } + + }; + + base.bindButton = function(events, handler) { + var button = '.' + $keyboard.css.keyButton, + callback = function(e) { + e.stopPropagation(); + // save closest keyboard wrapper/input to check in checkClose function + e.$target = $(this).closest('.' + $keyboard.css.keyboard + ', .' + $keyboard.css.input); + handler.call(this, e); + }; + if ($.fn.on) { + // jQuery v1.7+ + base.$keyboard.on(events, button, callback); + } else if ($.fn.delegate) { + // jQuery v1.4.2 - 3.0.0 + base.$keyboard.delegate(button, events, callback); + } + return base; + }; + + base.unbindButton = function(namespace) { + if ($.fn.off) { + // jQuery v1.7+ + base.$keyboard.off(namespace); + } else if ($.fn.undelegate) { + // jQuery v1.4.2 - 3.0.0 (namespace only added in v1.6) + base.$keyboard.undelegate('.' + $keyboard.css.keyButton, namespace); + } + return base; + }; + + base.bindKeys = function () { + var kbcss = $keyboard.css; + base + .unbindButton(base.namespace + ' ' + base.namespace + 'kb') + // Change hover class and tooltip - moved this touchstart before option.keyBinding touchstart + // to prevent mousewheel lag/duplication - Fixes #379 & #411 + .bindButton('mouseenter mouseleave touchstart '.split(' ').join(base.namespace + ' '), function (e) { + if ((o.alwaysOpen || o.userClosed) && e.type !== 'mouseleave' && !base.isCurrent()) { + base.reveal(); + base.setFocus(); + } + if (!base.isCurrent() || this.disabled) { + return; + } + var $keys, txt, + last = base.last, + $this = $(this), + type = e.type; + + if (o.useWheel && base.wheel) { + $keys = base.getLayers($this); + txt = ($keys.length ? $keys.map(function () { + return $(this).attr('data-value') || ''; + }) + .get() : '') || [$this.text()]; + last.wheel_$Keys = $keys; + last.wheelLayers = txt; + last.wheelIndex = $.inArray($this.attr('data-value'), txt); + } + + if ((type === 'mouseenter' || type === 'touchstart') && base.el.type !== 'password' && + !$this.hasClass(o.css.buttonDisabled)) { + $this.addClass(o.css.buttonHover); + if (o.useWheel && base.wheel) { + $this.attr('title', function (i, t) { + // show mouse wheel message + return (base.wheel && t === '' && base.sets && txt.length > 1 && type !== 'touchstart') ? + o.wheelMessage : t; + }); + } + } + if (type === 'mouseleave') { + // needed or IE flickers really bad + $this.removeClass((base.el.type === 'password') ? '' : o.css.buttonHover); + if (o.useWheel && base.wheel) { + last.wheelIndex = 0; + last.wheelLayers = []; + last.wheel_$Keys = []; + $this + .attr('title', function (i, t) { + return (t === o.wheelMessage) ? '' : t; + }) + .html($this.attr('data-html')); // restore original button text + } + } + }) + // keyBinding = 'mousedown touchstart' by default + .bindButton(o.keyBinding.split(' ').join(base.namespace + ' ') + base.namespace + ' ' + + $keyboard.events.kbRepeater, function (e) { + e.preventDefault(); + // prevent errors when external triggers attempt to 'type' - see issue #158 + if (!base.$keyboard.is(':visible') || this.disabled) { + return false; + } + var action, + last = base.last, + $key = $(this), + // prevent mousedown & touchstart from both firing events at the same time - see #184 + timer = new Date().getTime(); + + if (o.useWheel && base.wheel) { + // get keys from other layers/keysets (shift, alt, meta, etc) that line up by data-position + // target mousewheel selected key + $key = last.wheel_$Keys.length && last.wheelIndex > -1 ? last.wheel_$Keys.eq(last.wheelIndex) : $key; + } + action = $key.attr('data-action'); + if (timer - (last.eventTime || 0) < o.preventDoubleEventTime) { + return; + } + last.eventTime = timer; + last.event = e; + last.virtual = true; + last.$key = $key; + last.key = $key.attr('data-value'); + last.keyPress = ''; + // Start caret in IE when not focused (happens with each virtual keyboard button click + base.setFocus(); + if (/^meta/.test(action)) { + action = 'meta'; + } + // keyaction is added as a string, override original action & text + if (action === last.key && typeof $keyboard.keyaction[action] === 'string') { + last.key = action = $keyboard.keyaction[action]; + } else if (action in $keyboard.keyaction && typeof $keyboard.keyaction[action] === 'function') { + // stop processing if action returns false (close & cancel) + if ($keyboard.keyaction[action](base, this, e) === false) { + return false; + } + action = null; // prevent inserting action name + } + // stop processing if keyboard closed and keyaction did not return false - see #536 + if (!base.hasKeyboard()) { + return false; + } + if (typeof action !== 'undefined' && action !== null) { + last.key = $(this).hasClass(kbcss.keyAction) ? action : last.key; + base.insertText(last.key); + if (!base.capsLock && !o.stickyShift && !e.shiftKey) { + base.shiftActive = false; + base.showSet($key.attr('data-name')); + } + } + // set caret if caret moved by action function; also, attempt to fix issue #131 + $keyboard.caret(base.$preview, last); + base.checkCombos(); + e = $.extend({}, e, $.Event($keyboard.events.kbChange)); + e.target = base.el; + e.action = last.key; + base.$el.trigger(e, [base, base.el]); + last.preVal = '' + last.val; + base.saveLastChange(); + + if (typeof o.change === 'function') { + e.type = $keyboard.events.inputChange; + o.change(e, base, base.el); + // return false to prevent reopening keyboard if base.accept() was called + return false; + } + + }) + // using 'kb' namespace for mouse repeat functionality to keep it separate + // I need to trigger a 'repeater.keyboard' to make it work + .bindButton('mouseup' + base.namespace + ' ' + 'mouseleave touchend touchmove touchcancel '.split(' ') + .join(base.namespace + 'kb '), function (e) { + base.last.virtual = true; + var offset, + $this = $(this); + if (e.type === 'touchmove') { + // if moving within the same key, don't stop repeating + offset = $this.offset(); + offset.right = offset.left + $this.outerWidth(); + offset.bottom = offset.top + $this.outerHeight(); + if (e.originalEvent.touches[0].pageX >= offset.left && + e.originalEvent.touches[0].pageX < offset.right && + e.originalEvent.touches[0].pageY >= offset.top && + e.originalEvent.touches[0].pageY < offset.bottom) { + return true; + } + } else if (/(mouseleave|touchend|touchcancel)/i.test(e.type)) { + $this.removeClass(o.css.buttonHover); // needed for touch devices + } else { + if (!o.noFocus && base.isCurrent() && base.isVisible()) { + base.$preview.focus(); + } + if (base.checkCaret) { + $keyboard.caret(base.$preview, base.last); + } + } + base.mouseRepeat = [false, '']; + clearTimeout(base.repeater); // make sure key repeat stops! + if (o.acceptValid && o.autoAcceptOnValid) { + if ( + typeof o.validate === 'function' && + o.validate(base, base.getValue()) + ) { + base.$preview.blur(); + base.accept(); + } + } + return false; + }) + // prevent form submits when keyboard is bound locally - issue #64 + .bindButton('click' + base.namespace, function () { + return false; + }) + // Allow mousewheel to scroll through other keysets of the same (non-action) key + .bindButton('mousewheel' + base.namespace, base.throttleEvent(function (e, delta) { + var $btn = $(this); + // no mouse repeat for action keys (shift, ctrl, alt, meta, etc) + if (!$btn || $btn.hasClass(kbcss.keyAction) || base.last.wheel_$Keys[0] !== this) { + return; + } + if (o.useWheel && base.wheel) { + // deltaY used by newer versions of mousewheel plugin + delta = delta || e.deltaY; + var n, + txt = base.last.wheelLayers || []; + if (txt.length > 1) { + n = base.last.wheelIndex + (delta > 0 ? -1 : 1); + if (n > txt.length - 1) { + n = 0; + } + if (n < 0) { + n = txt.length - 1; + } + } else { + n = 0; + } + base.last.wheelIndex = n; + $btn.html(txt[n]); + return false; + } + }, 30)) + .bindButton('mousedown touchstart '.split(' ').join(base.namespace + 'kb '), function () { + var $btn = $(this); + // no mouse repeat for action keys (shift, ctrl, alt, meta, etc) + if ( + !$btn || ( + $btn.hasClass(kbcss.keyAction) && + // mouse repeated action key exceptions + !$btn.is('.' + kbcss.keyPrefix + ('tab bksp space enter'.split(' ').join(',.' + kbcss.keyPrefix))) + ) + ) { + return; + } + if (o.repeatRate !== 0) { + // save the key, make sure we are repeating the right one (fast typers) + base.mouseRepeat = [true, $btn]; + setTimeout(function () { + // don't repeat keys if it is disabled - see #431 + if (base && base.mouseRepeat[0] && base.mouseRepeat[1] === $btn && !$btn[0].disabled) { + base.repeatKey($btn); + } + }, o.repeatDelay); + } + return false; + }); + }; + + // No call on tailing event + base.throttleEvent = function(cb, time) { + var interm; + return function() { + if (!interm) { + cb.apply(this, arguments); + interm = true; + setTimeout(function() { + interm = false; + }, time); + } + }; + }; + + base.execCommand = function(cmd, str) { + base.el.ownerDocument.execCommand(cmd, false, str); + base.el.normalize(); + if (o.reposition) { + base.reposition(); + } + }; + + base.getValue = function ($el) { + $el = $el || base.$preview; + return $el[base.isContentEditable ? 'text' : 'val'](); + }; + + base.setValue = function (txt, $el) { + $el = $el || base.$preview; + if (base.isContentEditable) { + if (txt !== $el.text()) { + $keyboard.replaceContent($el, txt); + base.saveCaret(); + } + } else { + $el.val(txt); + } + return base; + }; + + // Insert text at caret/selection - thanks to Derek Wickwire for fixing this up! + base.insertText = function (txt) { + if (!base.$preview) { return base; } + if (typeof o.beforeInsert === 'function') { + txt = o.beforeInsert(base.last.event, base, base.el, txt); + } + if (typeof txt === 'undefined' || txt === false) { + base.last.key = ''; + return base; + } + if (base.isContentEditable) { + return base.insertContentEditable(txt); + } + var t, + bksp = false, + isBksp = txt === '\b', + // use base.$preview.val() instead of base.preview.value (val.length includes carriage returns in IE). + val = base.getValue(), + pos = $keyboard.caret(base.$preview), + len = val.length; // save original content length + + // silly IE caret hacks... it should work correctly, but navigating using arrow keys in a textarea + // is still difficult + // in IE, pos.end can be zero after input loses focus + if (pos.end < pos.start) { + pos.end = pos.start; + } + if (pos.start > len) { + pos.end = pos.start = len; + } + + if (base.isTextArea) { + // This makes sure the caret moves to the next line after clicking on enter (manual typing works fine) + if ($keyboard.msie && val.substring(pos.start, pos.start + 1) === '\n') { + pos.start += 1; + pos.end += 1; + } + } + + t = pos.start; + if (txt === '{d}') { + txt = ''; + pos.end += 1; + } + + if (isBksp) { + txt = ''; + bksp = isBksp && t === pos.end && t > 0; + } + val = val.substring(0, t - (bksp ? 1 : 0)) + txt + val.substring(pos.end); + t += bksp ? -1 : txt.length; + + base.setValue(val); + base.saveCaret(t, t); // save caret in case of bksp + base.setScroll(); + // see #506.. allow chaining of insertText + return base; + }; + + base.insertContentEditable = function (txt) { + base.$preview.focus(); + base.execCommand('insertText', txt); + base.saveCaret(); + return base; + }; + + // check max length + base.checkMaxLength = function () { + if (!base.$preview) { return; } + var start, caret, + val = base.getValue(), + len = base.isContentEditable ? $keyboard.getEditableLength(base.el) : val.length; + if (o.maxLength !== false && len > o.maxLength) { + start = $keyboard.caret(base.$preview).start; + caret = Math.min(start, o.maxLength); + + // prevent inserting new characters when maxed #289 + if (!o.maxInsert) { + val = base.last.val; + caret = start - 1; // move caret back one + } + base.setValue(val.substring(0, o.maxLength)); + // restore caret on change, otherwise it ends up at the end. + base.saveCaret(caret, caret); + } + if (base.$decBtn.length) { + base.checkDecimal(); + } + // allow chaining + return base; + }; + + // mousedown repeater + base.repeatKey = function (key) { + key.trigger($keyboard.events.kbRepeater); + if (base.mouseRepeat[0]) { + base.repeater = setTimeout(function () { + if (base){ + base.repeatKey(key); + } + }, base.repeatTime); + } + }; + + base.getKeySet = function () { + var sets = []; + if (base.altActive) { + sets.push('alt'); + } + if (base.shiftActive) { + sets.push('shift'); + } + if (base.metaActive) { + // base.metaActive contains the string name of the + // current meta keyset + sets.push(base.metaActive); + } + return sets.length ? sets.join('+') : 'normal'; + }; + + // make it easier to switch keysets via API + // showKeySet('shift+alt+meta1') + base.showKeySet = function (str) { + if (typeof str === 'string') { + base.last.keyset = [base.shiftActive, base.altActive, base.metaActive]; + base.shiftActive = /shift/i.test(str); + base.altActive = /alt/i.test(str); + if (/\bmeta/.test(str)) { + base.metaActive = true; + base.showSet(str.match(/\bmeta[\w-]+/i)[0]); + } else { + base.metaActive = false; + base.showSet(); + } + } else { + base.showSet(str); + } + // allow chaining + return base; + }; + + base.showSet = function (name) { + if (!base.hasKeyboard()) { return; } + o = base.options; // refresh options + var kbcss = $keyboard.css, + prefix = '.' + kbcss.keyPrefix, + active = o.css.buttonActive, + key = '', + toShow = (base.shiftActive ? 1 : 0) + (base.altActive ? 2 : 0); + if (!base.shiftActive) { + base.capsLock = false; + } + // check meta key set + if (base.metaActive) { + // remove "-shift" and "-alt" from meta name if it exists + if (base.shiftActive) { + name = (name || '').replace('-shift', ''); + } + if (base.altActive) { + name = (name || '').replace('-alt', ''); + } + // the name attribute contains the meta set name 'meta99' + key = (/^meta/i.test(name)) ? name : ''; + // save active meta keyset name + if (key === '') { + key = (base.metaActive === true) ? '' : base.metaActive; + } else { + base.metaActive = key; + } + // if meta keyset doesn't have a shift or alt keyset, then show just the meta key set + if ((!o.stickyShift && base.last.keyset[2] !== base.metaActive) || + ((base.shiftActive || base.altActive) && + !base.$keyboard.find('.' + kbcss.keySet + '-' + key + base.rows[toShow]).length)) { + base.shiftActive = base.altActive = false; + } + } else if (!o.stickyShift && base.last.keyset[2] !== base.metaActive && base.shiftActive) { + // switching from meta key set back to default, reset shift & alt if using stickyShift + base.shiftActive = base.altActive = false; + } + toShow = (base.shiftActive ? 1 : 0) + (base.altActive ? 2 : 0); + key = (toShow === 0 && !base.metaActive) ? '-normal' : (key === '') ? '' : '-' + key; + if (!base.$keyboard.find('.' + kbcss.keySet + key + base.rows[toShow]).length) { + // keyset doesn't exist, so restore last keyset settings + base.shiftActive = base.last.keyset[0]; + base.altActive = base.last.keyset[1]; + base.metaActive = base.last.keyset[2]; + return; + } + base.$keyboard + .find(prefix + 'alt,' + prefix + 'shift,.' + kbcss.keyAction + '[class*=meta]') + .removeClass(active) + .end() + .find(prefix + 'alt') + .toggleClass(active, base.altActive) + .end() + .find(prefix + 'shift') + .toggleClass(active, base.shiftActive) + .end() + .find(prefix + 'lock') + .toggleClass(active, base.capsLock) + .end() + .find('.' + kbcss.keySet) + .hide() + .end() + .find('.' + (kbcss.keyAction + prefix + key).replace('--', '-')) + .addClass(active); + + // show keyset using inline-block ( extender layout will then line up ) + base.$keyboard.find('.' + kbcss.keySet + key + base.rows[toShow])[0].style.display = 'inline-block'; + if (base.metaActive) { + base.$keyboard.find(prefix + base.metaActive) + // base.metaActive contains the string "meta#" or false + // without the !== false, jQuery UI tries to transition the classes + .toggleClass(active, base.metaActive !== false); + } + base.last.keyset = [base.shiftActive, base.altActive, base.metaActive]; + base.$el.trigger($keyboard.events.kbKeysetChange, [base, base.el]); + if (o.reposition) { + base.reposition(); + } + }; + + // check for key combos (dead keys) + base.checkCombos = function () { + // return val for close function + if ( !( + base.isVisible() || ( + base.hasKeyboard() && + base.$keyboard.hasClass( $keyboard.css.hasFocus ) + ) + ) ) { + return base.getValue(base.$preview || base.$el); + } + var r, t, t2, repl, + // use base.$preview.val() instead of base.preview.value + // (val.length includes carriage returns in IE). + val = base.getValue(), + pos = $keyboard.caret(base.$preview), + layout = $keyboard.builtLayouts[base.layout], + max = base.isContentEditable ? $keyboard.getEditableLength(base.el) : val.length, + // save original content length + len = max; + // return if val is empty; fixes #352 + if (val === '') { + // check valid on empty string - see #429 + if (o.acceptValid) { + base.checkValid(); + } + return val; + } + + // silly IE caret hacks... it should work correctly, but navigating using arrow keys in a textarea + // is still difficult + // in IE, pos.end can be zero after input loses focus + if (pos.end < pos.start) { + pos.end = pos.start; + } + if (pos.start > len) { + pos.end = pos.start = len; + } + // This makes sure the caret moves to the next line after clicking on enter (manual typing works fine) + if ($keyboard.msie && val.substring(pos.start, pos.start + 1) === '\n') { + pos.start += 1; + pos.end += 1; + } + + if (o.useCombos) { + // keep 'a' and 'o' in the regex for ae and oe ligature (æ,œ) + // thanks to KennyTM: http://stackoverflow.com/q/4275077 + // original regex /([`\'~\^\"ao])([a-z])/mig moved to $.keyboard.comboRegex + if ($keyboard.msie) { + // old IE may not have the caret positioned correctly, so just check the whole thing + val = val.replace(base.regex, function (s, accent, letter) { + return (o.combos.hasOwnProperty(accent)) ? o.combos[accent][letter] || s : s; + }); + // prevent combo replace error, in case the keyboard closes - see issue #116 + } else if (base.$preview.length) { + // Modern browsers - check for combos from last two characters left of the caret + t = pos.start - (pos.start - 2 >= 0 ? 2 : 0); + // target last two characters + $keyboard.caret(base.$preview, t, pos.end); + // do combo replace + t = $keyboard.caret(base.$preview); + repl = function (txt) { + return (txt || '').replace(base.regex, function (s, accent, letter) { + return (o.combos.hasOwnProperty(accent)) ? o.combos[accent][letter] || s : s; + }); + }; + t2 = repl(t.text); + // add combo back + // prevent error if caret doesn't return a function + if (t && t.replaceStr && t2 !== t.text) { + if (base.isContentEditable) { + $keyboard.replaceContent(el, repl); + } else { + base.setValue(t.replaceStr(t2)); + } + } + val = base.getValue(); + } + } + + // check input restrictions - in case content was pasted + if (o.restrictInput && val !== '') { + t = layout.acceptedKeys.length; + + r = layout.acceptedKeysRegex; + if (!r) { + t2 = $.map(layout.acceptedKeys, function (v) { + // escape any special characters + return v.replace(base.escapeRegex, '\\$&'); + }); + if (base.alwaysAllowed.indexOf($keyboard.keyCodes.enter) > -1) { + t2.push('\\n'); // Fixes #686 + } + r = layout.acceptedKeysRegex = new RegExp('(' + t2.join('|') + ')', 'g'); + } + // only save matching keys + t2 = val.match(r); + if (t2) { + val = t2.join(''); + } else { + // no valid characters + val = ''; + len = 0; + } + } + + // save changes, then reposition caret + pos.start += max - len; + pos.end += max - len; + + base.setValue(val); + base.saveCaret(pos.start, pos.end); + // set scroll to keep caret in view + base.setScroll(); + base.checkMaxLength(); + + if (o.acceptValid) { + base.checkValid(); + } + return val; // return text, used for keyboard closing section + }; + + // Toggle accept button classes, if validating + base.checkValid = function () { + var kbcss = $keyboard.css, + $accept = base.$keyboard.find('.' + kbcss.keyPrefix + 'accept'), + valid = true; + if (typeof o.validate === 'function') { + valid = o.validate(base, base.getValue(), false); + } + // toggle accept button classes; defined in the css + $accept + .toggleClass(kbcss.inputInvalid, !valid) + .toggleClass(kbcss.inputValid, valid) + // update title to indicate that the entry is valid or invalid + .attr('title', $accept.attr('data-title') + ' (' + o.display[valid ? 'valid' : 'invalid'] + ')'); + }; + + // Decimal button for num pad - only allow one (not used by default) + base.checkDecimal = function () { + // Check US '.' or European ',' format + if ((base.decimal && /\./g.test(base.preview.value)) || + (!base.decimal && /\,/g.test(base.preview.value))) { + base.$decBtn + .attr({ + 'disabled': 'disabled', + 'aria-disabled': 'true' + }) + .removeClass(o.css.buttonHover) + .addClass(o.css.buttonDisabled); + } else { + base.$decBtn + .removeAttr('disabled') + .attr({ + 'aria-disabled': 'false' + }) + .addClass(o.css.buttonDefault) + .removeClass(o.css.buttonDisabled); + } + }; + + // get other layer values for a specific key + base.getLayers = function ($el) { + var kbcss = $keyboard.css, + key = $el.attr('data-pos'), + $keys = $el.closest('.' + kbcss.keyboard) + .find('button[data-pos="' + key + '"]'); + return $keys.filter(function () { + return $(this) + .find('.' + kbcss.keyText) + .text() !== ''; + }) + .add($el); + }; + + // Go to next or prev inputs + // goToNext = true, then go to next input; if false go to prev + // isAccepted is from autoAccept option or true if user presses shift+enter + base.switchInput = function (goToNext, isAccepted) { + if (typeof o.switchInput === 'function') { + o.switchInput(base, goToNext, isAccepted); + } else { + // base.$keyboard may be an empty array - see #275 (apod42) + if (base.$keyboard.length) { + base.$keyboard.hide(); + } + var kb, + stopped = false, + all = $('button, input, select, textarea, a, [contenteditable]') + .filter(':visible') + .not(':disabled'), + indx = all.index(base.$el) + (goToNext ? 1 : -1); + if (base.$keyboard.length) { + base.$keyboard.show(); + } + if (indx > all.length - 1) { + stopped = o.stopAtEnd; + indx = 0; // go to first input + } + if (indx < 0) { + stopped = o.stopAtEnd; + indx = all.length - 1; // stop or go to last + } + if (!stopped) { + isAccepted = base.close(isAccepted); + if (!isAccepted) { + return; + } + kb = all.eq(indx).data('keyboard'); + if (kb && kb.options.openOn.length) { + kb.focusOn(); + } else { + all.eq(indx).focus(); + } + } + } + return false; + }; + + // Close the keyboard, if visible. Pass a status of true, if the content was accepted + // (for the event trigger). + base.close = function (accepted) { + if (base.isOpen && base.$keyboard.length) { + clearTimeout(base.throttled); + var kbcss = $keyboard.css, + kbevents = $keyboard.events, + val = accepted ? base.checkCombos() : base.originalContent; + // validate input if accepted + if (accepted && typeof o.validate === 'function' && !o.validate(base, val, true)) { + val = base.originalContent; + accepted = false; + if (o.cancelClose) { + return; + } + } + base.isCurrent(false); + base.isOpen = o.alwaysOpen || o.userClosed; + if (base.isContentEditable && !accepted) { + // base.originalContent stores the HTML + base.$el.html(val); + } else { + base.setValue(val, base.$el); + } + base.$el + .removeClass(kbcss.isCurrent + ' ' + kbcss.inputAutoAccepted) + // add 'ui-keyboard-autoaccepted' to inputs - see issue #66 + .addClass((accepted || false) ? accepted === true ? '' : kbcss.inputAutoAccepted : '') + // trigger default change event - see issue #146 + .trigger(kbevents.inputChange); + // don't trigger an empty event - see issue #463 + if (!o.alwaysOpen) { + // don't trigger beforeClose if keyboard is always open + base.$el.trigger(kbevents.kbBeforeClose, [base, base.el, (accepted || false)]); + } + // save caret after updating value (fixes userClosed issue with changing focus) + $keyboard.caret(base.$preview, base.last); + + base.$el + .trigger(((accepted || false) ? kbevents.inputAccepted : kbevents.inputCanceled), [base, base.el]) + .trigger((o.alwaysOpen) ? kbevents.kbInactive : kbevents.kbHidden, [base, base.el]) + .blur(); + + // base is undefined if keyboard was destroyed - fixes #358 + if (base) { + // add close event time + base.last.eventTime = new Date().getTime(); + if (!(o.alwaysOpen || o.userClosed && accepted === 'true') && base.$keyboard.length) { + // free up memory + base.removeKeyboard(); + // rebind input focus - delayed to fix IE issue #72 + base.timer = setTimeout(function () { + if (base) { + base.bindFocus(); + } + }, 200); + } + if (!base.watermark && base.el.value === '' && base.inPlaceholder !== '') { + base.$el.addClass(kbcss.placeholder); + base.setValue(base.inPlaceholder, base.$el); + } + } + } + return !!accepted; + }; + + base.accept = function () { + return base.close(true); + }; + + base.checkClose = function (e) { + if (base.opening) { + return; + } + var kbcss = $.keyboard.css, + $target = e.$target || $(e.target).closest('.' + $keyboard.css.keyboard + ', .' + $keyboard.css.input); + if (!$target.length) { + $target = $(e.target); + } + // needed for IE to allow switching between keyboards smoothly + if ($target.length && $target.hasClass(kbcss.keyboard)) { + var kb = $target.data('keyboard'); + // only trigger on self + if ( + kb !== base && + !kb.$el.hasClass(kbcss.isCurrent) && + kb.options.openOn && + e.type === o.openOn + ) { + kb.focusOn(); + } + } else { + base.escClose(e, $target); + } + }; + + // callback functions called to check if the keyboard needs to be closed + // e.g. on escape or clicking outside the keyboard + base.escCloseCallback = { + // keep keyboard open if alwaysOpen or stayOpen is true - fixes mutliple + // always open keyboards or single stay open keyboard + keepOpen: function() { + return !base.isOpen; + } + }; + + base.escClose = function (e, $el) { + if (!base.isOpen) { + return; + } + if (e && e.type === 'keyup') { + return (e.which === $keyboard.keyCodes.escape && !o.ignoreEsc) ? + base.close(o.autoAccept && o.autoAcceptOnEsc ? 'true' : false) : + ''; + } + var shouldStayOpen = false, + $target = $el.length && $el || $(e.target); + $.each(base.escCloseCallback, function(i, callback) { + if (typeof callback === 'function') { + shouldStayOpen = shouldStayOpen || callback($target); + } + }); + if (shouldStayOpen) { + return; + } + // ignore autoaccept if using escape - good idea? + if (!base.isCurrent() && base.isOpen || base.isOpen && $target[0] !== base.el) { + // don't close if stayOpen is set; but close if a different keyboard is being opened + if ((o.stayOpen || o.userClosed) && !$target.hasClass($keyboard.css.input)) { + return; + } + // stop propogation in IE - an input getting focus doesn't open a keyboard if one is already open + if ($keyboard.allie) { + e.preventDefault(); + } + if (o.closeByClickEvent) { + // only close the keyboard if the user is clicking on an input or if they cause a click + // event (touchstart/mousedown will not force the close with this setting) + var name = $target[0] && $target[0].nodeName.toLowerCase(); + if (name === 'input' || name === 'textarea' || e.type === 'click') { + base.close(o.autoAccept ? 'true' : false); + } + } else { + // send 'true' instead of a true (boolean), the input won't get a 'ui-keyboard-autoaccepted' + // class name - see issue #66 + base.close(o.autoAccept ? 'true' : false); + } + } + }; + + // Build default button + base.keyBtn = $('<button />') + .attr({ + 'role': 'button', + 'type': 'button', + 'aria-disabled': 'false', + 'tabindex': '-1' + }) + .addClass($keyboard.css.keyButton); + + // convert key names into a class name + base.processName = function (name) { + var index, n, + process = (name || '').replace(/[^a-z0-9-_]/gi, ''), + len = process.length, + newName = []; + if (len > 1 && name === process) { + // return name if basic text + return name; + } + // return character code sequence + len = name.length; + if (len) { + for (index = 0; index < len; index++) { + n = name[index]; + // keep '-' and '_'... so for dash, we get two dashes in a row + newName.push(/[a-z0-9-_]/i.test(n) ? + (/[-_]/.test(n) && index !== 0 ? '' : n) : + (index === 0 ? '' : '-') + n.charCodeAt(0) + ); + } + return newName.join(''); + } + return name; + }; + + base.processKeys = function (name) { + var tmp, + // Don't split colons followed by //, e.g. https://; Fixes #555 + parts = name.split(/:(?!\/\/)/), + htmlIndex = name.indexOf('</'), + colonIndex = name.indexOf(':', name.indexOf('<')), + data = { + name: null, + map: '', + title: '' + }; + if (htmlIndex > -1 && (colonIndex < 0 || colonIndex > htmlIndex)) { + // html includes colons; see #701 + data.name = name; + return data; + } + /* map defined keys + format 'key(A):Label_for_key_(ignore_parentheses_here)' + 'key' = key that is seen (can any character(s); but it might need to be escaped using '\' + or entered as unicode '\u####' + '(A)' = the actual key on the real keyboard to remap + ':Label_for_key' ends up in the title/tooltip + Examples: + '\u0391(A):alpha', 'x(y):this_(might)_cause_problems + or edge cases of ':(x)', 'x(:)', 'x(()' or 'x())' + Enhancement (if I can get alt keys to work): + A mapped key will include the mod key, e.g. 'x(alt-x)' or 'x(alt-shift-x)' + */ + if (/\(.+\)/.test(parts[0]) || /^:\(.+\)/.test(name) || /\([(:)]\)/.test(name)) { + // edge cases 'x(:)', 'x(()' or 'x())' + if (/\([(:)]\)/.test(name)) { + tmp = parts[0].match(/([^(]+)\((.+)\)/); + if (tmp && tmp.length) { + data.name = tmp[1]; + data.map = tmp[2]; + data.title = parts.length > 1 ? parts.slice(1).join(':') : ''; + } else { + // edge cases 'x(:)', ':(x)' or ':(:)' + data.name = name.match(/([^(]+)/)[0]; + if (data.name === ':') { + // ':(:):test' => parts = [ '', '(', ')', 'title' ] need to slice 1 + parts = parts.slice(1); + } + if (tmp === null) { + // 'x(:):test' => parts = [ 'x(', ')', 'title' ] need to slice 2 + data.map = ':'; + parts = parts.slice(2); + } + data.title = parts.length ? parts.join(':') : ''; + } + } else { + // example: \u0391(A):alpha; extract 'A' from '(A)' + data.map = name.match(/\(([^()]+?)\)/)[1]; + // remove '(A)', left with '\u0391:alpha' + name = name.replace(/\(([^()]+)\)/, ''); + tmp = name.split(':'); + // get '\u0391' from '\u0391:alpha' + if (tmp[0] === '') { + data.name = ':'; + parts = parts.slice(1); + } else { + data.name = tmp[0]; + } + data.title = parts.length > 1 ? parts.slice(1).join(':') : ''; + } + } else { + // find key label + // corner case of '::;' reduced to ':;', split as ['', ';'] + if (name !== '' && parts[0] === '') { + data.name = ':'; + parts = parts.slice(1); + } else { + data.name = parts[0]; + } + data.title = parts.length > 1 ? parts.slice(1).join(':') : ''; + } + data.title = $.trim(data.title).replace(/_/g, ' '); + return data; + }; + + // Add key function + // keyName = the name of the function called in $.keyboard.keyaction when the button is clicked + // name = name added to key, or cross-referenced in the display options + // base.temp[0] = keyset to attach the new button + // regKey = true when it is not an action key + base.addKey = function (keyName, action, regKey) { + var keyClass, tmp, keys, + data = {}, + txt = base.processKeys(regKey ? keyName : action), + kbcss = $keyboard.css; + + if (!regKey && o.display[txt.name]) { + keys = base.processKeys(o.display[txt.name]); + // action contained in "keyName" (e.g. keyName = "accept", + // action = "a" (use checkmark instead of text)) + keys.action = base.processKeys(keyName).name; + } else { + // when regKey is true, keyName is the same as action + keys = txt; + keys.action = txt.name; + } + + data.name = base.processName(txt.name); + if (keys.name !== '') { + if (keys.map !== '') { + $keyboard.builtLayouts[base.layout].mappedKeys[keys.map] = keys.name; + $keyboard.builtLayouts[base.layout].acceptedKeys.push(keys.name); + } else if (regKey) { + $keyboard.builtLayouts[base.layout].acceptedKeys.push(keys.name); + } + } + + if (regKey) { + keyClass = data.name === '' ? '' : kbcss.keyPrefix + data.name; + } else { + // Action keys will have the 'ui-keyboard-actionkey' class + keyClass = kbcss.keyAction + ' ' + kbcss.keyPrefix + keys.action; + } + // '\u2190'.length = 1 because the unicode is converted, so if more than one character, + // add the wide class + keyClass += (keys.name.length > 2 ? ' ' + kbcss.keyWide : '') + ' ' + o.css.buttonDefault; + + data.html = '<span class="' + kbcss.keyText + '">' + + // this prevents HTML from being added to the key + keys.name.replace(/[\u00A0-\u9999]/gim, function (i) { + return '&#' + i.charCodeAt(0) + ';'; + }) + + '</span>'; + + data.$key = base.keyBtn + .clone() + .attr({ + 'data-value': regKey ? keys.name : keys.action, // value + 'data-name': keys.action, + 'data-pos': base.temp[1] + ',' + base.temp[2], + 'data-action': keys.action, + 'data-html': data.html + }) + // add 'ui-keyboard-' + data.name for all keys + // (e.g. 'Bksp' will have 'ui-keyboard-bskp' class) + // any non-alphanumeric characters will be replaced with + // their decimal unicode value + // (e.g. '~' is a regular key, class = 'ui-keyboard-126' + // (126 is the unicode decimal value - same as ~) + // See https://en.wikipedia.org/wiki/List_of_Unicode_characters#Control_codes + .addClass(keyClass) + .html(data.html) + .appendTo(base.temp[0]); + + if (keys.map) { + data.$key.attr('data-mapped', keys.map); + } + if (keys.title || txt.title) { + data.$key.attr({ + 'data-title': txt.title || keys.title, // used to allow adding content to title + 'title': txt.title || keys.title + }); + } + + if (typeof o.buildKey === 'function') { + data = o.buildKey(base, data); + // copy html back to attributes + tmp = data.$key.html(); + data.$key.attr('data-html', tmp); + } + return data.$key; + }; + + base.customHash = function (layout) { + /*jshint bitwise:false */ + var i, array, hash, character, len, + arrays = [], + merged = []; + // pass layout to allow for testing + layout = typeof layout === 'undefined' ? o.customLayout : layout; + // get all layout arrays + for (array in layout) { + if (layout.hasOwnProperty(array)) { + arrays.push(layout[array]); + } + } + // flatten array + merged = merged.concat.apply(merged, arrays).join(' '); + // produce hash name - http://stackoverflow.com/a/7616484/145346 + hash = 0; + len = merged.length; + if (len === 0) { + return hash; + } + for (i = 0; i < len; i++) { + character = merged.charCodeAt(i); + hash = ((hash << 5) - hash) + character; + hash = hash & hash; // Convert to 32bit integer + } + return hash; + }; + + base.buildKeyboard = function (name, internal) { + // o.display is empty when this is called from the scramble extension (when alwaysOpen:true) + if ($.isEmptyObject(o.display)) { + // set keyboard language + base.updateLanguage(); + } + var index, row, $row, currentSet, + kbcss = $keyboard.css, + sets = 0, + layout = $keyboard.builtLayouts[name || base.layout || o.layout] = { + mappedKeys: {}, + acceptedKeys: [] + }, + acceptedKeys = layout.acceptedKeys = o.restrictInclude ? + ('' + o.restrictInclude).split(/\s+/) || [] : + [], + // using $layout temporarily to hold keyboard popup classnames + $layout = kbcss.keyboard + ' ' + o.css.popup + ' ' + o.css.container + + (o.alwaysOpen || o.userClosed ? ' ' + kbcss.alwaysOpen : ''), + + container = $('<div />') + .addClass($layout) + .attr({ + 'role': 'textbox' + }) + .hide(); + + // allow adding "{space}" as an accepted key - Fixes #627 + index = $.inArray('{space}', acceptedKeys); + if (index > -1) { + acceptedKeys[index] = ' '; + } + + // verify layout or setup custom keyboard + if ((internal && o.layout === 'custom') || !$keyboard.layouts.hasOwnProperty(o.layout)) { + o.layout = 'custom'; + $layout = $keyboard.layouts.custom = o.customLayout || { + 'normal': ['{cancel}'] + }; + } else { + $layout = $keyboard.layouts[internal ? o.layout : name || base.layout || o.layout]; + } + + // Main keyboard building loop + $.each($layout, function (set, keySet) { + // skip layout name & lang settings + if (set !== '' && !/^(name|lang|rtl)$/i.test(set)) { + // keep backwards compatibility for change from default to normal naming + if (set === 'default') { + set = 'normal'; + } + sets++; + $row = $('<div />') + .attr('name', set) // added for typing extension + .addClass(kbcss.keySet + ' ' + kbcss.keySet + '-' + set) + .appendTo(container) + .toggle(set === 'normal'); + + for (row = 0; row < keySet.length; row++) { + // remove extra spaces before spliting (regex probably could be improved) + currentSet = $.trim(keySet[row]).replace(/\{(\.?)[\s+]?:[\s+]?(\.?)\}/g, '{$1:$2}'); + base.buildRow($row, row, currentSet.split(/\s+/), acceptedKeys); + $row.find('.' + kbcss.keyButton + ',.' + kbcss.keySpacer) + .filter(':last') + .after('<br class="' + kbcss.endRow + '"/>'); + } + } + }); + + if (sets > 1) { + base.sets = true; + } + layout.hasMappedKeys = !($.isEmptyObject(layout.mappedKeys)); + layout.$keyboard = container; + return container; + }; + + base.buildRow = function ($row, row, keys, acceptedKeys) { + var t, txt, key, isAction, action, margin, + kbcss = $keyboard.css; + for (key = 0; key < keys.length; key++) { + // used by addKey function + base.temp = [$row, row, key]; + isAction = false; + + // ignore empty keys + if (keys[key].length === 0) { + continue; + } + + // process here if it's an action key + if (/^\{\S+\}$/.test(keys[key])) { + action = keys[key].match(/^\{(\S+)\}$/)[1]; + // add active class if there are double exclamation points in the name + if (/\!\!/.test(action)) { + action = action.replace('!!', ''); + isAction = true; + } + + // add empty space + if (/^sp:((\d+)?([\.|,]\d+)?)(em|px)?$/i.test(action)) { + // not perfect globalization, but allows you to use {sp:1,1em}, {sp:1.2em} or {sp:15px} + margin = parseFloat(action + .replace(/,/, '.') + .match(/^sp:((\d+)?([\.|,]\d+)?)(em|px)?$/i)[1] || 0 + ); + $('<span class="' + kbcss.keyText + '"></span>') + // previously {sp:1} would add 1em margin to each side of a 0 width span + // now Firefox doesn't seem to render 0px dimensions, so now we set the + // 1em margin x 2 for the width + .width((action.match(/px/i) ? margin + 'px' : (margin * 2) + 'em')) + .addClass(kbcss.keySpacer) + .appendTo($row); + } + + // add empty button + if (/^empty(:((\d+)?([\.|,]\d+)?)(em|px)?)?$/i.test(action)) { + margin = (/:/.test(action)) ? parseFloat(action + .replace(/,/, '.') + .match(/^empty:((\d+)?([\.|,]\d+)?)(em|px)?$/i)[1] || 0 + ) : ''; + base + .addKey('', ' ', true) + .addClass(o.css.buttonDisabled + ' ' + o.css.buttonEmpty) + .attr('aria-disabled', true) + .width(margin ? (action.match('px') ? margin + 'px' : (margin * 2) + 'em') : ''); + continue; + } + + // meta keys + if (/^meta[\w-]+\:?(\w+)?/i.test(action)) { + base + .addKey(action.split(':')[0], action) + .addClass(kbcss.keyHasActive); + continue; + } + + // switch needed for action keys with multiple names/shortcuts or + // default will catch all others + txt = action.split(':'); + switch (txt[0].toLowerCase()) { + + case 'a': + case 'accept': + base + .addKey('accept', action) + .addClass(o.css.buttonAction + ' ' + kbcss.keyAction); + break; + + case 'alt': + case 'altgr': + base + .addKey('alt', action) + .addClass(kbcss.keyHasActive); + break; + + case 'b': + case 'bksp': + base.addKey('bksp', action); + break; + + case 'c': + case 'cancel': + base + .addKey('cancel', action) + .addClass(o.css.buttonAction + ' ' + kbcss.keyAction); + break; + + // toggle combo/diacritic key + /*jshint -W083 */ + case 'combo': + base + .addKey('combo', action) + .addClass(kbcss.keyHasActive) + .attr('title', function (indx, title) { + // add combo key state to title + return title + ' ' + o.display[o.useCombos ? 'active' : 'disabled']; + }) + .toggleClass(o.css.buttonActive, o.useCombos); + break; + + // Decimal - unique decimal point (num pad layout) + case 'dec': + acceptedKeys.push((base.decimal) ? '.' : ','); + base.addKey('dec', action); + break; + + case 'e': + case 'enter': + base + .addKey('enter', action) + .addClass(o.css.buttonAction + ' ' + kbcss.keyAction); + break; + + case 'lock': + base + .addKey('lock', action) + .addClass(kbcss.keyHasActive); + break; + + case 's': + case 'shift': + base + .addKey('shift', action) + .addClass(kbcss.keyHasActive); + break; + + // Change sign (for num pad layout) + case 'sign': + acceptedKeys.push('-'); + base.addKey('sign', action); + break; + + case 'space': + acceptedKeys.push(' '); + base.addKey('space', action); + break; + + case 't': + case 'tab': + base.addKey('tab', action); + break; + + default: + if ($keyboard.keyaction.hasOwnProperty(txt[0])) { + base + .addKey(txt[0], action) + .toggleClass(o.css.buttonAction + ' ' + kbcss.keyAction, isAction); + } + + } + + } else { + + // regular button (not an action key) + t = keys[key]; + base.addKey(t, t, true); + } + } + }; + + base.removeBindings = function (namespace) { + $(document).unbind(namespace); + if (base.el.ownerDocument !== document) { + $(base.el.ownerDocument).unbind(namespace); + } + $(window).unbind(namespace); + base.$el.unbind(namespace); + }; + + base.removeKeyboard = function () { + base.$decBtn = []; + // base.$preview === base.$el when o.usePreview is false - fixes #442 + if (o.usePreview) { + base.$preview.removeData('keyboard'); + } + base.$preview.unbind(base.namespace + 'keybindings'); + base.preview = null; + base.$preview = null; + base.$previewCopy = null; + base.$keyboard.removeData('keyboard'); + base.$keyboard.remove(); + base.$keyboard = []; + base.isOpen = false; + base.isCurrent(false); + }; + + base.destroy = function (callback) { + var index, + kbcss = $keyboard.css, + len = base.extensionNamespace.length, + tmp = [ + kbcss.input, + kbcss.locked, + kbcss.placeholder, + kbcss.noKeyboard, + kbcss.alwaysOpen, + o.css.input, + kbcss.isCurrent + ].join(' '); + clearTimeout(base.timer); + clearTimeout(base.timer2); + clearTimeout(base.timer3); + if (base.$keyboard.length) { + base.removeKeyboard(); + } + if (base.options.openOn) { + base.removeBindings(base.options.openOn); + } + base.removeBindings(base.namespace); + base.removeBindings(base.namespace + 'callbacks'); + for (index = 0; index < len; index++) { + base.removeBindings(base.extensionNamespace[index]); + } + base.el.active = false; + + base.$el + .removeClass(tmp) + .removeAttr('aria-haspopup') + .removeAttr('role') + .removeData('keyboard'); + base = null; + + if (typeof callback === 'function') { + callback(); + } + }; + + // Run initializer + base.init(); + + }; // end $.keyboard definition + + // event.which & ASCII values + $keyboard.keyCodes = { + backSpace: 8, + tab: 9, + enter: 13, + capsLock: 20, + escape: 27, + space: 32, + pageUp: 33, + pageDown: 34, + end: 35, + home: 36, + left: 37, + up: 38, + right: 39, + down: 40, + insert: 45, + delete: 46, + // event.which keyCodes (uppercase letters) + A: 65, + Z: 90, + V: 86, + C: 67, + X: 88, + + // ASCII lowercase a & z + a: 97, + z: 122 + }; + + $keyboard.css = { + // keyboard id suffix + idSuffix: '_keyboard', + // class name to set initial focus + initialFocus: 'keyboard-init-focus', + // element class names + input: 'ui-keyboard-input', + inputClone: 'ui-keyboard-preview-clone', + wrapper: 'ui-keyboard-preview-wrapper', + preview: 'ui-keyboard-preview', + keyboard: 'ui-keyboard', + keySet: 'ui-keyboard-keyset', + keyButton: 'ui-keyboard-button', + keyWide: 'ui-keyboard-widekey', + keyPrefix: 'ui-keyboard-', + keyText: 'ui-keyboard-text', // span with button text + keyHasActive: 'ui-keyboard-hasactivestate', + keyAction: 'ui-keyboard-actionkey', + keySpacer: 'ui-keyboard-spacer', // empty keys + keyToggle: 'ui-keyboard-toggle', + keyDisabled: 'ui-keyboard-disabled', + // Class for BRs with a div wrapper inside of contenteditable + divWrapperCE: 'ui-keyboard-div-wrapper', + // states + locked: 'ui-keyboard-lockedinput', + alwaysOpen: 'ui-keyboard-always-open', + noKeyboard: 'ui-keyboard-nokeyboard', + placeholder: 'ui-keyboard-placeholder', + hasFocus: 'ui-keyboard-has-focus', + isCurrent: 'ui-keyboard-input-current', + // validation & autoaccept + inputValid: 'ui-keyboard-valid-input', + inputInvalid: 'ui-keyboard-invalid-input', + inputAutoAccepted: 'ui-keyboard-autoaccepted', + endRow: 'ui-keyboard-button-endrow' // class added to <br> + }; + + $keyboard.events = { + // keyboard events + kbChange: 'keyboardChange', + kbBeforeClose: 'beforeClose', + kbBeforeVisible: 'beforeVisible', + kbVisible: 'visible', + kbInit: 'initialized', + kbInactive: 'inactive', + kbHidden: 'hidden', + kbRepeater: 'repeater', + kbKeysetChange: 'keysetChange', + // input events + inputAccepted: 'accepted', + inputCanceled: 'canceled', + inputChange: 'change', + inputRestricted: 'restricted' + }; + + // Action key function list + $keyboard.keyaction = { + accept: function (base) { + base.close(true); // same as base.accept(); + return false; // return false prevents further processing + }, + alt: function (base) { + base.altActive = !base.altActive; + base.showSet(); + }, + bksp: function (base) { + if (base.isContentEditable) { + base.execCommand('delete'); + // save new caret position + base.saveCaret(); + } else { + // the script looks for the '\b' string and initiates a backspace + base.insertText('\b'); + } + }, + cancel: function (base) { + base.close(); + return false; // return false prevents further processing + }, + clear: function (base) { + base.$preview[base.isContentEditable ? 'text' : 'val'](''); + if (base.$decBtn.length) { + base.checkDecimal(); + } + }, + combo: function (base) { + var o = base.options, + c = !o.useCombos, + $combo = base.$keyboard.find('.' + $keyboard.css.keyPrefix + 'combo'); + o.useCombos = c; + $combo + .toggleClass(o.css.buttonActive, c) + // update combo key state + .attr('title', $combo.attr('data-title') + ' (' + o.display[c ? 'active' : 'disabled'] + ')'); + if (c) { + base.checkCombos(); + } + return false; + }, + dec: function (base) { + base.insertText((base.decimal) ? '.' : ','); + }, + del: function (base) { + if (base.isContentEditable) { + base.execCommand('forwardDelete'); + } else { + // the script looks for the '{d}' string and initiates a delete + base.insertText('{d}'); + } + }, + // resets to base keyset (deprecated because "default" is a reserved word) + 'default': function (base) { + base.shiftActive = base.altActive = base.metaActive = false; + base.showSet(); + }, + // el is the pressed key (button) object; it is null when the real keyboard enter is pressed + enter: function (base, el, e) { + var o = base.options; + // shift+enter in textareas + if (e.shiftKey) { + // textarea, input & contenteditable - enterMod + shift + enter = accept, + // then go to prev; base.switchInput(goToNext, autoAccept) + // textarea & input - shift + enter = accept (no navigation) + return (o.enterNavigation) ? base.switchInput(!e[o.enterMod], true) : base.close(true); + } + // input only - enterMod + enter to navigate + if (o.enterNavigation && (!base.isTextArea || e[o.enterMod])) { + return base.switchInput(!e[o.enterMod], o.autoAccept ? 'true' : false); + } + // pressing virtual enter button inside of a textarea - add a carriage return + // e.target is span when clicking on text and button at other times + if (base.isTextArea && $(e.target).closest('button').length) { + // IE8 fix (space + \n) - fixes #71 thanks Blookie! + base.insertText(($keyboard.msie ? ' ' : '') + '\n'); + } + if (base.isContentEditable && !o.enterNavigation) { + base.execCommand('insertHTML', '<div><br class="' + $keyboard.css.divWrapperCE + '"></div>'); + // Using backspace on wrapped BRs will now shift the textnode inside of the wrapped BR + // Although not ideal, the caret is moved after the block - see the wiki page for + // more details: https://github.com/Mottie/Keyboard/wiki/Contenteditable#limitations + // move caret after a delay to allow rendering of HTML + setTimeout(function() { + $keyboard.keyaction.right(base); + base.saveCaret(); + }, 0); + } + }, + // caps lock key + lock: function (base) { + base.last.keyset[0] = base.shiftActive = base.capsLock = !base.capsLock; + base.showSet(); + }, + left: function (base) { + var p = $keyboard.caret(base.$preview); + if (p.start - 1 >= 0) { + // move both start and end of caret (prevents text selection) & save caret position + base.last.start = base.last.end = p.start - 1; + $keyboard.caret(base.$preview, base.last); + base.setScroll(); + } + }, + meta: function (base, el) { + var $el = $(el); + base.metaActive = !$el.hasClass(base.options.css.buttonActive); + base.showSet($el.attr('data-name')); + }, + next: function (base) { + base.switchInput(true, base.options.autoAccept); + return false; + }, + // same as 'default' - resets to base keyset + normal: function (base) { + base.shiftActive = base.altActive = base.metaActive = false; + base.showSet(); + }, + prev: function (base) { + base.switchInput(false, base.options.autoAccept); + return false; + }, + right: function (base) { + var p = $keyboard.caret(base.$preview), + len = base.isContentEditable ? $keyboard.getEditableLength(base.el) : base.getValue().length; + if (p.end + 1 <= len) { + // move both start and end of caret to end position + // (prevents text selection) && save caret position + base.last.start = base.last.end = p.end + 1; + $keyboard.caret(base.$preview, base.last); + base.setScroll(); + } + }, + shift: function (base) { + base.last.keyset[0] = base.shiftActive = !base.shiftActive; + base.showSet(); + }, + sign: function (base) { + if (/^[+-]?\d*\.?\d*$/.test(base.getValue())) { + var caret, + p = $keyboard.caret(base.$preview), + val = base.getValue(), + len = base.isContentEditable ? $keyboard.getEditableLength(base.el) : val.length; + base.setValue(val * -1); + caret = len - val.length; + base.last.start = p.start + caret; + base.last.end = p.end + caret; + $keyboard.caret(base.$preview, base.last); + base.setScroll(); + } + }, + space: function (base) { + base.insertText(' '); + }, + tab: function (base) { + var o = base.options; + if (!base.isTextArea) { + if (o.tabNavigation) { + return base.switchInput(!base.shiftActive, true); + } else if (base.isInput) { + // ignore tab key in input + return false; + } + } + base.insertText('\t'); + }, + toggle: function (base) { + base.enabled = !base.enabled; + base.toggle(); + }, + // *** Special action keys: NBSP & zero-width characters *** + // Non-breaking space + NBSP: '\u00a0', + // zero width space + ZWSP: '\u200b', + // Zero width non-joiner + ZWNJ: '\u200c', + // Zero width joiner + ZWJ: '\u200d', + // Left-to-right Mark + LRM: '\u200e', + // Right-to-left Mark + RLM: '\u200f' + }; + + // Default keyboard layouts + $keyboard.builtLayouts = {}; + $keyboard.layouts = { + 'alpha': { + 'normal': [ + '` 1 2 3 4 5 6 7 8 9 0 - = {bksp}', + '{tab} a b c d e f g h i j [ ] \\', + 'k l m n o p q r s ; \' {enter}', + '{shift} t u v w x y z , . / {shift}', + '{accept} {space} {cancel}' + ], + 'shift': [ + '~ ! @ # $ % ^ & * ( ) _ + {bksp}', + '{tab} A B C D E F G H I J { } |', + 'K L M N O P Q R S : " {enter}', + '{shift} T U V W X Y Z < > ? {shift}', + '{accept} {space} {cancel}' + ] + }, + 'qwerty': { + 'normal': [ + '` 1 2 3 4 5 6 7 8 9 0 - = {bksp}', + '{tab} q w e r t y u i o p [ ] \\', + 'a s d f g h j k l ; \' {enter}', + '{shift} z x c v b n m , . / {shift}', + '{accept} {space} {cancel}' + ], + 'shift': [ + '~ ! @ # $ % ^ & * ( ) _ + {bksp}', + '{tab} Q W E R T Y U I O P { } |', + 'A S D F G H J K L : " {enter}', + '{shift} Z X C V B N M < > ? {shift}', + '{accept} {space} {cancel}' + ] + }, + 'international': { + 'normal': [ + '` 1 2 3 4 5 6 7 8 9 0 - = {bksp}', + '{tab} q w e r t y u i o p [ ] \\', + 'a s d f g h j k l ; \' {enter}', + '{shift} z x c v b n m , . / {shift}', + '{accept} {alt} {space} {alt} {cancel}' + ], + 'shift': [ + '~ ! @ # $ % ^ & * ( ) _ + {bksp}', + '{tab} Q W E R T Y U I O P { } |', + 'A S D F G H J K L : " {enter}', + '{shift} Z X C V B N M < > ? {shift}', + '{accept} {alt} {space} {alt} {cancel}' + ], + 'alt': [ + '~ \u00a1 \u00b2 \u00b3 \u00a4 \u20ac \u00bc \u00bd \u00be \u2018 \u2019 \u00a5 \u00d7 {bksp}', + '{tab} \u00e4 \u00e5 \u00e9 \u00ae \u00fe \u00fc \u00fa \u00ed \u00f3 \u00f6 \u00ab \u00bb \u00ac', + '\u00e1 \u00df \u00f0 f g h j k \u00f8 \u00b6 \u00b4 {enter}', + '{shift} \u00e6 x \u00a9 v b \u00f1 \u00b5 \u00e7 > \u00bf {shift}', + '{accept} {alt} {space} {alt} {cancel}' + ], + 'alt-shift': [ + '~ \u00b9 \u00b2 \u00b3 \u00a3 \u20ac \u00bc \u00bd \u00be \u2018 \u2019 \u00a5 \u00f7 {bksp}', + '{tab} \u00c4 \u00c5 \u00c9 \u00ae \u00de \u00dc \u00da \u00cd \u00d3 \u00d6 \u00ab \u00bb \u00a6', + '\u00c4 \u00a7 \u00d0 F G H J K \u00d8 \u00b0 \u00a8 {enter}', + '{shift} \u00c6 X \u00a2 V B \u00d1 \u00b5 \u00c7 . \u00bf {shift}', + '{accept} {alt} {space} {alt} {cancel}' + ] + }, + 'colemak': { + 'normal': [ + '` 1 2 3 4 5 6 7 8 9 0 - = {bksp}', + '{tab} q w f p g j l u y ; [ ] \\', + '{bksp} a r s t d h n e i o \' {enter}', + '{shift} z x c v b k m , . / {shift}', + '{accept} {space} {cancel}' + ], + 'shift': [ + '~ ! @ # $ % ^ & * ( ) _ + {bksp}', + '{tab} Q W F P G J L U Y : { } |', + '{bksp} A R S T D H N E I O " {enter}', + '{shift} Z X C V B K M < > ? {shift}', + '{accept} {space} {cancel}' + ] + }, + 'dvorak': { + 'normal': [ + '` 1 2 3 4 5 6 7 8 9 0 [ ] {bksp}', + '{tab} \' , . p y f g c r l / = \\', + 'a o e u i d h t n s - {enter}', + '{shift} ; q j k x b m w v z {shift}', + '{accept} {space} {cancel}' + ], + 'shift': [ + '~ ! @ # $ % ^ & * ( ) { } {bksp}', + '{tab} " < > P Y F G C R L ? + |', + 'A O E U I D H T N S _ {enter}', + '{shift} : Q J K X B M W V Z {shift}', + '{accept} {space} {cancel}' + ] + }, + 'num': { + 'normal': [ + '= ( ) {b}', + '{clear} / * -', + '7 8 9 +', + '4 5 6 {sign}', + '1 2 3 %', + '0 {dec} {a} {c}' + ] + } + }; + + $keyboard.language = { + en: { + display: { + // check mark - same action as accept + 'a': '\u2714:Accept (Shift+Enter)', + 'accept': 'Accept:Accept (Shift+Enter)', + // other alternatives \u2311 + 'alt': 'Alt:\u2325 AltGr', + // Left arrow (same as ←) + 'b': '\u232b:Backspace', + 'bksp': 'Bksp:Backspace', + // big X, close - same action as cancel + 'c': '\u2716:Cancel (Esc)', + 'cancel': 'Cancel:Cancel (Esc)', + // clear num pad + 'clear': 'C:Clear', + 'combo': '\u00f6:Toggle Combo Keys', + // decimal point for num pad (optional), change '.' to ',' for European format + 'dec': '.:Decimal', + // down, then left arrow - enter symbol + 'e': '\u23ce:Enter', + 'empty': '\u00a0', + 'enter': 'Enter:Enter \u23ce', + // left arrow (move caret) + 'left': '\u2190', + // caps lock + 'lock': 'Lock:\u21ea Caps Lock', + 'next': 'Next \u21e8', + 'prev': '\u21e6 Prev', + // right arrow (move caret) + 'right': '\u2192', + // thick hollow up arrow + 's': '\u21e7:Shift', + 'shift': 'Shift:Shift', + // +/- sign for num pad + 'sign': '\u00b1:Change Sign', + 'space': '\u00a0:Space', + // right arrow to bar (used since this virtual keyboard works with one directional tabs) + 't': '\u21e5:Tab', + // \u21b9 is the true tab symbol (left & right arrows) + 'tab': '\u21e5 Tab:Tab', + // replaced by an image + 'toggle': ' ', + + // added to titles of keys + // accept key status when acceptValid:true + 'valid': 'valid', + 'invalid': 'invalid', + // combo key states + 'active': 'active', + 'disabled': 'disabled' + }, + + // Message added to the key title while hovering, if the mousewheel plugin exists + wheelMessage: 'Use mousewheel to see other keys', + + comboRegex: /([`\'~\^\"ao])([a-z])/mig, + combos: { + // grave + '`': { a: '\u00e0', A: '\u00c0', e: '\u00e8', E: '\u00c8', i: '\u00ec', I: '\u00cc', o: '\u00f2', + O: '\u00d2', u: '\u00f9', U: '\u00d9', y: '\u1ef3', Y: '\u1ef2' }, + // acute & cedilla + "'": { a: '\u00e1', A: '\u00c1', e: '\u00e9', E: '\u00c9', i: '\u00ed', I: '\u00cd', o: '\u00f3', + O: '\u00d3', u: '\u00fa', U: '\u00da', y: '\u00fd', Y: '\u00dd' }, + // umlaut/trema + '"': { a: '\u00e4', A: '\u00c4', e: '\u00eb', E: '\u00cb', i: '\u00ef', I: '\u00cf', o: '\u00f6', + O: '\u00d6', u: '\u00fc', U: '\u00dc', y: '\u00ff', Y: '\u0178' }, + // circumflex + '^': { a: '\u00e2', A: '\u00c2', e: '\u00ea', E: '\u00ca', i: '\u00ee', I: '\u00ce', o: '\u00f4', + O: '\u00d4', u: '\u00fb', U: '\u00db', y: '\u0177', Y: '\u0176' }, + // tilde + '~': { a: '\u00e3', A: '\u00c3', e: '\u1ebd', E: '\u1ebc', i: '\u0129', I: '\u0128', o: '\u00f5', + O: '\u00d5', u: '\u0169', U: '\u0168', y: '\u1ef9', Y: '\u1ef8', n: '\u00f1', N: '\u00d1' } + } + } + }; + + $keyboard.defaultOptions = { + // set this to ISO 639-1 language code to override language set by the layout + // http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes + // language defaults to 'en' if not found + language: null, + rtl: false, + + // *** choose layout & positioning *** + layout: 'qwerty', + customLayout: null, + + position: { + // optional - null (attach to input/textarea) or a jQuery object (attach elsewhere) + of: null, + my: 'center top', + at: 'center top', + // used when 'usePreview' is false (centers the keyboard at the bottom of the input/textarea) + at2: 'center bottom' + }, + + // allow jQuery position utility to reposition the keyboard on window resize + reposition: true, + + // preview added above keyboard if true, original input/textarea used if false + usePreview: true, + + // if true, the keyboard will always be visible + alwaysOpen: false, + + // give the preview initial focus when the keyboard becomes visible + initialFocus: true, + + // avoid changing the focus (hardware keyboard probably won't work) + noFocus: false, + + // if true, keyboard will remain open even if the input loses focus, but closes on escape + // or when another keyboard opens. + stayOpen: false, + + // Prevents the keyboard from closing when the user clicks or presses outside the keyboard + // the `autoAccept` option must also be set to true when this option is true or changes are lost + userClosed: false, + + // if true, keyboard will not close if you press escape. + ignoreEsc: false, + + // if true, keyboard will only closed on click event instead of mousedown and touchstart + closeByClickEvent: false, + + css: { + // input & preview + input: 'ui-widget-content ui-corner-all', + // keyboard container + container: 'ui-widget-content ui-widget ui-corner-all ui-helper-clearfix', + // keyboard container extra class (same as container, but separate) + popup: '', + // default state + buttonDefault: 'ui-state-default ui-corner-all', + // hovered button + buttonHover: 'ui-state-hover', + // Action keys (e.g. Accept, Cancel, Tab, etc); this replaces 'actionClass' option + buttonAction: 'ui-state-active', + // Active keys (e.g. shift down, meta keyset active, combo keys active) + buttonActive: 'ui-state-active', + // used when disabling the decimal button {dec} when a decimal exists in the input area + buttonDisabled: 'ui-state-disabled', + buttonEmpty: 'ui-keyboard-empty' + }, + + // *** Useability *** + // Auto-accept content when clicking outside the keyboard (popup will close) + autoAccept: false, + // Auto-accept content even if the user presses escape (only works if `autoAccept` is `true`) + autoAcceptOnEsc: false, + + // Prevents direct input in the preview window when true + lockInput: false, + + // Prevent keys not in the displayed keyboard from being typed in + restrictInput: false, + // Additional allowed characters while restrictInput is true + restrictInclude: '', // e.g. 'a b foo \ud83d\ude38' + + // Check input against validate function, if valid the accept button gets a class name of + // 'ui-keyboard-valid-input'. If invalid, the accept button gets a class name of + // 'ui-keyboard-invalid-input' + acceptValid: false, + // Auto-accept when input is valid; requires `acceptValid` set `true` & validate callback + autoAcceptOnValid: false, + // Check validation on keyboard initialization. If false, the "Accept" key state (color) + // will not change to show if the content is valid, or not + checkValidOnInit: true, + + // if acceptValid is true & the validate function returns a false, this option will cancel + // a keyboard close only after the accept button is pressed + cancelClose: true, + + // tab to go to next, shift-tab for previous (default behavior) + tabNavigation: false, + + // enter for next input; shift+enter accepts content & goes to next + // shift + 'enterMod' + enter ('enterMod' is the alt as set below) will accept content and go + // to previous in a textarea + enterNavigation: false, + // mod key options: 'ctrlKey', 'shiftKey', 'altKey', 'metaKey' (MAC only) + enterMod: 'altKey', // alt-enter to go to previous; shift-alt-enter to accept & go to previous + + // if true, the next button will stop on the last keyboard input/textarea; prev button stops at first + // if false, the next button will wrap to target the first input/textarea; prev will go to the last + stopAtEnd: true, + + // Set this to append the keyboard after the input/textarea (appended to the input/textarea parent). + // This option works best when the input container doesn't have a set width & when the 'tabNavigation' + // option is true. + appendLocally: false, + // When appendLocally is false, the keyboard will be appended to this object + appendTo: 'body', + + // Wrap all <br>s inside of a contenteditable in a div; without wrapping, the caret + // position will not be accurate + wrapBRs: true, + + // If false, the shift key will remain active until the next key is (mouse) clicked on; if true it will + // stay active until pressed again + stickyShift: true, + + // Prevent pasting content into the area + preventPaste: false, + + // caret placed at the end of any text when keyboard becomes visible + caretToEnd: false, + + // caret stays this many pixels from the edge of the input while scrolling left/right; + // use "c" or "center" to center the caret while scrolling + scrollAdjustment: 10, + + // Set the max number of characters allowed in the input, setting it to false disables this option + maxLength: false, + // allow inserting characters @ caret when maxLength is set + maxInsert: true, + + // Mouse repeat delay - when clicking/touching a virtual keyboard key, after this delay the key will + // start repeating + repeatDelay: 500, + + // Mouse repeat rate - after the repeatDelay, this is the rate (characters per second) at which the + // key is repeated Added to simulate holding down a real keyboard key and having it repeat. I haven't + // calculated the upper limit of this rate, but it is limited to how fast the javascript can process + // the keys. And for me, in Firefox, it's around 20. + repeatRate: 20, + + // resets the keyboard to the default keyset when visible + resetDefault: true, + + // Event (namespaced) on the input to reveal the keyboard. To disable it, just set it to ''. + openOn: 'focus', + + // enable the keyboard on readonly inputs + activeOnReadonly: false, + + // Event (namepaced) for when the character is added to the input (clicking on the keyboard) + keyBinding: 'mousedown touchstart', + + // enable/disable mousewheel functionality + // enabling still depends on the mousewheel plugin + useWheel: true, + + // combos (emulate dead keys : http://en.wikipedia.org/wiki/Keyboard_layout#US-International) + // if user inputs `a the script converts it to à, ^o becomes ô, etc. + useCombos: true, + + /* + // *** Methods *** + // commenting these out to reduce the size of the minified version + // Callbacks - attach a function to any of these callbacks as desired + initialized : function(e, keyboard, el) {}, + beforeVisible : function(e, keyboard, el) {}, + visible : function(e, keyboard, el) {}, + beforeInsert : function(e, keyboard, el, textToAdd) { return textToAdd; }, + change : function(e, keyboard, el) {}, + beforeClose : function(e, keyboard, el, accepted) {}, + accepted : function(e, keyboard, el) {}, + canceled : function(e, keyboard, el) {}, + restricted : function(e, keyboard, el) {}, + hidden : function(e, keyboard, el) {}, + // called instead of base.switchInput + switchInput : function(keyboard, goToNext, isAccepted) {}, + // used if you want to create a custom layout or modify the built-in keyboard + create : function(keyboard) { return keyboard.buildKeyboard(); }, + + // build key callback + buildKey : function( keyboard, data ) { + / * + data = { + // READ ONLY + isAction : [boolean] true if key is an action key + name : [string] key class name suffix ( prefix = 'ui-keyboard-' ); + may include decimal ascii value of character + value : [string] text inserted (non-action keys) + title : [string] title attribute of key + action : [string] keyaction name + html : [string] HTML of the key; it includes a <span> wrapping the text + // use to modify key HTML + $key : [object] jQuery selector of key which is already appended to keyboard + } + * / + return data; + }, + */ + + // this callback is called, if the acceptValid is true, and just before the 'beforeClose' to check + // the value if the value is valid, return true and the keyboard will continue as it should + // (close if not always open, etc). If the value is not valid, return false and clear the keyboard + // value ( like this "keyboard.$preview.val('');" ), if desired. The validate function is called after + // each input, the 'isClosing' value will be false; when the accept button is clicked, + // 'isClosing' is true + validate: function (/* keyboard, value, isClosing */) { + return true; + } + + }; + + // for checking combos + $keyboard.comboRegex = /([`\'~\^\"ao])([a-z])/mig; + + // store current keyboard element; used by base.isCurrent() + $keyboard.currentKeyboard = ''; + + $('<!--[if lte IE 8]><script>jQuery("body").addClass("oldie");</script><![endif]--><!--[if IE]>' + + '<script>jQuery("body").addClass("ie");</script><![endif]-->') + .appendTo('body') + .remove(); + $keyboard.msie = $('body').hasClass('oldie'); // Old IE flag, used for caret positioning + $keyboard.allie = $('body').hasClass('ie'); + + $keyboard.watermark = (typeof (document.createElement('input').placeholder) !== 'undefined'); + + $keyboard.checkCaretSupport = function () { + if (typeof $keyboard.checkCaret !== 'boolean') { + // Check if caret position is saved when input is hidden or loses focus + // (*cough* all versions of IE and I think Opera has/had an issue as well + var $temp = $('<div style="height:0px;width:0px;overflow:hidden;position:fixed;top:0;left:-100px;">' + + '<input type="text" value="testing"/></div>').prependTo('body'); // stop page scrolling + $keyboard.caret($temp.find('input'), 3, 3); + // Also save caret position of the input if it is locked + $keyboard.checkCaret = $keyboard.caret($temp.find('input').hide().show()).start !== 3; + $temp.remove(); + } + return $keyboard.checkCaret; + }; + + $keyboard.caret = function($el, param1, param2) { + if (!$el || !$el.length || $el.is(':hidden') || $el.css('visibility') === 'hidden') { + return {}; + } + var start, end, txt, pos, + kb = $el.data( 'keyboard' ), + noFocus = kb && kb.options.noFocus, + formEl = /(textarea|input)/i.test($el[0].nodeName); + if (!noFocus) { $el.focus(); } + // set caret position + if (typeof param1 !== 'undefined') { + // allow setting caret using ( $el, { start: x, end: y } ) + if (typeof param1 === 'object' && 'start' in param1 && 'end' in param1) { + start = param1.start; + end = param1.end; + } else if (typeof param2 === 'undefined') { + param2 = param1; // set caret using start position + } + // set caret using ( $el, start, end ); + if (typeof param1 === 'number' && typeof param2 === 'number') { + start = param1; + end = param2; + } else if ( param1 === 'start' ) { + start = end = 0; + } else if ( typeof param1 === 'string' ) { + // unknown string setting, move caret to end + start = end = 'end'; + } + + // *** SET CARET POSITION *** + // modify the line below to adapt to other caret plugins + return formEl ? + $el.caret( start, end, noFocus ) : + $keyboard.setEditableCaret( $el, start, end ); + } + // *** GET CARET POSITION *** + // modify the line below to adapt to other caret plugins + if (formEl) { + // modify the line below to adapt to other caret plugins + pos = $el.caret(); + } else { + // contenteditable + pos = $keyboard.getEditableCaret($el[0]); + } + start = pos.start; + end = pos.end; + + // *** utilities *** + txt = formEl && $el[0].value || $el.text() || ''; + return { + start : start, + end : end, + // return selected text + text : txt.substring( start, end ), + // return a replace selected string method + replaceStr : function( str ) { + return txt.substring( 0, start ) + str + txt.substring( end, txt.length ); + } + }; + }; + + $keyboard.isTextNode = function(el) { + return el && el.nodeType === 3; + }; + + $keyboard.isBlock = function(el, node) { + var win = el.ownerDocument.defaultView; + if ( + node && node.nodeType === 1 && node !== el && + win.getComputedStyle(node).display === 'block' + ) { + return 1; + } + return 0; + }; + + // Wrap all BR's inside of contenteditable + $keyboard.wrapBRs = function(container) { + var $el = $(container).find('br:not(.' + $keyboard.css.divWrapperCE + ')'); + if ($el.length) { + $.each($el, function(i, el) { + var len = el.parentNode.childNodes.length; + if ( + // wrap BRs if not solo child + len !== 1 || + // Or if BR is wrapped by a span + len === 1 && !$keyboard.isBlock(container, el.parentNode) + ) { + $(el).addClass($keyboard.css.divWrapperCE).wrap('<div>'); + } + }); + } + }; + + $keyboard.getEditableCaret = function(container) { + container = $(container)[0]; + if (!container.isContentEditable) { return {}; } + var end, text, + options = ($(container).data('keyboard') || {}).options, + doc = container.ownerDocument, + range = doc.getSelection().getRangeAt(0), + result = pathToNode(range.startContainer, range.startOffset), + start = result.position; + if (options.wrapBRs !== false) { + $keyboard.wrapBRs(container); + } + function pathToNode(endNode, offset) { + var node, adjust, + txt = '', + done = false, + position = 0, + nodes = $.makeArray(container.childNodes); + + function checkBlock(val) { + if (val) { + position += val; + txt += options && options.replaceCR || '\n'; + } + } + + while (!done && nodes.length) { + node = nodes.shift(); + if (node === endNode) { + done = true; + } + + // Add one if previous sibling was a block node (div, p, etc) + adjust = $keyboard.isBlock(container, node.previousSibling); + checkBlock(adjust); + + if ($keyboard.isTextNode(node)) { + position += done ? offset : node.length; + txt += node.textContent; + if (done) { + return {position: position, text: txt}; + } + } else if (!done && node.childNodes) { + nodes = $.makeArray(node.childNodes).concat(nodes); + } + // Add one if we're inside a block node (div, p, etc) + // and previous sibling was a text node + adjust = $keyboard.isTextNode(node.previousSibling) && $keyboard.isBlock(container, node); + checkBlock(adjust); + } + return {position: position, text: txt}; + } + // check of start and end are the same + if (range.endContainer === range.startContainer && range.endOffset === range.startOffset) { + end = start; + text = ''; + } else { + result = pathToNode(range.endContainer, range.endOffset); + end = result.position; + text = result.text.substring(start, end); + } + return { + start: start, + end: end, + text: text + }; + }; + + $keyboard.getEditableLength = function(container) { + var result = $keyboard.setEditableCaret(container, 'getMax'); + // if not a number, the container is not a contenteditable element + return typeof result === 'number' ? result : null; + }; + + $keyboard.setEditableCaret = function(container, start, end) { + container = $(container)[0]; + if (!container.isContentEditable) { return {}; } + var doc = container.ownerDocument, + range = doc.createRange(), + sel = doc.getSelection(), + options = ($(container).data('keyboard') || {}).options, + s = start, + e = end, + text = '', + result = findNode(start === 'getMax' ? 'end' : start); + function findNode(offset) { + if (offset === 'end') { + // Set some value > content length; but return max + offset = container.innerHTML.length; + } else if (offset < 0) { + offset = 0; + } + var node, check, + txt = '', + done = false, + position = 0, + last = 0, + max = 0, + nodes = $.makeArray(container.childNodes); + function updateText(val) { + txt += val ? options && options.replaceCR || '\n' : ''; + return val > 0; + } + function checkDone(adj) { + var val = position + adj; + last = max; + max += adj; + if (offset - val >= 0) { + position = val; + return offset - position <= 0; + } + return offset - val <= 0; + } + while (!done && nodes.length) { + node = nodes.shift(); + // Add one if the previous sibling was a block node (div, p, etc) + check = $keyboard.isBlock(container, node.previousSibling); + if (updateText(check) && checkDone(check)) { + done = true; + } + // Add one if we're inside a block node (div, p, etc) + check = $keyboard.isTextNode(node.previousSibling) && $keyboard.isBlock(container, node); + if (updateText(check) && checkDone(check)) { + done = true; + } + if ($keyboard.isTextNode(node)) { + txt += node.textContent; + if (checkDone(node.length)) { + check = offset - position === 0 && position - last >= 1 ? node.length : offset - position; + return { + node: node, + offset: check, + position: offset, + text: txt + }; + } + } else if (!done && node.childNodes) { + nodes = $.makeArray(node.childNodes).concat(nodes); + } + } + return nodes.length ? + {node: node, offset: offset - position, position: offset, text: txt} : + // Offset is larger than content, return max + {node: node, offset: node && node.length || 0, position: max, text: txt}; + } + if (result.node) { + s = result.position; // Adjust if start > content length + if (start === 'getMax') { + return s; + } + range.setStart(result.node, result.offset); + // Only find end if > start and is defined... this allows passing + // setEditableCaret(el, 'end') or setEditableCaret(el, 10, 'end'); + if (typeof end !== 'undefined' && end !== start) { + result = findNode(end); + } + if (result.node) { + e = result.position; // Adjust if end > content length + range.setEnd(result.node, result.offset); + text = s === e ? '' : result.text.substring(s, e); + } + sel.removeAllRanges(); + sel.addRange(range); + } + return { + start: s, + end: e, + text: text + }; + }; + + $keyboard.replaceContent = function (el, param) { + el = $(el)[0]; + var node, i, str, + type = typeof param, + caret = $keyboard.getEditableCaret(el).start, + charIndex = 0, + nodeStack = [el]; + while ((node = nodeStack.pop())) { + if ($keyboard.isTextNode(node)) { + if (type === 'function') { + if (caret >= charIndex && caret <= charIndex + node.length) { + node.textContent = param(node.textContent); + } + } else if (type === 'string') { + // maybe not the best method, but it works for simple changes + str = param.substring(charIndex, charIndex + node.length); + if (str !== node.textContent) { + node.textContent = str; + } + } + charIndex += node.length; + } else if (node && node.childNodes) { + i = node.childNodes.length; + while (i--) { + nodeStack.push(node.childNodes[i]); + } + } + } + i = $keyboard.getEditableCaret(el); + $keyboard.setEditableCaret(el, i.start, i.start); + }; + + $.fn.keyboard = function (options) { + return this.each(function () { + if (!$(this).data('keyboard')) { + /*jshint nonew:false */ + (new $.keyboard(this, options)); + } + }); + }; + + $.fn.getkeyboard = function () { + return this.data('keyboard'); + }; + + /* Copyright (c) 2010 C. F., Wong (<a href="http://cloudgen.w0ng.hk">Cloudgen Examplet Store</a>) + * Licensed under the MIT License: + * http://www.opensource.org/licenses/mit-license.php + * Highly modified from the original + */ + + $.fn.caret = function (start, end, noFocus) { + if ( + typeof this[0] === 'undefined' || + this.is(':hidden') || + this.css('visibility') === 'hidden' || + !/(INPUT|TEXTAREA)/i.test(this[0].nodeName) + ) { + return this; + } + var selRange, range, stored_range, txt, val, + $el = this, + el = $el[0], + selection = el.ownerDocument.selection, + sTop = el.scrollTop, + ss = false, + supportCaret = true; + try { + ss = 'selectionStart' in el; + } catch (err) { + supportCaret = false; + } + if (supportCaret && typeof start !== 'undefined') { + if (!/(email|number)/i.test(el.type)) { + if (ss) { + el.selectionStart = start; + el.selectionEnd = end; + } else { + selRange = el.createTextRange(); + selRange.collapse(true); + selRange.moveStart('character', start); + selRange.moveEnd('character', end - start); + selRange.select(); + } + } + // must be visible or IE8 crashes; IE9 in compatibility mode works fine - issue #56 + if (!noFocus && ($el.is(':visible') || $el.css('visibility') !== 'hidden')) { + el.focus(); + } + el.scrollTop = sTop; + return this; + } + if (/(email|number)/i.test(el.type)) { + // fix suggested by raduanastase (https://github.com/Mottie/Keyboard/issues/105#issuecomment-40456535) + start = end = $el.val().length; + } else if (ss) { + start = el.selectionStart; + end = el.selectionEnd; + } else if (selection) { + if (el.nodeName.toUpperCase() === 'TEXTAREA') { + val = $el.val(); + range = selection.createRange(); + stored_range = range.duplicate(); + stored_range.moveToElementText(el); + stored_range.setEndPoint('EndToEnd', range); + // thanks to the awesome comments in the rangy plugin + start = stored_range.text.replace(/\r/g, '\n').length; + end = start + range.text.replace(/\r/g, '\n').length; + } else { + val = $el.val().replace(/\r/g, '\n'); + range = selection.createRange().duplicate(); + range.moveEnd('character', val.length); + start = (range.text === '' ? val.length : val.lastIndexOf(range.text)); + range = selection.createRange().duplicate(); + range.moveStart('character', -val.length); + end = range.text.length; + } + } else { + // caret positioning not supported + start = end = (el.value || '').length; + } + txt = (el.value || ''); + return { + start: start, + end: end, + text: txt.substring(start, end), + replace: function (str) { + return txt.substring(0, start) + str + txt.substring(end, txt.length); + } + }; + }; + + return $keyboard; + +})); diff --git a/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.min.js b/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.min.js new file mode 100644 index 0000000000..6ba1717885 --- /dev/null +++ b/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.keyboard.min.js @@ -0,0 +1,2 @@ +/*! jQuery UI Virtual Keyboard v1.29.1 */ +!function(e){"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof module&&"object"==typeof module.exports?module.exports=e(require("jquery")):e(jQuery)}(function(y){"use strict";var b=y.keyboard=function(c,o){var p,h=this;h.version="1.29.1",h.$el=y(c),h.el=c,h.$el.data("keyboard",h),h.init=function(){h.initialized=!1;var e,t,a,i=b.css,n=b.events;h.settings=o||{},o&&o.position&&(t=y.extend({},o.position),o.position=null),h.options=p=y.extend(!0,{},b.defaultOptions,o),t&&(p.position=t,o.position=t),h.el.active=!0,h.namespace=".keyboard"+Math.random().toString(16).slice(2),h.extensionNamespace=[],h.shiftActive=h.altActive=h.metaActive=h.sets=h.capsLock=!1,h.rows=["","-shift","-alt","-alt-shift"],h.inPlaceholder=h.$el.attr("placeholder")||"",h.watermark=b.watermark&&""!==h.inPlaceholder,h.repeatTime=1e3/(p.repeatRate||20),p.preventDoubleEventTime=p.preventDoubleEventTime||100,h.isOpen=!1,h.wheel="function"==typeof y.fn.mousewheel,h.escapeRegex=/[-\/\\^$*+?.()|[\]{}]/g,h.isTextArea="textarea"===h.el.nodeName.toLowerCase(),h.isInput="input"===h.el.nodeName.toLowerCase(),h.isContentEditable=!h.isTextArea&&!h.isInput&&h.el.isContentEditable,e=b.keyCodes,h.alwaysAllowed=[e.capsLock,e.pageUp,e.pageDown,e.end,e.home,e.left,e.up,e.right,e.down,e.insert,e.delete],h.$keyboard=[],h.enabled=!0,h.checkCaret=p.lockInput||b.checkCaretSupport(),h.isContentEditable&&(p.usePreview=!1),h.last={start:0,end:0,key:"",val:"",preVal:"",layout:"",virtual:!0,keyset:[!1,!1,!1],wheel_$Keys:[],wheelIndex:0,wheelLayers:[]},h.temp=["",0,0],y.each([n.kbInit,n.kbBeforeVisible,n.kbVisible,n.kbHidden,n.inputCanceled,n.inputAccepted,n.kbBeforeClose,n.inputRestricted],function(e,t){"function"==typeof p[t]&&h.$el.bind(t+h.namespace+"callbacks",p[t])}),p.alwaysOpen&&(p.stayOpen=!0),a=y(document),h.el.ownerDocument!==document&&(a=a.add(h.el.ownerDocument));var s="keyup checkkeyboard mousedown touchstart ";p.closeByClickEvent&&(s+="click "),a.bind(s.split(" ").join(h.namespace+" "),function(e){clearTimeout(h.timer3),h.timer3=setTimeout(function(){h.checkClose(e)},1)}),h.$el.addClass(i.input+" "+p.css.input).attr({"aria-haspopup":"true",role:"textbox"}),(p.lockInput||h.el.readOnly)&&(p.lockInput=!0,h.$el.addClass(i.locked).attr({readonly:"readonly"})),h.isUnavailable()&&h.$el.addClass(i.noKeyboard),p.openOn&&h.bindFocus(),h.watermark||""!==h.getValue(h.$el)||""===h.inPlaceholder||""===h.$el.attr("placeholder")||(h.$el.addClass(i.placeholder),h.setValue(h.inPlaceholder,h.$el)),h.$el.trigger(n.kbInit,[h,h.el]),p.alwaysOpen&&h.reveal(),h.initialized=!0},h.toggle=function(){if(h.hasKeyboard()){var e=h.$keyboard.find("."+b.css.keyToggle),t=!h.enabled;return h.preview.readonly=t||h.options.lockInput,h.$keyboard.toggleClass(b.css.keyDisabled,t).find("."+b.css.keyButton).not(e).attr("aria-disabled",t).each(function(){this.disabled=t}),e.toggleClass(b.css.keyDisabled,t),t&&h.typing_options&&(h.typing_options.text=""),h}},h.setCurrent=function(){var e=b.css,t=y("."+e.isCurrent),a=t.data("keyboard");y.isEmptyObject(a)||a.el===h.el||a.close(!!a.options.autoAccept&&"true"),t.removeClass(e.isCurrent),y("."+e.hasFocus).removeClass(e.hasFocus),h.$el.addClass(e.isCurrent),h.$keyboard.addClass(e.hasFocus),h.isCurrent(!0),h.isOpen=!0},h.isUnavailable=function(){return h.$el.is(":disabled")||!h.options.activeOnReadonly&&h.$el.attr("readonly")&&!h.$el.hasClass(b.css.locked)},h.isCurrent=function(e){var t=b.currentKeyboard||!1;return e?t=b.currentKeyboard=h.el:!1===e&&t===h.el&&(t=b.currentKeyboard=""),t===h.el},h.hasKeyboard=function(){return h.$keyboard&&0<h.$keyboard.length},h.isVisible=function(){return!!h.hasKeyboard()&&h.$keyboard.is(":visible")},h.setFocus=function(){var e=h.$preview||h.$el;p.noFocus||e.focus(),h.isContentEditable?b.setEditableCaret(e,h.last.start,h.last.end):b.caret(e,h.last)},h.focusOn=function(){!h&&h.el.active||(h.isVisible()?h.setCurrent():(clearTimeout(h.timer),h.reveal()))},h.redraw=function(e){return e&&(h.options.layout=e),h.$keyboard.length&&(h.last.preVal=""+h.last.val,h.saveLastChange(),h.setValue(h.last.val,h.$el),h.removeKeyboard(),h.shiftActive=h.altActive=h.metaActive=!1),h.isOpen=p.alwaysOpen,h.reveal(!0),h},h.reveal=function(e){var t,a=h.isOpen,i=b.css;if(h.opening=!a,y("."+i.keyboard).not("."+i.alwaysOpen).each(function(){var e=y(this).data("keyboard");y.isEmptyObject(e)||e.close(!!e.options.autoAccept&&"true")}),!h.isUnavailable())return h.$el.removeClass(i.noKeyboard),p.openOn&&h.$el.unbind(y.trim((p.openOn+" ").split(/\s+/).join(h.namespace+" "))),h.$keyboard&&(!h.$keyboard||h.$keyboard.length&&!y.contains(h.el.ownerDocument.body,h.$keyboard[0]))||h.startup(),h.watermark||h.getValue()!==h.inPlaceholder||(h.$el.removeClass(i.placeholder),h.setValue("",h.$el)),h.originalContent=h.isContentEditable?h.$el.html():h.getValue(h.$el),h.el===h.preview||h.isContentEditable||h.setValue(h.originalContent),p.acceptValid&&p.checkValidOnInit&&h.checkValid(),p.resetDefault&&(h.shiftActive=h.altActive=h.metaActive=!1),h.showSet(),h.isVisible()||h.$el.trigger(b.events.kbBeforeVisible,[h,h.el]),(h.initialized||p.initialFocus||!p.initialFocus&&h.$el.hasClass(b.css.initialFocus))&&h.setCurrent(),h.toggle(),h.$keyboard.show(),p.usePreview&&b.msie&&(void 0===h.width&&(h.$preview.hide(),h.width=Math.ceil(h.$keyboard.width()),h.$preview.show()),h.$preview.width(h.width)),h.reposition(),h.checkDecimal(),h.lineHeight=parseInt(h.$preview.css("lineHeight"),10)||parseInt(h.$preview.css("font-size"),10)+4,p.caretToEnd&&(t=h.isContentEditable?b.getEditableLength(h.el):h.originalContent.length,h.saveCaret(t,t)),b.allie&&(0===h.last.end&&0<h.last.start&&(h.last.end=h.last.start),h.last.start<0&&(h.last.start=h.last.end=h.originalContent.length)),a||e?(b.caret(h.$preview,h.last),h.opening=!1):h.timer2=setTimeout(function(){var e;h.opening=!1,/(number|email)/i.test(h.el.type)||p.caretToEnd||h.saveCaret(e,e,h.$el),(p.initialFocus||h.$el.hasClass(b.css.initialFocus))&&b.caret(h.$preview,h.last),h.last.eventTime=(new Date).getTime(),h.$el.trigger(b.events.kbVisible,[h,h.el]),h.timer=setTimeout(function(){h&&h.saveCaret()},200)},10),h},h.updateLanguage=function(){var e=b.layouts,t=p.language||e[p.layout]&&e[p.layout].lang&&e[p.layout].lang||[p.language||"en"],a=b.language;t="[object Array]"===Object.prototype.toString.call(t)?t[0]:t,t=(h.language=t).split("-")[0],p.display=y.extend(!0,{},a.en.display,a[t]&&a[t].display||{},h.settings.display),p.combos=y.extend(!0,{},a.en.combos,a[t]&&a[t].combos||{},h.settings.combos),p.wheelMessage=a[t]&&a[t].wheelMessage||a.en.wheelMessage,p.rtl=e[p.layout]&&e[p.layout].rtl||a[t]&&a[t].rtl||!1,a[t]&&a[t].comboRegex&&(h.regex=a[t].comboRegex),h.decimal=/^\./.test(p.display.dec),h.$el.toggleClass("rtl",p.rtl).css("direction",p.rtl?"rtl":"")},h.startup=function(){var e=b.css;(p.alwaysOpen||p.userClosed)&&h.$preview||h.makePreview(),h.hasKeyboard()||("custom"===p.layout&&(p.layoutHash="custom"+h.customHash()),h.layout="custom"===p.layout?p.layoutHash:p.layout,h.last.layout=h.layout,h.updateLanguage(),void 0===b.builtLayouts[h.layout]&&("function"==typeof p.create?h.$keyboard=p.create(h):h.$keyboard.length||h.buildKeyboard(h.layout,!0)),h.$keyboard=b.builtLayouts[h.layout].$keyboard.clone(),h.$keyboard.data("keyboard",h),""!==(h.el.id||"")&&h.$keyboard.attr("id",h.el.id+b.css.idSuffix),h.makePreview()),h.$keyboard.attr("data-"+e.keyboard+"-layout",p.layout).attr("data-"+e.keyboard+"-language",h.language),h.$decBtn=h.$keyboard.find("."+e.keyPrefix+"dec"),(p.enterNavigation||h.isTextArea)&&h.alwaysAllowed.push(b.keyCodes.enter),h.bindKeyboard(),h.$keyboard.appendTo(p.appendLocally?h.$el.parent():p.appendTo||"body"),h.bindKeys(),p.reposition&&y.ui&&y.ui.position&&"body"===p.appendTo&&y(window).bind("resize"+h.namespace,function(){h.reposition()})},h.reposition=function(){return h.position=!y.isEmptyObject(p.position)&&p.position,y.ui&&y.ui.position&&h.position&&(h.position.of=h.position.of||h.$el.data("keyboardPosition")||h.$el,h.position.collision=h.position.collision||"flipfit flipfit",h.position.at=p.usePreview?p.position.at:p.position.at2,h.isVisible()&&h.$keyboard.position(h.position)),h},h.makePreview=function(){if(p.usePreview){var e,t,a,i,n=b.css;for(h.$preview=h.$el.clone(!1).data("keyboard",h).removeClass(n.placeholder+" "+n.input).addClass(n.preview+" "+p.css.input).attr("tabindex","-1").show(),h.preview=h.$preview[0],"number"===h.preview.type&&(h.preview.type="text"),i=/^(data-|id|aria-haspopup)/i,e=(t=h.$preview.get(0).attributes).length-1;0<=e;e--)a=t[e]&&t[e].name,i.test(a)&&h.preview.removeAttribute(a);y("<div />").addClass(n.wrapper).append(h.$preview).prependTo(h.$keyboard)}else h.$preview=h.$el,h.preview=h.el},h.caret=function(e,t){var a=b.caret(h.$preview,e,t);return a instanceof y?(h.saveCaret(a.start,a.end),h):a},h.saveCaret=function(e,t,a){var i;h.isCurrent()&&(i=void 0===e?b.caret(a||h.$preview):b.caret(a||h.$preview,e,t),h.last.start=void 0===e?i.start:e,h.last.end=void 0===t?i.end:t)},h.saveLastChange=function(e){h.last.val=e||h.getValue(h.$preview||h.$el),h.isContentEditable&&(h.last.elms=h.el.cloneNode(!0))},h.setScroll=function(){if(!h.isContentEditable&&h.last.virtual){var e,t,a,i,n=h.last.val.substring(0,Math.max(h.last.start,h.last.end));h.$previewCopy||(h.$previewCopy=h.$preview.clone().removeAttr("id").css({position:"absolute",left:0,zIndex:-10,visibility:"hidden"}).addClass(b.css.inputClone),h.$previewCopy[0].disabled=!0,h.isTextArea||h.$previewCopy.css({"white-space":"pre",width:0}),p.usePreview?h.$preview.after(h.$previewCopy):h.$keyboard.prepend(h.$previewCopy)),h.isTextArea?(h.$previewCopy.height(h.lineHeight).val(n),h.preview.scrollTop=h.lineHeight*(Math.floor(h.$previewCopy[0].scrollHeight/h.lineHeight)-1)):(h.$previewCopy.val(n.replace(/\s/g," ")),a=/c/i.test(p.scrollAdjustment)?h.preview.clientWidth/2:p.scrollAdjustment,e=h.$previewCopy[0].scrollWidth-1,void 0===h.last.scrollWidth&&(h.last.scrollWidth=e,h.last.direction=!0),i=h.last.scrollWidth===e?h.last.direction:h.last.scrollWidth<e,t=h.preview.clientWidth-a,i?h.preview.scrollLeft=e<t?0:e-t:e>=h.preview.scrollWidth-t?h.preview.scrollLeft=h.preview.scrollWidth-a:h.preview.scrollLeft=0<e-a?e-a:0,h.last.scrollWidth=e,h.last.direction=i)}},h.bindFocus=function(){p.openOn&&h&&h.el.active&&(h.$el.bind(p.openOn+h.namespace,function(){h.focusOn()}),y(":focus")[0]===h.el&&h.$el.blur())},h.bindKeyboard=function(){var s,o=b.keyCodes,r=b.builtLayouts[h.layout],e=h.namespace+"keybindings";h.$preview.unbind(h.namespace).bind("click"+e+" touchstart"+e,function(){p.alwaysOpen&&!h.isCurrent()&&h.reveal(),h.timer2=setTimeout(function(){h&&h.saveCaret()},150)}).bind("keypress"+e,function(e){if(p.lockInput)return!1;if(h.isCurrent()){var t=e.charCode||e.which,a=t>=o.A&&t<=o.Z,i=t>=o.a&&t<=o.z,n=h.last.key=String.fromCharCode(t);if(!(t<o.space)){if(h.last.virtual=!1,h.last.event=e,h.last.$key=[],h.checkCaret&&h.saveCaret(),t!==o.capsLock&&(a||i)&&(h.capsLock=a&&!e.shiftKey||i&&e.shiftKey,h.capsLock&&!h.shiftActive&&(h.shiftActive=!0,h.showSet())),p.restrictInput){if((e.which===o.backSpace||0===e.which)&&y.inArray(e.keyCode,h.alwaysAllowed))return;-1===y.inArray(n,r.acceptedKeys)&&(e.preventDefault(),(s=y.extend({},e)).type=b.events.inputRestricted,h.$el.trigger(s,[h,h.el]))}else if((e.ctrlKey||e.metaKey)&&(e.which===o.A||e.which===o.C||e.which===o.V||e.which>=o.X&&e.which<=o.Z))return;r.hasMappedKeys&&r.mappedKeys.hasOwnProperty(n)&&(h.last.key=r.mappedKeys[n],h.insertText(h.last.key),e.preventDefault()),"function"==typeof p.beforeInsert&&(h.insertText(h.last.key),e.preventDefault()),h.checkMaxLength()}}}).bind("keyup"+e,function(e){if(h.isCurrent()){switch(h.last.virtual=!1,e.which){case o.tab:if(h.tab&&!p.lockInput){h.shiftActive=e.shiftKey;var t=b.keyaction.tab(h);if(h.tab=!1,!t)return!1}else e.preventDefault();break;case o.escape:return p.ignoreEsc||h.close(!(!p.autoAccept||!p.autoAcceptOnEsc)&&"true"),!1}clearTimeout(h.throttled),h.throttled=setTimeout(function(){h&&h.isVisible()&&h.checkCombos()},100),h.checkMaxLength(),h.last.preVal=""+h.last.val,h.saveLastChange();var a=y.Event(b.events.kbChange);if(a.action=h.last.key,h.$el.trigger(a,[h,h.el]),"function"==typeof p.change)return a.type=b.events.inputChange,p.change(a,h,h.el),!1;p.acceptValid&&p.autoAcceptOnValid&&"function"==typeof p.validate&&p.validate(h,h.getValue(h.$preview))&&(h.$preview.blur(),h.accept())}}).bind("keydown"+e,function(e){if(h.last.keyPress=e.which,p.alwaysOpen&&!h.isCurrent()&&h.reveal(),e.which===o.tab)return!(h.tab=!0);if(p.lockInput||e.timeStamp===h.last.timeStamp)return!p.lockInput;switch(h.last.timeStamp=e.timeStamp,h.last.virtual=!1,e.which){case o.backSpace:b.keyaction.bksp(h,null,e),e.preventDefault();break;case o.enter:b.keyaction.enter(h,null,e);break;case o.capsLock:h.shiftActive=h.capsLock=!h.capsLock,h.showSet();break;case o.V:if(e.ctrlKey||e.metaKey){if(p.preventPaste)return void e.preventDefault();h.checkCombos()}}}).bind("mouseup touchend ".split(" ").join(e+" "),function(){h.last.virtual=!0,h.saveCaret()}),h.$keyboard.bind("mousedown click touchstart ".split(" ").join(h.namespace+" "),function(e){e.stopPropagation(),h.isCurrent()||(h.reveal(),y(h.el.ownerDocument).trigger("checkkeyboard"+h.namespace)),h.setFocus()}),p.preventPaste&&(h.$preview.bind("contextmenu"+h.namespace,function(e){e.preventDefault()}),h.$el.bind("contextmenu"+h.namespace,function(e){e.preventDefault()}))},h.bindButton=function(e,t){var a="."+b.css.keyButton,i=function(e){e.stopPropagation(),e.$target=y(this).closest("."+b.css.keyboard+", ."+b.css.input),t.call(this,e)};return y.fn.on?h.$keyboard.on(e,a,i):y.fn.delegate&&h.$keyboard.delegate(a,e,i),h},h.unbindButton=function(e){return y.fn.off?h.$keyboard.off(e):y.fn.undelegate&&h.$keyboard.undelegate("."+b.css.keyButton,e),h},h.bindKeys=function(){var s=b.css;h.unbindButton(h.namespace+" "+h.namespace+"kb").bindButton("mouseenter mouseleave touchstart ".split(" ").join(h.namespace+" "),function(e){if(!p.alwaysOpen&&!p.userClosed||"mouseleave"===e.type||h.isCurrent()||(h.reveal(),h.setFocus()),h.isCurrent()&&!this.disabled){var t,a,i=h.last,n=y(this),s=e.type;p.useWheel&&h.wheel&&(t=h.getLayers(n),a=(t.length?t.map(function(){return y(this).attr("data-value")||""}).get():"")||[n.text()],i.wheel_$Keys=t,i.wheelLayers=a,i.wheelIndex=y.inArray(n.attr("data-value"),a)),"mouseenter"!==s&&"touchstart"!==s||"password"===h.el.type||n.hasClass(p.css.buttonDisabled)||(n.addClass(p.css.buttonHover),p.useWheel&&h.wheel&&n.attr("title",function(e,t){return h.wheel&&""===t&&h.sets&&1<a.length&&"touchstart"!==s?p.wheelMessage:t})),"mouseleave"===s&&(n.removeClass("password"===h.el.type?"":p.css.buttonHover),p.useWheel&&h.wheel&&(i.wheelIndex=0,i.wheelLayers=[],i.wheel_$Keys=[],n.attr("title",function(e,t){return t===p.wheelMessage?"":t}).html(n.attr("data-html"))))}}).bindButton(p.keyBinding.split(" ").join(h.namespace+" ")+h.namespace+" "+b.events.kbRepeater,function(e){if(e.preventDefault(),!h.$keyboard.is(":visible")||this.disabled)return!1;var t,a=h.last,i=y(this),n=(new Date).getTime();if(p.useWheel&&h.wheel&&(i=a.wheel_$Keys.length&&-1<a.wheelIndex?a.wheel_$Keys.eq(a.wheelIndex):i),t=i.attr("data-action"),!(n-(a.eventTime||0)<p.preventDoubleEventTime)){if(a.eventTime=n,a.event=e,a.virtual=!0,a.$key=i,a.key=i.attr("data-value"),a.keyPress="",h.setFocus(),/^meta/.test(t)&&(t="meta"),t===a.key&&"string"==typeof b.keyaction[t])a.key=t=b.keyaction[t];else if(t in b.keyaction&&"function"==typeof b.keyaction[t]){if(!1===b.keyaction[t](h,this,e))return!1;t=null}return!!h.hasKeyboard()&&(null!=t&&(a.key=y(this).hasClass(s.keyAction)?t:a.key,h.insertText(a.key),h.capsLock||p.stickyShift||e.shiftKey||(h.shiftActive=!1,h.showSet(i.attr("data-name")))),b.caret(h.$preview,a),h.checkCombos(),(e=y.extend({},e,y.Event(b.events.kbChange))).target=h.el,e.action=a.key,h.$el.trigger(e,[h,h.el]),a.preVal=""+a.val,h.saveLastChange(),"function"==typeof p.change?(e.type=b.events.inputChange,p.change(e,h,h.el),!1):void 0)}}).bindButton("mouseup"+h.namespace+" "+"mouseleave touchend touchmove touchcancel ".split(" ").join(h.namespace+"kb "),function(e){h.last.virtual=!0;var t,a=y(this);if("touchmove"===e.type){if((t=a.offset()).right=t.left+a.outerWidth(),t.bottom=t.top+a.outerHeight(),e.originalEvent.touches[0].pageX>=t.left&&e.originalEvent.touches[0].pageX<t.right&&e.originalEvent.touches[0].pageY>=t.top&&e.originalEvent.touches[0].pageY<t.bottom)return!0}else/(mouseleave|touchend|touchcancel)/i.test(e.type)?a.removeClass(p.css.buttonHover):(!p.noFocus&&h.isCurrent()&&h.isVisible()&&h.$preview.focus(),h.checkCaret&&b.caret(h.$preview,h.last));return h.mouseRepeat=[!1,""],clearTimeout(h.repeater),p.acceptValid&&p.autoAcceptOnValid&&"function"==typeof p.validate&&p.validate(h,h.getValue())&&(h.$preview.blur(),h.accept()),!1}).bindButton("click"+h.namespace,function(){return!1}).bindButton("mousewheel"+h.namespace,h.throttleEvent(function(e,t){var a=y(this);if(a&&!a.hasClass(s.keyAction)&&h.last.wheel_$Keys[0]===this&&p.useWheel&&h.wheel){t=t||e.deltaY;var i,n=h.last.wheelLayers||[];return 1<n.length?((i=h.last.wheelIndex+(0<t?-1:1))>n.length-1&&(i=0),i<0&&(i=n.length-1)):i=0,h.last.wheelIndex=i,a.html(n[i]),!1}},30)).bindButton("mousedown touchstart ".split(" ").join(h.namespace+"kb "),function(){var e=y(this);if(e&&(!e.hasClass(s.keyAction)||e.is("."+s.keyPrefix+"tab bksp space enter".split(" ").join(",."+s.keyPrefix))))return 0!==p.repeatRate&&(h.mouseRepeat=[!0,e],setTimeout(function(){h&&h.mouseRepeat[0]&&h.mouseRepeat[1]===e&&!e[0].disabled&&h.repeatKey(e)},p.repeatDelay)),!1})},h.throttleEvent=function(e,t){var a;return function(){a||(e.apply(this,arguments),a=!0,setTimeout(function(){a=!1},t))}},h.execCommand=function(e,t){h.el.ownerDocument.execCommand(e,!1,t),h.el.normalize(),p.reposition&&h.reposition()},h.getValue=function(e){return(e=e||h.$preview)[h.isContentEditable?"text":"val"]()},h.setValue=function(e,t){return t=t||h.$preview,h.isContentEditable?e!==t.text()&&(b.replaceContent(t,e),h.saveCaret()):t.val(e),h},h.insertText=function(e){if(!h.$preview)return h;if("function"==typeof p.beforeInsert&&(e=p.beforeInsert(h.last.event,h,h.el,e)),void 0===e||!1===e)return h.last.key="",h;if(h.isContentEditable)return h.insertContentEditable(e);var t,a=!1,i="\b"===e,n=h.getValue(),s=b.caret(h.$preview),o=n.length;return s.end<s.start&&(s.end=s.start),s.start>o&&(s.end=s.start=o),h.isTextArea&&b.msie&&"\n"===n.substring(s.start,s.start+1)&&(s.start+=1,s.end+=1),t=s.start,"{d}"===e&&(e="",s.end+=1),i&&(e="",a=i&&t===s.end&&0<t),n=n.substring(0,t-(a?1:0))+e+n.substring(s.end),t+=a?-1:e.length,h.setValue(n),h.saveCaret(t,t),h.setScroll(),h},h.insertContentEditable=function(e){return h.$preview.focus(),h.execCommand("insertText",e),h.saveCaret(),h},h.checkMaxLength=function(){if(h.$preview){var e,t,a=h.getValue(),i=h.isContentEditable?b.getEditableLength(h.el):a.length;return!1!==p.maxLength&&i>p.maxLength&&(e=b.caret(h.$preview).start,t=Math.min(e,p.maxLength),p.maxInsert||(a=h.last.val,t=e-1),h.setValue(a.substring(0,p.maxLength)),h.saveCaret(t,t)),h.$decBtn.length&&h.checkDecimal(),h}},h.repeatKey=function(e){e.trigger(b.events.kbRepeater),h.mouseRepeat[0]&&(h.repeater=setTimeout(function(){h&&h.repeatKey(e)},h.repeatTime))},h.getKeySet=function(){var e=[];return h.altActive&&e.push("alt"),h.shiftActive&&e.push("shift"),h.metaActive&&e.push(h.metaActive),e.length?e.join("+"):"normal"},h.showKeySet=function(e){return"string"==typeof e?(h.last.keyset=[h.shiftActive,h.altActive,h.metaActive],h.shiftActive=/shift/i.test(e),h.altActive=/alt/i.test(e),/\bmeta/.test(e)?(h.metaActive=!0,h.showSet(e.match(/\bmeta[\w-]+/i)[0])):(h.metaActive=!1,h.showSet())):h.showSet(e),h},h.showSet=function(e){if(h.hasKeyboard()){p=h.options;var t=b.css,a="."+t.keyPrefix,i=p.css.buttonActive,n="",s=(h.shiftActive?1:0)+(h.altActive?2:0);if(h.shiftActive||(h.capsLock=!1),h.metaActive?(h.shiftActive&&(e=(e||"").replace("-shift","")),h.altActive&&(e=(e||"").replace("-alt","")),""===(n=/^meta/i.test(e)?e:"")?n=!0===h.metaActive?"":h.metaActive:h.metaActive=n,(!p.stickyShift&&h.last.keyset[2]!==h.metaActive||(h.shiftActive||h.altActive)&&!h.$keyboard.find("."+t.keySet+"-"+n+h.rows[s]).length)&&(h.shiftActive=h.altActive=!1)):!p.stickyShift&&h.last.keyset[2]!==h.metaActive&&h.shiftActive&&(h.shiftActive=h.altActive=!1),n=0!==(s=(h.shiftActive?1:0)+(h.altActive?2:0))||h.metaActive?""===n?"":"-"+n:"-normal",!h.$keyboard.find("."+t.keySet+n+h.rows[s]).length)return h.shiftActive=h.last.keyset[0],h.altActive=h.last.keyset[1],void(h.metaActive=h.last.keyset[2]);h.$keyboard.find(a+"alt,"+a+"shift,."+t.keyAction+"[class*=meta]").removeClass(i).end().find(a+"alt").toggleClass(i,h.altActive).end().find(a+"shift").toggleClass(i,h.shiftActive).end().find(a+"lock").toggleClass(i,h.capsLock).end().find("."+t.keySet).hide().end().find("."+(t.keyAction+a+n).replace("--","-")).addClass(i),h.$keyboard.find("."+t.keySet+n+h.rows[s])[0].style.display="inline-block",h.metaActive&&h.$keyboard.find(a+h.metaActive).toggleClass(i,!1!==h.metaActive),h.last.keyset=[h.shiftActive,h.altActive,h.metaActive],h.$el.trigger(b.events.kbKeysetChange,[h,h.el]),p.reposition&&h.reposition()}},h.checkCombos=function(){if(!(h.isVisible()||h.hasKeyboard()&&h.$keyboard.hasClass(b.css.hasFocus)))return h.getValue(h.$preview||h.$el);var e,t,a,i,n=h.getValue(),s=b.caret(h.$preview),o=b.builtLayouts[h.layout],r=h.isContentEditable?b.getEditableLength(h.el):n.length,l=r;return""===n||(s.end<s.start&&(s.end=s.start),s.start>l&&(s.end=s.start=l),b.msie&&"\n"===n.substring(s.start,s.start+1)&&(s.start+=1,s.end+=1),p.useCombos&&(b.msie?n=n.replace(h.regex,function(e,t,a){return p.combos.hasOwnProperty(t)&&p.combos[t][a]||e}):h.$preview.length&&(t=s.start-(0<=s.start-2?2:0),b.caret(h.$preview,t,s.end),a=(i=function(e){return(e||"").replace(h.regex,function(e,t,a){return p.combos.hasOwnProperty(t)&&p.combos[t][a]||e})})((t=b.caret(h.$preview)).text),t&&t.replaceStr&&a!==t.text&&(h.isContentEditable?b.replaceContent(c,i):h.setValue(t.replaceStr(a))),n=h.getValue())),p.restrictInput&&""!==n&&(t=o.acceptedKeys.length,(e=o.acceptedKeysRegex)||(a=y.map(o.acceptedKeys,function(e){return e.replace(h.escapeRegex,"\\$&")}),-1<h.alwaysAllowed.indexOf(b.keyCodes.enter)&&a.push("\\n"),e=o.acceptedKeysRegex=new RegExp("("+a.join("|")+")","g")),(a=n.match(e))?n=a.join(""):(n="",l=0)),s.start+=r-l,s.end+=r-l,h.setValue(n),h.saveCaret(s.start,s.end),h.setScroll(),h.checkMaxLength()),p.acceptValid&&h.checkValid(),n},h.checkValid=function(){var e=b.css,t=h.$keyboard.find("."+e.keyPrefix+"accept"),a=!0;"function"==typeof p.validate&&(a=p.validate(h,h.getValue(),!1)),t.toggleClass(e.inputInvalid,!a).toggleClass(e.inputValid,a).attr("title",t.attr("data-title")+" ("+p.display[a?"valid":"invalid"]+")")},h.checkDecimal=function(){h.decimal&&/\./g.test(h.preview.value)||!h.decimal&&/\,/g.test(h.preview.value)?h.$decBtn.attr({disabled:"disabled","aria-disabled":"true"}).removeClass(p.css.buttonHover).addClass(p.css.buttonDisabled):h.$decBtn.removeAttr("disabled").attr({"aria-disabled":"false"}).addClass(p.css.buttonDefault).removeClass(p.css.buttonDisabled)},h.getLayers=function(e){var t=b.css,a=e.attr("data-pos");return e.closest("."+t.keyboard).find('button[data-pos="'+a+'"]').filter(function(){return""!==y(this).find("."+t.keyText).text()}).add(e)},h.switchInput=function(e,t){if("function"==typeof p.switchInput)p.switchInput(h,e,t);else{h.$keyboard.length&&h.$keyboard.hide();var a,i=!1,n=y("button, input, select, textarea, a, [contenteditable]").filter(":visible").not(":disabled"),s=n.index(h.$el)+(e?1:-1);if(h.$keyboard.length&&h.$keyboard.show(),s>n.length-1&&(i=p.stopAtEnd,s=0),s<0&&(i=p.stopAtEnd,s=n.length-1),!i){if(!(t=h.close(t)))return;(a=n.eq(s).data("keyboard"))&&a.options.openOn.length?a.focusOn():n.eq(s).focus()}}return!1},h.close=function(e){if(h.isOpen&&h.$keyboard.length){clearTimeout(h.throttled);var t=b.css,a=b.events,i=e?h.checkCombos():h.originalContent;if(e&&"function"==typeof p.validate&&!p.validate(h,i,!0)&&(i=h.originalContent,e=!1,p.cancelClose))return;h.isCurrent(!1),h.isOpen=p.alwaysOpen||p.userClosed,h.isContentEditable&&!e?h.$el.html(i):h.setValue(i,h.$el),h.$el.removeClass(t.isCurrent+" "+t.inputAutoAccepted).addClass(e?!0===e?"":t.inputAutoAccepted:"").trigger(a.inputChange),p.alwaysOpen||h.$el.trigger(a.kbBeforeClose,[h,h.el,e||!1]),b.caret(h.$preview,h.last),h.$el.trigger(e?a.inputAccepted:a.inputCanceled,[h,h.el]).trigger(p.alwaysOpen?a.kbInactive:a.kbHidden,[h,h.el]).blur(),h&&(h.last.eventTime=(new Date).getTime(),p.alwaysOpen||p.userClosed&&"true"===e||!h.$keyboard.length||(h.removeKeyboard(),h.timer=setTimeout(function(){h&&h.bindFocus()},200)),h.watermark||""!==h.el.value||""===h.inPlaceholder||(h.$el.addClass(t.placeholder),h.setValue(h.inPlaceholder,h.$el)))}return!!e},h.accept=function(){return h.close(!0)},h.checkClose=function(e){if(!h.opening){var t=y.keyboard.css,a=e.$target||y(e.target).closest("."+b.css.keyboard+", ."+b.css.input);if(a.length||(a=y(e.target)),a.length&&a.hasClass(t.keyboard)){var i=a.data("keyboard");i!==h&&!i.$el.hasClass(t.isCurrent)&&i.options.openOn&&e.type===p.openOn&&i.focusOn()}else h.escClose(e,a)}},h.escCloseCallback={keepOpen:function(){return!h.isOpen}},h.escClose=function(e,t){if(h.isOpen){if(e&&"keyup"===e.type)return e.which!==b.keyCodes.escape||p.ignoreEsc?"":h.close(!(!p.autoAccept||!p.autoAcceptOnEsc)&&"true");var a=!1,i=t.length&&t||y(e.target);if(y.each(h.escCloseCallback,function(e,t){"function"==typeof t&&(a=a||t(i))}),!a&&(!h.isCurrent()&&h.isOpen||h.isOpen&&i[0]!==h.el)){if((p.stayOpen||p.userClosed)&&!i.hasClass(b.css.input))return;if(b.allie&&e.preventDefault(),p.closeByClickEvent){var n=i[0]&&i[0].nodeName.toLowerCase();"input"!==n&&"textarea"!==n&&"click"!==e.type||h.close(!!p.autoAccept&&"true")}else h.close(!!p.autoAccept&&"true")}}},h.keyBtn=y("<button />").attr({role:"button",type:"button","aria-disabled":"false",tabindex:"-1"}).addClass(b.css.keyButton),h.processName=function(e){var t,a,i=(e||"").replace(/[^a-z0-9-_]/gi,""),n=i.length,s=[];if(1<n&&e===i)return e;if(n=e.length){for(t=0;t<n;t++)a=e[t],s.push(/[a-z0-9-_]/i.test(a)?/[-_]/.test(a)&&0!==t?"":a:(0===t?"":"-")+a.charCodeAt(0));return s.join("")}return e},h.processKeys=function(e){var t,a=e.split(/:(?!\/\/)/),i=e.indexOf("</"),n=e.indexOf(":",e.indexOf("<")),s={name:null,map:"",title:""};return-1<i&&(n<0||i<n)?s.name=e:(/\(.+\)/.test(a[0])||/^:\(.+\)/.test(e)||/\([(:)]\)/.test(e)?/\([(:)]\)/.test(e)?(t=a[0].match(/([^(]+)\((.+)\)/))&&t.length?(s.name=t[1],s.map=t[2],s.title=1<a.length?a.slice(1).join(":"):""):(s.name=e.match(/([^(]+)/)[0],":"===s.name&&(a=a.slice(1)),null===t&&(s.map=":",a=a.slice(2)),s.title=a.length?a.join(":"):""):(s.map=e.match(/\(([^()]+?)\)/)[1],""===(t=(e=e.replace(/\(([^()]+)\)/,"")).split(":"))[0]?(s.name=":",a=a.slice(1)):s.name=t[0],s.title=1<a.length?a.slice(1).join(":"):""):(""!==e&&""===a[0]?(s.name=":",a=a.slice(1)):s.name=a[0],s.title=1<a.length?a.slice(1).join(":"):""),s.title=y.trim(s.title).replace(/_/g," ")),s},h.addKey=function(e,t,a){var i,n,s,o={},r=h.processKeys(a?e:t),l=b.css;return!a&&p.display[r.name]?(s=h.processKeys(p.display[r.name])).action=h.processKeys(e).name:(s=r).action=r.name,o.name=h.processName(r.name),""!==s.name&&(""!==s.map?(b.builtLayouts[h.layout].mappedKeys[s.map]=s.name,b.builtLayouts[h.layout].acceptedKeys.push(s.name)):a&&b.builtLayouts[h.layout].acceptedKeys.push(s.name)),i=a?""===o.name?"":l.keyPrefix+o.name:l.keyAction+" "+l.keyPrefix+s.action,i+=(2<s.name.length?" "+l.keyWide:"")+" "+p.css.buttonDefault,o.html='<span class="'+l.keyText+'">'+s.name.replace(/[\u00A0-\u9999]/gim,function(e){return"&#"+e.charCodeAt(0)+";"})+"</span>",o.$key=h.keyBtn.clone().attr({"data-value":a?s.name:s.action,"data-name":s.action,"data-pos":h.temp[1]+","+h.temp[2],"data-action":s.action,"data-html":o.html}).addClass(i).html(o.html).appendTo(h.temp[0]),s.map&&o.$key.attr("data-mapped",s.map),(s.title||r.title)&&o.$key.attr({"data-title":r.title||s.title,title:r.title||s.title}),"function"==typeof p.buildKey&&(n=(o=p.buildKey(h,o)).$key.html(),o.$key.attr("data-html",n)),o.$key},h.customHash=function(e){var t,a,i,n,s=[],o=[];for(a in e=void 0===e?p.customLayout:e)e.hasOwnProperty(a)&&s.push(e[a]);if((i=0)===(n=(o=o.concat.apply(o,s).join(" ")).length))return i;for(t=0;t<n;t++)i=(i<<5)-i+o.charCodeAt(t),i&=i;return i},h.buildKeyboard=function(e,t){y.isEmptyObject(p.display)&&h.updateLanguage();var a,i,n,s,o=b.css,r=0,l=b.builtLayouts[e||h.layout||p.layout]={mappedKeys:{},acceptedKeys:[]},c=l.acceptedKeys=p.restrictInclude&&(""+p.restrictInclude).split(/\s+/)||[],d=o.keyboard+" "+p.css.popup+" "+p.css.container+(p.alwaysOpen||p.userClosed?" "+o.alwaysOpen:""),u=y("<div />").addClass(d).attr({role:"textbox"}).hide();return-1<(a=y.inArray("{space}",c))&&(c[a]=" "),d=t&&"custom"===p.layout||!b.layouts.hasOwnProperty(p.layout)?(p.layout="custom",b.layouts.custom=p.customLayout||{normal:["{cancel}"]}):b.layouts[t?p.layout:e||h.layout||p.layout],y.each(d,function(e,t){if(""!==e&&!/^(name|lang|rtl)$/i.test(e))for("default"===e&&(e="normal"),r++,n=y("<div />").attr("name",e).addClass(o.keySet+" "+o.keySet+"-"+e).appendTo(u).toggle("normal"===e),i=0;i<t.length;i++)s=y.trim(t[i]).replace(/\{(\.?)[\s+]?:[\s+]?(\.?)\}/g,"{$1:$2}"),h.buildRow(n,i,s.split(/\s+/),c),n.find("."+o.keyButton+",."+o.keySpacer).filter(":last").after('<br class="'+o.endRow+'"/>')}),1<r&&(h.sets=!0),l.hasMappedKeys=!y.isEmptyObject(l.mappedKeys),l.$keyboard=u},h.buildRow=function(e,t,a,i){var n,s,o,r,l,c,d=b.css;for(o=0;o<a.length;o++)if(r=!(h.temp=[e,t,o]),0!==a[o].length)if(/^\{\S+\}$/.test(a[o])){if(l=a[o].match(/^\{(\S+)\}$/)[1],/\!\!/.test(l)&&(l=l.replace("!!",""),r=!0),/^sp:((\d+)?([\.|,]\d+)?)(em|px)?$/i.test(l)&&(c=parseFloat(l.replace(/,/,".").match(/^sp:((\d+)?([\.|,]\d+)?)(em|px)?$/i)[1]||0),y('<span class="'+d.keyText+'"></span>').width(l.match(/px/i)?c+"px":2*c+"em").addClass(d.keySpacer).appendTo(e)),/^empty(:((\d+)?([\.|,]\d+)?)(em|px)?)?$/i.test(l)){c=/:/.test(l)?parseFloat(l.replace(/,/,".").match(/^empty:((\d+)?([\.|,]\d+)?)(em|px)?$/i)[1]||0):"",h.addKey(""," ",!0).addClass(p.css.buttonDisabled+" "+p.css.buttonEmpty).attr("aria-disabled",!0).width(c?l.match("px")?c+"px":2*c+"em":"");continue}if(/^meta[\w-]+\:?(\w+)?/i.test(l)){h.addKey(l.split(":")[0],l).addClass(d.keyHasActive);continue}switch((s=l.split(":"))[0].toLowerCase()){case"a":case"accept":h.addKey("accept",l).addClass(p.css.buttonAction+" "+d.keyAction);break;case"alt":case"altgr":h.addKey("alt",l).addClass(d.keyHasActive);break;case"b":case"bksp":h.addKey("bksp",l);break;case"c":case"cancel":h.addKey("cancel",l).addClass(p.css.buttonAction+" "+d.keyAction);break;case"combo":h.addKey("combo",l).addClass(d.keyHasActive).attr("title",function(e,t){return t+" "+p.display[p.useCombos?"active":"disabled"]}).toggleClass(p.css.buttonActive,p.useCombos);break;case"dec":i.push(h.decimal?".":","),h.addKey("dec",l);break;case"e":case"enter":h.addKey("enter",l).addClass(p.css.buttonAction+" "+d.keyAction);break;case"lock":h.addKey("lock",l).addClass(d.keyHasActive);break;case"s":case"shift":h.addKey("shift",l).addClass(d.keyHasActive);break;case"sign":i.push("-"),h.addKey("sign",l);break;case"space":i.push(" "),h.addKey("space",l);break;case"t":case"tab":h.addKey("tab",l);break;default:b.keyaction.hasOwnProperty(s[0])&&h.addKey(s[0],l).toggleClass(p.css.buttonAction+" "+d.keyAction,r)}}else n=a[o],h.addKey(n,n,!0)},h.removeBindings=function(e){y(document).unbind(e),h.el.ownerDocument!==document&&y(h.el.ownerDocument).unbind(e),y(window).unbind(e),h.$el.unbind(e)},h.removeKeyboard=function(){h.$decBtn=[],p.usePreview&&h.$preview.removeData("keyboard"),h.$preview.unbind(h.namespace+"keybindings"),h.preview=null,h.$preview=null,h.$previewCopy=null,h.$keyboard.removeData("keyboard"),h.$keyboard.remove(),h.$keyboard=[],h.isOpen=!1,h.isCurrent(!1)},h.destroy=function(e){var t,a=b.css,i=h.extensionNamespace.length,n=[a.input,a.locked,a.placeholder,a.noKeyboard,a.alwaysOpen,p.css.input,a.isCurrent].join(" ");for(clearTimeout(h.timer),clearTimeout(h.timer2),clearTimeout(h.timer3),h.$keyboard.length&&h.removeKeyboard(),h.options.openOn&&h.removeBindings(h.options.openOn),h.removeBindings(h.namespace),h.removeBindings(h.namespace+"callbacks"),t=0;t<i;t++)h.removeBindings(h.extensionNamespace[t]);h.el.active=!1,h.$el.removeClass(n).removeAttr("aria-haspopup").removeAttr("role").removeData("keyboard"),h=null,"function"==typeof e&&e()},h.init()};return b.keyCodes={backSpace:8,tab:9,enter:13,capsLock:20,escape:27,space:32,pageUp:33,pageDown:34,end:35,home:36,left:37,up:38,right:39,down:40,insert:45,delete:46,A:65,Z:90,V:86,C:67,X:88,a:97,z:122},b.css={idSuffix:"_keyboard",initialFocus:"keyboard-init-focus",input:"ui-keyboard-input",inputClone:"ui-keyboard-preview-clone",wrapper:"ui-keyboard-preview-wrapper",preview:"ui-keyboard-preview",keyboard:"ui-keyboard",keySet:"ui-keyboard-keyset",keyButton:"ui-keyboard-button",keyWide:"ui-keyboard-widekey",keyPrefix:"ui-keyboard-",keyText:"ui-keyboard-text",keyHasActive:"ui-keyboard-hasactivestate",keyAction:"ui-keyboard-actionkey",keySpacer:"ui-keyboard-spacer",keyToggle:"ui-keyboard-toggle",keyDisabled:"ui-keyboard-disabled",divWrapperCE:"ui-keyboard-div-wrapper",locked:"ui-keyboard-lockedinput",alwaysOpen:"ui-keyboard-always-open",noKeyboard:"ui-keyboard-nokeyboard",placeholder:"ui-keyboard-placeholder",hasFocus:"ui-keyboard-has-focus",isCurrent:"ui-keyboard-input-current",inputValid:"ui-keyboard-valid-input",inputInvalid:"ui-keyboard-invalid-input",inputAutoAccepted:"ui-keyboard-autoaccepted",endRow:"ui-keyboard-button-endrow"},b.events={kbChange:"keyboardChange",kbBeforeClose:"beforeClose",kbBeforeVisible:"beforeVisible",kbVisible:"visible",kbInit:"initialized",kbInactive:"inactive",kbHidden:"hidden",kbRepeater:"repeater",kbKeysetChange:"keysetChange",inputAccepted:"accepted",inputCanceled:"canceled",inputChange:"change",inputRestricted:"restricted"},b.keyaction={accept:function(e){return e.close(!0),!1},alt:function(e){e.altActive=!e.altActive,e.showSet()},bksp:function(e){e.isContentEditable?(e.execCommand("delete"),e.saveCaret()):e.insertText("\b")},cancel:function(e){return e.close(),!1},clear:function(e){e.$preview[e.isContentEditable?"text":"val"](""),e.$decBtn.length&&e.checkDecimal()},combo:function(e){var t=e.options,a=!t.useCombos,i=e.$keyboard.find("."+b.css.keyPrefix+"combo");return t.useCombos=a,i.toggleClass(t.css.buttonActive,a).attr("title",i.attr("data-title")+" ("+t.display[a?"active":"disabled"]+")"),a&&e.checkCombos(),!1},dec:function(e){e.insertText(e.decimal?".":",")},del:function(e){e.isContentEditable?e.execCommand("forwardDelete"):e.insertText("{d}")},default:function(e){e.shiftActive=e.altActive=e.metaActive=!1,e.showSet()},enter:function(e,t,a){var i=e.options;return a.shiftKey?i.enterNavigation?e.switchInput(!a[i.enterMod],!0):e.close(!0):!i.enterNavigation||e.isTextArea&&!a[i.enterMod]?(e.isTextArea&&y(a.target).closest("button").length&&e.insertText((b.msie?" ":"")+"\n"),void(e.isContentEditable&&!i.enterNavigation&&(e.execCommand("insertHTML",'<div><br class="'+b.css.divWrapperCE+'"></div>'),setTimeout(function(){b.keyaction.right(e),e.saveCaret()},0)))):e.switchInput(!a[i.enterMod],!!i.autoAccept&&"true")},lock:function(e){e.last.keyset[0]=e.shiftActive=e.capsLock=!e.capsLock,e.showSet()},left:function(e){var t=b.caret(e.$preview);0<=t.start-1&&(e.last.start=e.last.end=t.start-1,b.caret(e.$preview,e.last),e.setScroll())},meta:function(e,t){var a=y(t);e.metaActive=!a.hasClass(e.options.css.buttonActive),e.showSet(a.attr("data-name"))},next:function(e){return e.switchInput(!0,e.options.autoAccept),!1},normal:function(e){e.shiftActive=e.altActive=e.metaActive=!1,e.showSet()},prev:function(e){return e.switchInput(!1,e.options.autoAccept),!1},right:function(e){var t=b.caret(e.$preview),a=e.isContentEditable?b.getEditableLength(e.el):e.getValue().length;t.end+1<=a&&(e.last.start=e.last.end=t.end+1,b.caret(e.$preview,e.last),e.setScroll())},shift:function(e){e.last.keyset[0]=e.shiftActive=!e.shiftActive,e.showSet()},sign:function(e){if(/^[+-]?\d*\.?\d*$/.test(e.getValue())){var t,a=b.caret(e.$preview),i=e.getValue(),n=e.isContentEditable?b.getEditableLength(e.el):i.length;e.setValue(-1*i),t=n-i.length,e.last.start=a.start+t,e.last.end=a.end+t,b.caret(e.$preview,e.last),e.setScroll()}},space:function(e){e.insertText(" ")},tab:function(e){var t=e.options;if(!e.isTextArea){if(t.tabNavigation)return e.switchInput(!e.shiftActive,!0);if(e.isInput)return!1}e.insertText("\t")},toggle:function(e){e.enabled=!e.enabled,e.toggle()},NBSP:" ",ZWSP:"",ZWNJ:"",ZWJ:"",LRM:"",RLM:""},b.builtLayouts={},b.layouts={alpha:{normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} a b c d e f g h i j [ ] \\","k l m n o p q r s ; ' {enter}","{shift} t u v w x y z , . / {shift}","{accept} {space} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} A B C D E F G H I J { } |",'K L M N O P Q R S : " {enter}',"{shift} T U V W X Y Z < > ? {shift}","{accept} {space} {cancel}"]},qwerty:{normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {space} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {space} {cancel}"]},international:{normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["~ ¡ ² ³ ¤ € ¼ ½ ¾ ‘ ’ ¥ × {bksp}","{tab} ä å é ® þ ü ú í ó ö « » ¬","á ß ð f g h j k ø ¶ ´ {enter}","{shift} æ x © v b ñ µ ç > ¿ {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ¹ ² ³ £ € ¼ ½ ¾ ‘ ’ ¥ ÷ {bksp}","{tab} Ä Å É ® Þ Ü Ú Í Ó Ö « » ¦","Ä § Ð F G H J K Ø ° ¨ {enter}","{shift} Æ X ¢ V B Ñ µ Ç . ¿ {shift}","{accept} {alt} {space} {alt} {cancel}"]},colemak:{normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w f p g j l u y ; [ ] \\","{bksp} a r s t d h n e i o ' {enter}","{shift} z x c v b k m , . / {shift}","{accept} {space} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W F P G J L U Y : { } |",'{bksp} A R S T D H N E I O " {enter}',"{shift} Z X C V B K M < > ? {shift}","{accept} {space} {cancel}"]},dvorak:{normal:["` 1 2 3 4 5 6 7 8 9 0 [ ] {bksp}","{tab} ' , . p y f g c r l / = \\","a o e u i d h t n s - {enter}","{shift} ; q j k x b m w v z {shift}","{accept} {space} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) { } {bksp}",'{tab} " < > P Y F G C R L ? + |',"A O E U I D H T N S _ {enter}","{shift} : Q J K X B M W V Z {shift}","{accept} {space} {cancel}"]},num:{normal:["= ( ) {b}","{clear} / * -","7 8 9 +","4 5 6 {sign}","1 2 3 %","0 {dec} {a} {c}"]}},b.language={en:{display:{a:"✔:Accept (Shift+Enter)",accept:"Accept:Accept (Shift+Enter)",alt:"Alt:⌥ AltGr",b:"⌫:Backspace",bksp:"Bksp:Backspace",c:"✖:Cancel (Esc)",cancel:"Cancel:Cancel (Esc)",clear:"C:Clear",combo:"ö:Toggle Combo Keys",dec:".:Decimal",e:"⏎:Enter",empty:" ",enter:"Enter:Enter ⏎",left:"←",lock:"Lock:⇪ Caps Lock",next:"Next ⇨",prev:"⇦ Prev",right:"→",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:Change Sign",space:" :Space",t:"⇥:Tab",tab:"⇥ Tab:Tab",toggle:" ",valid:"valid",invalid:"invalid",active:"active",disabled:"disabled"},wheelMessage:"Use mousewheel to see other keys",comboRegex:/([`\'~\^\"ao])([a-z])/gim,combos:{"`":{a:"à",A:"À",e:"è",E:"È",i:"ì",I:"Ì",o:"ò",O:"Ò",u:"ù",U:"Ù",y:"ỳ",Y:"Ỳ"},"'":{a:"á",A:"Á",e:"é",E:"É",i:"í",I:"Í",o:"ó",O:"Ó",u:"ú",U:"Ú",y:"ý",Y:"Ý"},'"':{a:"ä",A:"Ä",e:"ë",E:"Ë",i:"ï",I:"Ï",o:"ö",O:"Ö",u:"ü",U:"Ü",y:"ÿ",Y:"Ÿ"},"^":{a:"â",A:"Â",e:"ê",E:"Ê",i:"î",I:"Î",o:"ô",O:"Ô",u:"û",U:"Û",y:"ŷ",Y:"Ŷ"},"~":{a:"ã",A:"Ã",e:"ẽ",E:"Ẽ",i:"ĩ",I:"Ĩ",o:"õ",O:"Õ",u:"ũ",U:"Ũ",y:"ỹ",Y:"Ỹ",n:"ñ",N:"Ñ"}}}},b.defaultOptions={language:null,rtl:!1,layout:"qwerty",customLayout:null,position:{of:null,my:"center top",at:"center top",at2:"center bottom"},reposition:!0,usePreview:!0,alwaysOpen:!1,initialFocus:!0,noFocus:!1,stayOpen:!1,userClosed:!1,ignoreEsc:!1,closeByClickEvent:!1,css:{input:"ui-widget-content ui-corner-all",container:"ui-widget-content ui-widget ui-corner-all ui-helper-clearfix",popup:"",buttonDefault:"ui-state-default ui-corner-all",buttonHover:"ui-state-hover",buttonAction:"ui-state-active",buttonActive:"ui-state-active",buttonDisabled:"ui-state-disabled",buttonEmpty:"ui-keyboard-empty"},autoAccept:!1,autoAcceptOnEsc:!1,lockInput:!1,restrictInput:!1,restrictInclude:"",acceptValid:!1,autoAcceptOnValid:!1,checkValidOnInit:!0,cancelClose:!0,tabNavigation:!1,enterNavigation:!1,enterMod:"altKey",stopAtEnd:!0,appendLocally:!1,appendTo:"body",wrapBRs:!0,stickyShift:!0,preventPaste:!1,caretToEnd:!1,scrollAdjustment:10,maxLength:!1,maxInsert:!0,repeatDelay:500,repeatRate:20,resetDefault:!0,openOn:"focus",activeOnReadonly:!1,keyBinding:"mousedown touchstart",useWheel:!0,useCombos:!0,validate:function(){return!0}},b.comboRegex=/([`\'~\^\"ao])([a-z])/gim,b.currentKeyboard="",y('\x3c!--[if lte IE 8]><script>jQuery("body").addClass("oldie");<\/script><![endif]--\x3e\x3c!--[if IE]><script>jQuery("body").addClass("ie");<\/script><![endif]--\x3e').appendTo("body").remove(),b.msie=y("body").hasClass("oldie"),b.allie=y("body").hasClass("ie"),b.watermark=void 0!==document.createElement("input").placeholder,b.checkCaretSupport=function(){if("boolean"!=typeof b.checkCaret){var e=y('<div style="height:0px;width:0px;overflow:hidden;position:fixed;top:0;left:-100px;"><input type="text" value="testing"/></div>').prependTo("body");b.caret(e.find("input"),3,3),b.checkCaret=3!==b.caret(e.find("input").hide().show()).start,e.remove()}return b.checkCaret},b.caret=function(e,t,a){if(!e||!e.length||e.is(":hidden")||"hidden"===e.css("visibility"))return{};var i,n,s,o,r=e.data("keyboard"),l=r&&r.options.noFocus,c=/(textarea|input)/i.test(e[0].nodeName);return l||e.focus(),void 0!==t?("object"==typeof t&&"start"in t&&"end"in t?(i=t.start,n=t.end):void 0===a&&(a=t),"number"==typeof t&&"number"==typeof a?(i=t,n=a):"start"===t?i=n=0:"string"==typeof t&&(i=n="end"),c?e.caret(i,n,l):b.setEditableCaret(e,i,n)):(o=c?e.caret():b.getEditableCaret(e[0]),i=o.start,n=o.end,s=c&&e[0].value||e.text()||"",{start:i,end:n,text:s.substring(i,n),replaceStr:function(e){return s.substring(0,i)+e+s.substring(n,s.length)}})},b.isTextNode=function(e){return e&&3===e.nodeType},b.isBlock=function(e,t){var a=e.ownerDocument.defaultView;return t&&1===t.nodeType&&t!==e&&"block"===a.getComputedStyle(t).display?1:0},b.wrapBRs=function(i){var e=y(i).find("br:not(."+b.css.divWrapperCE+")");e.length&&y.each(e,function(e,t){var a=t.parentNode.childNodes.length;(1!==a||1===a&&!b.isBlock(i,t.parentNode))&&y(t).addClass(b.css.divWrapperCE).wrap("<div>")})},b.getEditableCaret=function(l){if(!(l=y(l)[0]).isContentEditable)return{};var e,t,c=(y(l).data("keyboard")||{}).options,a=l.ownerDocument.getSelection().getRangeAt(0),i=s(a.startContainer,a.startOffset),n=i.position;function s(e,t){var a,i="",n=!1,s=0,o=y.makeArray(l.childNodes);function r(e){e&&(s+=e,i+=c&&c.replaceCR||"\n")}for(;!n&&o.length;){if((a=o.shift())===e&&(n=!0),r(b.isBlock(l,a.previousSibling)),b.isTextNode(a)){if(s+=n?t:a.length,i+=a.textContent,n)return{position:s,text:i}}else!n&&a.childNodes&&(o=y.makeArray(a.childNodes).concat(o));r(b.isTextNode(a.previousSibling)&&b.isBlock(l,a))}return{position:s,text:i}}return!1!==c.wrapBRs&&b.wrapBRs(l),t=a.endContainer===a.startContainer&&a.endOffset===a.startOffset?(e=n,""):(e=(i=s(a.endContainer,a.endOffset)).position,i.text.substring(n,e)),{start:n,end:e,text:t}},b.getEditableLength=function(e){var t=b.setEditableCaret(e,"getMax");return"number"==typeof t?t:null},b.setEditableCaret=function(u,e,t){if(!(u=y(u)[0]).isContentEditable)return{};var a=u.ownerDocument,i=a.createRange(),n=a.getSelection(),p=(y(u).data("keyboard")||{}).options,s=e,o=t,r="",l=c("getMax"===e?"end":e);function c(a){"end"===a?a=u.innerHTML.length:a<0&&(a=0);var e,t,i="",n=!1,s=0,o=0,r=0,l=y.makeArray(u.childNodes);function c(e){return i+=e?p&&p.replaceCR||"\n":"",0<e}function d(e){var t=s+e;return o=r,r+=e,0<=a-t?a-(s=t)<=0:a-t<=0}for(;!n&&l.length;)if(e=l.shift(),c(t=b.isBlock(u,e.previousSibling))&&d(t)&&(n=!0),c(t=b.isTextNode(e.previousSibling)&&b.isBlock(u,e))&&d(t)&&(n=!0),b.isTextNode(e)){if(i+=e.textContent,d(e.length))return{node:e,offset:t=a-s==0&&1<=s-o?e.length:a-s,position:a,text:i}}else!n&&e.childNodes&&(l=y.makeArray(e.childNodes).concat(l));return l.length?{node:e,offset:a-s,position:a,text:i}:{node:e,offset:e&&e.length||0,position:r,text:i}}if(l.node){if(s=l.position,"getMax"===e)return s;i.setStart(l.node,l.offset),void 0!==t&&t!==e&&(l=c(t)),l.node&&(o=l.position,i.setEnd(l.node,l.offset),r=s===o?"":l.text.substring(s,o)),n.removeAllRanges(),n.addRange(i)}return{start:s,end:o,text:r}},b.replaceContent=function(e,t){e=y(e)[0];for(var a,i,n,s=typeof t,o=b.getEditableCaret(e).start,r=0,l=[e];a=l.pop();)if(b.isTextNode(a))"function"===s?r<=o&&o<=r+a.length&&(a.textContent=t(a.textContent)):"string"===s&&(n=t.substring(r,r+a.length))!==a.textContent&&(a.textContent=n),r+=a.length;else if(a&&a.childNodes)for(i=a.childNodes.length;i--;)l.push(a.childNodes[i]);i=b.getEditableCaret(e),b.setEditableCaret(e,i.start,i.start)},y.fn.keyboard=function(e){return this.each(function(){y(this).data("keyboard")||new y.keyboard(this,e)})},y.fn.getkeyboard=function(){return this.data("keyboard")},y.fn.caret=function(t,a,e){if(void 0===this[0]||this.is(":hidden")||"hidden"===this.css("visibility")||!/(INPUT|TEXTAREA)/i.test(this[0].nodeName))return this;var i,n,s,o,r,l=this,c=l[0],d=c.ownerDocument.selection,u=c.scrollTop,p=!1,h=!0;try{p="selectionStart"in c}catch(e){h=!1}return h&&void 0!==t?(/(email|number)/i.test(c.type)||(p?(c.selectionStart=t,c.selectionEnd=a):((i=c.createTextRange()).collapse(!0),i.moveStart("character",t),i.moveEnd("character",a-t),i.select())),e||!l.is(":visible")&&"hidden"===l.css("visibility")||c.focus(),c.scrollTop=u,this):(/(email|number)/i.test(c.type)?t=a=l.val().length:p?(t=c.selectionStart,a=c.selectionEnd):d?a="TEXTAREA"===c.nodeName.toUpperCase()?(r=l.val(),(s=(n=d.createRange()).duplicate()).moveToElementText(c),s.setEndPoint("EndToEnd",n),(t=s.text.replace(/\r/g,"\n").length)+n.text.replace(/\r/g,"\n").length):(r=l.val().replace(/\r/g,"\n"),(n=d.createRange().duplicate()).moveEnd("character",r.length),t=""===n.text?r.length:r.lastIndexOf(n.text),(n=d.createRange().duplicate()).moveStart("character",-r.length),n.text.length):t=a=(c.value||"").length,o=c.value||"",{start:t,end:a,text:o.substring(t,a),replace:function(e){return o.substring(0,t)+e+o.substring(a,o.length)}})},b}); \ No newline at end of file diff --git a/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.mousewheel.min.js b/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.mousewheel.min.js new file mode 100644 index 0000000000..749d603ff0 --- /dev/null +++ b/koha-tmpl/intranet-tmpl/lib/keyboard/js/jquery.mousewheel.min.js @@ -0,0 +1,2 @@ +/*! Mousewheel version: 3.1.12 * (c) 2014 Brandon Aaron * MIT License */ +!function(e){"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof exports?module.exports=e:e(jQuery)}(function(d){var c,m,e=["wheel","mousewheel","DOMMouseScroll","MozMousePixelScroll"],t="onwheel"in document||9<=document.documentMode?["wheel"]:["mousewheel","DomMouseScroll","MozMousePixelScroll"],g=Array.prototype.slice;if(d.event.fixHooks)for(var i=e.length;i;)d.event.fixHooks[e[--i]]=d.event.mouseHooks;var w=d.event.special.mousewheel={version:"3.1.12",setup:function(){if(this.addEventListener)for(var e=t.length;e;)this.addEventListener(t[--e],n,!1);else this.onmousewheel=n;d.data(this,"mousewheel-line-height",w.getLineHeight(this)),d.data(this,"mousewheel-page-height",w.getPageHeight(this))},teardown:function(){if(this.removeEventListener)for(var e=t.length;e;)this.removeEventListener(t[--e],n,!1);else this.onmousewheel=null;d.removeData(this,"mousewheel-line-height"),d.removeData(this,"mousewheel-page-height")},getLineHeight:function(e){var t=d(e),i=t["offsetParent"in d.fn?"offsetParent":"parent"]();return i.length||(i=d("body")),parseInt(i.css("fontSize"),10)||parseInt(t.css("fontSize"),10)||16},getPageHeight:function(e){return d(e).height()},settings:{adjustOldDeltas:!0,normalizeOffset:!0}};function n(e){var t,i=e||window.event,n=g.call(arguments,1),o=0,l=0,s=0,a=0,h=0;if((e=d.event.fix(i)).type="mousewheel","detail"in i&&(s=-1*i.detail),"wheelDelta"in i&&(s=i.wheelDelta),"wheelDeltaY"in i&&(s=i.wheelDeltaY),"wheelDeltaX"in i&&(l=-1*i.wheelDeltaX),"axis"in i&&i.axis===i.HORIZONTAL_AXIS&&(l=-1*s,s=0),o=0===s?l:s,"deltaY"in i&&(o=s=-1*i.deltaY),"deltaX"in i&&(l=i.deltaX,0===s&&(o=-1*l)),0!==s||0!==l){if(1===i.deltaMode){var r=d.data(this,"mousewheel-line-height");o*=r,s*=r,l*=r}else if(2===i.deltaMode){var u=d.data(this,"mousewheel-page-height");o*=u,s*=u,l*=u}if(t=Math.max(Math.abs(s),Math.abs(l)),(!m||t<m)&&p(i,m=t)&&(m/=40),p(i,t)&&(o/=40,l/=40,s/=40),o=Math[1<=o?"floor":"ceil"](o/m),l=Math[1<=l?"floor":"ceil"](l/m),s=Math[1<=s?"floor":"ceil"](s/m),w.settings.normalizeOffset&&this.getBoundingClientRect){var f=this.getBoundingClientRect();a=e.clientX-f.left,h=e.clientY-f.top}return e.deltaX=l,e.deltaY=s,e.deltaFactor=m,e.offsetX=a,e.offsetY=h,e.deltaMode=0,n.unshift(e,o,l,s),c&&clearTimeout(c),c=setTimeout(v,200),(d.event.dispatch||d.event.handle).apply(this,n)}}function v(){m=null}function p(e,t){return w.settings.adjustOldDeltas&&"mousewheel"===e.type&&t%120==0}d.fn.extend({mousewheel:function(e){return e?this.bind("mousewheel",e):this.trigger("mousewheel")},unmousewheel:function(e){return this.unbind("mousewheel",e)}})}); \ No newline at end of file diff --git a/koha-tmpl/intranet-tmpl/lib/keyboard/languages/all.min.js b/koha-tmpl/intranet-tmpl/lib/keyboard/languages/all.min.js new file mode 100644 index 0000000000..8d76edfaa7 --- /dev/null +++ b/koha-tmpl/intranet-tmpl/lib/keyboard/languages/all.min.js @@ -0,0 +1 @@ +jQuery.keyboard.language.amh={language:"ፊደል (Fidal) Amharic and Gǝʿǝz",display:{a:"✔:መቀበል (Shift+Enter)",accept:"Accept:መቀበል (Shift+Enter)",alt:"AltGr:ተለዋጭ፡ ፊደል፡",b:"←:ማጥፊያ",bksp:"Bksp:ማጥፊያ",c:"✖:መሠረዝ",cancel:"Cancel:መሠረዝ",clear:"C:ማፅዳት",combo:"ö:Toggle Combo Keys",dec:".:የአሀዝ፡ ቁጥር",e:"↵:መጀመር",enter:"Enter:መጀመር",lock:"⇪ Lock:አሮጌ፡ ለውጥ",s:"⇧:መለወጥ",shift:"Shift:መለወጥ",sign:"±:የሒሣብ፡ ምልክት፡ መቀየር",space:" :ክፍት፡ቦታ",t:"⇥:መግፊያ",tab:"⇥ Tab:መግፊያ"},wheelMessage:"Use mousewheel to see other keys",comboRegex:/([`\'~\^\"a-z0-9\{\}\[\]\|<>])([a-z0-9_\-\.\|`\'~\^\"!,=])/gim,combos:{a:{a:"ʾ",".":"ạ",1:"à",2:"á",3:"ã","=":"â",9:"ä","-":"ā",",":"፠"},A:{A:"ʿ","-":"Ā",1:"À",2:"Á",3:"Ã",9:"Ä","=":"Â"},e:{e:"ǝ","-":"ē",",":"፧",1:"è",2:"é",3:"ẽ",9:"ë","=":"ê"},E:{E:"Ǝ","-":"Ē",1:"È",2:"É",3:"Ẽ",9:"Ë","=":"Ê"},i:{1:"ì",2:"í",3:"ĩ",9:"ï",9:"ö","=":"î"},I:{1:"Ì",2:"Í",3:"Ĩ",9:"Ï","=":"Î"},o:{1:"ò",2:"ó",3:"õ","=":"ô"},O:{1:"Ò",2:"Ó",3:"Õ",9:"Ö","=":"Ô"},u:{1:"ù",2:"ú",3:"ũ",9:"ü","=":"û"},U:{1:"Ù",2:"Ú",3:"Ũ",9:"Ü","=":"Û"},h:{a:"ሀ",u:"ሁ",i:"ሂ",A:"ሃ",E:"ሄ",e:"ህ",o:"ሆ","!":"ሇ",_:"ḫ",".":"ḥ"},l:{a:"ለ",u:"ሉ",i:"ሊ",A:"ላ",E:"ሌ",e:"ል",o:"ሎ","!":"ሏ"},H:{a:"ሐ",u:"ሑ",i:"ሒ",A:"ሓ",E:"ሔ",e:"ሕ",o:"ሖ","!":"ሗ",_:"Ḫ"},m:{a:"መ",u:"ሙ",i:"ሚ",A:"ማ",E:"ሜ",e:"ም",o:"ሞ","!":"ሟ"},S:{a:"ሠ",u:"ሡ",i:"ሢ",A:"ሣ",E:"ሤ",e:"ሥ",o:"ሦ","!":"ሧ",".":"Ṣ","|":"Š",6:"Ś"},r:{a:"ረ",u:"ሩ",i:"ሪ",A:"ራ",E:"ሬ",e:"ር",o:"ሮ","!":"ሯ"},s:{a:"ሰ",u:"ሱ",i:"ሲ",A:"ሳ",E:"ሴ",e:"ስ",o:"ሶ","!":"ሷ",".":"ṣ","|":"š",6:"ś"},v:{a:"ሸ",u:"ሹ",i:"ሺ",A:"ሻ",E:"ሼ",e:"ሽ",o:"ሾ","!":"ሿ"},q:{a:"ቀ",u:"ቁ",i:"ቂ",A:"ቃ",E:"ቄ",e:"ቅ",o:"ቆ","!":"ቇ"},b:{a:"በ",u:"ቡ",i:"ቢ",A:"ባ",E:"ቤ",e:"ብ",o:"ቦ","!":"ቧ",",":"፣"},B:{a:"ቨ",u:"ቩ",i:"ቪ",A:"ቫ",E:"ቬ",e:"ቭ",o:"ቮ","!":"ቯ"},t:{a:"ተ",u:"ቱ",i:"ቲ",A:"ታ",E:"ቴ",e:"ት",o:"ቶ","!":"ቷ",".":"ṭ"},c:{a:"ቸ",u:"ቹ",i:"ቺ",A:"ቻ",E:"ቼ",e:"ች",o:"ቾ","!":"ቿ",_:"č̣","|":"č",",":"፤"},x:{a:"ኀ",u:"ኁ",i:"ኂ",A:"ኃ",E:"ኄ",e:"ኅ",o:"ኆ","!":"ኇ"},n:{a:"ነ",u:"ኑ",i:"ኒ",A:"ና",E:"ኔ",e:"ን",o:"ኖ","!":"ኗ",3:"ñ"},N:{a:"ኘ",u:"ኙ",i:"ኚ",A:"ኛ",E:"ኜ",e:"ኝ",o:"ኞ","!":"ኟ",3:"Ñ"},"'":{a:"አ",u:"ኡ",i:"ኢ",A:"ኣ",E:"ኤ",e:"እ",o:"ኦ","!":"ኧ"},k:{a:"ከ",u:"ኩ",i:"ኪ",A:"ካ",E:"ኬ",e:"ክ",o:"ኮ","!":"ኯ"},K:{a:"ኸ",u:"ኹ",i:"ኺ",A:"ኻ",E:"ኼ",e:"ኽ",o:"ኾ"},w:{a:"ወ",u:"ዉ",i:"ዊ",A:"ዋ",E:"ዌ",e:"ው",o:"ዎ","!":"ዏ","=":"ʷ"},W:{a:"ዐ",u:"ዑ",i:"ዒ",A:"ዓ",E:"ዔ",e:"ዕ",o:"ዖ"},z:{a:"ዘ",u:"ዙ",i:"ዚ",A:"ዛ",E:"ዜ",e:"ዝ",o:"ዞ","!":"ዟ","|":"ž"},Z:{a:"ዠ",u:"ዡ",i:"ዢ",A:"ዣ",E:"ዤ",e:"ዥ",o:"ዦ","!":"ዧ","|":"Ž"},y:{a:"የ",u:"ዩ",i:"ዪ",A:"ያ",E:"ዬ",e:"ይ",o:"ዮ","!":"ዯ",1:"ỳ",2:"ý",3:"ỹ",9:"ÿ","=":"ŷ"},d:{a:"ደ",u:"ዱ",i:"ዲ",A:"ዳ",E:"ዴ",e:"ድ",o:"ዶ","!":"ዷ",".":"ḍ",",":"፦"},L:{a:"ዸ",u:"ዹ",i:"ዺ",A:"ዻ",E:"ዼ",e:"ዽ",o:"ዾ","!":"ዿ"},D:{a:"ጀ",u:"ጁ",i:"ጂ",A:"ጃ",E:"ጄ",e:"ጅ",o:"ጆ","!":"ጇ",".":"Ḍ"},g:{a:"ገ",u:"ጉ",i:"ጊ",A:"ጋ",E:"ጌ",e:"ግ",o:"ጎ","!":"ጏ","|":"ǧ"},G:{a:"ጘ",u:"ጙ",i:"ጚ",A:"ጛ",E:"ጜ",e:"ጝ",o:"ጞ","!":"ጟ","|":"Ǧ"},T:{a:"ጠ",u:"ጡ",i:"ጢ",A:"ጣ",E:"ጤ",e:"ጥ",o:"ጦ","!":"ጧ",".":"Ṭ"},C:{a:"ጨ",u:"ጩ",i:"ጪ",A:"ጫ",E:"ጬ",e:"ጭ",o:"ጮ","!":"ጯ"},p:{a:"ጰ",u:"ጱ",i:"ጲ",A:"ጳ",E:"ጴ",e:"ጵ",o:"ጶ","!":"ጷ",6:"ṗ"},j:{a:"ጸ",u:"ጹ",i:"ጺ",A:"ጻ",E:"ጼ",e:"ጽ",o:"ጾ","!":"ጿ"},J:{a:"ፀ",u:"ፁ",i:"ፂ",A:"ፃ",E:"ፄ",e:"ፅ",o:"ፆ","!":"ፇ"},f:{a:"ፈ",u:"ፉ",i:"ፊ",A:"ፋ",E:"ፌ",e:"ፍ",o:"ፎ","!":"ፏ",",":"፨"},P:{a:"ፐ",u:"ፑ",i:"ፒ",A:"ፓ",E:"ፔ",e:"ፕ",o:"ፖ","!":"ፗ",6:"Ṗ"},Q:{a:"ቐ",u:"ቑ",i:"ቒ",A:"ቓ",E:"ቔ",e:"ቕ",o:"ቖ"},"[":{a:"ቈ",i:"ቊ",A:"ቋ",E:"ቌ",e:"ቍ"},"]":{a:"ኈ",i:"ኊ",A:"ኋ",E:"ኌ",e:"ኍ"},"}":{a:"ኰ",i:"ኲ",A:"ኳ",E:"ኴ",e:"ኵ"},"{":{a:"ጐ",i:"ጒ",A:"ጓ",E:"ጔ",e:"ጕ"},M:{a:"ᎀ",i:"ᎁ",E:"ᎂ",e:"ᎃ"},"|":{a:"ᎄ",i:"ᎅ",E:"ᎆ",e:"ᎇ"},"<":{a:"ᎈ",i:"ᎉ",E:"ᎊ",e:"ᎋ"},">":{a:"ᎌ",i:"ᎍ",E:"ᎎ",e:"ᎏ"},Y:{1:"Ỳ",2:"Ý",3:"Ỹ",9:"Ÿ","=":"Ŷ"}},rtl:!1};jQuery.keyboard.language.de={language:"Deutsch (German)",display:{a:"✔:Übernehmen (Umschalt+Enter)",accept:"Übernehmen:Übernehmen (Umschalt+Enter)",alt:"AltGr:Alt Graph",b:"←:Rücktaste",bksp:"Rück:Rücktaste",c:"✖:Abbrechen (Esc)",cancel:"Abbrechen:Abbrechen (Esc)",clear:"C:Löschen",combo:"ö:Tottasten umschalten",dec:",:Dezimal",e:"↵:Eingabe",enter:"Enter:Eingabe",lock:"⇩:Feststelltaste",s:"⇧:Umschalttaste",shift:"Umschalt:Umschalttaste",sign:"±:Vorzeichen wechseln",space:" :Leertaste",t:"⇥:Tabulatortaste",tab:"⇥ Tab:Tabulatortaste"},wheelMessage:"Mausrad benutzen, um weitere Tasten zu sehen"};jQuery.keyboard.language.es={language:"Español (Spanish)",display:{a:"✔:Acceptar (Cambio+Inscribir)",accept:"Acceptar:Acceptar (Cambio+Inscribir)",alt:"AltGr:Grafemas Alternativos",b:"←:Retroceso",bksp:"Bksp:Retroceso",c:"✖:Cancelar (Esc)",cancel:"Cancelar:Cancelar (Esc)",clear:"C:Vaciar",combo:"ö:Alternar las Teclas Combinados",dec:",:Decimal",e:"↵:Inscribir",enter:"Inscribir:Inscribir",lock:"⇪ Bloq:Mayús",s:"⇧:Cambio",shift:"Cambio:Cambio",sign:"±:Cambiar Signo",space:" :Espacio",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Utilice la rueda del mouse para ver otras teclas"};jQuery.keyboard.language.fa={language:"فارسی (Farsi)",display:{a:"✔:تأیید (Shift+Enter)",accept:"تأیید:تأیید (Shift+Enter)",alt:"Lng:Alternate Graphemes",b:"←:⬅ Backspace",bksp:"⬅ Bksp:⬅ Backspace",c:"✖:انصراف (Esc)",cancel:"انصراف:انصراف (Esc)",clear:"C:Clear",combo:"ö:Toggle Combo Keys",dec:".:Decimal",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:Change Sign",space:" :Space",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Use mousewheel to see other keys",rtl:!0};jQuery.keyboard.language.fr={language:"Français (French)",display:{a:"✔:Valider (Shift+Enter)",accept:"Valider:Valider (Shift+Enter)",alt:"AltGr:Charactère alternatif",b:"←:Suppr arrière",bksp:"←Suppr:Suppr arrière",c:"✖:Annuler",cancel:"Annuler:Annuler (Échap)",clear:"C:Effacer",combo:"ö:Bacsuler les touches combo",dec:".:Decimal",e:"↵:Entrée",enter:"Entrée:Entrée",lock:"⇪ Verr Mag:Verouillage majuscule",s:"⇧:Majuscule",shift:"Maj:Majuscule",sign:"±:Change de signe",space:" :Espace",t:"⇥:Tabulation",tab:"⇥ Tab:Tabulation"},wheelMessage:"Utiliser la molette de la souris pour voir les autres lettres"};jQuery.keyboard.language.he={language:"עברית (Hebrew)",display:{a:"✔:אישור (Shift+Enter)",accept:"אישור:אישור (Shift+Enter)",alt:"Alt:תווים נוספים",b:"←:Backspace",bksp:"Bksp:Backspace",c:"✖:ביטול (Esc)",cancel:"ביטול:ביטול (Esc)",clear:"C:ניקוי",combo:"ö:Toggle Combo Keys",dec:".:נקודה עשרונית",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:שינוי סימן",space:" :רווח",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"ניתן להשתמש בגלגלת העכבר כדי לראות מקשים נוספים",rtl:!0};jQuery.keyboard.language.hu={language:"Magyar (Hungarian)",display:{a:"✔:Rendben (Shift+Enter)",accept:"Rendben:Rendben (Shift+Enter)",alt:"AltGr:Alternate Graphemes",b:"←:Backspace",bksp:"Töröl:Backspace",c:"✖:Cancel (Esc)",cancel:"Mégsem:Cancel (Esc)",clear:"C:Clear",combo:"ö:Toggle Combo Keys",dec:".:Decimal",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:Change Sign",space:" :Space",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Használd az egér görgetőt a többi billentyű átváltáshoz"};jQuery.keyboard.language.it={language:"Italiano (Italian)",display:{a:"✔:Accetta (Shift+Enter)",accept:"Accetta:Accetta (Shift+Enter)",alt:"AltGr:Grafemi Alternativi",b:"←:Cancella",bksp:"Canc:Cancella",c:"✖:Annulla (Esc)",cancel:"Annulla:Annulla (Esc)",clear:"C:Pulisci",combo:"ö:Tasti Combinati",dec:",:Decimale",e:"↵:Invio",enter:"Invio:Invio",lock:"⇪ Bloc:Bloc Maiusc",s:"⇧:Maiusc",shift:"Maiusc:Maiusc",sign:"±:Cambia Segno",space:" :Spazio",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Usa la rotella del mouse per vedere altri tasti"};jQuery.keyboard.language.lv={language:"Latviešu (Latvian)",display:{a:"✔:Pieņemt (Shift+Enter)",accept:"Pieņemt:Pieņemt (Shift+Enter)",alt:"AltGr:Alternēšanas taustiņš",b:"←:Atpakaļatkāpe",bksp:"Bksp:Atpakaļatkāpe",c:"✖:Atcelt (Esc)",cancel:"Atcelt:Atcelt (Esc)",clear:"C:Clear",combo:"ö:Toggle Combo Keys",dec:".:Decimal",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:Change Sign",space:" :Space",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Izmanto peles ritenīti, lai apskatītu citus taustiņus",combos:{"'":{c:"ć",C:"Ć",e:"é",E:"É",n:"ń",N:"Ń",o:"ó",O:"Ó",s:"ś",S:"Ś",z:"ź",Z:"Ź"},"¨":{a:"ä",A:"Ä",o:"ö",O:"Ö",u:"ü",U:"Ü"},"°":{a:"å",A:"Å",e:"ė",E:"Ė",g:"ġ",z:"ż",Z:"Ż"}},comboRegex:/([`\'~\^\"ao\u00a8\u00b0])([a-z])/gim};jQuery.keyboard.language.my={language:"ဗမာ (Burmese)",display:{a:"✔:Accept (Shift+Enter)",accept:"Accept:Accept (Shift+Enter)",alt:"AltGr:Alternate Graphemes",b:"←:Backspace",bksp:"Bksp:Backspace",c:"✖:Cancel (Esc)",cancel:"Cancel:Cancel (Esc)",clear:"C:ရှင်းလင်းရန်",combo:"ö:Toggle Combo Keys",dec:".:ဒသမ",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:Change Sign",space:" :Space",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"အခြားခလုတ်များကို မြင်ရစေရန် မောက်စ်ဝှီးလ်ကို အသုံးပြုပါ"};jQuery.keyboard.language.pl={language:"Polski (Polish)",display:{a:"✔:Akceptuj (Shift+Enter)",accept:"Accept:Akceptuj (Shift+Enter)",alt:"AltGr:Polskie znaki",b:"←:Cofnij",bksp:"Bksp:Cofnij",c:"✖:Anuluj (Esc)",cancel:"Cancel:Anuluj (Esc)",clear:"C:Czyść",combo:"ö:Klawisze kombo",dec:".:Dziesiętny",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:Zmień znak",space:" :Spacja",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Użyj rolki aby zobaczyć pozozstałe klawisze"};jQuery.keyboard.language.pt={language:"Português (Portuguese)",display:{a:"✔:Aceitar (Shift+Enter)",accept:"Aceitar:Concluir (Shift+Enter)",alt:"AltGr:Carateres Adicionais/CTRL+ALT",b:"←:Retroceder",bksp:"← Bksp:Retroceder",c:"✖:Cancelar/Escape (Esc)",cancel:"Cancel:Cancelar/Escape(Esc)",clear:"C:Limpar",combo:"ö:Acentuação Automática",dec:".:Decimal",e:"↵:Introduzir/Mudar de Linha",enter:"Enter↵:Introduzir/Mudar de Linha",lock:"⇪ Lock:CapsLock/Maiúsculas",s:"⇧:Shift/Maiúsculas",shift:"⇪ Shift:Maiúsculas-Minúsculas",sign:"±:Mudar Sinal",space:" :Espaço",t:"⇥:Tab/Tabela/Avançar",tab:"⇥ Tab:Tabela/Avançar"},wheelMessage:"Use a roda do rato/navegador para ver mais teclas",comboRegex:/([`\'~\^\"ao\u00b4])([a-z])/gim,combos:{"´":{a:"á",A:"Á",e:"é",E:"É",i:"í",I:"Í",o:"ó",O:"Ó",u:"ú",U:"Ú",y:"ý",Y:"Ý"},"'":{}}};jQuery.keyboard.language.ro={language:"Română (Romanian)",display:{a:"✔:Accept (Shift+Enter)",accept:"Accept:Accept (Shift+Enter)",alt:"AltGr:Alternate Graphemes",b:"←:Backspace",bksp:"Bksp:Backspace",c:"✖:Cancel (Esc)",cancel:"Cancel:Cancel (Esc)",clear:"C:Clear",combo:"ö:Toggle Combo Keys",dec:",:Decimal",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:Schimba semnul",space:" :Spatiu",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Foloseste rotita mouse-ului pentru a vedea si celelalte caractere"};jQuery.keyboard.language.ru={language:"Русский (Russian)",display:{a:"✔:Сохранить (Shift+Enter)",accept:"Сохранить:Сохранить (Shift+Enter)",alt:"РУС:Русская клавиатура",b:"←:Удалить символ слева",bksp:"⇦:Удалить символ слева",c:"✖:Отменить (Esc)",cancel:"Отменить:Отменить (Esc)",clear:"C:Очистить",combo:"ö:Toggle Combo Keys",dec:",:Decimal",e:"↵:Ввод",enter:"Ввод:Перевод строки",lock:"⇪ Lock:Caps Lock",s:"⇧:Верхний регистр",shift:"⇧:Верхний регистр",sign:"±:Сменить знак",space:"Пробел:",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Use mousewheel to see other keys"};jQuery.keyboard.language.sq={language:"Shqip (Albanian)",display:{a:"✔:Prano (Shift+Enter)",accept:"Prano:Prano (Shift+Enter)",alt:"Alt:Alternativ",b:"←:Hapësirën Mbrapa",bksp:"Bksp:Hapësirën Mbrapa",c:"✖:Anuloj (Arratisjes)",cancel:"Anuloj:Anuloj (Arratisjes)",clear:"C:Qartë",combo:"ö:Kombinimi",dec:".:Decimal",e:"↵:Shkruani",enter:"Shkruani:Shkruani",lock:"⇪ Bllokoj:Caps Lock",next:"Next ⇨",prev:"⇦ Prev",s:"⇧:Ndryshim",shift:"Ndryshim:Ndryshim",sign:"±:Ndryshimi Regjistrohu",space:" :Hapësirë",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Përdorimi mousewheel për të parë çelësat e tjera",comboRegex:/([`\'~\^\"ao\/])([a-z])/gim,combos:{"/":{d:"đ",D:"Đ",l:"ł",L:"Ł"}}};jQuery.keyboard.language.syr={language:"ܣܘܪܝܰܬ (Syriac)",display:{a:"✔:ܚܶܦܳܕ݂ܐ (ܙܰܘܥܶܐ + ܥܒܰܪܬܐ)",accept:"ܚܶܦܳܕ݂ܐ:(ܙܰܘܥܶܐ + ܥܒܰܪܬܐ)",alt:"AltGr:ܒܶܕܳܠܐ ܓܪܰܦܝܟ ܕܥܰܪܬܐ",b:"←:ܙܪܰܥܠܐ ܕܝ ܕܥܰܪܬܐ",bksp:"← Back:ܙܪܰܥܠܐ ܕܝ ܕܥܰܪܬܐ",c:"✖:ܥܪܰܩܬܐ",cancel:"Esc:ܥܪܰܩܬܐ",clear:"C:ܠܚܳܝܐ",combo:"ö:ܙܪܰܥܠܐ ܡܝܬ݂ܐ",dec:",:ܢܘܩܙܐ ܕܪܰܩܡܶܐ (ܐܷܢܓܠܝܫܳܝܐ\\ܐܰܡܶܪܝܟܳܝܐ)",e:"↵:ܥܒܳܪܐ",enter:"↵ Enter:ܥܒܳܪܐ",lock:"⇩:ܐܷܬ݂ܘܳܬ݂ܶܐ ܙܰܘܥܶܐ ",s:"⇧:ܙܰܘܥܶܐ",shift:"⇧ Shift:ܙܰܘܥܶܐ",sign:"±:ܒܶܕܳܠܐ ܦ݁ܳܣܝܬܝܦ Space ܢܶܓܰܬܝܦ",space:"\\u0020:ܕܘܟܬ݂ܐ ܟ݂ܠܝܬ݂ܐ",t:"⇥:ܙܪܰܥܠܐ ܕܷܟܠܳܝܐ ܗܳܪܝܙܳܢܳܝܐ",tab:"⇥ Tab:ܙܪܰܥܠܐ ܕܷܟܠܳܝܐ ܗܳܪܝܙܳܢܳܝܐ"},wheelMessage:"Mausrad benutzen, um weitere Tasten zu sehen",rtl:!0}; \ No newline at end of file diff --git a/koha-tmpl/intranet-tmpl/lib/keyboard/layouts/all.min.js b/koha-tmpl/intranet-tmpl/lib/keyboard/layouts/all.min.js new file mode 100644 index 0000000000..51b4f29907 --- /dev/null +++ b/koha-tmpl/intranet-tmpl/lib/keyboard/layouts/all.min.js @@ -0,0 +1,5 @@ +jQuery.keyboard.layouts["albanian-qwertz"]={name:"Albanian-qwertz",lang:["sq"],normal:["\\ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t z u i o p ç '","a s d f g h j k l ë [ ] {enter}","{shift} < y x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['| ! " # $ % ^ & * ( ) _ + {bksp}',"{tab} Q W E R T Z U I O P Ç @","A S D F G H J K L Ë { } {enter}","{shift} > Y X C V B N M ; : ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["\\ ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {bksp}","{tab} q w € r t z u i o p ÷ ×","ä đ:Shortcut_(/d) Đ:Shortcut_(/D) f g h j ł:Shortcut_(/l) Ł:Shortcut_(/L) $ ß ¤ {enter}","{shift} < y x c @ { } § < > / {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["albanian-qwerty"]={name:"Albanian-qwerty",lang:["sq"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p ë '","a s d f g h j k l ; ç # {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['¬ ! " § $ % ^ & * ( ) _ + {bksp}',"{tab} Q W E R T Y U I O P Ë @","A S D F G H J K L : Ç ~ {enter}","{shift} ¦ Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["| 1 2 3 4 5 6 { } [ ] - = {bksp}","{tab} q w € r t y u i o p ÷ ×","a s d f g h j k l ; ç # {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":['| ! " § $ % ^ & * ( ) _ + {bksp}',"{tab} Q W € R T Y U I O P Ë @","A S D F G H J K L : Ç ~ {enter}","{shift} ¦ Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["arabic-azerty"]={name:"Arabic-azerty",lang:["ar"],normal:["² & é \" ' ( - è _ ç à ) = {bksp}","{tab} a z e r t y u i o p ` $","q s d f g h j k l m ù ٭ {enter}","{shift} < w x c v b n , ; : ! {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["² 1 2 3 4 5 6 7 8 9 0 ° + {bksp}","{tab} A Z E R T Y U I O P ̈ £","Q S D F G H J K L M ٪ µ {enter}","{shift} > W X C V B N ? . / § {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["> & é # { [ | ̀ \\ ^ @ ] } {bksp}","{tab} ض ص ث ق ف غ ع ه خ ح ج د","ش س ي ب ل ا ت ن م ك ط ذ {enter}","{shift} ـ ئ ء ؤ ر ﻻ ى ة و ز ظ {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["< 1 2 3 4 5 6 7 8 9 0 ° + {bksp}","{tab} َ ً ُ ٌ ﻹ إ ` ÷ × ؛ ج ¤","\\ س [ ] ﻷ أ ـ ، / : ¨ ّ {enter}","{shift} | ~ ْ ِ ٍ ﻵ آ ' , . ؟ {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["arabic-qwerty-1"]={name:"Arabic-qwerty-1",lang:["ar"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["ذ ١ ٢ ٣ ٤ ٥ ٦ ٧ ٨ ٩ ٠ - = {bksp}","{tab} ض ص ث ق ف غ ع ه خ ح ج د \\","ش س ي ب ل ا ت ن م ك ط {enter}","{shift} ئ ء ؤ ر ﻻ ى ة و ز ظ {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["ّ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} ض ص ث ق ف غ ع ÷ × ؛ > < |",'ش س ي ب ل أ ـ ، / : " {enter}',"{shift} ئ ء ؤ ر ﻵ آ ة , . ؟ {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["arabic-qwerty-2"]={name:"Arabic-qwerty-2",lang:["ar"],normal:["< 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ]","a s d f g h j k l ; ' ` {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["> ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { }",'A S D F G H J K L : " ~ {enter}',"{shift} | Z X C V B N M , . ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["< ١ ٢ ٣ ٤ ٥ ٦ ٧ ٨ ٩ ٠ - = {bksp}","{tab} ض ص ث ق ف غ ع ه خ ح ج د","ش س ي ب ل ا ت ن م ك ط ذ {enter}","{shift} ـ ئ ء ؤ ر ﻻ ى ة و ز ظ {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["> ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} ض ص ث ق ف غ ع ÷ × ؛ { }",'\\ س ي ب ﻷ أ ت ، م : " ّ {enter}',"{shift} | ئ ء ؤ ر ﻵ آ ة , . ؟ {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["arabic-qwerty-3"]={name:"Arabic-qwerty-3",lang:["ar"],normal:["< 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p ¢ |","a s d f g h j k l ; ' ` {enter}","{shift} ـ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["> ! @ # $ % ¬ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P £ |",'A S D F G H J K L : " ~ {enter}',"{shift} ¦ Z X C V B N M , . ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["< ١ ٢ ٣ ٤ ٥ ٦ ٧ ٨ ٩ ٠ - = {bksp}","{tab} ض ص ث ق ف غ ع ه خ ح ج د","ش س ي ب ل ا ت ن م ك ط ذ {enter}","{shift} ـ ئ ء ؤ ر ﻻ ى ة و ز ظ {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["> ! @ # $ % ¬ & * ( ) _ + {bksp}","{tab} ض ص ث ق ف غ ع ÷ × ؛ £ |",'ش س ي ب ﻷ أ ت ، / : " ّ {enter}',"{shift} ¦ ئ ء ؤ ر ﻵ آ ة , . ؟ {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["arabic-qwerty-4"]={name:"Arabic-qwerty-4",lang:["ar"],normal:["< 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ]","a s d f g h j k l ; ' ` {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["> ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { }",'A S D F G H J K L : " ~ {enter}',"{shift} | Z X C V B N M , . ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["< ١ ٢ ٣ ٤ ٥ ٦ ٧ ٨ ٩ ٠ - = {bksp}","{tab} ض ص ث ق ف غ ع ه خ ح ج د","ش س ي ب ل ا ت ن م ك ط ذ {enter}","{shift} ـ ئ ء ؤ ر ﻻ ى ة و ز ظ {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["> ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} َ ً ُ ٌ ﻹ إ ع ÷ × ؛ { }",'\\ س ي ب ﻷ أ ت ، / : " ّ {enter}',"{shift} | ئ ْ ِ ٍ ﻵ آ ة , . ؟ {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["belarusian-qwerty"]={name:"belarusian-qwerty",lang:["be"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["ё 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} й ц у к е н г ш ў з х ' \\","ф ы в а п р о л д ж э {enter}","{shift} я ч с м і т ь б ю . {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":['Ё ! " № ; € : ? * ( ) _ + {bksp}',"{tab} Й Ц У К Е Н Г Ш Ў З Х ' /","Ф Ы В А П Р О Л Д Ж Э {enter}","{shift} Я Ч С М І Т Ь Б Ю , {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["bengali-qwerty-1"]={name:"bengali-qwerty-1",lang:["bn"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` ১ ২ ৩ ৪ ৫ ৬ ৭ ৮ ৯ ০ - ৃ {bksp}","{tab} ৌ ৈ া ী ূ ব হ গ দ জ ড ় \\","ো ে ্ ি ু প র ক ত চ ট {enter}","{shift} ৎ ং ম ন ব ল স , . য় {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ১ ২ র ্ জ ত ক শ ( ) ঃ ৃ {bksp}","{tab} ঔ ঐ আ ঈ ঊ ভ ঙ ঘ ধ ঝ ঢ ঞ |","ও এ অ ই উ ফ র খ থ ছ ঠ {enter}","{shift} ? ঁ ণ ন ব ল শ ষ । য {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["bengali-qwerty-2"]={name:"bengali-qwerty-2",lang:["bn"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["ং ঁ ় ঃ ৺ ৸ ৹ ৲ ৳ ০ ৴ ১ ৵ {bksp}","{tab} ২ ৶ ৩ ৷ ৪ ৫ ৬ ৭ ৮ ৯ অ আ ই","ঈ উ ঊ ঋ ৠ ঌ ৡ এ ঐ ও ঔ {enter}","{shift} ক খ গ ঘ ঙ চ ছ জ ঝ ঞ {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["ট ঠ ড ড় ঢ ঢ় ণ ত ৎ থ দ ধ ন {bksp}","{tab} প ফ ব ভ ম য য় র ৰ ল ৱ শ ষ","স হ ঽ া ি ী ু ূ ৃ ৄ ৢ {enter}","{shift} ৣ ে ৈ ো ৌ ্ ৗ {sp:3} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["bulgarian-qwerty"]={name:"bulgarian-qwerty",lang:["bg"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - . {bksp}","{tab} , у е и ш щ к с д з ц ; (","ь я а о ж г т н в м ч {enter}","{shift} ю й ъ э ф х п р л б {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":['~ ! ? + " % = : / _ № I V {bksp}',"{tab} ы У Е И Ш Щ К С Д З Ц § )","Ь Я А О Ж Г Т Н В М Ч {enter}","{shift} Ю Й Ъ Э Ф Х П Р Л Б {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts.burmese={name:"burmese",lang:["my"],normal:["ၐ ၁ ၂ ၃ ၄ ၅ ၆ ၇ ၈ ၉ ၀ - = {bksp}","{tab} ဆ တ န မ အ ပ က င သ စ ဟ ဩ ၏","ေ ျ ိ ် ါ ့ ြ ု ူ း ' {enter}","{shift} ဖ ထ ခ လ ဘ ည ာ , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["ဎ ဍ ၒ ဋ ၓ ၔ ၕ ရ * ( ) _ + {bksp}","{tab} ဈ ဝ ဣ ၎ ဤ ၌ ဥ ၍ ဿ ဏ ဧ ဪ ၑ",'ဗ ှ ီ ္ ွ ံ ဲ ဒ ဓ ဂ " {enter}',"{shift} ဇ ဌ ဃ ဠ ယ ဉ ဦ ၊ ။ ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["~ ¡ ² ³ ¤ € ¼ ½ ¾ ‘ ’ ¥ × {bksp}","{tab} ä å é ® þ ü ú í ó ö « » ¬","á ß ð f g h j k ø ¶ ´ {enter}","{shift} æ x © v b ñ µ ç > ¿ {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ¹ ² ³ £ € ¼ ½ ¾ ‘ ’ ¥ ÷ {bksp}","{tab} Ä Å É ® Þ Ü Ú Í Ó Ö « » ¦","Ä § Ð F G H J K Ø ° ¨ {enter}","{shift} Æ X ¢ V B Ñ µ Ç . ¿ {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["catalan-qwerty"]={name:"catalan-qwerty",lang:["ca"],normal:["º 1 2 3 4 5 6 7 8 9 0 ' ¡ {bksp}","{tab} q w e r t y u i o p ̀ +","a s d f g h j k l ñ ́ ç {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['ª ! " · $ % & / ( ) = ? ¿ {bksp}',"{tab} Q W E R T Y U I O P ̂ *","A S D F G H J K L Ñ ̈ Ç {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["\\ | @ # ̃ 5 ¬ 7 8 9 0 ' ¡ {bksp}","{tab} q w € r t y u i o p [ ]","a s d f g h j k l ñ { } {enter}","{shift} | z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":['ª ! " · $ % & / ( ) = ? ¿ {bksp}',"{tab} Q W E R T Y U I O P [ ]","A S D F G H J K L Ñ { } {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts.chinese={name:"chinese",lang:["zh"],normal:["€ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} 手 田 水 口 廿 卜 山 戈 人 心 [ ] \\","日 尸 木 火 土 竹 十 大 中 ; ' {enter}","{shift} Z 難 金 女 月 弓 一 . - / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ) ( _ + {bksp}","{tab} q w e r t y u i o p { } |",'a s d f g h j k l : " {enter}',"{shift} z x c v b n m , < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["danish-qwerty"]={name:"danish-qwerty",lang:["da"],normal:["§ 1 2 3 4 5 6 7 8 9 0 + ́ {b}","{tab} q w e r t y u i o p å ¨","a s d f g h j k l æ ø ' {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['½ ! " # ¤ % & / ( ) = ? ̀ {b}',"{tab} Q W E R T Y U I O P Å ^","A S D F G H J K L Æ Ø * {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["§ 1 @ £ $ 5 6 { [ ] } + | {b}","{tab} q w € r t y u i o p å ~","a s d f g h j k l æ ø ' {enter}","{shift} \\ z x c v b n µ , . - {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts.ethiopic={name:"Amharic",lang:["amh"],normal:["` ፩ ፪ ፫ ፬ ፭ ፮ ፯ ፰ ፱ 0 ፥ = {bksp}","{tab} ቀ ወ ǝ ረ ተ የ u i o ጰ ቈ ኈ \\","a ሰ ደ ፈ ገ ሀ ጸ ከ ለ:Shortcut_(l_+_e_=_ል) ; አ {enter}","{shift} ዘ ኀ ቸ ሸ በ ነ መ ፡ ። / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ፲ ፳ ፴ ፵ ፶ ፷ ፸ ፹ ፺ ፻ ፼ + {bksp}","{tab} ቐ ዐ Ǝ ሯ ጠ Y U I O ፐ ጐ ኰ ᎄ",'ā ሠ ጀ ፘ ጘ ሐ ፀ ኸ ዸ እግዚአብሔር፡ " {enter}',"{shift} ዠ ፙ ጨ ፚ ቨ ኘ ᎀ ᎈ ᎌ ለግዚአብሔር፡ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q ʷ e r t y u i o ṗ [ ] \\","a š d f ǧ ḫ j k l ; ʾ {enter}","{shift} ž x č̣ č b ñ m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O Ṗ { } |","A Š D F Ǧ Ḫ J K L : ʿ {enter}","{shift} Ž X Č̣ Č B Ñ M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["french-azerty-1"]={name:"french-azerty-1",lang:["fr"],normal:["² & é \" ' ( - è _ ç à ) = {bksp}","{tab} a z e r t y u i o p ^ $","q s d f g h j k l m ù * {enter}","{shift} < w x c v b n , ; : ! {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["{sp:1} 1 2 3 4 5 6 7 8 9 0 ° + {bksp}","{tab} A Z E R T Y U I O P ¨ £","Q S D F G H J K L M % µ {enter}","{shift} > W X C V B N ? . / § {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["² & ~ # { [ | ` \\ ^ @ ] } {bksp}","{tab} a z € r t y u i o p ^ ¤","q s d f g h j k l m ù * {enter}","{shift} < w x c v b n , ; : ! {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{sp:1} 1 ~ # { [ | ` \\ ^ @ ] } {bksp}","{tab} A Z € R T Y U I O P ¨ ¤","Q S D F G H J K L M % µ {enter}","{shift} > W X C V B N ? . / § {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["french-azerty-2"]={name:"french-azerty-2",lang:["fr"],normal:["² & é \" ' ( - è _ ç à ) = {b}","{t} a z e r t y u i o p ^ $","q s d f g h j k l m ù * {e}","{s} < w x c v b n , ; : ! {s}","{a} {alt} {space} {alt} {c}"],shift:["{sp:1} 1 2 3 4 5 6 7 8 9 0 ° + {b}","{t} A Z E R T Y U I O P ¨ £","Q S D F G H J K L M % µ {e}","{s} > W X C V B N ? . / § {s}","{a} {alt} {space} {alt} {c}"],alt:["² & ~ # { [ | ` \\ ^ @ ] } {b}","{t} a z € r t y u i o p ^ ¤","q s d f g h j k l m ù * {e}","{s} < w x c v b n , ; : ! {s}","{a} {alt} {space} {alt} {c}"],"alt-shift":["{sp:1} 1 ~ # { [ | ` \\ ^ @ ] } {b}","{t} A Z € R T Y U I O P ¨ ¤","Q S D F G H J K L M % µ {e}","{s} > W X C V B N ? . / § {s}","{a} {alt} {space} {alt} {c}"]},jQuery.keyboard.layouts["french-bepo-V1.0rc2"]={name:"french-bepo-V1.0rc2",lang:["fr"],normal:['$ " « » ( ) @ + - / * = % {b}',"{t} b é p o è ˆ v d l j z w","a u i e , c t s r n m ç {enter}","{s} ê à y x . k ' q g h f {s}","{a} {alt} {space} {alt} {c}"],shift:["# 1 2 3 4 5 6 7 8 9 0 ° ` {b}","{t} B É P O È ! V D L J Z W","A U I E ; C T S R N M Ç {enter}","{s} Ê À Y X : K ? Q G H F {s}","{a} {alt} {space} {alt} {c}"],alt:["– — < > [ ] ^ ± − ÷ × ≠ ‰ {b}","{t} | ´ & œ ` ¡ ˇ ð / ij ə ˘","æ ù ¨ € ’ © þ ß ® ~ ¯ ¸ {enter}","{s} / \\ { } … ~ ¿ ° µ † ˛ {s}","{a} {alt} {space} {alt} {c}"],"alt-shift":["¶ „ “ ” ≤ ≥ {empty} ¬ ¼ ½ ¾ ′ ″ {b}","{t} ¦ ˝ § Œ ` ¡ {empty} Ð {empty} IJ Ə ˘","Æ Ù ˙ ¤ ̛ ſ Þ ẞ ™ {empty} º , {enter}","{s} {empty} {empty} ‘ ’ · {empty} ̉ ̣ {empty} ‡ ª {s}","{a} {alt} {space} {alt} {c}"]};jQuery.keyboard.layouts["german-qwertz-1"]={name:"german-qwertz-1",lang:["de"],normal:["̂ 1 2 3 4 5 6 7 8 9 0 ß ́ {bksp}","{tab} q w e r t z u i o p ü +","a s d f g h j k l ö ä # {enter}","{shift} < y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['° ! " § $ % & / ( ) = ? ̀ {bksp}',"{tab} Q W E R T Z U I O P Ü *","A S D F G H J K L Ö Ä ' {enter}","{shift} > Y X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["̂ 1 ² ³ 4 5 6 { [ ] } \\ ́ {bksp}","{tab} @ w € r t z u i o p ü ̃","a s d f g h j k l ö ä # {enter}","{shift} | y x c v b n µ , . - {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["german-qwertz-2"]={name:"german-qwertz-2",lang:["de"],normal:["§ 1 2 3 4 5 6 7 8 9 0 ' ̂ {bksp}","{tab} q w e r t z u i o p ü ̈","a s d f g h j k l ö ä $ {enter}","{shift} < y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['° + " * ç % & / ( ) = ? ̀ {bksp}',"{tab} Q W E R T Z U I O P è !","A S D F G H J K L é à £ {enter}","{shift} > Y X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["§ | @ # 4 5 ¬ ¦ ¢ 9 0 ́ ̃ {bksp}","{tab} q w € r t z u i o p [ ]","a s d f g h j k l ö { } {enter}","{shift} \\ y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["hebrew-qwerty"]={name:"hebrew-qwerty",lang:["he"],normal:["; 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} / ' ק ר א ט ו ן ם פ [ ] \\","ש ד ג כ ע י ח ל ך ף , {enter}","{shift} ז ס ב ה נ מ צ ת ץ . {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts.hindi={name:"hindi",lang:["hi"],normal:["` ऍ ॅ ्र र् ज्ञ त्र क्ष श्र ९ ० - ृ {bksp}","{tab} ौ ै ा ी ू ब ह ग द ज ड ़ ॉ \\","ो े ् ि ु प र क त च ट {enter}","{shift} ं म न व ल स , . य {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ १ २ ३ ४ ५ ६ ७ ८ ९ ० ः ऋ {bksp}","{tab} औ ऐ आ ई ऊ भ ङ घ ध झ ढ ञ ऑ","ओ ए अ इ उ फ ऱ ख थ छ ठ {enter}",'{shift} "" ँ ण न व ळ श ष । य़ {shift}',"{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["hungarianansi-qwertz-1"]={name:"hungarianansi-qwertz-1",lang:["hu"],normal:["0 1 2 3 4 5 6 7 8 9 ö ü ó ű {bksp}","{tab} q w e r t z u i o p ő ú","a s d f g h j k l é á {enter}","{shift} í y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["§ ' \" + ! % / = ( ) Ö Ü Ó Ű {bksp}","{tab} Q W E R T Z U I O P Ő Ú","A S D F G H J K L É Á {enter}","{shift} Í Y X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{sp:1} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ ¤ {bksp}","{tab} \\ | Ä {sp:1} {sp:1} {sp:1} € Í {sp:1} {sp:1} ÷ ×","ä đ Đ [ ] {sp:1} í ł Ł $ ß {enter}","{shift} < > # & @ { } < ; > * {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["hungarianansi-qwertz-2"]={name:"hungarianansi-qwertz-2",lang:["hu"],normal:["0 1 2 3 4 5 6 7 8 9 ö ü ó {bksp}","{tab} q w e r t z u i o p ő ú","a s d f g h j k l é á ű {enter}","{shift} í y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["§ ' \" + ! % / = ( ) Ö Ü Ó {bksp}","{tab} Q W E R T Z U I O P Ő Ú","A S D F G H J K L É Á Ű {enter}","{shift} Í Y X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{sp:1} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {bksp}","{tab} \\ | Ä {sp:1} {sp:1} {sp:1} € Í {sp:1} {sp:1} ÷ ×","ä đ Đ [ ] {sp:1} í ł Ł $ ß ¤ {enter}","{shift} < > # & @ { } < ; > * {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["hungarian-qwertz-1"]={name:"hungarian-qwertz-1",lang:["hu"],default:["0 1 2 3 4 5 6 7 8 9 ö ü ó ű {bksp}","{tab} q w e r t z u i o p ő ú","a s d f g h j k l é á {enter}","{shift} í y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["§ ' \" + ! % / = ( ) Ö Ü Ó Ű {bksp}","{tab} Q W E R T Z U I O P Ő Ú","A S D F G H J K L É Á {enter}","{shift} Í Y X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{sp:1} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ ¤ {bksp}","{tab} \\ | Ä {sp:1} {sp:1} {sp:1} € Í {sp:1} {sp:1} ÷ ×","ä đ Đ [ ] {sp:1} í ł Ł $ ß {enter}","{shift} < > # & @ { } < ; > * {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["hungarian-qwertz-2"]={name:"hungarian-qwertz-2",lang:["hu"],default:["0 1 2 3 4 5 6 7 8 9 ö ü ó {bksp}","{tab} q w e r t z u i o p ő ú","a s d f g h j k l é á ű {enter}","{shift} í y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["§ ' \" + ! % / = ( ) Ö Ü Ó {bksp}","{tab} Q W E R T Z U I O P Ő Ú","A S D F G H J K L É Á Ű {enter}","{shift} Í Y X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{sp:1} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {bksp}","{tab} \\ | Ä {sp:1} {sp:1} {sp:1} € Í {sp:1} {sp:1} ÷ ×","ä đ Đ [ ] {sp:1} í ł Ł $ ß ¤ {enter}","{shift} < > # & @ { } < ; > * {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["japanese-kana"]={name:"japanese-kana",lang:["ja"],normal:["0 1 2 3 4 5 6 7 8 9","あ い う え お は ひ ふ へ ほ","か き く け こ ま み む め も","さ し す せ そ や ゆ よ {bksp}","た ち つ て と ら り る れ ろ","な に ぬ ね の わ を ん ゐ ゑ","ぁ ぃ ぅ ぇ ぉ ゙ ゚ ́ {shift}","ゃ ゅ ょ っ ́ ・ ー 〜 {alt}","{accept} {space} {cancel} {enter}"],shift:["0 1 2 3 4 5 6 7 8 9","ア イ ウ エ オ ハ ヒ フ ヘ ホ","カ キ ク ケ コ マ ミ ム メ モ","サ シ ス セ ソ ヤ ユ ヨ {bksp}","タ チ ツ テ ト ラ リ ル レ ロ","ナ ニ ヌ ネ ノ ワ ヲ ン ヰ ヱ","ァ ィ ゥ ェ ォ ゙ ゚ ́ {shift}","ャ ュ ョ ッ ́ ・ ー 〜 {alt}","{accept} {space} {cancel} {enter}"],alt:["0 1 2 3 4 5 6 7 8 9 - ^ ¥ {bksp}","{tab} q w e r t y u i o p @ [","a s d f g h j k l ; : ] {enter}"," {shift} z x c v b n m , . / \\ {shift}","{accept} {space} {alt} {cancel}"],"alt-shift":["0 1 2 3 4 5 6 7 8 9 - ^ ¥ {bksp}","{tab} Q W E R T Y U I O P @ [","A S D F G H J K L ; : ] {enter}"," {shift} Z X C V B N M , . / \\ {shift}","{accept} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["japanese-qwerty"]={name:"japanese-qwerty",lang:["ja"],normal:["1 2 3 4 5 6 7 8 9 0 - ^ ¥ {bksp}","{tab} q w e r t y u i o p @ [","a s d f g h j k l ; : ] {enter}","{shift} z x c v b n m , . / \\ {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["! \" # $ % & ' ( ) ́ = ~ | {bksp}","{tab} Q W E R T Y U I O P ` {","A S D F G H J K L + * } {enter}","{shift} Z X C V B N M < > ? _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["ぬ ふ あ う え お や ゆ よ わ ほ へ ー {bksp}","{tab} た て い す か ん な に ら せ ゙ ゚","ち と し は き く ま の り れ け む {enter}","{shift} つ さ そ ひ こ み も ね る め ろ {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["́ ́ ぁ ぅ ぇ ぉ ゃ ゅ ょ を ́ ́ ́ {bksp}","{tab} ́ ́ ぃ ́ ́ ́ ́ ́ ́ ́ ́ 「","́ ́ ́ ́ ́ ́ ́ ́ ́ ́ ヶ 」 {enter}","{shift} っ ́ ́ ́ ́ ́ ́ 、 。 ・ ¦ {shift}","{accept} {alt} {space} {alt} {cancel}"]};/*! jQuery UI Virtual Keyboard - Original Layouts */ +jQuery.keyboard.layouts["albanian-qwertz"]={name:"Albanian-qwertz",lang:["sq"],normal:["\\ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t z u i o p ç '","a s d f g h j k l ë [ ] {enter}","{shift} < y x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['| ! " # $ % ^ & * ( ) _ + {bksp}',"{tab} Q W E R T Z U I O P Ç @","A S D F G H J K L Ë { } {enter}","{shift} > Y X C V B N M ; : ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["\\ ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {bksp}","{tab} q w € r t z u i o p ÷ ×","ä đ:Shortcut_(/d) Đ:Shortcut_(/D) f g h j ł:Shortcut_(/l) Ł:Shortcut_(/L) $ ß ¤ {enter}","{shift} < y x c @ { } § < > / {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["albanian-qwerty"]={name:"Albanian-qwerty",lang:["sq"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p ë '","a s d f g h j k l ; ç # {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['¬ ! " § $ % ^ & * ( ) _ + {bksp}',"{tab} Q W E R T Y U I O P Ë @","A S D F G H J K L : Ç ~ {enter}","{shift} ¦ Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["| 1 2 3 4 5 6 { } [ ] - = {bksp}","{tab} q w € r t y u i o p ÷ ×","a s d f g h j k l ; ç # {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":['| ! " § $ % ^ & * ( ) _ + {bksp}',"{tab} Q W € R T Y U I O P Ë @","A S D F G H J K L : Ç ~ {enter}","{shift} ¦ Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["arabic-azerty"]={name:"Arabic-azerty",lang:["ar"],normal:["² & é \" ' ( - è _ ç à ) = {bksp}","{tab} a z e r t y u i o p ` $","q s d f g h j k l m ù ٭ {enter}","{shift} < w x c v b n , ; : ! {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["² 1 2 3 4 5 6 7 8 9 0 ° + {bksp}","{tab} A Z E R T Y U I O P ̈ £","Q S D F G H J K L M ٪ µ {enter}","{shift} > W X C V B N ? . / § {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["> & é # { [ | ̀ \\ ^ @ ] } {bksp}","{tab} ض ص ث ق ف غ ع ه خ ح ج د","ش س ي ب ل ا ت ن م ك ط ذ {enter}","{shift} ـ ئ ء ؤ ر ﻻ ى ة و ز ظ {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["< 1 2 3 4 5 6 7 8 9 0 ° + {bksp}","{tab} َ ً ُ ٌ ﻹ إ ` ÷ × ؛ ج ¤","\\ س [ ] ﻷ أ ـ ، / : ¨ ّ {enter}","{shift} | ~ ْ ِ ٍ ﻵ آ ' , . ؟ {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["arabic-qwerty-1"]={name:"Arabic-qwerty-1",lang:["ar"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["ذ ١ ٢ ٣ ٤ ٥ ٦ ٧ ٨ ٩ ٠ - = {bksp}","{tab} ض ص ث ق ف غ ع ه خ ح ج د \\","ش س ي ب ل ا ت ن م ك ط {enter}","{shift} ئ ء ؤ ر ﻻ ى ة و ز ظ {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["ّ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} ض ص ث ق ف غ ع ÷ × ؛ > < |",'ش س ي ب ل أ ـ ، / : " {enter}',"{shift} ئ ء ؤ ر ﻵ آ ة , . ؟ {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["arabic-qwerty-2"]={name:"Arabic-qwerty-2",lang:["ar"],normal:["< 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ]","a s d f g h j k l ; ' ` {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["> ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { }",'A S D F G H J K L : " ~ {enter}',"{shift} | Z X C V B N M , . ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["< ١ ٢ ٣ ٤ ٥ ٦ ٧ ٨ ٩ ٠ - = {bksp}","{tab} ض ص ث ق ف غ ع ه خ ح ج د","ش س ي ب ل ا ت ن م ك ط ذ {enter}","{shift} ـ ئ ء ؤ ر ﻻ ى ة و ز ظ {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["> ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} ض ص ث ق ف غ ع ÷ × ؛ { }",'\\ س ي ب ﻷ أ ت ، م : " ّ {enter}',"{shift} | ئ ء ؤ ر ﻵ آ ة , . ؟ {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["arabic-qwerty-3"]={name:"Arabic-qwerty-3",lang:["ar"],normal:["< 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p ¢ |","a s d f g h j k l ; ' ` {enter}","{shift} ـ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["> ! @ # $ % ¬ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P £ |",'A S D F G H J K L : " ~ {enter}',"{shift} ¦ Z X C V B N M , . ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["< ١ ٢ ٣ ٤ ٥ ٦ ٧ ٨ ٩ ٠ - = {bksp}","{tab} ض ص ث ق ف غ ع ه خ ح ج د","ش س ي ب ل ا ت ن م ك ط ذ {enter}","{shift} ـ ئ ء ؤ ر ﻻ ى ة و ز ظ {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["> ! @ # $ % ¬ & * ( ) _ + {bksp}","{tab} ض ص ث ق ف غ ع ÷ × ؛ £ |",'ش س ي ب ﻷ أ ت ، / : " ّ {enter}',"{shift} ¦ ئ ء ؤ ر ﻵ آ ة , . ؟ {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["arabic-qwerty-4"]={name:"Arabic-qwerty-4",lang:["ar"],normal:["< 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ]","a s d f g h j k l ; ' ` {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["> ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { }",'A S D F G H J K L : " ~ {enter}',"{shift} | Z X C V B N M , . ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["< ١ ٢ ٣ ٤ ٥ ٦ ٧ ٨ ٩ ٠ - = {bksp}","{tab} ض ص ث ق ف غ ع ه خ ح ج د","ش س ي ب ل ا ت ن م ك ط ذ {enter}","{shift} ـ ئ ء ؤ ر ﻻ ى ة و ز ظ {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["> ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} َ ً ُ ٌ ﻹ إ ع ÷ × ؛ { }",'\\ س ي ب ﻷ أ ت ، / : " ّ {enter}',"{shift} | ئ ْ ِ ٍ ﻵ آ ة , . ؟ {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["belarusian-qwerty"]={name:"belarusian-qwerty",lang:["be"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["ё 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} й ц у к е н г ш ў з х ' \\","ф ы в а п р о л д ж э {enter}","{shift} я ч с м і т ь б ю . {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":['Ё ! " № ; € : ? * ( ) _ + {bksp}',"{tab} Й Ц У К Е Н Г Ш Ў З Х ' /","Ф Ы В А П Р О Л Д Ж Э {enter}","{shift} Я Ч С М І Т Ь Б Ю , {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["bengali-qwerty-1"]={name:"bengali-qwerty-1",lang:["bn"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` ১ ২ ৩ ৪ ৫ ৬ ৭ ৮ ৯ ০ - ৃ {bksp}","{tab} ৌ ৈ া ী ূ ব হ গ দ জ ড ় \\","ো ে ্ ি ু প র ক ত চ ট {enter}","{shift} ৎ ং ম ন ব ল স , . য় {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ১ ২ র ্ জ ত ক শ ( ) ঃ ৃ {bksp}","{tab} ঔ ঐ আ ঈ ঊ ভ ঙ ঘ ধ ঝ ঢ ঞ |","ও এ অ ই উ ফ র খ থ ছ ঠ {enter}","{shift} ? ঁ ণ ন ব ল শ ষ । য {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["bengali-qwerty-2"]={name:"bengali-qwerty-2",lang:["bn"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["ং ঁ ় ঃ ৺ ৸ ৹ ৲ ৳ ০ ৴ ১ ৵ {bksp}","{tab} ২ ৶ ৩ ৷ ৪ ৫ ৬ ৭ ৮ ৯ অ আ ই","ঈ উ ঊ ঋ ৠ ঌ ৡ এ ঐ ও ঔ {enter}","{shift} ক খ গ ঘ ঙ চ ছ জ ঝ ঞ {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["ট ঠ ড ড় ঢ ঢ় ণ ত ৎ থ দ ধ ন {bksp}","{tab} প ফ ব ভ ম য য় র ৰ ল ৱ শ ষ","স হ ঽ া ি ী ু ূ ৃ ৄ ৢ {enter}","{shift} ৣ ে ৈ ো ৌ ্ ৗ {sp:3} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["bulgarian-qwerty"]={name:"bulgarian-qwerty",lang:["bg"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - . {bksp}","{tab} , у е и ш щ к с д з ц ; (","ь я а о ж г т н в м ч {enter}","{shift} ю й ъ э ф х п р л б {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":['~ ! ? + " % = : / _ № I V {bksp}',"{tab} ы У Е И Ш Щ К С Д З Ц § )","Ь Я А О Ж Г Т Н В М Ч {enter}","{shift} Ю Й Ъ Э Ф Х П Р Л Б {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts.burmese={name:"burmese",lang:["my"],normal:["ၐ ၁ ၂ ၃ ၄ ၅ ၆ ၇ ၈ ၉ ၀ - = {bksp}","{tab} ဆ တ န မ အ ပ က င သ စ ဟ ဩ ၏","ေ ျ ိ ် ါ ့ ြ ု ူ း ' {enter}","{shift} ဖ ထ ခ လ ဘ ည ာ , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["ဎ ဍ ၒ ဋ ၓ ၔ ၕ ရ * ( ) _ + {bksp}","{tab} ဈ ဝ ဣ ၎ ဤ ၌ ဥ ၍ ဿ ဏ ဧ ဪ ၑ",'ဗ ှ ီ ္ ွ ံ ဲ ဒ ဓ ဂ " {enter}',"{shift} ဇ ဌ ဃ ဠ ယ ဉ ဦ ၊ ။ ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["~ ¡ ² ³ ¤ € ¼ ½ ¾ ‘ ’ ¥ × {bksp}","{tab} ä å é ® þ ü ú í ó ö « » ¬","á ß ð f g h j k ø ¶ ´ {enter}","{shift} æ x © v b ñ µ ç > ¿ {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ¹ ² ³ £ € ¼ ½ ¾ ‘ ’ ¥ ÷ {bksp}","{tab} Ä Å É ® Þ Ü Ú Í Ó Ö « » ¦","Ä § Ð F G H J K Ø ° ¨ {enter}","{shift} Æ X ¢ V B Ñ µ Ç . ¿ {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["catalan-qwerty"]={name:"catalan-qwerty",lang:["ca"],normal:["º 1 2 3 4 5 6 7 8 9 0 ' ¡ {bksp}","{tab} q w e r t y u i o p ̀ +","a s d f g h j k l ñ ́ ç {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['ª ! " · $ % & / ( ) = ? ¿ {bksp}',"{tab} Q W E R T Y U I O P ̂ *","A S D F G H J K L Ñ ̈ Ç {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["\\ | @ # ̃ 5 ¬ 7 8 9 0 ' ¡ {bksp}","{tab} q w € r t y u i o p [ ]","a s d f g h j k l ñ { } {enter}","{shift} | z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":['ª ! " · $ % & / ( ) = ? ¿ {bksp}',"{tab} Q W E R T Y U I O P [ ]","A S D F G H J K L Ñ { } {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts.chinese={name:"chinese",lang:["zh"],normal:["€ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} 手 田 水 口 廿 卜 山 戈 人 心 [ ] \\","日 尸 木 火 土 竹 十 大 中 ; ' {enter}","{shift} Z 難 金 女 月 弓 一 . - / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ) ( _ + {bksp}","{tab} q w e r t y u i o p { } |",'a s d f g h j k l : " {enter}',"{shift} z x c v b n m , < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["danish-qwerty"]={name:"danish-qwerty",lang:["da"],normal:["§ 1 2 3 4 5 6 7 8 9 0 + ́ {b}","{tab} q w e r t y u i o p å ¨","a s d f g h j k l æ ø ' {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['½ ! " # ¤ % & / ( ) = ? ̀ {b}',"{tab} Q W E R T Y U I O P Å ^","A S D F G H J K L Æ Ø * {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["§ 1 @ £ $ 5 6 { [ ] } + | {b}","{tab} q w € r t y u i o p å ~","a s d f g h j k l æ ø ' {enter}","{shift} \\ z x c v b n µ , . - {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts.ethiopic={name:"Amharic",lang:["amh"],normal:["` ፩ ፪ ፫ ፬ ፭ ፮ ፯ ፰ ፱ 0 ፥ = {bksp}","{tab} ቀ ወ ǝ ረ ተ የ u i o ጰ ቈ ኈ \\","a ሰ ደ ፈ ገ ሀ ጸ ከ ለ:Shortcut_(l_+_e_=_ል) ; አ {enter}","{shift} ዘ ኀ ቸ ሸ በ ነ መ ፡ ። / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ፲ ፳ ፴ ፵ ፶ ፷ ፸ ፹ ፺ ፻ ፼ + {bksp}","{tab} ቐ ዐ Ǝ ሯ ጠ Y U I O ፐ ጐ ኰ ᎄ",'ā ሠ ጀ ፘ ጘ ሐ ፀ ኸ ዸ እግዚአብሔር፡ " {enter}',"{shift} ዠ ፙ ጨ ፚ ቨ ኘ ᎀ ᎈ ᎌ ለግዚአብሔር፡ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q ʷ e r t y u i o ṗ [ ] \\","a š d f ǧ ḫ j k l ; ʾ {enter}","{shift} ž x č̣ č b ñ m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O Ṗ { } |","A Š D F Ǧ Ḫ J K L : ʿ {enter}","{shift} Ž X Č̣ Č B Ñ M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["french-azerty-1"]={name:"french-azerty-1",lang:["fr"],normal:["² & é \" ' ( - è _ ç à ) = {bksp}","{tab} a z e r t y u i o p ^ $","q s d f g h j k l m ù * {enter}","{shift} < w x c v b n , ; : ! {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["{sp:1} 1 2 3 4 5 6 7 8 9 0 ° + {bksp}","{tab} A Z E R T Y U I O P ¨ £","Q S D F G H J K L M % µ {enter}","{shift} > W X C V B N ? . / § {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["² & ~ # { [ | ` \\ ^ @ ] } {bksp}","{tab} a z € r t y u i o p ^ ¤","q s d f g h j k l m ù * {enter}","{shift} < w x c v b n , ; : ! {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{sp:1} 1 ~ # { [ | ` \\ ^ @ ] } {bksp}","{tab} A Z € R T Y U I O P ¨ ¤","Q S D F G H J K L M % µ {enter}","{shift} > W X C V B N ? . / § {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["french-azerty-2"]={name:"french-azerty-2",lang:["fr"],normal:["² & é \" ' ( - è _ ç à ) = {b}","{t} a z e r t y u i o p ^ $","q s d f g h j k l m ù * {e}","{s} < w x c v b n , ; : ! {s}","{a} {alt} {space} {alt} {c}"],shift:["{sp:1} 1 2 3 4 5 6 7 8 9 0 ° + {b}","{t} A Z E R T Y U I O P ¨ £","Q S D F G H J K L M % µ {e}","{s} > W X C V B N ? . / § {s}","{a} {alt} {space} {alt} {c}"],alt:["² & ~ # { [ | ` \\ ^ @ ] } {b}","{t} a z € r t y u i o p ^ ¤","q s d f g h j k l m ù * {e}","{s} < w x c v b n , ; : ! {s}","{a} {alt} {space} {alt} {c}"],"alt-shift":["{sp:1} 1 ~ # { [ | ` \\ ^ @ ] } {b}","{t} A Z € R T Y U I O P ¨ ¤","Q S D F G H J K L M % µ {e}","{s} > W X C V B N ? . / § {s}","{a} {alt} {space} {alt} {c}"]},jQuery.keyboard.layouts["french-bepo-V1.0rc2"]={name:"french-bepo-V1.0rc2",lang:["fr"],normal:['$ " « » ( ) @ + - / * = % {b}',"{t} b é p o è ˆ v d l j z w","a u i e , c t s r n m ç {enter}","{s} ê à y x . k ' q g h f {s}","{a} {alt} {space} {alt} {c}"],shift:["# 1 2 3 4 5 6 7 8 9 0 ° ` {b}","{t} B É P O È ! V D L J Z W","A U I E ; C T S R N M Ç {enter}","{s} Ê À Y X : K ? Q G H F {s}","{a} {alt} {space} {alt} {c}"],alt:["– — < > [ ] ^ ± − ÷ × ≠ ‰ {b}","{t} | ´ & œ ` ¡ ˇ ð / ij ə ˘","æ ù ¨ € ’ © þ ß ® ~ ¯ ¸ {enter}","{s} / \\ { } … ~ ¿ ° µ † ˛ {s}","{a} {alt} {space} {alt} {c}"],"alt-shift":["¶ „ “ ” ≤ ≥ {empty} ¬ ¼ ½ ¾ ′ ″ {b}","{t} ¦ ˝ § Œ ` ¡ {empty} Ð {empty} IJ Ə ˘","Æ Ù ˙ ¤ ̛ ſ Þ ẞ ™ {empty} º , {enter}","{s} {empty} {empty} ‘ ’ · {empty} ̉ ̣ {empty} ‡ ª {s}","{a} {alt} {space} {alt} {c}"]},jQuery.keyboard.layouts["german-qwertz-1"]={name:"german-qwertz-1",lang:["de"],normal:["̂ 1 2 3 4 5 6 7 8 9 0 ß ́ {bksp}","{tab} q w e r t z u i o p ü +","a s d f g h j k l ö ä # {enter}","{shift} < y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['° ! " § $ % & / ( ) = ? ̀ {bksp}',"{tab} Q W E R T Z U I O P Ü *","A S D F G H J K L Ö Ä ' {enter}","{shift} > Y X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["̂ 1 ² ³ 4 5 6 { [ ] } \\ ́ {bksp}","{tab} @ w € r t z u i o p ü ̃","a s d f g h j k l ö ä # {enter}","{shift} | y x c v b n µ , . - {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["german-qwertz-2"]={name:"german-qwertz-2",lang:["de"],normal:["§ 1 2 3 4 5 6 7 8 9 0 ' ̂ {bksp}","{tab} q w e r t z u i o p ü ̈","a s d f g h j k l ö ä $ {enter}","{shift} < y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['° + " * ç % & / ( ) = ? ̀ {bksp}',"{tab} Q W E R T Z U I O P è !","A S D F G H J K L é à £ {enter}","{shift} > Y X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["§ | @ # 4 5 ¬ ¦ ¢ 9 0 ́ ̃ {bksp}","{tab} q w € r t z u i o p [ ]","a s d f g h j k l ö { } {enter}","{shift} \\ y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["hebrew-qwerty"]={name:"hebrew-qwerty",lang:["he"],normal:["; 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} / ' ק ר א ט ו ן ם פ [ ] \\","ש ד ג כ ע י ח ל ך ף , {enter}","{shift} ז ס ב ה נ מ צ ת ץ . {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts.hindi={name:"hindi",lang:["hi"],normal:["` ऍ ॅ ्र र् ज्ञ त्र क्ष श्र ९ ० - ृ {bksp}","{tab} ौ ै ा ी ू ब ह ग द ज ड ़ ॉ \\","ो े ् ि ु प र क त च ट {enter}","{shift} ं म न व ल स , . य {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ १ २ ३ ४ ५ ६ ७ ८ ९ ० ः ऋ {bksp}","{tab} औ ऐ आ ई ऊ भ ङ घ ध झ ढ ञ ऑ","ओ ए अ इ उ फ ऱ ख थ छ ठ {enter}",'{shift} "" ँ ण न व ळ श ष । य़ {shift}',"{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["hungarian-qwertz-1"]={name:"hungarian-qwertz-1",lang:["hu"],default:["0 1 2 3 4 5 6 7 8 9 ö ü ó ű {bksp}","{tab} q w e r t z u i o p ő ú","a s d f g h j k l é á {enter}","{shift} í y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["§ ' \" + ! % / = ( ) Ö Ü Ó Ű {bksp}","{tab} Q W E R T Z U I O P Ő Ú","A S D F G H J K L É Á {enter}","{shift} Í Y X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{sp:1} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ ¤ {bksp}","{tab} \\ | Ä {sp:1} {sp:1} {sp:1} € Í {sp:1} {sp:1} ÷ ×","ä đ Đ [ ] {sp:1} í ł Ł $ ß {enter}","{shift} < > # & @ { } < ; > * {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["hungarian-qwertz-2"]={name:"hungarian-qwertz-2",lang:["hu"],default:["0 1 2 3 4 5 6 7 8 9 ö ü ó {bksp}","{tab} q w e r t z u i o p ő ú","a s d f g h j k l é á ű {enter}","{shift} í y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["§ ' \" + ! % / = ( ) Ö Ü Ó {bksp}","{tab} Q W E R T Z U I O P Ő Ú","A S D F G H J K L É Á Ű {enter}","{shift} Í Y X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{sp:1} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {bksp}","{tab} \\ | Ä {sp:1} {sp:1} {sp:1} € Í {sp:1} {sp:1} ÷ ×","ä đ Đ [ ] {sp:1} í ł Ł $ ß ¤ {enter}","{shift} < > # & @ { } < ; > * {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["hungarianansi-qwertz-1"]={name:"hungarianansi-qwertz-1",lang:["hu"],normal:["0 1 2 3 4 5 6 7 8 9 ö ü ó ű {bksp}","{tab} q w e r t z u i o p ő ú","a s d f g h j k l é á {enter}","{shift} í y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["§ ' \" + ! % / = ( ) Ö Ü Ó Ű {bksp}","{tab} Q W E R T Z U I O P Ő Ú","A S D F G H J K L É Á {enter}","{shift} Í Y X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{sp:1} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ ¤ {bksp}","{tab} \\ | Ä {sp:1} {sp:1} {sp:1} € Í {sp:1} {sp:1} ÷ ×","ä đ Đ [ ] {sp:1} í ł Ł $ ß {enter}","{shift} < > # & @ { } < ; > * {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["hungarianansi-qwertz-2"]={name:"hungarianansi-qwertz-2",lang:["hu"],normal:["0 1 2 3 4 5 6 7 8 9 ö ü ó {bksp}","{tab} q w e r t z u i o p ő ú","a s d f g h j k l é á ű {enter}","{shift} í y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["§ ' \" + ! % / = ( ) Ö Ü Ó {bksp}","{tab} Q W E R T Z U I O P Ő Ú","A S D F G H J K L É Á Ű {enter}","{shift} Í Y X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{sp:1} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {bksp}","{tab} \\ | Ä {sp:1} {sp:1} {sp:1} € Í {sp:1} {sp:1} ÷ ×","ä đ Đ [ ] {sp:1} í ł Ł $ ß ¤ {enter}","{shift} < > # & @ { } < ; > * {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["japanese-kana"]={name:"japanese-kana",lang:["ja"],normal:["0 1 2 3 4 5 6 7 8 9","あ い う え お は ひ ふ へ ほ","か き く け こ ま み む め も","さ し す せ そ や ゆ よ {bksp}","た ち つ て と ら り る れ ろ","な に ぬ ね の わ を ん ゐ ゑ","ぁ ぃ ぅ ぇ ぉ ゙ ゚ ́ {shift}","ゃ ゅ ょ っ ́ ・ ー 〜 {alt}","{accept} {space} {cancel} {enter}"],shift:["0 1 2 3 4 5 6 7 8 9","ア イ ウ エ オ ハ ヒ フ ヘ ホ","カ キ ク ケ コ マ ミ ム メ モ","サ シ ス セ ソ ヤ ユ ヨ {bksp}","タ チ ツ テ ト ラ リ ル レ ロ","ナ ニ ヌ ネ ノ ワ ヲ ン ヰ ヱ","ァ ィ ゥ ェ ォ ゙ ゚ ́ {shift}","ャ ュ ョ ッ ́ ・ ー 〜 {alt}","{accept} {space} {cancel} {enter}"],alt:["0 1 2 3 4 5 6 7 8 9 - ^ ¥ {bksp}","{tab} q w e r t y u i o p @ [","a s d f g h j k l ; : ] {enter}"," {shift} z x c v b n m , . / \\ {shift}","{accept} {space} {alt} {cancel}"],"alt-shift":["0 1 2 3 4 5 6 7 8 9 - ^ ¥ {bksp}","{tab} Q W E R T Y U I O P @ [","A S D F G H J K L ; : ] {enter}"," {shift} Z X C V B N M , . / \\ {shift}","{accept} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["japanese-qwerty"]={name:"japanese-qwerty",lang:["ja"],normal:["1 2 3 4 5 6 7 8 9 0 - ^ ¥ {bksp}","{tab} q w e r t y u i o p @ [","a s d f g h j k l ; : ] {enter}","{shift} z x c v b n m , . / \\ {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["! \" # $ % & ' ( ) ́ = ~ | {bksp}","{tab} Q W E R T Y U I O P ` {","A S D F G H J K L + * } {enter}","{shift} Z X C V B N M < > ? _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["ぬ ふ あ う え お や ゆ よ わ ほ へ ー {bksp}","{tab} た て い す か ん な に ら せ ゙ ゚","ち と し は き く ま の り れ け む {enter}","{shift} つ さ そ ひ こ み も ね る め ろ {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["́ ́ ぁ ぅ ぇ ぉ ゃ ゅ ょ を ́ ́ ́ {bksp}","{tab} ́ ́ ぃ ́ ́ ́ ́ ́ ́ ́ ́ 「","́ ́ ́ ́ ́ ́ ́ ́ ́ ́ ヶ 」 {enter}","{shift} っ ́ ́ ́ ́ ́ ́ 、 。 ・ ¦ {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["latvian-qwerty"]={name:"latvian-qwerty",lang:["lv"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] °","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["¬ 1 « » € 5 ’ 7 8 9 0 – = {bksp}","{tab} q w ē ŗ t y ū ī ō p [ ] °","ā š d f ģ h j ķ ļ ; ´ {enter}","{shift} ž x č v b ņ m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ 1 2 3 4 § « 7 ± × 0 — = {bksp}","{tab} Q W Ē Ŗ T Y Ū Ī Ō P { } |","Ā Š D F Ģ H J Ķ Ļ : ¨ {enter}","{shift} Ž X Č V B Ņ M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts.mongolian={name:"mongolian",lang:["mn"],normal:['= № - " ₮ : . _ , % ? е щ {bksp}',"{tab} ф ц у ж э н г ш ү з к ъ \\","й ы б ө а х р о л д п {enter}","{shift} я ч ё с м и т ь в ю {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["+ 1 2 3 4 5 6 7 8 9 0 Е Щ {bksp}","{tab} Ф Ц У Ж Э Н Г Ш Ү З К Ъ |","Й Ы Б Ө А Х Р О Л Д П {enter}","{shift} Я Ч Ё С М И Т Ь В Ю {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts.Persian={name:"Persian (Farsi)",lang:["fa"],normal:["~ ۱ ۲ ۳ ۴ ۵ ۶ ۷ ۸ ۹ ۰ - = {bksp}","{tab} ض ص ث ق ف غ ع ه خ ح ج چ پ","{lock} ش س ی ب ل ا ت ن م ك گ {enter}","{shift} ظ ط ز ژ ر ذ د ٸ و . ؟ {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["© ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} ً ٌ ٍ ® ، ؛ , ] [ } { × ±",'{lock} َ ُ ِ ّ ۀ آ ـ « » : " {enter}',"{shift} ة ي ° ؤ إ أ ء < > ¦ ÷ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","{lock} a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'{lock} A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["polish-qwerty"]={name:"polish-qwerty",lang:["pl"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] °","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w ę r t y € i ó p [ ] °",'ą ś d f g h j k ł : " {enter}',"{shift} ż ź ć v b ń m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["portuguese-qwerty"]={name:"portuguese-qwerty",lang:["pt"],normal:["\\ 1 2 3 4 5 6 7 8 9 0 ' « {bksp}","{tab} q w e r t y u i o p + ´","a s d f g h j k l ç º ~ {enter}","{shift} < z x c v b n m , . - {shift}","{cancel} {space} {alt} {combo} {accept}"],shift:['| ! " # $ % & / ( ) = ? » {bksp}',"{tab} Q W E R T Y U I O P * `","A S D F G H J K L Ç ª ^ {enter}","{shift} > Z X C V B N M ; : _ {shift}","{cancel} {space} {alt} {combo} {accept}"],alt:["\\ 1 @ £ § € 6 { [ ] } ' « {bksp}","{tab} q w € r t y u i o p ̈ ´","a s d f g h j k l ç º ~ {enter}","{shift} < z x c v b n m , . - {shift}","{cancel} {space} {alt} {combo} {accept}"],"alt-shift":['| ! " # $ % & / ( ) = ? » {bksp}',"{tab} Q W € R T Y U I O P ̈ `","A S D F G H J K L Ç ª ^ {enter}","{shift} > Z X C V B N M ; : _ {shift}","{cancel} {space} {alt} {combo} {accept}"]},jQuery.keyboard.layouts.romanian={normal:["„ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p ă î â","a s d f g h j k l ș ț {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["” ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P Ă Î Â","A S D F G H J K L Ș Ț {enter}","{shift} | Z X C V B N M ; : ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` ̃ ̌ ̂ ̆ ̊ ̨ ̀ ̇ ́ ̋ ̈ ̧ {bksp}","{tab} a z € r t y u i o p { } \\","a ß đ f g h j k ł ; ' {enter}","{shift} \\ z x © v b n m < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ 1 2 3 4 5 6 7 8 9 0 – ± {bksp}","{tab} q w e r t y u i o p { } |",'a s Đ f g h j k Ł : " {enter}',"{shift} \\ z x c v b n m « » / {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["russian-qwerty"]={name:"Russian-qwerty",lang:["ru"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["ё 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} й ц у к е н г ш щ з х ъ \\","ф ы в а п р о л д ж э {enter}","{shift} я ч с м и т ь б ю . {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":['Ё ! " № ; € : ? * ( ) _ + {bksp}',"{tab} Й Ц У К Е Н Г Ш Щ З Х Ъ /","Ф Ы В А П Р О Л Д Ж Э {enter}","{shift} Я Ч С М И Т Ь Б Ю , {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["russian-mac"]={name:"Russian-mac",lang:["ru"],default:["] 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} й ц у к е н г ш щ з х ъ ё","ф ы в а п р о л д ж э {enter}","{shift} я ч с м и т ь б ю / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['[ ! " № % : , . ; ( ) _ + {bksp}',"{tab} Й Ц У К Е Н Г Ш Щ З Х Ъ Ё","Ф Ы В А П Р О Л Д Ж Э {enter}","{shift} Я Ч С М И Т Ь Б Ю ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["] ! @ # $ % ^ & * ( ) – » {bksp}","{tab} ј џ ќ ® † њ ѓ ѕ ў ‘ “ ъ ё","ƒ ы ћ ÷ © } ° љ ∆ … э {enter}","{shift} ђ ≈ ≠ µ и ™ ~ ≤ ≥ “ {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["[ | \" £ € ∞ ¬ ¶ √ ' ` — « {bksp}","{tab} Ј Џ Ќ ® † Њ Ѓ Ѕ Ў ’ ” Ъ Ё ","ƒ Ы Ћ ÷ © { • Љ ∆ … Э {enter}","{shift} Ђ ≈ ≠ µ И ™ ~ < > „ {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["sr-Cyrl"]={name:"Serbian Cyrillic (sr-Cyrl)",lang:["sr"],default:["` 1 2 3 4 5 6 7 8 9 0 ' + {bksp}","{tab} љ њ е р т з у и о п ш ђ ж"," а с д ф г х ј к л ч ћ {enter}","{shift} < ѕ џ ц в б н м , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['~ ! " # $ % & / ( ) = ? * {bksp}',"{tab} Љ Њ Е Р Т З У И О П Ш Ђ Ж"," А С Д Ф Г Х Ј К Л Ч Ћ {enter}","{shift} > Ѕ Џ Ц В Б Н М ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 ' + {bksp}","{tab} љ њ е р т з у и о п ш ђ ж"," а с д ф г х ј к л ч ћ {enter}","{shift} < ѕ џ ц в б н м , . - {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts.sr={name:"Serbian Latin (sr)",lang:["sr"],default:["¸ 1 2 3 4 5 6 7 8 9 0 ' + {bksp}","{tab} q w e r t z u i o p š đ ž"," a s d f g h j k l č ć {enter}","{shift} < y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['¨ ! " # $ % & / ( ) = ? * {bksp}',"{tab} Q W E R T Z U I O P Š Đ Ž"," A S D F G H J K L Č Ć {enter}","{shift} > Y X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["¸ 1 2 3 4 5 6 7 8 9 0 ' + {bksp}","{tab} q w e r t z u i o p š đ ž"," a s d f g h j k l č ć {enter}","{shift} < y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["sr-Cyrl-mac"]={name:"Serbian Cyrillic for Mac (sr-Cyrl)",lang:["sr"],default:["< 1 2 3 4 5 6 7 8 9 0 ' + {bksp}","{tab} љ њ е р т з у и о п ш ђ ж"," а с д ф г х ј к л ч ћ {enter}","{shift} ѕ џ ц в б н м , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['> ! " # $ % & / ( ) = ? * {bksp}',"{tab} Љ Њ Е Р Т З У И О П Ш Ђ Ж"," А С Д Ф Г Х Ј К Л Ч Ћ {enter}","{shift} Ѕ Џ Ц В Б Н М ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` † ° € „ ™ ∞ £ Ґ ¶ • – = {bksp}","{tab} q w e r t y u i o p [ ] ‘",' a s d f g h j k l ; " {enter}',"{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ! @ # “ % ^ & * ( ) — + {bksp}","{tab} Q W E R T Y U I O P { } ’"," A S D F G H J K L : ” {enter}","{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["sr-mac"]={name:"Serbian Latin for Mac (sr)",lang:["sr"],default:["< 1 2 3 4 5 6 7 8 9 0 / + {bksp}","{tab} q w e r t z u i o p š đ ž"," a s d f g h j k l č ć {enter}","{shift} y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["> ! \" # $ % & ' ( ) = ? * {bksp}","{tab} Q W E R T Z U I O P Š Đ Ž"," A S D F G H J K L Č Ć {enter}","{shift} Y X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` ¡ ™ £ ¢ ∞ § ¶ • ª º - ≠ {bksp}","{tab} œ ∑ ´ ® † — ¨ ^ ø π [ ] ","å ß ∂ ƒ © ̏ ∆ ̑ ¬ … ^ {enter}","{shift} Ω ≈ ç √ ∫ ~ µ ≤ ≥ ÷ {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ⁄ @ ‹ › € ı – ° · ‚ _ ± {bksp}","{tab} Œ „ ‰ “ ‘ ” ’ É Ø ∏ { } |","Å Í Î Ï Ì Ó Ô Ò æ Æ {enter}","{shift} « » Ç ◊ Ñ ˆ ¯ È ˇ ¿ {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["spanish-qwerty"]={name:"spanish-qwerty",lang:["es"],normal:["| 1 2 3 4 5 6 7 8 9 0 ' ¿ {bksp}","{tab} q w e r t y u i o p ́ +","a s d f g h j k l ñ { } {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['° ! " # $ % & / ( ) = ? ¡ {bksp}',"{tab} Q W E R T Y U I O P ̈ *","A S D F G H J K L Ñ [ ] {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["¬ 1 2 3 4 5 6 7 8 9 0 \\ ¿ {bksp}","{tab} @ w e r t y u i o p ́ ̃","a s d f g h j k l ñ ̂ ̀ {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":['° ! " # $ % & / ( ) = ? ¡ {bksp}',"{tab} Q W E R T Y U I O P ̈ *","A S D F G H J K L Ñ [ ] {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["spanish-qwerty-sp"]={name:"spanish-qwerty-sp",lang:["es"],normal:["º 1 2 3 4 5 6 7 8 9 0 ' ¡ {bksp}","{tab} q w e r t y u i o p ̀ +","a s d f g h j k l ñ ́ ç {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['ª ! " · $ % & / ( ) = ? ¿ {bksp}',"{tab} Q W E R T Y U I O P ^ *","A S D F G H J K L Ñ ̈ Ç {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["\\ | @ # 4 5 ¬ 7 8 9 0 ' ¡ {bksp}","{tab} q w e r t y u i o p [ ]","a s d f g h j k l ñ { } {enter}","{shift} | z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":['ª ! " · $ % & / ( ) = ? ¿ {bksp}',"{tab} Q W E R T Y U I O P [ ]","A S D F G H J K L Ñ { } {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["swedish-qwerty"]={name:"swedish-qwerty",lang:["sv"],normal:["§ 1 2 3 4 5 6 7 8 9 0 + ́ {bksp}","{tab} q w e r t y u i o p å ̈","a s d f g h j k l ö ä ' {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['½ ! " # ¤ % & / ( ) = ? ̀ {bksp}',"{tab} Q W E R T Y U I O P Å ̂","A S D F G H J K L Ö Ä * {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["§ 1 @ £ $ 5 6 { [ ] } \\ ́ {bksp}","{tab} q w € r t y u i o p å ̃","a s d f g h j k l ö ä ' {enter}","{shift} | z x c v b n µ , . - {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["swedish-dvorak"]={name:"swedish-qwerty",lang:["sv"],normal:["§ 1 2 3 4 5 6 7 8 9 0 + ́ {bksp}","{tab} ö å ä p y f g c r l q ¨","a o e u i d h t n s - < {enter}","{shift} ' , . j k x b m w v z {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['½ ! " # ¤ % & / ( ) = ? ` {bksp}',"{tab} Ö Å Ä P Y F G C R L Q ^","A O E U I D H T N S _ > {enter}","{shift} * ; : J K X B M W V Z {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["§ 1 @ £ $ 5 6 { [ ] } \\ ´ {bksp}","{tab} ö å ä p y f g c r l q ~","a o e u i d h t n s - | {enter}","{shift} ' , . j k x b m w v z {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts.syriac={name:"syriac-surayt",lang:["syr"],normal:[" 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ܔ ܨ ܖ ܩ ܦ ܜ ܥ ܗ ܞ ܚ ܓ ܕ ܆","ܫ ܣ ܝ ܒ ܠ ܐ ܬ ܢ ܡ ܟ ܛ {enter}","{shift} ܆ ] [ ܤ ܪ ܧ ܀ . ܘ ܙ / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["̮ ! ̊ ̥ ݉ ♰ ♱ ܊ » ) ( « + {bksp}","{tab} ܰ ܳ ܶ ܺ ܽ ݀ ݁ ̈ ̄ ̇ ̃ ݊ :","ܱ ܴ ܷ ܻ ܾ ܑ ـ ̤ ̱ ̣ ̰ {enter}","{shift} : ܲ ܵ ܸ ܼ ܿ ܹ ݂ ، ؛ / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["ّ ܁ ܂ ܃ ܄ ܅ ܈ ܉ ܋ ܌ ܍ ┌ ┐ {bksp}","{tab} َ ً ُ ٌ ٓ ٔ ݇ ݃ ݅ ̭ {empty} {empty} {empty}","ِ ٍ {empty} ء ٕ ٰ ݈ ݄ ݆ {empty} {empty} {enter}","{shift} {empty} {empty} ْ {empty} {ZWJ} {ZWNJ} {LRM} {RLM} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["syriac-phonetic"]={name:"syriac-surayt-phonetic",lang:["syr"],normal:[" 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ܩ ܘ ܖ ܪ ܬ ܝ ܜ ܥ ܧ ܦ ] [ ܆","ܐ ܣ ܕ ܔ ܓ ܗ ܛ ܟ ܠ ܚ ܞ {enter}","{shift} ܆ ܙ ܨ ܤ ܫ ܒ ܢ ܡ ܀ . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["̮ ! ̊ ̥ ݉ ♰ ♱ ܊ » ) ( « + {bksp}","{tab} ܰ ܳ ܶ ܺ ܽ ݀ ݁ ̈ ̄ ̇ ̃ ݊ :","ܱ ܴ ܷ ܻ ܾ ܑ ـ ̤ ̱ ̣ ̰ {enter}","{shift} : ܲ ܵ ܸ ܼ ܿ ܹ ݂ ، ؛ / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["ّ ܁ ܂ ܃ ܄ ܅ ܈ ܉ ܋ ܌ ܍ ┌ ┐ {bksp}","{tab} َ ً ُ ٌ ٓ ٔ ݇ ݃ ݅ ̭ {empty} {empty} {empty}","ِ ٍ {empty} ء ٕ ٰ ݈ ݄ ݆ {empty} {empty} {enter}","{shift} {empty} {empty} ْ {empty} {ZWJ} {ZWNJ} {LRM} {RLM} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["syriac-latin"]={name:"syriac-surayt-latin",lang:["syr"],normal:["' 1 2 3 4 5 6 7 ḏ ḥ ḍ ṣ š {bksp}","{tab} q w e r t y u i o p ṭ ṯ","a s d f g h j k l ë ä ġ {enter}","{shift} X z x c v b n m ž č . {shift}","{accept} {space} {cancel}"],shift:['8 9 0 ! " % ? Ḏ Ḥ Ḍ Ṣ Š {bksp}',"{tab} Q W E R T Y U I O P Ṭ Ṯ","A S D F G H J K L Ë Ä Ġ {enter}","{shift} {empty} Z X C V B N M Ž Č , {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["tamil-tamil99-mod"]={name:"tamil-tamil99-mod",lang:["ta"],normal:["ா ி ீ ு ூ ெ ே ை ொ ோ ௌ ஃ {bksp}","{tab} ஆ ஈ ஊ ஐ ஏ ள ற ன ட ண ச ஞ ","அ இ உ ் எ க ப ம த ந ய {enter}","{shift} ஔ ஓ ஒ வ ங ல ர , . ழ {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ஸ ஷ ஜ ஹ ஶ்ரீ க்ஷ [ ] { } ","௹ ௺ ௸ ஃ \" : ; ' {enter}","{shift} ௳ ௴ ௵ ௶ ௷ / / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ | @ # $ % ¬ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P ! ¦ ¢",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M { } ? {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["thai-qwerty"]={name:"thai-qwerty",lang:["th"],normal:["_ ๅ / - ภ ถ ุ ึ ค ฅ จ ข ช {bksp}","{tab} ๆ ไ ำ พ ะ ั ี ร น ย บ ล ฃ ","ฟ ห ก ด เ ้ ่ า ส ว ง {enter}","{shift} ผ ป แ อ ิ ื ท ม ใ ฝ {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["% + ๑ ๒ ๓ ๔ ู ฿ ๕ ๖ ๗ ๘ ๙ {bksp}",'{tab} ๐ " ฎ ฑ ธ ํ ๊ ณ ฯ ญ ฐ , ฅ',"ฤ ฆ ฏ โ ฌ ็ ๋ ษ ศ ซ . {enter}","{shift} ( ) ฉ ฮ ฺ ์ ? ฒ ฬ ฦ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ | @ # $ % ¬ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P ! ¦ ¢",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M { } ? {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["turkish-q"]={name:"turkish-q",lang:["tr"],normal:['" 1 2 3 4 5 6 7 8 9 0 * - {bksp}',"{tab} q w e r t y u ı o p ğ ü","{lock} a s d f g h j k l ş i , {enter}","{shift} < z x c v b n m ö ç . {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["é ! ' ̂ + % & / ( ) = ? _ {bksp}","{tab} Q W E R T Y U I O P Ğ Ü","{lock} A S D F G H J K L Ş İ ; {enter}","{shift} > Z X C V B N M Ö Ç : {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:['" 1 £ # $ ½ 6 { [ ] } \\ - {bksp}',"{tab} @ w € r t y u ı o p ̈ ̃","{lock} a s d f g h j k l ́ i ̀ {enter}","{shift} | z x c v b n m ö ç . {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["turkish-f"]={name:"turkish-f",lang:["tr"],normal:["+ 1 2 3 4 5 6 7 8 9 0 / - {bksp}","{tab} f g ğ ı o d r n h p q w","{lock} u i e a ü t k m l y ş x {enter}","{shift} < j ö v c ç z s b . , {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["* ! \" ̂ $ % & ' ( ) = ? _ {bksp}","{tab} F G Ğ I O D R N H P Q W","{lock} U İ E A Ü T K M L Y Ş X {enter}","{shift} > J Ö V C Ç Z S B : ; {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["¬ ¹ ² # ¼ ½ ¾ { [ ] } \\ - {bksp}","{tab} @ g ğ ı o ¥ r n h £ ̈ ̃","{lock} u ß € a ü t k m l ́ ş ̀ {enter}","{shift} | « » v c ç z s × ÷ , {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["vietnamese-qwerty"]={name:"vietnamese-qwerty",lang:["vi"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m < > , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |","A S D F G H J K L : ' {enter}","{shift} Z X C V B N M < > ; : ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ă â ê ô {empty} ̛ {empty} {empty} {empty} đ - ₫ {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} ÿ {empty} {empty} œ {empty} ư ơ {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { } ̂ {enter}","{shift} {empty} {empty} ç {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} Ă Â Ê Ô {empty} {empty} {empty} {empty} {empty} Đ _ + {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} Ÿ {empty} {empty} Œ {empty} Ư Ơ {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { } ̈ {enter}","{shift} {empty} {empty} Ç {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.language.amh={language:"ፊደል (Fidal) Amharic and Gǝʿǝz",display:{a:"✔:መቀበል (Shift+Enter)",accept:"Accept:መቀበል (Shift+Enter)",alt:"AltGr:ተለዋጭ፡ ፊደል፡",b:"←:ማጥፊያ",bksp:"Bksp:ማጥፊያ",c:"✖:መሠረዝ",cancel:"Cancel:መሠረዝ",clear:"C:ማፅዳት",combo:"ö:Toggle Combo Keys",dec:".:የአሀዝ፡ ቁጥር",e:"↵:መጀመር",enter:"Enter:መጀመር",lock:"⇪ Lock:አሮጌ፡ ለውጥ",s:"⇧:መለወጥ",shift:"Shift:መለወጥ",sign:"±:የሒሣብ፡ ምልክት፡ መቀየር",space:" :ክፍት፡ቦታ",t:"⇥:መግፊያ",tab:"⇥ Tab:መግፊያ"},wheelMessage:"Use mousewheel to see other keys",comboRegex:/([`\'~\^\"a-z0-9\{\}\[\]\|<>])([a-z0-9_\-\.\|`\'~\^\"!,=])/gim,combos:{a:{a:"ʾ",".":"ạ",1:"à",2:"á",3:"ã","=":"â",9:"ä","-":"ā",",":"፠"},A:{A:"ʿ","-":"Ā",1:"À",2:"Á",3:"Ã",9:"Ä","=":"Â"},e:{e:"ǝ","-":"ē",",":"፧",1:"è",2:"é",3:"ẽ",9:"ë","=":"ê"},E:{E:"Ǝ","-":"Ē",1:"È",2:"É",3:"Ẽ",9:"Ë","=":"Ê"},i:{1:"ì",2:"í",3:"ĩ",9:"ï",9:"ö","=":"î"},I:{1:"Ì",2:"Í",3:"Ĩ",9:"Ï","=":"Î"},o:{1:"ò",2:"ó",3:"õ","=":"ô"},O:{1:"Ò",2:"Ó",3:"Õ",9:"Ö","=":"Ô"},u:{1:"ù",2:"ú",3:"ũ",9:"ü","=":"û"},U:{1:"Ù",2:"Ú",3:"Ũ",9:"Ü","=":"Û"},h:{a:"ሀ",u:"ሁ",i:"ሂ",A:"ሃ",E:"ሄ",e:"ህ",o:"ሆ","!":"ሇ",_:"ḫ",".":"ḥ"},l:{a:"ለ",u:"ሉ",i:"ሊ",A:"ላ",E:"ሌ",e:"ል",o:"ሎ","!":"ሏ"},H:{a:"ሐ",u:"ሑ",i:"ሒ",A:"ሓ",E:"ሔ",e:"ሕ",o:"ሖ","!":"ሗ",_:"Ḫ"},m:{a:"መ",u:"ሙ",i:"ሚ",A:"ማ",E:"ሜ",e:"ም",o:"ሞ","!":"ሟ"},S:{a:"ሠ",u:"ሡ",i:"ሢ",A:"ሣ",E:"ሤ",e:"ሥ",o:"ሦ","!":"ሧ",".":"Ṣ","|":"Š",6:"Ś"},r:{a:"ረ",u:"ሩ",i:"ሪ",A:"ራ",E:"ሬ",e:"ር",o:"ሮ","!":"ሯ"},s:{a:"ሰ",u:"ሱ",i:"ሲ",A:"ሳ",E:"ሴ",e:"ስ",o:"ሶ","!":"ሷ",".":"ṣ","|":"š",6:"ś"},v:{a:"ሸ",u:"ሹ",i:"ሺ",A:"ሻ",E:"ሼ",e:"ሽ",o:"ሾ","!":"ሿ"},q:{a:"ቀ",u:"ቁ",i:"ቂ",A:"ቃ",E:"ቄ",e:"ቅ",o:"ቆ","!":"ቇ"},b:{a:"በ",u:"ቡ",i:"ቢ",A:"ባ",E:"ቤ",e:"ብ",o:"ቦ","!":"ቧ",",":"፣"},B:{a:"ቨ",u:"ቩ",i:"ቪ",A:"ቫ",E:"ቬ",e:"ቭ",o:"ቮ","!":"ቯ"},t:{a:"ተ",u:"ቱ",i:"ቲ",A:"ታ",E:"ቴ",e:"ት",o:"ቶ","!":"ቷ",".":"ṭ"},c:{a:"ቸ",u:"ቹ",i:"ቺ",A:"ቻ",E:"ቼ",e:"ች",o:"ቾ","!":"ቿ",_:"č̣","|":"č",",":"፤"},x:{a:"ኀ",u:"ኁ",i:"ኂ",A:"ኃ",E:"ኄ",e:"ኅ",o:"ኆ","!":"ኇ"},n:{a:"ነ",u:"ኑ",i:"ኒ",A:"ና",E:"ኔ",e:"ን",o:"ኖ","!":"ኗ",3:"ñ"},N:{a:"ኘ",u:"ኙ",i:"ኚ",A:"ኛ",E:"ኜ",e:"ኝ",o:"ኞ","!":"ኟ",3:"Ñ"},"'":{a:"አ",u:"ኡ",i:"ኢ",A:"ኣ",E:"ኤ",e:"እ",o:"ኦ","!":"ኧ"},k:{a:"ከ",u:"ኩ",i:"ኪ",A:"ካ",E:"ኬ",e:"ክ",o:"ኮ","!":"ኯ"},K:{a:"ኸ",u:"ኹ",i:"ኺ",A:"ኻ",E:"ኼ",e:"ኽ",o:"ኾ"},w:{a:"ወ",u:"ዉ",i:"ዊ",A:"ዋ",E:"ዌ",e:"ው",o:"ዎ","!":"ዏ","=":"ʷ"},W:{a:"ዐ",u:"ዑ",i:"ዒ",A:"ዓ",E:"ዔ",e:"ዕ",o:"ዖ"},z:{a:"ዘ",u:"ዙ",i:"ዚ",A:"ዛ",E:"ዜ",e:"ዝ",o:"ዞ","!":"ዟ","|":"ž"},Z:{a:"ዠ",u:"ዡ",i:"ዢ",A:"ዣ",E:"ዤ",e:"ዥ",o:"ዦ","!":"ዧ","|":"Ž"},y:{a:"የ",u:"ዩ",i:"ዪ",A:"ያ",E:"ዬ",e:"ይ",o:"ዮ","!":"ዯ",1:"ỳ",2:"ý",3:"ỹ",9:"ÿ","=":"ŷ"},d:{a:"ደ",u:"ዱ",i:"ዲ",A:"ዳ",E:"ዴ",e:"ድ",o:"ዶ","!":"ዷ",".":"ḍ",",":"፦"},L:{a:"ዸ",u:"ዹ",i:"ዺ",A:"ዻ",E:"ዼ",e:"ዽ",o:"ዾ","!":"ዿ"},D:{a:"ጀ",u:"ጁ",i:"ጂ",A:"ጃ",E:"ጄ",e:"ጅ",o:"ጆ","!":"ጇ",".":"Ḍ"},g:{a:"ገ",u:"ጉ",i:"ጊ",A:"ጋ",E:"ጌ",e:"ግ",o:"ጎ","!":"ጏ","|":"ǧ"},G:{a:"ጘ",u:"ጙ",i:"ጚ",A:"ጛ",E:"ጜ",e:"ጝ",o:"ጞ","!":"ጟ","|":"Ǧ"},T:{a:"ጠ",u:"ጡ",i:"ጢ",A:"ጣ",E:"ጤ",e:"ጥ",o:"ጦ","!":"ጧ",".":"Ṭ"},C:{a:"ጨ",u:"ጩ",i:"ጪ",A:"ጫ",E:"ጬ",e:"ጭ",o:"ጮ","!":"ጯ"},p:{a:"ጰ",u:"ጱ",i:"ጲ",A:"ጳ",E:"ጴ",e:"ጵ",o:"ጶ","!":"ጷ",6:"ṗ"},j:{a:"ጸ",u:"ጹ",i:"ጺ",A:"ጻ",E:"ጼ",e:"ጽ",o:"ጾ","!":"ጿ"},J:{a:"ፀ",u:"ፁ",i:"ፂ",A:"ፃ",E:"ፄ",e:"ፅ",o:"ፆ","!":"ፇ"},f:{a:"ፈ",u:"ፉ",i:"ፊ",A:"ፋ",E:"ፌ",e:"ፍ",o:"ፎ","!":"ፏ",",":"፨"},P:{a:"ፐ",u:"ፑ",i:"ፒ",A:"ፓ",E:"ፔ",e:"ፕ",o:"ፖ","!":"ፗ",6:"Ṗ"},Q:{a:"ቐ",u:"ቑ",i:"ቒ",A:"ቓ",E:"ቔ",e:"ቕ",o:"ቖ"},"[":{a:"ቈ",i:"ቊ",A:"ቋ",E:"ቌ",e:"ቍ"},"]":{a:"ኈ",i:"ኊ",A:"ኋ",E:"ኌ",e:"ኍ"},"}":{a:"ኰ",i:"ኲ",A:"ኳ",E:"ኴ",e:"ኵ"},"{":{a:"ጐ",i:"ጒ",A:"ጓ",E:"ጔ",e:"ጕ"},M:{a:"ᎀ",i:"ᎁ",E:"ᎂ",e:"ᎃ"},"|":{a:"ᎄ",i:"ᎅ",E:"ᎆ",e:"ᎇ"},"<":{a:"ᎈ",i:"ᎉ",E:"ᎊ",e:"ᎋ"},">":{a:"ᎌ",i:"ᎍ",E:"ᎎ",e:"ᎏ"},Y:{1:"Ỳ",2:"Ý",3:"Ỹ",9:"Ÿ","=":"Ŷ"}},rtl:!1},jQuery.keyboard.language.de={language:"Deutsch (German)",display:{a:"✔:Übernehmen (Umschalt+Enter)",accept:"Übernehmen:Übernehmen (Umschalt+Enter)",alt:"AltGr:Alt Graph",b:"←:Rücktaste",bksp:"Rück:Rücktaste",c:"✖:Abbrechen (Esc)",cancel:"Abbrechen:Abbrechen (Esc)",clear:"C:Löschen",combo:"ö:Tottasten umschalten",dec:",:Dezimal",e:"↵:Eingabe",enter:"Enter:Eingabe",lock:"⇩:Feststelltaste",s:"⇧:Umschalttaste",shift:"Umschalt:Umschalttaste",sign:"±:Vorzeichen wechseln",space:" :Leertaste",t:"⇥:Tabulatortaste",tab:"⇥ Tab:Tabulatortaste"},wheelMessage:"Mausrad benutzen, um weitere Tasten zu sehen"},jQuery.keyboard.language.es={language:"Español (Spanish)",display:{a:"✔:Acceptar (Cambio+Inscribir)",accept:"Acceptar:Acceptar (Cambio+Inscribir)",alt:"AltGr:Grafemas Alternativos",b:"←:Retroceso",bksp:"Bksp:Retroceso",c:"✖:Cancelar (Esc)",cancel:"Cancelar:Cancelar (Esc)",clear:"C:Vaciar",combo:"ö:Alternar las Teclas Combinados",dec:",:Decimal",e:"↵:Inscribir",enter:"Inscribir:Inscribir",lock:"⇪ Bloq:Mayús",s:"⇧:Cambio",shift:"Cambio:Cambio",sign:"±:Cambiar Signo",space:" :Espacio",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Utilice la rueda del mouse para ver otras teclas"},jQuery.keyboard.language.fa={language:"فارسی (Farsi)",display:{a:"✔:تأیید (Shift+Enter)",accept:"تأیید:تأیید (Shift+Enter)",alt:"Lng:Alternate Graphemes",b:"←:⬅ Backspace",bksp:"⬅ Bksp:⬅ Backspace",c:"✖:انصراف (Esc)",cancel:"انصراف:انصراف (Esc)",clear:"C:Clear",combo:"ö:Toggle Combo Keys",dec:".:Decimal",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:Change Sign",space:" :Space",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Use mousewheel to see other keys",rtl:!0},jQuery.keyboard.language.fr={language:"Français (French)",display:{a:"✔:Valider (Shift+Enter)",accept:"Valider:Valider (Shift+Enter)",alt:"AltGr:Charactère alternatif",b:"←:Suppr arrière",bksp:"←Suppr:Suppr arrière",c:"✖:Annuler",cancel:"Annuler:Annuler (Échap)",clear:"C:Effacer",combo:"ö:Bacsuler les touches combo",dec:".:Decimal",e:"↵:Entrée",enter:"Entrée:Entrée",lock:"⇪ Verr Mag:Verouillage majuscule",s:"⇧:Majuscule",shift:"Maj:Majuscule",sign:"±:Change de signe",space:" :Espace",t:"⇥:Tabulation",tab:"⇥ Tab:Tabulation"},wheelMessage:"Utiliser la molette de la souris pour voir les autres lettres"},jQuery.keyboard.language.he={language:"עברית (Hebrew)",display:{a:"✔:אישור (Shift+Enter)",accept:"אישור:אישור (Shift+Enter)",alt:"Alt:תווים נוספים",b:"←:Backspace",bksp:"Bksp:Backspace",c:"✖:ביטול (Esc)",cancel:"ביטול:ביטול (Esc)",clear:"C:ניקוי",combo:"ö:Toggle Combo Keys",dec:".:נקודה עשרונית",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:שינוי סימן",space:" :רווח",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"ניתן להשתמש בגלגלת העכבר כדי לראות מקשים נוספים",rtl:!0},jQuery.keyboard.language.hu={language:"Magyar (Hungarian)",display:{a:"✔:Rendben (Shift+Enter)",accept:"Rendben:Rendben (Shift+Enter)",alt:"AltGr:Alternate Graphemes",b:"←:Backspace",bksp:"Töröl:Backspace",c:"✖:Cancel (Esc)",cancel:"Mégsem:Cancel (Esc)",clear:"C:Clear",combo:"ö:Toggle Combo Keys",dec:".:Decimal",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:Change Sign",space:" :Space",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Használd az egér görgetőt a többi billentyű átváltáshoz"},jQuery.keyboard.language.it={language:"Italiano (Italian)",display:{a:"✔:Accetta (Shift+Enter)",accept:"Accetta:Accetta (Shift+Enter)",alt:"AltGr:Grafemi Alternativi",b:"←:Cancella",bksp:"Canc:Cancella",c:"✖:Annulla (Esc)",cancel:"Annulla:Annulla (Esc)",clear:"C:Pulisci",combo:"ö:Tasti Combinati",dec:",:Decimale",e:"↵:Invio",enter:"Invio:Invio",lock:"⇪ Bloc:Bloc Maiusc",s:"⇧:Maiusc",shift:"Maiusc:Maiusc",sign:"±:Cambia Segno",space:" :Spazio",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Usa la rotella del mouse per vedere altri tasti"},jQuery.keyboard.language.lv={language:"Latviešu (Latvian)",display:{a:"✔:Pieņemt (Shift+Enter)",accept:"Pieņemt:Pieņemt (Shift+Enter)",alt:"AltGr:Alternēšanas taustiņš",b:"←:Atpakaļatkāpe",bksp:"Bksp:Atpakaļatkāpe",c:"✖:Atcelt (Esc)",cancel:"Atcelt:Atcelt (Esc)",clear:"C:Clear",combo:"ö:Toggle Combo Keys",dec:".:Decimal",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:Change Sign",space:" :Space",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Izmanto peles ritenīti, lai apskatītu citus taustiņus",combos:{"'":{c:"ć",C:"Ć",e:"é",E:"É",n:"ń",N:"Ń",o:"ó",O:"Ó",s:"ś",S:"Ś",z:"ź",Z:"Ź"},"¨":{a:"ä",A:"Ä",o:"ö",O:"Ö",u:"ü",U:"Ü"},"°":{a:"å",A:"Å",e:"ė",E:"Ė",g:"ġ",z:"ż",Z:"Ż"}},comboRegex:/([`\'~\^\"ao\u00a8\u00b0])([a-z])/gim},jQuery.keyboard.language.my={language:"ဗမာ (Burmese)",display:{a:"✔:Accept (Shift+Enter)",accept:"Accept:Accept (Shift+Enter)",alt:"AltGr:Alternate Graphemes",b:"←:Backspace",bksp:"Bksp:Backspace",c:"✖:Cancel (Esc)",cancel:"Cancel:Cancel (Esc)",clear:"C:ရှင်းလင်းရန်",combo:"ö:Toggle Combo Keys",dec:".:ဒသမ",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:Change Sign",space:" :Space",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"အခြားခလုတ်များကို မြင်ရစေရန် မောက်စ်ဝှီးလ်ကို အသုံးပြုပါ"},jQuery.keyboard.language.pl={language:"Polski (Polish)",display:{a:"✔:Akceptuj (Shift+Enter)",accept:"Accept:Akceptuj (Shift+Enter)",alt:"AltGr:Polskie znaki",b:"←:Cofnij",bksp:"Bksp:Cofnij",c:"✖:Anuluj (Esc)",cancel:"Cancel:Anuluj (Esc)",clear:"C:Czyść",combo:"ö:Klawisze kombo",dec:".:Dziesiętny",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:Zmień znak",space:" :Spacja",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Użyj rolki aby zobaczyć pozozstałe klawisze"},jQuery.keyboard.language.pt={language:"Português (Portuguese)",display:{a:"✔:Aceitar (Shift+Enter)",accept:"Aceitar:Concluir (Shift+Enter)",alt:"AltGr:Carateres Adicionais/CTRL+ALT",b:"←:Retroceder",bksp:"← Bksp:Retroceder",c:"✖:Cancelar/Escape (Esc)",cancel:"Cancel:Cancelar/Escape(Esc)",clear:"C:Limpar",combo:"ö:Acentuação Automática",dec:".:Decimal",e:"↵:Introduzir/Mudar de Linha",enter:"Enter↵:Introduzir/Mudar de Linha",lock:"⇪ Lock:CapsLock/Maiúsculas",s:"⇧:Shift/Maiúsculas",shift:"⇪ Shift:Maiúsculas-Minúsculas",sign:"±:Mudar Sinal",space:" :Espaço",t:"⇥:Tab/Tabela/Avançar",tab:"⇥ Tab:Tabela/Avançar"},wheelMessage:"Use a roda do rato/navegador para ver mais teclas",comboRegex:/([`\'~\^\"ao\u00b4])([a-z])/gim,combos:{"´":{a:"á",A:"Á",e:"é",E:"É",i:"í",I:"Í",o:"ó",O:"Ó",u:"ú",U:"Ú",y:"ý",Y:"Ý"},"'":{}}},jQuery.keyboard.language.ro={language:"Română (Romanian)",display:{a:"✔:Accept (Shift+Enter)",accept:"Accept:Accept (Shift+Enter)",alt:"AltGr:Alternate Graphemes",b:"←:Backspace",bksp:"Bksp:Backspace",c:"✖:Cancel (Esc)",cancel:"Cancel:Cancel (Esc)",clear:"C:Clear",combo:"ö:Toggle Combo Keys",dec:",:Decimal",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:Schimba semnul",space:" :Spatiu",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Foloseste rotita mouse-ului pentru a vedea si celelalte caractere"},jQuery.keyboard.language.ru={language:"Русский (Russian)",display:{a:"✔:Сохранить (Shift+Enter)",accept:"Сохранить:Сохранить (Shift+Enter)",alt:"РУС:Русская клавиатура",b:"←:Удалить символ слева",bksp:"⇦:Удалить символ слева",c:"✖:Отменить (Esc)",cancel:"Отменить:Отменить (Esc)",clear:"C:Очистить",combo:"ö:Toggle Combo Keys",dec:",:Decimal",e:"↵:Ввод",enter:"Ввод:Перевод строки",lock:"⇪ Lock:Caps Lock",s:"⇧:Верхний регистр",shift:"⇧:Верхний регистр",sign:"±:Сменить знак",space:"Пробел:",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Use mousewheel to see other keys"},jQuery.keyboard.language.sq={language:"Shqip (Albanian)",display:{a:"✔:Prano (Shift+Enter)",accept:"Prano:Prano (Shift+Enter)",alt:"Alt:Alternativ",b:"←:Hapësirën Mbrapa",bksp:"Bksp:Hapësirën Mbrapa",c:"✖:Anuloj (Arratisjes)",cancel:"Anuloj:Anuloj (Arratisjes)",clear:"C:Qartë",combo:"ö:Kombinimi",dec:".:Decimal",e:"↵:Shkruani",enter:"Shkruani:Shkruani",lock:"⇪ Bllokoj:Caps Lock",next:"Next ⇨",prev:"⇦ Prev",s:"⇧:Ndryshim",shift:"Ndryshim:Ndryshim",sign:"±:Ndryshimi Regjistrohu",space:" :Hapësirë",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Përdorimi mousewheel për të parë çelësat e tjera",comboRegex:/([`\'~\^\"ao\/])([a-z])/gim,combos:{"/":{d:"đ",D:"Đ",l:"ł",L:"Ł"}}},jQuery.keyboard.language.syr={language:"\\u0723\\u0718\\u072a\\u071d\\u0730\\u072c (Syriac)",display:{a:"✔:ܚܶܦܳܕ݂ܐ (ܙܰܘܥܶܐ + ܥܒܰܪܬܐ)",accept:"ܚܶܦܳܕ݂ܐ:(ܙܰܘܥܶܐ + ܥܒܰܪܬܐ)",alt:"AltGr:ܒܶܕܳܠܐ ܓܪܰܦܝܟ ܕܥܰܪܬܐ",b:"←:ܙܪܰܥܠܐ ܕܝ ܕܥܰܪܬܐ",bksp:"← Back:ܙܪܰܥܠܐ ܕܝ ܕܥܰܪܬܐ",c:"✖:ܥܪܰܩܬܐ",cancel:"Esc:ܥܪܰܩܬܐ",clear:"C:ܠܚܳܝܐ",combo:"ö:ܙܪܰܥܠܐ ܡܝܬ݂ܐ",dec:",:ܢܘܩܙܐ ܕܪܰܩܡܶܐ (ܐܷܢܓܠܝܫܳܝܐ\\ܐܰܡܶܪܝܟܳܝܐ)",e:"↵:ܥܒܳܪܐ",enter:"↵ Enter:ܥܒܳܪܐ",lock:"⇩:ܐܷܬ݂ܘܳܬ݂ܶܐ ܙܰܘܥܶܐ ",s:"⇧:ܙܰܘܥܶܐ",shift:"⇧ Shift:ܙܰܘܥܶܐ",sign:"±:ܒܶܕܳܠܐ ܦ݁ܳܣܝܬܝܦ Space ܢܶܓܰܬܝܦ",space:"\\u0020:ܕܘܟܬ݂ܐ ܟ݂ܠܝܬ݂ܐ",t:"⇥:ܙܪܰܥܠܐ ܕܷܟܠܳܝܐ ܗܳܪܝܙܳܢܳܝܐ",tab:"⇥ Tab:ܙܪܰܥܠܐ ܕܷܟܠܳܝܐ ܗܳܪܝܙܳܢܳܝܐ"},wheelMessage:"Mausrad benutzen, um weitere Tasten zu sehen",rtl:!0};/*! jQuery UI Virtual Keyboard - Microsoft Generated Layouts */ +/*! Layouts from greywyvern.com */ +jQuery.keyboard.layouts.sq={name:"Albanian (Shqip)",normal:["\\ 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} q w e r t z u i o p ç [ ]","a s d f g h j k l ë @ {enter}","{s} < y x c v b n m , . / {s}","{space} {alt} {accept}"],shift:['| ! " # $ % ^ & * ( ) _ + {b}',"{t} Q W E R T Z U I O P Ç { }","A S D F G H J K L Ë ' {enter}","{s} > Y X C V B N M ; : ? {s}","{space} {alt} {accept}"],alt:["{empty} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {b}","{t} \\ | {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ÷ ß ¤","{empty} đ Đ [ ] {empty} {empty} ł Ł $ × {enter}","{s} {empty} {empty} {empty} {empty} @ { } § < > {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["sq"]},jQuery.keyboard.layouts.ar={name:"Arabic (العربية)",rtl:!0,normal:["ذ 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} ض ص ث ق ف غ ع ه خ ح ج د \\","ش س ي ب ل ا ت ن م ك ط {enter}","{s} ئ ء ؤ ر ل ى ة و ز ظ {s}","{space} {alt} {accept}"],shift:["ّ ! @ # $ % ^ & * ( ) _ + {b}","{t} َ ً ُ ٌ ل إ ‘ ÷ × ؛ < > |",'ِ ٍ ] [ ل أ ـ ، / : " {enter}',"{s} ~ ْ } { ل آ ’ , . ؟ {s}","{space} {alt} {accept}"],alt:["{empty} ¡ ² ³ ¤ € ¼ ½ ¾ ‘ ’ ¥ × {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} ¹ {empty} {empty} £ {empty} {empty} {empty} {empty} {empty} {empty} {empty} ÷ {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["ar"]},jQuery.keyboard.layouts.as={name:"Assamese (অসমীয়া)",normal:["+ ১ ২ ৩ ৪ ৫ ৬ ৭ ৮ ৯ ০ - ৃ {b}","{t} ৌ ৈ া ী ূ ৱ হ গ দ জ ড {enter}","ো ে ্ ি ু প ৰ ক ত চ ট ়","{s} ৎ ং ম ন ব ল স , . য {s}","{space} {alt} {accept}"],shift:["? { } ্ৰ ৰ্ জ্ৰ ক্ষ ক্ৰ শ্ৰ ( ) {empty} ঋ {b}","{t} ঔ ঐ আ ঈ ঊ ভ ঙ ঘ ধ ঝ ঢ {enter}","ও এ অ ই উ ফ {empty} খ থ ছ ঠ ঞ","{s} ঃ ঁ ণ ৷ \" ' শ ষ ; য় {s}","{space} {alt} {accept}"],alt:["{empty} ১ ২ ৩ ৪ ৫ ৬ ৭ ৮ ৯ ০ {empty} ৢ {b}","{t} ৗ {empty} {empty} ৣ {empty} {empty} {empty} {empty} {empty} {empty} ড় {enter}","৴ ৶ ৸ ৢ {empty} {empty} ৰ {empty} {empty} {empty} {empty} {empty}","{s} {empty} ৺ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ৠ {b}","{t} {empty} {empty} {empty} ৡ {empty} {empty} {empty} {empty} {empty} {empty} ঢ় {enter}","৵ ৷ ৹ ঌ {empty} {empty} ৱ {empty} {empty} {empty} {empty} {empty}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["as"]},jQuery.keyboard.layouts["az-Cyrl"]={name:"Azerbaijani Cyrillic (Азәрбајҹанҹа)",normal:["` 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} ј ү у к е н г ш һ з х ҹ \\","ф ы в а п р о л д ж ҝ {enter}","{s} \\ ә ч с м и т ғ б ө . {s}","{space} {accept}"],shift:['~ ! " № ; % : ? * ( ) _ + {b}',"{t} Ј Ү У К Е Н Г Ш Һ З Х Ҹ /","Ф Ы В А П Р О Л Д Ж Ҝ {enter}","{s} | Ә Ч С М И Т Ғ Б Ө , {s}","{space} {accept}"],lang:["az-Cyrl"]},jQuery.keyboard.layouts.az={name:"Azerbaijani Latin (Azərbaycanca)",normal:["` 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} q ü e r t y u i o p ö ğ \\","a s d f g h j k l ı ə {enter}","{s} z x c v b n m ç ş . {s}","{space} {accept}"],shift:['~ ! " Ⅶ ; % : ? * ( ) _ + {b}',"{t} Q Ü E R T Y U İ O P Ö Ğ /","A S D F G H J K L I Ə {enter}","{s} Z X C V B N M Ç Ş , {s}","{space} {accept}"],lang:["az"]},jQuery.keyboard.layouts.be={name:"Belarusian (Беларуская)",normal:["ё 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} й ц у к е н г ш ў з х ' \\","ф ы в а п р о л д ж э {enter}","{s} / я ч с м і т ь б ю . {s}","{space} {accept}"],shift:['Ё ! " № ; % : ? * ( ) _ + {b}',"{t} Й Ц У К Е Н Г Ш Ў З Х ' /","Ф Ы В А П Р О Л Д Ж Э {enter}","{s} | Я Ч С М І Т Ь Б Ю , {s}","{space} {accept}"],lang:["be"]},jQuery.keyboard.layouts["nl-BE"]={name:"Belgian (Belgische / Belge)",normal:["² & é \" ' ( § è ! ç à ) - {b}","{t} a z e r t y u i o p ^ $ μ","q s d f g h j k l m ù {enter}","{s} < w x c v b n , ; : = {s}","{space} {alt} {accept}"],shift:["³ 1 2 3 4 5 6 7 8 9 0 ° _ {b}","{t} A Z E R T Y U I O P ¨ * £","Q S D F G H J K L M % {enter}","{s} > W X C V B N ? . / + {s}","{space} {alt} {accept}"],alt:["{empty} | @ # {empty} {empty} ^ {empty} {empty} { } {empty} {empty} {b}","{t} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ] `","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ´ {enter}","{s} \\ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~ {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["nl-BE","fr-BE"]},jQuery.keyboard.layouts.bn={name:"Bengali (বাংলা)",normal:["1 2 3 4 5 6 7 8 9 0 - ৃ {b}","{t} ৌ ৈ া ী ূ ব হ গ দ জ ড {enter}","ো ে ্ ি ু প র ক ত চ ট ়","{s} {empty} ং ম ন ব ল স , . য {s}","{space} {alt} {accept}"],shift:["{empty} {empty} ্র র্ জ্র ত্ষ ক্র শ্র ( ) ঃ ঋ {b}","{t} ঔ ঐ আ ঈ ঊ ভ ঙ ঘ ধ ঝ ঢ {enter}","ও এ অ ই উ ফ {empty} খ থ ছ ঠ ঞ","{s} {empty} ঁ ণ {empty} {empty} {empty} শ ষ { য় {s}","{space} {alt} {accept}"],alt:["১ ২ ৩ ৪ ৫ ৬ ৭ ৮ ৯ ০ {empty} ৢ {b}","{t} ৗ {empty} {empty} ৣ {empty} {empty} {empty} {empty} {empty} {empty} ড় {enter}","৴ ৶ ৸ ৢ {empty} {empty} ৰ {empty} {empty} {empty} {empty} {empty}","{s} {empty} ৺ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ৠ {b}","{t} {empty} {empty} {empty} ৡ {empty} {empty} {empty} {empty} {empty} {empty} ঢ় {enter}","৵ ৷ ৹ ঌ {empty} {empty} ৱ {empty} {empty} {empty} {empty} {empty}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["bn"]},jQuery.keyboard.layouts.bs={name:"Bosnian (Bosanski)",normal:["¸ 1 2 3 4 5 6 7 8 9 0 ' + {b}","{t} q w e r t z u i o p š đ ž","a s d f g h j k l č ć {enter}","{s} < y x c v b n m , . - {s}","{space} {alt} {accept}"],shift:['¨ ! " # $ % & / ( ) = ? * {b}',"{t} Q W E R T Z U I O P Š Đ Ž","A S D F G H J K L Č Ć {enter}","{s} > Y X C V B N M ; : _ {s}","{space} {alt} {accept}"],alt:["{empty} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {b}","{t} \\ | € {empty} {empty} {empty} {empty} {empty} {empty} {empty} ÷ × ¤","{empty} {empty} {empty} [ ] {empty} {empty} ł Ł {empty} ß {enter}","{s} {empty} {empty} {empty} {empty} @ { } § < > © {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["bs"]},jQuery.keyboard.layouts["bg-ph"]={name:"Bulgarian Phonetic (Български Фонетичен)",normal:["ч 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} я в е р т ъ у и о п ш щ ю","а с д ф г х й к л ; ' {enter}","{s} з ь ц ж б н м , . / {s}","{space} {accept}"],shift:["Ч ! @ # $ % ^ & * ( ) _ + {b}","{t} Я В Е Р Т Ъ У И О П Ш Щ Ю",'А С Д Ф Г Х Й К Л : " {enter}',"{s} З Ь Ц Ж Б Н М < > ? {s}","{space} {accept}"],lang:["bg-ph"]},jQuery.keyboard.layouts.bg={name:"Bulgarian BDS (Български)",normal:["` 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} , у е и ш щ к с д з ц ; (","ь я а о ж г т н В м ч {enter}","{s} Ю й ъ э ф х п р л б {s}","{space} {accept}"],shift:['~ ! ? + " % = : / _ № І V {b}',"{t} ы У Е И Ш Щ К С Д З Ц § )","Ь Я А О Ж Г Т Н В М Ч {enter}","{s} ю Й Ъ Э Ф Х П Р Л Б {s}","{space} {accept}"],lang:["bg"]},jQuery.keyboard.layouts.my={name:"Burmese (မြန်မာဘာသာ)",normal:["္` ၁ ၂ ၃ ၄ ၅ ၆ ၇ ၈ ၉ ၀ - = {b}","{t} ဆ တ န မ အ ပ က င သ စ ဟ ‘ ၏","ေ ျ ိ ် ါ ့ ြ ု ူ း ဒ {enter}","{s} ဖ ထ ခ လ ဘ ည ာ ယ . ။ {s}","{space} {accept}"],shift:["~ ဍ ဎ ဋ ကျပ် % / ရ ဂ ( ) _ + {b}","{t} ဩ ၀ ဿ ဣ ဤ ၌ ဉ ၍ ဥ ဏ ဧ ’ ဋ္ဌ","ဗ ှ ီ င်္ ွ ံ ဲ ု ူ ါ် ဓ {enter}","{s} ဇ ဌ ဃ ဠ ဦ ဈ ဪ ရ ရ ၊ {s}","{space} {accept}"],lang:["my"]},jQuery.keyboard.layouts["fr-CA"]={name:"Canadian French (Canadienne-française)",normal:["# 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} q w e r t y u i o p ^ ¸ <","a s d f g h j k l ; ` {enter}","{s} « z x c v b n m , . é {s}","{space} {alt} {accept}"],shift:['| ! " / $ % ? & * ( ) _ + {b}',"{t} Q W E R T Y U I O P ^ ¨ >","A S D F G H J K L : ` {enter}","{s} » Z X C V B N M ' . É {s}","{space} {alt} {accept}"],alt:["\\ ± @ £ ¢ ¤ ¬ ¦ ² ³ ¼ ½ ¾ {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} § ¶ [ ] }","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~ { {enter}","{s} ° {empty} {empty} {empty} {empty} {empty} {empty} µ ¯ ´ {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["fr-CA"]},jQuery.keyboard.layouts["zh-Bopo"]={name:"Chinese Bopomofo IME (中文注音符号)",normal:["€ ㄅ ㄉ ˇ ˋ ㄓ ˊ ˙ ㄚ ㄞ ㄢ ㄦ = {b}","{t} ㄆ ㄊ ㄍ ㄐ ㄔ ㄗ ㄧ ㄛ ㄟ ㄣ [ ] \\","ㄇ ㄋ ㄎ ㄑ ㄕ ㄘ ㄨ ㄜ ㄠ ㄤ ' {enter}","{s} ㄈ ㄌ ㄏ ㄒ ㄖ ㄙ ㄩ ㄝ ㄡ ㄥ {s}","{space} {accept}"],shift:["~ ! @ # $ % ^ & * ) ( _ + {b}","{t} q w e r t y u i o p { } |",'a s d f g h j k l : " {enter}',"{s} z x c v b n m < > ? {s}","{space} {accept}"],lang:["zh-Bopo"]},jQuery.keyboard.layouts.zh={name:"Chinese Cangjie IME (中文仓颉输入法)",normal:["€ 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} 手 田 水 口 廿 卜 山 戈 人 心 [ ] \\","日 尸 木 火 土 竹 十 大 中 ; ' {enter}","{s} Z 難 金 女 月 弓 一 , . / {s}","{space} {accept}"],shift:["~ ! @ # $ % ^ & * ) ( _ + {b}","{t} q w e r t y u i o p { } |",'a s d f g h j k l : " {enter}',"{s} z x c v b n m < > ? {s}","{space} {accept}"],lang:["zh"]},jQuery.keyboard.layouts.hr={name:"Croatian (Hrvatski)",normal:["¸ 1 2 3 4 5 6 7 8 9 0 ' + {b}","{t} q w e r t z u i o p š đ ž","a s d f g h j k l č ć {enter}","{s} < y x c v b n m , . - {s}","{space} {alt} {accept}"],shift:['¨ ! " # $ % & / ( ) = ? * {b}',"{t} Q W E R T Z U I O P Š Đ Ž","A S D F G H J K L Č Ć {enter}","{s} > Y X C V B N M ; : _ {s}","{space} {alt} {accept}"],alt:["{empty} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {b}","{t} \\ | € {empty} {empty} {empty} {empty} {empty} {empty} {empty} ÷ × ¤","{empty} {empty} {empty} [ ] {empty} {empty} ł Ł {empty} ß {enter}","{s} {empty} {empty} {empty} {empty} @ { } § < > © {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["hr"]},jQuery.keyboard.layouts.cs={name:"Czech (Česky)",normal:["; + ě š č ř ž ý á í é = ´ {b}","{t} q w e r t y u i o p ú ) ¨","a s d f g h j k l ů § {enter}","{s} \\ z x c v b n m , . - {s}","{space} {alt} {accept}"],shift:["° 1 2 3 4 5 6 7 8 9 0 % ˇ {b}","{t} Q W E R T Y U I O P / ( '",'A S D F G H J K L " ! {enter}',"{s} | Z X C V B N M ? : _ {s}","{space} {alt} {accept}"],alt:["` ! @ # $ % ^ & * ( ) - = {b}","{t} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ] \\","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ; ¤ {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} < > / {s}","{space} {alt} {accept}"],"alt-shift":["~ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} _ + {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { } |","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} : ^ {enter}","{s} ˝ {empty} {empty} {empty} {empty} {empty} {empty} {empty} × ÷ ? {s}","{space} {alt} {accept}"],lang:["cs"]},jQuery.keyboard.layouts.da={name:"Danish (Dansk)",normal:["½ 1 2 3 4 5 6 7 8 9 0 + ´ {b}","{t} q w e r t y u i o p å ¨ '","a s d f g h j k l æ ø {enter}","{s} < z x c v b n m , . - {s}","{space} {alt} {accept}"],shift:['§ ! " # ¤ % & / ( ) = ? ` {b}',"{t} Q W E R T Y U I O P Å ^ *","A S D F G H J K L Æ Ø {enter}","{s} > Z X C V B N M ; : _ {s}","{space} {alt} {accept}"],alt:["{empty} {empty} @ £ $ € {empty} { [ ] } {empty} | {b}","{t} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~ {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} \\ {empty} {empty} {empty} {empty} {empty} {empty} μ {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} Μ {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["da"]},jQuery.keyboard.layouts["fa-AF"]={name:"Dari (دری)",rtl:!0,normal:["{ZWJ} ۱ ۲ ۳ ۴ ۵ ۶ ۷ ۸ ۹ ۰ - = {b}","{t} ض ص ث ق ف غ ع ه خ ح ج چ \\","ش س ی ب ل ا ت ن م ک گ {enter}","{s} ظ ط ز ر ذ د پ و . / {s}","{space} {alt} {accept}"],shift:["÷ ! ٬ ٫ ؋ ٪ × ، * ) ( ـ + {b}","{t} ْ ٌ ٍ ً ُ ِ َ ّ ] [ } { |","ؤ ئ ي إ أ آ ة » « : ؛ {enter}","{s} ك ٓ ژ ٰ {ZWNJ} ٔ ء > < ؟ {s}","{space} {alt} {accept}"],alt:["~ ` @ # $ % ^ & • {LRM} {RLM} _ {empty} {b}","{t} ° {empty} € ﴾ ﴿ ٖ ٙ ٕ ' \" ځ څ ?","ښ ۍ ى ې ڷ ٱ ټ ڼ ں ; ګ {enter}","{s} ے ڑ ږ ړ ڈ ډ ٹ , ۇ ۉ {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["fa-AF"]},jQuery.keyboard.layouts["hi-Deva"]={name:"Devanagari (देवनागरी)",normal:["ॊ 1 2 3 4 5 6 7 8 9 0 - ृ {b}","{t} ौ ै ा ी ू ब ह ग द ज ड ़ ॉ","ो े ् ि ु प र क त च ट {enter}","{s} ॆ ं म न व ल स , . य {s}","{space} {alt} {accept}"],shift:["ऒ ऍ ॅ ्र र् ज्ञ त्र क्ष श्र ( ) ः ऋ {b}","{t} औ ऐ आ ई ऊ भ ङ घ ध झ ढ ञ ऑ","ओ ए अ इ उ फ ऱ ख थ छ ठ {enter}","{s} ऎ ँ ण ऩ ऴ ळ श ष । य़ {s}","{space} {alt} {accept}"],alt:["{empty} १ २ ३ ४ ५ ६ ७ ८ ९ ० {empty} ॄ {b}","{t} {empty} {empty} {empty} ॣ {empty} {empty} {empty} ग़ {empty} ज़ ड़ {empty} {empty}","{empty} {empty} {empty} ॢ {empty} {empty} {empty} क़ {empty} ॒ {empty} {enter}","{s} ॓ {empty} ॔ {empty} {empty} {empty} {empty} ॰ ॥ {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ॠ {b}","{t} {empty} {empty} {empty} ॡ {empty} {empty} {empty} {empty} {empty} {empty} ढ़ {empty} {empty}","{empty} {empty} {empty} ऌ {empty} फ़ {empty} ख़ {empty} {empty} ॑ {enter}","{s} {empty} ॐ {empty} {empty} {empty} {empty} {empty} {empty} ऽ {empty} {s}","{space} {alt} {accept}"],lang:["hi-Deva"]},jQuery.keyboard.layouts.dingbats={name:"Dingbats (Dingbats)",normal:["❤ ➊ ➋ ➌ ➍ ➎ ➏ ➐ ➑ ➒ ➓ ➕ ✂ {b}","{t} ✔ ✘ ✚ ✝ ✢ ✦ ✩ ✬ ✶ ✻ ❄ ✳ ✷","➙ ➵ ➸ ➔ ➝ ➩ ➤ ➳ ➭ ➨ ➟ {enter}","{s} ✌ ❏ ✿ ❇ ❗ ❓ ✏ ✒ ✉ ❛ ❜ {s}","{space} {alt} {accept}"],shift:["❥ ➀ ➁ ➂ ➃ ➄ ➅ ➆ ➇ ➈ ➉ ➖ ✄ {b}","{t} ✅ ✕ ✙ ✞ ✣ ✧ ✪ ✫ ✱ ✼ ❅ ✴ ✸","➚ ➶ ➹ ➜ ➞ ➪ ➣ ➼ ➮ ➦ ➠ {enter}","{s} ✋ ❐ ❀ ❈ ❕ ❔ ✐ ✑ ✆ ❝ ❞ {s}","{space} {alt} {accept}"],alt:["❦ ❶ ❷ ❸ ❹ ❺ ❻ ❼ ❽ ❾ ❿ ❌ ✁ {b}","{t} ✓ ✗ ✛ ✟ ✤ ✨ ✭ ✮ ✲ ✽ ❆ ✵ ✹","➘ ➴ ➷ ➺ ➡ ➫ ➢ ➽ ➯ ➥ ➾ {enter}","{s} ✊ ❑ ❁ ❊ ❢ ➰ ✎ ❍ ✈ ❡ ❟ {s}","{space} {alt} {accept}"],"alt-shift":["❧ ❨ ❩ ❪ ❫ ❬ ❭ ❮ ❯ ❰ ❱ ➗ ✃ {b}","{t} {empty} ✖ ✜ ✠ ✥ ❖ ✰ ✯ ❉ ✾ ❃ ✡ ✺","❘ ❙ ❚ ➻ ❲ ➬ ➛ ❳ ➱ ➧ ➲ {enter}","{s} ✍ ❒ ❂ ❋ ❣ ➿ ❴ ❎ ✇ ❵ ❠ {s}","{space} {alt} {accept}"],lang:["dingbats"]},jQuery.keyboard.layouts.dv={name:"Divehi (ދިވެހިބަސް)",normal:["` 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} ޫ ޮ ާ ީ ޭ ގ ރ މ ތ ހ ލ [ ]","ި ު ް ަ ެ ވ އ ނ ކ ފ ﷲ {enter}","{s} \\ ޒ ޑ ސ ޔ ޅ ދ ބ ށ ޓ ޯ {s}","{space} {alt} {accept}"],shift:["~ ! @ # $ % ^ & * ) ( _ + {b}","{t} × ’ “ / : ޤ ޜ ޣ ޠ ޙ ÷ { }",'< > . ، " ޥ ޢ ޘ ޚ ޡ ؛ {enter}',"{s} | ޖ ޕ ޏ ޗ ޟ ޛ ޝ \\ ޞ ؟ {s}","{space} {alt} {accept}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} , {empty} {empty} {empty} {empty} {empty} {empty} {empty} ; {enter}","{s} {empty} {empty} {empty} {empty} {ZWJ} {ZWNJ} {LRM} {RLM} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} , {empty} {empty} {empty} {empty} {empty} {empty} {empty} ; {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["dv"]},jQuery.keyboard.layouts.nl={name:"Dutch (Nederlands)",normal:["@ 1 2 3 4 5 6 7 8 9 0 / ° {b}","{t} q w e r t y u i o p ¨ * <","a s d f g h j k l + ´ {enter}","{s} ] z x c v b n m , . - {s}","{space} {alt} {accept}"],shift:["§ ! \" # $ % & _ ( ) ' ? ~ {b}","{t} Q W E R T Y U I O P ^ | >","A S D F G H J K L ± ` {enter}","{s} [ Z X C V B N M ; : = {s}","{space} {alt} {accept}"],alt:["¬ ¹ ² ³ ¼ ½ ¾ £ { } {empty} \\ ¸ {b}","{t} {empty} {empty} € ¶ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} ß {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} ¦ « » ¢ {empty} {empty} {empty} µ {empty} · {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["nl"]},jQuery.keyboard.layouts["en-dvorak"]={name:"Dvorak (Dvorak)",normal:["` 1 2 3 4 5 6 7 8 9 0 [ ] {b}","{t} ' , . p y f g c r l / = \\","a o e u i d h t n s - {enter}","{s} ; q j k x b m w v z {s}","{space} {accept}"],shift:["~ ! @ # $ % ^ & * ( ) { } {b}",'{t} " < > P Y F G C R L ? + |',"A O E U I D H T N S _ {enter}","{s} : Q J K X B M W V Z {s}","{space} {accept}"],lang:["en-dvorak"]},jQuery.keyboard.layouts.hy={name:"Eastern Armenian (Հայերեն արեւելք)",normal:["՝ : ձ յ ՛ , - . « » օ ռ ժ {b}","{t} խ ւ է ր տ ե ը ի ո պ չ ջ '","ա ս դ ֆ ք հ ճ կ լ թ փ {enter}","{s} զ ց գ վ բ ն մ շ ղ ծ {s}","{space} {accept}"],shift:["՜ 1 Ձ Յ 3 4 9 և ( ) Օ Ռ Ժ {b}","{t} Խ Ւ Է Ր Տ Ե Ը Ի Ո Պ Չ Ջ ՞","Ա Ս Դ Ֆ Ք Հ Ճ Կ Լ Թ Փ {enter}","{s} Զ Ց Գ Վ Բ Ն Մ Շ Ղ Ծ {s}","{space} {accept}"],lang:["hy"]},jQuery.keyboard.layouts.et={name:"Estonian (Eesti)",normal:["ˇ 1 2 3 4 5 6 7 8 9 0 + ´ {b}","{t} q w e r t y u i o p ü õ '","a s d f g h j k l ö ä {enter}","{s} < z x c v b n m , . - {s}","{space} {alt} {accept}"],shift:['~ ! " # ¤ % & / ( ) = ? ` {b}',"{t} Q W E R T Y U I O P Ü Õ *","A S D F G H J K L Ö Ä {enter}","{s} > Z X C V B N M ; : _ {s}","{space} {alt} {accept}"],alt:["{empty} {empty} @ £ $ € {empty} { [ ] } \\ {empty} {b}","{t} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} § ½","{empty} š {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ^ {enter}","{s} | ž {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} @ £ $ {empty} {empty} { [ ] } \\ {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} § ½","{empty} Š {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ^ {enter}","{s} | Ž {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["et"]},jQuery.keyboard.layouts.fo={name:"Faeroese (Føroyskt)",normal:["½ 1 2 3 4 5 6 7 8 9 0 + ´ {b}","{t} q w e r t y u i o p å ð '","a s d f g h j k l æ ø {enter}","{s} < z x c v b n m , . - {s}","{space} {alt} {accept}"],shift:['§ ! " # ¤ % & / ( ) = ? ` {b}',"{t} Q W E R T Y U I O P Å Ð *","A S D F G H J K L Æ Ø {enter}","{s} > Z X C V B N M ; : _ {s}","{space} {alt} {accept}"],alt:["{empty} {empty} @ £ $ € {empty} { [ ] } {empty} | {b}","{t} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} ¨ ~ {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ^ {enter}","{s} \\ {empty} {empty} {empty} {empty} {empty} {empty} µ {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["fo"]},jQuery.keyboard.layouts.fa={name:"Farsi (فارسی)",rtl:!0,normal:["پ 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} ض ص ث ق ف غ ع ه خ ح ج چ ژ","ش س ي ب ل ا ت ن م گ ك {enter}","{s} ظ ط ز ر ذ د ئ و . / {s}","{space} {alt} {accept}"],shift:["ّ ! @ # $ % ^ & * ( ) _ + {b}","{t} َ ً ُ ٌ ل إ ‘ ÷ × ؛ < > |",'ِ ٍ ] [ ل أ ـ ، \\ : " {enter}',"{s} ~ ْ } { ل آ ء , . ؟ {s}","{space} {alt} {accept}"],alt:["{empty} ¡ ² ³ ¤ € ¼ ½ ¾ ‘ ’ ¥ × {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} ¹ {empty} {empty} £ {empty} {empty} {empty} {empty} {empty} {empty} {empty} ÷ {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["fa"]},jQuery.keyboard.layouts.fi={name:"Finnish (Suomi)",normal:["§ 1 2 3 4 5 6 7 8 9 0 + ´ {b}","{t} q w e r t y u i o p å ¨ '","a s d f g h j k l ö ä {enter}","{s} < z x c v b n m , . - {s}","{space} {alt} {accept}"],shift:['½ ! " # ¤ % & / ( ) = ? ` {b}',"{t} Q W E R T Y U I O P Å ^ *","A S D F G H J K L Ö Ä {enter}","{s} > Z X C V B N M ; : _ {s}","{space} {alt} {accept}"],alt:["{empty} {empty} @ £ $ € {empty} { [ ] } \\ {empty} {b}","{t} â {empty} € {empty} ŧ {empty} {empty} ï õ {empty} {empty} ~ {empty}","á š đ ǥ ǧ ȟ {empty} ǩ {empty} ø æ {enter}","{s} | ž {empty} č ǯ ʒ ŋ µ {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t}  {empty} {empty} {empty} Ŧ {empty} {empty} Ï Õ {empty} {empty} {empty} {empty}","Á Š Đ Ǥ Ǧ Ȟ {empty} Ǩ {empty} Ø Æ {enter}","{s} {empty} Ž {empty} Č Ǯ Ʒ Ŋ {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["fi"]},jQuery.keyboard.layouts.fr={name:"French (Français)",normal:["² & é \" ' ( - è _ ç à ) = {b}","{t} a z e r t y u i o p ^ $ *","q s d f g h j k l m ù {enter}","{s} < w x c v b n , ; : ! {s}","{space} {alt} {accept}"],shift:["³ 1 2 3 4 5 6 7 8 9 0 ° + {b}","{t} A Z E R T Y U I O P ¨ £ μ","Q S D F G H J K L M % {enter}","{s} > W X C V B N ? . / § {s}","{space} {alt} {accept}"],alt:["{empty} {empty} ~ # { [ | ` \\ ^ @ ] } {b}","{t} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ¤ {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["fr"]},jQuery.keyboard.layouts.ka={name:"Georgian (ქართული)",normal:["„ ! ? № § % : . ; , / – = {b}","{t} ღ ჯ უ კ ე ნ გ შ წ ზ ხ ც (","ფ ძ ვ თ ა პ რ ო ლ დ ჟ {enter}","{s} ჭ ჩ ყ ს მ ი ტ ქ ბ ჰ {s}","{space} {alt} {accept}"],shift:["“ 1 2 3 4 5 6 7 8 9 0 - + {b}","{t} ღ ჯ უ კ ე ნ გ შ წ ზ ხ ც )","ფ ძ ვ თ ა პ რ ო ლ დ ჟ {enter}","{s} ჭ ჩ ყ ს მ ი ტ ქ ბ ჰ {s}","{space} {alt} {accept}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} ჱ {empty} {empty} {empty} {empty} {empty} ჴ {empty} {empty}","ჶ {empty} ჳ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} ჲ {empty} {empty} {empty} ჵ {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["ka"]},jQuery.keyboard.layouts.de={name:"German (Deutsch)",normal:["^ 1 2 3 4 5 6 7 8 9 0 ß ´ {b}","{t} q w e r t z u i o p ü + #","a s d f g h j k l ö ä {enter}","{s} < y x c v b n m , . - {s}","{space} {alt} {accept}"],shift:['° ! " § $ % & / ( ) = ? ` {b}',"{t} Q W E R T Z U I O P Ü * '","A S D F G H J K L Ö Ä {enter}","{s} > Y X C V B N M ; : _ {s}","{space} {alt} {accept}"],alt:["{empty} {empty} ² ³ {empty} {empty} {empty} { [ ] } \\ {empty} {b}","{t} @ {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~ {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} ¦ {empty} {empty} {empty} {empty} {empty} {empty} µ {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["de"]},jQuery.keyboard.layouts.el={name:"Greek (Ελληνικά)",normal:["` 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} ; ς ε ρ τ υ θ ι ο π [ ] \\","α σ δ φ γ η ξ κ λ ΄ ' {enter}","{s} < ζ χ ψ ω β ν μ , . / {s}","{space} {alt} {accept}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {b}","{t} : ^ Ε Ρ Τ Υ Θ Ι Ο Π { } |",'Α Σ Δ Φ Γ Η Ξ Κ Λ ¨ " {enter}',"{s} > Ζ Χ Ψ Ω Β Ν Μ < > ? {s}","{space} {alt} {accept}"],alt:["{empty} {empty} ² ³ £ § ¶ {empty} ¤ ¦ º ± ½ {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} “ ” ¬","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ΅ {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["el"]},jQuery.keyboard.layouts.gu={name:"Gujarati (ગુજરાતી)",normal:["1 2 3 4 5 6 7 8 9 0 - ૃ {b}","{t} ૌ ૈ ા ી ૂ બ હ ગ દ જ ડ ઼ ૉ","ો ે ્ િ ુ પ ર ક ત ચ ટ {enter}","{s} {empty} ં મ ન વ લ સ , . ય {s}","{space} {alt} {accept}"],shift:["ઍ ૅ ્ર ર્ જ્ઞ ત્ર ક્ષ શ્ર ( ) ઃ ઋ {b}","{t} ઔ ઐ આ ઈ ઊ ભ ઙ ઘ ધ ઝ ઢ ઞ ઑ","ઓ એ અ ઇ ઉ ફ {empty} ખ થ છ ઠ {enter}","{s} {empty} ઁ ણ {empty} {empty} ળ શ ષ । {empty} {s}","{space} {alt} {accept}"],alt:["૧ ૨ ૩ ૪ ૫ ૬ ૭ ૮ ૯ ૦ {empty} ૄ {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ॥ {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ૠ {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} ૐ {empty} {empty} {empty} {empty} {empty} {empty} ઽ {empty} {s}","{space} {alt} {accept}"],lang:["gu"]},jQuery.keyboard.layouts.he={name:"Hebrew (עברית)",rtl:!0,normal:["~ 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} / ' ק ר א ט ו ן ם פ \\ {enter}","ש ד ג כ ע י ח ל ך ף , ] [","{s} ז ס ב ה נ מ צ ת ץ . {s}","{space} {alt} {accept}"],shift:["` ! @ # $ % ^ & * ) ( _ + {b}","{t} Q W E R T Y U I O P | {enter}",'A S D F G H J K L : " } {',"{s} Z X C V B N M > < ? {s}","{space} {alt} {accept}"],alt:["{empty} {empty} {empty} {empty} ₪ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} € {empty} {empty} {empty} װ {empty} {empty} {empty} {empty} {enter}","{empty} {empty} {empty} {empty} {empty} ײ ױ {empty} {empty} {empty} {empty} {empty} {empty}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["he"]},jQuery.keyboard.layouts.hi={name:"Hindi (हिंदी)",normal:["{ZWJ} 1 2 3 4 5 6 7 8 9 0 - ृ {b}","{t} ौ ै ा ी ू ब ह ग द ज ड ़ ॉ","ो े ् ि ु प र क त च ट {enter}","{s} {empty} ं म न व ल स , . य {s}","{space} {alt} {accept}"],shift:["{ZWNJ} ऍ ॅ ्र र् ज्ञ त्र क्ष श्र ( ) ः ऋ {b}","{t} औ ऐ आ ई ऊ भ ङ घ ध झ ढ ञ ऑ","ओ ए अ इ उ फ ऱ ख थ छ ठ {enter}","{s} {empty} ँ ण {empty} {empty} ळ श ष । य़ {s}","{space} {alt} {accept}"],alt:["` १ २ ३ ४ ५ ६ ७ ८ ९ ० - = {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ] \\","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ; ' {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} , . / {s}","{space} {alt} {accept}"],"alt-shift":["~ ! @ # $ % ^ & * ( ) _ + {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { } |",'{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} : " {enter}',"{s} {empty} ॐ {empty} {empty} {empty} {empty} {empty} < > ? {s}","{space} {alt} {accept}"],lang:["hi"]},jQuery.keyboard.layouts.hu={name:"Hungarian (Magyar)",normal:["0 1 2 3 4 5 6 7 8 9 ö ü ó {b}","{t} q w e r t z u i o p ő ú ű","a s d f g h j k l é á {enter}","{s} í y x c v b n m , . - {s}","{space} {alt} {accept}"],shift:["§ ' \" + ! % / = ( ) Ö Ü Ó {b}","{t} Q W E R T Z U I O P Ő Ú Ű","A S D F G H J K L É Á {enter}","{s} Í Y X C V B N M ? : _ {s}","{space} {alt} {accept}"],alt:["{empty} ~ ˇ ˆ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {b}","{t} \\ | Ä {empty} {empty} {empty} € Í {empty} {empty} ÷ × ¤","ä đ Đ [ ] {empty} í Ł ł $ ß {enter}","{s} < > # & @ { } < ; > * {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["hu"]},jQuery.keyboard.layouts.is={name:"Icelandic (Íslenska)",normal:["° 1 2 3 4 5 6 7 8 9 0 ö - {b}","{t} q w e r t y u i o p ð ' +","a s d f g h j k l æ ´ {enter}","{s} < z x c v b n m , . þ {s}","{space} {alt} {accept}"],shift:['¨ ! " # $ % & / ( ) = Ö _ {b}',"{t} Q W E R T Y U I O P Ð ? *","A S D F G H J K L Æ ' {enter}","{s} > Z X C V B N M ; : Þ {s}","{space} {alt} {accept}"],alt:["° {empty} {empty} {empty} {empty} € {empty} { [ ] } \\ {empty} {b}","{t} @ {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~ `","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ^ {enter}","{s} | {empty} {empty} {empty} {empty} {empty} {empty} µ {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["is"]},jQuery.keyboard.layouts.ga={name:"Irish / Gaelic (Gaeilge)",normal:["` 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} q w e r t y u i o p [ ] #","a s d f g h j k l ; ' {enter}","{s} \\ z x c v b n m , . / {s}","{space} {alt} {accept}"],shift:['¬ ! " £ $ % ^ & * ( ) _ + {b}',"{t} Q W E R T Y U I O P { } ~","A S D F G H J K L : @ {enter}","{s} | Z X C V B N M < > ? {s}","{space} {alt} {accept}"],alt:["¦ {empty} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} é {empty} {empty} ý ú í ó {empty} {empty} {empty} {empty}","á {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ´ {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["¦ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} É {empty} {empty} Ý Ú Í Ó {empty} {empty} {empty} {empty}","Á {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ` {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["ga","gd"]},jQuery.keyboard.layouts.it={name:"Italian (Italiano)",normal:["\\ 1 2 3 4 5 6 7 8 9 0 ' ì {b}","{t} q w e r t y u i o p è + ù","a s d f g h j k l ò à {enter}","{s} < z x c v b n m , . - {s}","{space} {alt} {accept}"],shift:['| ! " £ $ % & / ( ) = ? ^ {b}',"{t} Q W E R T Y U I O P é * §","A S D F G H J K L ç ° {enter}","{s} > Z X C V B N M ; : _ {s}","{space} {alt} {accept}"],alt:["{empty} {empty} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ] {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} @ # {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { } {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["it"]},jQuery.keyboard.layouts.ja={name:"Japanese Hiragana/Katakana (日本語)",normal:["~ ぬ ふ あ う え お や ゆ よ わ ほ へ {b}","{t} た て い す か ん な に ら せ 、 。 ¥ ゛","ち と し は き く ま の れ け む {enter}","{s} つ さ そ ひ こ み も ね る め ろ {s}","{space} {alt} {accept}"],shift:["{empty} ヌ フ ア ウ エ オ ヤ ユ ヨ ワ ホ ヘ {b}",'{t} タ テ イ ス カ ン ナ ニ ラ セ 、 。 {empty} "',"チ ト シ ハ キ ク マ ノ レ ケ ム {enter}","{s} ツ サ ソ ヒ コ ミ モ ネ ル メ ロ {s}","{space} {alt} {accept}"],alt:["{empty} {empty} {empty} ぁ ぅ ぇ ぉ ゃ ゅ ょ を ー ^ {b}","{t} {empty} {empty} ぃ {empty} {empty} {empty} {empty} {empty} {empty} {empty} @ 「 {empty} ¥","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ; : 」 {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} 、 。 ・ {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} ァ ゥ ェ ォ ャ ュ ョ ヲ = ~ {b}","{t} {empty} {empty} ィ {empty} {empty} {empty} {empty} {empty} {empty} {empty} ‘ { * |","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} + ヶ } {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} < > ? _ {s}","{space} {alt} {accept}"],lang:["ja"]},jQuery.keyboard.layouts.kn={name:"Kannada (ಕನ್ನಡ)",normal:["ೊ 1 2 3 4 5 6 7 8 9 0 - ೃ {b}","{t} ೌ ೈ ಾ ೀ ೂ ಬ ಹ ಗ ದ ಜ ಡ {enter}","ೋ ೇ ್ ಿ ು ಪ ರ ಕ ತ ಚ ಟ {empty}","{s} ೆ ಂ ಮ ನ ವ ಲ ಸ , . ಯ {s}","{space} {alt} {accept}"],shift:["ಒ {empty} {empty} ್ರ ರ್ ಜ್ಞ ತ್ರ ಕ್ಷ ಶ್ರ ( ) ಃ ಋ {b}","{t} ಔ ಐ ಆ ಈ ಊ ಭ ಙ ಘ ಧ ಝ ಢ {enter}","ಓ ಏ ಅ ಇ ಉ ಫ ಱ ಖ ಥ ಛ ಠ ಞ","{s} ಏ {empty} ಣ {empty} {empty} ಳ ಶ ಷ | {empty} {s}","{space} {alt} {accept}"],alt:["{empty} ೧ ೨ ೩ ೪ ೫ ೬ ೭ ೮ ೯ ೦ {empty} ೄ {b}","{t} {empty} ೖ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{empty} ೕ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ೠ {b}","{t} {empty} {empty} {empty} ೡ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{empty} {empty} {empty} ಌ {empty} ೞ {empty} {empty} {empty} {empty} {empty} {empty}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["kn"]},jQuery.keyboard.layouts.kk={name:"Kazakh (Қазақша)",normal:['( " ә і ң ғ , . ү ұ қ ө һ {b}',"{t} й ц у к е н г ш щ з х ъ \\","ф ы в а п р о л д ж э {enter}","{s} \\ я ч с м и т ь б ю № {s}","{space} {accept}"],shift:[") ! Ә І Ң Ғ ; : Ү Ұ Қ Ө Һ {b}","{t} Й Ц У К Е Н Г Ш Щ З Х Ъ /","Ф Ы В А П Р О Л Д Ж Э {enter}","{s} | Я Ч С М И Т Ь Б Ю ? {s}","{space} {accept}"],lang:["kk"]},jQuery.keyboard.layouts.km={name:"Khmer (ភាសាខ្មែរ)",normal:["« ១ ២ ៣ ៤ ៥ ៦ ៧ ៨ ៩ ០ ឥ ឲ {b}","{t} ឆ ឹ េ រ ត យ ុ ិ ោ ផ ៀ ឪ ឮ","ា ស ដ ថ ង ហ ្ ក ល ើ ់ {enter}","{s} ឋ ខ ច វ ប ន ម ុំ ។ ៊ {s}","{ZWSP} {space} {alt} {accept}"],shift:['» ! ៗ " ៛ % ៍ ័ ៏ ( ) ៌ = {b}',"{t} ឈ ឺ ែ ឬ ទ ួ ូ ី ៅ ភ ឿ ឧ ឭ","ាំ ៃ ឌ ធ អ ះ ញ គ ឡ ោះ ៉ {enter}","{s} ឍ ឃ ជ េះ ព ណ ំ ុះ ៕ ? {s}","{empty} {space} {alt} {accept}"],alt:["{ZWJ} {ZWNJ} @ ៑ $ € ៙ ៚ * { } x ៎ {b}","{t} ៜ ៝ ឯ ឫ ឨ យើង {empty} ឦ ឱ ឰ ឩ ឳ \\","឵ {empty} ៓ {empty} ឤ ឣ ឴ ឝ ៘ ៖ ៈ {enter}","{s} | ខ្ញុំ - + ឞ [ ] , . / {s}","{NBSP} {space} {alt} {accept}"],"alt-shift":["{empty} ៱ ៲ ៳ ៴ ៵ ៶ ៷ ៸ ៹ ៰ {empty} {empty} {b}","{t} ᧠ ᧡ ᧢ ᧣ ᧤ ᧥ ᧦ ᧧ ᧨ ᧩ ᧪ ᧫ {empty}","᧬ ᧭ ᧮ ᧯ ᧰ ᧱ ᧲ ᧳ ᧴ ᧵ ᧶ {enter}","{s} ᧷ ᧸ ᧹ ᧺ ᧻ ᧼ ᧽ ᧾ ᧿ {empty} {s}","{empty} {space} {alt} {accept}"],lang:["km"]},jQuery.keyboard.layouts.ko={name:"Korean (한국어)",normal:["` 1 2 3 4 5 6 7 8 9 0 - = ₩ {b}","{t} ᄇ ᄌ ᄃ ᄀ ᄉ ᅭ ᅧ ᅣ ᅢ ᅦ [ ]","ᄆ ᄂ ᄋ ᄅ ᄒ ᅩ ᅥ ᅡ ᅵ ; ' {enter}","{s} ᄏ ᄐ ᄎ ᄑ ᅲ ᅮ ᅳ , . / {s}","{space} {alt} {accept}"],shift:["~ ! @ # $ % ^ & * ) ( _ + | {b}","{t} ᄈ ᄍ ᄄ ᄁ ᄊ {empty} {empty} {empty} ᅤ ᅨ { }",'{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} : " {enter}',"{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} < > ? {s}","{space} {alt} {accept}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = ₩ {b}","{t} q w e r t y u i o p [ ]","a s d f g h j k l ; ' {enter}","{s} z x c v b n m , . / {s}","{space} {alt} {accept}"],"alt-shift":["~ ! @ # $ % ^ & * ) ( _ + | {b}","{t} Q W E R T Y U I O P { }",'A S D F G H J K L : " {enter}',"{s} Z X C V B N M < > ? {s}","{space} {alt} {accept}"],lang:["ko"]},jQuery.keyboard.layouts.ku={name:"Kurdish (Kurdî)",rtl:!0,normal:["€ ١ ٢ ٣ ٤ ٥ ٦ ٧ ٨ ٩ ٠ - = {b}","{t} ق و ە ر ت ی ئ ح ۆ پ [ ] \\","ا س د ف گ ه ژ ک ل ؛ ' {enter}","{s} ز خ ج ڤ ب ن م ، . / {s}","{space} {accept}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {b}","{t} ` وو ي ڕ ط ێ ء ع ؤ ث { } |",'آ ش ذ إ غ {ZWNJ} أ ك ڵ : " {enter}',"{s} ض ص چ ظ ى ة ـ < > ؟ {s}","{space} {accept}"],lang:["ku"]},jQuery.keyboard.layouts.ky={name:"Kyrgyz (Кыргызча)",normal:["ё 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} й ц у к е н г ш щ з х ъ \\","ф ы в а п р о л д ж э {enter}","{s} я ч с м и т ь б ю . {s}","{space} {alt} {accept}"],shift:['Ё ! " № ; % : ? * ( ) _ + {b}',"{t} Й Ц У К Е Н Г Ш Щ З Х Ъ /","Ф Ы В А П Р О Л Д Ж Э {enter}","{s} Я Ч С М И Т Ь Б Ю , {s}","{space} {alt} {accept}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} ү {empty} {empty} ң {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} ө {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} Ү {empty} {empty} Ң {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} Ө {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["ky"]},jQuery.keyboard.layouts.lv={name:"Latvian (Latviešu)",normal:[" 1 2 3 4 5 6 7 8 9 0 - f {b}","{t} ū g j r m v n z ē č ž h ķ","š u s i l d a t e c ´ {enter}","{s} ņ b ī k p o ā , . ļ {s}","{space} {alt} {accept}"],shift:["? ! « » $ % / & × ( ) _ F {b}","{t} Ū G J R M V N Z Ē Č Ž H Ķ","Š U S I L D A T E C ° {enter}","{s} Ņ B Ī K P O Ā ; : Ļ {s}","{space} {alt} {accept}"],alt:['{empty} « {empty} {empty} € " ’ {empty} : {empty} {empty} – = {b}',"{t} q ģ {empty} ŗ w y {empty} {empty} {empty} {empty} [ ] {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} € {empty} ´ {enter}","{s} {empty} x {empty} ķ {empty} õ {empty} < > {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} @ # $ ~ ^ ± {empty} {empty} {empty} — ; {b}","{t} Q Ģ {empty} Ŗ W Y {empty} {empty} {empty} {empty} { } {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ¨ {enter}","{s} {empty} X {empty} Ķ {empty} Õ {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["lv"]},jQuery.keyboard.layouts.lt={name:"Lithuanian (Lietuvių)",normal:["` ą č ę ė į š ų ū „ “ - ž {b}","{t} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{s} – z x c v b n m , . / {s}","{space} {accept}"],shift:["~ Ą Č Ę Ė Į Š Ų Ū ( ) _ Ž {b}","{t} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{s} € Z X C V B N M < > ? {s}","{space} {accept}"],lang:["lt"]},jQuery.keyboard.layouts.mk={name:"Macedonian Cyrillic (Македонски)",normal:["` 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} љ њ е р т ѕ у и о п ш ѓ ж","а с д ф г х ј к л ч ќ {enter}","{s} ё з џ ц в б н м , . / {s}","{space} {alt} {accept}"],shift:["~ ! „ “ ’ % ‘ & * ( ) _ + {b}","{t} Љ Њ Е Р Т Ѕ У И О П Ш Ѓ Ж","А С Д Ф Г Х Ј К Л Ч Ќ {enter}","{s} Ё З Џ Ц В Б Н М ; : ? {s}","{space} {alt} {accept}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} Ђ ђ {empty}","{empty} {empty} {empty} [ ] {empty} {empty} {empty} {empty} Ћ ћ {enter}","{s} {empty} {empty} {empty} {empty} @ { } § {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["mk"]},jQuery.keyboard.layouts.ml={name:"Malayalam (മലയാളം)",rtl:!0,normal:["ൊ 1 2 3 4 5 6 7 8 9 0 - ൃ {b}","{t} ൌ ൈ ാ ീ ൂ ബ ഹ ഗ ദ ജ ഡ {empty}","ോ േ ് ി ു പ ര ക ത ച ട {enter}","{s} െ ം മ ന വ ല സ , . യ {s}","{space} {alt} {accept}"],shift:["ഒ {empty} {empty} ്ര {empty} {empty} {empty} ക്ഷ {empty} ( ) ഃ ഋ {b}","{t} ഔ ഐ ആ ഈ ഊ ഭ ങ ഘ ധ ഝ ഢ ഞ","ഓ ഏ അ ഇ ഉ ഫ റ ഖ ഥ ഛ ഠ {enter}","{s} ഏ {empty} ണ {empty} ഴ ള ശ ഷ {empty} {empty} {s}","{space} {alt} {accept}"],alt:["{empty} ൧ ൨ ൩ ൪ ൫ ൬ ൭ ൮ ൯ ൦ {empty} {empty} {b}","{t} ൗ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ൠ {b}","{t} {empty} {empty} {empty} ൡ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} ഌ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["ml"]},jQuery.keyboard.layouts.mt={name:"Maltese 48 (Malti)",normal:["ċ 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} q w e r t y u i o p ġ ħ #","a s d f g h j k l ; ' {enter}","{s} ż z x c v b n m , . / {s}","{space} {alt} {accept}"],shift:['Ċ ! " € $ % ^ & * ( ) _ + {b}',"{t} Q W E R T Y U I O P Ġ Ħ ž","A S D F G H J K L : @ {enter}","{s} Ż Z X C V B N M < > ? {s}","{space} {alt} {accept}"],alt:["` {empty} {empty} £ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} è {empty} {empty} {empty} ù ì ò {empty} [ ] {empty}","à {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} \\ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} È {empty} {empty} {empty} Ù Ì Ò {empty} { } {empty}","À {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} | {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ` {s}","{space} {alt} {accept}"],lang:["mt"]},jQuery.keyboard.layouts.mr={name:"Marathi (मराठी)",normal:["{empty} १ २ ३ ४ ५ ६ ७ ८ ९ ० - ृ {b}","{t} ौ ै ा ी ू ब ह ग द ज ड ़ ॉ","ो े ् ि ु प र क त च ट {enter}","{s} {empty} ं म न व ल स , . य {s}","{space} {alt} {accept}"],shift:["{empty} ऍ ॅ ्र र् ज्ञ त्र क्ष श्र ( ) ः ऋ {b}","{t} औ ऐ आ ई ऊ भ ङ घ ध झ ढ ञ ऑ","ओ ए अ इ उ फ ऱ ख थ छ ठ {enter}","{s} {empty} ँ ण {empty} {empty} ळ श ष । य़ {s}","{space} {alt} {accept}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ] \\","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ; ' {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} , . / {s}","{space} {alt} {accept}"],"alt-shift":["~ ! @ # $ % ^ & * ( ) _ + {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { } |",'{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} : " {enter}',"{s} {empty} ॐ {empty} {empty} {empty} {empty} {empty} < > ? {s}","{space} {alt} {accept}"],lang:["mr"]},jQuery.keyboard.layouts.mn={name:"Mongolian Cyrillic (Монгол)",normal:['= № - " ₮ : . _ , % ? е щ {b}',"{t} ф ц у ж э н г ш ү з к ъ \\","й ы б ө а х р о л д п {enter}","{s} я ч ё с м и т ь в ю {s}","{space} {accept}"],shift:["+ 1 2 3 4 5 6 7 8 9 0 Е Щ {b}","{t} Ф Ц У Ж Э Н Г Ш Ү З К Ъ |","Й Ы Б Ө А Х Р О Л Д П {enter}","{s} Я Ч Ё С М И Т Ь В Ю {s}","{space} {accept}"],lang:["mn"]},jQuery.keyboard.layouts.no={name:"Norwegian (Norsk)",normal:["| 1 2 3 4 5 6 7 8 9 0 + \\ {b}","{t} q w e r t y u i o p å ¨ '","a s d f g h j k l ø æ {enter}","{s} < z x c v b n m , . - {s}","{space} {alt} {accept}"],shift:['§ ! " # ¤ % & / ( ) = ? ` {b}',"{t} Q W E R T Y U I O P Å ^ *","A S D F G H J K L Ø Æ {enter}","{s} > Z X C V B N M ; : _ {s}","{space} {alt} {accept}"],alt:["{empty} {empty} @ £ $ {empty} {empty} { [ ] } {empty} ´ {b}","{t} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~ {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} μ {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} Μ {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["no","nb","nn"]},jQuery.keyboard.layouts.ps={name:"Pashto (پښتو)",rtl:!0,normal:["{ZWJ} ۱ ۲ ۳ ۴ ۵ ۶ ۷ ۸ ۹ ۰ - = {b}","{t} ض ص ث ق ف غ ع ه خ ح ج چ \\","ش س ی ب ل ا ت ن م ک گ {enter}","{s} ظ ط ز ر ذ د ړ و ږ / {s}","{space} {alt} {accept}"],shift:["÷ ! ٬ ٫ ¤ ٪ × « » ( ) ـ + {b}","{t} ْ ٌ ٍ ً ُ ِ َ ّ ځ څ ] [ ٭","ښ ۍ ي پ أ آ ټ ڼ ة : ؛ {enter}","{s} ئ ې ژ ء {ZWNJ} ډ ؤ ، . ؟ {s}","{space} {alt} {accept}"],alt:["` ` @ ٫ £ % ^ & * ﷲ ﻻ _ ﺇ {b}","{t} ە ٓ € ﻷ ﻵ ' ﺄ ٰ ' \" } { |","ﮰ ے ے ں ڷ ٱ ٹ < > ك ګ {enter}","{s} ? ; ٕ ٔ إ ڈ ڑ , ۇ ۉ ٍ {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ÷ {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["ps"]},jQuery.keyboard.layouts["zh-Latn"]={name:"Pinyin (拼音)",normal:["` 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{s} z x c v b n m , . / {s}","{space} {alt} {accept}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {b}","{t} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{s} Z X C V B N M < > ? {s}","{space} {alt} {accept}"],alt:["亓 「 」 〝 〞 〟 〈 〉 〯 《 》 『 』 {b}","{t} ā á ǎ à ē é ě è ī í ǐ ì 〠","ō ó ǒ ò ü ū ú ǔ ù {empty} {empty} {enter}","{s} ǖ ǘ ǚ ǜ {empty} {empty} {empty} 、 。 {empty} {s}","{space} {alt} {accept}"],"alt-shift":["〜 {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} Ā Á Ǎ À Ē É Ě È Ī Í Ǐ Ì {empty}","Ō Ó Ǒ Ò Ü Ū Ú Ǔ Ù {empty} {empty} {enter}","{s} Ǖ Ǘ Ǚ Ǜ {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["zh-Latn"]},jQuery.keyboard.layouts.pl={name:"Polish (214) (Polski)",normal:["˛ 1 2 3 4 5 6 7 8 9 0 + ' {b}","{t} q w e r t z u i o p ż ś ó","a s d f g h j k l ł ą {enter}","{s} < y x c v b n m , . - {s}","{space} {alt} {accept}"],shift:['· ! " # ¤ % & / ( ) = ? * {b}',"{t} Q W E R T Z U I O P ń ć ź","A S D F G H J K L Ł ę {enter}","{s} > Y X C V B N M ; : _ {s}","{space} {alt} {accept}"],alt:["{empty} ~ ˇ ^ ˘ ° ˛ ` · ´ ˝ ¨ ¸ {b}","{t} \\ ¦ {empty} {empty} {empty} {empty} € {empty} {empty} {empty} ÷ × {empty}","{empty} đ Đ {empty} {empty} {empty} {empty} {empty} {empty} $ ß {enter}","{s} {empty} {empty} {empty} {empty} @ { } § < > {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["pl"]},jQuery.keyboard.layouts["pl-pr"]={name:"Polish Programmers (Polski Programisty)",normal:["` 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{s} z x c v b n m , . / {s}","{space} {alt} {accept}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {b}","{t} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{s} Z X C V B N M < > ? {s}","{space} {alt} {accept}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} ę {empty} {empty} {empty} {empty} {empty} ó {empty} {empty} {empty} {empty}","ą ś {empty} {empty} {empty} {empty} {empty} {empty} ł {empty} {empty} {enter}","{s} ż ź ć {empty} {empty} ń {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} Ę {empty} {empty} {empty} {empty} {empty} Ó {empty} {empty} {empty} {empty}","Ą Ś {empty} {empty} {empty} {empty} {empty} {empty} Ł {empty} {empty} {enter}","{s} Ż Ź Ć {empty} {empty} Ń {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["pl-pr"]},jQuery.keyboard.layouts["pt-BR"]={name:"Portuguese (Brazil) (Português Brasileiro)",normal:["' 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} q w e r t y u i o p ´ [ {enter}","a s d f g h j k l ç ~ ] /","{s} \\ z x c v b n m , . : {s}","{space} {alt} {accept}"],shift:['" ! @ # $ % ¨ & * ( ) _ + {b}',"{t} Q W E R T Y U I O P ` { {enter}","A S D F G H J K L Ç ^ } ?","{s} | Z X C V B N M < > : {s}","{space} {alt} {accept}"],alt:["{empty} ¹ ² ³ £ ¢ ¬ {empty} {empty} {empty} {empty} {empty} § {b}","{t} / ? € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ª {enter}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} º {empty}","{s} {empty} {empty} {empty} ₢ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["pt-BR"]},jQuery.keyboard.layouts.pt={name:"Portuguese (Português)",normal:["\\ 1 2 3 4 5 6 7 8 9 0 ' « {b}","{t} q w e r t y u i o p + ´ ~","a s d f g h j k l ç º {enter}","{s} < z x c v b n m , . - {s}","{space} {alt} {accept}"],shift:['| ! " # $ % & / ( ) = ? » {b}',"{t} Q W E R T Y U I O P * ` ^","A S D F G H J K L Ç ª {enter}","{s} > Z X C V B N M ; : _ {s}","{space} {alt} {accept}"],alt:["{empty} {empty} @ £ § {empty} {empty} { [ ] } {empty} {empty} {b}","{t} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} ¨ {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} \\ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["pt"]},jQuery.keyboard.layouts.pa={name:"Punjabi (Gurmukhi) (ਪੰਜਾਬੀ)",rtl:!0,normal:["1 2 3 4 5 6 7 8 9 0 - {b}","{t} ੌ ੈ ਾ ੀ ੂ ਬ ਹ ਗ ਦ ਜ ਡ {enter}","ੋ ੇ ੍ ਿ ੁ ਪ ਰ ਕ ਤ ਚ ਟ ਼","{s} ਂ ਮ ਨ ਵ ਲ ਸ , . ਯ {s}","{space} {alt} {accept}"],shift:["੍ਵ ੍ਯ ੍ਰ ੱ {empty} {empty} {empty} {empty} ( ) {empty} {b}","{t} ਔ ਐ ਆ ਈ ਊ ਭ ਙ ਘ ਧ ਝ ਢ {enter}","ਓ ਏ ਅ ਇ ਉ ਫ {empty} ਖ ਥ ਛ ਠ ਞ","{s} ਂ ਣ {empty} ੲ ਲ਼ ਸ਼ {empty} | {empty} {s}","{space} {alt} {accept}"],alt:["੧ ੨ ੩ ੪ ੫ ੬ ੭ ੮ ੯ ੦ {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ਗ਼ {empty} ਜ਼ ੜ {enter}","{empty} {empty} {empty} {empty} {empty} ਫ਼ {empty} ਖ਼ {empty} {empty} {empty} {empty}","{s} {empty} {empty} {empty} ੳ {empty} {empty} {empty} ॥ {empty} {s}","{space} {alt} {accept}"],"alt-shift":["੧ ੨ ੩ ੪ ੫ ੬ ੭ ੮ ੯ ੦ {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ਗ਼ {empty} ਜ਼ ੜ {enter}","{empty} {empty} {empty} {empty} {empty} ਫ਼ {empty} ਖ਼ {empty} {empty} {empty} {empty}","{s} {empty} {empty} {empty} ੳ {empty} {empty} {empty} ॥ {empty} {s}","{space} {alt} {accept}"],lang:["pa"]},jQuery.keyboard.layouts.ro={name:"Romanian (Română)",normal:["„ 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} q w e r t y u i o p ă î â","a s d f g h j k l ș ț {enter}","{s} \\ z x c v b n m , . / {s}","{space} {alt} {accept}"],shift:["” ! @ # $ % ^ & * ( ) _ + {b}","{t} Q W E R T Y U I O P Ă Î Â","A S D F G H J K L Ș Ț {enter}","{s} | Z X C V B N M ; : ? {s}","{space} {alt} {accept}"],alt:["` ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {b}","{t} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} § [ ] \\","{empty} ß ð {empty} {empty} {empty} {empty} {empty} ł ; ' {enter}","{s} {empty} {empty} {empty} © {empty} {empty} {empty} {empty} < > {empty} {s}","{space} {alt} {accept}"],"alt-shift":["~ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ± {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { } |",'{empty} {empty} Ð {empty} {empty} {empty} {empty} {empty} Ł : " {enter}',"{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} « » {empty} {s}","{space} {alt} {accept}"],lang:["ro"]},jQuery.keyboard.layouts.ru={name:"Russian (Русский)",normal:["ё 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} й ц у к е н г ш щ з х ъ \\","ф ы в а п р о л д ж э {enter}","{s} / я ч с м и т ь б ю . {s}","{space} {accept}"],shift:['Ё ! " № ; % : ? * ( ) _ + {b}',"{t} Й Ц У К Е Н Г Ш Щ З Х Ъ /","Ф Ы В А П Р О Л Д Ж Э {enter}","{s} | Я Ч С М И Т Ь Б Ю , {s}","{space} {accept}"],lang:["ru"]},jQuery.keyboard.layouts["sr-Cyrl"]={name:"Serbian Cyrillic (српски)",normal:["` 1 2 3 4 5 6 7 8 9 0 ' + {b}","{t} љ њ е р т з у и о п ш ђ ж","а с д ф г х ј к л ч ћ {enter}","{s} < ѕ џ ц в б н м , . - {s}","{space} {alt} {accept}"],shift:['~ ! " # $ % & / ( ) = ? * {b}',"{t} Љ Њ Е Р Т З У И О П Ш Ђ Ж","А С Д Ф Г Х Ј К Л Ч Ћ {enter}","{s} > Ѕ Џ Ц В Б Н М ; : _ {s}","{space} {alt} {accept}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} < > © {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["sr-Cyrl"]},jQuery.keyboard.layouts.sr={name:"Serbian Latin (Srpski)",normal:["¸ 1 2 3 4 5 6 7 8 9 0 ' + {b}","{t} q w e r t z u i o p š đ ž","a s d f g h j k l č ć {enter}","{s} < y x c v b n m , . - {s}","{space} {alt} {accept}"],shift:['¨ ! " # $ % & / ( ) = ? * {b}',"{t} Q W E R T Z U I O P Š Đ Ž","A S D F G H J K L Č Ć {enter}","{s} > Y X C V B N M ; : _ {s}","{space} {alt} {accept}"],alt:["{empty} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {b}","{t} \\ | € {empty} {empty} {empty} {empty} {empty} {empty} {empty} ÷ × ¤","{empty} {empty} {empty} [ ] {empty} {empty} ł Ł {empty} ß {enter}","{s} {empty} {empty} {empty} {empty} @ { } § < > © {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["sr"]},jQuery.keyboard.layouts.sk={name:"Slovak (Slovenčina)",normal:["; + ľ š č ť ž ý á í é = ´ {b}","{t} q w e r t z u i o p ú ä ň","a s d f g h j k l ô § {enter}","{s} & y x c v b n m , . - {s}","{space} {alt} {accept}"],shift:["° 1 2 3 4 5 6 7 8 9 0 % ˇ {b}","{t} Q W E R T Z U I O P / ( )",'A S D F G H J K L " ! {enter}',"{s} * Y X C V B N M ? : _ {s}","{space} {alt} {accept}"],alt:["{empty} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {b}","{t} \\ | € {empty} {empty} {empty} {empty} {empty} {empty} ' ÷ × ¤","{empty} đ Đ [ ] {empty} {empty} ł Ł $ ß {enter}","{s} < > # & @ { } {empty} < > * {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["sk"]},jQuery.keyboard.layouts.sl={name:"Slovenian (Slovenščina)",normal:["¸ 1 2 3 4 5 6 7 8 9 0 ' + {b}","{t} q w e r t z u i o p š đ ž","a s d f g h j k l č ć {enter}","{s} < y x c v b n m , . - {s}","{space} {alt} {accept}"],shift:['¨ ! " # $ % & / ( ) = ? * {b}',"{t} Q W E R T Z U I O P Š Đ Ž","A S D F G H J K L Č Ć {enter}","{s} > Y X C V B N M ; : _ {s}","{space} {alt} {accept}"],alt:["{empty} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {b}","{t} \\ | € {empty} {empty} {empty} {empty} {empty} {empty} {empty} ÷ × ¤","{empty} {empty} {empty} [ ] {empty} {empty} ł Ł {empty} ß {enter}","{s} {empty} {empty} {empty} {empty} @ { } § < > © {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["sl"]},jQuery.keyboard.layouts.es={name:"Spanish (Español)",normal:["º 1 2 3 4 5 6 7 8 9 0 ' ¡ {b}","{t} q w e r t y u i o p ` + ç","a s d f g h j k l ñ ´ {enter}","{s} < z x c v b n m , . - {s}","{space} {alt} {accept}"],shift:["ª ! \" ' $ % & / ( ) = ? ¿ {b}","{t} Q W E R T Y U I O P ^ * Ç","A S D F G H J K L Ñ ¨ {enter}","{s} > Z X C V B N M ; : _ {s}","{space} {alt} {accept}"],alt:["\\ | @ # ~ € ¬ {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ] }","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["es"]},jQuery.keyboard.layouts.sv={name:"Swedish (Svenska)",normal:["§ 1 2 3 4 5 6 7 8 9 0 + ´ {b}","{t} q w e r t y u i o p å ¨ '","a s d f g h j k l ö ä {enter}","{s} < z x c v b n m , . - {s}","{space} {alt} {accept}"],shift:['½ ! " # ¤ % & / ( ) = ? ` {b}',"{t} Q W E R T Y U I O P Å ^ *","A S D F G H J K L Ö Ä {enter}","{s} > Z X C V B N M ; : _ {s}","{space} {alt} {accept}"],alt:["{empty} {empty} @ £ $ € {empty} { [ ] } \\ {empty} {b}","{t} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~ {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} | {empty} {empty} {empty} {empty} {empty} {empty} μ {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} Μ {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["sv"]},jQuery.keyboard.layouts["fr-CH"]={name:"Swiss French (Swiss Français)",normal:["§ 1 2 3 4 5 6 7 8 9 0 ' ^ {b}","{t} q w e r t z u i o p è ¨ $","a s d f g h j k l é à {enter}","{s} < y x c v b n m , . - {s}","{space} {alt} {accept}"],shift:['° + " * ç % & / ( ) = ? ` {b}',"{t} Q W E R T Z U I O P ü ! £","A S D F G H J K L ö ä {enter}","{s} > Y X C V B N M ; : _ {s}","{space} {alt} {accept}"],alt:["{empty} ¦ @ # ° § ¬ | ¢ {empty} {empty} ´ ~ {b}","{t} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ] }","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { {enter}","{s} \\ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["fr-CH"]},jQuery.keyboard.layouts["de-CH"]={name:"Swiss German (Schweizerdeutsch)",normal:["§ 1 2 3 4 5 6 7 8 9 0 ' ^ {b}","{t} q w e r t z u i o p ü ¨ $","a s d f g h j k l ö ä {enter}","{s} < y x c v b n m , . - {s}","{space} {alt} {accept}"],shift:['° + " * ç % & / ( ) = ? ` {b}',"{t} Q W E R T Z U I O P è ! £","A S D F G H J K L é à {enter}","{s} > Y X C V B N M ; : _ {s}","{space} {alt} {accept}"],alt:["{empty} ¦ @ # ° § ¬ | ¢ {empty} {empty} ´ ~ {b}","{t} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ] }","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { {enter}","{s} \\ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["de-CH"]},jQuery.keyboard.layouts["??-symbols"]={name:"Symbols",normal:["★ ♈ ♉ ♊ ♋ ♌ ♍ ♎ ♏ ♐ ♑ ♒ ♓ {b}","☿ ♀ ♁ ♂ ♃ ♄ ♅ ♆ ♇ ♩ ♪ ♫ ♬ ⛹ ♿","{t} ☞ ☛ ☂ ☕ ☺ ☗ ♠ ♤ ⛂ ☤ ☐ ☨ ☪ ⛺","☯ ☼ ⛄ ⚠ ⛤ ☊ ⚜ ⚳ ⚷ ⚹ ⚽ {enter}","{s} ☀ ⚑ ⛋ ⛏ ⛓ ⛚ ⛟ ⛣ ⛫ ⛯ ⛴ {s}","{space} {alt} {accept}"],shift:["☆ ♳ ♴ ♵ ♶ ♷ ♸ ♹ ♺ ♻ ♼ ♽ ♲ {b}","⚀ ⚁ ⚂ ⚃ ⚄ ⚅ ☠ ☢ ☣ ♭ ♮ ♯ ☇ ☈ ☮","{t} ☜ ☚ ☔ ♨ ☹ ☖ ♣ ♧ ⛀ ☥ ☑ ☦ ☫ ⛻","♰ ⚙ ☃ ⚡ ⛥ ☋ ⚛ ⚴ ⚿ ⚺ ⚾ {enter}","{s} ☁ ⚐ ⛌ ⛐ ⛕ ⛛ ⛠ ⛨ ⛬ ⛰ ⛵ {s}","{space} {alt} {accept}"],alt:["☎ ♙ ♘ ♗ ♖ ♕ ♔ ♟ ♞ ♝ ♜ ♛ ♚ {b}","⚊ ⚋ ⚌ ⚍ ⚎ ⚏ ⛿ ⚒ ⚓ ⚔ ⚕ ⚖ ⚗ ⚘ ☸","{t} ☝ ☘ ⛱ ⛾ ☻ ⛊ ♥ ♡ ⛃ ⚚ ☒ ☧ ☬ ⛼","♱ ☽ ⛇ ☡ ⛦ ☌ ⚝ ⚵ ⚸ ⚻ ⚟ {enter}","{s} ⛅ ⚫ ⛍ ⛑ ⛖ ⛝ ⛡ ⛩ ⛭ ⛲ ⛶ {s}","{space} {alt} {accept}"],"alt-shift":["☏ ☰ ☱ ☲ ☳ ☴ ☵ ☶ ☷ ⚆ ⚇ ⚈ ⚉ {b}","⚢ ⚣ ⚤ ⚥ ⚦ ⚧ ⚨ ⚩ ⚲ ⚬ ⚭ ⚮ ⚯ ⚰ ☉","{t} ☟ ☙ ⛙ ⛘ ⛜ ⛉ ♦ ♢ ⛁ ⚱ ☓ ☩ ☭ ⛽","♾ ☾ ⛆ ⛔ ⛧ ☍ ☄ ⚶ ⛸ ⚼ ⚞ {enter}","{s} ⛈ ⚪ ⛎ ⛒ ⛗ ⛞ ⛢ ⛪ ⛮ ⛳ ⛷ {s}","{space} {alt} {accept}"],lang:["??-symbols"]},jQuery.keyboard.layouts.syc={name:"Syriac (ܣܘܪܝܝܐ)",rtl:!0,normal:[" 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} ܔ ܨ ܖ ܩ ܦ ܜ ܥ ܗ ܞ ܚ ܓ ܕ ܆","ܫ ܣ ܝ ܒ ܠ ܐ ܬ ܢ ܡ ܟ ܛ {enter}","{s} ] [ ܤ ܪ ܧ ܀ . ܘ ܙ ܇ {s}","{space} {alt} {accept}"],shift:["̮ ! ̊ ̥ ݉ ♰ ♱ ܊ » ) ( « + {b}","{t} ܰ ܳ ܶ ܺ ܽ ݀ ݁ ̈ ̄ ̇ ̃ ݊ :","ܱ ܴ ܷ ܻ ܾ ܑ ـ ̤ ̱ ̣ ̰ {enter}","{s} ܲ ܵ ܸ ܼ ܿ ܹ ݂ ، ؛ ؟ {s}","{space} {alt} {accept}"],alt:["ّ ܁ ܂ ܃ ܄ ܅ ܈ ܉ ܋ ܌ ܍ ┌ ┐ {b}","{t} َ ً ُ ٌ ٓ ٔ ݇ ݃ ݅ ̭ {empty} {empty} {empty}","ِ ٍ {empty} ء ٕ ٰ ݈ ݄ ݆ {empty} {empty} {enter}","{s} {empty} ْ {empty} {ZWJ} {ZWNJ} {LRM} {RLM} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["ّ ܁ ܂ ܃ ܄ ܅ ܈ ܉ ܋ ܌ ܍ ┌ ┐ {b}","{t} َ ً ُ ٌ ٓ ٔ ݇ ݃ ݅ ̭ {empty} {empty} {empty}","ِ ٍ {empty} ء ٕ ٰ ݈ ݄ ݆ {empty} {empty} {enter}","{s} {empty} ْ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["syc"]},jQuery.keyboard.layouts.ta={name:"Tamil (தமிழ்)",normal:["ொ 1 2 3 4 5 6 7 8 9 0 - {empty} {b}","{t} ௌ ை ா ீ ூ ப ஹ க த ஜ ட ஞ","ோ ே ் ி ு ப ர க த ச ட {enter}","{s} ெ {empty} ம ந வ ல ஸ , . ய {s}","{space} {alt} {accept}"],shift:["ஒ {empty} {empty} {empty} {empty} {empty} த்ர க்ஷ ஷ்ர {empty} {empty} ஃ {empty} {b}","{t} ஔ ஐ ஆ ஈ ஊ ப ங க த ச ட {empty}","ஓ ஏ அ இ உ ப ற க த ச ட {enter}","{s} எ {empty} ண ன ழ ள ஷ ஷ ஸ்ரீ ய {s}","{space} {alt} {accept}"],alt:["{empty} ௧ ௨ ௩ ௪ ௫ ௬ ௭ ௮ ௯ ௰ ௱ ௲ {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["ta"]},jQuery.keyboard.layouts.tt={name:"Tatar (Татарча)",normal:["һ 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} й ө у к е н г ш ә з х ү \\","ф ы в а п р о л д ң э {enter}","{s} ґ я ч с м и т җ б ю . {s}","{space} {alt} {accept}"],shift:['Һ ! " № ; % : ? * ( ) _ + {b}',"{t} Й Ө У К Е Н Г Ш Ә З Х Ү /","Ф Ы В А П Р О Л Д Ң Э {enter}","{s} Ґ Я Ч С М И Т Җ Б Ю , {s}","{space} {alt} {accept}"],alt:["ё {empty} @ # $ {empty} {empty} [ ] { } {empty} {empty} {b}","{t} {empty} ц {empty} {empty} {empty} {empty} {empty} {empty} щ {empty} {empty} ъ {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ж ' {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ь < > {empty} {s}","{space} {alt} {accept}"],"alt-shift":["Ё {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} Ц {empty} {empty} {empty} {empty} {empty} {empty} Щ {empty} {empty} Ъ {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} Ж {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} Ь {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["tt"]},jQuery.keyboard.layouts.te={name:"Telugu (తెలుగు)",normal:["ొ 1 2 3 4 5 6 7 8 9 0 - ృ {b}","{t} ౌ ై ా ీ ూ బ హ గ ద జ డ {empty}","ో ే ్ ి ు ప ర క త చ ట {enter}","{s} ె ం మ న వ ల స , . య {s}","{space} {alt} {accept}"],shift:["ఒ {empty} {empty} ్ర {empty} జ్ఞ త్ర క్ష శ్ర ( ) ః ఋ {b}","{t} ఔ ఐ ఆ ఈ ఊ {empty} ఙ ఘ ధ ఝ ఢ ఞ","ఓ ఏ అ ఇ ఉ ఫ ఱ ఖ థ ఛ థ {enter}","{s} ఎ ఁ ణ న {empty} ళ శ ష {empty} {empty} {s}","{space} {alt} {accept}"],alt:["{empty} ౧ ౨ ౩ ౪ ౫ ౬ ౭ ౮ ౯ ౦ {empty} ౄ {b}","{t} {empty} ౖ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} ౕ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} ౡ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} ఌ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["te"]},jQuery.keyboard.layouts["th-ked"]={name:"Thai Kedmanee (ไทย Kedmanee)",normal:["_ ๅ / - ภ ถ ุ ึ ค ต จ ข ช {b}","{t} ๆ ไ ำ พ ะ ั ี ร น ย บ ล ฃ","ฟ ห ก ด เ ้ ่ า ส ว ง {enter}","{s} ผ ป แ อ ิ ื ท ม ใ ฝ {s}","{space} {accept}"],shift:["% + ๑ ๒ ๓ ๔ ู ฿ ๕ ๖ ๗ ๘ ๙ {b}",'{t} ๐ " ฎ ฑ ธ ํ ๊ ณ ฯ ญ ฐ , ฅ',"ฤ ฆ ฏ โ ฌ ็ ๋ ษ ศ ซ . {enter}","{s} ( ) ฉ ฮ ฺ ์ ? ฒ ฬ ฦ {s}","{space} {accept}"],lang:["th-ked"]},jQuery.keyboard.layouts["th-pat"]={name:"Thai Pattachote (ไทย Pattachote)",normal:["_ = ๒ ๓ ๔ ๕ ู ๗ ๘ ๙ ๐ ๑ ๖ {b}","{t} ็ ต ย อ ร ่ ด ม ว แ ใ ฌ ","้ ท ง ก ั ี า น เ ไ ข {enter}","{s} บ ป ล ห ิ ค ส ะ จ พ {s}","{space} {accept}"],shift:['฿ + " / , ? ุ _ . ( ) - % {b}',"{t} ๊ ฤ ๆ ญ ษ ึ ฝ ซ ถ ฒ ฯ ฦ ํ","๋ ธ ำ ณ ์ ื ผ ช โ ฆ ฑ {enter}","{s} ฎ ฏ ฐ ภ ั ศ ฮ ฟ ฉ ฬ {s}","{space} {accept}"],lang:["th-pat"]},jQuery.keyboard.layouts["tr-f"]={name:"Turkish F (Türkçe F)",normal:["+ 1 2 3 4 5 6 7 8 9 0 / - {b}","{t} f g ğ ı o d r n h p q w x","u i e a ü t k m l y ş {enter}","{s} < j ö v c ç z s b . , {s}","{space} {alt} {accept}"],shift:["* ! \" ^ $ % & ' ( ) = ? _ {b}","{t} F G Ğ I O D R N H P Q W X","U İ E A Ü T K M L Y Ş {enter}","{s} > J Ö V C Ç Z S B : ; {s}","{space} {alt} {accept}"],alt:["¬ ¹ ² # ¼ ½ ¾ { [ ] } \\ | {b}","{t} @ {empty} {empty} ¶ {empty} ¥ {empty} {empty} ø £ ¨ ~ `","æ ß € {empty} {empty} {empty} {empty} {empty} {empty} ´ {empty} {enter}","{s} | « » ¢ {empty} {empty} {empty} µ × ÷ - {s}","{space} {alt} {accept}"],"alt-shift":["{empty} ¡ {empty} ³ ¤ {empty} {empty} {empty} {empty} {empty} {empty} ¿ {empty} {b}","{t} {empty} {empty} {empty} ® {empty} {empty} {empty} {empty} Ø {empty} {empty} {empty} {empty}","Æ § {empty} ª {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} ¦ < > © {empty} {empty} {empty} º {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["tr-f"]},jQuery.keyboard.layouts["tr-q"]={name:"Turkish Q (Türkçe Q)",normal:['" 1 2 3 4 5 6 7 8 9 0 * - {b}',"{t} q w e r t y u ı o p ğ ü ,","a s d f g h j k l ş i {enter}","{s} < z x c v b n m ö ç . {s}","{space} {alt} {accept}"],shift:["é ! ' ^ + % & / ( ) = ? _ {b}","{t} Q W E R T Y U I O P Ğ Ü ;","A S D F G H J K L Ş İ {enter}","{s} > Z X C V B N M Ö Ç : {s}","{space} {alt} {accept}"],alt:["< > £ # $ ½ {empty} { [ ] } \\ | {b}","{t} @ {empty} € {empty} {empty} {empty} {empty} i {empty} {empty} ¨ ~ `","æ ß {empty} {empty} {empty} {empty} {empty} {empty} {empty} ´ {empty} {enter}","{s} | {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} İ {empty} {empty} {empty} {empty} {empty}","Æ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["tr-q"]},jQuery.keyboard.layouts.uk={name:"Ukrainian (Українська)",normal:["´ 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} й ц у к е н г ш щ з х ї ґ","ф і в а п р о л д ж є {enter}","{s} я ч с м и т ь б ю . {s}","{space} {accept}"],shift:['~ ! " № ; % : ? * ( ) _ + {b}',"{t} Й Ц У К Е Н Г Ш Щ З Х Ї Ґ","Ф І В А П Р О Л Д Ж Є {enter}","{s} Я Ч С М И Т Ь Б Ю , {s}","{space} {accept}"],lang:["uk"]},jQuery.keyboard.layouts["en-gb"]={name:"United Kingdom (United Kingdom)",normal:["` 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} q w e r t y u i o p [ ] #","a s d f g h j k l ; ' {enter}","{s} \\ z x c v b n m , . / {s}","{space} {alt} {accept}"],shift:['¬ ! " £ $ % ^ & * ( ) _ + {b}',"{t} Q W E R T Y U I O P { } ~","A S D F G H J K L : @ {enter}","{s} | Z X C V B N M < > ? {s}","{space} {alt} {accept}"],alt:["¦ {empty} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} é {empty} {empty} {empty} ú í ó {empty} {empty} {empty} {empty}","á {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} É {empty} {empty} {empty} Ú Í Ó {empty} {empty} {empty} {empty}","Á {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["en-gb"]},jQuery.keyboard.layouts.ur={name:"Urdu (اردو)",rtl:!0,normal:["` 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} ط ص ھ د ٹ پ ت ب ج ح ] [ \\","م و ر ن ل ہ ا ک ی ؛ ' {enter}","{s} ق ف ے س ش غ ع ، ۔ / {s}","{space} {accept}"],shift:["~ ! @ # $ ٪ ^ ۖ ٭ ) ( _ + {b}","{t} ظ ض ذ ڈ ث ّ ۃ ـ چ خ } { |",'ژ ز ڑ ں ۂ ء آ گ ي : " {enter}',"{s} {ZWJ} {ZWNJ} ۓ {LRM} ؤ ئ {RLM} > < ؟ {s}","{space} {accept}"],lang:["ur"]},jQuery.keyboard.layouts["ur-ph"]={name:"Urdu Phonetic (اردو Phonetic)",rtl:!0,normal:["ٍ ۱ ۲ ۳ ۴ ۵ ۶ ۷ ۸ ۹ ۰ - = {b}","{t} ق و ع ر ت ے ء ی ہ پ [ ] \\","ا س د ف گ ح ج ک ل ؛ ' {enter}","{s} ز ش چ ط ب ن م ، ۔ / {s}","{space} {alt} {accept}"],shift:["ً 1 2 3 4 5 6 7 8 9 0 _ + {b}","{t} ْ ّ ٰ ڑ ٹ َ ئ ِ ۃ ُ { } |",'آ ص ڈ {empty} غ ھ ض خ {empty} : " {enter}',"{s} ذ ژ ث ظ {empty} ں ٘ {empty} ٫ ؟ {s}","{space} {alt} {accept}"],alt:["~ ! @ # $ ٪ ^ & * ( ) {empty} {empty} {b}","{t} {empty} ٖ ؓ ؔ ٔ ؑ {empty} ٗ {empty} {empty} {empty}","ﷲ ؐ ﷺ {empty} {empty} ؒ ﷻ {empty} {empty} {empty} {empty} {enter}","{s} ؏ ؎ {empty} ﷽ {empty} < > {empty} {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["ur-ph"]},jQuery.keyboard.layouts["en-us"]={name:"US Standard (US Standard)",normal:["` 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{s} z x c v b n m , . / {s}","{space} {accept}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {b}","{t} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{s} Z X C V B N M < > ? {s}","{space} {accept}"],lang:["en-us"]},jQuery.keyboard.layouts["en-int"]={name:"US International (US International)",normal:["` 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{s} z x c v b n m , . / {s}","{space} {alt} {accept}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {b}","{t} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{s} Z X C V B N M < > ? {s}","{space} {alt} {accept}"],alt:["{empty} ¡ ² ³ ¤ € ¼ ½ ¾ ‘ ’ ¥ × {b}","{t} ä å é ® þ ü ú í ó ö « » ¬","á ß ð {empty} {empty} {empty} {empty} {empty} ø ¶ ´ {enter}","{s} æ {empty} © {empty} {empty} ñ µ ç {empty} ¿ {s}","{space} {alt} {accept}"],"alt-shift":["{empty} ¹ {empty} {empty} £ {empty} {empty} {empty} {empty} {empty} {empty} {empty} ÷ {b}","{t} Ä Å É {empty} Þ Ü Ú Í Ó Ö {empty} {empty} ¦","Á § Ð {empty} {empty} {empty} {empty} {empty} Ø ° ¨ {enter}","{s} Æ {empty} ¢ {empty} {empty} Ñ {empty} Ç {empty} {empty} {s}","{space} {alt} {accept}"],lang:["en-int"]},jQuery.keyboard.layouts.uz={name:"Uzbek Cyrillic (Ўзбекча)",normal:["ё 1 2 3 4 5 6 7 8 9 0 ғ ҳ {b}","{t} й ц у к е н г ш ў з х ъ \\","ф қ в а п р о л д ж э {enter}","{s} я ч с м и т ь б ю . {s}","{space} {accept}"],shift:['Ё ! " № ; % : ? * ( ) Ғ Ҳ {b}',"{t} Й Ц У К Е Н Г Ш Ў З Х Ъ /","Ф Қ В А П Р О Л Д Ж Э {enter}","{s} Я Ч С М И Т Ь Б Ю , {s}","{space} {accept}"],lang:["uz"]},jQuery.keyboard.layouts.vi={name:"Vietnamese (Tiếng Việt)",normal:["` ă â ê ô ̀ ̉ ̃ ́ ̣ đ - ₫ {b}","{t} q w e r t y u i o p ư ơ \\","a s d f g h j k l ; ' {enter}","{s} z x c v b n m , . / {s}","{space} {alt} {accept}"],shift:["~ Ă Â Ê Ô ̀ ̉ ̃ ́ ̣ Đ _ + {b}","{t} Q W E R T Y U I O P Ư Ơ |",'A S D F G H J K L : " {enter}',"{s} Z X C V B N M < > ? {s}","{space} {alt} {accept}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{s} z x c v b n m , . / {s}","{space} {alt} {accept}"],"alt-shift":["~ ! @ # $ % ^ & * ( ) _ + {b}","{t} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{s} Z X C V B N M < > ? {s}","{space} {alt} {accept}"],lang:["vi"]},jQuery.keyboard.layouts["hy-arevmda"]={name:"Western Armenian (Հայերեն արեւմուտք)",normal:["՝ : ձ յ ՛ , - . « » օ ռ ժ {b}","{t} խ վ է ր դ ե ը ի ո բ չ ջ '","ա ս տ ֆ կ հ ճ ք լ թ փ {enter}","{s} զ ց գ ւ պ ն մ շ ղ ծ {s}","{space} {accept}"],shift:["՜ 1 Ձ Յ 3 4 9 և ( ) Օ Ռ Ժ {b}","{t} Խ Վ Է Ր Դ Ե Ը Ի Ո Բ Չ Ջ ՞","Ա Ս Տ Ֆ Կ Հ Ճ Ք Լ Թ Փ {enter}","{s} Զ Ց Գ Ւ Պ Ն Մ Շ Ղ Ծ {s}","{space} {accept}"],lang:["hy-arevmda"]},jQuery.keyboard.layouts.yi={name:"Yiddish (ייִדיש)",rtl:!0,normal:["; 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} / ' ק ר א ט ו ן ם פ [ ] \\","ש ד ג כ ע י ח ל ך ף , {enter}","{s} ז ס ב ה נ מ צ ת ץ . {s}","{space} {alt} {accept}"],shift:["~ ! @ # $ % ^ * & ( ) _ + {b}","{t} ‟ „ ` אָ אַ װ וּ וֹ פֿ פּ { } |",'שׁ שׂ {empty} כּ ױ יִ ? ײ {empty} : " {enter}',"{s} ≠ בֿ בּ ־ – — תּ < > ? {s}","{space} {alt} {accept}"],alt:["ְ ֱ ֲ ֳ ִ ֵ ֶ ַ ָ ׂ ׁ ֹ ּ {b}","{t} ‟ „ ` אָ אַ װ וּ וֹ פֿ פּ ֽ ֿ ֻ","שׁ שׂ {empty} כּ ױ יִ ? ײ {empty} ׃ ׀ {enter}","{s} ≠ בֿ בּ ־ – — תּ ׳ ״ ₪ {s}","{space} {alt} {accept}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{s} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {s}","{space} {alt} {accept}"],lang:["yi"]},jQuery.keyboard.layouts["yi-lebt"]={name:"Yiddish (Yidish Lebt) (ייִדיש לעבט)",rtl:!0,normal:["; 1 2 3 4 5 6 7 8 9 0 - = {b}","{t} / ' ק ר א ט ו ן ם פ ] [ \\","ש ד ג כ ע י ח ל ך ף , {enter}","{s} ז ס ב ה נ מ צ ת ץ . {s}","{space} {alt} {accept}"],shift:["~ ! @ # $ % ^ & * ) ( _ + {b}","{t} {empty} {empty} {empty} {empty} {empty} {empty} וֹ {empty} {empty} {empty} } { |",'שׁ {empty} „ {empty} {empty} {empty} {empty} לֹ {empty} : " {enter}',"{s} {empty} {empty} לֹ {empty} {empty} {empty} {empty} > < ? {s}","{space} {alt} {accept}"],alt:["{empty} ֲ ֳ ֱ ִ ֵ ַ ָ ֻ ֶ ְ ֿ ֹ {b}","{t} ״ ׳ € {empty} אַ אָ וּ וו ּ פּ „ ‚ ־","שׂ ₪ {empty} כּ {empty} יִ ײַ וי {empty} פֿ ; {enter}","{s} – — בֿ ” ֜ ’ שׁ תּ {empty} … {s}","{space} {alt} {accept}"],"alt-shift":["{empty} ֲ ֳ ֱ ִ ֵ ַ ָ ֻ ֶ ְ ֿ ֹ {b}","{t} ״ ׳ {empty} {empty} אַ אָ וּ װ {empty} פּ ” ’ ־","שׂ {empty} {empty} כּ ﬠ יִ ײַ ױ ײ פֿ ֲ {enter}","{s} – — בֿ “ ֞ ‘ שׁ תּ {empty} {empty} {s}","{space} {alt} {accept}"],lang:["yi-lebt"]},jQuery.keyboard.language.amh={language:"ፊደል (Fidal) Amharic and Gǝʿǝz",display:{a:"✔:መቀበል (Shift+Enter)",accept:"Accept:መቀበል (Shift+Enter)",alt:"AltGr:ተለዋጭ፡ ፊደል፡",b:"←:ማጥፊያ",bksp:"Bksp:ማጥፊያ",c:"✖:መሠረዝ",cancel:"Cancel:መሠረዝ",clear:"C:ማፅዳት",combo:"ö:Toggle Combo Keys",dec:".:የአሀዝ፡ ቁጥር",e:"↵:መጀመር",enter:"Enter:መጀመር",lock:"⇪ Lock:አሮጌ፡ ለውጥ",s:"⇧:መለወጥ",shift:"Shift:መለወጥ",sign:"±:የሒሣብ፡ ምልክት፡ መቀየር",space:" :ክፍት፡ቦታ",t:"⇥:መግፊያ",tab:"⇥ Tab:መግፊያ"},wheelMessage:"Use mousewheel to see other keys",comboRegex:/([`\'~\^\"a-z0-9\{\}\[\]\|<>])([a-z0-9_\-\.\|`\'~\^\"!,=])/gim,combos:{a:{a:"ʾ",".":"ạ",1:"à",2:"á",3:"ã","=":"â",9:"ä","-":"ā",",":"፠"},A:{A:"ʿ","-":"Ā",1:"À",2:"Á",3:"Ã",9:"Ä","=":"Â"},e:{e:"ǝ","-":"ē",",":"፧",1:"è",2:"é",3:"ẽ",9:"ë","=":"ê"},E:{E:"Ǝ","-":"Ē",1:"È",2:"É",3:"Ẽ",9:"Ë","=":"Ê"},i:{1:"ì",2:"í",3:"ĩ",9:"ï",9:"ö","=":"î"},I:{1:"Ì",2:"Í",3:"Ĩ",9:"Ï","=":"Î"},o:{1:"ò",2:"ó",3:"õ","=":"ô"},O:{1:"Ò",2:"Ó",3:"Õ",9:"Ö","=":"Ô"},u:{1:"ù",2:"ú",3:"ũ",9:"ü","=":"û"},U:{1:"Ù",2:"Ú",3:"Ũ",9:"Ü","=":"Û"},h:{a:"ሀ",u:"ሁ",i:"ሂ",A:"ሃ",E:"ሄ",e:"ህ",o:"ሆ","!":"ሇ",_:"ḫ",".":"ḥ"},l:{a:"ለ",u:"ሉ",i:"ሊ",A:"ላ",E:"ሌ",e:"ል",o:"ሎ","!":"ሏ"},H:{a:"ሐ",u:"ሑ",i:"ሒ",A:"ሓ",E:"ሔ",e:"ሕ",o:"ሖ","!":"ሗ",_:"Ḫ"},m:{a:"መ",u:"ሙ",i:"ሚ",A:"ማ",E:"ሜ",e:"ም",o:"ሞ","!":"ሟ"},S:{a:"ሠ",u:"ሡ",i:"ሢ",A:"ሣ",E:"ሤ",e:"ሥ",o:"ሦ","!":"ሧ",".":"Ṣ","|":"Š",6:"Ś"},r:{a:"ረ",u:"ሩ",i:"ሪ",A:"ራ",E:"ሬ",e:"ር",o:"ሮ","!":"ሯ"},s:{a:"ሰ",u:"ሱ",i:"ሲ",A:"ሳ",E:"ሴ",e:"ስ",o:"ሶ","!":"ሷ",".":"ṣ","|":"š",6:"ś"},v:{a:"ሸ",u:"ሹ",i:"ሺ",A:"ሻ",E:"ሼ",e:"ሽ",o:"ሾ","!":"ሿ"},q:{a:"ቀ",u:"ቁ",i:"ቂ",A:"ቃ",E:"ቄ",e:"ቅ",o:"ቆ","!":"ቇ"},b:{a:"በ",u:"ቡ",i:"ቢ",A:"ባ",E:"ቤ",e:"ብ",o:"ቦ","!":"ቧ",",":"፣"},B:{a:"ቨ",u:"ቩ",i:"ቪ",A:"ቫ",E:"ቬ",e:"ቭ",o:"ቮ","!":"ቯ"},t:{a:"ተ",u:"ቱ",i:"ቲ",A:"ታ",E:"ቴ",e:"ት",o:"ቶ","!":"ቷ",".":"ṭ"},c:{a:"ቸ",u:"ቹ",i:"ቺ",A:"ቻ",E:"ቼ",e:"ች",o:"ቾ","!":"ቿ",_:"č̣","|":"č",",":"፤"},x:{a:"ኀ",u:"ኁ",i:"ኂ",A:"ኃ",E:"ኄ",e:"ኅ",o:"ኆ","!":"ኇ"},n:{a:"ነ",u:"ኑ",i:"ኒ",A:"ና",E:"ኔ",e:"ን",o:"ኖ","!":"ኗ",3:"ñ"},N:{a:"ኘ",u:"ኙ",i:"ኚ",A:"ኛ",E:"ኜ",e:"ኝ",o:"ኞ","!":"ኟ",3:"Ñ"},"'":{a:"አ",u:"ኡ",i:"ኢ",A:"ኣ",E:"ኤ",e:"እ",o:"ኦ","!":"ኧ"},k:{a:"ከ",u:"ኩ",i:"ኪ",A:"ካ",E:"ኬ",e:"ክ",o:"ኮ","!":"ኯ"},K:{a:"ኸ",u:"ኹ",i:"ኺ",A:"ኻ",E:"ኼ",e:"ኽ",o:"ኾ"},w:{a:"ወ",u:"ዉ",i:"ዊ",A:"ዋ",E:"ዌ",e:"ው",o:"ዎ","!":"ዏ","=":"ʷ"},W:{a:"ዐ",u:"ዑ",i:"ዒ",A:"ዓ",E:"ዔ",e:"ዕ",o:"ዖ"},z:{a:"ዘ",u:"ዙ",i:"ዚ",A:"ዛ",E:"ዜ",e:"ዝ",o:"ዞ","!":"ዟ","|":"ž"},Z:{a:"ዠ",u:"ዡ",i:"ዢ",A:"ዣ",E:"ዤ",e:"ዥ",o:"ዦ","!":"ዧ","|":"Ž"},y:{a:"የ",u:"ዩ",i:"ዪ",A:"ያ",E:"ዬ",e:"ይ",o:"ዮ","!":"ዯ",1:"ỳ",2:"ý",3:"ỹ",9:"ÿ","=":"ŷ"},d:{a:"ደ",u:"ዱ",i:"ዲ",A:"ዳ",E:"ዴ",e:"ድ",o:"ዶ","!":"ዷ",".":"ḍ",",":"፦"},L:{a:"ዸ",u:"ዹ",i:"ዺ",A:"ዻ",E:"ዼ",e:"ዽ",o:"ዾ","!":"ዿ"},D:{a:"ጀ",u:"ጁ",i:"ጂ",A:"ጃ",E:"ጄ",e:"ጅ",o:"ጆ","!":"ጇ",".":"Ḍ"},g:{a:"ገ",u:"ጉ",i:"ጊ",A:"ጋ",E:"ጌ",e:"ግ",o:"ጎ","!":"ጏ","|":"ǧ"},G:{a:"ጘ",u:"ጙ",i:"ጚ",A:"ጛ",E:"ጜ",e:"ጝ",o:"ጞ","!":"ጟ","|":"Ǧ"},T:{a:"ጠ",u:"ጡ",i:"ጢ",A:"ጣ",E:"ጤ",e:"ጥ",o:"ጦ","!":"ጧ",".":"Ṭ"},C:{a:"ጨ",u:"ጩ",i:"ጪ",A:"ጫ",E:"ጬ",e:"ጭ",o:"ጮ","!":"ጯ"},p:{a:"ጰ",u:"ጱ",i:"ጲ",A:"ጳ",E:"ጴ",e:"ጵ",o:"ጶ","!":"ጷ",6:"ṗ"},j:{a:"ጸ",u:"ጹ",i:"ጺ",A:"ጻ",E:"ጼ",e:"ጽ",o:"ጾ","!":"ጿ"},J:{a:"ፀ",u:"ፁ",i:"ፂ",A:"ፃ",E:"ፄ",e:"ፅ",o:"ፆ","!":"ፇ"},f:{a:"ፈ",u:"ፉ",i:"ፊ",A:"ፋ",E:"ፌ",e:"ፍ",o:"ፎ","!":"ፏ",",":"፨"},P:{a:"ፐ",u:"ፑ",i:"ፒ",A:"ፓ",E:"ፔ",e:"ፕ",o:"ፖ","!":"ፗ",6:"Ṗ"},Q:{a:"ቐ",u:"ቑ",i:"ቒ",A:"ቓ",E:"ቔ",e:"ቕ",o:"ቖ"},"[":{a:"ቈ",i:"ቊ",A:"ቋ",E:"ቌ",e:"ቍ"},"]":{a:"ኈ",i:"ኊ",A:"ኋ",E:"ኌ",e:"ኍ"},"}":{a:"ኰ",i:"ኲ",A:"ኳ",E:"ኴ",e:"ኵ"},"{":{a:"ጐ",i:"ጒ",A:"ጓ",E:"ጔ",e:"ጕ"},M:{a:"ᎀ",i:"ᎁ",E:"ᎂ",e:"ᎃ"},"|":{a:"ᎄ",i:"ᎅ",E:"ᎆ",e:"ᎇ"},"<":{a:"ᎈ",i:"ᎉ",E:"ᎊ",e:"ᎋ"},">":{a:"ᎌ",i:"ᎍ",E:"ᎎ",e:"ᎏ"},Y:{1:"Ỳ",2:"Ý",3:"Ỹ",9:"Ÿ","=":"Ŷ"}},rtl:!1},jQuery.keyboard.language.de={language:"Deutsch (German)",display:{a:"✔:Übernehmen (Umschalt+Enter)",accept:"Übernehmen:Übernehmen (Umschalt+Enter)",alt:"AltGr:Alt Graph",b:"←:Rücktaste",bksp:"Rück:Rücktaste",c:"✖:Abbrechen (Esc)",cancel:"Abbrechen:Abbrechen (Esc)",clear:"C:Löschen",combo:"ö:Tottasten umschalten",dec:",:Dezimal",e:"↵:Eingabe",enter:"Enter:Eingabe",lock:"⇩:Feststelltaste",s:"⇧:Umschalttaste",shift:"Umschalt:Umschalttaste",sign:"±:Vorzeichen wechseln",space:" :Leertaste",t:"⇥:Tabulatortaste",tab:"⇥ Tab:Tabulatortaste"},wheelMessage:"Mausrad benutzen, um weitere Tasten zu sehen"},jQuery.keyboard.language.es={language:"Español (Spanish)",display:{a:"✔:Acceptar (Cambio+Inscribir)",accept:"Acceptar:Acceptar (Cambio+Inscribir)",alt:"AltGr:Grafemas Alternativos",b:"←:Retroceso",bksp:"Bksp:Retroceso",c:"✖:Cancelar (Esc)",cancel:"Cancelar:Cancelar (Esc)",clear:"C:Vaciar",combo:"ö:Alternar las Teclas Combinados",dec:",:Decimal",e:"↵:Inscribir",enter:"Inscribir:Inscribir",lock:"⇪ Bloq:Mayús",s:"⇧:Cambio",shift:"Cambio:Cambio",sign:"±:Cambiar Signo",space:" :Espacio",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Utilice la rueda del mouse para ver otras teclas"},jQuery.keyboard.language.fa={language:"فارسی (Farsi)",display:{a:"✔:تأیید (Shift+Enter)",accept:"تأیید:تأیید (Shift+Enter)",alt:"Lng:Alternate Graphemes",b:"←:⬅ Backspace",bksp:"⬅ Bksp:⬅ Backspace",c:"✖:انصراف (Esc)",cancel:"انصراف:انصراف (Esc)",clear:"C:Clear",combo:"ö:Toggle Combo Keys",dec:".:Decimal",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:Change Sign",space:" :Space",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Use mousewheel to see other keys",rtl:!0},jQuery.keyboard.language.fr={language:"Français (French)",display:{a:"✔:Valider (Shift+Enter)",accept:"Valider:Valider (Shift+Enter)",alt:"AltGr:Charactère alternatif",b:"←:Suppr arrière",bksp:"←Suppr:Suppr arrière",c:"✖:Annuler",cancel:"Annuler:Annuler (Échap)",clear:"C:Effacer",combo:"ö:Bacsuler les touches combo",dec:".:Decimal",e:"↵:Entrée",enter:"Entrée:Entrée",lock:"⇪ Verr Mag:Verouillage majuscule",s:"⇧:Majuscule",shift:"Maj:Majuscule",sign:"±:Change de signe",space:" :Espace",t:"⇥:Tabulation",tab:"⇥ Tab:Tabulation"},wheelMessage:"Utiliser la molette de la souris pour voir les autres lettres"},jQuery.keyboard.language.he={language:"עברית (Hebrew)",display:{a:"✔:אישור (Shift+Enter)",accept:"אישור:אישור (Shift+Enter)",alt:"Alt:תווים נוספים",b:"←:Backspace",bksp:"Bksp:Backspace",c:"✖:ביטול (Esc)",cancel:"ביטול:ביטול (Esc)",clear:"C:ניקוי",combo:"ö:Toggle Combo Keys",dec:".:נקודה עשרונית",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:שינוי סימן",space:" :רווח",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"ניתן להשתמש בגלגלת העכבר כדי לראות מקשים נוספים",rtl:!0},jQuery.keyboard.language.hu={language:"Magyar (Hungarian)",display:{a:"✔:Rendben (Shift+Enter)",accept:"Rendben:Rendben (Shift+Enter)",alt:"AltGr:Alternate Graphemes",b:"←:Backspace",bksp:"Töröl:Backspace",c:"✖:Cancel (Esc)",cancel:"Mégsem:Cancel (Esc)",clear:"C:Clear",combo:"ö:Toggle Combo Keys",dec:".:Decimal",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:Change Sign",space:" :Space",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Használd az egér görgetőt a többi billentyű átváltáshoz"},jQuery.keyboard.language.it={language:"Italiano (Italian)",display:{a:"✔:Accetta (Shift+Enter)",accept:"Accetta:Accetta (Shift+Enter)",alt:"AltGr:Grafemi Alternativi",b:"←:Cancella",bksp:"Canc:Cancella",c:"✖:Annulla (Esc)",cancel:"Annulla:Annulla (Esc)",clear:"C:Pulisci",combo:"ö:Tasti Combinati",dec:",:Decimale",e:"↵:Invio",enter:"Invio:Invio",lock:"⇪ Bloc:Bloc Maiusc",s:"⇧:Maiusc",shift:"Maiusc:Maiusc",sign:"±:Cambia Segno",space:" :Spazio",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Usa la rotella del mouse per vedere altri tasti"},jQuery.keyboard.language.lv={language:"Latviešu (Latvian)",display:{a:"✔:Pieņemt (Shift+Enter)",accept:"Pieņemt:Pieņemt (Shift+Enter)",alt:"AltGr:Alternēšanas taustiņš",b:"←:Atpakaļatkāpe",bksp:"Bksp:Atpakaļatkāpe",c:"✖:Atcelt (Esc)",cancel:"Atcelt:Atcelt (Esc)",clear:"C:Clear",combo:"ö:Toggle Combo Keys",dec:".:Decimal",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:Change Sign",space:" :Space",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Izmanto peles ritenīti, lai apskatītu citus taustiņus",combos:{"'":{c:"ć",C:"Ć",e:"é",E:"É",n:"ń",N:"Ń",o:"ó",O:"Ó",s:"ś",S:"Ś",z:"ź",Z:"Ź"},"¨":{a:"ä",A:"Ä",o:"ö",O:"Ö",u:"ü",U:"Ü"},"°":{a:"å",A:"Å",e:"ė",E:"Ė",g:"ġ",z:"ż",Z:"Ż"}},comboRegex:/([`\'~\^\"ao\u00a8\u00b0])([a-z])/gim},jQuery.keyboard.language.my={language:"ဗမာ (Burmese)",display:{a:"✔:Accept (Shift+Enter)",accept:"Accept:Accept (Shift+Enter)",alt:"AltGr:Alternate Graphemes",b:"←:Backspace",bksp:"Bksp:Backspace",c:"✖:Cancel (Esc)",cancel:"Cancel:Cancel (Esc)",clear:"C:ရှင်းလင်းရန်",combo:"ö:Toggle Combo Keys",dec:".:ဒသမ",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:Change Sign",space:" :Space",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"အခြားခလုတ်များကို မြင်ရစေရန် မောက်စ်ဝှီးလ်ကို အသုံးပြုပါ"},jQuery.keyboard.language.pl={language:"Polski (Polish)",display:{a:"✔:Akceptuj (Shift+Enter)",accept:"Accept:Akceptuj (Shift+Enter)",alt:"AltGr:Polskie znaki",b:"←:Cofnij",bksp:"Bksp:Cofnij",c:"✖:Anuluj (Esc)",cancel:"Cancel:Anuluj (Esc)",clear:"C:Czyść",combo:"ö:Klawisze kombo",dec:".:Dziesiętny",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:Zmień znak",space:" :Spacja",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Użyj rolki aby zobaczyć pozozstałe klawisze"},jQuery.keyboard.language.pt={language:"Português (Portuguese)",display:{a:"✔:Aceitar (Shift+Enter)",accept:"Aceitar:Concluir (Shift+Enter)",alt:"AltGr:Carateres Adicionais/CTRL+ALT",b:"←:Retroceder",bksp:"← Bksp:Retroceder",c:"✖:Cancelar/Escape (Esc)",cancel:"Cancel:Cancelar/Escape(Esc)",clear:"C:Limpar",combo:"ö:Acentuação Automática",dec:".:Decimal",e:"↵:Introduzir/Mudar de Linha",enter:"Enter↵:Introduzir/Mudar de Linha",lock:"⇪ Lock:CapsLock/Maiúsculas",s:"⇧:Shift/Maiúsculas",shift:"⇪ Shift:Maiúsculas-Minúsculas",sign:"±:Mudar Sinal",space:" :Espaço",t:"⇥:Tab/Tabela/Avançar",tab:"⇥ Tab:Tabela/Avançar"},wheelMessage:"Use a roda do rato/navegador para ver mais teclas",comboRegex:/([`\'~\^\"ao\u00b4])([a-z])/gim,combos:{"´":{a:"á",A:"Á",e:"é",E:"É",i:"í",I:"Í",o:"ó",O:"Ó",u:"ú",U:"Ú",y:"ý",Y:"Ý"},"'":{}}},jQuery.keyboard.language.ro={language:"Română (Romanian)",display:{a:"✔:Accept (Shift+Enter)",accept:"Accept:Accept (Shift+Enter)",alt:"AltGr:Alternate Graphemes",b:"←:Backspace",bksp:"Bksp:Backspace",c:"✖:Cancel (Esc)",cancel:"Cancel:Cancel (Esc)",clear:"C:Clear",combo:"ö:Toggle Combo Keys",dec:",:Decimal",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:Schimba semnul",space:" :Spatiu",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Foloseste rotita mouse-ului pentru a vedea si celelalte caractere"},jQuery.keyboard.language.ru={language:"Русский (Russian)",display:{a:"✔:Сохранить (Shift+Enter)",accept:"Сохранить:Сохранить (Shift+Enter)",alt:"РУС:Русская клавиатура",b:"←:Удалить символ слева",bksp:"⇦:Удалить символ слева",c:"✖:Отменить (Esc)",cancel:"Отменить:Отменить (Esc)",clear:"C:Очистить",combo:"ö:Toggle Combo Keys",dec:",:Decimal",e:"↵:Ввод",enter:"Ввод:Перевод строки",lock:"⇪ Lock:Caps Lock",s:"⇧:Верхний регистр",shift:"⇧:Верхний регистр",sign:"±:Сменить знак",space:"Пробел:",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Use mousewheel to see other keys"},jQuery.keyboard.language.sq={language:"Shqip (Albanian)",display:{a:"✔:Prano (Shift+Enter)",accept:"Prano:Prano (Shift+Enter)",alt:"Alt:Alternativ",b:"←:Hapësirën Mbrapa",bksp:"Bksp:Hapësirën Mbrapa",c:"✖:Anuloj (Arratisjes)",cancel:"Anuloj:Anuloj (Arratisjes)",clear:"C:Qartë",combo:"ö:Kombinimi",dec:".:Decimal",e:"↵:Shkruani",enter:"Shkruani:Shkruani",lock:"⇪ Bllokoj:Caps Lock",next:"Next ⇨",prev:"⇦ Prev",s:"⇧:Ndryshim",shift:"Ndryshim:Ndryshim",sign:"±:Ndryshimi Regjistrohu",space:" :Hapësirë",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Përdorimi mousewheel për të parë çelësat e tjera",comboRegex:/([`\'~\^\"ao\/])([a-z])/gim,combos:{"/":{d:"đ",D:"Đ",l:"ł",L:"Ł"}}},jQuery.keyboard.language.syr={language:"\\u0723\\u0718\\u072a\\u071d\\u0730\\u072c (Syriac)",display:{a:"✔:ܚܶܦܳܕ݂ܐ (ܙܰܘܥܶܐ + ܥܒܰܪܬܐ)",accept:"ܚܶܦܳܕ݂ܐ:(ܙܰܘܥܶܐ + ܥܒܰܪܬܐ)",alt:"AltGr:ܒܶܕܳܠܐ ܓܪܰܦܝܟ ܕܥܰܪܬܐ",b:"←:ܙܪܰܥܠܐ ܕܝ ܕܥܰܪܬܐ",bksp:"← Back:ܙܪܰܥܠܐ ܕܝ ܕܥܰܪܬܐ",c:"✖:ܥܪܰܩܬܐ",cancel:"Esc:ܥܪܰܩܬܐ",clear:"C:ܠܚܳܝܐ",combo:"ö:ܙܪܰܥܠܐ ܡܝܬ݂ܐ",dec:",:ܢܘܩܙܐ ܕܪܰܩܡܶܐ (ܐܷܢܓܠܝܫܳܝܐ\\ܐܰܡܶܪܝܟܳܝܐ)",e:"↵:ܥܒܳܪܐ",enter:"↵ Enter:ܥܒܳܪܐ",lock:"⇩:ܐܷܬ݂ܘܳܬ݂ܶܐ ܙܰܘܥܶܐ ",s:"⇧:ܙܰܘܥܶܐ",shift:"⇧ Shift:ܙܰܘܥܶܐ",sign:"±:ܒܶܕܳܠܐ ܦ݁ܳܣܝܬܝܦ Space ܢܶܓܰܬܝܦ",space:"\\u0020:ܕܘܟܬ݂ܐ ܟ݂ܠܝܬ݂ܐ",t:"⇥:ܙܪܰܥܠܐ ܕܷܟܠܳܝܐ ܗܳܪܝܙܳܢܳܝܐ",tab:"⇥ Tab:ܙܪܰܥܠܐ ܕܷܟܠܳܝܐ ܗܳܪܝܙܳܢܳܝܐ"},wheelMessage:"Mausrad benutzen, um weitere Tasten zu sehen",rtl:!0};/*! jQuery UI Virtual Keyboard - Microsoft Generated Layouts */ +jQuery.keyboard.layouts["ms-Albanian"]={name:"ms-Albanian",lang:["sq"],normal:["\\ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t z u i o p ç @","a s d f g h j k l ë [ ] {enter}","{shift} < y x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['| ! " # $ % ^ & * ( ) _ + {bksp}',"{tab} Q W E R T Z U I O P Ç '","A S D F G H J K L Ë { } {enter}","{shift} > Y X C V B N M ; : ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {bksp}","{tab} \\ | {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ÷ ×","{empty} đ Đ [ ] {empty} {empty} ł Ł $ ß ¤ {enter}","{shift} {empty} {empty} {empty} {empty} @ { } § < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Arabic (101)"]={name:"ms-Arabic (101)",lang:["ar"],normal:["ذ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ض ص ث ق ف غ ع ه خ ح ج د \\","ش س ي ب ل ا ت ن م ك ط {enter}","{shift} ئ ء ؤ ر لا ى ة و ز ظ {shift}","{accept} {space} {cancel}"],shift:["ّ ! @ # $ % ^ & * ) ( _ + {bksp}","{tab} َ ً ُ ٌ لإ إ ‘ ÷ × ؛ < > |",'ِ ٍ ] [ لأ أ ـ ، / : " {enter}',"{shift} ~ ْ } { لآ آ ’ , . ؟ {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Arabic (102)"]={name:"ms-Arabic (102)",lang:["ar"],normal:["> 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ض ص ث ق ف غ ع ه خ ح ج د {enter}","ش س ي ب ل ا ت ن م ك ط ذ ","{shift} ـ ئ ء ؤ ر لا ى ة و ز ظ {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["< ! @ # $ % ^ & * ) ( _ + {bksp}","{tab} َ ً ُ ٌ لإ إ ‘ ÷ × ؛ } { {enter}",'\\ {empty} ] [ لأ أ ـ ، / : " ّ ',"{shift} | ~ ْ ِ ٍ لآ آ ’ , . ؟ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} ¤ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} َّ ًّ ُّ ٌّ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ","{shift} {empty} {empty} {empty} ِّ ٍّ {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Arabic (102) AZERTY"]={name:"ms-Arabic (102) AZERTY",lang:["ar"],normal:["> & é \" ' ( - è _ ç à ) = {bksp}","{tab} ض ص ث ق ف غ ع ه خ ح ج د {enter}","ش س ي ب ل ا ت ن م ك ط ذ ","{shift} \\ ئ ء ؤ ر لا ى ة و ز ظ {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["< 1 2 3 4 5 6 7 8 9 0 ° + {bksp}","{tab} َ ً ُ ٌ لإ إ ‘ ÷ × ؛ } { {enter}",'\\ {empty} ] [ لأ أ ـ ، / : " ّ ',"{shift} | ~ ْ ِ ٍ لآ آ ’ , . ؟ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} ¤ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} َّ ًّ ُّ ٌّ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ","{shift} {empty} {empty} {empty} ِّ ٍّ {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Armenian Eastern"]={name:"ms-Armenian Eastern",lang:["hy-e"],normal:["՝ : ձ յ ՛ , - . « » օ ռ ժ {bksp}","{tab} խ ւ է ր տ ե ը ի ո պ չ ջ '","ա ս դ ֆ ք հ ճ կ լ թ փ {enter}","{shift} ' զ ց գ վ բ ն մ շ ղ / {shift}","{accept} {space} {cancel}"],shift:["՜ 1 Ձ Յ 3 4 9 և ( ) Օ Ռ Ժ {bksp}","{tab} Խ Ւ Է Ր Տ Ե Ը Ի Ո Պ Չ Ջ ՞","Ա Ս Դ Ֆ Ք Հ Ճ Կ Լ Թ Փ {enter}","{shift} ՞ Զ Ց Գ Վ Բ Ն Մ Շ Ղ / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Armenian Western"]={name:"ms-Armenian Western",lang:["hy-w"],normal:["՝ : ձ յ ՛ , - . « » օ ռ ժ {bksp}","{tab} խ վ է ր դ ե ը ի ո բ չ ջ '","ա ս տ ֆ կ հ ճ ք լ թ փ {enter}","{shift} ' զ ց գ ւ պ ն մ շ ղ / {shift}","{accept} {space} {cancel}"],shift:["՜ 1 Ձ Յ 3 4 9 և ( ) Օ Ռ Ժ {bksp}","{tab} Խ Վ Է Ր Դ Ե Ը Ի Ո Բ Չ Ջ ՞","Ա Ս Տ Ֆ Կ Հ Ճ Ք Լ Թ Փ {enter}","{shift} ՞ Զ Ց Գ Ւ Պ Ն Մ Շ Ղ / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Assamese-INSCRIPT"]={name:"ms-Assamese-INSCRIPT",lang:["as"],normal:["॥ ১ ২ ৩ ৪ ৫ ৬ ৭ ৮ ৯ ০ - ৃ {bksp}","{tab} ৌ ৈ া ী ূ ব হ গ দ জ ড ় {empty}","ো ে ্ ি ু প ৰ ক ত চ ট {enter}","{shift} {empty} {empty} ং ম ন ৱ ল স , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["{empty} ! @ ্ৰ ৰ্ জ্ঞ ত্ৰ ক্ষ শ্ৰ ( ) ঃ ঋ {bksp}","{tab} ঔ ঐ আ ঈ ঊ ভ ঙ ঘ ধ ঝ ঢ ঞ {empty}","ও এ অ ই উ ফ {empty} খ থ ছ ঠ {enter}","{shift} {empty} {empty} ঁ ণ {empty} {empty} {empty} শ ষ । / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Azeri Cyrillic"]={name:"ms-Azeri Cyrillic",lang:["az"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ј ү у к е н г ш һ з х ҹ \\","ф ы в а п р о л д ж ҝ {enter}","{shift} \\ ә ч с м и т ғ б ө / {shift}","{accept} {space} {cancel}"],shift:['~ ! " № ; % : ? * ( ) _ + {bksp}',"{tab} Ј Ү У К Е Н Г Ш Һ З Х Ҹ /","Ф Ы В А П Р О Л Д Ж Ҝ {enter}","{shift} | Ә Ч С М И Т Ғ Б Ө / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Azeri Latin"]={name:"ms-Azeri Latin",lang:["az"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q ü e r t y u i o p ö ğ \\","a s d f g h j k l ı ə {enter}","{shift} \\ z x c v b n m ç ş / {shift}","{accept} {space} {cancel}"],shift:['~ ! " Ⅶ ; % : ? * ( ) _ + {bksp}',"{tab} Q Ü E R T Y U İ O P Ö Ğ /","A S D F G H J K L I Ə {enter}","{shift} / Z X C V B N M Ç Ş / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Bashkir"]={name:"ms-Bashkir",lang:["ba"],normal:["ә ! ө ҡ ғ ҫ : ҙ һ ? № - ү {bksp}","{tab} й ц у к е н г ш щ з х ъ ң","ф ы в а п р о л д ж э {enter}","{shift} я ч с м и т ь б ю / {shift}","{accept} {space} {cancel}"],shift:['Ә " Ө Ҡ Ғ Ҫ ; Ҙ Һ ( ) % Ү {bksp}',"{tab} Й Ц У К Е Н Г Ш Щ З Х Ъ Ң","Ф Ы В А П Р О Л Д Ж Э {enter}","{shift} Я Ч С М И Т Ь Б Ю / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Bosnian (Cyrillic)"]={name:"ms-Bosnian (Cyrillic)",lang:["bs"],normal:["` 1 2 3 4 5 6 7 8 9 0 ' + {bksp}","{tab} љ њ е р т з у и о п ш ђ ж","а с д ф г х ј к л ч ћ {enter}","{shift} < ѕ џ ц в б н м , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['~ ! " # $ % & / ( ) = ? * {bksp}',"{tab} Љ Њ Е Р Т З У И О П Ш Ђ Ж","А С Д Ф Г Х Ј К Л Ч Ћ {enter}","{shift} > Ѕ Џ Ц В Б Н М ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} ^ {empty} ° {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} \\ | € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} [ ] {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} @ { } § < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Belarusian"]={name:"ms-Belarusian",lang:["be"],normal:["ё 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} й ц у к е н г ш ў з х ' \\","ф ы в а п р о л д ж э {enter}","{shift} \\ я ч с м і т ь б ю / {shift}","{accept} {space} {cancel}"],shift:['Ё ! " № ; % : ? * ( ) _ + {bksp}',"{tab} Й Ц У К Е Н Г Ш Ў З Х ' /","Ф Ы В А П Р О Л Д Ж Э {enter}","{shift} / Я Ч С М І Т Ь Б Ю / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Belgian (Comma)"]={name:"ms-Belgian (Comma)",lang:["nl","fr","de"],normal:["² & é \" ' ( § è ! ç à ) - {bksp}","{tab} a z e r t y u i o p ^ $ µ","q s d f g h j k l m ù {enter}","{shift} < w x c v b n , ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["³ 1 2 3 4 5 6 7 8 9 0 ° _ {bksp}","{tab} A Z E R T Y U I O P ¨ * £","Q S D F G H J K L M % {enter}","{shift} > W X C V B N ? . / / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} | @ # { [ ^ {empty} {empty} { } {empty} {empty} {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ] {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ´ {enter}","{shift} \\ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Belgian French"]={name:"ms-Belgian French",lang:["nl-fr","fr"],normal:["² & é \" ' ( § è ! ç à ) - {bksp}","{tab} a z e r t y u i o p ^ $ µ","q s d f g h j k l m ù {enter}","{shift} < w x c v b n , ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["³ 1 2 3 4 5 6 7 8 9 0 ° _ {bksp}","{tab} A Z E R T Y U I O P ¨ * £","Q S D F G H J K L M % {enter}","{shift} > W X C V B N ? . / / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} | @ # { [ ^ {empty} {empty} { } {empty} {empty} {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ] {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ´ {enter}","{shift} \\ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Bengali"]={name:"ms-Bengali",lang:["bn"],normal:["1 2 3 4 5 6 7 8 9 0 - ৃ {bksp}","{tab} ৌ ৈ া ী ূ ব হ গ দ জ ড ়","ো ে ্ ি ু প র ক ত চ ট {enter}","{shift} ং ম ন ব ল স , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["{empty} {empty} ্র র্ জ্র ত্ষ ক্র শ্র ( ) ঃ ঋ {bksp}","{tab} ঔ ঐ আ ঈ ঊ ভ ঙ ঘ ধ ঝ ঢ ঞ","ও এ অ ই উ ফ {empty} খ থ ছ ঠ {enter}","{shift} ঁ ণ {empty} {empty} {empty} শ ষ { / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["১ ২ ৩ ৪ ৫ ৬ ৭ ৮ ৯ ০ {empty} ৢ {bksp}","{tab} ৗ {empty} {empty} ৣ {empty} {empty} {empty} {empty} {empty} {empty} ড় {empty}","৴ ৶ ৸ ৢ {empty} {empty} ৰ {empty} {empty} {empty} {empty} {enter}","{shift} ৺ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ৠ {bksp}","{tab} {empty} {empty} {empty} ৡ {empty} {empty} {empty} {empty} {empty} {empty} ঢ় {empty}","৵ ৷ ৹ ঌ {empty} {empty} ৱ {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Bengali - INSCRIPT (Legacy)"]={name:"ms-Bengali - INSCRIPT (Legacy)",lang:["bn"],normal:["১ ২ ৩ ৪ ৫ ৬ ৭ ৮ ৯ ০ - ৃ {bksp}","{tab} ৌ ৈ া ী ূ ব হ গ দ জ ড ়","ো ে ্ ি ু প র ক ত চ ট {enter}","{shift} ং ম ন ব ল স , . / {shift}","{accept} {space} {cancel}"],shift:["! @ {empty} র্ জ্ঞ ত্র ক্ষ শ্র ( ) ঃ ঋ {bksp}","{tab} ঔ ঐ আ ঈ ঊ ভ ঙ ঘ ধ ঝ ঢ ঞ","ও এ অ ই উ ফ {empty} খ থ ছ ঠ {enter}","{shift} ঁ ণ {empty} {empty} {empty} শ ষ {empty} / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Bulgarian (Phonetic Traditional)"]={name:"ms-Bulgarian (Phonetic Traditional)",lang:["bg"],normal:["ч 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} я в е р т ъ у и о п ш щ ю","а с д ф г х й к л ; ' {enter}","{shift} ю з ь ц ж б н м , . / {shift}","{accept} {space} {cancel}"],shift:["Ч ! @ № $ % € § * ( ) _ + {bksp}","{tab} Я В Е Р Т Ъ У И О П Ш Щ Ю",'А С Д Ф Г Х Й К Л : " {enter}',"{shift} Ю З ѝ Ц Ж Б Н М < > / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Bulgarian (Phonetic)"]={name:"ms-Bulgarian (Phonetic)",lang:["bg"],normal:["ю 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ч ш е р т ъ у и о п я щ ь","а с д ф г х й к л ; ' {enter}","{shift} ѝ з ж ц в б н м , . / {shift}","{accept} {space} {cancel}"],shift:["Ю ! @ № $ % € § * ( ) – + {bksp}","{tab} Ч Ш Е Р Т Ъ У И О П Я Щ ѝ",'А С Д Ф Г Х Й К Л : " {enter}',"{shift} Ѝ З Ж Ц В Б Н М „ “ / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Bulgarian (Typewriter)"]={name:"ms-Bulgarian (Typewriter)",lang:["bg"],normal:["` 1 2 3 4 5 6 7 8 9 0 - . {bksp}","{tab} , у е и ш щ к с д з ц ; (","ь я а о ж г т н в м ч {enter}","{shift} \\ ю й ъ э ф х п р л / {shift}","{accept} {space} {cancel}"],shift:['~ ! ? + " % = : / _ № І V {bksp}',"{tab} ы У Е И Ш Щ К С Д З Ц § )","Ь Я А О Ж Г Т Н В М Ч {enter}","{shift} | Ю Й Ъ Э Ф Х П Р Л / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Canadian French"]={name:"ms-Canadian French",lang:["fr-ca"],normal:["# 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p ^ ¸ <","a s d f g h j k l ; ` {enter}","{shift} « z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['| ! " / $ % ? & * ( ) _ + {bksp}',"{tab} Q W E R T Y U I O P ^ ¨ >","A S D F G H J K L : ` {enter}","{shift} » Z X C V B N M ' . / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["\\ ± @ £ ¢ ¤ ¬ ¦ ² ³ ¼ ½ ¾ {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} § ¶ [ ] }","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~ { {enter}","{shift} ° {empty} {empty} {empty} {empty} {empty} {empty} µ ¯ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Canadian French (Legacy)"]={name:"ms-Canadian French (Legacy)",lang:["fr-ca"],normal:["° 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p ^ ç à","a s d f g h j k l ; è {enter}","{shift} ù z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['° ! " # $ % ? & * ( ) _ + {bksp}',"{tab} Q W E R T Y U I O P ^ Ç À","A S D F G H J K L : È {enter}","{shift} Ù Z X C V B N M ' . / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["¬ ¹ @ ³ ¼ ½ ¾ { [ ] } | ¸ {bksp}","{tab} {empty} {empty} {empty} ¶ {empty} ¥ {empty} {empty} ø þ ° ~ {empty}","æ ß ð ª {empty} {empty} {empty} {empty} {empty} ´ {empty} {enter}","{shift} \\ « » ¢ {empty} {empty} {empty} µ < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} ¡ ² £ ¤ {empty} {empty} {empty} {empty} ± {empty} ¿ {empty} {bksp}","{tab} {empty} {empty} {empty} ® {empty} {empty} {empty} {empty} Ø Þ {empty} ¨ {empty}","Æ § Ð {empty} {empty} {empty} {empty} {empty} {empty} ´ {empty} {enter}","{shift} | {empty} {empty} © {empty} {empty} {empty} º {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Canadian Multilingual Standard"]={name:"ms-Canadian Multilingual Standard",lang:["en-ca"],normal:["/ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p ^ ç {enter}","a s d f g h j k l ; è à ","{shift} ù z x c v b n m , . é {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["\\ ! @ # $ % ? & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P ¨ Ç {enter}","A S D F G H J K L : È À ","{shift} Ù Z X C V B N M ' \" É {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["| {empty} {empty} {empty} {empty} {empty} {empty} { } [ ] {empty} ¬ {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ` ~ {enter}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ° {empty} {empty} ","{shift} {empty} « » {empty} {empty} {empty} {empty} {empty} < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Chinese Bopomofo IME"]={name:"ms-Chinese Bopomofo IME",lang:["zh"],normal:["€ ㄅ ㄉ ˇ ˋ ㄓ ˊ ˙ ㄚ ㄞ ㄢ ㄦ = {bksp}","{tab} ㄆ ㄊ ㄍ ㄐ ㄔ ㄗ ㄧ ㄛ ㄟ ㄣ [ ] \\","ㄇ ㄋ ㄎ ㄑ ㄕ ㄘ ㄨ ㄜ ㄠ ㄤ ' {enter}","ㄈ ㄌ ㄏ ㄒ ㄖ ㄙ ㄩ ㄝ ㄡ ㄥ","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Chinese ChaJei IME"]={name:"ms-Chinese ChaJei IME",lang:["zh"],normal:["€ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} 手 田 水 口 廿 卜 山 戈 人 心 [ ] \\","日 尸 木 火 土 竹 十 大 中 ; ' {enter}","Z 難 金 女 月 弓 一 , . /","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Czech"]={name:"ms-Czech",lang:["cs"],normal:["; + ě š č ř ž ý á í é = ´ {bksp}","{tab} q w e r t z u i o p ú ) {empty}","a s d f g h j k l ů § {enter}","{shift} \\ y x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["° 1 2 3 4 5 6 7 8 9 0 % ˇ {bksp}","{tab} Q W E R T Z U I O P / ( '",'A S D F G H J K L " ! {enter}',"{shift} | Y X C V B N M ? : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {bksp}","{tab} \\ | € {empty} {empty} {empty} {empty} {empty} {empty} {empty} ÷ × ¤","{empty} đ Đ [ ] {empty} {empty} ł Ł $ ß {enter}","{shift} {empty} {empty} # & @ { } {empty} < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Czech (QWERTY)"]={name:"ms-Czech (QWERTY)",lang:["cs"],normal:["; + ě š č ř ž ý á í é = ´ {bksp}","{tab} q w e r t y u i o p ú ) {empty}","a s d f g h j k l ů § {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["° 1 2 3 4 5 6 7 8 9 0 % ˇ {bksp}","{tab} Q W E R T Y U I O P / ( '",'A S D F G H J K L " ! {enter}',"{shift} | Z X C V B N M ? : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` ! @ # $ % ^ & * ( ) - = {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ] \\","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ; ¤ {enter}","{shift} ß {empty} {empty} {empty} {empty} {empty} {empty} {empty} < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} _ + {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { } |","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} : ^ {enter}","{shift} ˝ {empty} {empty} {empty} {empty} {empty} {empty} {empty} × ÷ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Czech Programmers"]={name:"ms-Czech Programmers",lang:["cs"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["; + ě š č ř ž ý á í é = ´ {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} ú ) {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ů § {enter}","{shift} ß {empty} {empty} {empty} {empty} {empty} {empty} {empty} ? : {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["° {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} % ˇ {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} / ( {empty}",'{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} " ! {enter}',"{shift} ˝ {empty} {empty} {empty} {empty} {empty} {empty} {empty} × ÷ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Danish"]={name:"ms-Danish",lang:["da"],normal:["½ 1 2 3 4 5 6 7 8 9 0 + ´ {bksp}","{tab} q w e r t y u i o p å ¨","a s d f g h j k l æ ø ' {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['§ ! " # ¤ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Y U I O P Å ^","A S D F G H J K L Æ Ø * {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} @ £ $ € {empty} { [ ] } {empty} | {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} \\ {empty} {empty} {empty} {empty} {empty} {empty} µ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Devanagari - INSCRIPT"]={name:"ms-Devanagari - INSCRIPT",lang:["hi","ne","mr","kok","bodo","mai"],normal:["ॊ 1 2 3 4 5 6 7 8 9 0 - ृ {bksp}","{tab} ौ ै ा ी ू ब ह ग द ज ड ़ ॉ","ो े ् ि ु प र क त च ट {enter}","{shift} ॉ ॆ ं म न व ल स , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["ऒ ऍ ॅ ्र र् ज्ञ त्र क्ष श्र ( ) ः ऋ {bksp}","{tab} औ ऐ आ ई ऊ भ ङ घ ध झ ढ ञ ऑ","ओ ए अ इ उ फ ऱ ख थ छ ठ {enter}","{shift} ऑ ऎ ँ ण ऩ ऴ ळ श ष । / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} १ २ ३ ४ ५ ६ ७ ८ ९ ० {empty} ॄ {bksp}","{tab} {empty} {empty} {empty} ॣ {empty} {empty} {empty} ग़ {empty} ज़ ड़ {empty} {empty}","{empty} {empty} {empty} ॢ {empty} {empty} {empty} क़ {empty} ॒ {empty} {enter}","{shift} {empty} ॓ {empty} ॔ {empty} {empty} {empty} {empty} ॰ ॥ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ॠ {bksp}","{tab} {empty} {empty} {empty} ॡ {empty} {empty} {empty} {empty} {empty} {empty} ढ़ {empty} {empty}","{empty} {empty} {empty} ऌ {empty} फ़ {empty} ख़ {empty} {empty} ॑ {enter}","{shift} {empty} {empty} ॐ {empty} {empty} {empty} {empty} {empty} {empty} ऽ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Divehi Phonetic"]={name:"ms-Divehi Phonetic",lang:["dv"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ް އ ެ ރ ތ ޔ ު ި ޮ ޕ ] [ \\","ަ ސ ދ ފ ގ ހ ޖ ކ ލ ؛ ' {enter}","{shift} \\ ޒ × ޗ ވ ބ ނ މ ، . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ) ( _ + {bksp}","{tab} ޤ ޢ ޭ ޜ ޓ ޠ ޫ ީ ޯ ÷ } { |",'ާ ށ ޑ ﷲ ޣ ޙ ޛ ޚ ޅ : " {enter}',"{shift} | ޡ ޘ ޝ ޥ ޞ ޏ ޟ > < / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ; {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {ZWJ} {ZWNJ} {LRM} {RLM} , {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Divehi Typewriter"]={name:"ms-Divehi Typewriter",lang:["dv"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ޫ ޮ ާ ީ ޭ ގ ރ މ ތ ހ ލ [ ]","ި ު ް ަ ެ ވ އ ނ ކ ފ ﷲ {enter}","{shift} \\ ޒ ޑ ސ ޔ ޅ ދ ބ ށ ޓ / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ) ( _ + {bksp}","{tab} × ’ “ / : ޤ ޜ ޣ ޠ ޙ ÷ { }",'< > . ، " ޥ ޢ ޘ ޚ ޡ ؛ {enter}',"{shift} | ޖ ޕ ޏ ޗ ޟ ޛ ޝ \\ ޞ / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} , {empty} {empty} {empty} {empty} {empty} {empty} ; {enter}","{shift} {empty} {empty} {empty} {empty} {ZWJ} {ZWNJ} {LRM} {RLM} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Dutch"]={name:"ms-Dutch",lang:["nl"],normal:["@ 1 2 3 4 5 6 7 8 9 0 / ° {bksp}","{tab} q w e r t y u i o p ¨ * {enter}","a s d f g h j k l + ´ < ","{shift} ] z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["§ ! \" # $ % & _ ( ) ' ? ~ {bksp}","{tab} Q W E R T Y U I O P ^ | {enter}","A S D F G H J K L ± ` > ","{shift} [ Z X C V B N M ; : = {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["¬ ¹ ² ³ ¼ ½ ¾ £ { } {empty} \\ ¸ {bksp}","{tab} {empty} {empty} € ¶ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{empty} ß {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ","{shift} ¦ « » ¢ {empty} {empty} {empty} µ {empty} · {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Estonian"]={name:"ms-Estonian",lang:["et"],normal:["ˇ 1 2 3 4 5 6 7 8 9 0 + ´ {bksp}","{tab} q w e r t y u i o p ü õ '","a s d f g h j k l ö ä {enter}","{shift} < z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['~ ! " # ¤ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Y U I O P Ü Õ *","A S D F G H J K L Ö Ä {enter}","{shift} > Z X C V B N M ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} @ £ $ € {empty} { [ ] } \\ {empty} {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} § ½","{empty} š {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ^ {enter}","{shift} | ž {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} @ £ $ {empty} {empty} { [ ] } \\ {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} § ½","{empty} Š {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ^ {enter}","{shift} | Ž {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Faroese"]={name:"ms-Faroese",lang:["fo"],normal:["½ 1 2 3 4 5 6 7 8 9 0 + ´ {bksp}","{tab} q w e r t y u i o p å ð {enter}","a s d f g h j k l æ ø ' ","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['§ ! " # ¤ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Y U I O P Å Ð {enter}","A S D F G H J K L Æ Ø * ","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} @ £ $ € {empty} { [ ] } {empty} | {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} ¨ ~ {enter}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ^ {empty} ","{shift} \\ {empty} {empty} {empty} {empty} {empty} {empty} µ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Finnish"]={name:"ms-Finnish",lang:["fi"],normal:["§ 1 2 3 4 5 6 7 8 9 0 + ´ {bksp}","{tab} q w e r t y u i o p å ¨ {enter}","a s d f g h j k l ö ä ' ","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['½ ! " # ¤ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Y U I O P Å ^ {enter}","A S D F G H J K L Ö Ä * ","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} @ £ $ € {empty} { [ ] } \\ {empty} {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~ {enter}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ","{shift} | {empty} {empty} {empty} {empty} {empty} {empty} µ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-French"]={name:"ms-French",lang:["fr"],normal:["² & é \" ' ( - è _ ç à ) = {bksp}","{tab} a z e r t y u i o p ^ $","q s d f g h j k l m ù * {enter}","{shift} < w x c v b n , ; : ! {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["{empty} 1 2 3 4 5 6 7 8 9 0 ° + {bksp}","{tab} A Z E R T Y U I O P ¨ £","Q S D F G H J K L M % µ {enter}","{shift} > W X C V B N ? . / § {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} ~ # { [ | ` \\ ^ @ ] } {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ¤","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Gaelic"]={name:"ms-Gaelic",lang:["gd"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ]","a s d f g h j k l ; ' # {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['` ! " £ $ % ^ & * ( ) _ + {bksp}',"{tab} Q W E R T Y U I O P { }","A S D F G H J K L : @ ~ {enter}","{shift} | Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["¦ {empty} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} é {empty} {empty} ý ú í ó {empty} {empty} {empty}","á {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ' {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["¬ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} É {empty} {empty} Ý Ú Í Ó {empty} {empty} {empty}","Á {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Georgian"]={name:"ms-Georgian",lang:["ka"],normal:["„ ! ? № § % : . ; , / – = {bksp}","{tab} ღ ჯ უ კ ე ნ გ შ წ ზ ხ ც (","ფ ძ ვ თ ა პ რ ო ლ დ ჟ {enter}","{shift} ( ჭ ჩ ყ ს მ ი ტ ქ ბ / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["“ 1 2 3 4 5 6 7 8 9 0 - + {bksp}","{tab} ღ ჯ უ კ ე ნ გ შ წ ზ ხ ც )","ფ ძ ვ თ ა პ რ ო ლ დ ჟ {enter}","{shift} ) ჭ ჩ ყ ს მ ი ტ ქ ბ / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} ჱ {empty} {empty} {empty} {empty} {empty} ჴ {empty} {empty}","ჶ {empty} ჳ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} ჲ {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Georgian (Ergonomic)"]={name:"ms-Georgian (Ergonomic)",lang:["ka"],normal:["„ ! № , ; % : ? . ( ) - “ {bksp}","{tab} ჩ პ უ ძ ჭ ტ თ ნ ვ შ კ ქ /","ხ ი ა ე ო დ მ ს რ ბ გ {enter}","{shift} \\ ჯ ჰ ყ ღ ჟ ზ ც ლ ფ / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["' 1 2 3 4 5 6 7 8 9 0 + = {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} §","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} / {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` ! @ # $ € ^ & * ( ) — = {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ჼ ჳ {empty} [ ] \\","ჴ ჲ ჺ ჱ {empty} {empty} {empty} {empty} {empty} {empty} ჹ {enter}","{shift} {empty} {empty} ჵ ჸ ჷ {empty} {empty} {empty} {empty} ჶ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ {empty} {empty} § {empty} {empty} {empty} {empty} ° « » _ {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} I {empty} {empty} { } |",'{empty} {empty} D {empty} {empty} {empty} {empty} {empty} L {empty} " {enter}',"{shift} {empty} {empty} X C V {empty} {empty} M < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Georgian (QWERTY)"]={name:"ms-Georgian (QWERTY)",lang:["ka"],normal:["„ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ქ წ ე რ ტ ყ უ ი ო პ [ ] ~","ა ს დ ფ გ ჰ ჯ კ ლ ; ' {enter}","{shift} \\ ზ ხ ც ვ ბ ნ მ , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["“ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} {empty} ჭ {empty} ღ თ {empty} {empty} {empty} {empty} {empty} { } |",'{empty} შ {empty} {empty} {empty} {empty} ჟ {empty} {empty} : " {enter}',"{shift} {empty} ძ {empty} ჩ {empty} {empty} N {empty} < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} „ “ {empty} € {empty} {empty} ° {empty} {empty} — – {bksp}","{tab} {empty} {empty} ჱ ® {empty} ჸ {empty} ჲ {empty} {empty} {empty} {empty} {empty}","ჺ {empty} {empty} ჶ ჹ ჵ ჷ {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} ჴ © ჳ {empty} ჼ {empty} « » {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-German"]={name:"ms-German",lang:["de"],normal:["^ 1 2 3 4 5 6 7 8 9 0 ß ´ {bksp}","{tab} q w e r t z u i o p ü +","a s d f g h j k l ö ä # {enter}","{shift} < y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['° ! " § $ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Z U I O P Ü *","A S D F G H J K L Ö Ä ' {enter}","{shift} > Y X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} ² ³ {empty} {empty} {empty} { [ ] } \\ {empty} {bksp}","{tab} @ {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} | {empty} {empty} {empty} {empty} {empty} {empty} µ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-German (IBM)"]={name:"ms-German (IBM)",lang:["de"],normal:["^ 1 2 3 4 5 6 7 8 9 0 ß ´ {bksp}","{tab} q w e r t z u i o p ü +","a s d f g h j k l ö ä # {enter}","{shift} < y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['° ! " § $ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Z U I O P Ü *","A S D F G H J K L Ö Ä ' {enter}","{shift} > Y X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} ² ³ {empty} {empty} {empty} { [ ] } \\ {empty} {bksp}","{tab} @ {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} | {empty} {empty} {empty} {empty} {empty} {empty} µ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Greek"]={name:"ms-Greek",lang:["el"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ; ς ε ρ τ υ θ ι ο π [ ]","α σ δ φ γ η ξ κ λ ΄ ' \\ {enter}","{shift} < ζ χ ψ ω β ν μ , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} : ΅ Ε Ρ Τ Υ Θ Ι Ο Π { }",'Α Σ Δ Φ Γ Η Ξ Κ Λ ¨ " | {enter}',"{shift} > Ζ Χ Ψ Ω Β Ν Μ < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} ² ³ £ § ¶ {empty} ¤ ¦ ° ± ½ {bksp}","{tab} {empty} {empty} € ® {empty} ¥ {empty} {empty} {empty} {empty} « »","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ΅ {empty} ¬ {enter}","{shift} {empty} {empty} {empty} © {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Greek (220)"]={name:"ms-Greek (220)",lang:["el"],normal:["½ 1 2 3 4 5 6 7 8 9 0 ' ] {bksp}","{tab} ; ς ε ρ τ υ θ ι ο π + }","α σ δ φ γ η ξ κ λ ΄ ¨ # {enter}","{shift} < ζ χ ψ ω β ν μ , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['± ! " £ $ % & / ( ) = ? [ {bksp}',"{tab} : ~ Ε Ρ Τ Υ Θ Ι Ο Π * {","Α Σ Δ Φ Γ Η Ξ Κ Λ ¨ ΅ @ {enter}","{shift} > Ζ Χ Ψ Ω Β Ν Μ ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} ² ³ £ § ¶ {empty} ¤ ¦ ° ± ½ {bksp}","{tab} {empty} {empty} € ® {empty} ¥ {empty} {empty} {empty} {empty} « »","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ΅ ΅ ¬ {enter}","{shift} {empty} {empty} {empty} © {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Greek (220) Latin"]={name:"ms-Greek (220) Latin",lang:["el"],normal:["\\ 1 2 3 4 5 6 7 8 9 0 ' ] {bksp}","{tab} q w e r t y u i o p + }","a s d f g h j k l ΄ ¨ # {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['| ! " # $ % & / ( ) = ? [ {bksp}',"{tab} Q W E R T Y U I O P * {","A S D F G H J K L ¨ ΅ @ {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} ² ³ £ § ¶ {empty} ¤ ¦ ° ± ½ {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} « »","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ΅ ΅ ¬ {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Greek (319)"]={name:"ms-Greek (319)",lang:["el"],normal:["½ 1 2 3 4 5 6 7 8 9 0 ' + {bksp}","{tab} · ς ε ρ τ υ θ ι ο π [ ]","α σ δ φ γ η ξ κ λ ΄ ’ ² {enter}","{shift} § ζ χ ψ ω β ν μ , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['± ! " £ $ % ¬ / ( ) = ° * {bksp}',"{tab} ― ¦ Ε Ρ Τ Υ Θ Ι Ο Π « »","Α Σ Δ Φ Γ Η Ξ Κ Λ ¨ ‘ ³ {enter}","{shift} © Ζ Χ Ψ Ω Β Ν Μ ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ΅ {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Greek (319) Latin"]={name:"ms-Greek (319) Latin",lang:["el"],normal:["\\ 1 2 3 4 5 6 7 8 9 0 ' + {bksp}","{tab} q w e r t y u i o p [ ]","a s d f g h j k l ´ ^ ` {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['| ! " # $ % & / ( ) = ? * {bksp}',"{tab} Q W E R T Y U I O P { }","A S D F G H J K L ¨ ~ @ {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Greek Latin"]={name:"ms-Greek Latin",lang:["el"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ]","a s d f g h j k l ; ' \\ {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { }",'A S D F G H J K L : " | {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ¡ ² ³ ¤ € ¼ ½ ¾ ‘ ’ ¥ × {bksp}","{tab} ä å é ® þ ü ú í ó ö « »","á ß ð {empty} {empty} {empty} {empty} {empty} ø ¶ ´ ¬ {enter}","{shift} æ {empty} © {empty} {empty} ñ µ ç {empty} ¿ {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} ¹ {empty} {empty} £ {empty} {empty} {empty} {empty} {empty} {empty} {empty} ÷ {bksp}","{tab} Ä Å É {empty} Þ Ü Ú Í Ó Ö {empty} {empty}","Á § Ð {empty} {empty} {empty} {empty} {empty} Ø ° ¨ ¦ {enter}","{shift} Æ {empty} ¢ {empty} {empty} Ñ {empty} Ç {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Greek Polytonic"]={name:"ms-Greek Polytonic",lang:["el"],normal:["~ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ; ς ε ρ τ υ θ ι ο π [ ]","α σ δ φ γ η ξ κ λ ΄ ' \\ {enter}","{shift} ζ χ ψ ω β ν μ , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["` ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} : ΅ Ε Ρ Τ Υ Θ Ι Ο Π { }",'Α Σ Δ Φ Γ Η Ξ Κ Λ ¨ " | {enter}',"{shift} Ζ Χ Ψ Ω Β Ν Μ < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["῁ Ϛ Ϟ Ϡ £ § ¶ {empty} ¤ ¦ ° ± ½ {bksp}","{tab} ´ {empty} € ® {empty} ¥ {empty} {empty} {empty} {empty} « »","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ΅ ᾿ ¬ {enter}","{shift} {empty} {empty} © {empty} {empty} {empty} {empty} {empty} {empty} ι {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} ² ³ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ῟ {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ·","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ῾ ῝ {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ῞ {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Greenlandic"]={name:"ms-Greenlandic",lang:["kl"],normal:["½ 1 2 3 4 5 6 7 8 9 0 + ´ {bksp}","{tab} q w e r t y u i o p å ¨ '","a s d f g h j k l æ ø {enter}","{shift} < z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['§ ! " # ¤ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Y U I O P Å ^ *","A S D F G H J K L Æ Ø {enter}","{shift} > Z X C V B N M ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} @ £ $ € {empty} { [ ] } {empty} | {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} þ {empty} ~ {empty}","{empty} ß ð {empty} {empty} {empty} {empty} ĸ {empty} {empty} {empty} {enter}","{shift} \\ {empty} {empty} {empty} {empty} {empty} {empty} µ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} Þ {empty} {empty} {empty}","{empty} {empty} Ð {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Gujarati"]={name:"ms-Gujarati",lang:["gu"],normal:["{empty} 1 2 3 4 5 6 7 8 9 0 - ૃ {bksp}","{tab} ૌ ૈ ા ી ૂ બ હ ગ દ જ ડ ઼ ૉ","ો ે ્ િ ુ પ ર ક ત ચ ટ {enter}","{shift} ં મ ન વ લ સ , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["{empty} ઍ ૅ ્ર ર્ જ્ઞ ત્ર ક્ષ શ્ર ( ) ઃ ઋ {bksp}","{tab} ઔ ઐ આ ઈ ઊ ભ ઙ ઘ ધ ઝ ઢ ઞ ઑ","ઓ એ અ ઇ ઉ ફ {empty} ખ થ છ ઠ {enter}","{shift} ઁ ણ {empty} {empty} ળ શ ષ । / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ૧ ૨ ૩ ૪ ૫ ૬ ૭ ૮ ૯ ૦ {empty} ૄ {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ॥ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ૠ {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} ૐ {empty} {empty} {empty} {empty} {empty} {empty} ઽ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.language.gu={display:{a:"✔:Accept (Shift+Enter)",accept:"Accept:Accept (Shift+Enter)",alt:"AltGr:Alternate Graphemes",b:"←:Backspace",bksp:"Bksp:Backspace",c:"✖:Cancel (Esc)",cancel:"Cancel:Cancel (Esc)",clear:"C:Clear",combo:"ö:Toggle Combo Keys",dec:".:Decimal",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:Change Sign",space:" :Space",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Use mousewheel to see other keys"},jQuery.keyboard.layouts["ms-Hausa"]={name:"ms-Hausa",lang:["ha"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} € {empty} {empty} {empty} ‘ ’ {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} ƴ {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} ɗ {empty} {empty} {empty} {empty} ƙ {empty} ¶ ’ {enter}","{shift} {empty} {empty} {empty} {empty} {empty} ɓ {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} Ƴ {empty} {empty} {empty} {empty} {empty} {empty} ¦","{empty} {empty} Ɗ {empty} {empty} {empty} {empty} Ƙ {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} Ɓ {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Hebrew"]={name:"ms-Hebrew",lang:["he"],normal:["; 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} / ' ק ר א ט ו ן ם פ ] [ \\","ש ד ג כ ע י ח ל ך ף , {enter}","{shift} \\ ז ס ב ה נ מ צ ת ץ / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ) ( _ + {bksp}","{tab} Q W E R T Y U I O P } { |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M > < / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} ₪ {empty} {empty} {empty} {empty} {empty} {empty} ֿ {empty} {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} װ {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} ײ ױ {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Hindi Traditional"]={name:"ms-Hindi Traditional",lang:["hi"],normal:["{empty} 1 2 3 4 5 6 7 8 9 0 - ृ {bksp}","{tab} ौ ै ा ी ू ब ह ग द ज ड ़ ॉ","ो े ् ि ु प र क त च ट {enter}","{shift} ॉ ं म न व ल स , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["{empty} ऍ ॅ ्र र् ज्ञ त्र क्ष श्र ( ) ः ऋ {bksp}","{tab} औ ऐ आ ई ऊ भ ङ घ ध झ ढ ञ ऑ","ओ ए अ इ उ फ ऱ ख थ छ ठ {enter}","{shift} ऑ ँ ण {empty} {empty} ळ श ष । / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` १ २ ३ ४ ५ ६ ७ ८ ९ ० - = {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ] \\","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ; ' {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} , . {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { } |",'{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} : " {enter}',"{shift} {empty} ॐ {empty} {empty} {empty} {empty} {empty} < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Hungarian"]={name:"ms-Hungarian",lang:["hu"],normal:["0 1 2 3 4 5 6 7 8 9 ö ü ó {bksp}","{tab} q w e r t z u i o p ő ú","a s d f g h j k l é á ű {enter}","{shift} í y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["§ ' \" + ! % / = ( ) Ö Ü Ó {bksp}","{tab} Q W E R T Z U I O P Ő Ú","A S D F G H J K L É Á Ű {enter}","{shift} Í Y X C V B N M ? : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {bksp}","{tab} \\ | Ä {empty} {empty} {empty} € Í {empty} {empty} ÷ ×","ä đ Đ [ ] {empty} í ł Ł $ ß ¤ {enter}","{shift} < > # & @ { } < ; > * {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Hungarian 101-key"]={name:"ms-Hungarian 101-key",lang:["hu"],normal:["í 1 2 3 4 5 6 7 8 9 ö ü ó {bksp}","{tab} q w e r t y u i o p ő ú","a s d f g h j k l é á ű {enter}","{shift} í z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["Í ' \" + ! % / = ( ) Ö Ü Ó {bksp}","{tab} Q W E R T Y U I O P Ő Ú","A S D F G H J K L É Á Ű {enter}","{shift} Í Z X C V B N M ? : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["0 ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ {empty} {empty} {bksp}","{tab} \\ | Ä § ¤ {empty} € Í {empty} {empty} ÷ ×","ä đ Đ [ ] {empty} í ł Ł $ ß \\ {enter}","{shift} < > # & @ { } < ; > * {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Icelandic"]={name:"ms-Icelandic",lang:["is"],normal:["° 1 2 3 4 5 6 7 8 9 0 ö - {bksp}","{tab} q w e r t y u i o p ð '","a s d f g h j k l æ ´ + {enter}","{shift} < z x c v b n m , . þ {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['¨ ! " # $ % & / ( ) = Ö _ {bksp}',"{tab} Q W E R T Y U I O P Ð ?","A S D F G H J K L Æ ' * {enter}","{shift} > Z X C V B N M ; : Þ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["° {empty} {empty} {empty} {empty} € {empty} { [ ] } \\ {empty} {bksp}","{tab} @ {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ^ ` {enter}","{shift} | {empty} {empty} {empty} {empty} {empty} {empty} µ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Igbo"]={name:"ms-Igbo",lang:["ig"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} € {empty} {empty} {empty} ‘ ’ {empty} {empty} {bksp}","{tab} ị́ ị̀ ị̄ {empty} {empty} {empty} ụ ị ọ {empty} {empty} {empty} {empty}","ọ́ ọ̀ ọ̄ ụ́ ụ̀ ụ̄ {empty} {empty} {empty} ¶ ´ {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} ṅ m̀ m̄ n̄ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} Ị́ Ị̀ Ị̄ {empty} {empty} {empty} Ụ Ị Ọ {empty} {empty} {empty} ¦","Ọ́ Ọ̀ Ọ̄ Ụ́ Ụ̀ Ụ̄ {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} Ṅ M̀ M̄ N̄ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Inuktitut - Latin"]={name:"ms-Inuktitut - Latin",lang:["iu"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ 1 2 3 4 5 6 7 8 9 0 _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ! @ # $ % * & • [ ] {empty} = {bksp}","{tab} ᖐ ᐄ ᖀ ᑮ ᑏ ᓰ ᒦ ᓃ ᓖ ᔩ “ ‘ {empty}","ᖒ ᐆ ᖂ ᑰ ᑑ ᓲ ᒨ ᓅ ᓘ … ł {enter}","{shift} {empty} ᖔ ᐋ ᖄ ᑳ ᑖ ᓵ ᒫ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ¢ ® ¼ ½ ¾ ^ ⅔ © ÷ + {empty} {empty} {bksp}","{tab} ᒌ ᐲ ᕇ {empty} ᙲ ᙴ ᙶ ᖥ ᖡ {empty} ” ’ |","ᒎ ᐴ ᕉ ᕖ {empty} {empty} ᔫ ᕘ ᖣ {empty} Ł {enter}","{shift} | ᒑ ᐹ ᕌ { } ᓈ ᓛ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Inuktitut - Naqittaut"]={name:"ms-Inuktitut - Naqittaut",lang:["iu"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { [ |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ! @ # $ % * & • [ ] {empty} = {bksp}","{tab} ᖐ ᐄ ᖀ ᑮ ᑏ ᓰ ᒦ ᓃ ᓖ ᔩ “ ‘ {empty}","ᖒ ᐆ ᖂ ᑰ ᑑ ᓲ ᒨ ᓅ ᓘ ŋ ł {enter}","{shift} {empty} ᖔ ᐋ ᖄ ᑳ ᑖ ᓵ ᒫ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ¢ ® ¼ ½ ¾ ^ ⅔ © ÷ + {empty} {empty} {bksp}","{tab} ᒌ ᐲ ᕇ {empty} ᙲ ᙴ ᙶ ᖥ ᖡ {empty} ” ’ |","ᒎ ᐴ ᕉ ᕖ {empty} {empty} ᔫ ᕘ ᖣ {empty} Ł {enter}","{shift} | ᒑ ᐹ ᕌ { } ᓈ ᓛ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Irish"]={name:"ms-Irish",lang:["ga"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] #","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['¬ ! " £ $ % ^ & * ( ) _ + {bksp}',"{tab} Q W E R T Y U I O P { } ~","A S D F G H J K L : @ {enter}","{shift} | Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["¦ {empty} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} é {empty} {empty} {empty} ú í ó {empty} {empty} {empty} {empty}","á {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ´ {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["¦ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} É {empty} {empty} {empty} Ú Í Ó {empty} {empty} {empty} {empty}","Á {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ` {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Italian"]={name:"ms-Italian",lang:["it"],normal:["\\ 1 2 3 4 5 6 7 8 9 0 ' ì {bksp}","{tab} q w e r t y u i o p è +","a s d f g h j k l ò à ù {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['| ! " £ $ % & / ( ) = ? ^ {bksp}',"{tab} Q W E R T Y U I O P é *","A S D F G H J K L ç ° § {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ]","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} @ # {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { }","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Italian (142)"]={name:"ms-Italian (142)",lang:["it"],normal:["\\ 1 2 3 4 5 6 7 8 9 0 ' ì {bksp}","{tab} q w e r t y u i o p è +","a s d f g h j k l ò à ù {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['| ! " £ $ % & / ( ) = ? ^ {bksp}',"{tab} Q W E R T Y U I O P é *","A S D F G H J K L ç ° § {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} # {empty} € {empty} { [ ] } {empty} {empty} {bksp}","{tab} @ {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ` {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Japanese Hiragana"]={name:"ms-Japanese Hiragana",lang:["ja"],normal:["ろ:Ro ぬ:Nu ふ:Hu あ:A う:U え:E お:O や:Ya ゆ:Yu よ:Yo わ:Wa ほ:Ho へ:He {bksp}","{tab} た:Ta て:Te い:I す:Su か:Ka ん:N な:Na に:Ni ら:Ra せ:Se ゛ ゜ む:Mu","ち:Ti と:To し:Si は:Ha き:Ki く:Ku ま:Ma の:No り:Ri れ:Re け:Ke {enter}","{shift} つ:Tu さ:Sa そ:So ひ:Hi こ:Ko み:Mi も:Mo ね:Ne る:Ru め:Me {shift}","{accept} {space} {meta3} {meta1:Kana} {cancel}"],shift:["ろ:Ro ぬ:Nu ふ:Hu ぁ:a ぅ:u ぇ:e ぉ:o ゃ:ya ゅ:yu ょ:yo を:Wo ー へ:He {bksp}","{tab} た:Ta て:Te ぃ:i す:Su か:Ka ん:N な:Na に:Ni ら:Ra せ:Se 「 」 む:Mu","ち:Ti と:To し:Si は:Ha き:Ki く:Ku ま:Ma の:No り:Ri れ:Re け:Ke {enter}","{shift} っ:tu さ:Sa そ:So ひ:Hi こ:Ko み:Mi も:Mo 、 。 ・ {shift}","{accept} {space} {meta3} {meta1:Kana} {cancel}"],meta1:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; : {enter}","{shift} z x c v b n m , . / {shift}","{accept} {space} {default:Eng} {meta2:半:full} {cancel}"],"meta1-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |","A S D F G H J K L + * {enter}","{shift} Z X C V B N M < > ? {shift}","{accept} {space} {default:Eng} {meta2:半:full} {cancel}"],meta2:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] ¥","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {space} {default:Eng} {meta1:全:half} {cancel}"],"meta2-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |","A S D F G H J K L : " {enter}","{shift} Z X C V B N M < > ? {shift}","{accept} {space} {meta3:Eng} {meta1:全:half} {cancel}"],meta3:["ロ:Ro ヌ:Nu フ:Hu ア:A ウ:U エ:E オ:O ヤ:Ya ユ:Yu ヨ:Yo ワ:Wa ホ:Ho ヘ:He {bksp}","{tab} タ:Ta テ:Te イ:I ス:Su カ:Ka ン:N ナ:Na ニ:Ni ラ:Ra セ:Se ゛ ゜ ム:Mu","チ:Ti ト:To シ:Si ハ:Ha キ:Ki ク:Ku マ:Ma ノ:No リ:Ri レ:Re ケ:Ke {enter}","{shift} ツ:Tu サ:Sa ソ:So ヒ:Hi コ:Ko ミ:Mi モ:Mo ネ:Ne ル:Ru メ:Me {shift}","{accept} {space} {default} {meta2} {meta4:全:half} {cancel}"],"meta3-shift":["ロ:Ro ヌ:Nu フ:Hu ァ:a ゥ:u ェ:e ォ:o ャ:ya ュ:yu ョ:yo ヲ:Wo ー ヘ:He {bksp}","{tab} タ:Ta テ:Te ィ:i ス:Su カ:Ka ン:N ナ:Na ニ:Ni ラ:Ra セ:Se 「 」 ム:Mu","チ:Ti ト:To シ:Si ハ:Ha キ:Ki ク:Ku マ:Ma ノ:No リ:Ri レ:Re ケ:Ke {enter}","{shift} ッ:tu サ:Sa ソ:So ヒ:Hi コ:Ko ミ:Mi モ:Mo 、 。 ・ {shift}","{accept} {space} {default} {meta2} {meta4:全:half} {cancel}"],meta4:["ロ:Ro ヌ:Nu フ:Hu ア:A ウ:U エ:E オ:O ヤ:Ya ユ:Yu ヨ:Yo ワ:Wa ホ:Ho ヘ:He {bksp}","{tab} タ:Ta テ:Te イ:I ス:Su カ:Ka ン:N ナ:Na ニ:Ni ラ:Ra セ:Se ゙ ゚ ム:Mu","チ:Ti ト:To シ:Si ハ:Ha キ:Ki ク:Ku マ:Ma ノ:No リ:Ri レ:Re ケ:Ke {enter}","{shift} ツ:Tu サ:Sa ソ:So ヒ:Hi コ:Ko ミ:Mi モ:Mo ネ:Ne ル:Ru メ:Me {shift}","{accept} {space} {default} {meta1} {meta3:半:full} {cancel}"],"meta4-shift":["ロ:Ro ヌ:Nu フ:Hu ァ:a ゥ:u ェ:e ォ:o ャ:ya ュ:yu ョ:yo ヲ:Wo ー ヘ:He {bksp}","{tab} タ:Ta テ:Te ィ:i ス:Su カ:Ka ン:N ナ:Na ニ:Ni ラ:Ra セ:Se 「 」 ム:Mu","チ:Ti ト:To シ:Si ハ:Ha キ:Ki ク:Ku マ:Ma ノ:No リ:Ri レ:Re ケ:Ke {enter}","{shift} ッ:tu サ:Sa ソ:So ヒ:Hi コ:Ko ミ:Mi モ:Mo 、 。 ・ {shift}","{accept} {space} {default} {meta1} {meta3:半:full} {cancel}"]},jQuery.keyboard.layouts["ms-Kannada"]={name:"ms-Kannada",lang:["kn"],normal:["ೊ 1 2 3 4 5 6 7 8 9 0 - ೃ {bksp}","{tab} ೌ ೈ ಾ ೀ ೂ ಬ ಹ ಗ ದ ಜ ಡ {empty}","ೋ ೇ ್ ಿ ು ಪ ರ ಕ ತ ಚ ಟ {enter}","{shift} ೆ ಂ ಮ ನ ವ ಲ ಸ , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["ಒ {empty} {empty} ್ರ ರ್ ಜ್ಞ ತ್ರ ಕ್ಷ ಶ್ರ ( ) ಃ ಋ {bksp}","{tab} ಔ ಐ ಆ ಈ ಊ ಭ ಙ ಘ ಧ ಝ ಢ ಞ","ಓ ಏ ಅ ಇ ಉ ಫ ಱ ಖ ಥ ಛ ಠ {enter}","{shift} ಎ {empty} ಣ {empty} {empty} ಳ ಶ ಷ | / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ೧ ೨ ೩ ೪ ೫ ೬ ೭ ೮ ೯ ೦ {empty} ೄ {bksp}","{tab} {empty} ೖ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} ೕ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ೠ {bksp}","{tab} {empty} {empty} {empty} ೡ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} ಌ {empty} ೞ {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Kazakh"]={name:"ms-Kazakh",lang:["kk"],normal:['( " ә і ң ғ , . ү ұ қ ө һ {bksp}',"{tab} й ц у к е н г ш щ з х ъ \\","ф ы в а п р о л д ж э {enter}","{shift} \\ я ч с м и т ь б ю № {shift}","{accept} {space} {cancel}"],shift:[") ! Ә І Ң Ғ ; : Ү Ұ Қ Ө Һ {bksp}","{tab} Й Ц У К Е Н Г Ш Щ З Х Ъ /","Ф Ы В А П Р О Л Д Ж Э {enter}","{shift} | Я Ч С М И Т Ь Б Ю ? {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Korean"]={name:"ms-Korean",lang:["ko"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ᄇ ᄌ ᄃ ᄀ ᄉ ᅭ ᅧ ᅣ ᅢ ᅦ [ ] ₩","ᄆ ᄂ ᄋ ᄅ ᄒ ᅩ ᅥ ᅡ ᅵ ; ' {enter}","{shift} ᄏ ᄐ ᄎ ᄑ ᅲ ᅮ ᅳ , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} ᄈ ᄍ ᄄ ᄁ ᄊ ᅭ ᅧ ᅣ ᅤ ᅨ { } |",'ᄆ ᄂ ᄋ ᄅ ᄒ ᅩ ᅥ ᅡ ᅵ : " {enter}',"{shift} ᄏ ᄐ ᄎ ᄑ ᅲ ᅮ ᅳ < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] ₩","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Kyrgyz Cyrillic"]={name:"ms-Kyrgyz Cyrillic",lang:["ky"],normal:["ё 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} й ц у к е н г ш щ з х ъ \\","ф ы в а п р о л д ж э {enter}","{shift} \\ я ч с м и т ь б ю / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['Ё ! " № ; % : ? * ( ) _ + {bksp}',"{tab} Й Ц У К Е Н Г Ш Щ З Х Ъ /","Ф Ы В А П Р О Л Д Ж Э {enter}","{shift} / Я Ч С М И Т Ь Б Ю / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} ү {empty} {empty} ң {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} ө {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} Ү {empty} {empty} Ң {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} Ө {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Lao"]={name:"ms-Lao",lang:["lo"],normal:['" ຢ ຟ ໂ ຖ ຸ ູ ຄ ຕ ຈ ຂ ຊ ໍ {bksp}',"{tab} ົ ໄ ຳ ພ ະ ິ ີ ຮ ນ ຍ ບ ລ /","ັ ຫ ກ ດ ເ ້ ່ າ ສ ວ ງ {enter}","{shift} ຜ ປ ແ ອ ຶ ື ທ ມ ໃ / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["' 1 2 3 4 ໌ ຼ 5 6 7 8 9 ໍ່ {bksp}","{tab} ົ້ 0 * _ + ິ້ ີ້ ຣ ໜ ຽ - ຫຼ \\","ັ້ ; . , : ໊ ໋ ! ? % = {enter}","{shift} ₭ ( ຯ x ຶ້ ື້ ໆ ໝ $ / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ໑ ໒ ໓ ໔ ໕ ໖ ໗ ໘ ໙ ໐ {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Latin American"]={name:"ms-Latin American",lang:["es"],normal:["| 1 2 3 4 5 6 7 8 9 0 ' ¿ {bksp}","{tab} q w e r t y u i o p ´ +","a s d f g h j k l ñ { } {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['° ! " # $ % & / ( ) = ? ¡ {bksp}',"{tab} Q W E R T Y U I O P ¨ *","A S D F G H J K L Ñ [ ] {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["¬ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} \\ {empty} {bksp}","{tab} @ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ^ ` {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Latvian"]={name:"ms-Latvian",lang:["lv"],normal:[" 1 2 3 4 5 6 7 8 9 0 - f {bksp}","{tab} ū g j r m v n z ē č ž h ķ","š u s i l d a t e c ´ {enter}","{shift} ģ ņ b ī k p o ā , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["? ! « » $ % / & × ( ) _ F {bksp}","{tab} Ū G J R M V N Z Ē Č Ž H Ķ","Š U S I L D A T E C ° {enter}","{shift} Ģ Ņ B Ī K P O Ā ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:['{empty} « {empty} {empty} € " ’ {empty} : {empty} {empty} – = {bksp}',"{tab} q ģ {empty} ŗ w y {empty} {empty} {empty} {empty} [ ] {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} € {empty} ´ {enter}","{shift} \\ {empty} x {empty} ķ {empty} õ {empty} < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} @ # $ ~ ^ ± {empty} {empty} {empty} — ; {bksp}","{tab} Q Ģ {empty} Ŗ W Y {empty} {empty} {empty} {empty} { } {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ¨ {enter}","{shift} | {empty} X {empty} Ķ {empty} Õ {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Latvian (QWERTY)"]={name:"ms-Latvian (QWERTY)",lang:["lv"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] {empty}","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:[" {empty} « » € {empty} ’ {empty} {empty} {empty} {empty} – {empty} {bksp}","{tab} {empty} {empty} ē ŗ {empty} {empty} ū ī õ {empty} {empty} {empty} {empty}","ā š {empty} {empty} ģ {empty} {empty} ķ ļ {empty} ´ {enter}","{shift} {empty} ž {empty} č {empty} {empty} ņ {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} § ° {empty} ± × {empty} {empty} — {empty} {bksp}","{tab} {empty} {empty} Ē Ŗ {empty} {empty} Ū Ī Õ {empty} {empty} {empty} {empty}","Ā Š {empty} {empty} Ģ {empty} {empty} Ķ Ļ {empty} ¨ {enter}","{shift} {empty} Ž {empty} Č {empty} {empty} Ņ {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Lithuanian"]={name:"ms-Lithuanian",lang:["lt"],normal:["` ą č ę ė į š ų ū 9 0 - ž {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ Ą Č Ę Ė Į Š Ų Ū ( ) _ Ž {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} 1 2 3 4 5 6 7 8 9 0 {empty} = {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} ! @ # $ % ^ & * {empty} {empty} {empty} + {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Lithuanian IBM"]={name:"ms-Lithuanian IBM",lang:["lt"],normal:['` ! " / ; : , . ? ( ) _ + {bksp}',"{tab} ą ž e r t y u i o p į “ |","a s d f g h j k l ų ė {enter}","{shift} \\ z ū c v b n m č š / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} Ą Ž E R T Y U I O P Į ” \\","A S D F G H J K L Ų Ė {enter}","{shift} | Z Ū C V B N M Č Š / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} { [ ] } {empty} {empty} {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Lithuanian Standard"]={name:"ms-Lithuanian Standard",lang:["lt"],normal:["` ! - / ; : , . = ( ) ? x {bksp}","{tab} ą ž e r t y u i o p į w q","a s d š g h j k l ų ė {enter}","{shift} < z ū c v b n m č f / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ 1 2 3 4 5 6 7 8 9 0 + X {bksp}","{tab} Ą Ž E R T Y U I O P Į W Q","A S D Š G H J K L Ų Ė {enter}","{shift} > Z Ū C V B N M Č F / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["´ @ _ # $ § ^ & * [ ] ' % {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} { } |",'{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} " {enter}',"{shift} – {empty} {empty} {empty} {empty} {empty} {empty} {empty} „ “ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Luxembourgish"]={name:"ms-Luxembourgish",lang:["lb"],normal:["§ 1 2 3 4 5 6 7 8 9 0 ' ^ {bksp}","{tab} q w e r t z u i o p è ¨ $","a s d f g h j k l é à {enter}","{shift} < y x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['° + " * ç % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Z U I O P ü ! £","A S D F G H J K L ö ä {enter}","{shift} > Y X C V B N M ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ¦ @ # ° § ¬ | ¢ {empty} {empty} ´ ~ {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ] }","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { {enter}","{shift} \\ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Macedonian (FYROM)"]={name:"ms-Macedonian (FYROM)",lang:["mk"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} љ њ е р т ѕ у и о п ш ѓ ж","а с д ф г х ј к л ч ќ {enter}","{shift} ё з џ ц в б н м , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! „ “ ’ % ‘ & * ( ) _ + {bksp}","{tab} Љ Њ Е Р Т Ѕ У И О П Ш Ѓ Ж","А С Д Ф Г Х Ј К Л Ч Ќ {enter}","{shift} Ё З Џ Ц В Б Н М ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} Ђ ђ {empty}","{empty} {empty} {empty} [ ] {empty} {empty} {empty} {empty} Ћ ћ {enter}","{shift} {empty} {empty} {empty} {empty} @ { } § {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Macedonian (FYROM) - Standard"]={name:"ms-Macedonian (FYROM) - Standard",lang:["mk"],normal:["ѝ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} љ њ е р т ѕ у и о п ш ѓ ж","а с д ф г х ј к л ч ќ {enter}","{shift} ѐ з џ ц в б н м , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["Ѝ ! „ “ ' % ‚ ‘ * ( ) - + {bksp}","{tab} Љ Њ Е Р Т Ѕ У И О П Ш Ѓ Ж","А С Д Ф Г Х Ј К Л Ч Ќ {enter}","{shift} Ѐ З Џ Ц В Б Н М ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ° @ # $ {empty} ^ & … { } — ́ {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ] |","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Malayalam"]={name:"ms-Malayalam",lang:["ml"],normal:["ൊ 1 2 3 4 5 6 7 8 9 0 - ൃ {bksp}","{tab} ൌ ൈ ാ ീ ൂ ബ ഹ ഗ ദ ജ ഡ {empty}","ോ േ ് ി ു പ ര ക ത ച ട {enter}","{shift} െ ം മ ന വ ല സ , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["ഒ {empty} {empty} ്ര {empty} {empty} {empty} ക്ഷ {empty} ( ) ഃ ഋ {bksp}","{tab} ഔ ഐ ആ ഈ ഊ ഭ ങ ഘ ധ ഝ ഢ ഞ","ഓ ഏ അ ഇ ഉ ഫ റ ഖ ഥ ഛ ഠ {enter}","{shift} എ {empty} ണ {empty} ഴ ള ശ ഷ {empty} / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ൧ ൨ ൩ ൪ ൫ ൬ ൭ ൮ ൯ ൦ {empty} {empty} {bksp}","{tab} ൗ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ൠ {bksp}","{tab} {empty} {empty} {empty} ൡ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} ഌ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Maltese 47-Key"]={name:"ms-Maltese 47-Key",lang:["mt"],normal:["ċ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p ġ ħ ż","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["Ċ ! @ € $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P Ġ Ħ Ż",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` {empty} {empty} £ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} è {empty} {empty} {empty} ù ì ò {empty} [ ] \\","à {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} È {empty} {empty} {empty} Ù Ì Ò {empty} { } |","À {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Maltese 48-Key"]={name:"ms-Maltese 48-Key",lang:["mt"],normal:["ċ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p ġ ħ #","a s d f g h j k l ; ' {enter}","{shift} ż z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['Ċ ! " € $ % ^ & * ( ) _ + {bksp}',"{tab} Q W E R T Y U I O P Ġ Ħ ~","A S D F G H J K L : @ {enter}","{shift} Ż Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` {empty} {empty} £ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} è {empty} {empty} {empty} ù ì ò {empty} [ ] {empty}","à {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} \\ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["¬ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} È {empty} {empty} {empty} Ù Ì Ò {empty} { } {empty}","À {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} | {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Maori"]={name:"ms-Maori",lang:["mi"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {space} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M < > / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Marathi"]={name:"ms-Marathi",lang:["mr"],normal:["{empty} १ २ ३ ४ ५ ६ ७ ८ ९ ० - ृ {bksp}","{tab} ौ ै ा ी ू ब ह ग द ज ड ़ ॉ","ो े ् ि ु प र क त च ट {enter}","{shift} ॉ ं म न व ल स , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["{empty} ऍ ॅ ्र र् ज्ञ त्र क्ष श्र ( ) ः ऋ {bksp}","{tab} औ ऐ आ ई ऊ भ ङ घ ध झ ढ ञ ऑ","ओ ए अ इ उ फ ऱ ख थ छ ठ {enter}","{shift} ऑ ँ ण {empty} {empty} ळ श ष । / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ] \\","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ; ' {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} , . {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { } |",'{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} : " {enter}',"{shift} {empty} ऽ ॐ {empty} {empty} {empty} {empty} < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Mongolian Cyrillic"]={name:"ms-Mongolian Cyrillic",lang:["mn"],normal:['= № - " ₮ : . _ , % ? е щ {bksp}',"{tab} ф ц у ж э н г ш ү з к ъ \\","й ы б ө а х р о л д п {enter}","{shift} \\ я ч ё с м и т ь в / {shift}","{accept} {space} {cancel}"],shift:["+ 1 2 3 4 5 6 7 8 9 0 Е Щ {bksp}","{tab} Ф Ц У Ж Э Н Г Ш Ү З К Ъ |","Й Ы Б Ө А Х Р О Л Д П {enter}","{shift} | Я Ч Ё С М И Т Ь В / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Mongolian (Mongolian Script)"]={name:"ms-Mongolian (Mongolian Script)",lang:["mn"],normal:["᠍ 1 2 3 4 5 6 7 8 9 0 = {bksp}","{tab} ᠴ ᠣ ᠡ ᠷ ᠲ ᠶ ᠦ ᠢ ᠥ ᠫ 〔 〕 ᠁","ᠠ ᠰ ᠳ ᠹ ᠭ ᠬ ᠵ ᠺ ᠯ ; ᠋ {enter}","{shift} {empty} ᠽ ᠱ ᠼ ᠤ ᠪ ᠨ ᠮ ᠂ ᠃ / {shift}","{accept} {space} {cancel}"],shift:["~ ! ⁈ ⁉ — % {ZWNJ} ᠊ {ZWJ} ( ) + {bksp}","{tab} {empty} ᠸ ᠧ ᠿ {empty} {empty} {empty} {empty} {empty} {empty} 〈 〉 |","{empty} {empty} {empty} {empty} {empty} ᠾ {empty} ᠻ ᡀ ᠄ ᠌ {enter}","{shift} {empty} ᡁ {empty} ᡂ {empty} {empty} ᠩ {empty} 《 》 / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Nepali"]={name:"ms-Nepali",lang:["ne"],normal:["ञ ज्ञ घ ङ झ छ ट ठ ड ढ ण ( . {bksp}","{tab} त्र ध भ च त थ ग ष य उ ृ े ्र","ब क म ा न ज व प ि स ु {enter}","{shift} श ह अ ख द ल फ , । / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["ञ् १ २ ३ ४ ५ ६ ७ ८ ९ ० ) ं {bksp}","{tab} ो ध् भ् च् त् थ् ग् क्ष इ ए र् ै ्","ब् क् म् ँ न् ज् व् प् ी स् ू {enter}","{shift} श् ह् ऋ ख् द् ल् ः ? श्र / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} 1 2 3 4 5 6 7 8 9 0 {empty} + {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ऊ {empty} औ {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} आ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Norwegian"]={name:"ms-Norwegian",lang:["no"],normal:["| 1 2 3 4 5 6 7 8 9 0 + \\ {bksp}","{tab} q w e r t y u i o p å ¨","a s d f g h j k l ø æ ' {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['§ ! " # ¤ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Y U I O P Å ^","A S D F G H J K L Ø Æ * {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} @ £ $ € {empty} { [ ] } {empty} ´ {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} µ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Norwegian with Sami"]={name:"ms-Norwegian with Sami",lang:["no"],normal:["| 1 2 3 4 5 6 7 8 9 0 + \\ {bksp}","{tab} q w e r t y u i o p å ¨ '","a s d f g h j k l ø æ {enter}","{shift} < z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['§ ! " # ¤ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Y U I O P Å ^ *","A S D F G H J K L Ø Æ {enter}","{shift} > Z X C V B N M ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} @ £ $ € {empty} { [ ] } {empty} ´ {bksp}","{tab} â {empty} € {empty} ŧ {empty} {empty} ï õ {empty} {empty} ~ {empty}","á š đ ǥ ǧ ȟ {empty} ǩ {empty} ö ä {enter}","{shift} {empty} ž {empty} č ǯ ʒ ŋ µ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab}  {empty} {empty} {empty} Ŧ {empty} {empty} Ï Õ {empty} {empty} {empty} {empty}","Á Š Đ Ǥ Ǧ Ȟ {empty} Ǩ {empty} Ö Ä {enter}","{shift} {empty} Ž {empty} Č Ǯ Ʒ Ŋ {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Oriya"]={name:"ms-Oriya",lang:["or"],normal:["1 2 3 4 5 6 7 8 9 0 0 ୃ {bksp}","{tab} ୌ ୈ ା ୀ ୂ ବ ହ ଗ ଦ ଜ ଡ ଼","ୋ େ ୍ ି ୁ ପ ର କ ତ ଚ ଟ {enter}","{shift} ୟ ଂ ମ ନ ବ ଲ ସ , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["{empty} {empty} ୍ର ର୍ ଜ୍ଞ ତ୍ର କ୍ଷ ଶ୍ର ( ) ଃ ଋ {bksp}","{tab} ଔ ଐ ଆ ଈ ଊ ଭ ଙ ଘ ଧ ଝ ଢ ଞ","ଓ ଏ ଅ ଇ ଉ ଫ {empty} ଖ ଥ ଛ ଠ {enter}","{shift} ୱ ଁ ଣ {empty} {empty} ଳ ଶ ଷ {empty} / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["୧ ୨ ୩ ୪ ୫ ୬ ୭ ୮ ୯ ୦ {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ଡ଼ {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ୠ {bksp}","{tab} {empty} {empty} {empty} ୡ {empty} {empty} {empty} {empty} {empty} {empty} ଢ଼ {empty}","{empty} {empty} {empty} ଌ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ଽ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Pashto (Afghanistan)"]={name:"ms-Pashto (Afghanistan)",lang:["ps"],normal:["{ZWJ} ۱ ۲ ۳ ۴ ۵ ۶ ۷ ۸ ۹ ۰ - = {bksp}","{tab} ض ص ث ق ف غ ع ه خ ح ج چ \\","ش س ی ب ل ا ت ن م ک ګ {enter}","{shift} ظ ط ز ر ذ د ړ و ږ / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["ٔ ! ٬ ٫ ؋ ٪ × » « ) ( ـ + {bksp}","{tab} ْ ٌ ٍ ً ُ ِ َ ّ ځ څ ] [ *","ښ ۍ ي پ أ آ ټ ڼ ة : ؛ {enter}","{shift} ئ ې ژ ء {ZWNJ} ډ ؤ ، . / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` ~ @ # $ % ^ & ٭ • ° _ ÷ {bksp}","{tab} € ٱ ى {LRM} {RLM} ٓ ٙ ٰ ' \" } { |","{empty} {empty} ے ں ڷ إ ٹ > < ك گ {enter}","{shift} ? ; {empty} {empty} {empty} ڈ ڑ , ۇ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Persian"]={name:"ms-Persian",lang:["fa"],normal:["÷ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ض ص ث ق ف غ ع ه خ ح ج چ پ","ش س ی ب ل ا ت ن م ک گ {enter}","{shift} پ ظ ط ز ر ذ د ئ و . / {shift}","{accept} {space} {cancel}"],shift:["× ! @ # $ % ^ & * ) ( _ + {bksp}","{tab} ً ٌ ٍ ريال ، ؛ , ] [ \\ } { |",'َ ُ ِ ّ ۀ آ ـ « » : " {enter}',"{shift} | ة ي ژ ؤ إ أ ء < > / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Polish (214)"]={name:"ms-Polish (214)",lang:["pl"],normal:["˛ 1 2 3 4 5 6 7 8 9 0 + ' {bksp}","{tab} q w e r t z u i o p ż ś","a s d f g h j k l ł ą ó {enter}","{shift} < y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['· ! " # ¤ % & / ( ) = ? * {bksp}',"{tab} Q W E R T Z U I O P ń ć","A S D F G H J K L Ł ę ź {enter}","{shift} > Y X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ~ ˇ ^ ˘ ° ˛ ` · ´ ˝ ¨ ¸ {bksp}","{tab} \\ ¦ {empty} {empty} {empty} {empty} € {empty} {empty} {empty} ÷ ×","{empty} đ Đ {empty} {empty} {empty} {empty} {empty} {empty} $ ß {empty} {enter}","{shift} {empty} {empty} {empty} {empty} @ { } § < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Polish (Programmers)"]={name:"ms-Polish (Programmers)",lang:["pl"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ]","a s d f g h j k l ; ' \\ {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { }",'A S D F G H J K L : " | {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} ę {empty} {empty} {empty} € {empty} ó {empty} {empty} {empty}","ą ś {empty} {empty} {empty} {empty} {empty} {empty} ł {empty} {empty} {empty} {enter}","{shift} ż ź ć {empty} {empty} ń {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} Ę {empty} {empty} {empty} {empty} {empty} Ó {empty} {empty} {empty}","Ą Ś {empty} {empty} {empty} {empty} {empty} {empty} Ł {empty} {empty} {empty} {enter}","{shift} Ż Ź Ć {empty} {empty} Ń {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Portuguese"]={name:"ms-Portuguese",lang:["pt"],normal:["\\ 1 2 3 4 5 6 7 8 9 0 ' « {bksp}","{tab} q w e r t y u i o p + ´","a s d f g h j k l ç º ~ {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['| ! " # $ % & / ( ) = ? » {bksp}',"{tab} Q W E R T Y U I O P * `","A S D F G H J K L Ç ª ^ {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} @ £ § € {empty} { [ ] } {empty} {empty} {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} ¨ ]","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Portuguese (Brazilian ABNT)"]={name:"ms-Portuguese (Brazilian ABNT)",lang:["pt"],normal:["' 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p ´ [","a s d f g h j k l ç ~ ] {enter}","{shift} \\ z x c v b n m , . ; / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['" ! @ # $ % ¨ & * ( ) _ + {bksp}',"{tab} Q W E R T Y U I O P ` {","A S D F G H J K L Ç ^ } {enter}","{shift} | Z X C V B N M < > : ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ¹ ² ³ £ ¢ ¬ {empty} {empty} {empty} {empty} {empty} § {bksp}","{tab} / ? ° {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ª","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} º {enter}","{shift} {empty} {empty} {empty} ₢ {empty} {empty} {empty} {empty} {empty} {empty} {empty} ° {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Punjabi"]={name:"ms-Punjabi",lang:["pa"],normal:["{empty} 1 2 3 4 5 6 7 8 9 0 - {empty} {bksp}","{tab} ੌ ੈ ਾ ੀ ੂ ਬ ਹ ਗ ਦ ਜ ਡ ਼","ੋ ੇ ੍ ਿ ੁ ਪ ਰ ਕ ਤ ਚ ਟ {enter}","{shift} ੰ ਮ ਨ ਵ ਲ ਸ , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["੍ਹ ੍ਵ ੍ਯ ੍ਰ ੱ {empty} {empty} {empty} {empty} ( ) {empty} {empty} {bksp}","{tab} ਔ ਐ ਆ ਈ ਊ ਭ ਙ ਘ ਧ ਝ ਢ ਞ","ਓ ਏ ਅ ਇ ਉ ਫ ੜ ਖ ਥ ਛ ਠ {enter}","{shift} ਂ ਣ {empty} ੲ ਲ਼ ਸ਼ {empty} । / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ੧ ੨ ੩ ੪ ੫ ੬ ੭ ੮ ੯ ੦ {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ਗ਼ {empty} ਜ਼ ੜ {empty}","{empty} {empty} {empty} {empty} {empty} ਫ਼ {empty} ਖ਼ {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} ੳ {empty} {empty} {empty} ॥ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} ੴ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Romanian (Legacy)"]={name:"ms-Romanian (Legacy)",lang:["ro"],normal:["] 1 2 3 4 5 6 7 8 9 0 + ' {bksp}","{tab} q w e r t z u i o p ă î â","a s d f g h j k l ş ţ {enter}","{shift} < y x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['[ ! " # ¤ % & / ( ) = ? * {bksp}',"{tab} Q W E R T Z U I O P Ă Î Â","A S D F G H J K L Ş Ţ {enter}","{shift} > Y X C V B N M ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ~ ˇ ^ ˘ ° ˛ ` · ´ ˝ ¨ ¸ {bksp}","{tab} \\ | {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ÷ × {empty}","{empty} đ Đ {empty} {empty} {empty} {empty} ł Ł $ ß {enter}","{shift} {empty} {empty} {empty} @ { } § < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Romanian (Programmers)"]={name:"ms-Romanian (Programmers)",lang:["ro"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {bksp}","{tab} â ß € {empty} ț {empty} {empty} î {empty} § „ ” {empty}","ă ș đ {empty} {empty} {empty} {empty} {empty} ł {empty} {empty} {enter}","{shift} {empty} {empty} {empty} © {empty} {empty} {empty} {empty} « » {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} – ± {bksp}","{tab}  {empty} {empty} {empty} Ț {empty} {empty} Î {empty} {empty} {empty} {empty} {empty}","Ă Ș Đ {empty} {empty} {empty} {empty} {empty} Ł {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Romanian (Standard)"]={name:"ms-Romanian (Standard)",lang:["ro"],normal:["„ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p ă î â","a s d f g h j k l ș ț {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["” ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P Ă Î Â","A S D F G H J K L Ș Ț {enter}","{shift} | Z X C V B N M ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} § [ ] \\","{empty} ß đ {empty} {empty} {empty} {empty} {empty} ł ; ' {enter}","{shift} {empty} {empty} {empty} © {empty} {empty} {empty} {empty} < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} – ± {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { } |",'{empty} {empty} Đ {empty} {empty} {empty} {empty} {empty} Ł : " {enter}',"{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} « » {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Russian"]={name:"ms-Russian",lang:["ru"],normal:["ё 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} й ц у к е н г ш щ з х ъ \\","ф ы в а п р о л д ж э {enter}","{shift} \\ я ч с м и т ь б ю / {shift}","{accept} {space} {cancel}"],shift:['Ё ! " № ; % : ? * ( ) _ + {bksp}',"{tab} Й Ц У К Е Н Г Ш Щ З Х Ъ /","Ф Ы В А П Р О Л Д Ж Э {enter}","{shift} / Я Ч С М И Т Ь Б Ю / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Russian (Typewriter)"]={name:"ms-Russian (Typewriter)",lang:["ru"],normal:['| № - / " : , . _ ? % ! ; {bksp}',"{tab} й ц у к е н г ш щ з х ъ )","ф ы в а п р о л д ж э {enter}","{shift} ) я ч с м и т ь б ю / {shift}","{accept} {space} {cancel}"],shift:["+ 1 2 3 4 5 6 7 8 9 0 = \\ {bksp}","{tab} Й Ц У К Е Н Г Ш Щ З Х Ъ (","Ф Ы В А П Р О Л Д Ж Э {enter}","{shift} ( Я Ч С М И Т Ь Б Ю / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Sami Extended Finland-Sweden"]={name:"ms-Sami Extended Finland-Sweden",lang:["se"],normal:["§ 1 2 3 4 5 6 7 8 9 0 + ´ {bksp}","{tab} á š e r t ŧ u i o p å ŋ đ","a s d f g h j k l ö ä {enter}","{shift} ž z č c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['½ ! " # ¤ % & / ( ) = ? ` {bksp}',"{tab} Á Š E R T Ŧ U I O P Å Ŋ Đ","A S D F G H J K L Ö Ä {enter}","{shift} Ž Z Č C V B N M ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["| {empty} @ £ $ € {empty} { [ ] } \\ {empty} {bksp}","{tab} q w € {empty} {empty} y {empty} ï õ {empty} ¨ ~ '","â {empty} {empty} {empty} ǧ ǥ {empty} ǩ {empty} ø æ {enter}","{shift} ǯ ʒ x {empty} {empty} {empty} {empty} µ < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} Q W {empty} {empty} {empty} Y {empty} Ï Õ {empty} ^ ˇ *"," {empty} {empty} {empty} Ǧ Ǥ {empty} Ǩ {empty} Ø Æ {enter}","{shift} Ǯ Ʒ X {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Sami Extended Norway"]={name:"ms-Sami Extended Norway",lang:["se"],normal:["| 1 2 3 4 5 6 7 8 9 0 + \\ {bksp}","{tab} á š e r t ŧ u i o p å ŋ đ","a s d f g h j k l ø æ {enter}","{shift} ž z č c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['§ ! " # ¤ % & / ( ) = ? ` {bksp}',"{tab} Á Š E R T Ŧ U I O P Å Ŋ Đ","A S D F G H J K L Ø Æ {enter}","{shift} Ž Z Č C V B N M ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} @ £ $ € {empty} { [ ] } {empty} ´ {bksp}","{tab} q w € {empty} {empty} y {empty} ï õ {empty} ¨ ~ '","â {empty} {empty} {empty} ǧ ǥ {empty} ǩ {empty} ö ä {enter}","{shift} ǯ ʒ x {empty} {empty} {empty} {empty} µ < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} Q W {empty} {empty} {empty} Y {empty} Ï Õ {empty} ^ ˇ *"," {empty} {empty} {empty} Ǧ Ǥ {empty} Ǩ {empty} Ö Ä {enter}","{shift} Ǯ Ʒ X {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Serbian (Latin)"]={name:"ms-Serbian (Latin)",lang:["sr"],normal:["‚ 1 2 3 4 5 6 7 8 9 0 ' + {bksp}","{tab} q w e r t z u i o p š đ ž","a s d f g h j k l č ć {enter}","{shift} < y x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['~ ! " # $ % & / ( ) = ? * {bksp}',"{tab} Q W E R T Z U I O P Š Đ Ž","A S D F G H J K L Č Ć {enter}","{shift} > Y X C V B N M ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {bksp}","{tab} \\ | € {empty} {empty} {empty} {empty} {empty} {empty} {empty} ÷ × ¤","{empty} {empty} {empty} [ ] {empty} {empty} ł Ł {empty} ß {enter}","{shift} {empty} {empty} {empty} {empty} @ { } § < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Serbian (Cyrillic)"]={name:"ms-erbian (Cyrillic)",lang:["sr"],normal:["` 1 2 3 4 5 6 7 8 9 0 ' + {bksp}","{tab} љ њ е р т з у и о п ш ђ ж","а с д ф г х ј к л ч ћ {enter}","{shift} < ѕ џ ц в б н м , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['~ ! " # $ % & / ( ) = ? * {bksp}',"{tab} Љ Њ Е Р Т З У И О П Ш Ђ Ж","А С Д Ф Г Х Ј К Л Ч Ћ {enter}","{shift} > Ѕ Џ Ц В Б Н М ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Setswana"]={name:"ms-Setswana",lang:["tn"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ¡ ² ³ ¤ € ¼ ½ ¾ ‘ ’ ¥ × {bksp}","{tab} ä å é ® þ ü ú í ó ö « » ¬","á ß ð {empty} {empty} {empty} {empty} {empty} ø ¶ ´ {enter}","{shift} {empty} æ {empty} © {empty} {empty} ñ µ ç š {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} ¹ {empty} {empty} £ {empty} {empty} {empty} {empty} {empty} {empty} {empty} ÷ {bksp}","{tab} Ä Å É {empty} Þ Ü Ú Í Ó Ö {empty} {empty} ¦","Á § Ð {empty} {empty} {empty} {empty} {empty} Ø ° ¨ {enter}","{shift} {empty} Æ {empty} ¢ {empty} {empty} Ñ {empty} Ç Š {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Setswana (Sesotho sa Leboa)"]={name:"ms-Setswana (Sesotho sa Leboa)",lang:["tn"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ¡ ² ³ ¤ € ¼ ½ ¾ ‘ ’ ¥ × {bksp}","{tab} ä å é ® þ ü ú í ó ö « » ¬","á ß ð {empty} {empty} {empty} {empty} {empty} ø ¶ ´ {enter}","{shift} æ {empty} © {empty} {empty} ñ µ ç š {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} ¹ {empty} {empty} £ {empty} {empty} {empty} {empty} {empty} {empty} {empty} ÷ {bksp}","{tab} Ä Å É {empty} Þ Ü Ú Í Ó Ö {empty} {empty} ¦","Á § Ð {empty} {empty} {empty} {empty} {empty} Ø ° ¨ {enter}","{shift} Æ {empty} ¢ {empty} {empty} Ñ {empty} Ç Š {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Sinhala"]={name:"ms-Sinhala",lang:["si"],normal:["්{ZWJ}ර 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ු අ ැ ර ඒ හ ම ස ද ච ඤ ; {ZWJ}","් ි ා ෙ ට ය ව න ක ත . {enter}","{shift} {ZWJ} ' ං ජ ඩ ඉ බ ප ල ග / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["ර්{ZWJ} ! @ $ $ % ^ & * ( ) _ + {bksp}","{tab} ූ උ ෑ ඍ ඔ ශ ඹ ෂ ධ ඡ ඥ : {empty}","ෟ ී ෘ ෆ ඨ ්{ZWJ}ය ළු ණ ඛ ථ , {enter}",'{shift} {empty} " ඃ ඣ ඪ ඊ භ ඵ ළ ඝ / {shift}',"{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","ෳ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ෴ {enter}","{shift} {empty} {empty} ඞ ඦ ඬ {empty} {empty} {empty} ඏ ඟ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Sinhala - Wij 9"]={name:"ms-Sinhala - Wij 9",lang:["si"],normal:["්{ZWJ}ර 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ු අ ැ ර එ හ ම ස ද ච ඤ ; ්{ZWJ}","් ි ා ෙ ට ය ව න ක ත . {enter}","{shift} ' ං ජ ඩ ඉ බ ප ල ග / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["ර්{ZWJ} ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} ූ උ ෑ ඍ ඔ ශ ඹ ෂ ධ ඡ ඥ : {empty}","ෟ ී ෘ ෆ ඨ ්{ZWJ}ය ළු ණ ඛ ථ , {enter}",'{shift} " ඃ ඣ ඪ ඊ භ ඵ ළ ඝ / {shift}',"{accept} {alt} {space} {alt} {cancel}"],alt:["` ¡ ² ³ ¤ € ¼ ½ ¾ ‘ ’ ¥ × {bksp}","{tab} ෞ ො ෛ ේ {empty} {empty} {empty} {empty} ඳ {empty} [ ] \\","ෳ ෝ {empty} {empty} {empty} {empty} {ZWJ} {empty} {empty} {empty} ෴ {enter}","{shift} {empty} ඞ ඦ ඬ {empty} {ZWNJ} {empty} ඏ ඟ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ¹ {empty} {empty} £ {empty} {empty} {empty} {empty} {empty} {empty} {empty} ÷ {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { } |","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Slovak"]={name:"ms-Slovak",lang:["sk"],normal:["; + ľ š č ť ž ý á í é = ´ {bksp}","{tab} q w e r t z u i o p ú ä ň","a s d f g h j k l ô § {enter}","{shift} & y x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["° 1 2 3 4 5 6 7 8 9 0 % ˇ {bksp}","{tab} Q W E R T Z U I O P / ( )",'A S D F G H J K L " ! {enter}',"{shift} * Y X C V B N M ? : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {bksp}","{tab} \\ | € {empty} {empty} {empty} {empty} {empty} {empty} ' ÷ × ¤","{empty} đ Đ [ ] {empty} {empty} ł Ł $ ß {enter}","{shift} < > # & @ { } {empty} < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Slovak (QWERTY)"]={name:"ms-Slovak (QWERTY)",lang:["sk"],normal:["; + ľ š č ť ž ý á í é = ´ {bksp}","{tab} q w e r t y u i o p ú ä ň","a s d f g h j k l ô § {enter}","{shift} & z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["° 1 2 3 4 5 6 7 8 9 0 % ˇ {bksp}","{tab} Q W E R T Y U I O P / ( )",'A S D F G H J K L " ! {enter}',"{shift} * Z X C V B N M ? : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {bksp}","{tab} \\ | € {empty} {empty} {empty} {empty} {empty} {empty} ' ÷ × ¤","{empty} đ Đ [ ] {empty} {empty} ł Ł $ ß {enter}","{shift} < > # & @ { } {empty} < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Slovenian"]={name:"ms-Slovenian",lang:["sl"],normal:["¸ 1 2 3 4 5 6 7 8 9 0 ' + {bksp}","{tab} q w e r t z u i o p š đ ž","a s d f g h j k l č ć {enter}","{shift} < y x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['¨ ! " # $ % & / ( ) = ? * {bksp}',"{tab} Q W E R T Z U I O P Š Đ Ž","A S D F G H J K L Č Ć {enter}","{shift} > Y X C V B N M ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {bksp}","{tab} \\ | € {empty} {empty} {empty} {empty} {empty} {empty} {empty} ÷ × ¤","{empty} {empty} {empty} [ ] {empty} {empty} ł Ł {empty} ß {enter}","{shift} {empty} {empty} {empty} {empty} @ { } § < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Sorbian Standard"]={name:"ms-Sorbian Standard",lang:["wen","dsb","hsb"],normal:["^ 1 2 3 4 5 6 7 8 9 0 ß ´ {bksp}","{tab} q w e r t z u i o p ü + #","a s d f g h j k l ö ä {enter}","{shift} < y x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['° ! " § $ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Z U I O P Ü * '","A S D F G H J K L Ö Ä {enter}","{shift} > Y X C V B N M ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} ² ³ {empty} {empty} {empty} { [ ] } \\ {empty} {bksp}","{tab} @ {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~ {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} | {empty} {empty} {empty} {empty} {empty} {empty} µ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Sorbian Extended"]={name:"ms-Sorbian Extended",lang:["wen","dsb","hsb"],normal:["^ 1 2 3 4 5 6 7 8 9 0 ß ´ {bksp}","{tab} q w e r t z u i o p ü + ł","a s d f g h j k l ö ä {enter}","{shift} < y x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['° ! " § $ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Z U I O P Ü * Ł","A S D F G H J K L Ö Ä {enter}","{shift} > Y X C V B N M ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} » « „ ‚ ‘ “ { [ ] } \\ {empty} {bksp}","{tab} @ {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~ #","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} | {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Sorbian Standard (Legacy)"]={name:"ms-Sorbian Standard (Legacy)",lang:["wen","dsb","hsb"],normal:["^ 1 2 3 4 5 6 7 8 9 0 ß ´ {bksp}","{tab} q w e r t z u i o p ü + ł","a s d f g h j k l ö ä {enter}","{shift} < y x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['° ! " § $ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Z U I O P Ü * Ł","A S D F G H J K L Ö Ä {enter}","{shift} > Y X C V B N M ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} » « „ ‚ ‘ “ { [ ] } \\ {empty} {bksp}","{tab} @ {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~ #","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} | {empty} {empty} {empty} {empty} {empty} {empty} µ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Spanish"]={name:"ms-Spanish",lang:["es"],normal:["º 1 2 3 4 5 6 7 8 9 0 ' ¡ {bksp}","{tab} q w e r t y u i o p ` +","a s d f g h j k l ñ ´ ç {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['ª ! " · $ % & / ( ) = ? ¿ {bksp}',"{tab} Q W E R T Y U I O P ^ *","A S D F G H J K L Ñ ¨ Ç {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["\\ | @ # ~ € ¬ {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ]","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { } {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Spanish Variation"]={name:"ms-Spanish Variation",lang:["es"],normal:["' 1 2 3 4 5 6 7 8 9 0 - ¨ {bksp}","{tab} q w e r t y u i o p ÷ `","a s d f g h j k l ñ ç ´ {enter}","{shift} < z x c v b n m , . = {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['· ª " / ( ) ¡ ! ¿ ? ₧ + ¨ {bksp}',"{tab} Q W E R T Y U I O P × `","A S D F G H J K L Ñ Ç ´ {enter}","{shift} > Z X C V B N M ; : % {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["\\ | @ # ¼ ½ ¬ _ # § \\ * ~ {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ]","$ & @ [ ] | £ ± {empty} ~ { } {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ^ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Swedish with Sami"]={name:"ms-Swedish with Sami",lang:["sv","se"],normal:["§ 1 2 3 4 5 6 7 8 9 0 + ´ {bksp}","{tab} q w e r t y u i o p å ¨ '","a s d f g h j k l ö ä {enter}","{shift} < z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['½ ! " # ¤ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Y U I O P Å ^ *","A S D F G H J K L Ö Ä {enter}","{shift} > Z X C V B N M ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} @ £ $ € {empty} { [ ] } \\ {empty} {bksp}","{tab} â {empty} € {empty} ŧ {empty} {empty} ï õ {empty} {empty} ~ {empty}","á š đ ǥ ǧ ȟ {empty} ǩ {empty} ø æ {enter}","{shift} | ž {empty} č ǯ ʒ ŋ µ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab}  {empty} {empty} {empty} Ŧ {empty} {empty} Ï Õ {empty} {empty} {empty} {empty}","Á Š Đ Ǥ Ǧ Ȟ {empty} Ǩ {empty} Ø Æ {enter}","{shift} {empty} Ž {empty} Č Ǯ Ʒ Ŋ {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Swedish"]={name:"ms-Swedish",lang:["sv"],normal:["§ 1 2 3 4 5 6 7 8 9 0 + ´ {bksp}","{tab} q w e r t y u i o p å ¨","a s d f g h j k l ö ä ' {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['½ ! " # ¤ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Y U I O P Å ^","A S D F G H J K L Ö Ä * {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} @ £ $ € {empty} { [ ] } \\ {empty} {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} | {empty} {empty} {empty} {empty} {empty} {empty} µ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Swedish with Sami"]={name:"ms-Swedish with Sami",lang:["sv"],normal:["§ 1 2 3 4 5 6 7 8 9 0 + ´ {bksp}","{tab} q w e r t y u i o p å ¨","a s d f g h j k l ö ä ' {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['½ ! " # ¤ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Y U I O P Å ^","A S D F G H J K L Ö Ä * {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} @ £ $ € {empty} { [ ] } \\ {empty} {bksp}","{tab} â {empty} € {empty} ŧ {empty} {empty} ï õ {empty} {empty} ~","á š đ ǥ ǧ ȟ {empty} ǩ {empty} ø æ {empty} {enter}","{shift} | ž {empty} č ǯ ʒ ŋ µ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab}  {empty} {empty} {empty} Ŧ {empty} {empty} Ï Õ {empty} {empty} {empty}","Á Š Đ Ǥ Ǧ Ȟ {empty} Ǩ {empty} Ø Æ {empty} {enter}","{shift} {empty} Ž {empty} Č Ǯ Ʒ Ŋ {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Swiss German"]={name:"ms-Swiss German",lang:["de","sv"],normal:["§ 1 2 3 4 5 6 7 8 9 0 ' ^ {bksp}","{tab} q w e r t z u i o p ü ¨","a s d f g h j k l ö ä $ {enter}","{shift} < y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['° + " * ç % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Z U I O P è !","A S D F G H J K L é à £ {enter}","{shift} > Y X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ¦ @ # ° § ¬ | ¢ {empty} {empty} ´ ~ {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ]","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { } {enter}","{shift} \\ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Syriac"]={name:"ms-Syriac",lang:["syr"],normal:[" 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ܔ ܨ ܖ ܩ ܦ ܜ ܥ ܗ ܞ ܚ ܓ ܕ ܆","ܫ ܣ ܝ ܒ ܠ ܐ ܬ ܢ ܡ ܟ ܛ {enter}","{shift} ܆ ] [ ܤ ܪ ܧ ܀ . ܘ ܙ / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["̮ ! ̊ ̥ ݉ ♰ ♱ ܊ » ) ( « + {bksp}","{tab} ܰ ܳ ܶ ܺ ܽ ݀ ݁ ̈ ̄ ̇ ̃ ݊ :","ܱ ܴ ܷ ܻ ܾ ܑ ـ ̤ ̱ ̣ ̰ {enter}","{shift} : ܲ ܵ ܸ ܼ ܿ ܹ ݂ ، ؛ / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["ّ ܁ ܂ ܃ ܄ ܅ ܈ ܉ ܋ ܌ ܍ ┌ ┐ {bksp}","{tab} َ ً ُ ٌ ٓ ٔ ݇ ݃ ݅ ̭ {empty} {empty} {empty}","ِ ٍ {empty} ء ٕ ٰ ݈ ݄ ݆ {empty} {empty} {enter}","{shift} {empty} {empty} ْ {empty} {ZWJ} {ZWNJ} {LRM} {RLM} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Syriac Phonetic"]={name:"ms-Syriac Phonetic",lang:["syr"],normal:[" 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ܩ ܘ ܖ ܪ ܬ ܝ ܜ ܥ ܧ ܦ ] [ ܆","ܐ ܣ ܕ ܔ ܓ ܗ ܛ ܟ ܠ ܚ ܞ {enter}","{shift} ܆ ܙ ܨ ܤ ܫ ܒ ܢ ܡ ܀ . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["̮ ! ̊ ̥ ݉ ♰ ♱ ܊ » ) ( « + {bksp}","{tab} ܰ ܳ ܶ ܺ ܽ ݀ ݁ ̈ ̄ ̇ ̃ ݊ :","ܱ ܴ ܷ ܻ ܾ ܑ ـ ̤ ̱ ̣ ̰ {enter}","{shift} : ܲ ܵ ܸ ܼ ܿ ܹ ݂ ، ؛ / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["ّ ܁ ܂ ܃ ܄ ܅ ܈ ܉ ܋ ܌ ܍ ┌ ┐ {bksp}","{tab} َ ً ُ ٌ ٓ ٔ ݇ ݃ ݅ ̭ {empty} {empty} {empty}","ِ ٍ {empty} ء ٕ ٰ ݈ ݄ ݆ {empty} {empty} {enter}","{shift} {empty} {empty} ْ {empty} {ZWJ} {ZWNJ} {LRM} {RLM} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Tajik"]={name:"ms-Tajik",lang:["tg"],normal:["ё 1 2 3 4 5 6 7 8 9 0 ғ ӯ {bksp}","{tab} й қ у к е н г ш ҳ з х ъ \\","ф ҷ в а п р о л д ж э {enter}","{shift} \\ я ч с м и т ӣ б ю / {shift}","{accept} {space} {cancel}"],shift:['Ё ! " № ; % : ? * ( ) Ғ Ӯ {bksp}',"{tab} Й Қ У К Е Н Г Ш Ҳ З Х Ъ /","Ф Ҷ В А П Р О Л Д Ж Э {enter}","{shift} / Я Ч С М И Т Ӣ Б Ю / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Tamil"]={name:"ms-Tamil",lang:["ta"],normal:["ொ 1 2 3 4 5 6 7 8 9 0 - {empty} {bksp}","{tab} ௌ ை ா ீ ூ ப ஹ க த ஜ ட ஞ","ோ ே ் ி ு ப ர க த ச ட {enter}","{shift} ெ {empty} ம ந வ ல ஸ , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["ஒ {empty} {empty} {empty} {empty} {empty} த்ர க்ஷ ஷ்ர {empty} {empty} ஃ {empty} {bksp}","{tab} ஔ ஐ ஆ ஈ ஊ ப ங க த ச ட ஞ","ஓ ஏ அ இ உ ப ற க த ச ட {enter}","{shift} எ {empty} ண ன ழ ள ஷ ஷ ஸ்ரீ / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ௧ ௨ ௩ ௪ ௫ ௬ ௭ ௮ ௯ ௰ ௱ ௲ {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Tatar"]={name:"ms-Tatar",lang:["tt"],normal:["һ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} й ө у к е н г ш ә з х ү","ф ы в а п р о л д ң э \\ {enter}","{shift} ґ я ч с м и т җ б ю . {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['Һ ! " № ; % : ? * ( ) _ + {bksp}',"{tab} Й Ө У К Е Н Г Ш Ә З Х Ү","Ф Ы В А П Р О Л Д Ң Э / {enter}","{shift} Ґ Я Ч С М И Т Җ Б Ю , {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["ё {empty} @ # $ {empty} {empty} [ ] { } {empty} {empty} {bksp}","{tab} {empty} ц {empty} {empty} {empty} {empty} {empty} {empty} щ {empty} {empty} ъ","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ж ' {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ь < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["Ё {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} Ц {empty} {empty} {empty} {empty} {empty} {empty} Щ {empty} {empty} Ъ","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} Ж {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} Ь {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Telugu"]={name:"ms-Telugu",lang:["te"],normal:["ొ 1 2 3 4 5 6 7 8 9 0 - ృ {bksp}","{tab} ౌ ై ా ీ ూ బ హ గ ద జ డ {empty}","ో ే ్ ి ు ప ర క త చ ట {enter}","{shift} ె ం మ న వ ల స , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["ఒ {empty} {empty} ్ర {empty} జ్ఞ త్ర క్ష శ్ర ( ) ః ఋ {bksp}","{tab} ఔ ఐ ఆ ఈ ఊ భ ఙ ఘ ధ ఝ ఢ ఞ","ఓ ఏ అ ఇ ఉ ఫ ఱ ఖ థ ఛ ఠ {enter}","{shift} ఎ ఁ ణ న {empty} ళ శ ష {empty} / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ౧ ౨ ౩ ౪ ౫ ౬ ౭ ౮ ౯ ౦ {empty} ౄ {bksp}","{tab} {empty} ౖ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} ౕ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ౠ {bksp}","{tab} {empty} {empty} {empty} ౡ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} ఌ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Thai Kedmanee"]={name:"ms-Thai Kedmanee",lang:["th"],normal:["_ ๅ / - ภ ถ ุ ึ ค ต จ ข ช {bksp}","{tab} ๆ ไ ำ พ ะ ั ี ร น ย บ ล ฃ","ฟ ห ก ด เ ้ ่ า ส ว ง {enter}","{shift} ผ ป แ อ ิ ื ท ม ใ ฝ {shift}","{accept} {space} {cancel}"],shift:["% + ๑ ๒ ๓ ๔ ู ฿ ๕ ๖ ๗ ๘ ๙ {bksp}",'{tab} ๐ " ฎ ฑ ธ ํ ๊ ณ ฯ ญ ฐ , ฅ',"ฤ ฆ ฏ โ ฌ ็ ๋ ษ ศ ซ . {enter}","{shift} ( ) ฉ ฮ ฺ ์ ? ฒ ฬ ฦ {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Thai Kedmanee (non-ShiftLock)"]={name:"ms-Thai Kedmanee (non-ShiftLock)",lang:["th"],normal:["_ ๅ / - ภ ถ ุ ึ ค ต จ ข ช {bksp}","{tab} ๆ ไ ำ พ ะ ั ี ร น ย บ ล ฃ","ฟ ห ก ด เ ้ ่ า ส ว ง {enter}","{shift} ผ ป แ อ ิ ื ท ม ใ ฝ {shift}","{accept} {space} {cancel}"],shift:["% + ๑ ๒ ๓ ๔ ู ฿ ๕ ๖ ๗ ๘ ๙ {bksp}",'{tab} ๐ " ฎ ฑ ธ ํ ๊ ณ ฯ ญ ฐ , ฅ',"ฤ ฆ ฏ โ ฌ ็ ๋ ษ ศ ซ . {enter}","{shift} ( ) ฉ ฮ ฺ ์ ? ฒ ฬ ฦ {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Thai Pattachote"]={name:"ms-Thai Pattachote",lang:["th"],normal:["_ = ๒ ๓ ๔ ๕ ู ๗ ๘ ๙ ๐ ๑ ๖ {bksp}","{tab} ็ ต ย อ ร ่ ด ม ว แ ใ ฌ ","้ ท ง ก ั ี า น เ ไ ข {enter}","{shift} บ ป ล ห ิ ค ส ะ จ พ {shift}","{accept} {space} {cancel}"],shift:['฿ + " / , ? ุ _ . ( ) - % {bksp}',"{tab} ๊ ฤ ๆ ญ ษ ึ ฝ ซ ถ ฒ ฯ ฦ ํ","๋ ธ ำ ณ ์ ื ผ ช โ ฆ ฑ {enter}","{shift} ฎ ฏ ฐ ภ ั ศ ฮ ฟ ฉ ฬ {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Thai Pattachote (non-ShiftLock)"]={name:"ms-Thai Pattachote (non-ShiftLock)",lang:["th"],normal:["_ = ๒ ๓ ๔ ๕ ู ๗ ๘ ๙ ๐ ๑ ๖ {bksp}","{tab} ็ ต ย อ ร ่ ด ม ว แ ใ ฌ ","้ ท ง ก ั ี า น เ ไ ข {enter}","{shift} บ ป ล ห ิ ค ส ะ จ พ {shift}","{accept} {space} {cancel}"],shift:['฿ + " / , ? ุ _ . ( ) - % {bksp}',"{tab} ๊ ฤ ๆ ญ ษ ึ ฝ ซ ถ ฒ ฯ ฦ ํ","๋ ธ ำ ณ ์ ื ผ ช โ ฆ ฑ {enter}","{shift} ฎ ฏ ฐ ภ ั ศ ฮ ฟ ฉ ฬ {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Tibetan (PRC)"]={name:"ms-Tibetan (PRC)",lang:["bo"],normal:["ཨ ༡ ༢ ༣ ༤ ༥ ༦ ༧ ༨ ༩ ༠ ཧ ཝ {bksp}","{tab} ཅ ཆ ེ ར ཏ ཡ ུ ི ོ ཕ ཙ ཚ ཛ","འ ས ད བ ང མ ་ ག ལ ཞ ། {enter}","{shift} ཟ ཤ ཀ ཁ པ ན m ཐ ཇ / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["༁ ༪ ༫ ༬ ༭ ༮ ༯ ༰ ༱ ༲ ༳ ༼ ༽ {bksp}","{tab} ༕ ༖ ༗ ྼ ཊ ྻ ༘ ༙ ༚ ༛ ༜ ༝ ༞","ཱ ༟ ཌ ༾ ༿ ࿏ ༂ ༃ ༆ ༇ ༸ {enter}","{shift} ༴ ཥ ཀྵ ྇ ྆ ཎ M ཋ ༺ / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["ༀ ྲྀ ཷ ླྀ ཹ ཱི ༉ ༊ ༏ ༐ ༒ ༌ ༓ {bksp}","{tab} ྉ ྈ ྾ ཪ ྚ ྿ ཱུ ཱི ࿀ ࿁ ࿂ ࿃ ཛྷ","࿄ ࿅ ྜ བྷ ࿆ ࿇ ࿈ གྷ ࿉ ࿊ ࿋ {enter}","{shift} ࿌ ྵ ྐྵ ༶ ྂ ྞ དྷ ྛ ྋ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Turkish F"]={name:"ms-Turkish F",lang:["tr"],normal:["+ 1 2 3 4 5 6 7 8 9 0 / - {bksp}","{tab} f g ğ ı o d r n h p q w","u i e a ü t k m l y ş x {enter}","{shift} < j ö v c ç z s b . , {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["* ! \" ^ $ % & ' ( ) = ? _ {bksp}","{tab} F G Ğ I O D R N H P Q W","U İ E A Ü T K M L Y Ş X {enter}","{shift} > J Ö V C Ç Z S B : ; {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["¬ ¹ ² # ¼ ½ ¾ { [ ] } \\ | {bksp}","{tab} @ {empty} {empty} ¶ {empty} ¥ {empty} {empty} ø £ ¨ ~","æ ß € {empty} {empty} {empty} {empty} {empty} {empty} ´ {empty} ` {enter}","{shift} | « » ¢ {empty} {empty} {empty} µ × ÷ {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} ¡ {empty} ³ ¤ {empty} {empty} {empty} {empty} {empty} {empty} ¿ {empty} {bksp}","{tab} {empty} {empty} {empty} ® {empty} {empty} {empty} {empty} Ø {empty} {empty} {empty}","Æ § {empty} ª {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} ¦ < > © {empty} {empty} {empty} º {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Turkish Q"]={name:"ms-Turkish Q",lang:["tr"],normal:['" 1 2 3 4 5 6 7 8 9 0 * - {bksp}',"{tab} q w e r t y u ı o p ğ ü","a s d f g h j k l ş i , {enter}","{shift} < z x c v b n m ö ç . {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["é ! ' ^ + % & / ( ) = ? _ {bksp}","{tab} Q W E R T Y U I O P Ğ Ü","A S D F G H J K L Ş İ ; {enter}","{shift} > Z X C V B N M Ö Ç : {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["< > £ # $ ½ {empty} { [ ] } \\ | {bksp}","{tab} @ {empty} € {empty} {empty} {empty} {empty} i {empty} {empty} ¨ ~","æ ß {empty} {empty} {empty} {empty} {empty} {empty} {empty} ´ {empty} ` {enter}","{shift} | {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} İ {empty} {empty} {empty} {empty}","Æ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Turkmen"]={name:"ms-Turkmen",lang:["tk"],normal:["ž 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ä w e r t y u i o p ň ö ş","a s d f g h j k l ; ' {enter}","{shift} \\ z ü ç ý b n m , . / {shift}","{accept} {space} {cancel}"],shift:["Ž ! @ # $ % № & * ( ) _ + {bksp}","{tab} Ä W E R T Y U I O P Ň Ö Ş",'A S D F G H J K L : " {enter}',"{shift} | Z Ü Ç Ý B N M < > / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Ukrainian"]={name:"ms-Ukrainian",lang:["uk"],normal:["ё 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} й ц у к е н г ш щ з х ї \\","ф і в а п р о л д ж є {enter}","{shift} ґ я ч с м и т ь б ю / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['Ё ! " № ; % : ? * ( ) _ + {bksp}',"{tab} Й Ц У К Е Н Г Ш Щ З Х Ї /","Ф І В А П Р О Л Д Ж Є {enter}","{shift} Ґ Я Ч С М И Т Ь Б Ю / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} ґ {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} Ґ {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Ukrainian (Enhanced)"]={name:"ms-Ukrainian (Enhanced)",lang:["uk"],normal:["' 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} й ц у к е н г ш щ з х ї \\","ф і в а п р о л д ж є {enter}","{shift} ґ я ч с м и т ь б ю / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['₴ ! " № ; % : ? * ( ) _ + {bksp}',"{tab} Й Ц У К Е Н Г Ш Щ З Х Ї /","Ф І В А П Р О Л Д Ж Є {enter}","{shift} Ґ Я Ч С М И Т Ь Б Ю / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} ґ {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} Ґ {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-United Kingdom"]={name:"ms-United Kingdom",lang:["en-uk"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] #","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['¬ ! " £ $ % ^ & * ( ) _ + {bksp}',"{tab} Q W E R T Y U I O P { } ~","A S D F G H J K L : @ {enter}","{shift} | Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["¦ {empty} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} é {empty} {empty} {empty} ú í ó {empty} {empty} {empty} {empty}","á {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} É {empty} {empty} {empty} Ú Í Ó {empty} {empty} {empty} {empty}","Á {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-United Kingdom Extended"]={name:"ms-United Kingdom Extended",lang:["en-uk"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] #","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['¬ ! " £ $ % ^ & * ( ) _ + {bksp}',"{tab} Q W E R T Y U I O P { } ~","A S D F G H J K L : @ {enter}","{shift} | Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["¦ {empty} ¨ {empty} € {empty} ^ {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} ẃ é {empty} {empty} ý ú í ó {empty} {empty} {empty} ~","á {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ´ {enter}","{shift} {empty} {empty} {empty} ç {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} Ẃ É {empty} {empty} Ý Ú Í Ó {empty} {empty} {empty} {empty}","Á {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ` {enter}","{shift} {empty} {empty} {empty} Ç {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Urdu"]={name:"ms-Urdu",lang:["ur"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ط ص ھ د ٹ پ ت ب ج ح ] [ \\","م و ر ن ل ہ ا ک ی ؛ ' {enter}","{shift} \\ ق ف ے س ش غ ع ، ۔ / {shift}","{accept} {space} {cancel}"],shift:["~ ! @ # $ ٪ ^ ۖ ٭ ) ( _ + {bksp}","{tab} ظ ض ذ ڈ ث ّ ۃ ـ چ خ } { |",'ژ ز ڑ ں ۂ ء آ گ ي : " {enter}',"{shift} | {ZWJ} {ZWNJ} ۓ {LRM} ؤ ئ {RLM} > < / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-US-Dvorak"]={name:"ms-US-Dvorak",lang:["en"],normal:["` 1 2 3 4 5 6 7 8 9 0 [ ] {bksp}","{tab} ' , . p y f g c r l / = \\","a o e u i d h t n s - {enter}","{shift} ; q j k x b m w v z {shift}","{accept} {space} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) { } {bksp}",'{tab} " < > P Y F G C R L ? + |',"A O E U I D H T N S _ {enter}","{shift} : Q J K X B M W V Z {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-US-Dvorak for left hand"]={name:"ms-US-Dvorak for left hand",lang:["en"],normal:["` [ ] / p f m l j 4 3 2 1 {bksp}","{tab} ; q b y u r s o . 6 5 = \\","- k c d t h e a z 8 7 {enter}","{shift} ' x g v w n i , 0 9 {shift}","{accept} {space} {cancel}"],shift:["~ { } ? P F M L J $ # @ ! {bksp}","{tab} : Q B Y U R S O > ^ % + |","_ K C D T H E A Z * & {enter}",'{shift} " X G V W N I < ) ( {shift}',"{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-US-Dvorak for right hand"]={name:"ms-US-Dvorak for right hand",lang:["en"],normal:["` 1 2 3 4 j l m f p / [ ] {bksp}","{tab} 5 6 q . o r s u y b ; = \\","7 8 z a e h t d c k - {enter}","{shift} 9 0 x , i n w v g ' {shift}","{accept} {space} {cancel}"],shift:["~ ! @ # $ J L M F P ? { } {bksp}","{tab} % ^ Q > O R S U Y B : + |","& * Z A E H T D C K _ {enter}",'{shift} ( ) X < I N W V G " {shift}',"{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-US English (Latin)"]={name:"ms-US English (Latin)",lang:["en"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {space} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M < > / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-US English (IBM Arabic 238_L)"]={name:"ms-US English (IBM Arabic 238_L)",lang:["en"],normal:["< 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] `","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {space} {cancel}"],shift:["> ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } ~",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M , . ? {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-US-International"]={name:"ms-US-International",lang:["en"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ]","a s d f g h j k l ; ' \\ {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { }",'A S D F G H J K L : " | {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ¡ ² ³ ¤ € ¼ ½ ¾ ‘ ’ ¥ × {bksp}","{tab} ä å é ® þ ü ú í ó ö « »","á ß ð {empty} {empty} {empty} {empty} {empty} ø ¶ ´ ¬ {enter}","{shift} æ {empty} © {empty} {empty} ñ µ ç {empty} ¿ {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} ¹ {empty} {empty} £ {empty} {empty} {empty} {empty} {empty} {empty} {empty} ÷ {bksp}","{tab} Ä Å É {empty} Þ Ü Ú Í Ó Ö {empty} {empty}","Á § Ð {empty} {empty} {empty} {empty} {empty} Ø ° ¨ ¦ {enter}","{shift} Æ {empty} ¢ {empty} {empty} Ñ {empty} Ç {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Uyghur"]={name:"ms-Uyghur",lang:["ug"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} چ ۋ ې ر ت ي ۇ ڭ و پ ] [ \\","ھ س د ا ە ى ق ك ل ؛ ' {enter}","{shift} ز ش غ ۈ ب ن م ، . / {shift}","{accept} {space} {cancel}"],shift:["~ ! @ # $ % ^ & * ) ( _ + {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} » « |",'{empty} {empty} ژ ف گ خ ج ۆ لا : " {enter}',"{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} > < / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Uyghur (Legacy)"]={name:"ms-Uyghur (Legacy)",lang:["ug"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} چ ۋ ې ر ت ي ۇ ڭ و پ ] [ \\","ھ س د ا ە ى ق ك ل ؛ ' {enter}","{shift} ز ش غ ۈ ب ن م ، . / {shift}","{accept} {space} {cancel}"],shift:["~ ! @ # $ % ^ & * ) ( _ + {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} » « |",'{empty} {empty} ژ ڧ گ خ ج ۆ لا : " {enter}',"{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} > < / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Uzbek Cyrillic"]={name:"ms-Uzbek Cyrillic",lang:["uz"],normal:["ё 1 2 3 4 5 6 7 8 9 0 ғ ҳ {bksp}","{tab} й ц у к е н г ш ў з х ъ \\","ф қ в а п р о л д ж э {enter}","{shift} \\ я ч с м и т ь б ю / {shift}","{accept} {space} {cancel}"],shift:['Ё ! " № ; % : ? * ( ) Ғ Ҳ {bksp}',"{tab} Й Ц У К Е Н Г Ш Ў З Х Ъ /","Ф Қ В А П Р О Л Д Ж Э {enter}","{shift} / Я Ч С М И Т Ь Б Ю / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Vietnamese"]={name:"ms-Vietnamese",lang:["vi"],normal:["` ă â ê ô ̀ ̉ ̃ ́ ̣ đ - ₫ {bksp}","{tab} q w e r t y u i o p ư ơ \\","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ Ă Â Ê Ô ̀ ̉ ̃ ́ ̣ Đ _ + {bksp}","{tab} Q W E R T Y U I O P Ư Ơ |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Wolof"]={name:"ms-Wolof",lang:["wo"],normal:["ã & é \" ' ( - ñ _ ŋ à ) = {bksp}","{tab} a z e r t y u i o p ^ ó *","q s d f g h j k l m ù {enter}","{shift} < w x c v b n , ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["à 1 2 3 4 5 6 7 8 9 0 É + {bksp}","{tab} A Z E R T Y U I O P ¨ Ó Ñ","Q S D F G H J K L M À {enter}","{shift} > W X C V B N ? . / / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} ~ # { [ | ` \\ ^ @ ] } {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ¤ {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Yakut"]={name:"ms-Yakut",lang:["sah"],normal:['" ! нь дь ҥ ҕ ө һ ү ; : - = {bksp}',"{tab} й ц у к е н г ш щ з х ъ \\","ф ы в а п р о л д ж э {enter}",'{shift} " я ч с м и т ь б ю / {shift}',"{accept} {space} {cancel}"],shift:["№ ? Нь Дь Ҥ Ҕ Ө Һ Ү ( ) _ + {bksp}","{tab} Й Ц У К Е Н Г Ш Щ З Х Ъ /","Ф Ы В А П Р О Л Д Ж Э {enter}","{shift} № Я Ч С М И Т Ь Б Ю / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Yoruba"]={name:"ms-Yoruba",lang:["yo"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] {empty}","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} € {empty} {empty} {empty} ‘ ’ {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","ọ́ ọ̀ {empty} {empty} {empty} {empty} {empty} ẹ́ ẹ̀ ¶ {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ¦","Ọ́ Ọ̀ {empty} {empty} {empty} {empty} {empty} Ẹ́ Ẹ̀ {empty} ¨ {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.language.amh={language:"ፊደል (Fidal) Amharic and Gǝʿǝz",display:{a:"✔:መቀበል (Shift+Enter)",accept:"Accept:መቀበል (Shift+Enter)",alt:"AltGr:ተለዋጭ፡ ፊደል፡",b:"←:ማጥፊያ",bksp:"Bksp:ማጥፊያ",c:"✖:መሠረዝ",cancel:"Cancel:መሠረዝ",clear:"C:ማፅዳት",combo:"ö:Toggle Combo Keys",dec:".:የአሀዝ፡ ቁጥር",e:"↵:መጀመር",enter:"Enter:መጀመር",lock:"⇪ Lock:አሮጌ፡ ለውጥ",s:"⇧:መለወጥ",shift:"Shift:መለወጥ",sign:"±:የሒሣብ፡ ምልክት፡ መቀየር",space:" :ክፍት፡ቦታ",t:"⇥:መግፊያ",tab:"⇥ Tab:መግፊያ"},wheelMessage:"Use mousewheel to see other keys",comboRegex:/([`\'~\^\"a-z0-9\{\}\[\]\|<>])([a-z0-9_\-\.\|`\'~\^\"!,=])/gim,combos:{a:{a:"ʾ",".":"ạ",1:"à",2:"á",3:"ã","=":"â",9:"ä","-":"ā",",":"፠"},A:{A:"ʿ","-":"Ā",1:"À",2:"Á",3:"Ã",9:"Ä","=":"Â"},e:{e:"ǝ","-":"ē",",":"፧",1:"è",2:"é",3:"ẽ",9:"ë","=":"ê"},E:{E:"Ǝ","-":"Ē",1:"È",2:"É",3:"Ẽ",9:"Ë","=":"Ê"},i:{1:"ì",2:"í",3:"ĩ",9:"ï",9:"ö","=":"î"},I:{1:"Ì",2:"Í",3:"Ĩ",9:"Ï","=":"Î"},o:{1:"ò",2:"ó",3:"õ","=":"ô"},O:{1:"Ò",2:"Ó",3:"Õ",9:"Ö","=":"Ô"},u:{1:"ù",2:"ú",3:"ũ",9:"ü","=":"û"},U:{1:"Ù",2:"Ú",3:"Ũ",9:"Ü","=":"Û"},h:{a:"ሀ",u:"ሁ",i:"ሂ",A:"ሃ",E:"ሄ",e:"ህ",o:"ሆ","!":"ሇ",_:"ḫ",".":"ḥ"},l:{a:"ለ",u:"ሉ",i:"ሊ",A:"ላ",E:"ሌ",e:"ል",o:"ሎ","!":"ሏ"},H:{a:"ሐ",u:"ሑ",i:"ሒ",A:"ሓ",E:"ሔ",e:"ሕ",o:"ሖ","!":"ሗ",_:"Ḫ"},m:{a:"መ",u:"ሙ",i:"ሚ",A:"ማ",E:"ሜ",e:"ም",o:"ሞ","!":"ሟ"},S:{a:"ሠ",u:"ሡ",i:"ሢ",A:"ሣ",E:"ሤ",e:"ሥ",o:"ሦ","!":"ሧ",".":"Ṣ","|":"Š",6:"Ś"},r:{a:"ረ",u:"ሩ",i:"ሪ",A:"ራ",E:"ሬ",e:"ር",o:"ሮ","!":"ሯ"},s:{a:"ሰ",u:"ሱ",i:"ሲ",A:"ሳ",E:"ሴ",e:"ስ",o:"ሶ","!":"ሷ",".":"ṣ","|":"š",6:"ś"},v:{a:"ሸ",u:"ሹ",i:"ሺ",A:"ሻ",E:"ሼ",e:"ሽ",o:"ሾ","!":"ሿ"},q:{a:"ቀ",u:"ቁ",i:"ቂ",A:"ቃ",E:"ቄ",e:"ቅ",o:"ቆ","!":"ቇ"},b:{a:"በ",u:"ቡ",i:"ቢ",A:"ባ",E:"ቤ",e:"ብ",o:"ቦ","!":"ቧ",",":"፣"},B:{a:"ቨ",u:"ቩ",i:"ቪ",A:"ቫ",E:"ቬ",e:"ቭ",o:"ቮ","!":"ቯ"},t:{a:"ተ",u:"ቱ",i:"ቲ",A:"ታ",E:"ቴ",e:"ት",o:"ቶ","!":"ቷ",".":"ṭ"},c:{a:"ቸ",u:"ቹ",i:"ቺ",A:"ቻ",E:"ቼ",e:"ች",o:"ቾ","!":"ቿ",_:"č̣","|":"č",",":"፤"},x:{a:"ኀ",u:"ኁ",i:"ኂ",A:"ኃ",E:"ኄ",e:"ኅ",o:"ኆ","!":"ኇ"},n:{a:"ነ",u:"ኑ",i:"ኒ",A:"ና",E:"ኔ",e:"ን",o:"ኖ","!":"ኗ",3:"ñ"},N:{a:"ኘ",u:"ኙ",i:"ኚ",A:"ኛ",E:"ኜ",e:"ኝ",o:"ኞ","!":"ኟ",3:"Ñ"},"'":{a:"አ",u:"ኡ",i:"ኢ",A:"ኣ",E:"ኤ",e:"እ",o:"ኦ","!":"ኧ"},k:{a:"ከ",u:"ኩ",i:"ኪ",A:"ካ",E:"ኬ",e:"ክ",o:"ኮ","!":"ኯ"},K:{a:"ኸ",u:"ኹ",i:"ኺ",A:"ኻ",E:"ኼ",e:"ኽ",o:"ኾ"},w:{a:"ወ",u:"ዉ",i:"ዊ",A:"ዋ",E:"ዌ",e:"ው",o:"ዎ","!":"ዏ","=":"ʷ"},W:{a:"ዐ",u:"ዑ",i:"ዒ",A:"ዓ",E:"ዔ",e:"ዕ",o:"ዖ"},z:{a:"ዘ",u:"ዙ",i:"ዚ",A:"ዛ",E:"ዜ",e:"ዝ",o:"ዞ","!":"ዟ","|":"ž"},Z:{a:"ዠ",u:"ዡ",i:"ዢ",A:"ዣ",E:"ዤ",e:"ዥ",o:"ዦ","!":"ዧ","|":"Ž"},y:{a:"የ",u:"ዩ",i:"ዪ",A:"ያ",E:"ዬ",e:"ይ",o:"ዮ","!":"ዯ",1:"ỳ",2:"ý",3:"ỹ",9:"ÿ","=":"ŷ"},d:{a:"ደ",u:"ዱ",i:"ዲ",A:"ዳ",E:"ዴ",e:"ድ",o:"ዶ","!":"ዷ",".":"ḍ",",":"፦"},L:{a:"ዸ",u:"ዹ",i:"ዺ",A:"ዻ",E:"ዼ",e:"ዽ",o:"ዾ","!":"ዿ"},D:{a:"ጀ",u:"ጁ",i:"ጂ",A:"ጃ",E:"ጄ",e:"ጅ",o:"ጆ","!":"ጇ",".":"Ḍ"},g:{a:"ገ",u:"ጉ",i:"ጊ",A:"ጋ",E:"ጌ",e:"ግ",o:"ጎ","!":"ጏ","|":"ǧ"},G:{a:"ጘ",u:"ጙ",i:"ጚ",A:"ጛ",E:"ጜ",e:"ጝ",o:"ጞ","!":"ጟ","|":"Ǧ"},T:{a:"ጠ",u:"ጡ",i:"ጢ",A:"ጣ",E:"ጤ",e:"ጥ",o:"ጦ","!":"ጧ",".":"Ṭ"},C:{a:"ጨ",u:"ጩ",i:"ጪ",A:"ጫ",E:"ጬ",e:"ጭ",o:"ጮ","!":"ጯ"},p:{a:"ጰ",u:"ጱ",i:"ጲ",A:"ጳ",E:"ጴ",e:"ጵ",o:"ጶ","!":"ጷ",6:"ṗ"},j:{a:"ጸ",u:"ጹ",i:"ጺ",A:"ጻ",E:"ጼ",e:"ጽ",o:"ጾ","!":"ጿ"},J:{a:"ፀ",u:"ፁ",i:"ፂ",A:"ፃ",E:"ፄ",e:"ፅ",o:"ፆ","!":"ፇ"},f:{a:"ፈ",u:"ፉ",i:"ፊ",A:"ፋ",E:"ፌ",e:"ፍ",o:"ፎ","!":"ፏ",",":"፨"},P:{a:"ፐ",u:"ፑ",i:"ፒ",A:"ፓ",E:"ፔ",e:"ፕ",o:"ፖ","!":"ፗ",6:"Ṗ"},Q:{a:"ቐ",u:"ቑ",i:"ቒ",A:"ቓ",E:"ቔ",e:"ቕ",o:"ቖ"},"[":{a:"ቈ",i:"ቊ",A:"ቋ",E:"ቌ",e:"ቍ"},"]":{a:"ኈ",i:"ኊ",A:"ኋ",E:"ኌ",e:"ኍ"},"}":{a:"ኰ",i:"ኲ",A:"ኳ",E:"ኴ",e:"ኵ"},"{":{a:"ጐ",i:"ጒ",A:"ጓ",E:"ጔ",e:"ጕ"},M:{a:"ᎀ",i:"ᎁ",E:"ᎂ",e:"ᎃ"},"|":{a:"ᎄ",i:"ᎅ",E:"ᎆ",e:"ᎇ"},"<":{a:"ᎈ",i:"ᎉ",E:"ᎊ",e:"ᎋ"},">":{a:"ᎌ",i:"ᎍ",E:"ᎎ",e:"ᎏ"},Y:{1:"Ỳ",2:"Ý",3:"Ỹ",9:"Ÿ","=":"Ŷ"}},rtl:!1},jQuery.keyboard.language.de={language:"Deutsch (German)",display:{a:"✔:Übernehmen (Umschalt+Enter)",accept:"Übernehmen:Übernehmen (Umschalt+Enter)",alt:"AltGr:Alt Graph",b:"←:Rücktaste",bksp:"Rück:Rücktaste",c:"✖:Abbrechen (Esc)",cancel:"Abbrechen:Abbrechen (Esc)",clear:"C:Löschen",combo:"ö:Tottasten umschalten",dec:",:Dezimal",e:"↵:Eingabe",enter:"Enter:Eingabe",lock:"⇩:Feststelltaste",s:"⇧:Umschalttaste",shift:"Umschalt:Umschalttaste",sign:"±:Vorzeichen wechseln",space:" :Leertaste",t:"⇥:Tabulatortaste",tab:"⇥ Tab:Tabulatortaste"},wheelMessage:"Mausrad benutzen, um weitere Tasten zu sehen"},jQuery.keyboard.language.es={language:"Español (Spanish)",display:{a:"✔:Acceptar (Cambio+Inscribir)",accept:"Acceptar:Acceptar (Cambio+Inscribir)",alt:"AltGr:Grafemas Alternativos",b:"←:Retroceso",bksp:"Bksp:Retroceso",c:"✖:Cancelar (Esc)",cancel:"Cancelar:Cancelar (Esc)",clear:"C:Vaciar",combo:"ö:Alternar las Teclas Combinados",dec:",:Decimal",e:"↵:Inscribir",enter:"Inscribir:Inscribir",lock:"⇪ Bloq:Mayús",s:"⇧:Cambio",shift:"Cambio:Cambio",sign:"±:Cambiar Signo",space:" :Espacio",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Utilice la rueda del mouse para ver otras teclas"},jQuery.keyboard.language.fa={language:"فارسی (Farsi)",display:{a:"✔:تأیید (Shift+Enter)",accept:"تأیید:تأیید (Shift+Enter)",alt:"Lng:Alternate Graphemes",b:"←:⬅ Backspace",bksp:"⬅ Bksp:⬅ Backspace",c:"✖:انصراف (Esc)",cancel:"انصراف:انصراف (Esc)",clear:"C:Clear",combo:"ö:Toggle Combo Keys",dec:".:Decimal",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:Change Sign",space:" :Space",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Use mousewheel to see other keys",rtl:!0},jQuery.keyboard.language.fr={language:"Français (French)",display:{a:"✔:Valider (Shift+Enter)",accept:"Valider:Valider (Shift+Enter)",alt:"AltGr:Charactère alternatif",b:"←:Suppr arrière",bksp:"←Suppr:Suppr arrière",c:"✖:Annuler",cancel:"Annuler:Annuler (Échap)",clear:"C:Effacer",combo:"ö:Bacsuler les touches combo",dec:".:Decimal",e:"↵:Entrée",enter:"Entrée:Entrée",lock:"⇪ Verr Mag:Verouillage majuscule",s:"⇧:Majuscule",shift:"Maj:Majuscule",sign:"±:Change de signe",space:" :Espace",t:"⇥:Tabulation",tab:"⇥ Tab:Tabulation"},wheelMessage:"Utiliser la molette de la souris pour voir les autres lettres"},jQuery.keyboard.language.he={language:"עברית (Hebrew)",display:{a:"✔:אישור (Shift+Enter)",accept:"אישור:אישור (Shift+Enter)",alt:"Alt:תווים נוספים",b:"←:Backspace",bksp:"Bksp:Backspace",c:"✖:ביטול (Esc)",cancel:"ביטול:ביטול (Esc)",clear:"C:ניקוי",combo:"ö:Toggle Combo Keys",dec:".:נקודה עשרונית",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:שינוי סימן",space:" :רווח",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"ניתן להשתמש בגלגלת העכבר כדי לראות מקשים נוספים",rtl:!0},jQuery.keyboard.language.hu={language:"Magyar (Hungarian)",display:{a:"✔:Rendben (Shift+Enter)",accept:"Rendben:Rendben (Shift+Enter)",alt:"AltGr:Alternate Graphemes",b:"←:Backspace",bksp:"Töröl:Backspace",c:"✖:Cancel (Esc)",cancel:"Mégsem:Cancel (Esc)",clear:"C:Clear",combo:"ö:Toggle Combo Keys",dec:".:Decimal",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:Change Sign",space:" :Space",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Használd az egér görgetőt a többi billentyű átváltáshoz"},jQuery.keyboard.language.it={language:"Italiano (Italian)",display:{a:"✔:Accetta (Shift+Enter)",accept:"Accetta:Accetta (Shift+Enter)",alt:"AltGr:Grafemi Alternativi",b:"←:Cancella",bksp:"Canc:Cancella",c:"✖:Annulla (Esc)",cancel:"Annulla:Annulla (Esc)",clear:"C:Pulisci",combo:"ö:Tasti Combinati",dec:",:Decimale",e:"↵:Invio",enter:"Invio:Invio",lock:"⇪ Bloc:Bloc Maiusc",s:"⇧:Maiusc",shift:"Maiusc:Maiusc",sign:"±:Cambia Segno",space:" :Spazio",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Usa la rotella del mouse per vedere altri tasti"},jQuery.keyboard.language.lv={language:"Latviešu (Latvian)",display:{a:"✔:Pieņemt (Shift+Enter)",accept:"Pieņemt:Pieņemt (Shift+Enter)",alt:"AltGr:Alternēšanas taustiņš",b:"←:Atpakaļatkāpe",bksp:"Bksp:Atpakaļatkāpe",c:"✖:Atcelt (Esc)",cancel:"Atcelt:Atcelt (Esc)",clear:"C:Clear",combo:"ö:Toggle Combo Keys",dec:".:Decimal",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:Change Sign",space:" :Space",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Izmanto peles ritenīti, lai apskatītu citus taustiņus",combos:{"'":{c:"ć",C:"Ć",e:"é",E:"É",n:"ń",N:"Ń",o:"ó",O:"Ó",s:"ś",S:"Ś",z:"ź",Z:"Ź"},"¨":{a:"ä",A:"Ä",o:"ö",O:"Ö",u:"ü",U:"Ü"},"°":{a:"å",A:"Å",e:"ė",E:"Ė",g:"ġ",z:"ż",Z:"Ż"}},comboRegex:/([`\'~\^\"ao\u00a8\u00b0])([a-z])/gim},jQuery.keyboard.language.my={language:"ဗမာ (Burmese)",display:{a:"✔:Accept (Shift+Enter)",accept:"Accept:Accept (Shift+Enter)",alt:"AltGr:Alternate Graphemes",b:"←:Backspace",bksp:"Bksp:Backspace",c:"✖:Cancel (Esc)",cancel:"Cancel:Cancel (Esc)",clear:"C:ရှင်းလင်းရန်",combo:"ö:Toggle Combo Keys",dec:".:ဒသမ",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:Change Sign",space:" :Space",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"အခြားခလုတ်များကို မြင်ရစေရန် မောက်စ်ဝှီးလ်ကို အသုံးပြုပါ"},jQuery.keyboard.language.pl={language:"Polski (Polish)",display:{a:"✔:Akceptuj (Shift+Enter)",accept:"Accept:Akceptuj (Shift+Enter)",alt:"AltGr:Polskie znaki",b:"←:Cofnij",bksp:"Bksp:Cofnij",c:"✖:Anuluj (Esc)",cancel:"Cancel:Anuluj (Esc)",clear:"C:Czyść",combo:"ö:Klawisze kombo",dec:".:Dziesiętny",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:Zmień znak",space:" :Spacja",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Użyj rolki aby zobaczyć pozozstałe klawisze"},jQuery.keyboard.language.pt={language:"Português (Portuguese)",display:{a:"✔:Aceitar (Shift+Enter)",accept:"Aceitar:Concluir (Shift+Enter)",alt:"AltGr:Carateres Adicionais/CTRL+ALT",b:"←:Retroceder",bksp:"← Bksp:Retroceder",c:"✖:Cancelar/Escape (Esc)",cancel:"Cancel:Cancelar/Escape(Esc)",clear:"C:Limpar",combo:"ö:Acentuação Automática",dec:".:Decimal",e:"↵:Introduzir/Mudar de Linha",enter:"Enter↵:Introduzir/Mudar de Linha",lock:"⇪ Lock:CapsLock/Maiúsculas",s:"⇧:Shift/Maiúsculas",shift:"⇪ Shift:Maiúsculas-Minúsculas",sign:"±:Mudar Sinal",space:" :Espaço",t:"⇥:Tab/Tabela/Avançar",tab:"⇥ Tab:Tabela/Avançar"},wheelMessage:"Use a roda do rato/navegador para ver mais teclas",comboRegex:/([`\'~\^\"ao\u00b4])([a-z])/gim,combos:{"´":{a:"á",A:"Á",e:"é",E:"É",i:"í",I:"Í",o:"ó",O:"Ó",u:"ú",U:"Ú",y:"ý",Y:"Ý"},"'":{}}},jQuery.keyboard.language.ro={language:"Română (Romanian)",display:{a:"✔:Accept (Shift+Enter)",accept:"Accept:Accept (Shift+Enter)",alt:"AltGr:Alternate Graphemes",b:"←:Backspace",bksp:"Bksp:Backspace",c:"✖:Cancel (Esc)",cancel:"Cancel:Cancel (Esc)",clear:"C:Clear",combo:"ö:Toggle Combo Keys",dec:",:Decimal",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:Schimba semnul",space:" :Spatiu",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Foloseste rotita mouse-ului pentru a vedea si celelalte caractere"},jQuery.keyboard.language.ru={language:"Русский (Russian)",display:{a:"✔:Сохранить (Shift+Enter)",accept:"Сохранить:Сохранить (Shift+Enter)",alt:"РУС:Русская клавиатура",b:"←:Удалить символ слева",bksp:"⇦:Удалить символ слева",c:"✖:Отменить (Esc)",cancel:"Отменить:Отменить (Esc)",clear:"C:Очистить",combo:"ö:Toggle Combo Keys",dec:",:Decimal",e:"↵:Ввод",enter:"Ввод:Перевод строки",lock:"⇪ Lock:Caps Lock",s:"⇧:Верхний регистр",shift:"⇧:Верхний регистр",sign:"±:Сменить знак",space:"Пробел:",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Use mousewheel to see other keys"},jQuery.keyboard.language.sq={language:"Shqip (Albanian)",display:{a:"✔:Prano (Shift+Enter)",accept:"Prano:Prano (Shift+Enter)",alt:"Alt:Alternativ",b:"←:Hapësirën Mbrapa",bksp:"Bksp:Hapësirën Mbrapa",c:"✖:Anuloj (Arratisjes)",cancel:"Anuloj:Anuloj (Arratisjes)",clear:"C:Qartë",combo:"ö:Kombinimi",dec:".:Decimal",e:"↵:Shkruani",enter:"Shkruani:Shkruani",lock:"⇪ Bllokoj:Caps Lock",next:"Next ⇨",prev:"⇦ Prev",s:"⇧:Ndryshim",shift:"Ndryshim:Ndryshim",sign:"±:Ndryshimi Regjistrohu",space:" :Hapësirë",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Përdorimi mousewheel për të parë çelësat e tjera",comboRegex:/([`\'~\^\"ao\/])([a-z])/gim,combos:{"/":{d:"đ",D:"Đ",l:"ł",L:"Ł"}}},jQuery.keyboard.language.syr={language:"\\u0723\\u0718\\u072a\\u071d\\u0730\\u072c (Syriac)",display:{a:"✔:ܚܶܦܳܕ݂ܐ (ܙܰܘܥܶܐ + ܥܒܰܪܬܐ)",accept:"ܚܶܦܳܕ݂ܐ:(ܙܰܘܥܶܐ + ܥܒܰܪܬܐ)",alt:"AltGr:ܒܶܕܳܠܐ ܓܪܰܦܝܟ ܕܥܰܪܬܐ",b:"←:ܙܪܰܥܠܐ ܕܝ ܕܥܰܪܬܐ",bksp:"← Back:ܙܪܰܥܠܐ ܕܝ ܕܥܰܪܬܐ",c:"✖:ܥܪܰܩܬܐ",cancel:"Esc:ܥܪܰܩܬܐ",clear:"C:ܠܚܳܝܐ",combo:"ö:ܙܪܰܥܠܐ ܡܝܬ݂ܐ",dec:",:ܢܘܩܙܐ ܕܪܰܩܡܶܐ (ܐܷܢܓܠܝܫܳܝܐ\\ܐܰܡܶܪܝܟܳܝܐ)",e:"↵:ܥܒܳܪܐ",enter:"↵ Enter:ܥܒܳܪܐ",lock:"⇩:ܐܷܬ݂ܘܳܬ݂ܶܐ ܙܰܘܥܶܐ ",s:"⇧:ܙܰܘܥܶܐ",shift:"⇧ Shift:ܙܰܘܥܶܐ",sign:"±:ܒܶܕܳܠܐ ܦ݁ܳܣܝܬܝܦ Space ܢܶܓܰܬܝܦ",space:"\\u0020:ܕܘܟܬ݂ܐ ܟ݂ܠܝܬ݂ܐ",t:"⇥:ܙܪܰܥܠܐ ܕܷܟܠܳܝܐ ܗܳܪܝܙܳܢܳܝܐ",tab:"⇥ Tab:ܙܪܰܥܠܐ ܕܷܟܠܳܝܐ ܗܳܪܝܙܳܢܳܝܐ"},wheelMessage:"Mausrad benutzen, um weitere Tasten zu sehen",rtl:!0};jQuery.keyboard.layouts["latvian-qwerty"]={name:"latvian-qwerty",lang:["lv"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] °","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["¬ 1 « » € 5 ’ 7 8 9 0 – = {bksp}","{tab} q w ē ŗ t y ū ī ō p [ ] °","ā š d f ģ h j ķ ļ ; ´ {enter}","{shift} ž x č v b ņ m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ 1 2 3 4 § « 7 ± × 0 — = {bksp}","{tab} Q W Ē Ŗ T Y Ū Ī Ō P { } |","Ā Š D F Ģ H J Ķ Ļ : ¨ {enter}","{shift} Ž X Č V B Ņ M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts.mongolian={name:"mongolian",lang:["mn"],normal:['= № - " ₮ : . _ , % ? е щ {bksp}',"{tab} ф ц у ж э н г ш ү з к ъ \\","й ы б ө а х р о л д п {enter}","{shift} я ч ё с м и т ь в ю {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["+ 1 2 3 4 5 6 7 8 9 0 Е Щ {bksp}","{tab} Ф Ц У Ж Э Н Г Ш Ү З К Ъ |","Й Ы Б Ө А Х Р О Л Д П {enter}","{shift} Я Ч Ё С М И Т Ь В Ю {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Albanian"]={name:"ms-Albanian",lang:["sq"],normal:["\\ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t z u i o p ç @","a s d f g h j k l ë [ ] {enter}","{shift} < y x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['| ! " # $ % ^ & * ( ) _ + {bksp}',"{tab} Q W E R T Z U I O P Ç '","A S D F G H J K L Ë { } {enter}","{shift} > Y X C V B N M ; : ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {bksp}","{tab} \\ | {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ÷ ×","{empty} đ Đ [ ] {empty} {empty} ł Ł $ ß ¤ {enter}","{shift} {empty} {empty} {empty} {empty} @ { } § < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Arabic (101)"]={name:"ms-Arabic (101)",lang:["ar"],normal:["ذ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ض ص ث ق ف غ ع ه خ ح ج د \\","ش س ي ب ل ا ت ن م ك ط {enter}","{shift} ئ ء ؤ ر لا ى ة و ز ظ {shift}","{accept} {space} {cancel}"],shift:["ّ ! @ # $ % ^ & * ) ( _ + {bksp}","{tab} َ ً ُ ٌ لإ إ ‘ ÷ × ؛ < > |",'ِ ٍ ] [ لأ أ ـ ، / : " {enter}',"{shift} ~ ْ } { لآ آ ’ , . ؟ {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Arabic (102)"]={name:"ms-Arabic (102)",lang:["ar"],normal:["> 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ض ص ث ق ف غ ع ه خ ح ج د {enter}","ش س ي ب ل ا ت ن م ك ط ذ ","{shift} ـ ئ ء ؤ ر لا ى ة و ز ظ {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["< ! @ # $ % ^ & * ) ( _ + {bksp}","{tab} َ ً ُ ٌ لإ إ ‘ ÷ × ؛ } { {enter}",'\\ {empty} ] [ لأ أ ـ ، / : " ّ ',"{shift} | ~ ْ ِ ٍ لآ آ ’ , . ؟ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} ¤ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} َّ ًّ ُّ ٌّ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ","{shift} {empty} {empty} {empty} ِّ ٍّ {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Arabic (102) AZERTY"]={name:"ms-Arabic (102) AZERTY",lang:["ar"],normal:["> & é \" ' ( - è _ ç à ) = {bksp}","{tab} ض ص ث ق ف غ ع ه خ ح ج د {enter}","ش س ي ب ل ا ت ن م ك ط ذ ","{shift} \\ ئ ء ؤ ر لا ى ة و ز ظ {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["< 1 2 3 4 5 6 7 8 9 0 ° + {bksp}","{tab} َ ً ُ ٌ لإ إ ‘ ÷ × ؛ } { {enter}",'\\ {empty} ] [ لأ أ ـ ، / : " ّ ',"{shift} | ~ ْ ِ ٍ لآ آ ’ , . ؟ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} ¤ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} َّ ًّ ُّ ٌّ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ","{shift} {empty} {empty} {empty} ِّ ٍّ {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Armenian Eastern"]={name:"ms-Armenian Eastern",lang:["hy-e"],normal:["՝ : ձ յ ՛ , - . « » օ ռ ժ {bksp}","{tab} խ ւ է ր տ ե ը ի ո պ չ ջ '","ա ս դ ֆ ք հ ճ կ լ թ փ {enter}","{shift} ' զ ց գ վ բ ն մ շ ղ / {shift}","{accept} {space} {cancel}"],shift:["՜ 1 Ձ Յ 3 4 9 և ( ) Օ Ռ Ժ {bksp}","{tab} Խ Ւ Է Ր Տ Ե Ը Ի Ո Պ Չ Ջ ՞","Ա Ս Դ Ֆ Ք Հ Ճ Կ Լ Թ Փ {enter}","{shift} ՞ Զ Ց Գ Վ Բ Ն Մ Շ Ղ / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Armenian Western"]={name:"ms-Armenian Western",lang:["hy-w"],normal:["՝ : ձ յ ՛ , - . « » օ ռ ժ {bksp}","{tab} խ վ է ր դ ե ը ի ո բ չ ջ '","ա ս տ ֆ կ հ ճ ք լ թ փ {enter}","{shift} ' զ ց գ ւ պ ն մ շ ղ / {shift}","{accept} {space} {cancel}"],shift:["՜ 1 Ձ Յ 3 4 9 և ( ) Օ Ռ Ժ {bksp}","{tab} Խ Վ Է Ր Դ Ե Ը Ի Ո Բ Չ Ջ ՞","Ա Ս Տ Ֆ Կ Հ Ճ Ք Լ Թ Փ {enter}","{shift} ՞ Զ Ց Գ Ւ Պ Ն Մ Շ Ղ / {shift}","{accept} {space} {cancel}"]};jQuery.keyboard.layouts["ms-Assamese-INSCRIPT"]={name:"ms-Assamese-INSCRIPT",lang:["as"],normal:["॥ ১ ২ ৩ ৪ ৫ ৬ ৭ ৮ ৯ ০ - ৃ {bksp}","{tab} ৌ ৈ া ী ূ ব হ গ দ জ ড ় {empty}","ো ে ্ ি ু প ৰ ক ত চ ট {enter}","{shift} {empty} {empty} ং ম ন ৱ ল স , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["{empty} ! @ ্ৰ ৰ্ জ্ঞ ত্ৰ ক্ষ শ্ৰ ( ) ঃ ঋ {bksp}","{tab} ঔ ঐ আ ঈ ঊ ভ ঙ ঘ ধ ঝ ঢ ঞ {empty}","ও এ অ ই উ ফ {empty} খ থ ছ ঠ {enter}","{shift} {empty} {empty} ঁ ণ {empty} {empty} {empty} শ ষ । / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Azeri Cyrillic"]={name:"ms-Azeri Cyrillic",lang:["az"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ј ү у к е н г ш һ з х ҹ \\","ф ы в а п р о л д ж ҝ {enter}","{shift} \\ ә ч с м и т ғ б ө / {shift}","{accept} {space} {cancel}"],shift:['~ ! " № ; % : ? * ( ) _ + {bksp}',"{tab} Ј Ү У К Е Н Г Ш Һ З Х Ҹ /","Ф Ы В А П Р О Л Д Ж Ҝ {enter}","{shift} | Ә Ч С М И Т Ғ Б Ө / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Azeri Latin"]={name:"ms-Azeri Latin",lang:["az"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q ü e r t y u i o p ö ğ \\","a s d f g h j k l ı ə {enter}","{shift} \\ z x c v b n m ç ş / {shift}","{accept} {space} {cancel}"],shift:['~ ! " Ⅶ ; % : ? * ( ) _ + {bksp}',"{tab} Q Ü E R T Y U İ O P Ö Ğ /","A S D F G H J K L I Ə {enter}","{shift} / Z X C V B N M Ç Ş / {shift}","{accept} {space} {cancel}"]};jQuery.keyboard.layouts["ms-Bashkir"]={name:"ms-Bashkir",lang:["ba"],normal:["ә ! ө ҡ ғ ҫ : ҙ һ ? № - ү {bksp}","{tab} й ц у к е н г ш щ з х ъ ң","ф ы в а п р о л д ж э {enter}","{shift} я ч с м и т ь б ю / {shift}","{accept} {space} {cancel}"],shift:['Ә " Ө Ҡ Ғ Ҫ ; Ҙ Һ ( ) % Ү {bksp}',"{tab} Й Ц У К Е Н Г Ш Щ З Х Ъ Ң","Ф Ы В А П Р О Л Д Ж Э {enter}","{shift} Я Ч С М И Т Ь Б Ю / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Bosnian (Cyrillic)"]={name:"ms-Bosnian (Cyrillic)",lang:["bs"],normal:["` 1 2 3 4 5 6 7 8 9 0 ' + {bksp}","{tab} љ њ е р т з у и о п ш ђ ж","а с д ф г х ј к л ч ћ {enter}","{shift} < ѕ џ ц в б н м , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['~ ! " # $ % & / ( ) = ? * {bksp}',"{tab} Љ Њ Е Р Т З У И О П Ш Ђ Ж","А С Д Ф Г Х Ј К Л Ч Ћ {enter}","{shift} > Ѕ Џ Ц В Б Н М ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} ^ {empty} ° {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} \\ | € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} [ ] {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} @ { } § < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Belarusian"]={name:"ms-Belarusian",lang:["be"],normal:["ё 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} й ц у к е н г ш ў з х ' \\","ф ы в а п р о л д ж э {enter}","{shift} \\ я ч с м і т ь б ю / {shift}","{accept} {space} {cancel}"],shift:['Ё ! " № ; % : ? * ( ) _ + {bksp}',"{tab} Й Ц У К Е Н Г Ш Ў З Х ' /","Ф Ы В А П Р О Л Д Ж Э {enter}","{shift} / Я Ч С М І Т Ь Б Ю / {shift}","{accept} {space} {cancel}"]};jQuery.keyboard.layouts["ms-Belgian (Comma)"]={name:"ms-Belgian (Comma)",lang:["nl","fr","de"],normal:["² & é \" ' ( § è ! ç à ) - {bksp}","{tab} a z e r t y u i o p ^ $ µ","q s d f g h j k l m ù {enter}","{shift} < w x c v b n , ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["³ 1 2 3 4 5 6 7 8 9 0 ° _ {bksp}","{tab} A Z E R T Y U I O P ¨ * £","Q S D F G H J K L M % {enter}","{shift} > W X C V B N ? . / / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} | @ # { [ ^ {empty} {empty} { } {empty} {empty} {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ] {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ´ {enter}","{shift} \\ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Belgian French"]={name:"ms-Belgian French",lang:["nl-fr","fr"],normal:["² & é \" ' ( § è ! ç à ) - {bksp}","{tab} a z e r t y u i o p ^ $ µ","q s d f g h j k l m ù {enter}","{shift} < w x c v b n , ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["³ 1 2 3 4 5 6 7 8 9 0 ° _ {bksp}","{tab} A Z E R T Y U I O P ¨ * £","Q S D F G H J K L M % {enter}","{shift} > W X C V B N ? . / / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} | @ # { [ ^ {empty} {empty} { } {empty} {empty} {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ] {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ´ {enter}","{shift} \\ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Bengali"]={name:"ms-Bengali",lang:["bn"],normal:["1 2 3 4 5 6 7 8 9 0 - ৃ {bksp}","{tab} ৌ ৈ া ী ূ ব হ গ দ জ ড ়","ো ে ্ ি ু প র ক ত চ ট {enter}","{shift} ং ম ন ব ল স , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["{empty} {empty} ্র র্ জ্র ত্ষ ক্র শ্র ( ) ঃ ঋ {bksp}","{tab} ঔ ঐ আ ঈ ঊ ভ ঙ ঘ ধ ঝ ঢ ঞ","ও এ অ ই উ ফ {empty} খ থ ছ ঠ {enter}","{shift} ঁ ণ {empty} {empty} {empty} শ ষ { / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["১ ২ ৩ ৪ ৫ ৬ ৭ ৮ ৯ ০ {empty} ৢ {bksp}","{tab} ৗ {empty} {empty} ৣ {empty} {empty} {empty} {empty} {empty} {empty} ড় {empty}","৴ ৶ ৸ ৢ {empty} {empty} ৰ {empty} {empty} {empty} {empty} {enter}","{shift} ৺ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ৠ {bksp}","{tab} {empty} {empty} {empty} ৡ {empty} {empty} {empty} {empty} {empty} {empty} ঢ় {empty}","৵ ৷ ৹ ঌ {empty} {empty} ৱ {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Bengali - INSCRIPT (Legacy)"]={name:"ms-Bengali - INSCRIPT (Legacy)",lang:["bn"],normal:["১ ২ ৩ ৪ ৫ ৬ ৭ ৮ ৯ ০ - ৃ {bksp}","{tab} ৌ ৈ া ী ূ ব হ গ দ জ ড ়","ো ে ্ ি ু প র ক ত চ ট {enter}","{shift} ং ম ন ব ল স , . / {shift}","{accept} {space} {cancel}"],shift:["! @ {empty} র্ জ্ঞ ত্র ক্ষ শ্র ( ) ঃ ঋ {bksp}","{tab} ঔ ঐ আ ঈ ঊ ভ ঙ ঘ ধ ঝ ঢ ঞ","ও এ অ ই উ ফ {empty} খ থ ছ ঠ {enter}","{shift} ঁ ণ {empty} {empty} {empty} শ ষ {empty} / {shift}","{accept} {space} {cancel}"]};jQuery.keyboard.layouts["ms-Bulgarian (Phonetic Traditional)"]={name:"ms-Bulgarian (Phonetic Traditional)",lang:["bg"],normal:["ч 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} я в е р т ъ у и о п ш щ ю","а с д ф г х й к л ; ' {enter}","{shift} ю з ь ц ж б н м , . / {shift}","{accept} {space} {cancel}"],shift:["Ч ! @ № $ % € § * ( ) _ + {bksp}","{tab} Я В Е Р Т Ъ У И О П Ш Щ Ю",'А С Д Ф Г Х Й К Л : " {enter}',"{shift} Ю З ѝ Ц Ж Б Н М < > / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Bulgarian (Phonetic)"]={name:"ms-Bulgarian (Phonetic)",lang:["bg"],normal:["ю 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ч ш е р т ъ у и о п я щ ь","а с д ф г х й к л ; ' {enter}","{shift} ѝ з ж ц в б н м , . / {shift}","{accept} {space} {cancel}"],shift:["Ю ! @ № $ % € § * ( ) – + {bksp}","{tab} Ч Ш Е Р Т Ъ У И О П Я Щ ѝ",'А С Д Ф Г Х Й К Л : " {enter}',"{shift} Ѝ З Ж Ц В Б Н М „ “ / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Bulgarian (Typewriter)"]={name:"ms-Bulgarian (Typewriter)",lang:["bg"],normal:["` 1 2 3 4 5 6 7 8 9 0 - . {bksp}","{tab} , у е и ш щ к с д з ц ; (","ь я а о ж г т н в м ч {enter}","{shift} \\ ю й ъ э ф х п р л / {shift}","{accept} {space} {cancel}"],shift:['~ ! ? + " % = : / _ № І V {bksp}',"{tab} ы У Е И Ш Щ К С Д З Ц § )","Ь Я А О Ж Г Т Н В М Ч {enter}","{shift} | Ю Й Ъ Э Ф Х П Р Л / {shift}","{accept} {space} {cancel}"]};jQuery.keyboard.layouts["ms-Canadian French"]={name:"ms-Canadian French",lang:["fr-ca"],normal:["# 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p ^ ¸ <","a s d f g h j k l ; ` {enter}","{shift} « z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['| ! " / $ % ? & * ( ) _ + {bksp}',"{tab} Q W E R T Y U I O P ^ ¨ >","A S D F G H J K L : ` {enter}","{shift} » Z X C V B N M ' . / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["\\ ± @ £ ¢ ¤ ¬ ¦ ² ³ ¼ ½ ¾ {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} § ¶ [ ] }","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~ { {enter}","{shift} ° {empty} {empty} {empty} {empty} {empty} {empty} µ ¯ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Canadian French (Legacy)"]={name:"ms-Canadian French (Legacy)",lang:["fr-ca"],normal:["° 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p ^ ç à","a s d f g h j k l ; è {enter}","{shift} ù z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['° ! " # $ % ? & * ( ) _ + {bksp}',"{tab} Q W E R T Y U I O P ^ Ç À","A S D F G H J K L : È {enter}","{shift} Ù Z X C V B N M ' . / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["¬ ¹ @ ³ ¼ ½ ¾ { [ ] } | ¸ {bksp}","{tab} {empty} {empty} {empty} ¶ {empty} ¥ {empty} {empty} ø þ ° ~ {empty}","æ ß ð ª {empty} {empty} {empty} {empty} {empty} ´ {empty} {enter}","{shift} \\ « » ¢ {empty} {empty} {empty} µ < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} ¡ ² £ ¤ {empty} {empty} {empty} {empty} ± {empty} ¿ {empty} {bksp}","{tab} {empty} {empty} {empty} ® {empty} {empty} {empty} {empty} Ø Þ {empty} ¨ {empty}","Æ § Ð {empty} {empty} {empty} {empty} {empty} {empty} ´ {empty} {enter}","{shift} | {empty} {empty} © {empty} {empty} {empty} º {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Canadian Multilingual Standard"]={name:"ms-Canadian Multilingual Standard",lang:["en-ca"],normal:["/ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p ^ ç {enter}","a s d f g h j k l ; è à ","{shift} ù z x c v b n m , . é {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["\\ ! @ # $ % ? & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P ¨ Ç {enter}","A S D F G H J K L : È À ","{shift} Ù Z X C V B N M ' \" É {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["| {empty} {empty} {empty} {empty} {empty} {empty} { } [ ] {empty} ¬ {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ` ~ {enter}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ° {empty} {empty} ","{shift} {empty} « » {empty} {empty} {empty} {empty} {empty} < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Chinese Bopomofo IME"]={name:"ms-Chinese Bopomofo IME",lang:["zh"],normal:["€ ㄅ ㄉ ˇ ˋ ㄓ ˊ ˙ ㄚ ㄞ ㄢ ㄦ = {bksp}","{tab} ㄆ ㄊ ㄍ ㄐ ㄔ ㄗ ㄧ ㄛ ㄟ ㄣ [ ] \\","ㄇ ㄋ ㄎ ㄑ ㄕ ㄘ ㄨ ㄜ ㄠ ㄤ ' {enter}","ㄈ ㄌ ㄏ ㄒ ㄖ ㄙ ㄩ ㄝ ㄡ ㄥ","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Chinese ChaJei IME"]={name:"ms-Chinese ChaJei IME",lang:["zh"],normal:["€ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} 手 田 水 口 廿 卜 山 戈 人 心 [ ] \\","日 尸 木 火 土 竹 十 大 中 ; ' {enter}","Z 難 金 女 月 弓 一 , . /","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Czech"]={name:"ms-Czech",lang:["cs"],normal:["; + ě š č ř ž ý á í é = ´ {bksp}","{tab} q w e r t z u i o p ú ) {empty}","a s d f g h j k l ů § {enter}","{shift} \\ y x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["° 1 2 3 4 5 6 7 8 9 0 % ˇ {bksp}","{tab} Q W E R T Z U I O P / ( '",'A S D F G H J K L " ! {enter}',"{shift} | Y X C V B N M ? : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {bksp}","{tab} \\ | € {empty} {empty} {empty} {empty} {empty} {empty} {empty} ÷ × ¤","{empty} đ Đ [ ] {empty} {empty} ł Ł $ ß {enter}","{shift} {empty} {empty} # & @ { } {empty} < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Czech (QWERTY)"]={name:"ms-Czech (QWERTY)",lang:["cs"],normal:["; + ě š č ř ž ý á í é = ´ {bksp}","{tab} q w e r t y u i o p ú ) {empty}","a s d f g h j k l ů § {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["° 1 2 3 4 5 6 7 8 9 0 % ˇ {bksp}","{tab} Q W E R T Y U I O P / ( '",'A S D F G H J K L " ! {enter}',"{shift} | Z X C V B N M ? : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` ! @ # $ % ^ & * ( ) - = {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ] \\","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ; ¤ {enter}","{shift} ß {empty} {empty} {empty} {empty} {empty} {empty} {empty} < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} _ + {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { } |","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} : ^ {enter}","{shift} ˝ {empty} {empty} {empty} {empty} {empty} {empty} {empty} × ÷ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Czech Programmers"]={name:"ms-Czech Programmers",lang:["cs"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["; + ě š č ř ž ý á í é = ´ {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} ú ) {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ů § {enter}","{shift} ß {empty} {empty} {empty} {empty} {empty} {empty} {empty} ? : {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["° {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} % ˇ {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} / ( {empty}",'{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} " ! {enter}',"{shift} ˝ {empty} {empty} {empty} {empty} {empty} {empty} {empty} × ÷ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Danish"]={name:"ms-Danish",lang:["da"],normal:["½ 1 2 3 4 5 6 7 8 9 0 + ´ {bksp}","{tab} q w e r t y u i o p å ¨","a s d f g h j k l æ ø ' {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['§ ! " # ¤ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Y U I O P Å ^","A S D F G H J K L Æ Ø * {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} @ £ $ € {empty} { [ ] } {empty} | {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} \\ {empty} {empty} {empty} {empty} {empty} {empty} µ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Devanagari - INSCRIPT"]={name:"ms-Devanagari - INSCRIPT",lang:["hi","ne","mr","kok","bodo","mai"],normal:["ॊ 1 2 3 4 5 6 7 8 9 0 - ृ {bksp}","{tab} ौ ै ा ी ू ब ह ग द ज ड ़ ॉ","ो े ् ि ु प र क त च ट {enter}","{shift} ॉ ॆ ं म न व ल स , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["ऒ ऍ ॅ ्र र् ज्ञ त्र क्ष श्र ( ) ः ऋ {bksp}","{tab} औ ऐ आ ई ऊ भ ङ घ ध झ ढ ञ ऑ","ओ ए अ इ उ फ ऱ ख थ छ ठ {enter}","{shift} ऑ ऎ ँ ण ऩ ऴ ळ श ष । / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} १ २ ३ ४ ५ ६ ७ ८ ९ ० {empty} ॄ {bksp}","{tab} {empty} {empty} {empty} ॣ {empty} {empty} {empty} ग़ {empty} ज़ ड़ {empty} {empty}","{empty} {empty} {empty} ॢ {empty} {empty} {empty} क़ {empty} ॒ {empty} {enter}","{shift} {empty} ॓ {empty} ॔ {empty} {empty} {empty} {empty} ॰ ॥ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ॠ {bksp}","{tab} {empty} {empty} {empty} ॡ {empty} {empty} {empty} {empty} {empty} {empty} ढ़ {empty} {empty}","{empty} {empty} {empty} ऌ {empty} फ़ {empty} ख़ {empty} {empty} ॑ {enter}","{shift} {empty} {empty} ॐ {empty} {empty} {empty} {empty} {empty} {empty} ऽ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Divehi Phonetic"]={name:"ms-Divehi Phonetic",lang:["dv"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ް އ ެ ރ ތ ޔ ު ި ޮ ޕ ] [ \\","ަ ސ ދ ފ ގ ހ ޖ ކ ލ ؛ ' {enter}","{shift} \\ ޒ × ޗ ވ ބ ނ މ ، . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ) ( _ + {bksp}","{tab} ޤ ޢ ޭ ޜ ޓ ޠ ޫ ީ ޯ ÷ } { |",'ާ ށ ޑ ﷲ ޣ ޙ ޛ ޚ ޅ : " {enter}',"{shift} | ޡ ޘ ޝ ޥ ޞ ޏ ޟ > < / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ; {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {ZWJ} {ZWNJ} {LRM} {RLM} , {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Divehi Typewriter"]={name:"ms-Divehi Typewriter",lang:["dv"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ޫ ޮ ާ ީ ޭ ގ ރ މ ތ ހ ލ [ ]","ި ު ް ަ ެ ވ އ ނ ކ ފ ﷲ {enter}","{shift} \\ ޒ ޑ ސ ޔ ޅ ދ ބ ށ ޓ / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ) ( _ + {bksp}","{tab} × ’ “ / : ޤ ޜ ޣ ޠ ޙ ÷ { }",'< > . ، " ޥ ޢ ޘ ޚ ޡ ؛ {enter}',"{shift} | ޖ ޕ ޏ ޗ ޟ ޛ ޝ \\ ޞ / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} , {empty} {empty} {empty} {empty} {empty} {empty} ; {enter}","{shift} {empty} {empty} {empty} {empty} {ZWJ} {ZWNJ} {LRM} {RLM} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Dutch"]={name:"ms-Dutch",lang:["nl"],normal:["@ 1 2 3 4 5 6 7 8 9 0 / ° {bksp}","{tab} q w e r t y u i o p ¨ * {enter}","a s d f g h j k l + ´ < ","{shift} ] z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["§ ! \" # $ % & _ ( ) ' ? ~ {bksp}","{tab} Q W E R T Y U I O P ^ | {enter}","A S D F G H J K L ± ` > ","{shift} [ Z X C V B N M ; : = {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["¬ ¹ ² ³ ¼ ½ ¾ £ { } {empty} \\ ¸ {bksp}","{tab} {empty} {empty} € ¶ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{empty} ß {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ","{shift} ¦ « » ¢ {empty} {empty} {empty} µ {empty} · {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Estonian"]={name:"ms-Estonian",lang:["et"],normal:["ˇ 1 2 3 4 5 6 7 8 9 0 + ´ {bksp}","{tab} q w e r t y u i o p ü õ '","a s d f g h j k l ö ä {enter}","{shift} < z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['~ ! " # ¤ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Y U I O P Ü Õ *","A S D F G H J K L Ö Ä {enter}","{shift} > Z X C V B N M ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} @ £ $ € {empty} { [ ] } \\ {empty} {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} § ½","{empty} š {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ^ {enter}","{shift} | ž {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} @ £ $ {empty} {empty} { [ ] } \\ {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} § ½","{empty} Š {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ^ {enter}","{shift} | Ž {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Faroese"]={name:"ms-Faroese",lang:["fo"],normal:["½ 1 2 3 4 5 6 7 8 9 0 + ´ {bksp}","{tab} q w e r t y u i o p å ð {enter}","a s d f g h j k l æ ø ' ","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['§ ! " # ¤ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Y U I O P Å Ð {enter}","A S D F G H J K L Æ Ø * ","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} @ £ $ € {empty} { [ ] } {empty} | {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} ¨ ~ {enter}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ^ {empty} ","{shift} \\ {empty} {empty} {empty} {empty} {empty} {empty} µ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Finnish"]={name:"ms-Finnish",lang:["fi"],normal:["§ 1 2 3 4 5 6 7 8 9 0 + ´ {bksp}","{tab} q w e r t y u i o p å ¨ {enter}","a s d f g h j k l ö ä ' ","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['½ ! " # ¤ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Y U I O P Å ^ {enter}","A S D F G H J K L Ö Ä * ","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} @ £ $ € {empty} { [ ] } \\ {empty} {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~ {enter}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ","{shift} | {empty} {empty} {empty} {empty} {empty} {empty} µ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-French"]={name:"ms-French",lang:["fr"],normal:["² & é \" ' ( - è _ ç à ) = {bksp}","{tab} a z e r t y u i o p ^ $","q s d f g h j k l m ù * {enter}","{shift} < w x c v b n , ; : ! {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["{empty} 1 2 3 4 5 6 7 8 9 0 ° + {bksp}","{tab} A Z E R T Y U I O P ¨ £","Q S D F G H J K L M % µ {enter}","{shift} > W X C V B N ? . / § {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} ~ # { [ | ` \\ ^ @ ] } {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ¤","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Gaelic"]={name:"ms-Gaelic",lang:["gd"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ]","a s d f g h j k l ; ' # {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['` ! " £ $ % ^ & * ( ) _ + {bksp}',"{tab} Q W E R T Y U I O P { }","A S D F G H J K L : @ ~ {enter}","{shift} | Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["¦ {empty} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} é {empty} {empty} ý ú í ó {empty} {empty} {empty}","á {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ' {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["¬ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} É {empty} {empty} Ý Ú Í Ó {empty} {empty} {empty}","Á {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Georgian"]={name:"ms-Georgian",lang:["ka"],normal:["„ ! ? № § % : . ; , / – = {bksp}","{tab} ღ ჯ უ კ ე ნ გ შ წ ზ ხ ც (","ფ ძ ვ თ ა პ რ ო ლ დ ჟ {enter}","{shift} ( ჭ ჩ ყ ს მ ი ტ ქ ბ / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["“ 1 2 3 4 5 6 7 8 9 0 - + {bksp}","{tab} ღ ჯ უ კ ე ნ გ შ წ ზ ხ ც )","ფ ძ ვ თ ა პ რ ო ლ დ ჟ {enter}","{shift} ) ჭ ჩ ყ ს მ ი ტ ქ ბ / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} ჱ {empty} {empty} {empty} {empty} {empty} ჴ {empty} {empty}","ჶ {empty} ჳ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} ჲ {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Georgian (Ergonomic)"]={name:"ms-Georgian (Ergonomic)",lang:["ka"],normal:["„ ! № , ; % : ? . ( ) - “ {bksp}","{tab} ჩ პ უ ძ ჭ ტ თ ნ ვ შ კ ქ /","ხ ი ა ე ო დ მ ს რ ბ გ {enter}","{shift} \\ ჯ ჰ ყ ღ ჟ ზ ც ლ ფ / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["' 1 2 3 4 5 6 7 8 9 0 + = {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} §","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} / {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` ! @ # $ € ^ & * ( ) — = {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ჼ ჳ {empty} [ ] \\","ჴ ჲ ჺ ჱ {empty} {empty} {empty} {empty} {empty} {empty} ჹ {enter}","{shift} {empty} {empty} ჵ ჸ ჷ {empty} {empty} {empty} {empty} ჶ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ {empty} {empty} § {empty} {empty} {empty} {empty} ° « » _ {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} I {empty} {empty} { } |",'{empty} {empty} D {empty} {empty} {empty} {empty} {empty} L {empty} " {enter}',"{shift} {empty} {empty} X C V {empty} {empty} M < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Georgian (QWERTY)"]={name:"ms-Georgian (QWERTY)",lang:["ka"],normal:["„ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ქ წ ე რ ტ ყ უ ი ო პ [ ] ~","ა ს დ ფ გ ჰ ჯ კ ლ ; ' {enter}","{shift} \\ ზ ხ ც ვ ბ ნ მ , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["“ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} {empty} ჭ {empty} ღ თ {empty} {empty} {empty} {empty} {empty} { } |",'{empty} შ {empty} {empty} {empty} {empty} ჟ {empty} {empty} : " {enter}',"{shift} {empty} ძ {empty} ჩ {empty} {empty} N {empty} < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} „ “ {empty} € {empty} {empty} ° {empty} {empty} — – {bksp}","{tab} {empty} {empty} ჱ ® {empty} ჸ {empty} ჲ {empty} {empty} {empty} {empty} {empty}","ჺ {empty} {empty} ჶ ჹ ჵ ჷ {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} ჴ © ჳ {empty} ჼ {empty} « » {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-German"]={name:"ms-German",lang:["de"],normal:["^ 1 2 3 4 5 6 7 8 9 0 ß ´ {bksp}","{tab} q w e r t z u i o p ü +","a s d f g h j k l ö ä # {enter}","{shift} < y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['° ! " § $ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Z U I O P Ü *","A S D F G H J K L Ö Ä ' {enter}","{shift} > Y X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} ² ³ {empty} {empty} {empty} { [ ] } \\ {empty} {bksp}","{tab} @ {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} | {empty} {empty} {empty} {empty} {empty} {empty} µ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-German (IBM)"]={name:"ms-German (IBM)",lang:["de"],normal:["^ 1 2 3 4 5 6 7 8 9 0 ß ´ {bksp}","{tab} q w e r t z u i o p ü +","a s d f g h j k l ö ä # {enter}","{shift} < y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['° ! " § $ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Z U I O P Ü *","A S D F G H J K L Ö Ä ' {enter}","{shift} > Y X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} ² ³ {empty} {empty} {empty} { [ ] } \\ {empty} {bksp}","{tab} @ {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} | {empty} {empty} {empty} {empty} {empty} {empty} µ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Greek"]={name:"ms-Greek",lang:["el"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ; ς ε ρ τ υ θ ι ο π [ ]","α σ δ φ γ η ξ κ λ ΄ ' \\ {enter}","{shift} < ζ χ ψ ω β ν μ , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} : ΅ Ε Ρ Τ Υ Θ Ι Ο Π { }",'Α Σ Δ Φ Γ Η Ξ Κ Λ ¨ " | {enter}',"{shift} > Ζ Χ Ψ Ω Β Ν Μ < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} ² ³ £ § ¶ {empty} ¤ ¦ ° ± ½ {bksp}","{tab} {empty} {empty} € ® {empty} ¥ {empty} {empty} {empty} {empty} « »","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ΅ {empty} ¬ {enter}","{shift} {empty} {empty} {empty} © {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Greek (220)"]={name:"ms-Greek (220)",lang:["el"],normal:["½ 1 2 3 4 5 6 7 8 9 0 ' ] {bksp}","{tab} ; ς ε ρ τ υ θ ι ο π + }","α σ δ φ γ η ξ κ λ ΄ ¨ # {enter}","{shift} < ζ χ ψ ω β ν μ , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['± ! " £ $ % & / ( ) = ? [ {bksp}',"{tab} : ~ Ε Ρ Τ Υ Θ Ι Ο Π * {","Α Σ Δ Φ Γ Η Ξ Κ Λ ¨ ΅ @ {enter}","{shift} > Ζ Χ Ψ Ω Β Ν Μ ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} ² ³ £ § ¶ {empty} ¤ ¦ ° ± ½ {bksp}","{tab} {empty} {empty} € ® {empty} ¥ {empty} {empty} {empty} {empty} « »","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ΅ ΅ ¬ {enter}","{shift} {empty} {empty} {empty} © {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Greek (220) Latin"]={name:"ms-Greek (220) Latin",lang:["el"],normal:["\\ 1 2 3 4 5 6 7 8 9 0 ' ] {bksp}","{tab} q w e r t y u i o p + }","a s d f g h j k l ΄ ¨ # {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['| ! " # $ % & / ( ) = ? [ {bksp}',"{tab} Q W E R T Y U I O P * {","A S D F G H J K L ¨ ΅ @ {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} ² ³ £ § ¶ {empty} ¤ ¦ ° ± ½ {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} « »","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ΅ ΅ ¬ {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Greek (319)"]={name:"ms-Greek (319)",lang:["el"],normal:["½ 1 2 3 4 5 6 7 8 9 0 ' + {bksp}","{tab} · ς ε ρ τ υ θ ι ο π [ ]","α σ δ φ γ η ξ κ λ ΄ ’ ² {enter}","{shift} § ζ χ ψ ω β ν μ , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['± ! " £ $ % ¬ / ( ) = ° * {bksp}',"{tab} ― ¦ Ε Ρ Τ Υ Θ Ι Ο Π « »","Α Σ Δ Φ Γ Η Ξ Κ Λ ¨ ‘ ³ {enter}","{shift} © Ζ Χ Ψ Ω Β Ν Μ ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ΅ {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Greek (319) Latin"]={name:"ms-Greek (319) Latin",lang:["el"],normal:["\\ 1 2 3 4 5 6 7 8 9 0 ' + {bksp}","{tab} q w e r t y u i o p [ ]","a s d f g h j k l ´ ^ ` {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['| ! " # $ % & / ( ) = ? * {bksp}',"{tab} Q W E R T Y U I O P { }","A S D F G H J K L ¨ ~ @ {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Greek Latin"]={name:"ms-Greek Latin",lang:["el"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ]","a s d f g h j k l ; ' \\ {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { }",'A S D F G H J K L : " | {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ¡ ² ³ ¤ € ¼ ½ ¾ ‘ ’ ¥ × {bksp}","{tab} ä å é ® þ ü ú í ó ö « »","á ß ð {empty} {empty} {empty} {empty} {empty} ø ¶ ´ ¬ {enter}","{shift} æ {empty} © {empty} {empty} ñ µ ç {empty} ¿ {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} ¹ {empty} {empty} £ {empty} {empty} {empty} {empty} {empty} {empty} {empty} ÷ {bksp}","{tab} Ä Å É {empty} Þ Ü Ú Í Ó Ö {empty} {empty}","Á § Ð {empty} {empty} {empty} {empty} {empty} Ø ° ¨ ¦ {enter}","{shift} Æ {empty} ¢ {empty} {empty} Ñ {empty} Ç {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Greek Polytonic"]={name:"ms-Greek Polytonic",lang:["el"],normal:["~ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ; ς ε ρ τ υ θ ι ο π [ ]","α σ δ φ γ η ξ κ λ ΄ ' \\ {enter}","{shift} ζ χ ψ ω β ν μ , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["` ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} : ΅ Ε Ρ Τ Υ Θ Ι Ο Π { }",'Α Σ Δ Φ Γ Η Ξ Κ Λ ¨ " | {enter}',"{shift} Ζ Χ Ψ Ω Β Ν Μ < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["῁ Ϛ Ϟ Ϡ £ § ¶ {empty} ¤ ¦ ° ± ½ {bksp}","{tab} ´ {empty} € ® {empty} ¥ {empty} {empty} {empty} {empty} « »","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ΅ ᾿ ¬ {enter}","{shift} {empty} {empty} © {empty} {empty} {empty} {empty} {empty} {empty} ι {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} ² ³ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ῟ {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ·","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ῾ ῝ {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ῞ {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Greenlandic"]={name:"ms-Greenlandic",lang:["kl"],normal:["½ 1 2 3 4 5 6 7 8 9 0 + ´ {bksp}","{tab} q w e r t y u i o p å ¨ '","a s d f g h j k l æ ø {enter}","{shift} < z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['§ ! " # ¤ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Y U I O P Å ^ *","A S D F G H J K L Æ Ø {enter}","{shift} > Z X C V B N M ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} @ £ $ € {empty} { [ ] } {empty} | {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} þ {empty} ~ {empty}","{empty} ß ð {empty} {empty} {empty} {empty} ĸ {empty} {empty} {empty} {enter}","{shift} \\ {empty} {empty} {empty} {empty} {empty} {empty} µ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} Þ {empty} {empty} {empty}","{empty} {empty} Ð {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Gujarati"]={name:"ms-Gujarati",lang:["gu"],normal:["{empty} 1 2 3 4 5 6 7 8 9 0 - ૃ {bksp}","{tab} ૌ ૈ ા ી ૂ બ હ ગ દ જ ડ ઼ ૉ","ો ે ્ િ ુ પ ર ક ત ચ ટ {enter}","{shift} ં મ ન વ લ સ , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["{empty} ઍ ૅ ્ર ર્ જ્ઞ ત્ર ક્ષ શ્ર ( ) ઃ ઋ {bksp}","{tab} ઔ ઐ આ ઈ ઊ ભ ઙ ઘ ધ ઝ ઢ ઞ ઑ","ઓ એ અ ઇ ઉ ફ {empty} ખ થ છ ઠ {enter}","{shift} ઁ ણ {empty} {empty} ળ શ ષ । / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ૧ ૨ ૩ ૪ ૫ ૬ ૭ ૮ ૯ ૦ {empty} ૄ {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ॥ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ૠ {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} ૐ {empty} {empty} {empty} {empty} {empty} {empty} ઽ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.language.gu={display:{a:"✔:Accept (Shift+Enter)",accept:"Accept:Accept (Shift+Enter)",alt:"AltGr:Alternate Graphemes",b:"←:Backspace",bksp:"Bksp:Backspace",c:"✖:Cancel (Esc)",cancel:"Cancel:Cancel (Esc)",clear:"C:Clear",combo:"ö:Toggle Combo Keys",dec:".:Decimal",e:"↵:Enter",enter:"Enter:Enter",lock:"⇪ Lock:Caps Lock",s:"⇧:Shift",shift:"Shift:Shift",sign:"±:Change Sign",space:" :Space",t:"⇥:Tab",tab:"⇥ Tab:Tab"},wheelMessage:"Use mousewheel to see other keys"};jQuery.keyboard.layouts["ms-Hausa"]={name:"ms-Hausa",lang:["ha"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} € {empty} {empty} {empty} ‘ ’ {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} ƴ {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} ɗ {empty} {empty} {empty} {empty} ƙ {empty} ¶ ’ {enter}","{shift} {empty} {empty} {empty} {empty} {empty} ɓ {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} Ƴ {empty} {empty} {empty} {empty} {empty} {empty} ¦","{empty} {empty} Ɗ {empty} {empty} {empty} {empty} Ƙ {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} Ɓ {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Hebrew"]={name:"ms-Hebrew",lang:["he"],normal:["; 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} / ' ק ר א ט ו ן ם פ ] [ \\","ש ד ג כ ע י ח ל ך ף , {enter}","{shift} \\ ז ס ב ה נ מ צ ת ץ / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ) ( _ + {bksp}","{tab} Q W E R T Y U I O P } { |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M > < / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} ₪ {empty} {empty} {empty} {empty} {empty} {empty} ֿ {empty} {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} װ {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} ײ ױ {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Hindi Traditional"]={name:"ms-Hindi Traditional",lang:["hi"],normal:["{empty} 1 2 3 4 5 6 7 8 9 0 - ृ {bksp}","{tab} ौ ै ा ी ू ब ह ग द ज ड ़ ॉ","ो े ् ि ु प र क त च ट {enter}","{shift} ॉ ं म न व ल स , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["{empty} ऍ ॅ ्र र् ज्ञ त्र क्ष श्र ( ) ः ऋ {bksp}","{tab} औ ऐ आ ई ऊ भ ङ घ ध झ ढ ञ ऑ","ओ ए अ इ उ फ ऱ ख थ छ ठ {enter}","{shift} ऑ ँ ण {empty} {empty} ळ श ष । / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` १ २ ३ ४ ५ ६ ७ ८ ९ ० - = {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ] \\","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ; ' {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} , . {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { } |",'{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} : " {enter}',"{shift} {empty} ॐ {empty} {empty} {empty} {empty} {empty} < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Hungarian"]={name:"ms-Hungarian",lang:["hu"],normal:["0 1 2 3 4 5 6 7 8 9 ö ü ó {bksp}","{tab} q w e r t z u i o p ő ú","a s d f g h j k l é á ű {enter}","{shift} í y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["§ ' \" + ! % / = ( ) Ö Ü Ó {bksp}","{tab} Q W E R T Z U I O P Ő Ú","A S D F G H J K L É Á Ű {enter}","{shift} Í Y X C V B N M ? : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {bksp}","{tab} \\ | Ä {empty} {empty} {empty} € Í {empty} {empty} ÷ ×","ä đ Đ [ ] {empty} í ł Ł $ ß ¤ {enter}","{shift} < > # & @ { } < ; > * {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Hungarian 101-key"]={name:"ms-Hungarian 101-key",lang:["hu"],normal:["í 1 2 3 4 5 6 7 8 9 ö ü ó {bksp}","{tab} q w e r t y u i o p ő ú","a s d f g h j k l é á ű {enter}","{shift} í z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["Í ' \" + ! % / = ( ) Ö Ü Ó {bksp}","{tab} Q W E R T Y U I O P Ő Ú","A S D F G H J K L É Á Ű {enter}","{shift} Í Z X C V B N M ? : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["0 ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ {empty} {empty} {bksp}","{tab} \\ | Ä § ¤ {empty} € Í {empty} {empty} ÷ ×","ä đ Đ [ ] {empty} í ł Ł $ ß \\ {enter}","{shift} < > # & @ { } < ; > * {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Icelandic"]={name:"ms-Icelandic",lang:["is"],normal:["° 1 2 3 4 5 6 7 8 9 0 ö - {bksp}","{tab} q w e r t y u i o p ð '","a s d f g h j k l æ ´ + {enter}","{shift} < z x c v b n m , . þ {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['¨ ! " # $ % & / ( ) = Ö _ {bksp}',"{tab} Q W E R T Y U I O P Ð ?","A S D F G H J K L Æ ' * {enter}","{shift} > Z X C V B N M ; : Þ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["° {empty} {empty} {empty} {empty} € {empty} { [ ] } \\ {empty} {bksp}","{tab} @ {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ^ ` {enter}","{shift} | {empty} {empty} {empty} {empty} {empty} {empty} µ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Igbo"]={name:"ms-Igbo",lang:["ig"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} € {empty} {empty} {empty} ‘ ’ {empty} {empty} {bksp}","{tab} ị́ ị̀ ị̄ {empty} {empty} {empty} ụ ị ọ {empty} {empty} {empty} {empty}","ọ́ ọ̀ ọ̄ ụ́ ụ̀ ụ̄ {empty} {empty} {empty} ¶ ´ {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} ṅ m̀ m̄ n̄ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} Ị́ Ị̀ Ị̄ {empty} {empty} {empty} Ụ Ị Ọ {empty} {empty} {empty} ¦","Ọ́ Ọ̀ Ọ̄ Ụ́ Ụ̀ Ụ̄ {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} Ṅ M̀ M̄ N̄ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Inuktitut - Latin"]={name:"ms-Inuktitut - Latin",lang:["iu"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ 1 2 3 4 5 6 7 8 9 0 _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ! @ # $ % * & • [ ] {empty} = {bksp}","{tab} ᖐ ᐄ ᖀ ᑮ ᑏ ᓰ ᒦ ᓃ ᓖ ᔩ “ ‘ {empty}","ᖒ ᐆ ᖂ ᑰ ᑑ ᓲ ᒨ ᓅ ᓘ … ł {enter}","{shift} {empty} ᖔ ᐋ ᖄ ᑳ ᑖ ᓵ ᒫ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ¢ ® ¼ ½ ¾ ^ ⅔ © ÷ + {empty} {empty} {bksp}","{tab} ᒌ ᐲ ᕇ {empty} ᙲ ᙴ ᙶ ᖥ ᖡ {empty} ” ’ |","ᒎ ᐴ ᕉ ᕖ {empty} {empty} ᔫ ᕘ ᖣ {empty} Ł {enter}","{shift} | ᒑ ᐹ ᕌ { } ᓈ ᓛ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Inuktitut - Naqittaut"]={name:"ms-Inuktitut - Naqittaut",lang:["iu"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { [ |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ! @ # $ % * & • [ ] {empty} = {bksp}","{tab} ᖐ ᐄ ᖀ ᑮ ᑏ ᓰ ᒦ ᓃ ᓖ ᔩ “ ‘ {empty}","ᖒ ᐆ ᖂ ᑰ ᑑ ᓲ ᒨ ᓅ ᓘ ŋ ł {enter}","{shift} {empty} ᖔ ᐋ ᖄ ᑳ ᑖ ᓵ ᒫ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ¢ ® ¼ ½ ¾ ^ ⅔ © ÷ + {empty} {empty} {bksp}","{tab} ᒌ ᐲ ᕇ {empty} ᙲ ᙴ ᙶ ᖥ ᖡ {empty} ” ’ |","ᒎ ᐴ ᕉ ᕖ {empty} {empty} ᔫ ᕘ ᖣ {empty} Ł {enter}","{shift} | ᒑ ᐹ ᕌ { } ᓈ ᓛ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Irish"]={name:"ms-Irish",lang:["ga"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] #","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['¬ ! " £ $ % ^ & * ( ) _ + {bksp}',"{tab} Q W E R T Y U I O P { } ~","A S D F G H J K L : @ {enter}","{shift} | Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["¦ {empty} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} é {empty} {empty} {empty} ú í ó {empty} {empty} {empty} {empty}","á {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ´ {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["¦ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} É {empty} {empty} {empty} Ú Í Ó {empty} {empty} {empty} {empty}","Á {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ` {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Italian"]={name:"ms-Italian",lang:["it"],normal:["\\ 1 2 3 4 5 6 7 8 9 0 ' ì {bksp}","{tab} q w e r t y u i o p è +","a s d f g h j k l ò à ù {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['| ! " £ $ % & / ( ) = ? ^ {bksp}',"{tab} Q W E R T Y U I O P é *","A S D F G H J K L ç ° § {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ]","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} @ # {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { }","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Italian (142)"]={name:"ms-Italian (142)",lang:["it"],normal:["\\ 1 2 3 4 5 6 7 8 9 0 ' ì {bksp}","{tab} q w e r t y u i o p è +","a s d f g h j k l ò à ù {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['| ! " £ $ % & / ( ) = ? ^ {bksp}',"{tab} Q W E R T Y U I O P é *","A S D F G H J K L ç ° § {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} # {empty} € {empty} { [ ] } {empty} {empty} {bksp}","{tab} @ {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ` {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Japanese Hiragana"]={name:"ms-Japanese Hiragana",lang:["ja"],normal:["ろ:Ro ぬ:Nu ふ:Hu あ:A う:U え:E お:O や:Ya ゆ:Yu よ:Yo わ:Wa ほ:Ho へ:He {bksp}","{tab} た:Ta て:Te い:I す:Su か:Ka ん:N な:Na に:Ni ら:Ra せ:Se ゛ ゜ む:Mu","ち:Ti と:To し:Si は:Ha き:Ki く:Ku ま:Ma の:No り:Ri れ:Re け:Ke {enter}","{shift} つ:Tu さ:Sa そ:So ひ:Hi こ:Ko み:Mi も:Mo ね:Ne る:Ru め:Me {shift}","{accept} {space} {meta3} {meta1:Kana} {cancel}"],shift:["ろ:Ro ぬ:Nu ふ:Hu ぁ:a ぅ:u ぇ:e ぉ:o ゃ:ya ゅ:yu ょ:yo を:Wo ー へ:He {bksp}","{tab} た:Ta て:Te ぃ:i す:Su か:Ka ん:N な:Na に:Ni ら:Ra せ:Se 「 」 む:Mu","ち:Ti と:To し:Si は:Ha き:Ki く:Ku ま:Ma の:No り:Ri れ:Re け:Ke {enter}","{shift} っ:tu さ:Sa そ:So ひ:Hi こ:Ko み:Mi も:Mo 、 。 ・ {shift}","{accept} {space} {meta3} {meta1:Kana} {cancel}"],meta1:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; : {enter}","{shift} z x c v b n m , . / {shift}","{accept} {space} {default:Eng} {meta2:半:full} {cancel}"],"meta1-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |","A S D F G H J K L + * {enter}","{shift} Z X C V B N M < > ? {shift}","{accept} {space} {default:Eng} {meta2:半:full} {cancel}"],meta2:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] ¥","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {space} {default:Eng} {meta1:全:half} {cancel}"],"meta2-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |","A S D F G H J K L : " {enter}","{shift} Z X C V B N M < > ? {shift}","{accept} {space} {meta3:Eng} {meta1:全:half} {cancel}"],meta3:["ロ:Ro ヌ:Nu フ:Hu ア:A ウ:U エ:E オ:O ヤ:Ya ユ:Yu ヨ:Yo ワ:Wa ホ:Ho ヘ:He {bksp}","{tab} タ:Ta テ:Te イ:I ス:Su カ:Ka ン:N ナ:Na ニ:Ni ラ:Ra セ:Se ゛ ゜ ム:Mu","チ:Ti ト:To シ:Si ハ:Ha キ:Ki ク:Ku マ:Ma ノ:No リ:Ri レ:Re ケ:Ke {enter}","{shift} ツ:Tu サ:Sa ソ:So ヒ:Hi コ:Ko ミ:Mi モ:Mo ネ:Ne ル:Ru メ:Me {shift}","{accept} {space} {default} {meta2} {meta4:全:half} {cancel}"],"meta3-shift":["ロ:Ro ヌ:Nu フ:Hu ァ:a ゥ:u ェ:e ォ:o ャ:ya ュ:yu ョ:yo ヲ:Wo ー ヘ:He {bksp}","{tab} タ:Ta テ:Te ィ:i ス:Su カ:Ka ン:N ナ:Na ニ:Ni ラ:Ra セ:Se 「 」 ム:Mu","チ:Ti ト:To シ:Si ハ:Ha キ:Ki ク:Ku マ:Ma ノ:No リ:Ri レ:Re ケ:Ke {enter}","{shift} ッ:tu サ:Sa ソ:So ヒ:Hi コ:Ko ミ:Mi モ:Mo 、 。 ・ {shift}","{accept} {space} {default} {meta2} {meta4:全:half} {cancel}"],meta4:["ロ:Ro ヌ:Nu フ:Hu ア:A ウ:U エ:E オ:O ヤ:Ya ユ:Yu ヨ:Yo ワ:Wa ホ:Ho ヘ:He {bksp}","{tab} タ:Ta テ:Te イ:I ス:Su カ:Ka ン:N ナ:Na ニ:Ni ラ:Ra セ:Se ゙ ゚ ム:Mu","チ:Ti ト:To シ:Si ハ:Ha キ:Ki ク:Ku マ:Ma ノ:No リ:Ri レ:Re ケ:Ke {enter}","{shift} ツ:Tu サ:Sa ソ:So ヒ:Hi コ:Ko ミ:Mi モ:Mo ネ:Ne ル:Ru メ:Me {shift}","{accept} {space} {default} {meta1} {meta3:半:full} {cancel}"],"meta4-shift":["ロ:Ro ヌ:Nu フ:Hu ァ:a ゥ:u ェ:e ォ:o ャ:ya ュ:yu ョ:yo ヲ:Wo ー ヘ:He {bksp}","{tab} タ:Ta テ:Te ィ:i ス:Su カ:Ka ン:N ナ:Na ニ:Ni ラ:Ra セ:Se 「 」 ム:Mu","チ:Ti ト:To シ:Si ハ:Ha キ:Ki ク:Ku マ:Ma ノ:No リ:Ri レ:Re ケ:Ke {enter}","{shift} ッ:tu サ:Sa ソ:So ヒ:Hi コ:Ko ミ:Mi モ:Mo 、 。 ・ {shift}","{accept} {space} {default} {meta1} {meta3:半:full} {cancel}"]};jQuery.keyboard.layouts["ms-Kannada"]={name:"ms-Kannada",lang:["kn"],normal:["ೊ 1 2 3 4 5 6 7 8 9 0 - ೃ {bksp}","{tab} ೌ ೈ ಾ ೀ ೂ ಬ ಹ ಗ ದ ಜ ಡ {empty}","ೋ ೇ ್ ಿ ು ಪ ರ ಕ ತ ಚ ಟ {enter}","{shift} ೆ ಂ ಮ ನ ವ ಲ ಸ , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["ಒ {empty} {empty} ್ರ ರ್ ಜ್ಞ ತ್ರ ಕ್ಷ ಶ್ರ ( ) ಃ ಋ {bksp}","{tab} ಔ ಐ ಆ ಈ ಊ ಭ ಙ ಘ ಧ ಝ ಢ ಞ","ಓ ಏ ಅ ಇ ಉ ಫ ಱ ಖ ಥ ಛ ಠ {enter}","{shift} ಎ {empty} ಣ {empty} {empty} ಳ ಶ ಷ | / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ೧ ೨ ೩ ೪ ೫ ೬ ೭ ೮ ೯ ೦ {empty} ೄ {bksp}","{tab} {empty} ೖ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} ೕ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ೠ {bksp}","{tab} {empty} {empty} {empty} ೡ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} ಌ {empty} ೞ {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Kazakh"]={name:"ms-Kazakh",lang:["kk"],normal:['( " ә і ң ғ , . ү ұ қ ө һ {bksp}',"{tab} й ц у к е н г ш щ з х ъ \\","ф ы в а п р о л д ж э {enter}","{shift} \\ я ч с м и т ь б ю № {shift}","{accept} {space} {cancel}"],shift:[") ! Ә І Ң Ғ ; : Ү Ұ Қ Ө Һ {bksp}","{tab} Й Ц У К Е Н Г Ш Щ З Х Ъ /","Ф Ы В А П Р О Л Д Ж Э {enter}","{shift} | Я Ч С М И Т Ь Б Ю ? {shift}","{accept} {space} {cancel}"]};jQuery.keyboard.layouts["ms-Korean"]={name:"ms-Korean",lang:["ko"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ᄇ ᄌ ᄃ ᄀ ᄉ ᅭ ᅧ ᅣ ᅢ ᅦ [ ] ₩","ᄆ ᄂ ᄋ ᄅ ᄒ ᅩ ᅥ ᅡ ᅵ ; ' {enter}","{shift} ᄏ ᄐ ᄎ ᄑ ᅲ ᅮ ᅳ , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} ᄈ ᄍ ᄄ ᄁ ᄊ ᅭ ᅧ ᅣ ᅤ ᅨ { } |",'ᄆ ᄂ ᄋ ᄅ ᄒ ᅩ ᅥ ᅡ ᅵ : " {enter}',"{shift} ᄏ ᄐ ᄎ ᄑ ᅲ ᅮ ᅳ < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] ₩","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Kyrgyz Cyrillic"]={name:"ms-Kyrgyz Cyrillic",lang:["ky"],normal:["ё 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} й ц у к е н г ш щ з х ъ \\","ф ы в а п р о л д ж э {enter}","{shift} \\ я ч с м и т ь б ю / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['Ё ! " № ; % : ? * ( ) _ + {bksp}',"{tab} Й Ц У К Е Н Г Ш Щ З Х Ъ /","Ф Ы В А П Р О Л Д Ж Э {enter}","{shift} / Я Ч С М И Т Ь Б Ю / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} ү {empty} {empty} ң {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} ө {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} Ү {empty} {empty} Ң {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} Ө {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Lao"]={name:"ms-Lao",lang:["lo"],normal:['" ຢ ຟ ໂ ຖ ຸ ູ ຄ ຕ ຈ ຂ ຊ ໍ {bksp}',"{tab} ົ ໄ ຳ ພ ະ ິ ີ ຮ ນ ຍ ບ ລ /","ັ ຫ ກ ດ ເ ້ ່ າ ສ ວ ງ {enter}","{shift} ຜ ປ ແ ອ ຶ ື ທ ມ ໃ / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["' 1 2 3 4 ໌ ຼ 5 6 7 8 9 ໍ່ {bksp}","{tab} ົ້ 0 * _ + ິ້ ີ້ ຣ ໜ ຽ - ຫຼ \\","ັ້ ; . , : ໊ ໋ ! ? % = {enter}","{shift} ₭ ( ຯ x ຶ້ ື້ ໆ ໝ $ / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ໑ ໒ ໓ ໔ ໕ ໖ ໗ ໘ ໙ ໐ {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Latin American"]={name:"ms-Latin American",lang:["es"],normal:["| 1 2 3 4 5 6 7 8 9 0 ' ¿ {bksp}","{tab} q w e r t y u i o p ´ +","a s d f g h j k l ñ { } {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['° ! " # $ % & / ( ) = ? ¡ {bksp}',"{tab} Q W E R T Y U I O P ¨ *","A S D F G H J K L Ñ [ ] {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["¬ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} \\ {empty} {bksp}","{tab} @ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ^ ` {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Latvian"]={name:"ms-Latvian",lang:["lv"],normal:[" 1 2 3 4 5 6 7 8 9 0 - f {bksp}","{tab} ū g j r m v n z ē č ž h ķ","š u s i l d a t e c ´ {enter}","{shift} ģ ņ b ī k p o ā , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["? ! « » $ % / & × ( ) _ F {bksp}","{tab} Ū G J R M V N Z Ē Č Ž H Ķ","Š U S I L D A T E C ° {enter}","{shift} Ģ Ņ B Ī K P O Ā ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:['{empty} « {empty} {empty} € " ’ {empty} : {empty} {empty} – = {bksp}',"{tab} q ģ {empty} ŗ w y {empty} {empty} {empty} {empty} [ ] {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} € {empty} ´ {enter}","{shift} \\ {empty} x {empty} ķ {empty} õ {empty} < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} @ # $ ~ ^ ± {empty} {empty} {empty} — ; {bksp}","{tab} Q Ģ {empty} Ŗ W Y {empty} {empty} {empty} {empty} { } {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ¨ {enter}","{shift} | {empty} X {empty} Ķ {empty} Õ {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Latvian (QWERTY)"]={name:"ms-Latvian (QWERTY)",lang:["lv"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] {empty}","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:[" {empty} « » € {empty} ’ {empty} {empty} {empty} {empty} – {empty} {bksp}","{tab} {empty} {empty} ē ŗ {empty} {empty} ū ī õ {empty} {empty} {empty} {empty}","ā š {empty} {empty} ģ {empty} {empty} ķ ļ {empty} ´ {enter}","{shift} {empty} ž {empty} č {empty} {empty} ņ {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} § ° {empty} ± × {empty} {empty} — {empty} {bksp}","{tab} {empty} {empty} Ē Ŗ {empty} {empty} Ū Ī Õ {empty} {empty} {empty} {empty}","Ā Š {empty} {empty} Ģ {empty} {empty} Ķ Ļ {empty} ¨ {enter}","{shift} {empty} Ž {empty} Č {empty} {empty} Ņ {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Lithuanian"]={name:"ms-Lithuanian",lang:["lt"],normal:["` ą č ę ė į š ų ū 9 0 - ž {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ Ą Č Ę Ė Į Š Ų Ū ( ) _ Ž {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} 1 2 3 4 5 6 7 8 9 0 {empty} = {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} ! @ # $ % ^ & * {empty} {empty} {empty} + {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Lithuanian IBM"]={name:"ms-Lithuanian IBM",lang:["lt"],normal:['` ! " / ; : , . ? ( ) _ + {bksp}',"{tab} ą ž e r t y u i o p į “ |","a s d f g h j k l ų ė {enter}","{shift} \\ z ū c v b n m č š / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} Ą Ž E R T Y U I O P Į ” \\","A S D F G H J K L Ų Ė {enter}","{shift} | Z Ū C V B N M Č Š / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} { [ ] } {empty} {empty} {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Lithuanian Standard"]={name:"ms-Lithuanian Standard",lang:["lt"],normal:["` ! - / ; : , . = ( ) ? x {bksp}","{tab} ą ž e r t y u i o p į w q","a s d š g h j k l ų ė {enter}","{shift} < z ū c v b n m č f / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ 1 2 3 4 5 6 7 8 9 0 + X {bksp}","{tab} Ą Ž E R T Y U I O P Į W Q","A S D Š G H J K L Ų Ė {enter}","{shift} > Z Ū C V B N M Č F / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["´ @ _ # $ § ^ & * [ ] ' % {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} { } |",'{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} " {enter}',"{shift} – {empty} {empty} {empty} {empty} {empty} {empty} {empty} „ “ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Luxembourgish"]={name:"ms-Luxembourgish",lang:["lb"],normal:["§ 1 2 3 4 5 6 7 8 9 0 ' ^ {bksp}","{tab} q w e r t z u i o p è ¨ $","a s d f g h j k l é à {enter}","{shift} < y x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['° + " * ç % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Z U I O P ü ! £","A S D F G H J K L ö ä {enter}","{shift} > Y X C V B N M ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ¦ @ # ° § ¬ | ¢ {empty} {empty} ´ ~ {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ] }","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { {enter}","{shift} \\ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Macedonian (FYROM)"]={name:"ms-Macedonian (FYROM)",lang:["mk"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} љ њ е р т ѕ у и о п ш ѓ ж","а с д ф г х ј к л ч ќ {enter}","{shift} ё з џ ц в б н м , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! „ “ ’ % ‘ & * ( ) _ + {bksp}","{tab} Љ Њ Е Р Т Ѕ У И О П Ш Ѓ Ж","А С Д Ф Г Х Ј К Л Ч Ќ {enter}","{shift} Ё З Џ Ц В Б Н М ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} Ђ ђ {empty}","{empty} {empty} {empty} [ ] {empty} {empty} {empty} {empty} Ћ ћ {enter}","{shift} {empty} {empty} {empty} {empty} @ { } § {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Macedonian (FYROM) - Standard"]={name:"ms-Macedonian (FYROM) - Standard",lang:["mk"],normal:["ѝ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} љ њ е р т ѕ у и о п ш ѓ ж","а с д ф г х ј к л ч ќ {enter}","{shift} ѐ з џ ц в б н м , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["Ѝ ! „ “ ' % ‚ ‘ * ( ) - + {bksp}","{tab} Љ Њ Е Р Т Ѕ У И О П Ш Ѓ Ж","А С Д Ф Г Х Ј К Л Ч Ќ {enter}","{shift} Ѐ З Џ Ц В Б Н М ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ° @ # $ {empty} ^ & … { } — ́ {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ] |","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Malayalam"]={name:"ms-Malayalam",lang:["ml"],normal:["ൊ 1 2 3 4 5 6 7 8 9 0 - ൃ {bksp}","{tab} ൌ ൈ ാ ീ ൂ ബ ഹ ഗ ദ ജ ഡ {empty}","ോ േ ് ി ു പ ര ക ത ച ട {enter}","{shift} െ ം മ ന വ ല സ , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["ഒ {empty} {empty} ്ര {empty} {empty} {empty} ക്ഷ {empty} ( ) ഃ ഋ {bksp}","{tab} ഔ ഐ ആ ഈ ഊ ഭ ങ ഘ ധ ഝ ഢ ഞ","ഓ ഏ അ ഇ ഉ ഫ റ ഖ ഥ ഛ ഠ {enter}","{shift} എ {empty} ണ {empty} ഴ ള ശ ഷ {empty} / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ൧ ൨ ൩ ൪ ൫ ൬ ൭ ൮ ൯ ൦ {empty} {empty} {bksp}","{tab} ൗ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ൠ {bksp}","{tab} {empty} {empty} {empty} ൡ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} ഌ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Maltese 47-Key"]={name:"ms-Maltese 47-Key",lang:["mt"],normal:["ċ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p ġ ħ ż","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["Ċ ! @ € $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P Ġ Ħ Ż",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` {empty} {empty} £ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} è {empty} {empty} {empty} ù ì ò {empty} [ ] \\","à {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} È {empty} {empty} {empty} Ù Ì Ò {empty} { } |","À {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Maltese 48-Key"]={name:"ms-Maltese 48-Key",lang:["mt"],normal:["ċ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p ġ ħ #","a s d f g h j k l ; ' {enter}","{shift} ż z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['Ċ ! " € $ % ^ & * ( ) _ + {bksp}',"{tab} Q W E R T Y U I O P Ġ Ħ ~","A S D F G H J K L : @ {enter}","{shift} Ż Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` {empty} {empty} £ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} è {empty} {empty} {empty} ù ì ò {empty} [ ] {empty}","à {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} \\ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["¬ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} È {empty} {empty} {empty} Ù Ì Ò {empty} { } {empty}","À {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} | {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Maori"]={name:"ms-Maori",lang:["mi"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {space} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M < > / {shift}","{accept} {space} {cancel}"]};jQuery.keyboard.layouts["ms-Marathi"]={name:"ms-Marathi",lang:["mr"],normal:["{empty} १ २ ३ ४ ५ ६ ७ ८ ९ ० - ृ {bksp}","{tab} ौ ै ा ी ू ब ह ग द ज ड ़ ॉ","ो े ् ि ु प र क त च ट {enter}","{shift} ॉ ं म न व ल स , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["{empty} ऍ ॅ ्र र् ज्ञ त्र क्ष श्र ( ) ः ऋ {bksp}","{tab} औ ऐ आ ई ऊ भ ङ घ ध झ ढ ञ ऑ","ओ ए अ इ उ फ ऱ ख थ छ ठ {enter}","{shift} ऑ ँ ण {empty} {empty} ळ श ष । / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ] \\","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ; ' {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} , . {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { } |",'{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} : " {enter}',"{shift} {empty} ऽ ॐ {empty} {empty} {empty} {empty} < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Mongolian Cyrillic"]={name:"ms-Mongolian Cyrillic",lang:["mn"],normal:['= № - " ₮ : . _ , % ? е щ {bksp}',"{tab} ф ц у ж э н г ш ү з к ъ \\","й ы б ө а х р о л д п {enter}","{shift} \\ я ч ё с м и т ь в / {shift}","{accept} {space} {cancel}"],shift:["+ 1 2 3 4 5 6 7 8 9 0 Е Щ {bksp}","{tab} Ф Ц У Ж Э Н Г Ш Ү З К Ъ |","Й Ы Б Ө А Х Р О Л Д П {enter}","{shift} | Я Ч Ё С М И Т Ь В / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Mongolian (Mongolian Script)"]={name:"ms-Mongolian (Mongolian Script)",lang:["mn"],normal:["᠍ 1 2 3 4 5 6 7 8 9 0 = {bksp}","{tab} ᠴ ᠣ ᠡ ᠷ ᠲ ᠶ ᠦ ᠢ ᠥ ᠫ 〔 〕 ᠁","ᠠ ᠰ ᠳ ᠹ ᠭ ᠬ ᠵ ᠺ ᠯ ; ᠋ {enter}","{shift} {empty} ᠽ ᠱ ᠼ ᠤ ᠪ ᠨ ᠮ ᠂ ᠃ / {shift}","{accept} {space} {cancel}"],shift:["~ ! ⁈ ⁉ — % {ZWNJ} ᠊ {ZWJ} ( ) + {bksp}","{tab} {empty} ᠸ ᠧ ᠿ {empty} {empty} {empty} {empty} {empty} {empty} 〈 〉 |","{empty} {empty} {empty} {empty} {empty} ᠾ {empty} ᠻ ᡀ ᠄ ᠌ {enter}","{shift} {empty} ᡁ {empty} ᡂ {empty} {empty} ᠩ {empty} 《 》 / {shift}","{accept} {space} {cancel}"]};jQuery.keyboard.layouts["ms-Nepali"]={name:"ms-Nepali",lang:["ne"],normal:["ञ ज्ञ घ ङ झ छ ट ठ ड ढ ण ( . {bksp}","{tab} त्र ध भ च त थ ग ष य उ ृ े ्र","ब क म ा न ज व प ि स ु {enter}","{shift} श ह अ ख द ल फ , । / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["ञ् १ २ ३ ४ ५ ६ ७ ८ ९ ० ) ं {bksp}","{tab} ो ध् भ् च् त् थ् ग् क्ष इ ए र् ै ्","ब् क् म् ँ न् ज् व् प् ी स् ू {enter}","{shift} श् ह् ऋ ख् द् ल् ः ? श्र / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} 1 2 3 4 5 6 7 8 9 0 {empty} + {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ऊ {empty} औ {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} आ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Norwegian"]={name:"ms-Norwegian",lang:["no"],normal:["| 1 2 3 4 5 6 7 8 9 0 + \\ {bksp}","{tab} q w e r t y u i o p å ¨","a s d f g h j k l ø æ ' {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['§ ! " # ¤ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Y U I O P Å ^","A S D F G H J K L Ø Æ * {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} @ £ $ € {empty} { [ ] } {empty} ´ {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} µ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Norwegian with Sami"]={name:"ms-Norwegian with Sami",lang:["no"],normal:["| 1 2 3 4 5 6 7 8 9 0 + \\ {bksp}","{tab} q w e r t y u i o p å ¨ '","a s d f g h j k l ø æ {enter}","{shift} < z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['§ ! " # ¤ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Y U I O P Å ^ *","A S D F G H J K L Ø Æ {enter}","{shift} > Z X C V B N M ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} @ £ $ € {empty} { [ ] } {empty} ´ {bksp}","{tab} â {empty} € {empty} ŧ {empty} {empty} ï õ {empty} {empty} ~ {empty}","á š đ ǥ ǧ ȟ {empty} ǩ {empty} ö ä {enter}","{shift} {empty} ž {empty} č ǯ ʒ ŋ µ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab}  {empty} {empty} {empty} Ŧ {empty} {empty} Ï Õ {empty} {empty} {empty} {empty}","Á Š Đ Ǥ Ǧ Ȟ {empty} Ǩ {empty} Ö Ä {enter}","{shift} {empty} Ž {empty} Č Ǯ Ʒ Ŋ {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Oriya"]={name:"ms-Oriya",lang:["or"],normal:["1 2 3 4 5 6 7 8 9 0 0 ୃ {bksp}","{tab} ୌ ୈ ା ୀ ୂ ବ ହ ଗ ଦ ଜ ଡ ଼","ୋ େ ୍ ି ୁ ପ ର କ ତ ଚ ଟ {enter}","{shift} ୟ ଂ ମ ନ ବ ଲ ସ , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["{empty} {empty} ୍ର ର୍ ଜ୍ଞ ତ୍ର କ୍ଷ ଶ୍ର ( ) ଃ ଋ {bksp}","{tab} ଔ ଐ ଆ ଈ ଊ ଭ ଙ ଘ ଧ ଝ ଢ ଞ","ଓ ଏ ଅ ଇ ଉ ଫ {empty} ଖ ଥ ଛ ଠ {enter}","{shift} ୱ ଁ ଣ {empty} {empty} ଳ ଶ ଷ {empty} / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["୧ ୨ ୩ ୪ ୫ ୬ ୭ ୮ ୯ ୦ {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ଡ଼ {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ୠ {bksp}","{tab} {empty} {empty} {empty} ୡ {empty} {empty} {empty} {empty} {empty} {empty} ଢ଼ {empty}","{empty} {empty} {empty} ଌ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ଽ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Pashto (Afghanistan)"]={name:"ms-Pashto (Afghanistan)",lang:["ps"],normal:["{ZWJ} ۱ ۲ ۳ ۴ ۵ ۶ ۷ ۸ ۹ ۰ - = {bksp}","{tab} ض ص ث ق ف غ ع ه خ ح ج چ \\","ش س ی ب ل ا ت ن م ک ګ {enter}","{shift} ظ ط ز ر ذ د ړ و ږ / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["ٔ ! ٬ ٫ ؋ ٪ × » « ) ( ـ + {bksp}","{tab} ْ ٌ ٍ ً ُ ِ َ ّ ځ څ ] [ *","ښ ۍ ي پ أ آ ټ ڼ ة : ؛ {enter}","{shift} ئ ې ژ ء {ZWNJ} ډ ؤ ، . / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` ~ @ # $ % ^ & ٭ • ° _ ÷ {bksp}","{tab} € ٱ ى {LRM} {RLM} ٓ ٙ ٰ ' \" } { |","{empty} {empty} ے ں ڷ إ ٹ > < ك گ {enter}","{shift} ? ; {empty} {empty} {empty} ڈ ڑ , ۇ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Persian"]={name:"ms-Persian",lang:["fa"],normal:["÷ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ض ص ث ق ف غ ع ه خ ح ج چ پ","ش س ی ب ل ا ت ن م ک گ {enter}","{shift} پ ظ ط ز ر ذ د ئ و . / {shift}","{accept} {space} {cancel}"],shift:["× ! @ # $ % ^ & * ) ( _ + {bksp}","{tab} ً ٌ ٍ ريال ، ؛ , ] [ \\ } { |",'َ ُ ِ ّ ۀ آ ـ « » : " {enter}',"{shift} | ة ي ژ ؤ إ أ ء < > / {shift}","{accept} {space} {cancel}"]};jQuery.keyboard.layouts["ms-Polish (214)"]={name:"ms-Polish (214)",lang:["pl"],normal:["˛ 1 2 3 4 5 6 7 8 9 0 + ' {bksp}","{tab} q w e r t z u i o p ż ś","a s d f g h j k l ł ą ó {enter}","{shift} < y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['· ! " # ¤ % & / ( ) = ? * {bksp}',"{tab} Q W E R T Z U I O P ń ć","A S D F G H J K L Ł ę ź {enter}","{shift} > Y X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ~ ˇ ^ ˘ ° ˛ ` · ´ ˝ ¨ ¸ {bksp}","{tab} \\ ¦ {empty} {empty} {empty} {empty} € {empty} {empty} {empty} ÷ ×","{empty} đ Đ {empty} {empty} {empty} {empty} {empty} {empty} $ ß {empty} {enter}","{shift} {empty} {empty} {empty} {empty} @ { } § < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Polish (Programmers)"]={name:"ms-Polish (Programmers)",lang:["pl"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ]","a s d f g h j k l ; ' \\ {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { }",'A S D F G H J K L : " | {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} ę {empty} {empty} {empty} € {empty} ó {empty} {empty} {empty}","ą ś {empty} {empty} {empty} {empty} {empty} {empty} ł {empty} {empty} {empty} {enter}","{shift} ż ź ć {empty} {empty} ń {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} Ę {empty} {empty} {empty} {empty} {empty} Ó {empty} {empty} {empty}","Ą Ś {empty} {empty} {empty} {empty} {empty} {empty} Ł {empty} {empty} {empty} {enter}","{shift} Ż Ź Ć {empty} {empty} Ń {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Portuguese"]={name:"ms-Portuguese",lang:["pt"],normal:["\\ 1 2 3 4 5 6 7 8 9 0 ' « {bksp}","{tab} q w e r t y u i o p + ´","a s d f g h j k l ç º ~ {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['| ! " # $ % & / ( ) = ? » {bksp}',"{tab} Q W E R T Y U I O P * `","A S D F G H J K L Ç ª ^ {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} @ £ § € {empty} { [ ] } {empty} {empty} {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} ¨ ]","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Portuguese (Brazilian ABNT)"]={name:"ms-Portuguese (Brazilian ABNT)",lang:["pt"],normal:["' 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p ´ [","a s d f g h j k l ç ~ ] {enter}","{shift} \\ z x c v b n m , . ; / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['" ! @ # $ % ¨ & * ( ) _ + {bksp}',"{tab} Q W E R T Y U I O P ` {","A S D F G H J K L Ç ^ } {enter}","{shift} | Z X C V B N M < > : ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ¹ ² ³ £ ¢ ¬ {empty} {empty} {empty} {empty} {empty} § {bksp}","{tab} / ? ° {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ª","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} º {enter}","{shift} {empty} {empty} {empty} ₢ {empty} {empty} {empty} {empty} {empty} {empty} {empty} ° {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Punjabi"]={name:"ms-Punjabi",lang:["pa"],normal:["{empty} 1 2 3 4 5 6 7 8 9 0 - {empty} {bksp}","{tab} ੌ ੈ ਾ ੀ ੂ ਬ ਹ ਗ ਦ ਜ ਡ ਼","ੋ ੇ ੍ ਿ ੁ ਪ ਰ ਕ ਤ ਚ ਟ {enter}","{shift} ੰ ਮ ਨ ਵ ਲ ਸ , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["੍ਹ ੍ਵ ੍ਯ ੍ਰ ੱ {empty} {empty} {empty} {empty} ( ) {empty} {empty} {bksp}","{tab} ਔ ਐ ਆ ਈ ਊ ਭ ਙ ਘ ਧ ਝ ਢ ਞ","ਓ ਏ ਅ ਇ ਉ ਫ ੜ ਖ ਥ ਛ ਠ {enter}","{shift} ਂ ਣ {empty} ੲ ਲ਼ ਸ਼ {empty} । / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ੧ ੨ ੩ ੪ ੫ ੬ ੭ ੮ ੯ ੦ {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ਗ਼ {empty} ਜ਼ ੜ {empty}","{empty} {empty} {empty} {empty} {empty} ਫ਼ {empty} ਖ਼ {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} ੳ {empty} {empty} {empty} ॥ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} ੴ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Romanian (Legacy)"]={name:"ms-Romanian (Legacy)",lang:["ro"],normal:["] 1 2 3 4 5 6 7 8 9 0 + ' {bksp}","{tab} q w e r t z u i o p ă î â","a s d f g h j k l ş ţ {enter}","{shift} < y x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['[ ! " # ¤ % & / ( ) = ? * {bksp}',"{tab} Q W E R T Z U I O P Ă Î Â","A S D F G H J K L Ş Ţ {enter}","{shift} > Y X C V B N M ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ~ ˇ ^ ˘ ° ˛ ` · ´ ˝ ¨ ¸ {bksp}","{tab} \\ | {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ÷ × {empty}","{empty} đ Đ {empty} {empty} {empty} {empty} ł Ł $ ß {enter}","{shift} {empty} {empty} {empty} @ { } § < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Romanian (Programmers)"]={name:"ms-Romanian (Programmers)",lang:["ro"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {bksp}","{tab} â ß € {empty} ț {empty} {empty} î {empty} § „ ” {empty}","ă ș đ {empty} {empty} {empty} {empty} {empty} ł {empty} {empty} {enter}","{shift} {empty} {empty} {empty} © {empty} {empty} {empty} {empty} « » {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} – ± {bksp}","{tab}  {empty} {empty} {empty} Ț {empty} {empty} Î {empty} {empty} {empty} {empty} {empty}","Ă Ș Đ {empty} {empty} {empty} {empty} {empty} Ł {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Romanian (Standard)"]={name:"ms-Romanian (Standard)",lang:["ro"],normal:["„ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p ă î â","a s d f g h j k l ș ț {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["” ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P Ă Î Â","A S D F G H J K L Ș Ț {enter}","{shift} | Z X C V B N M ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} § [ ] \\","{empty} ß đ {empty} {empty} {empty} {empty} {empty} ł ; ' {enter}","{shift} {empty} {empty} {empty} © {empty} {empty} {empty} {empty} < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} – ± {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { } |",'{empty} {empty} Đ {empty} {empty} {empty} {empty} {empty} Ł : " {enter}',"{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} « » {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Russian"]={name:"ms-Russian",lang:["ru"],normal:["ё 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} й ц у к е н г ш щ з х ъ \\","ф ы в а п р о л д ж э {enter}","{shift} \\ я ч с м и т ь б ю / {shift}","{accept} {space} {cancel}"],shift:['Ё ! " № ; % : ? * ( ) _ + {bksp}',"{tab} Й Ц У К Е Н Г Ш Щ З Х Ъ /","Ф Ы В А П Р О Л Д Ж Э {enter}","{shift} / Я Ч С М И Т Ь Б Ю / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Russian (Typewriter)"]={name:"ms-Russian (Typewriter)",lang:["ru"],normal:['| № - / " : , . _ ? % ! ; {bksp}',"{tab} й ц у к е н г ш щ з х ъ )","ф ы в а п р о л д ж э {enter}","{shift} ) я ч с м и т ь б ю / {shift}","{accept} {space} {cancel}"],shift:["+ 1 2 3 4 5 6 7 8 9 0 = \\ {bksp}","{tab} Й Ц У К Е Н Г Ш Щ З Х Ъ (","Ф Ы В А П Р О Л Д Ж Э {enter}","{shift} ( Я Ч С М И Т Ь Б Ю / {shift}","{accept} {space} {cancel}"]};jQuery.keyboard.layouts["ms-Sami Extended Finland-Sweden"]={name:"ms-Sami Extended Finland-Sweden",lang:["se"],normal:["§ 1 2 3 4 5 6 7 8 9 0 + ´ {bksp}","{tab} á š e r t ŧ u i o p å ŋ đ","a s d f g h j k l ö ä {enter}","{shift} ž z č c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['½ ! " # ¤ % & / ( ) = ? ` {bksp}',"{tab} Á Š E R T Ŧ U I O P Å Ŋ Đ","A S D F G H J K L Ö Ä {enter}","{shift} Ž Z Č C V B N M ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["| {empty} @ £ $ € {empty} { [ ] } \\ {empty} {bksp}","{tab} q w € {empty} {empty} y {empty} ï õ {empty} ¨ ~ '","â {empty} {empty} {empty} ǧ ǥ {empty} ǩ {empty} ø æ {enter}","{shift} ǯ ʒ x {empty} {empty} {empty} {empty} µ < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} Q W {empty} {empty} {empty} Y {empty} Ï Õ {empty} ^ ˇ *"," {empty} {empty} {empty} Ǧ Ǥ {empty} Ǩ {empty} Ø Æ {enter}","{shift} Ǯ Ʒ X {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Sami Extended Norway"]={name:"ms-Sami Extended Norway",lang:["se"],normal:["| 1 2 3 4 5 6 7 8 9 0 + \\ {bksp}","{tab} á š e r t ŧ u i o p å ŋ đ","a s d f g h j k l ø æ {enter}","{shift} ž z č c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['§ ! " # ¤ % & / ( ) = ? ` {bksp}',"{tab} Á Š E R T Ŧ U I O P Å Ŋ Đ","A S D F G H J K L Ø Æ {enter}","{shift} Ž Z Č C V B N M ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} @ £ $ € {empty} { [ ] } {empty} ´ {bksp}","{tab} q w € {empty} {empty} y {empty} ï õ {empty} ¨ ~ '","â {empty} {empty} {empty} ǧ ǥ {empty} ǩ {empty} ö ä {enter}","{shift} ǯ ʒ x {empty} {empty} {empty} {empty} µ < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} Q W {empty} {empty} {empty} Y {empty} Ï Õ {empty} ^ ˇ *"," {empty} {empty} {empty} Ǧ Ǥ {empty} Ǩ {empty} Ö Ä {enter}","{shift} Ǯ Ʒ X {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Serbian (Latin)"]={name:"ms-Serbian (Latin)",lang:["sr"],normal:["‚ 1 2 3 4 5 6 7 8 9 0 ' + {bksp}","{tab} q w e r t z u i o p š đ ž","a s d f g h j k l č ć {enter}","{shift} < y x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['~ ! " # $ % & / ( ) = ? * {bksp}',"{tab} Q W E R T Z U I O P Š Đ Ž","A S D F G H J K L Č Ć {enter}","{shift} > Y X C V B N M ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {bksp}","{tab} \\ | € {empty} {empty} {empty} {empty} {empty} {empty} {empty} ÷ × ¤","{empty} {empty} {empty} [ ] {empty} {empty} ł Ł {empty} ß {enter}","{shift} {empty} {empty} {empty} {empty} @ { } § < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Serbian (Cyrillic)"]={name:"ms-erbian (Cyrillic)",lang:["sr"],normal:["` 1 2 3 4 5 6 7 8 9 0 ' + {bksp}","{tab} љ њ е р т з у и о п ш ђ ж","а с д ф г х ј к л ч ћ {enter}","{shift} < ѕ џ ц в б н м , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['~ ! " # $ % & / ( ) = ? * {bksp}',"{tab} Љ Њ Е Р Т З У И О П Ш Ђ Ж","А С Д Ф Г Х Ј К Л Ч Ћ {enter}","{shift} > Ѕ Џ Ц В Б Н М ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Setswana"]={name:"ms-Setswana",lang:["tn"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ¡ ² ³ ¤ € ¼ ½ ¾ ‘ ’ ¥ × {bksp}","{tab} ä å é ® þ ü ú í ó ö « » ¬","á ß ð {empty} {empty} {empty} {empty} {empty} ø ¶ ´ {enter}","{shift} {empty} æ {empty} © {empty} {empty} ñ µ ç š {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} ¹ {empty} {empty} £ {empty} {empty} {empty} {empty} {empty} {empty} {empty} ÷ {bksp}","{tab} Ä Å É {empty} Þ Ü Ú Í Ó Ö {empty} {empty} ¦","Á § Ð {empty} {empty} {empty} {empty} {empty} Ø ° ¨ {enter}","{shift} {empty} Æ {empty} ¢ {empty} {empty} Ñ {empty} Ç Š {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Setswana (Sesotho sa Leboa)"]={name:"ms-Setswana (Sesotho sa Leboa)",lang:["tn"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ¡ ² ³ ¤ € ¼ ½ ¾ ‘ ’ ¥ × {bksp}","{tab} ä å é ® þ ü ú í ó ö « » ¬","á ß ð {empty} {empty} {empty} {empty} {empty} ø ¶ ´ {enter}","{shift} æ {empty} © {empty} {empty} ñ µ ç š {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} ¹ {empty} {empty} £ {empty} {empty} {empty} {empty} {empty} {empty} {empty} ÷ {bksp}","{tab} Ä Å É {empty} Þ Ü Ú Í Ó Ö {empty} {empty} ¦","Á § Ð {empty} {empty} {empty} {empty} {empty} Ø ° ¨ {enter}","{shift} Æ {empty} ¢ {empty} {empty} Ñ {empty} Ç Š {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Sinhala"]={name:"ms-Sinhala",lang:["si"],normal:["්{ZWJ}ර 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ු අ ැ ර ඒ හ ම ස ද ච ඤ ; {ZWJ}","් ි ා ෙ ට ය ව න ක ත . {enter}","{shift} {ZWJ} ' ං ජ ඩ ඉ බ ප ල ග / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["ර්{ZWJ} ! @ $ $ % ^ & * ( ) _ + {bksp}","{tab} ූ උ ෑ ඍ ඔ ශ ඹ ෂ ධ ඡ ඥ : {empty}","ෟ ී ෘ ෆ ඨ ්{ZWJ}ය ළු ණ ඛ ථ , {enter}",'{shift} {empty} " ඃ ඣ ඪ ඊ භ ඵ ළ ඝ / {shift}',"{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","ෳ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ෴ {enter}","{shift} {empty} {empty} ඞ ඦ ඬ {empty} {empty} {empty} ඏ ඟ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Sinhala - Wij 9"]={name:"ms-Sinhala - Wij 9",lang:["si"],normal:["්{ZWJ}ර 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ු අ ැ ර එ හ ම ස ද ච ඤ ; ්{ZWJ}","් ි ා ෙ ට ය ව න ක ත . {enter}","{shift} ' ං ජ ඩ ඉ බ ප ල ග / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["ර්{ZWJ} ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} ූ උ ෑ ඍ ඔ ශ ඹ ෂ ධ ඡ ඥ : {empty}","ෟ ී ෘ ෆ ඨ ්{ZWJ}ය ළු ණ ඛ ථ , {enter}",'{shift} " ඃ ඣ ඪ ඊ භ ඵ ළ ඝ / {shift}',"{accept} {alt} {space} {alt} {cancel}"],alt:["` ¡ ² ³ ¤ € ¼ ½ ¾ ‘ ’ ¥ × {bksp}","{tab} ෞ ො ෛ ේ {empty} {empty} {empty} {empty} ඳ {empty} [ ] \\","ෳ ෝ {empty} {empty} {empty} {empty} {ZWJ} {empty} {empty} {empty} ෴ {enter}","{shift} {empty} ඞ ඦ ඬ {empty} {ZWNJ} {empty} ඏ ඟ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ¹ {empty} {empty} £ {empty} {empty} {empty} {empty} {empty} {empty} {empty} ÷ {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { } |","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Slovak"]={name:"ms-Slovak",lang:["sk"],normal:["; + ľ š č ť ž ý á í é = ´ {bksp}","{tab} q w e r t z u i o p ú ä ň","a s d f g h j k l ô § {enter}","{shift} & y x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["° 1 2 3 4 5 6 7 8 9 0 % ˇ {bksp}","{tab} Q W E R T Z U I O P / ( )",'A S D F G H J K L " ! {enter}',"{shift} * Y X C V B N M ? : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {bksp}","{tab} \\ | € {empty} {empty} {empty} {empty} {empty} {empty} ' ÷ × ¤","{empty} đ Đ [ ] {empty} {empty} ł Ł $ ß {enter}","{shift} < > # & @ { } {empty} < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Slovak (QWERTY)"]={name:"ms-Slovak (QWERTY)",lang:["sk"],normal:["; + ľ š č ť ž ý á í é = ´ {bksp}","{tab} q w e r t y u i o p ú ä ň","a s d f g h j k l ô § {enter}","{shift} & z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["° 1 2 3 4 5 6 7 8 9 0 % ˇ {bksp}","{tab} Q W E R T Y U I O P / ( )",'A S D F G H J K L " ! {enter}',"{shift} * Z X C V B N M ? : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {bksp}","{tab} \\ | € {empty} {empty} {empty} {empty} {empty} {empty} ' ÷ × ¤","{empty} đ Đ [ ] {empty} {empty} ł Ł $ ß {enter}","{shift} < > # & @ { } {empty} < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Slovenian"]={name:"ms-Slovenian",lang:["sl"],normal:["¸ 1 2 3 4 5 6 7 8 9 0 ' + {bksp}","{tab} q w e r t z u i o p š đ ž","a s d f g h j k l č ć {enter}","{shift} < y x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['¨ ! " # $ % & / ( ) = ? * {bksp}',"{tab} Q W E R T Z U I O P Š Đ Ž","A S D F G H J K L Č Ć {enter}","{shift} > Y X C V B N M ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ~ ˇ ^ ˘ ° ˛ ` ˙ ´ ˝ ¨ ¸ {bksp}","{tab} \\ | € {empty} {empty} {empty} {empty} {empty} {empty} {empty} ÷ × ¤","{empty} {empty} {empty} [ ] {empty} {empty} ł Ł {empty} ß {enter}","{shift} {empty} {empty} {empty} {empty} @ { } § < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Sorbian Standard"]={name:"ms-Sorbian Standard",lang:["wen","dsb","hsb"],normal:["^ 1 2 3 4 5 6 7 8 9 0 ß ´ {bksp}","{tab} q w e r t z u i o p ü + #","a s d f g h j k l ö ä {enter}","{shift} < y x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['° ! " § $ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Z U I O P Ü * '","A S D F G H J K L Ö Ä {enter}","{shift} > Y X C V B N M ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} ² ³ {empty} {empty} {empty} { [ ] } \\ {empty} {bksp}","{tab} @ {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~ {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} | {empty} {empty} {empty} {empty} {empty} {empty} µ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Sorbian Extended"]={name:"ms-Sorbian Extended",lang:["wen","dsb","hsb"],normal:["^ 1 2 3 4 5 6 7 8 9 0 ß ´ {bksp}","{tab} q w e r t z u i o p ü + ł","a s d f g h j k l ö ä {enter}","{shift} < y x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['° ! " § $ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Z U I O P Ü * Ł","A S D F G H J K L Ö Ä {enter}","{shift} > Y X C V B N M ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} » « „ ‚ ‘ “ { [ ] } \\ {empty} {bksp}","{tab} @ {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~ #","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} | {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Sorbian Standard (Legacy)"]={name:"ms-Sorbian Standard (Legacy)",lang:["wen","dsb","hsb"],normal:["^ 1 2 3 4 5 6 7 8 9 0 ß ´ {bksp}","{tab} q w e r t z u i o p ü + ł","a s d f g h j k l ö ä {enter}","{shift} < y x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['° ! " § $ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Z U I O P Ü * Ł","A S D F G H J K L Ö Ä {enter}","{shift} > Y X C V B N M ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} » « „ ‚ ‘ “ { [ ] } \\ {empty} {bksp}","{tab} @ {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~ #","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} | {empty} {empty} {empty} {empty} {empty} {empty} µ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Spanish"]={name:"ms-Spanish",lang:["es"],normal:["º 1 2 3 4 5 6 7 8 9 0 ' ¡ {bksp}","{tab} q w e r t y u i o p ` +","a s d f g h j k l ñ ´ ç {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['ª ! " · $ % & / ( ) = ? ¿ {bksp}',"{tab} Q W E R T Y U I O P ^ *","A S D F G H J K L Ñ ¨ Ç {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["\\ | @ # ~ € ¬ {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ]","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { } {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Spanish Variation"]={name:"ms-Spanish Variation",lang:["es"],normal:["' 1 2 3 4 5 6 7 8 9 0 - ¨ {bksp}","{tab} q w e r t y u i o p ÷ `","a s d f g h j k l ñ ç ´ {enter}","{shift} < z x c v b n m , . = {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['· ª " / ( ) ¡ ! ¿ ? ₧ + ¨ {bksp}',"{tab} Q W E R T Y U I O P × `","A S D F G H J K L Ñ Ç ´ {enter}","{shift} > Z X C V B N M ; : % {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["\\ | @ # ¼ ½ ¬ _ # § \\ * ~ {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ]","$ & @ [ ] | £ ± {empty} ~ { } {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ^ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Swedish"]={name:"ms-Swedish",lang:["sv"],normal:["§ 1 2 3 4 5 6 7 8 9 0 + ´ {bksp}","{tab} q w e r t y u i o p å ¨","a s d f g h j k l ö ä ' {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['½ ! " # ¤ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Y U I O P Å ^","A S D F G H J K L Ö Ä * {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} @ £ $ € {empty} { [ ] } \\ {empty} {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ~","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} | {empty} {empty} {empty} {empty} {empty} {empty} µ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Swedish with Sami"]={name:"ms-Swedish with Sami",lang:["sv"],normal:["§ 1 2 3 4 5 6 7 8 9 0 + ´ {bksp}","{tab} q w e r t y u i o p å ¨","a s d f g h j k l ö ä ' {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['½ ! " # ¤ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Y U I O P Å ^","A S D F G H J K L Ö Ä * {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} @ £ $ € {empty} { [ ] } \\ {empty} {bksp}","{tab} â {empty} € {empty} ŧ {empty} {empty} ï õ {empty} {empty} ~","á š đ ǥ ǧ ȟ {empty} ǩ {empty} ø æ {empty} {enter}","{shift} | ž {empty} č ǯ ʒ ŋ µ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab}  {empty} {empty} {empty} Ŧ {empty} {empty} Ï Õ {empty} {empty} {empty}","Á Š Đ Ǥ Ǧ Ȟ {empty} Ǩ {empty} Ø Æ {empty} {enter}","{shift} {empty} Ž {empty} Č Ǯ Ʒ Ŋ {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Swedish with Sami"]={name:"ms-Swedish with Sami",lang:["sv","se"],normal:["§ 1 2 3 4 5 6 7 8 9 0 + ´ {bksp}","{tab} q w e r t y u i o p å ¨ '","a s d f g h j k l ö ä {enter}","{shift} < z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['½ ! " # ¤ % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Y U I O P Å ^ *","A S D F G H J K L Ö Ä {enter}","{shift} > Z X C V B N M ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} @ £ $ € {empty} { [ ] } \\ {empty} {bksp}","{tab} â {empty} € {empty} ŧ {empty} {empty} ï õ {empty} {empty} ~ {empty}","á š đ ǥ ǧ ȟ {empty} ǩ {empty} ø æ {enter}","{shift} | ž {empty} č ǯ ʒ ŋ µ {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab}  {empty} {empty} {empty} Ŧ {empty} {empty} Ï Õ {empty} {empty} {empty} {empty}","Á Š Đ Ǥ Ǧ Ȟ {empty} Ǩ {empty} Ø Æ {enter}","{shift} {empty} Ž {empty} Č Ǯ Ʒ Ŋ {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Swiss German"]={name:"ms-Swiss German",lang:["de","sv"],normal:["§ 1 2 3 4 5 6 7 8 9 0 ' ^ {bksp}","{tab} q w e r t z u i o p ü ¨","a s d f g h j k l ö ä $ {enter}","{shift} < y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['° + " * ç % & / ( ) = ? ` {bksp}',"{tab} Q W E R T Z U I O P è !","A S D F G H J K L é à £ {enter}","{shift} > Y X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ¦ @ # ° § ¬ | ¢ {empty} {empty} ´ ~ {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} [ ]","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { } {enter}","{shift} \\ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Syriac"]={name:"ms-Syriac",lang:["syr"],normal:[" 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ܔ ܨ ܖ ܩ ܦ ܜ ܥ ܗ ܞ ܚ ܓ ܕ ܆","ܫ ܣ ܝ ܒ ܠ ܐ ܬ ܢ ܡ ܟ ܛ {enter}","{shift} ܆ ] [ ܤ ܪ ܧ ܀ . ܘ ܙ / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["̮ ! ̊ ̥ ݉ ♰ ♱ ܊ » ) ( « + {bksp}","{tab} ܰ ܳ ܶ ܺ ܽ ݀ ݁ ̈ ̄ ̇ ̃ ݊ :","ܱ ܴ ܷ ܻ ܾ ܑ ـ ̤ ̱ ̣ ̰ {enter}","{shift} : ܲ ܵ ܸ ܼ ܿ ܹ ݂ ، ؛ / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["ّ ܁ ܂ ܃ ܄ ܅ ܈ ܉ ܋ ܌ ܍ ┌ ┐ {bksp}","{tab} َ ً ُ ٌ ٓ ٔ ݇ ݃ ݅ ̭ {empty} {empty} {empty}","ِ ٍ {empty} ء ٕ ٰ ݈ ݄ ݆ {empty} {empty} {enter}","{shift} {empty} {empty} ْ {empty} {ZWJ} {ZWNJ} {LRM} {RLM} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Syriac Phonetic"]={name:"ms-Syriac Phonetic",lang:["syr"],normal:[" 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ܩ ܘ ܖ ܪ ܬ ܝ ܜ ܥ ܧ ܦ ] [ ܆","ܐ ܣ ܕ ܔ ܓ ܗ ܛ ܟ ܠ ܚ ܞ {enter}","{shift} ܆ ܙ ܨ ܤ ܫ ܒ ܢ ܡ ܀ . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["̮ ! ̊ ̥ ݉ ♰ ♱ ܊ » ) ( « + {bksp}","{tab} ܰ ܳ ܶ ܺ ܽ ݀ ݁ ̈ ̄ ̇ ̃ ݊ :","ܱ ܴ ܷ ܻ ܾ ܑ ـ ̤ ̱ ̣ ̰ {enter}","{shift} : ܲ ܵ ܸ ܼ ܿ ܹ ݂ ، ؛ / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["ّ ܁ ܂ ܃ ܄ ܅ ܈ ܉ ܋ ܌ ܍ ┌ ┐ {bksp}","{tab} َ ً ُ ٌ ٓ ٔ ݇ ݃ ݅ ̭ {empty} {empty} {empty}","ِ ٍ {empty} ء ٕ ٰ ݈ ݄ ݆ {empty} {empty} {enter}","{shift} {empty} {empty} ْ {empty} {ZWJ} {ZWNJ} {LRM} {RLM} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Tajik"]={name:"ms-Tajik",lang:["tg"],normal:["ё 1 2 3 4 5 6 7 8 9 0 ғ ӯ {bksp}","{tab} й қ у к е н г ш ҳ з х ъ \\","ф ҷ в а п р о л д ж э {enter}","{shift} \\ я ч с м и т ӣ б ю / {shift}","{accept} {space} {cancel}"],shift:['Ё ! " № ; % : ? * ( ) Ғ Ӯ {bksp}',"{tab} Й Қ У К Е Н Г Ш Ҳ З Х Ъ /","Ф Ҷ В А П Р О Л Д Ж Э {enter}","{shift} / Я Ч С М И Т Ӣ Б Ю / {shift}","{accept} {space} {cancel}"]};jQuery.keyboard.layouts["ms-Tamil"]={name:"ms-Tamil",lang:["ta"],normal:["ொ 1 2 3 4 5 6 7 8 9 0 - {empty} {bksp}","{tab} ௌ ை ா ீ ூ ப ஹ க த ஜ ட ஞ","ோ ே ் ி ு ப ர க த ச ட {enter}","{shift} ெ {empty} ம ந வ ல ஸ , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["ஒ {empty} {empty} {empty} {empty} {empty} த்ர க்ஷ ஷ்ர {empty} {empty} ஃ {empty} {bksp}","{tab} ஔ ஐ ஆ ஈ ஊ ப ங க த ச ட ஞ","ஓ ஏ அ இ உ ப ற க த ச ட {enter}","{shift} எ {empty} ண ன ழ ள ஷ ஷ ஸ்ரீ / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ௧ ௨ ௩ ௪ ௫ ௬ ௭ ௮ ௯ ௰ ௱ ௲ {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Tatar"]={name:"ms-Tatar",lang:["tt"],normal:["һ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} й ө у к е н г ш ә з х ү","ф ы в а п р о л д ң э \\ {enter}","{shift} ґ я ч с м и т җ б ю . {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['Һ ! " № ; % : ? * ( ) _ + {bksp}',"{tab} Й Ө У К Е Н Г Ш Ә З Х Ү","Ф Ы В А П Р О Л Д Ң Э / {enter}","{shift} Ґ Я Ч С М И Т Җ Б Ю , {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["ё {empty} @ # $ {empty} {empty} [ ] { } {empty} {empty} {bksp}","{tab} {empty} ц {empty} {empty} {empty} {empty} {empty} {empty} щ {empty} {empty} ъ","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ж ' {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ь < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["Ё {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} Ц {empty} {empty} {empty} {empty} {empty} {empty} Щ {empty} {empty} Ъ","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} Ж {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} Ь {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Telugu"]={name:"ms-Telugu",lang:["te"],normal:["ొ 1 2 3 4 5 6 7 8 9 0 - ృ {bksp}","{tab} ౌ ై ా ీ ూ బ హ గ ద జ డ {empty}","ో ే ్ ి ు ప ర క త చ ట {enter}","{shift} ె ం మ న వ ల స , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["ఒ {empty} {empty} ్ర {empty} జ్ఞ త్ర క్ష శ్ర ( ) ః ఋ {bksp}","{tab} ఔ ఐ ఆ ఈ ఊ భ ఙ ఘ ధ ఝ ఢ ఞ","ఓ ఏ అ ఇ ఉ ఫ ఱ ఖ థ ఛ ఠ {enter}","{shift} ఎ ఁ ణ న {empty} ళ శ ష {empty} / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ౧ ౨ ౩ ౪ ౫ ౬ ౭ ౮ ౯ ౦ {empty} ౄ {bksp}","{tab} {empty} ౖ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} ౕ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ౠ {bksp}","{tab} {empty} {empty} {empty} ౡ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} ఌ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Thai Kedmanee"]={name:"ms-Thai Kedmanee",lang:["th"],normal:["_ ๅ / - ภ ถ ุ ึ ค ต จ ข ช {bksp}","{tab} ๆ ไ ำ พ ะ ั ี ร น ย บ ล ฃ","ฟ ห ก ด เ ้ ่ า ส ว ง {enter}","{shift} ผ ป แ อ ิ ื ท ม ใ ฝ {shift}","{accept} {space} {cancel}"],shift:["% + ๑ ๒ ๓ ๔ ู ฿ ๕ ๖ ๗ ๘ ๙ {bksp}",'{tab} ๐ " ฎ ฑ ธ ํ ๊ ณ ฯ ญ ฐ , ฅ',"ฤ ฆ ฏ โ ฌ ็ ๋ ษ ศ ซ . {enter}","{shift} ( ) ฉ ฮ ฺ ์ ? ฒ ฬ ฦ {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Thai Kedmanee (non-ShiftLock)"]={name:"ms-Thai Kedmanee (non-ShiftLock)",lang:["th"],normal:["_ ๅ / - ภ ถ ุ ึ ค ต จ ข ช {bksp}","{tab} ๆ ไ ำ พ ะ ั ี ร น ย บ ล ฃ","ฟ ห ก ด เ ้ ่ า ส ว ง {enter}","{shift} ผ ป แ อ ิ ื ท ม ใ ฝ {shift}","{accept} {space} {cancel}"],shift:["% + ๑ ๒ ๓ ๔ ู ฿ ๕ ๖ ๗ ๘ ๙ {bksp}",'{tab} ๐ " ฎ ฑ ธ ํ ๊ ณ ฯ ญ ฐ , ฅ',"ฤ ฆ ฏ โ ฌ ็ ๋ ษ ศ ซ . {enter}","{shift} ( ) ฉ ฮ ฺ ์ ? ฒ ฬ ฦ {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Thai Pattachote"]={name:"ms-Thai Pattachote",lang:["th"],normal:["_ = ๒ ๓ ๔ ๕ ู ๗ ๘ ๙ ๐ ๑ ๖ {bksp}","{tab} ็ ต ย อ ร ่ ด ม ว แ ใ ฌ ","้ ท ง ก ั ี า น เ ไ ข {enter}","{shift} บ ป ล ห ิ ค ส ะ จ พ {shift}","{accept} {space} {cancel}"],shift:['฿ + " / , ? ุ _ . ( ) - % {bksp}',"{tab} ๊ ฤ ๆ ญ ษ ึ ฝ ซ ถ ฒ ฯ ฦ ํ","๋ ธ ำ ณ ์ ื ผ ช โ ฆ ฑ {enter}","{shift} ฎ ฏ ฐ ภ ั ศ ฮ ฟ ฉ ฬ {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Thai Pattachote (non-ShiftLock)"]={name:"ms-Thai Pattachote (non-ShiftLock)",lang:["th"],normal:["_ = ๒ ๓ ๔ ๕ ู ๗ ๘ ๙ ๐ ๑ ๖ {bksp}","{tab} ็ ต ย อ ร ่ ด ม ว แ ใ ฌ ","้ ท ง ก ั ี า น เ ไ ข {enter}","{shift} บ ป ล ห ิ ค ส ะ จ พ {shift}","{accept} {space} {cancel}"],shift:['฿ + " / , ? ุ _ . ( ) - % {bksp}',"{tab} ๊ ฤ ๆ ญ ษ ึ ฝ ซ ถ ฒ ฯ ฦ ํ","๋ ธ ำ ณ ์ ื ผ ช โ ฆ ฑ {enter}","{shift} ฎ ฏ ฐ ภ ั ศ ฮ ฟ ฉ ฬ {shift}","{accept} {space} {cancel}"]};jQuery.keyboard.layouts["ms-Tibetan (PRC)"]={name:"ms-Tibetan (PRC)",lang:["bo"],normal:["ཨ ༡ ༢ ༣ ༤ ༥ ༦ ༧ ༨ ༩ ༠ ཧ ཝ {bksp}","{tab} ཅ ཆ ེ ར ཏ ཡ ུ ི ོ ཕ ཙ ཚ ཛ","འ ས ད བ ང མ ་ ག ལ ཞ ། {enter}","{shift} ཟ ཤ ཀ ཁ པ ན m ཐ ཇ / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["༁ ༪ ༫ ༬ ༭ ༮ ༯ ༰ ༱ ༲ ༳ ༼ ༽ {bksp}","{tab} ༕ ༖ ༗ ྼ ཊ ྻ ༘ ༙ ༚ ༛ ༜ ༝ ༞","ཱ ༟ ཌ ༾ ༿ ࿏ ༂ ༃ ༆ ༇ ༸ {enter}","{shift} ༴ ཥ ཀྵ ྇ ྆ ཎ M ཋ ༺ / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["ༀ ྲྀ ཷ ླྀ ཹ ཱི ༉ ༊ ༏ ༐ ༒ ༌ ༓ {bksp}","{tab} ྉ ྈ ྾ ཪ ྚ ྿ ཱུ ཱི ࿀ ࿁ ࿂ ࿃ ཛྷ","࿄ ࿅ ྜ བྷ ࿆ ࿇ ࿈ གྷ ࿉ ࿊ ࿋ {enter}","{shift} ࿌ ྵ ྐྵ ༶ ྂ ྞ དྷ ྛ ྋ {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Turkish F"]={name:"ms-Turkish F",lang:["tr"],normal:["+ 1 2 3 4 5 6 7 8 9 0 / - {bksp}","{tab} f g ğ ı o d r n h p q w","u i e a ü t k m l y ş x {enter}","{shift} < j ö v c ç z s b . , {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["* ! \" ^ $ % & ' ( ) = ? _ {bksp}","{tab} F G Ğ I O D R N H P Q W","U İ E A Ü T K M L Y Ş X {enter}","{shift} > J Ö V C Ç Z S B : ; {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["¬ ¹ ² # ¼ ½ ¾ { [ ] } \\ | {bksp}","{tab} @ {empty} {empty} ¶ {empty} ¥ {empty} {empty} ø £ ¨ ~","æ ß € {empty} {empty} {empty} {empty} {empty} {empty} ´ {empty} ` {enter}","{shift} | « » ¢ {empty} {empty} {empty} µ × ÷ {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} ¡ {empty} ³ ¤ {empty} {empty} {empty} {empty} {empty} {empty} ¿ {empty} {bksp}","{tab} {empty} {empty} {empty} ® {empty} {empty} {empty} {empty} Ø {empty} {empty} {empty}","Æ § {empty} ª {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} ¦ < > © {empty} {empty} {empty} º {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Turkish Q"]={name:"ms-Turkish Q",lang:["tr"],normal:['" 1 2 3 4 5 6 7 8 9 0 * - {bksp}',"{tab} q w e r t y u ı o p ğ ü","a s d f g h j k l ş i , {enter}","{shift} < z x c v b n m ö ç . {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["é ! ' ^ + % & / ( ) = ? _ {bksp}","{tab} Q W E R T Y U I O P Ğ Ü","A S D F G H J K L Ş İ ; {enter}","{shift} > Z X C V B N M Ö Ç : {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["< > £ # $ ½ {empty} { [ ] } \\ | {bksp}","{tab} @ {empty} € {empty} {empty} {empty} {empty} i {empty} {empty} ¨ ~","æ ß {empty} {empty} {empty} {empty} {empty} {empty} {empty} ´ {empty} ` {enter}","{shift} | {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} İ {empty} {empty} {empty} {empty}","Æ {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Turkmen"]={name:"ms-Turkmen",lang:["tk"],normal:["ž 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ä w e r t y u i o p ň ö ş","a s d f g h j k l ; ' {enter}","{shift} \\ z ü ç ý b n m , . / {shift}","{accept} {space} {cancel}"],shift:["Ž ! @ # $ % № & * ( ) _ + {bksp}","{tab} Ä W E R T Y U I O P Ň Ö Ş",'A S D F G H J K L : " {enter}',"{shift} | Z Ü Ç Ý B N M < > / {shift}","{accept} {space} {cancel}"]};jQuery.keyboard.layouts["ms-Ukrainian"]={name:"ms-Ukrainian",lang:["uk"],normal:["ё 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} й ц у к е н г ш щ з х ї \\","ф і в а п р о л д ж є {enter}","{shift} ґ я ч с м и т ь б ю / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['Ё ! " № ; % : ? * ( ) _ + {bksp}',"{tab} Й Ц У К Е Н Г Ш Щ З Х Ї /","Ф І В А П Р О Л Д Ж Є {enter}","{shift} Ґ Я Ч С М И Т Ь Б Ю / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} ґ {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} Ґ {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-Ukrainian (Enhanced)"]={name:"ms-Ukrainian (Enhanced)",lang:["uk"],normal:["' 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} й ц у к е н г ш щ з х ї \\","ф і в а п р о л д ж є {enter}","{shift} ґ я ч с м и т ь б ю / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['₴ ! " № ; % : ? * ( ) _ + {bksp}',"{tab} Й Ц У К Е Н Г Ш Щ З Х Ї /","Ф І В А П Р О Л Д Ж Є {enter}","{shift} Ґ Я Ч С М И Т Ь Б Ю / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} ґ {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} Ґ {empty} {empty} {empty} {empty} {empty} {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-United Kingdom"]={name:"ms-United Kingdom",lang:["en-uk"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] #","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['¬ ! " £ $ % ^ & * ( ) _ + {bksp}',"{tab} Q W E R T Y U I O P { } ~","A S D F G H J K L : @ {enter}","{shift} | Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["¦ {empty} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} é {empty} {empty} {empty} ú í ó {empty} {empty} {empty} {empty}","á {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} É {empty} {empty} {empty} Ú Í Ó {empty} {empty} {empty} {empty}","Á {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["ms-United Kingdom Extended"]={name:"ms-United Kingdom Extended",lang:["en-uk"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] #","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['¬ ! " £ $ % ^ & * ( ) _ + {bksp}',"{tab} Q W E R T Y U I O P { } ~","A S D F G H J K L : @ {enter}","{shift} | Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["¦ {empty} ¨ {empty} € {empty} ^ {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} ẃ é {empty} {empty} ý ú í ó {empty} {empty} {empty} ~","á {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ´ {enter}","{shift} {empty} {empty} {empty} ç {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} Ẃ É {empty} {empty} Ý Ú Í Ó {empty} {empty} {empty} {empty}","Á {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ` {enter}","{shift} {empty} {empty} {empty} Ç {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Urdu"]={name:"ms-Urdu",lang:["ur"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ط ص ھ د ٹ پ ت ب ج ح ] [ \\","م و ر ن ل ہ ا ک ی ؛ ' {enter}","{shift} \\ ق ف ے س ش غ ع ، ۔ / {shift}","{accept} {space} {cancel}"],shift:["~ ! @ # $ ٪ ^ ۖ ٭ ) ( _ + {bksp}","{tab} ظ ض ذ ڈ ث ّ ۃ ـ چ خ } { |",'ژ ز ڑ ں ۂ ء آ گ ي : " {enter}',"{shift} | {ZWJ} {ZWNJ} ۓ {LRM} ؤ ئ {RLM} > < / {shift}","{accept} {space} {cancel}"]};jQuery.keyboard.layouts["ms-US-Dvorak"]={name:"ms-US-Dvorak",lang:["en"],normal:["` 1 2 3 4 5 6 7 8 9 0 [ ] {bksp}","{tab} ' , . p y f g c r l / = \\","a o e u i d h t n s - {enter}","{shift} ; q j k x b m w v z {shift}","{accept} {space} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) { } {bksp}",'{tab} " < > P Y F G C R L ? + |',"A O E U I D H T N S _ {enter}","{shift} : Q J K X B M W V Z {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-US-Dvorak for left hand"]={name:"ms-US-Dvorak for left hand",lang:["en"],normal:["` [ ] / p f m l j 4 3 2 1 {bksp}","{tab} ; q b y u r s o . 6 5 = \\","- k c d t h e a z 8 7 {enter}","{shift} ' x g v w n i , 0 9 {shift}","{accept} {space} {cancel}"],shift:["~ { } ? P F M L J $ # @ ! {bksp}","{tab} : Q B Y U R S O > ^ % + |","_ K C D T H E A Z * & {enter}",'{shift} " X G V W N I < ) ( {shift}',"{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-US-Dvorak for right hand"]={name:"ms-US-Dvorak for right hand",lang:["en"],normal:["` 1 2 3 4 j l m f p / [ ] {bksp}","{tab} 5 6 q . o r s u y b ; = \\","7 8 z a e h t d c k - {enter}","{shift} 9 0 x , i n w v g ' {shift}","{accept} {space} {cancel}"],shift:["~ ! @ # $ J L M F P ? { } {bksp}","{tab} % ^ Q > O R S U Y B : + |","& * Z A E H T D C K _ {enter}",'{shift} ( ) X < I N W V G " {shift}',"{accept} {space} {cancel}"]};jQuery.keyboard.layouts["ms-US English (Latin)"]={name:"ms-US English (Latin)",lang:["en"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {space} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M < > / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-US English (IBM Arabic 238_L)"]={name:"ms-US English (IBM Arabic 238_L)",lang:["en"],normal:["< 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] `","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {space} {cancel}"],shift:["> ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } ~",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M , . ? {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-US-International"]={name:"ms-US-International",lang:["en"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ]","a s d f g h j k l ; ' \\ {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { }",'A S D F G H J K L : " | {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ¡ ² ³ ¤ € ¼ ½ ¾ ‘ ’ ¥ × {bksp}","{tab} ä å é ® þ ü ú í ó ö « »","á ß ð {empty} {empty} {empty} {empty} {empty} ø ¶ ´ ¬ {enter}","{shift} æ {empty} © {empty} {empty} ñ µ ç {empty} ¿ {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} ¹ {empty} {empty} £ {empty} {empty} {empty} {empty} {empty} {empty} {empty} ÷ {bksp}","{tab} Ä Å É {empty} Þ Ü Ú Í Ó Ö {empty} {empty}","Á § Ð {empty} {empty} {empty} {empty} {empty} Ø ° ¨ ¦ {enter}","{shift} Æ {empty} ¢ {empty} {empty} Ñ {empty} Ç {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Uyghur"]={name:"ms-Uyghur",lang:["ug"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} چ ۋ ې ر ت ي ۇ ڭ و پ ] [ \\","ھ س د ا ە ى ق ك ل ؛ ' {enter}","{shift} ز ش غ ۈ ب ن م ، . / {shift}","{accept} {space} {cancel}"],shift:["~ ! @ # $ % ^ & * ) ( _ + {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} » « |",'{empty} {empty} ژ ف گ خ ج ۆ لا : " {enter}',"{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} > < / {shift}","{accept} {space} {cancel}"]},jQuery.keyboard.layouts["ms-Uyghur (Legacy)"]={name:"ms-Uyghur (Legacy)",lang:["ug"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} چ ۋ ې ر ت ي ۇ ڭ و پ ] [ \\","ھ س د ا ە ى ق ك ل ؛ ' {enter}","{shift} ز ش غ ۈ ب ن م ، . / {shift}","{accept} {space} {cancel}"],shift:["~ ! @ # $ % ^ & * ) ( _ + {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} » « |",'{empty} {empty} ژ ڧ گ خ ج ۆ لا : " {enter}',"{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} > < / {shift}","{accept} {space} {cancel}"]};jQuery.keyboard.layouts["ms-Uzbek Cyrillic"]={name:"ms-Uzbek Cyrillic",lang:["uz"],normal:["ё 1 2 3 4 5 6 7 8 9 0 ғ ҳ {bksp}","{tab} й ц у к е н г ш ў з х ъ \\","ф қ в а п р о л д ж э {enter}","{shift} \\ я ч с м и т ь б ю / {shift}","{accept} {space} {cancel}"],shift:['Ё ! " № ; % : ? * ( ) Ғ Ҳ {bksp}',"{tab} Й Ц У К Е Н Г Ш Ў З Х Ъ /","Ф Қ В А П Р О Л Д Ж Э {enter}","{shift} / Я Ч С М И Т Ь Б Ю / {shift}","{accept} {space} {cancel}"]};jQuery.keyboard.layouts["ms-Vietnamese"]={name:"ms-Vietnamese",lang:["vi"],normal:["` ă â ê ô ̀ ̉ ̃ ́ ̣ đ - ₫ {bksp}","{tab} q w e r t y u i o p ư ơ \\","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ Ă Â Ê Ô ̀ ̉ ̃ ́ ̣ Đ _ + {bksp}","{tab} Q W E R T Y U I O P Ư Ơ |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M < > {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Wolof"]={name:"ms-Wolof",lang:["wo"],normal:["ã & é \" ' ( - ñ _ ŋ à ) = {bksp}","{tab} a z e r t y u i o p ^ ó *","q s d f g h j k l m ù {enter}","{shift} < w x c v b n , ; : / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["à 1 2 3 4 5 6 7 8 9 0 É + {bksp}","{tab} A Z E R T Y U I O P ¨ Ó Ñ","Q S D F G H J K L M À {enter}","{shift} > W X C V B N ? . / / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} ~ # { [ | ` \\ ^ @ ] } {bksp}","{tab} {empty} {empty} € {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ¤ {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["ms-Yakut"]={name:"ms-Yakut",lang:["sah"],normal:['" ! нь дь ҥ ҕ ө һ ү ; : - = {bksp}',"{tab} й ц у к е н г ш щ з х ъ \\","ф ы в а п р о л д ж э {enter}",'{shift} " я ч с м и т ь б ю / {shift}',"{accept} {space} {cancel}"],shift:["№ ? Нь Дь Ҥ Ҕ Ө Һ Ү ( ) _ + {bksp}","{tab} Й Ц У К Е Н Г Ш Щ З Х Ъ /","Ф Ы В А П Р О Л Д Ж Э {enter}","{shift} № Я Ч С М И Т Ь Б Ю / {shift}","{accept} {space} {cancel}"]};jQuery.keyboard.layouts["ms-Yoruba"]={name:"ms-Yoruba",lang:["yo"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] {empty}","a s d f g h j k l ; ' {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} | Z X C V B N M < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} {empty} {empty} {empty} {empty} € {empty} {empty} {empty} ‘ ’ {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty}","ọ́ ọ̀ {empty} {empty} {empty} {empty} {empty} ẹ́ ẹ̀ ¶ {empty} {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} ¦","Ọ́ Ọ̀ {empty} {empty} {empty} {empty} {empty} Ẹ́ Ẹ̀ {empty} ¨ {enter}","{shift} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts.Persian={name:"Persian (Farsi)",lang:["fa"],normal:["~ ۱ ۲ ۳ ۴ ۵ ۶ ۷ ۸ ۹ ۰ - = {bksp}","{tab} ض ص ث ق ف غ ع ه خ ح ج چ پ","{lock} ش س ی ب ل ا ت ن م ك گ {enter}","{shift} ظ ط ز ژ ر ذ د ٸ و . ؟ {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["© ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} ً ٌ ٍ ® ، ؛ , ] [ } { × ±",'{lock} َ ُ ِ ّ ۀ آ ـ « » : " {enter}',"{shift} ة ي ° ؤ إ أ ء < > ¦ ÷ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","{lock} a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'{lock} A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["polish-qwerty"]={name:"polish-qwerty",lang:["pl"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] °","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w ę r t y € i ó p [ ] °",'ą ś d f g h j k ł : " {enter}',"{shift} ż ź ć v b ń m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["portuguese-qwerty"]={name:"portuguese-qwerty",lang:["pt"],normal:["\\ 1 2 3 4 5 6 7 8 9 0 ' « {bksp}","{tab} q w e r t y u i o p + ´","a s d f g h j k l ç º ~ {enter}","{shift} < z x c v b n m , . - {shift}","{cancel} {space} {alt} {combo} {accept}"],shift:['| ! " # $ % & / ( ) = ? » {bksp}',"{tab} Q W E R T Y U I O P * `","A S D F G H J K L Ç ª ^ {enter}","{shift} > Z X C V B N M ; : _ {shift}","{cancel} {space} {alt} {combo} {accept}"],alt:["\\ 1 @ £ § € 6 { [ ] } ' « {bksp}","{tab} q w € r t y u i o p ̈ ´","a s d f g h j k l ç º ~ {enter}","{shift} < z x c v b n m , . - {shift}","{cancel} {space} {alt} {combo} {accept}"],"alt-shift":['| ! " # $ % & / ( ) = ? » {bksp}',"{tab} Q W € R T Y U I O P ̈ `","A S D F G H J K L Ç ª ^ {enter}","{shift} > Z X C V B N M ; : _ {shift}","{cancel} {space} {alt} {combo} {accept}"]};jQuery.keyboard.layouts.romanian={normal:["„ 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p ă î â","a s d f g h j k l ș ț {enter}","{shift} \\ z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["” ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P Ă Î Â","A S D F G H J K L Ș Ț {enter}","{shift} | Z X C V B N M ; : ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` ̃ ̌ ̂ ̆ ̊ ̨ ̀ ̇ ́ ̋ ̈ ̧ {bksp}","{tab} a z € r t y u i o p { } \\","a ß đ f g h j k ł ; ' {enter}","{shift} \\ z x © v b n m < > / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ 1 2 3 4 5 6 7 8 9 0 – ± {bksp}","{tab} q w e r t y u i o p { } |",'a s Đ f g h j k Ł : " {enter}',"{shift} \\ z x c v b n m « » / {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["russian-qwerty"]={name:"Russian-qwerty",lang:["ru"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["ё 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} й ц у к е н г ш щ з х ъ \\","ф ы в а п р о л д ж э {enter}","{shift} я ч с м и т ь б ю . {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":['Ё ! " № ; € : ? * ( ) _ + {bksp}',"{tab} Й Ц У К Е Н Г Ш Щ З Х Ъ /","Ф Ы В А П Р О Л Д Ж Э {enter}","{shift} Я Ч С М И Т Ь Б Ю , {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["russian-mac"]={name:"Russian-mac",lang:["ru"],default:["] 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} й ц у к е н г ш щ з х ъ ё","ф ы в а п р о л д ж э {enter}","{shift} я ч с м и т ь б ю / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['[ ! " № % : , . ; ( ) _ + {bksp}',"{tab} Й Ц У К Е Н Г Ш Щ З Х Ъ Ё","Ф Ы В А П Р О Л Д Ж Э {enter}","{shift} Я Ч С М И Т Ь Б Ю ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["] ! @ # $ % ^ & * ( ) – » {bksp}","{tab} ј џ ќ ® † њ ѓ ѕ ў ‘ “ ъ ё","ƒ ы ћ ÷ © } ° љ ∆ … э {enter}","{shift} ђ ≈ ≠ µ и ™ ~ ≤ ≥ “ {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["[ | \" £ € ∞ ¬ ¶ √ ' ` — « {bksp}","{tab} Ј Џ Ќ ® † Њ Ѓ Ѕ Ў ’ ” Ъ Ё ","ƒ Ы Ћ ÷ © { • Љ ∆ … Э {enter}","{shift} Ђ ≈ ≠ µ И ™ ~ < > „ {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["sr-Cyrl"]={name:"Serbian Cyrillic (sr-Cyrl)",lang:["sr"],default:["` 1 2 3 4 5 6 7 8 9 0 ' + {bksp}","{tab} љ њ е р т з у и о п ш ђ ж"," а с д ф г х ј к л ч ћ {enter}","{shift} < ѕ џ ц в б н м , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['~ ! " # $ % & / ( ) = ? * {bksp}',"{tab} Љ Њ Е Р Т З У И О П Ш Ђ Ж"," А С Д Ф Г Х Ј К Л Ч Ћ {enter}","{shift} > Ѕ Џ Ц В Б Н М ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 ' + {bksp}","{tab} љ њ е р т з у и о п ш ђ ж"," а с д ф г х ј к л ч ћ {enter}","{shift} < ѕ џ ц в б н м , . - {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts.sr={name:"Serbian Latin (sr)",lang:["sr"],default:["¸ 1 2 3 4 5 6 7 8 9 0 ' + {bksp}","{tab} q w e r t z u i o p š đ ž"," a s d f g h j k l č ć {enter}","{shift} < y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['¨ ! " # $ % & / ( ) = ? * {bksp}',"{tab} Q W E R T Z U I O P Š Đ Ž"," A S D F G H J K L Č Ć {enter}","{shift} > Y X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["¸ 1 2 3 4 5 6 7 8 9 0 ' + {bksp}","{tab} q w e r t z u i o p š đ ž"," a s d f g h j k l č ć {enter}","{shift} < y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["sr-Cyrl-mac"]={name:"Serbian Cyrillic for Mac (sr-Cyrl)",lang:["sr"],default:["< 1 2 3 4 5 6 7 8 9 0 ' + {bksp}","{tab} љ њ е р т з у и о п ш ђ ж"," а с д ф г х ј к л ч ћ {enter}","{shift} ѕ џ ц в б н м , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['> ! " # $ % & / ( ) = ? * {bksp}',"{tab} Љ Њ Е Р Т З У И О П Ш Ђ Ж"," А С Д Ф Г Х Ј К Л Ч Ћ {enter}","{shift} Ѕ Џ Ц В Б Н М ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` † ° € „ ™ ∞ £ Ґ ¶ • – = {bksp}","{tab} q w e r t y u i o p [ ] ‘",' a s d f g h j k l ; " {enter}',"{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ! @ # “ % ^ & * ( ) — + {bksp}","{tab} Q W E R T Y U I O P { } ’"," A S D F G H J K L : ” {enter}","{shift} Z X C V B N M < > ? {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["sr-mac"]={name:"Serbian Latin for Mac (sr)",lang:["sr"],default:["< 1 2 3 4 5 6 7 8 9 0 / + {bksp}","{tab} q w e r t z u i o p š đ ž"," a s d f g h j k l č ć {enter}","{shift} y x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["> ! \" # $ % & ' ( ) = ? * {bksp}","{tab} Q W E R T Z U I O P Š Đ Ž"," A S D F G H J K L Č Ć {enter}","{shift} Y X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` ¡ ™ £ ¢ ∞ § ¶ • ª º - ≠ {bksp}","{tab} œ ∑ ´ ® † — ¨ ^ ø π [ ] ","å ß ∂ ƒ © ̏ ∆ ̑ ¬ … ^ {enter}","{shift} Ω ≈ ç √ ∫ ~ µ ≤ ≥ ÷ {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ ⁄ @ ‹ › € ı – ° · ‚ _ ± {bksp}","{tab} Œ „ ‰ “ ‘ ” ’ É Ø ∏ { } |","Å Í Î Ï Ì Ó Ô Ò æ Æ {enter}","{shift} « » Ç ◊ Ñ ˆ ¯ È ˇ ¿ {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["spanish-qwerty"]={name:"spanish-qwerty",lang:["es"],normal:["| 1 2 3 4 5 6 7 8 9 0 ' ¿ {bksp}","{tab} q w e r t y u i o p ́ +","a s d f g h j k l ñ { } {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['° ! " # $ % & / ( ) = ? ¡ {bksp}',"{tab} Q W E R T Y U I O P ̈ *","A S D F G H J K L Ñ [ ] {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["¬ 1 2 3 4 5 6 7 8 9 0 \\ ¿ {bksp}","{tab} @ w e r t y u i o p ́ ̃","a s d f g h j k l ñ ̂ ̀ {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":['° ! " # $ % & / ( ) = ? ¡ {bksp}',"{tab} Q W E R T Y U I O P ̈ *","A S D F G H J K L Ñ [ ] {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["spanish-qwerty-sp"]={name:"spanish-qwerty-sp",lang:["es"],normal:["º 1 2 3 4 5 6 7 8 9 0 ' ¡ {bksp}","{tab} q w e r t y u i o p ̀ +","a s d f g h j k l ñ ́ ç {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['ª ! " · $ % & / ( ) = ? ¿ {bksp}',"{tab} Q W E R T Y U I O P ^ *","A S D F G H J K L Ñ ̈ Ç {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["\\ | @ # 4 5 ¬ 7 8 9 0 ' ¡ {bksp}","{tab} q w e r t y u i o p [ ]","a s d f g h j k l ñ { } {enter}","{shift} | z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":['ª ! " · $ % & / ( ) = ? ¿ {bksp}',"{tab} Q W E R T Y U I O P [ ]","A S D F G H J K L Ñ { } {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["swedish-qwerty"]={name:"swedish-qwerty",lang:["sv"],normal:["§ 1 2 3 4 5 6 7 8 9 0 + ́ {bksp}","{tab} q w e r t y u i o p å ̈","a s d f g h j k l ö ä ' {enter}","{shift} < z x c v b n m , . - {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['½ ! " # ¤ % & / ( ) = ? ̀ {bksp}',"{tab} Q W E R T Y U I O P Å ̂","A S D F G H J K L Ö Ä * {enter}","{shift} > Z X C V B N M ; : _ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["§ 1 @ £ $ 5 6 { [ ] } \\ ́ {bksp}","{tab} q w € r t y u i o p å ̃","a s d f g h j k l ö ä ' {enter}","{shift} | z x c v b n µ , . - {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["swedish-dvorak"]={name:"swedish-qwerty",lang:["sv"],normal:["§ 1 2 3 4 5 6 7 8 9 0 + ́ {bksp}","{tab} ö å ä p y f g c r l q ¨","a o e u i d h t n s - < {enter}","{shift} ' , . j k x b m w v z {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:['½ ! " # ¤ % & / ( ) = ? ` {bksp}',"{tab} Ö Å Ä P Y F G C R L Q ^","A O E U I D H T N S _ > {enter}","{shift} * ; : J K X B M W V Z {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["§ 1 @ £ $ 5 6 { [ ] } \\ ´ {bksp}","{tab} ö å ä p y f g c r l q ~","a o e u i d h t n s - | {enter}","{shift} ' , . j k x b m w v z {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts.syriac={name:"syriac-surayt",lang:["syr"],normal:[" 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ܔ ܨ ܖ ܩ ܦ ܜ ܥ ܗ ܞ ܚ ܓ ܕ ܆","ܫ ܣ ܝ ܒ ܠ ܐ ܬ ܢ ܡ ܟ ܛ {enter}","{shift} ܆ ] [ ܤ ܪ ܧ ܀ . ܘ ܙ / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["̮ ! ̊ ̥ ݉ ♰ ♱ ܊ » ) ( « + {bksp}","{tab} ܰ ܳ ܶ ܺ ܽ ݀ ݁ ̈ ̄ ̇ ̃ ݊ :","ܱ ܴ ܷ ܻ ܾ ܑ ـ ̤ ̱ ̣ ̰ {enter}","{shift} : ܲ ܵ ܸ ܼ ܿ ܹ ݂ ، ؛ / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["ّ ܁ ܂ ܃ ܄ ܅ ܈ ܉ ܋ ܌ ܍ ┌ ┐ {bksp}","{tab} َ ً ُ ٌ ٓ ٔ ݇ ݃ ݅ ̭ {empty} {empty} {empty}","ِ ٍ {empty} ء ٕ ٰ ݈ ݄ ݆ {empty} {empty} {enter}","{shift} {empty} {empty} ْ {empty} {ZWJ} {ZWNJ} {LRM} {RLM} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["syriac-phonetic"]={name:"syriac-surayt-phonetic",lang:["syr"],normal:[" 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ܩ ܘ ܖ ܪ ܬ ܝ ܜ ܥ ܧ ܦ ] [ ܆","ܐ ܣ ܕ ܔ ܓ ܗ ܛ ܟ ܠ ܚ ܞ {enter}","{shift} ܆ ܙ ܨ ܤ ܫ ܒ ܢ ܡ ܀ . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["̮ ! ̊ ̥ ݉ ♰ ♱ ܊ » ) ( « + {bksp}","{tab} ܰ ܳ ܶ ܺ ܽ ݀ ݁ ̈ ̄ ̇ ̃ ݊ :","ܱ ܴ ܷ ܻ ܾ ܑ ـ ̤ ̱ ̣ ̰ {enter}","{shift} : ܲ ܵ ܸ ܼ ܿ ܹ ݂ ، ؛ / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["ّ ܁ ܂ ܃ ܄ ܅ ܈ ܉ ܋ ܌ ܍ ┌ ┐ {bksp}","{tab} َ ً ُ ٌ ٓ ٔ ݇ ݃ ݅ ̭ {empty} {empty} {empty}","ِ ٍ {empty} ء ٕ ٰ ݈ ݄ ݆ {empty} {empty} {enter}","{shift} {empty} {empty} ْ {empty} {ZWJ} {ZWNJ} {LRM} {RLM} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["syriac-latin"]={name:"syriac-surayt-latin",lang:["syr"],normal:["' 1 2 3 4 5 6 7 ḏ ḥ ḍ ṣ š {bksp}","{tab} q w e r t y u i o p ṭ ṯ","a s d f g h j k l ë ä ġ {enter}","{shift} X z x c v b n m ž č . {shift}","{accept} {space} {cancel}"],shift:['8 9 0 ! " % ? Ḏ Ḥ Ḍ Ṣ Š {bksp}',"{tab} Q W E R T Y U I O P Ṭ Ṯ","A S D F G H J K L Ë Ä Ġ {enter}","{shift} {empty} Z X C V B N M Ž Č , {shift}","{accept} {space} {cancel}"]};jQuery.keyboard.layouts["tamil-tamil99-mod"]={name:"tamil-tamil99-mod",lang:["ta"],normal:["ா ி ீ ு ூ ெ ே ை ொ ோ ௌ ஃ {bksp}","{tab} ஆ ஈ ஊ ஐ ஏ ள ற ன ட ண ச ஞ ","அ இ உ ் எ க ப ம த ந ய {enter}","{shift} ஔ ஓ ஒ வ ங ல ர , . ழ {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} ஸ ஷ ஜ ஹ ஶ்ரீ க்ஷ [ ] { } ","௹ ௺ ௸ ஃ \" : ; ' {enter}","{shift} ௳ ௴ ௵ ௶ ௷ / / {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ | @ # $ % ¬ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P ! ¦ ¢",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M { } ? {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["thai-qwerty"]={name:"thai-qwerty",lang:["th"],normal:["_ ๅ / - ภ ถ ุ ึ ค ฅ จ ข ช {bksp}","{tab} ๆ ไ ำ พ ะ ั ี ร น ย บ ล ฃ ","ฟ ห ก ด เ ้ ่ า ส ว ง {enter}","{shift} ผ ป แ อ ิ ื ท ม ใ ฝ {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["% + ๑ ๒ ๓ ๔ ู ฿ ๕ ๖ ๗ ๘ ๙ {bksp}",'{tab} ๐ " ฎ ฑ ธ ํ ๊ ณ ฯ ญ ฐ , ฅ',"ฤ ฆ ฏ โ ฌ ็ ๋ ษ ศ ซ . {enter}","{shift} ( ) ฉ ฮ ฺ ์ ? ฒ ฬ ฦ {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["~ | @ # $ % ¬ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P ! ¦ ¢",'A S D F G H J K L : " {enter}',"{shift} Z X C V B N M { } ? {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["turkish-q"]={name:"turkish-q",lang:["tr"],normal:['" 1 2 3 4 5 6 7 8 9 0 * - {bksp}',"{tab} q w e r t y u ı o p ğ ü","{lock} a s d f g h j k l ş i , {enter}","{shift} < z x c v b n m ö ç . {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["é ! ' ̂ + % & / ( ) = ? _ {bksp}","{tab} Q W E R T Y U I O P Ğ Ü","{lock} A S D F G H J K L Ş İ ; {enter}","{shift} > Z X C V B N M Ö Ç : {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:['" 1 £ # $ ½ 6 { [ ] } \\ - {bksp}',"{tab} @ w € r t y u ı o p ̈ ̃","{lock} a s d f g h j k l ́ i ̀ {enter}","{shift} | z x c v b n m ö ç . {shift}","{accept} {alt} {space} {alt} {cancel}"]},jQuery.keyboard.layouts["turkish-f"]={name:"turkish-f",lang:["tr"],normal:["+ 1 2 3 4 5 6 7 8 9 0 / - {bksp}","{tab} f g ğ ı o d r n h p q w","{lock} u i e a ü t k m l y ş x {enter}","{shift} < j ö v c ç z s b . , {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["* ! \" ̂ $ % & ' ( ) = ? _ {bksp}","{tab} F G Ğ I O D R N H P Q W","{lock} U İ E A Ü T K M L Y Ş X {enter}","{shift} > J Ö V C Ç Z S B : ; {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["¬ ¹ ² # ¼ ½ ¾ { [ ] } \\ - {bksp}","{tab} @ g ğ ı o ¥ r n h £ ̈ ̃","{lock} u ß € a ü t k m l ́ ş ̀ {enter}","{shift} | « » v c ç z s × ÷ , {shift}","{accept} {alt} {space} {alt} {cancel}"]};jQuery.keyboard.layouts["vietnamese-qwerty"]={name:"vietnamese-qwerty",lang:["vi"],normal:["` 1 2 3 4 5 6 7 8 9 0 - = {bksp}","{tab} q w e r t y u i o p [ ] \\","a s d f g h j k l ; ' {enter}","{shift} z x c v b n m < > , . / {shift}","{accept} {alt} {space} {alt} {cancel}"],shift:["~ ! @ # $ % ^ & * ( ) _ + {bksp}","{tab} Q W E R T Y U I O P { } |","A S D F G H J K L : ' {enter}","{shift} Z X C V B N M < > ; : ? {shift}","{accept} {alt} {space} {alt} {cancel}"],alt:["{empty} ă â ê ô {empty} ̛ {empty} {empty} {empty} đ - ₫ {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} ÿ {empty} {empty} œ {empty} ư ơ {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { } ̂ {enter}","{shift} {empty} {empty} ç {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"],"alt-shift":["{empty} Ă Â Ê Ô {empty} {empty} {empty} {empty} {empty} Đ _ + {bksp}","{tab} {empty} {empty} {empty} {empty} {empty} Ÿ {empty} {empty} Œ {empty} Ư Ơ {empty}","{empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} { } ̈ {enter}","{shift} {empty} {empty} Ç {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {empty} {shift}","{accept} {alt} {space} {alt} {cancel}"]}; \ No newline at end of file diff --git a/koha-tmpl/intranet-tmpl/lib/koha/cateditor/marc-editor.js b/koha-tmpl/intranet-tmpl/lib/koha/cateditor/marc-editor.js index af20307ca2..c6249e58c4 100644 --- a/koha-tmpl/intranet-tmpl/lib/koha/cateditor/marc-editor.js +++ b/koha-tmpl/intranet-tmpl/lib/koha/cateditor/marc-editor.js @@ -241,6 +241,11 @@ define( [ 'marc-record', 'koha-backend', 'preferences', 'text-marc', 'widget' ], cm.replaceRange( "‡", cur, null ); } + _editorKeys[toggle_keyboard] = function( cm ) { + let keyboard = $(cm.getInputField()).getkeyboard(); + keyboard.isVisible()?keyboard.close():keyboard.reveal(); + } + // The objects below are part of a field/subfield manipulation API, accessed through the base // editor object. // @@ -493,6 +498,79 @@ define( [ 'marc-record', 'koha-backend', 'preferences', 'text-marc', 'widget' ], } } ); + var inf = this.cm.getInputField(); + var self = this; + var kb = $(inf).keyboard({ + //keyBinding: "mousedown touchstart", + usePreview: false, + lockInput: false, + autoAccept: true, + autoAcceptOnEsc: true, + userClosed: true, + //alwaysOpen: true, + openOn : '', + position: { + of: $("#statusbar"), // optional - null (attach to input/textarea) or a jQuery object (attach elsewhere) + my: 'center top', + at: 'center bottom', + at2: 'center bottom' // used when "usePreview" is false (centers keyboard at bottom of the input/textarea) + }, + beforeInsert: function(evnt, keyboard, elem, txt) { + var position = self.cm.getCursor(); + if (txt === "\b") { + self.cm.execCommand("delCharBefore"); + } + if (txt === "\b" && position.ch === 0 && position.line !== 0) { + elem.value = self.cm.getLine(position.line) || ""; + txt = ""; + } + return txt; + }, + visible: function() { + $('#set-keyboard-layout').removeClass('hide'); + }, + hidden: function(e, keyboard, el, accepted) { + inf.focus(); + $('#set-keyboard-layout').addClass('hide'); + } + }).getkeyboard(); + + + Object.keys($.keyboard.layouts).forEach(function(layout) { + var div = $('#keyboard-layout .layouts').append('<div class="layout" data-layout="'+layout+'" data-name="'+($.keyboard.layouts[layout].name||layout)+'" >'+($.keyboard.layouts[layout].name||layout)+'</div>') + if(kb.layout == layout) { + div.addClass('active'); + } + }); + $('#keyboard-layout') + .on('show.bs.modal', function() { + kb.close(); + $('#keyboard-layout .filter').focus(); + $('#set-keyboard-layout').removeClass('hide'); + }) + .on('hide.bs.modal', function() { + !kb.isVisible() && kb.reveal(); + }); + $('#keyboard-layout .layout').click(function(event) { + $('#keyboard-layout .layout').removeClass('active'); + $(this).addClass('active'); + var layout = $(this).data().layout; + kb.redraw(layout); + $('#keyboard-layout').modal('hide'); + $('#keyboard-layout .filter').val(''); + $('#keyboard-layout .layout').show(); + }); + $('#keyboard-layout .filter').keyup(function() { + var val = $(this).val(); + if(!val||!val.length) return $('#keyboard-layout .layout').show(); + var filter = new RegExp(val, 'i'); + $('#keyboard-layout .layout').hide(); + $('#keyboard-layout .layout').each(function() { + var name = $(this).data().name; + if(filter.test(name)) $(this).show(); + }) + }); + this.cm.marceditor = this; this.cm.on( 'beforeChange', editorBeforeChange ); diff --git a/koha-tmpl/intranet-tmpl/prog/css/cateditor.css b/koha-tmpl/intranet-tmpl/prog/css/cateditor.css index c2c0e05531..277a1b1aa6 100644 --- a/koha-tmpl/intranet-tmpl/prog/css/cateditor.css +++ b/koha-tmpl/intranet-tmpl/prog/css/cateditor.css @@ -461,4 +461,16 @@ body { border-radius: 6px 6px 0 0; margin-bottom: -32px; } +} + +#keyboard-layout .layouts { + column-count: 2; +} + +#keyboard-layout .layouts > div { + cursor: pointer; +} + +.ui-keyboard-accept { + display: none; } \ No newline at end of file diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/cateditor-ui.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/cateditor-ui.inc index a5734ff619..da2201ce07 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/cateditor-ui.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/cateditor-ui.inc @@ -2,6 +2,10 @@ [% USE Koha %] [% Asset.js("lib/codemirror/codemirror-compressed.js") | $raw %] [% Asset.js("lib/filesaver.js") | $raw %] +[% Asset.css("lib/keyboard/css/keyboard.min.css") | $raw %] +[% Asset.js("lib/keyboard/js/jquery.keyboard.js") | $raw %] +[% Asset.js("lib/keyboard/languages/all.min.js") | $raw %] +[% Asset.js("lib/keyboard/layouts/all.min.js") | $raw %] [% Asset.js("lib/koha/cateditor/marc-mode.js") | $raw %] [% Asset.js("lib/require.js") | $raw %] <script> diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/keyboard_shortcuts.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/keyboard_shortcuts.inc index e04e4e79c6..e735300fdf 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/keyboard_shortcuts.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/keyboard_shortcuts.inc @@ -11,5 +11,6 @@ [%- CASE 'line_break' -%]<span>Insert line break</span> [%- CASE 'next_position' -%]<span>Move to next position</span> [%- CASE 'prev_position' -%]<span>Move to previous position</span> + [%- CASE 'toggle_keyboard' -%]<span>Toggle Keyboard</span> [%- END -%] [%- END -%] diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/editor.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/editor.tt index d313fd982a..c72bc92bdb 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/editor.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/editor.tt @@ -79,6 +79,7 @@ </div> <button class="btn btn-default" id="show-alerts" title="Previous alerts"><i class="fa fa-bell"></i> Alerts <span class="caret"></span></button> <button class="btn btn-default" id="show-shortcuts" title="Supported keyboard shortcuts"><i class="fa fa-keyboard-o"></i> Keyboard shortcuts <span class="caret"></span></button> + <button class="btn btn-default hide" id="set-keyboard-layout" data-target="#keyboard-layout" data-toggle="modal" title="Set virtual keyboard layout"><i class="fa fa-keyboard-o"></i> Keyboard layout </button> </div> [%# CodeMirror instance will be inserted here %] <div id="statusbar"> @@ -268,6 +269,25 @@ </div> </div> +<div id="keyboard-layout" class="modal fade" role="dialog"> + <div class="modal-dialog"> + <div class="modal-content"> + <div class="modal-header"> + <button type="button" class="closebtn" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button> + <h4 class="modal-title">Set virtual keyboard layout</h4> + </div> + <div class="modal-body"> + <div class="form-group"> + <label for="exampleInputEmail1">Filter layouts</label> + <input type="search" class="form-control filter"/> + </div> + <hr/> + <div class="layouts"></div> + </div> + </div> + </div> +</div> + <div id="shortcuts-contents" style="display: none"> [% IF ( CAN_user_parameters_manage_keyboard_shortcuts ) %] <a id="redefine_shortcuts" href="/cgi-bin/koha/admin/adveditorshortcuts.pl">Redefine shortcuts</a> -- 2.22.0