-
Notifications
You must be signed in to change notification settings - Fork 723
Language
Options: language | display | wheelMessage | comboRegex | combos | rtl (right-to-left) | Example
Notes:
-
Location: There is a a source
languages
folder which is processed, compressed and copied into thedist/languages
folder (don't edit the language files here because they will be over-written). -
File name: The language file name and definition within each layout file is set to use the ISO 639-1 code for the language. For example, for the Albanian language, the code is "sq".
-
Partially complete: Some language files that have been partially complete will include
untranslated
in the file name, e.g.ar.untranslated.js
. Any help in translating these files would be greatly appreciated. -
Missing: If the language file is missing, then create the file using the aforementioned naming convention and copy/paste the content of the
_language_template.js
file into the new file and modify it as needed. -
Content: Each block within this language definition is described in more detail below.
jQuery.keyboard.language.sq = { display : [Object], wheelMessage : [String], comboRegex : [RegExp], combos : [Object], rtl : [Boolean] }
- If set to a matching ISO 639-1 code, the language setting from that language will override the layout set language.
- Default is
null
to allow the layout set language to be used.
-
Use button language, symbol options or add custom HTML, like an
img
element (added in v1.25.23; updated in v1.30.0). -
Change the displayed button text by modifying the value, in the 'key':'value' pair, with the text or symbol you want to use.
-
The value portion can have another colon ":" inside (e.g.
'\u21e5:Tab'
). Anything left of the colon will appear on the virtual keyboard button. Anything to the right will be added to the title and appear while hovering over the button. -
The default values are shown in the following list. The abbreviated names contain only a symbol so as to fit the layout style as desired:
-
'a' : '\u2714:Accept (Shift-Enter)'
- Alternate accept button - unicode for check mark symbol -
'accept' : 'Accept:Accept (Shift-Enter)'
- Accept button text -
'alt' : 'AltGr:Alternate Graphemes'
- Alt button text (AltGr is for international key sets) -
'b' : '\u2190:Backspace'
- Alternate backspace button - unicode for left arrow. Same as ← -
'bksp' : 'Bksp:Backspace'
- Backspace button text -
'c' : '\u2716:Cancel (Esc)'
- Alternate cancel button - unicode for big X -
'cancel' : 'Cancel:Cancel (Esc)
- Cancel button text -
'clear' : 'C:Clear'
- Clear window content (used in num pad) -
'combo' : '\u00f6:Toggle Combo Keys'
- Toggle combo (diacritic) key -
'dec' : '.:Decimal'
- Decimal point for num pad (optional), change '.' to ',' for European format -
'e' : '\u21b5:Enter'
- Alternate enter button - unicode for down, then left arrow (enter symbol) -
'empty' : '\u00a0'
- Empty button (non-breaking space) -
'enter' : 'Enter:Enter'
- Enter button text -
'left' : '\u2190'
- Left arrow (move caret) -
'lock' : '\u21ea Lock:Caps Lock'
- Caps lock button - unicode for double lined up arrow -
'next' : 'Next \u21e8'
- Go to next input/textarea -
'prev' : '\u21e6 Prev'
- Go to previous input/textarea -
'right' : '\u2192'
- Right arrow (move caret) -
's' : '\u21e7:Shift'
- Alternate shift button - unicode for a thick up arrow -
'shift' : 'Shift:Shift'
- Shift button text -
'sign' : '\u00b1:Change Sign'
- Change sign (used in num pad) - unicode for a +- symbol -
'space' : ' :Space'
- Space button text -
't' : '\u21e5:Tab'
- Alternate tab button - unicode for right arrow to bar (used since only one directional tabs available) -
'tab' : '\u21e5 Tab:Tab'
- Tab button text (Note: \u21b9 is the true tab symbol (left & right arrows) but not used here) -
'toggle' : ' '
- Toggle keyboard (replaced by a background image; used to enable or disable all keys & input)
-
-
In v1.25.9, the following default values were added. This content is only shown in the title of the key to show the state of the key:
- 'valid' : 'valid' - Added to the accept key title when
acceptValid
istrue
& thevalidate
function returnstrue
. - 'invalid' : 'invalid' - Added to the accept key title when
acceptValid
istrue
& thevalidate
function returnsfalse
. - 'active' : 'active' - Added to the combo key title when combo keys are active (
useCombos
istrue
). - 'disabled' : 'disabled' - Added to the combo key title when combo keys are disabled (
useCombos
isfalse
).
- 'valid' : 'valid' - Added to the accept key title when
-
In v1.25.23, basic HTML can be added to any display value, e.g
display: { 'emotes' : '<img src="emotes-icon">' }
-
In v1.30.0, the
display
option will allow adding raw HTML (action keys only). The entry will now not be processed, so any colons (:
) in the string will be ignored. E.g,display: { 'red': '<span style="color:red">Red</span>' }
The resulting key's HTML will look something like this (trucated for readability):
<button class="ui-keyboard-red" ...> <span class="ui-keyboard-text"> <span style="color:red">Red</span> </span> </button>
- Message to tell users about the hidden feature.
- This message is only added when a key on the keyboard is hovered over.
- The text is added to the title attribute of the key, so if you want to have a tooltip attached to it. You will probably need a 'live' tooltip that targets the 'ui-keyboard-button' class.
- The default (English) message is
'Use mousewheel to see other keys'
.
- Include any additional combo keys used for the language within this regular expression.
- This regular expression will override the default from
$.keyboard.comboRegex
. - The default contained within the
$.keyboard.comboRegex
is/([`\'~\^\"ao])([a-z])/mig
.
-
Add desired combo keys using this format
combos : { '/' : { d:"\u0111", D:"\u0110", l:"\u0142", L:"\u0141" } // stroke đ Đ ł Ł }
-
The "key" is a forward-slash (
'/'
) in the above example. -
The object that follows contains the symbol which when combined with the key will result in a combo, e.g. (
/d
becomesđ
) -
To remove any existing combos, just set the key to an empty object:
"'" : {} // remove apostrophe combo
-
Boolean flag indicating that a language is in the direction from right-to-left
-
This flag adds a css definition of
direction: rtl
whentrue
-
If you want the text to align to the right within the input/textarea, then define a rtl css definition:
rtl { text-align: right; }
-
By default, this option is
false
.
- This is the Albanian language file
/* Albanian keyboard layouts
* contains layout: 'albanian-qwertz' & 'albanian-qwerty'
*
* To use:
* Point to this js file into your page header: <script src="layouts/albanian.js" type="text/javascript"></script>
* Initialize the keyboard using: jQuery('input').keyboard({ layout: 'albanian-qwertz' });
*
* To do: add combos appropriate to the Albanian language
* missing caron, breve, ring, ogonek, double acute accent, diaeresis and cedilla accents.
*
* license for this file: WTFPL, unless the source layout site has a problem with me using them as a reference
*/
/* qwertz-albanian
combined from http://en.wikipedia.org/wiki/File:Albanian_keyboard_layout.jpg,
http://ascii-table.com/keyboard.php/448 & http://www.google.com/webelements/ */
jQuery.keyboard.layouts['albanian-qwertz'] = {
'name' : 'Albanian-qwertz',
'lang' : ['sq'],
'default' : [
"\\ 1 2 3 4 5 6 7 8 9 0 - = {bksp}",
"{tab} q w e r t z u i o p \u00e7 '",
"a s d f g h j k l \u00eb [ ] {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 \u00c7 @",
"A S D F G H J K L \u00cb { } {enter}",
"{shift} > Y X C V B N M ; : ? {shift}",
"{accept} {alt} {space} {alt} {cancel}"
],
'alt' : [
"\\ ~ \u02c7 ^ \u02d8 \u00b0 \u02db ` \u02d9 \u00b4 \u02dd \u00a8 \u00b8 {bksp}",
"{tab} q w \u20ac r t z u i o p \u00f7 \u00d7",
"\u00e4 \u0111:Shortcut_(\/d) \u0110:Shortcut_(\/D) f g h j \u0142:Shortcut_(\/l) \u0141:Shortcut_(\/L) $ \u00df \u00a4 {enter}",
"{shift} < y x c @ { } \u00a7 < > / {shift}",
"{accept} {alt} {space} {alt} {cancel}"
]
};
/* based on http://ascii-table.com/keyboard.php/452 */
jQuery.keyboard.layouts['albanian-qwerty'] = {
'name' : 'Albanian-qwerty',
'lang' : ['sq'],
'default' : [
"` 1 2 3 4 5 6 7 8 9 0 - = {bksp}",
"{tab} q w e r t y u i o p \u00eb '",
"a s d f g h j k l ; \u00e7 # {enter}",
"{shift} \\ z x c v b n m , . / {shift}",
"{accept} {alt} {space} {alt} {cancel}"],
'shift' : [
'\u00ac ! " \u00a7 $ % ^ & * ( ) _ + {bksp}',
"{tab} Q W E R T Y U I O P \u00cb @",
"A S D F G H J K L : \u00c7 ~ {enter}",
"{shift} \u00a6 Z X C V B N M < > ? {shift}",
"{accept} {alt} {space} {alt} {cancel}"
],
'alt' : [
"| 1 2 3 4 5 6 { } [ ] - = {bksp}",
"{tab} q w \u20ac r t y u i o p \u00f7 \u00d7",
"a s d f g h j k l ; \u00e7 # {enter}",
"{shift} \\ z x c v b n m , . / {shift}",
"{accept} {alt} {space} {alt} {cancel}"
],
'alt-shift' : [
'| ! " \u00a7 $ % ^ & * ( ) _ + {bksp}',
"{tab} Q W \u20AC R T Y U I O P \u00cb @",
"A S D F G H J K L : \u00c7 ~ {enter}",
"{shift} \u00a6 Z X C V B N M < > ? {shift}",
"{accept} {alt} {space} {alt} {cancel}"
]
};
// Keyboard Language
// please update this section to match this language and email me with corrections!
// sq = ISO 639-1 code for Albanian
// ***********************
jQuery.keyboard.language.sq = {
display : {
'a' : '\u2714:Prano (Shift-Enter)', // check mark - same action as accept
'accept' : 'Prano:Prano (Shift-Enter)',
'alt' : 'Alt:Alternativ',
'b' : '\u2190:Hapësirën Mbrapa', // Left arrow (same as ←)
'bksp' : 'Bksp:Hapësirën Mbrapa',
'c' : '\u2716:Anuloj (Arratisjes)', // big X, close - same action as cancel
'cancel' : 'Anuloj:Anuloj (Arratisjes)',
'clear' : 'C:Qartë', // clear num pad
'combo' : '\u00f6:Kombinimi',
'dec' : '.:Decimal', // decimal point for num pad (optional), change '.' to ',' for European format
'e' : '\u21b5:Shkruani', // down, then left arrow - enter symbol
'enter' : 'Shkruani:Shkruani',
'lock' : '\u21ea Bllokoj:Caps Lock', // caps lock
's' : '\u21e7:Ndryshim', // thick hollow up arrow
'shift' : 'Ndryshim:Ndryshim',
'sign' : '\u00b1:Ndryshimi Regjistrohu', // +/- sign for num pad
'space' : ' :Hapësirë',
't' : '\u21e5:Tab', // right arrow to bar (used since this virtual keyboard works with one directional tabs)
'tab' : '\u21e5 Tab:Tab', // \u21b9 is the true tab symbol (left & right arrows)
'toggle' : ' ', // replaced by an image
},
// Message added to the key title while hovering, if the mousewheel plugin exists
wheelMessage : 'P\u00ebrdorimi mousewheel p\u00ebr t\u00eb par\u00eb \u00e7el\u00ebsat e tjera',
// New combos using specific accents
// Not sure what to do with these accents: ˇ ˘ ˙ ° ˛ ˝
comboRegex : /([`\'~\^\"ao\/\u00a8\u00b8])([a-z])/gim,
combos : {
// duplicated from regular combos, used specific accents here instead ("); \u00a8 = ¨
'\u00a8' : { a:"\u00e4", A:"\u00c4", e:"\u00eb", E:"\u00cb", i:"\u00ef", I:"\u00cf", o:"\u00f6", O:"\u00d6", u:"\u00fc", U:"\u00dc", y:"\u00ff", Y:"\u0178" }, // umlaut/trema
'\u00b8' : { c:"\u00e7", C:"\u00c7" }, // cedilla ç Ç
// new combos below ( forward slash + d, forward slash + l )
'/' : { d:"\u0111", D:"\u0110", l:"\u0142", L:"\u0141" } // stroke đ Đ ł Ł
}
};
Home | FAQ | Setup | Usage | Options | Methods | Contenteditable | Theme | Log
Options: Layout | Language | Usability | Actions
Extensions: AltKeysPopup | Autocomplete | Caret | Extender | Mobile | Navigation | PreviewKeySet | Scramble | Typing