Update jquery.ime from upstream

* UI improvements, fixes
* More input methods
* Misc functionality fixes

Change-Id: I1a516027e9654a498e4e87c83f8d72ad24eb5596
This commit is contained in:
Santhosh Thottingal
2012-11-19 10:57:32 +05:30
committed by Gerrit Code Review
parent e3e0be19f2
commit f8947b9686
20 changed files with 1282 additions and 37 deletions

View File

@@ -1,19 +1,28 @@
.imeselector {
position: absolute;
/* @embed */
background: url('../images/ime-active.png') no-repeat left center;
background: url('../images/ime-active.png') no-repeat 3px center rgba(255,255,255,0.75);
cursor: pointer;
height: 15px;
margin: 1px 0 0;
font-size: small;
padding-left: 20px;
padding: 2px 2px 1px 20px;
box-shadow: 0 1px 3px 0 #777;
margin-top: 0;
-webkit-transition: opacity 0.24s ease, margin-top 0.24s ease;
-moz-transition: opacity 0.24s ease, margin-top 0.24s ease;
-o-transition: opacity 0.24s ease, margin-top 0.24s ease;
text-align: left;
font-family: 'sans';
white-space: nowrap;
z-index: 9999;
}
div.imeselector:hover {
box-shadow: 0 1px 3px 0 #565656;
border-top: none;
background-color: rgba(255,255,255,0.85);
}
.imeselector a {
text-decoration: none;
outline: none;
@@ -23,20 +32,18 @@
padding-bottom: 4px;
}
.imeselector .caret {
.ime-setting-caret {
margin-left: 2px;
margin-top: 8px;
}
.caret {
border-left: 4px solid transparent;
border-right: 4px solid transparent;
border-top: 4px solid #000000;
border-top: 4px solid #565656;
content: "";
display: inline-block;
height: 0;
vertical-align: top;
width: 0;
}
span.ime-disable-link {

Binary file not shown.

Before

Width:  |  Height:  |  Size: 356 B

After

Width:  |  Height:  |  Size: 400 B

View File

@@ -0,0 +1,56 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 15.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
id="Layer_1"
x="0px"
y="0px"
width="32"
height="23.5625"
viewBox="0 0 32 23.5625"
enable-background="new 0 0 32 32"
xml:space="preserve"
inkscape:version="0.48.3.1 r9886"
sodipodi:docname="ime-active.svg"><metadata
id="metadata7"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title /></cc:Work></rdf:RDF></metadata><defs
id="defs5" /><sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1920"
inkscape:window-height="1024"
id="namedview3"
showgrid="false"
showguides="true"
inkscape:guide-bbox="true"
inkscape:zoom="11.313709"
inkscape:cx="24.246418"
inkscape:cy="9.7406437"
inkscape:window-x="0"
inkscape:window-y="27"
inkscape:window-maximized="1"
inkscape:current-layer="Layer_1"
fit-margin-top="0"
fit-margin-left="0"
fit-margin-right="0"
fit-margin-bottom="0" />
<path
style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#565656;fill-opacity:1;stroke:none;stroke-width:1.5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
d="m 14.40625,0 c 0,0 -0.09206,0.2282048 -0.21875,0.5 -0.118962,0.2552223 -0.343456,0.5183848 -0.34375,0.53125 -0.07459,0.00564 -0.374806,0.1064315 -0.78125,0.125 -0.541925,0.024758 -1.252016,0.00437 -2,-0.03125 C 9.5665318,1.0537633 7.97186,0.9110738 6.90625,1.09375 l -0.03125,0 c -0.6440186,0.1198973 -1.1017059,0.548512 -1.4375,1 -0.3407477,0.458148 -0.5873895,0.9776 -0.75,1.46875 -0.2487501,0.751327 -0.3389545,1.329266 -0.375,1.625 l -4.3125,0 0,18.375 32,0 0,-18.375 -26.15625,0 C 5.8929222,4.889017 5.9697935,4.500037 6.125,4.03125 6.2560186,3.635521 6.4309233,3.229693 6.625,2.96875 6.8190767,2.707807 7.0067168,2.593491 7.1875,2.5625 7.7997705,2.457539 9.4445334,2.55242 10.96875,2.625 c 0.762108,0.03629 1.517666,0.06042 2.15625,0.03125 0.638584,-0.02917 1.151111,0.0042 1.6875,-0.4375 0.418957,-0.345022 0.558509,-0.7187184 0.71875,-1.0625 C 15.691491,0.8124684 15.8125,0.5 15.8125,0.5 L 14.40625,0 z m -11.375,9.375 2.46875,0 c 0.1541065,0 0.28125,0.09589 0.28125,0.25 l 0,2.5 c 0,0.154106 -0.1271435,0.28125 -0.28125,0.28125 l -2.46875,0 C 2.8771435,12.40625 2.75,12.279106 2.75,12.125 l 0,-2.5 c 0,-0.154106 0.1271435,-0.25 0.28125,-0.25 z m 4.53125,0 2.46875,0 c 0.154106,0 0.28125,0.09589 0.28125,0.25 l 0,2.5 c 0,0.154106 -0.127144,0.28125 -0.28125,0.28125 l -2.46875,0 c -0.1541065,0 -0.28125,-0.127144 -0.28125,-0.28125 l 0,-2.5 c 0,-0.154106 0.1271435,-0.25 0.28125,-0.25 z m 4.53125,0 2.46875,0 c 0.154106,0 0.28125,0.09589 0.28125,0.25 l 0,2.5 c 0,0.154106 -0.127144,0.28125 -0.28125,0.28125 l -2.46875,0 c -0.154106,0 -0.28125,-0.127144 -0.28125,-0.28125 l 0,-2.5 c 0,-0.154106 0.127144,-0.25 0.28125,-0.25 z m 4.53125,0 2.46875,0 c 0.154106,0 0.28125,0.09589 0.28125,0.25 l 0,2.5 c 0,0.154106 -0.127144,0.28125 -0.28125,0.28125 l -2.46875,0 c -0.154106,0 -0.28125,-0.127144 -0.28125,-0.28125 l 0,-2.5 c 0,-0.154106 0.127144,-0.25 0.28125,-0.25 z m 4.53125,0 2.46875,0 c 0.154106,0 0.28125,0.09589 0.28125,0.25 l 0,2.5 c 0,0.154106 -0.127144,0.28125 -0.28125,0.28125 l -2.46875,0 c -0.154106,0 -0.28125,-0.127144 -0.28125,-0.28125 l 0,-2.5 c 0,-0.154106 0.127144,-0.25 0.28125,-0.25 z m 4.53125,0 2.46875,0 c 0.154106,0 0.28125,0.09589 0.28125,0.25 l 0,2.5 c 0,0.154106 -0.127144,0.28125 -0.28125,0.28125 l -2.46875,0 c -0.154106,0 -0.28125,-0.127144 -0.28125,-0.28125 l 0,-2.5 c 0,-0.154106 0.127144,-0.25 0.28125,-0.25 z m -20.53125,4.8125 2.46875,0 c 0.1541065,0 0.28125,0.127144 0.28125,0.28125 l 0,2.46875 c 0,0.154106 -0.1271435,0.28125 -0.28125,0.28125 l -2.46875,0 C 5.0021435,17.21875 4.875,17.091606 4.875,16.9375 l 0,-2.46875 c 0,-0.154106 0.1271435,-0.28125 0.28125,-0.28125 z m 4.65625,0 2.46875,0 c 0.154106,0 0.28125,0.127144 0.28125,0.28125 l 0,2.46875 c 0,0.154106 -0.127144,0.28125 -0.28125,0.28125 l -2.46875,0 c -0.1541065,0 -0.28125,-0.127144 -0.28125,-0.28125 l 0,-2.46875 c 0,-0.154106 0.1271435,-0.28125 0.28125,-0.28125 z m 4.65625,0 2.5,0 c 0.154106,0 0.28125,0.127144 0.28125,0.28125 l 0,2.46875 c 0,0.154106 -0.127144,0.28125 -0.28125,0.28125 l -2.5,0 c -0.154106,0 -0.28125,-0.127144 -0.28125,-0.28125 l 0,-2.46875 c 0,-0.154106 0.127144,-0.28125 0.28125,-0.28125 z m 4.6875,0 2.46875,0 c 0.154106,0 0.28125,0.127144 0.28125,0.28125 l 0,2.46875 c 0,0.154106 -0.127144,0.28125 -0.28125,0.28125 l -2.46875,0 c -0.154106,0 -0.28125,-0.127144 -0.28125,-0.28125 l 0,-2.46875 c 0,-0.154106 0.127144,-0.28125 0.28125,-0.28125 z m 4.65625,0 2.46875,0 c 0.154106,0 0.28125,0.127144 0.28125,0.28125 l 0,2.46875 c 0,0.154106 -0.127144,0.28125 -0.28125,0.28125 l -2.46875,0 c -0.154106,0 -0.28125,-0.127144 -0.28125,-0.28125 l 0,-2.46875 c 0,-0.154106 0.127144,-0.28125 0.28125,-0.28125 z m -17.40625,5.6875 19.1875,0 c 0.154106,0 0.25,0.127144 0.25,0.28125 l 0,1.28125 c 0,0.154106 -0.09589,0.28125 -0.25,0.28125 l -19.1875,0 c -0.1541065,0 -0.25,-0.127144 -0.25,-0.28125 l 0,-1.28125 c 0,-0.154106 0.095893,-0.28125 0.25,-0.28125 z"
id="path4443"
inkscape:connector-curvature="0" /></svg>

After

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 432 B

View File

@@ -0,0 +1,56 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 15.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
id="Layer_1"
x="0px"
y="0px"
width="32"
height="23.5625"
viewBox="0 0 32 23.5625"
enable-background="new 0 0 32 32"
xml:space="preserve"
inkscape:version="0.48.3.1 r9886"
sodipodi:docname="ime-inactive.svg"><metadata
id="metadata7"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title /></cc:Work></rdf:RDF></metadata><defs
id="defs5" /><sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1920"
inkscape:window-height="1024"
id="namedview3"
showgrid="false"
showguides="true"
inkscape:guide-bbox="true"
inkscape:zoom="11.313709"
inkscape:cx="7.9387686"
inkscape:cy="9.7406437"
inkscape:window-x="0"
inkscape:window-y="27"
inkscape:window-maximized="1"
inkscape:current-layer="Layer_1"
fit-margin-top="0"
fit-margin-left="0"
fit-margin-right="0"
fit-margin-bottom="0" />
<path
style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#565656;fill-opacity:0.55000001;stroke:none;stroke-width:1.50000000000000000;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
d="m 14.40625,0 c 0,0 -0.09206,0.2282048 -0.21875,0.5 -0.118962,0.2552223 -0.343456,0.5183848 -0.34375,0.53125 -0.07459,0.00564 -0.374806,0.1064315 -0.78125,0.125 -0.541925,0.024758 -1.252016,0.00437 -2,-0.03125 C 9.5665318,1.0537633 7.97186,0.9110738 6.90625,1.09375 l -0.03125,0 c -0.6440186,0.1198973 -1.1017059,0.548512 -1.4375,1 -0.3407477,0.458148 -0.5873895,0.9776 -0.75,1.46875 -0.2487501,0.751327 -0.3389545,1.329266 -0.375,1.625 l -4.3125,0 0,18.375 32,0 0,-18.375 -26.15625,0 C 5.8929222,4.889017 5.9697935,4.500037 6.125,4.03125 6.2560186,3.635521 6.4309233,3.229693 6.625,2.96875 6.8190767,2.707807 7.0067168,2.593491 7.1875,2.5625 7.7997705,2.457539 9.4445334,2.55242 10.96875,2.625 c 0.762108,0.03629 1.517666,0.06042 2.15625,0.03125 0.638584,-0.02917 1.151111,0.0042 1.6875,-0.4375 0.418957,-0.345022 0.558509,-0.7187184 0.71875,-1.0625 C 15.691491,0.8124684 15.8125,0.5 15.8125,0.5 L 14.40625,0 z m -11.375,9.375 2.46875,0 c 0.1541065,0 0.28125,0.09589 0.28125,0.25 l 0,2.5 c 0,0.154106 -0.1271435,0.28125 -0.28125,0.28125 l -2.46875,0 C 2.8771435,12.40625 2.75,12.279106 2.75,12.125 l 0,-2.5 c 0,-0.154106 0.1271435,-0.25 0.28125,-0.25 z m 4.53125,0 2.46875,0 c 0.154106,0 0.28125,0.09589 0.28125,0.25 l 0,2.5 c 0,0.154106 -0.127144,0.28125 -0.28125,0.28125 l -2.46875,0 c -0.1541065,0 -0.28125,-0.127144 -0.28125,-0.28125 l 0,-2.5 c 0,-0.154106 0.1271435,-0.25 0.28125,-0.25 z m 4.53125,0 2.46875,0 c 0.154106,0 0.28125,0.09589 0.28125,0.25 l 0,2.5 c 0,0.154106 -0.127144,0.28125 -0.28125,0.28125 l -2.46875,0 c -0.154106,0 -0.28125,-0.127144 -0.28125,-0.28125 l 0,-2.5 c 0,-0.154106 0.127144,-0.25 0.28125,-0.25 z m 4.53125,0 2.46875,0 c 0.154106,0 0.28125,0.09589 0.28125,0.25 l 0,2.5 c 0,0.154106 -0.127144,0.28125 -0.28125,0.28125 l -2.46875,0 c -0.154106,0 -0.28125,-0.127144 -0.28125,-0.28125 l 0,-2.5 c 0,-0.154106 0.127144,-0.25 0.28125,-0.25 z m 4.53125,0 2.46875,0 c 0.154106,0 0.28125,0.09589 0.28125,0.25 l 0,2.5 c 0,0.154106 -0.127144,0.28125 -0.28125,0.28125 l -2.46875,0 c -0.154106,0 -0.28125,-0.127144 -0.28125,-0.28125 l 0,-2.5 c 0,-0.154106 0.127144,-0.25 0.28125,-0.25 z m 4.53125,0 2.46875,0 c 0.154106,0 0.28125,0.09589 0.28125,0.25 l 0,2.5 c 0,0.154106 -0.127144,0.28125 -0.28125,0.28125 l -2.46875,0 c -0.154106,0 -0.28125,-0.127144 -0.28125,-0.28125 l 0,-2.5 c 0,-0.154106 0.127144,-0.25 0.28125,-0.25 z m -20.53125,4.8125 2.46875,0 c 0.1541065,0 0.28125,0.127144 0.28125,0.28125 l 0,2.46875 c 0,0.154106 -0.1271435,0.28125 -0.28125,0.28125 l -2.46875,0 C 5.0021435,17.21875 4.875,17.091606 4.875,16.9375 l 0,-2.46875 c 0,-0.154106 0.1271435,-0.28125 0.28125,-0.28125 z m 4.65625,0 2.46875,0 c 0.154106,0 0.28125,0.127144 0.28125,0.28125 l 0,2.46875 c 0,0.154106 -0.127144,0.28125 -0.28125,0.28125 l -2.46875,0 c -0.1541065,0 -0.28125,-0.127144 -0.28125,-0.28125 l 0,-2.46875 c 0,-0.154106 0.1271435,-0.28125 0.28125,-0.28125 z m 4.65625,0 2.5,0 c 0.154106,0 0.28125,0.127144 0.28125,0.28125 l 0,2.46875 c 0,0.154106 -0.127144,0.28125 -0.28125,0.28125 l -2.5,0 c -0.154106,0 -0.28125,-0.127144 -0.28125,-0.28125 l 0,-2.46875 c 0,-0.154106 0.127144,-0.28125 0.28125,-0.28125 z m 4.6875,0 2.46875,0 c 0.154106,0 0.28125,0.127144 0.28125,0.28125 l 0,2.46875 c 0,0.154106 -0.127144,0.28125 -0.28125,0.28125 l -2.46875,0 c -0.154106,0 -0.28125,-0.127144 -0.28125,-0.28125 l 0,-2.46875 c 0,-0.154106 0.127144,-0.28125 0.28125,-0.28125 z m 4.65625,0 2.46875,0 c 0.154106,0 0.28125,0.127144 0.28125,0.28125 l 0,2.46875 c 0,0.154106 -0.127144,0.28125 -0.28125,0.28125 l -2.46875,0 c -0.154106,0 -0.28125,-0.127144 -0.28125,-0.28125 l 0,-2.46875 c 0,-0.154106 0.127144,-0.28125 0.28125,-0.28125 z m -17.40625,5.6875 19.1875,0 c 0.154106,0 0.25,0.127144 0.25,0.28125 l 0,1.28125 c 0,0.154106 -0.09589,0.28125 -0.25,0.28125 l -19.1875,0 c -0.1541065,0 -0.25,-0.127144 -0.25,-0.28125 l 0,-1.28125 c 0,-0.154106 0.095893,-0.28125 0.25,-0.28125 z"
id="path4443"
inkscape:connector-curvature="0" /></svg>

After

Width:  |  Height:  |  Size: 6.1 KiB

View File

@@ -0,0 +1,48 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
width="32"
height="32"
viewBox="0 0 32 32"
id="Layer_1"
xml:space="preserve"
inkscape:version="0.48.3.1 r9886"
sodipodi:docname="tick.svg"><sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1920"
inkscape:window-height="1024"
id="namedview6"
showgrid="false"
inkscape:zoom="3.6875"
inkscape:cx="12.379932"
inkscape:cy="32.028115"
inkscape:window-x="0"
inkscape:window-y="27"
inkscape:window-maximized="1"
inkscape:current-layer="Layer_1" /><metadata
id="metadata7"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title /></cc:Work></rdf:RDF></metadata><defs
id="defs5" />
<path
style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#222222;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
d="M 26.579429,5.7431146 11.48439,20.451101 5.4205703,14.580808 2.5176783,17.548209 c 2.989202,2.902621 5.955731,5.828609 8.9667117,8.708676 C 17.447966,20.350568 23.477578,14.51056 29.482322,8.6460063 z"
id="path10791-42-4"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccccc" /></svg>

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

@@ -8,6 +8,7 @@
this.options = $.extend( {}, $.ime.defaults, options );
this.active = false;
this.inputmethod = null;
this.language = null;
this.context = '';
this.selector = this.$element.imeselector( this.options );
this.listen();
@@ -170,10 +171,15 @@
$.ime.preferences.setIM( inputmethodId );
},
setLanguage: function( languageCode ) {
setLanguage: function ( languageCode ) {
this.language = languageCode;
$.ime.preferences.setLanguage( languageCode );
},
getLanguage: function () {
return this.language;
},
load: function ( name, callback ) {
var ime = this,
dependency;
@@ -212,10 +218,12 @@
data = $this.data( 'ime' ),
options = typeof option === 'object' && option;
if( $this.prop( 'readonly' ) || $this.prop( 'disabled' ) ) {
if ( $this.prop( 'readonly' ) || $this.prop( 'disabled' ) ) {
return;
}
if ( $this.hasClass( 'noime' ) ) {
return;
}
if ( !data ) {
data = new IME( this, options );
$this.data( 'ime', data );
@@ -477,10 +485,18 @@
name: 'Palochka',
source: 'rules/cyrl/cyrl-palochka.js'
},
'da-normforms': {
name: 'Normal forms',
source: 'rules/da/da-normforms.js'
},
'eo-transliteration': {
name: 'Transliteration',
source: 'rules/eo/eo-transliteration.js'
},
'fo-normforms': {
name: 'Føroyskt',
source: 'rules/fo/fo-normforms.js'
},
'fi-transliteration': {
name: 'translitterointi',
source: 'rules/fi/fi-transliteration.js'
@@ -493,6 +509,14 @@
name: 'इनस्क्रिप्ट',
source: 'rules/hi/hi-inscript.js'
},
'is-normforms': {
name: 'Normal forms',
source: 'rules/is/is-normforms.js'
},
'jv-transliteration': {
name: 'Transliteration',
source: 'rules/jv/jv-transliteration.js'
},
'mai-inscript': {
name: 'इनस्क्रिप्ट',
source: 'rules/mai/mai-inscript.js',
@@ -510,6 +534,10 @@
name: 'ഇൻസ്ക്രിപ്റ്റ്',
source: 'rules/ml/ml-inscript.js'
},
'sv-normforms': {
name: 'Normal forms',
source: 'rules/sv/sv-normforms.js'
},
'ta-inscript': {
name: 'இன்ஸ்கிரிப்ட்',
source: 'rules/ta/ta-inscript.js'
@@ -590,6 +618,14 @@
name: 'Transliteration',
source: 'rules/ne/ne-transliteration.js'
},
'no-normforms': {
name: 'Normal transliterasjon',
source: 'rules/no/no-normforms.js'
},
'no-tildeforms': {
name: 'Tildemerket transliterasjon',
source: 'rules/no/no-tildeforms.js'
},
'or-transliteration': {
name: 'Transliteration',
source: 'rules/or/or-transliteration.js'
@@ -602,6 +638,10 @@
name: 'ଲେଖନୀ',
source: 'rules/or/or-lekhani.js'
},
'se-normforms': {
name: 'Normal forms',
source: 'rules/se/se-normforms.js'
},
'te-inscript': {
name: 'ఇన్‍స్క్రిప్ట్',
source: 'rules/te/te-inscript.js'
@@ -701,6 +741,10 @@
autonym: 'нохчийн',
inputmethods: [ 'cyrl-palochka' ]
},
'da': {
autonym: 'Dansk',
inputmethods: [ 'da-normforms' ]
},
'de': {
autonym: 'Deutsch',
inputmethods: [ 'de' ]
@@ -709,6 +753,10 @@
autonym: 'Esperanto',
inputmethods: [ 'eo-transliteration' ]
},
'fo': {
autonym: 'Føroyskt',
inputmethods: [ 'fo-normforms' ]
},
'fi': {
autonym: 'Suomi',
inputmethods: [ 'fi-transliteration' ]
@@ -733,6 +781,14 @@
autonym: 'छत्तीसगढ़ी',
inputmethods: [ 'hi-transliteration' ]
},
'is': {
autonym: 'Íslenska',
inputmethods: [ 'is-normforms' ]
},
'jv': {
autonym: 'ꦧꦱꦗꦮ',
inputmethods: [ 'jv-transliteration' ]
},
'ka': {
autonym: 'ქართული ენა',
inputmethods: [ 'ka-transliteration' ]
@@ -781,6 +837,18 @@
autonym: 'नेपाल भाषा',
inputmethods: [ 'hi-transliteration', 'hi-inscript' ]
},
'no': {
autonym: 'Norsk',
inputmethods: [ 'no-normforms', 'no-tildeforms' ]
},
'nb': {
autonym: 'Norsk (bokmål)',
inputmethods: [ 'no-normforms', 'no-tildeforms' ]
},
'nn': {
autonym: 'Norsk (nynorsk)',
inputmethods: [ 'no-normforms', 'no-tildeforms' ]
},
'or': {
autonym: 'ଓଡ଼ିଆ',
inputmethods: [ 'or-transliteration', 'or-lekhani', 'or-inscript' ]
@@ -805,6 +873,10 @@
autonym: 'संस्कृत',
inputmethods: [ 'sa-transliteration', 'sa-inscript2', 'sa-inscript' ]
},
'se': {
autonym: 'Davvisámegiella',
inputmethods: [ 'se-normforms' ]
},
'shi': {
autonym: 'ⵜⵉⴼⵉⵏⴰⵖ',
inputmethods: [ 'ber-tfng' ]
@@ -813,6 +885,10 @@
autonym: 'සිංහල',
inputmethods: [ 'si-singlish', 'si-wijesekara' ]
},
'sv': {
autonym: 'Svenska',
inputmethods: [ 'sv-normforms' ]
},
'ta': {
autonym: 'தமிழ்',
inputmethods: [ 'ta-transliteration', 'ta-99', 'ta-inscript', 'ta-bamini' ]
@@ -860,13 +936,14 @@
this.$imeSetting.hide();
},
prepareSelectorMenu: function() {
prepareSelectorMenu: function () {
// TODO: In this approach there is a menu for each editable area.
// With correct event mapping we can probably reduce it to one menu.
this.$imeSetting = $( selectorTemplate );
this.$menu = $( '<div class="imeselector-menu" role="menu">' );
this.$menu.append( imeList() )
this.$menu.append( imeListTitle() )
.append( imeList() )
.append( toggleMenuItem() )
.append( languageListTitle() );
this.prepareLanguageList();
@@ -878,19 +955,19 @@
$( 'body' ).append( this.$imeSetting );
},
focus: function ( ) {
focus: function () {
// Hide all other IME settings
$( 'div.imeselector' ).hide();
this.$imeSetting.show();
},
toggle: function () {
show: function () {
this.$menu.addClass( 'open' );
return false;
},
hide: function () {
this.$menu.removeClass( 'open' );
if ( !this.$menu.hasClass( 'open' ) ) {
this.$menu.toggleClass( 'open' );
}
return false;
},
@@ -901,7 +978,7 @@
var imeselector = this;
$( 'html' ).on( 'click.ime', function () {
imeselector.$menu.removeClass( 'open' );
imeselector.hide();
if ( imeselector.$element.is( ':hidden' ) ) {
imeselector.$imeSetting.hide();
}
@@ -928,7 +1005,7 @@
e.preventDefault();
} );
imeselector.$imeSetting.on( 'click.ime', $.proxy( this.toggle, this ) );
imeselector.$imeSetting.on( 'click.ime', $.proxy( this.show, this ) );
imeselector.$element.on( 'focus.ime', function ( e ) {
imeselector.selectLanguage( $.ime.preferences.getLanguage() );
@@ -993,21 +1070,28 @@
* @param languageCode
*/
selectLanguage: function ( languageCode ) {
var language;
var language, ime;
ime = this.$element.data( 'ime' );
language = $.ime.languages[languageCode];
if ( !language ) {
return false;
}
if ( ime.getLanguage() === languageCode ) {
// nothing to do. It is same as the current language
return false;
}
this.$menu.find( 'li.ime-lang' ).show();
this.$menu.find( 'li[lang=' + languageCode + ']' ).hide();
this.$menu.find( '.ime-list-title' ).text( language.autonym );
this.prepareInputMethods( languageCode );
this.$menu.removeClass( 'open' );
this.hide();
// And select the default inputmethod
this.$element.data( 'ime' ).setLanguage( languageCode );
ime.setLanguage( languageCode );
this.inputmethod = null;
this.selectIM( $.ime.preferences.getIM( languageCode ) );
},
@@ -1040,7 +1124,7 @@
var name;
imeselector.inputmethod = $.ime.inputmethods[inputmethodId];
imeselector.$menu.removeClass( 'open' );
imeselector.hide();
ime.enable();
name = imeselector.inputmethod.name;
ime.setIM( inputmethodId );
@@ -1062,7 +1146,7 @@
this.$menu.find( 'div.ime-disable' ).addClass( 'checked' );
this.$element.data( 'ime' ).disable();
this.$imeSetting.find( 'a.ime-name' ).text( '' );
this.$menu.removeClass( 'open' );
this.hide();
this.position();
// save this preference
@@ -1174,13 +1258,18 @@
$.fn.imeselector.Constructor = IMESelector;
function languageListTitle () {
return $( '<h3 class="ime-lang-title"/>' )
return $( '<h3>' )
.addClass( 'ime-lang-title' )
.attr( 'data-i18n', 'jquery-ime-other-languages' )
.text( 'Other languages' );
}
function imeList () {
return $( '<h3 class="ime-list-title"></h3><ul class="ime-list"/>' );
return $( '<ul>' ).addClass( 'ime-list' );
}
function imeListTitle () {
return $( '<h3>' ).addClass( 'ime-list-title' );
}
function toggleMenuItem () {
@@ -1199,7 +1288,7 @@
var selectorTemplate = '<div class="imeselector">'
+ '<a class="ime-name imeselector-toggle" href="#"></a>'
+ '<b class="caret"></b></div>';
+ '<b class="ime-setting-caret"></b></div>';
/**
* Check whether a keypress event corresponds to the shortcut key
@@ -1224,13 +1313,11 @@
p.addEventListener( 'DOMAttrModified', function () {
flag = true;
}, false );
}
else if ( p.attachEvent ) {
} else if ( p.attachEvent ) {
p.attachEvent( 'onDOMAttrModified', function () {
flag = true;
} );
}
else {
} else {
return false;
}
@@ -1304,15 +1391,15 @@
// Set the given IM as the last used for the language
setIM: function ( inputMethod ) {
if( !this.registry.imes ){
this.registry.imes= {};
if ( !this.registry.imes ) {
this.registry.imes = {};
}
this.registry.imes[this.getLanguage()] = inputMethod;
},
// Return the last used or the default IM for language
getIM: function ( language ) {
if( !this.registry.imes ){
if ( !this.registry.imes ) {
this.registry.imes= {};
}
return this.registry.imes[language] || $.ime.languages[language].inputmethods[0];

View File

@@ -0,0 +1,39 @@
( function ( $ ) {
'use strict';
var beLatin = {
id: 'be-latin',
name: 'Belarusian Łacinka',
description: 'Belarusian Latin alphabet input method',
date: '2012-11-06',
URL: 'http://github.com/wikimedia/jquery.ime',
author: 'Pavel Selitskas',
license: 'GPLv3',
version: '1.0',
contextLength: 1,
maxKeyLength: 1,
patterns: [
[ '=S', 'Š' ],
[ '=U', 'Ŭ' ],
[ '-S', 'Ś' ],
[ '-L', 'Ł' ],
[ '-Z', 'Ź' ],
[ '=Z', 'Ž' ],
[ '-C', 'Ć' ],
[ '=C', 'Č' ],
[ '-N', 'Ń' ],
[ '=s', 'š' ],
[ '=u', 'ŭ' ],
[ '-s', 'ś' ],
[ '-l', 'ł' ],
[ '-z', 'ź' ],
[ '=z', 'ž' ],
[ '-c', 'ć' ],
[ '=c', 'č' ],
[ '-n', 'ń' ]
]
};
$.ime.register( beLatin );
}( jQuery ) );

View File

@@ -0,0 +1,95 @@
( function ( $ ) {
'use strict';
var beTransliteration = {
id: 'be-transliteration',
name: 'Belarusian Transliteration',
description: 'Belarusian transliteration per Belarusian winkeys',
date: '2012-11-06',
URL: 'http://github.com/wikimedia/jquery.ime',
author: 'Pavel Selitskas',
license: 'GPLv3',
version: '1.0',
patterns: [
['~', 'Ё'],
['Q', 'Й'],
['W', 'Ц'],
['E', 'У'],
['R', 'К'],
['T', 'Е'],
['Y', 'Н'],
['U', 'Г'],
['I', 'Ш'],
['O', 'Ў'],
['P', 'З'],
['{', 'Х'],
['}', '\''],
['A', 'Ф'],
['S', 'Ы'],
['D', 'В'],
['F', 'А'],
['G', 'П'],
['H', 'Р'],
['J', 'О'],
['K', 'Л'],
['L', 'Д'],
[':', 'Ж'],
['"', 'Э'],
['Z', 'Я'],
['X', 'Ч'],
['C', 'С'],
['V', 'М'],
['B', 'І'],
['N', 'Т'],
['M', 'Ь'],
['<', 'Б'],
['>', 'Ю'],
['\\?', ','],
['`', 'ё'],
['q', 'й'],
['w', 'ц'],
['e', 'у'],
['r', 'к'],
['t', 'е'],
['y', 'н'],
['u', 'г'],
['i', 'ш'],
['o', 'ў'],
['p', 'з'],
['\\[', 'х'],
['\\]', '\''],
['a', 'ф'],
['s', 'ы'],
['d', 'в'],
['f', 'а'],
['g', 'п'],
['h', 'р'],
['j', 'о'],
['k', 'л'],
['l', 'д'],
[';', 'ж'],
['\'', 'э'],
['z', 'я'],
['x', 'ч'],
['c', 'с'],
['v', 'м'],
['b', 'і'],
['n', 'т'],
['m', 'ь'],
[',', 'б'],
['\\.', 'ю'],
['/', '.'],
['@', '"'], // 2
['#', '№'], // 3
['\\$', ';'], // 4
// '%' is the same // 5
['^', ':'], // 6
['&', '?']] // 7
// '*', '(' and ')' are the same // 8, 9, 0
};
$.ime.register( beTransliteration );
}( jQuery ) );

View File

@@ -0,0 +1,50 @@
( function ( $ ) {
'use strict';
var defs = {
id: 'da-normforms',
name: 'Dansk',
description: 'Danish input method with most common form transliterated',
date: '2012-12-04',
URL: 'http://www.evertype.com/alphabets/danish.pdf',
author: 'John Erling Blad',
license: 'GPLv3',
version: '1.0',
contextLength: 1,
maxKeyLength: 3,
patterns: [
// The most common transliterations
[ 'aa', 'å' ],
[ 'AA', 'Å' ],
[ 'Aa', 'Å' ],
[ 'ae', 'æ' ],
[ 'AE', 'Æ' ],
[ 'Ae', 'Æ' ],
[ 'oe', 'ø' ],
[ 'OE', 'Ø' ],
[ 'Oe', 'Ø' ],
// The previous as negated transliterations, mostly for names
[ 'åa', 'a', 'aa' ],
[ 'ÅA', 'A', 'AA' ],
[ 'Åa', 'A', 'Aa' ],
[ 'åA', 'a', 'aA' ],
[ 'æe', 'e', 'ae' ],
[ 'ÆE', 'E', 'AE' ],
[ 'Æe', 'E', 'Ae' ],
[ 'æE', 'e', 'aE' ],
[ 'øe', 'e', 'oe' ],
[ 'ØE', 'E', 'OE' ],
[ 'Øe', 'E', 'Oe' ], // this fails for some names like "Øen"
[ 'øE', 'e', 'oE' ]
// historically similar forms
// "Å" is sometimes written as "Aa", and "å" as "aa", but in names
// it is not generally acceptable to use this transliteration. To
// handle those situations we need some oposite forms.
// There is a similar character "Å" for the length unit Angstrom,
// but this is not the upper case letter Å.
]
};
$.ime.register( defs );
}( jQuery ) );

View File

@@ -0,0 +1,32 @@
( function ( $ ) {
'use strict';
var fiTransliteration = {
id: 'fi-transliteration',
name: 'translitterointi',
description: 'Finnish transliteration',
date: '2012-11-10',
URL: 'http://github.com/wikimedia/jquery.ime',
author: 'Niklas Laxström',
license: 'GPLv3',
version: '1.0',
contextLength: 0,
maxKeyLength: 2,
patterns: [
['\\.a', 'å'],
['\\.A', 'Å'],
[':a', 'ä'],
[':A', 'Ä'],
[':o', 'ö'],
[':O', 'Ö'],
['shh', 'š'],
['Shh', 'Š'],
['\\.e', '€']
],
patterns_x: [
['e', '€']
]
};
$.ime.register( fiTransliteration );
}( jQuery ) );

View File

@@ -0,0 +1,66 @@
( function ( $ ) {
'use strict';
var defs = {
id: 'fo-normforms',
name: 'Føroyskt',
description: 'Faroese input method with most common form transliterated',
date: '2012-12-04',
URL: 'http://www.evertype.com/alphabets/faroese.pdf',
author: 'John Erling Blad',
license: 'GPLv3',
version: '1.0',
contextLength: 1,
maxKeyLength: 3,
patterns: [
// Uses "'" as an accent
[ "'a", 'á' ],
[ "'A", 'Á' ],
[ "'i", 'í' ],
[ "'I", 'Í' ],
[ "'o", 'ó' ],
[ "'O", 'Ó' ],
[ "'u", 'ú' ],
[ "'U", 'Ú' ],
[ "'y", 'ý' ],
[ "'Y", 'Ý' ],
// Uses "~" as "approximatly similar to"
[ '~d', 'ð' ],
[ '~D', 'Ð' ],
[ '~o', 'ö' ],
[ '~O', 'Ö' ],
// The most common transliterations (also the Danish letters)
[ 'aa', 'å' ],
[ 'AA', 'Å' ],
[ 'Aa', 'Å' ],
[ 'ae', 'æ' ],
[ 'AE', 'Æ' ],
[ 'Ae', 'Æ' ],
[ 'oe', 'ø' ],
[ 'OE', 'Ø' ],
[ 'Oe', 'Ø' ],
// The previous as negated transliterations, mostly for names
[ 'åa', 'a', 'aa' ],
[ 'ÅA', 'A', 'AA' ],
[ 'Åa', 'A', 'Aa' ],
[ 'åA', 'a', 'aA' ],
[ 'æe', 'e', 'ae' ],
[ 'ÆE', 'E', 'AE' ],
[ 'Æe', 'E', 'Ae' ],
[ 'æE', 'e', 'aE' ],
[ 'øe', 'e', 'oe' ],
[ 'ØE', 'E', 'OE' ],
[ 'Øe', 'E', 'Oe' ], // this fails for some names like "Øen"
[ 'øE', 'e', 'oE' ]
// historically similar forms
// "Å" is sometimes written as "Aa", and "å" as "aa", but in names
// it is not generally acceptable to use this transliteration. To
// handle those situations we need some oposite forms.
// There is a similar character "Å" for the length unit Angstrom,
// but this is not the upper case letter Å.
]
};
$.ime.register( defs );
}( jQuery ) );

View File

@@ -0,0 +1,79 @@
( function ( $ ) {
'use strict';
var defs = {
id: 'is-normforms',
name: 'Íslenska',
description: 'Islandic input method with most common form transliterated',
date: '2012-12-04',
URL: 'http://www.evertype.com/alphabets/icelandic.pdf',
author: 'John Erling Blad',
license: 'GPLv3',
version: '1.0',
contextLength: 1,
maxKeyLength: 3,
patterns: [
// Uses "'" as an accent
[ "'a", 'á' ],
[ "'A", 'Á' ],
[ "'i", 'í' ],
[ "'I", 'Í' ],
[ "'e", 'é' ],
[ "'E", 'É' ],
[ "'o", 'ó' ],
[ "'O", 'Ó' ],
[ "'u", 'ú' ],
[ "'U", 'Ú' ],
[ "'y", 'ý' ],
[ "'Y", 'Ý' ],
// Uses "~" as "approximatly similar to"
[ '~a', 'ä' ],
[ '~A', 'Ä' ],
[ '~e', 'ë' ],
[ '~E', 'Ë' ],
[ '~d', 'ð' ],
[ '~D', 'Ð' ],
[ '~o', 'ø' ],
[ '~O', 'Ø' ],
// The most common transliterations (also the Danish letters)
[ 'th', 'þ' ],
[ 'TH', 'Þ' ],
[ 'Th', 'Þ' ],
[ 'aa', 'å' ],
[ 'AA', 'Å' ],
[ 'Aa', 'Å' ],
[ 'ae', 'æ' ],
[ 'AE', 'Æ' ],
[ 'Ae', 'Æ' ],
[ 'oe', 'ö' ],
[ 'OE', 'Ö' ],
[ 'Oe', 'Ö' ],
// The previous as negated transliterations, mostly for names
[ 'þh', 'h', 'th' ],
[ 'ÞA', 'H', 'TH' ],
[ 'Þh', 'H', 'Th' ],
[ 'þA', 'h', 'tH' ],
[ 'åa', 'a', 'aa' ],
[ 'ÅA', 'A', 'AA' ],
[ 'Åa', 'A', 'Aa' ],
[ 'åA', 'a', 'aA' ],
[ 'æe', 'e', 'ae' ],
[ 'ÆE', 'E', 'AE' ],
[ 'Æe', 'E', 'Ae' ],
[ 'æE', 'e', 'aE' ],
[ 'öe', 'e', 'oe' ],
[ 'ÖE', 'E', 'OE' ],
[ 'Öe', 'E', 'Oe' ],
[ 'öE', 'e', 'oE' ]
// historically similar forms
// "Å" is sometimes written as "Aa", and "å" as "aa", but in names
// it is not generally acceptable to use this transliteration. To
// handle those situations we need some oposite forms.
// There is a similar character "Å" for the length unit Angstrom,
// but this is not the upper case letter Å.
]
};
$.ime.register( defs );
}( jQuery ) );

View File

@@ -0,0 +1,217 @@
( function ( $ ) {
'use strict';
var jvTransliteration = {
id: 'jv-transliteration',
name: 'Javanese',
description: 'Javanese transliteration',
date: '2012-09-01',
URL: 'http://github.com/wikimedia/jquery.ime',
author: 'Bennylin',
license: 'GPLv3',
version: '1.0',
contextLength: 1,
maxKeyLength: 2,
patterns: [
[ '\\\\([A-Za-z\\>_~\\.0-9])', '\\\\', '$1' ],
[ '꧀ꦃa', '', '꧀​ꦲ' ], // pangkon and start with h
[ '꧀ꦃe', '', '꧀​ꦲꦺ' ], // pangkon and start with h
[ '꧀ꦃi', '', '꧀​ꦲꦶ' ], // pangkon and start with h
[ '꧀ꦃo', '', '꧀​ꦲꦺꦴ' ], // pangkon and start with h
[ '꧀ꦃu', '', '꧀​ꦲꦸ' ], // pangkon and start with h
[ '꧀ꦂa', '', '꧀​ꦫ' ], // pangkon and start with r
[ '꧀ꦂe', '', '꧀​ꦫꦺ' ], // pangkon and start with r
[ '꧀ꦂi', '', '꧀​ꦫꦶ' ], // pangkon and start with r
[ '꧀ꦂo', '', '꧀​ꦫꦺꦴ' ], // pangkon and start with r
[ '꧀ꦂu', '', '꧀​ꦫꦸ' ], // pangkon and start with r
[ '꧀ꦁa', '', '꧀​ꦔ' ], // pangkon and start with ng
[ '꧀ꦁe', '', '꧀​ꦔꦺ' ], // pangkon and start with ng
[ '꧀ꦁi', '', '꧀​ꦔꦶ' ], // pangkon and start with ng
[ '꧀ꦁo', '', '꧀​ꦔꦺꦴ' ], // pangkon and start with ng
[ '꧀ꦁu', '', '꧀​ꦔꦸ' ], // pangkon and start with ng
[ 'ꦃa', '', 'ꦲ​' ], // vocal ended with -h followed by a
[ 'ꦃe', '', 'ꦲꦺ' ], // vocal ended with -h followed by e
[ 'ꦃi', '', 'ꦲꦶ' ], // vocal ended with -h followed by i
[ 'ꦃo', '', 'ꦲꦺꦴ' ], // vocal ended with -h followed by o
[ 'ꦃu', '', 'ꦲꦸ' ], // vocal ended with -h followed by u
[ 'ꦂa', '', 'ꦫ​' ], // vocal ended with -r followed by a
[ 'ꦂe', '', 'ꦫꦺ' ], // vocal ended with -r followed by e
[ 'ꦂi', '', 'ꦫꦶ' ], // vocal ended with -r followed by i
[ 'ꦂo', '', 'ꦫꦺꦴ' ], // vocal ended with -r followed by o
[ 'ꦂu', '', 'ꦫꦸ' ], // vocal ended with -r followed by u
[ 'ꦂy', '', 'ꦫꦾ' ], // vocal ended with -r followed by y
[ 'ꦁa', '', 'ꦔ​' ], // vocal ended with -ng followed by a
[ 'ꦁe', '', 'ꦔꦺ' ], // vocal ended with -ng followed by e
[ 'ꦁi', '', 'ꦔꦶ' ], // vocal ended with -ng followed by i
[ 'ꦁo', '', 'ꦔꦺꦴ' ], // vocal ended with -ng followed by o
[ 'ꦁu', '', 'ꦔꦸ' ], // vocal ended with -ng followed by u
[ '()h', '', 'ꦃ' ], // vocal a ended with -h
[ '()r', '', 'ꦂ' ], // vocal a ended with -r
[ '()ꦤg', '', 'ꦁ' ], // vocal a ended with -ng
[ '(ꦴ|ꦍ|ꦺ|ꦼ|ꦶ|ꦷ|ꦸ|ꦹ)h', '', '$1ꦃ' ], // other vocal ended with -h
[ '(ꦴ|ꦍ|ꦺ|ꦼ|ꦶ|ꦷ|ꦸ|ꦹ)r', '', '$1ꦂ' ], // other vocal ended with -r
[ '(ꦴ|ꦍ|ꦺ|ꦼ|ꦶ|ꦷ|ꦸ|ꦹ)ꦤg', '', '$1ꦁ' ], // other vocal ended with -ng
// consonant followed by consonant, basic
[ '(ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)ꦢh', '', '$1꧀ꦝ' ], // dh
[ '(ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)ꦤy', '', '$1꧀ꦚ' ], // ny
[ '(ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)ꦠh', '', '$1꧀ꦛ' ], // th
[ '(ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)ꦤg', '', '$1꧀ꦔ' ], // ng
[ '(ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)b', '', '$1꧀ꦧ' ],
[ '(ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)c', '', '$1꧀ꦤ' ],
[ '(ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)d', '', '$1꧀ꦢ' ],
[ '(ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)(f|v)', '', '$1꧀ꦥ꦳' ],
[ '(ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)g', '', '$1꧀ꦒ' ], // can't be started with n, reserved for bigraf ng
[ '(ꦤ|ꦕ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦧ)h', '', '$1꧀ꦲ' ], // can't be started with k/d/t/g, reserved for bigraf kh/dh/th/gh
[ '(ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)j', '', '$1꧀ꦗ' ],
[ '(ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)k', '', '$1꧀ꦏ' ],
[ '(ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)l', '', '$1꧀ꦭ' ],
[ '(ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)m', '', '$1꧀ꦩ' ],
[ '(ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)n', '', '$1꧀ꦤ' ],
[ '(ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)p', '', '$1꧀ꦥ' ],
// ['(ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)q', '',''],
[ 'ꦿꦺ`', '', 'ꦽ' ], // special biconsonant -rê
[ '(ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)r', '', '$1ꦿ' ], // special biconsonant -ra
[ '(ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)s', '', '$1꧀ꦱ' ],
[ '(ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)t', '', '$1꧀ꦠ' ],
// v = f
[ '(ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)w', '', '$1꧀ꦮ' ],
// ['(ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)x', '',''],
[ '(ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ)y', '', '$1ꦾ' ], // special biconsonant -ya, can't be started
// with n or y, reserved for bigraf ny
[ '(ꦤ|ꦕ|ꦏ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)z', '', '$1ꦾꦗ꦳' ], // can't be started with d, reserved for bigraf dz
// consonant followed by consonant, extended
[ '(ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)ꦤ(y|Y)', '', '$1꧀ꦘ' ], // Nya murda
[ '(ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)B', '', '$1꧀ꦨ' ], // Ba murda
[ '(ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)C', '', '$1꧀ꦖ' ], // Ca murda(?)
[ '(ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)G', '', '$1꧀ꦓ' ], // Ga murda //can't be started with n, reserved for bigraf nG (Ng)
[ '(ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)K', '', '$1꧀ꦑ' ], // Ka murda
[ '(ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)N', '', '$1꧀ꦟ' ], // Na murda
[ '(ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)P', '', '$1꧀ꦦ' ], // Pa murda
[ '(ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)S', '', '$1꧀ꦯ' ], // Sa murda
[ '(ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦪ|ꦩ|ꦒ|ꦧ)T', '', '$1꧀ꦡ' ], // Ta murda
// extended vowel
[ 'a', '', 'ꦴ' ], // long a (aa)
[ 'i', '', 'ꦍ' ], // (ai)
[ 'ꦶi', '', 'ꦷ' ], // long i (ii)
[ 'ꦸu', '', 'ꦹ' ], // long u (uu)
// extended consonant
[ 'ꦏh', '', 'ꦏ꦳' ], // kh
[ 'ꦒh', '', 'ꦒ꦳' ], // gh
[ 'ꦢz', '', 'ꦢ꦳' ], // dz
[ 'ꦗ`', '', 'ꦙ' ], // Ja mahaprana
// special consonant
[ 'ꦭꦺ`', '', 'ꦊ' ], // special character lê
[ 'ꦫꦺ`', '', 'ꦉ' ], // special character rê
// non words
[ ' ', '', '' ], // zero-width-space, since javanese have no space
[ 'q`', '', '꧀' ], // pengkal - to cut off the default -a vowel
[ 'x`', '', '꦳' ], // cecak telu
[ '꦳`', '', 'ꦀ' ], // panyangga
[ 'ꦀ`', '', '̈' ], // combining-diaresis
[ '̈`', '', '͜' ], // double-breve
[ 'ꦫ`', '', 'ꦿ' ], // another way to write -ra
[ 'ꦪ`', '', 'ꦾ' ], // another way to write -ya
// basic ha-na-ca-ra-ka
[ 'ꦢh', '', 'ꦝ' ], // dh
[ 'ꦠh', '', 'ꦛ' ], // th
[ 'ꦤy', '', 'ꦚ' ], // ny
[ 'ꦤg', '', 'ꦔ' ], // ng
[ 'ꦺ`', '', 'ꦼ' ], // ê
[ 'a', '', '' ], // default vowel is a, by default using zero-width-non-joiner
[ 'b', '', 'ꦧ' ],
[ 'c', '', 'ꦕ' ],
[ 'd', '', 'ꦢ' ],
[ 'e', '', 'ꦺ' ], // é|è
[ '(f|v)', '', 'ꦥ꦳' ],
[ 'g', '', 'ꦒ' ],
[ 'h', '', 'ꦲ' ],
[ 'i', '', 'ꦶ' ],
[ 'j', '', 'ꦗ' ],
[ 'k', '', 'ꦏ' ],
[ 'l', '', 'ꦭ' ],
[ 'm', '', 'ꦩ' ],
[ 'n', '', 'ꦤ' ],
[ 'o', '', 'ꦺꦴ' ],
[ 'p', '', 'ꦥ' ],
// ['q', '',''],
[ 'r', '', 'ꦫ' ],
[ 's', '', 'ꦱ' ],
[ 't', '', 'ꦠ' ],
[ 'u', '', 'ꦸ' ],
// v = f
[ 'w', '', 'ꦮ' ],
// ['x', '',''],
[ 'y', '', 'ꦪ' ],
[ 'z', '', 'ꦗ꦳' ],
// capital Ha-Na-Ca-Ra-Ka
[ 'ꦢ(h|H)', '', 'ꦝ' ],
[ 'ꦤ(y|Y)', '', 'ꦘ' ], // Nya murda
[ 'ꦠ(h|H)', '', 'ꦛ' ],
[ 'ꦤ(g|G)', '', 'ꦔ' ],
[ 'ꦌ`', '', 'ꦄꦼ' ], // Ê
[ 'A', '', 'ꦄ' ], // A
[ 'B', '', 'ꦨ' ], // Ba murda
[ 'C', '', 'ꦖ' ], // Ca murda(?)
[ 'D', '', 'ꦢ' ],
[ 'E', '', 'ꦌ' ], // É|È
[ '(F|V)', '', 'ꦥ꦳' ],
[ 'G', '', 'ꦓ' ], // Ga murda
[ 'H', '', 'ꦲ' ],
[ 'I', '', 'ꦆ' ], // I
[ 'J', '', 'ꦗ' ],
[ 'K', '', 'ꦑ' ], // Ka murda
[ 'L', '', 'ꦭ' ],
[ 'M', '', 'ꦩ' ],
[ 'N', '', 'ꦟ' ], //Na murda
[ 'O', '', 'ꦎ' ], //O
[ 'P', '', 'ꦦ' ], //Pa murda
[ 'Q', '', '' ],
[ 'R', '', 'ꦫ' ],
[ 'S', '', 'ꦯ' ], //Sa murda
[ 'T', '', 'ꦡ' ], //Ta murda
[ 'U', '', 'ꦈ' ], //U
//v = f
[ 'W', '', 'ꦮ' ],
[ 'X', '', '' ],
[ 'Y', '', 'ꦪ' ],
[ 'Z', '', 'ꦗ꦳' ],
[ '0', '', '꧐' ],
[ '1', '', '꧑' ],
[ '2', '', '꧒' ],
[ '3', '', '꧓' ],
[ '4', '', '꧔' ],
[ '5', '', '꧕' ],
[ '6', '', '꧖' ],
[ '7', '', '꧗' ],
[ '8', '', '꧘' ],
[ '9', '', '꧙' ],
[ ',', '', '꧈' ],
[ '\\.', '', '꧉' ],
[ '꧊\\|', '', '꧋' ], // '||'
[ '\\|', '', '꧊' ], // '|'
[ '\\(', '', '꧌' ], // '('
[ '\\)', '', '꧍' ], // ')'
[ '(\u200C)*_', '', '\u200c' ]
]
};
$.ime.register( jvTransliteration );
}( jQuery ) );

View File

@@ -0,0 +1,117 @@
( function ( $ ) {
'use strict';
var kokInScript2 = {
id: 'kok-inscript2',
name: 'कोंकणी इनस्क्रिप्ट २',
description: 'Enhanced InScript keyboard for Kokani language',
date: '2012-11-06',
author: 'Parag Nemade',
license: 'GPLv3',
version: '1.0',
patterns: [
["\\!", "ॲ"],
["1", "१"],
["\\@", "ॅ"],
["2", "२"],
["\\#", "्र"],
["3", "३"],
["\\$", "र्"],
["4", "४"],
["5", "५"],
["6", "६"],
["7", "७"],
["8", "८"],
["\\(", "("],
["9", "९"],
["\\]", "]"],
["0", ""],
["\\_", ""],
["\\-", "-"],
["\\+", "ऋ"],
["\\=", "ृ"],
["Q", "औ"],
["q", "ौ"],
["W", "ऐ"],
["w", "ै"],
["E", "आ"],
["e", "ा"],
["R", "ई"],
["r", "ी"],
["T", "ऊ"],
["t", "ू"],
["Y", "भ"],
["y", "ब"],
["U", "ङ"],
["u", "ह"],
["I", "घ"],
["i", "ग"],
["O", "ध"],
["o", "द"],
["P", "झ"],
["p", "ज"],
["\\{", "ढ"],
["\\[", "ड"],
["\\}", "ञ"],
["\\]", "़"],
["A", "ओ"],
["a", "ो"],
["S", "ए"],
["s", "े"],
["D", "अ"],
["d", "्"],
["F", "इ"],
["f", "ि"],
["G", "उ"],
["g", "ु"],
["H", "फ"],
["h", "प"],
["J", "ऱ"],
["j", "र"],
["K", "ख"],
["k", "क"],
["L", "थ"],
["l", "त"],
[":", "छ"],
[";", "च"],
["\"", "ठ"],
["\\'", "ट"],
["X", "ँ"],
["x", "ं"],
["C", "ण"],
["c", "म"],
["v", "न"],
["b", "व"],
["N", "ळ"],
["n", "ल"],
["M", "श"],
["m", "स"],
["\\<", "ष"],
[",", ","],
["\\>", "।"],
["\\.", "."],
["/", "य"],
["\\%", "ज्ञ"],
["\\^", "त्र"],
["\\&", "क्ष"],
["\\*", "श्र"]],
patterns_x: [
["1", "\u200d"],
["2", "\u200c"],
["4", "₹"],
["\\+", "ॠ"],
["\\=", "ॄ"],
["e", "॑"],
["R", "ॡ"],
["r", "ॣ"],
["d", "॒"],
["F", "ऌ"],
["f", "ॢ"],
["X", "ॐ"],
[",", "॰"],
["\\>", "ऽ"],
["\\.", "॥"]]
};
$.ime.register( kokInScript2 );
}( jQuery ) );

View File

@@ -0,0 +1,119 @@
/**
* This is my work based on Git for the very first time, which is an input method for the Mongolian
* Cyrillic script. If the program has any errors, please understand that and contact me. I will
* change the errors in a few days.
*/
( function ( $ ) {
'use strict';
var mncyrl = {
id: 'mn-cyrl',
name: 'Mongolian Cyrillic',
description: 'Mongolian Cyrillic Input Method',
date: '2012-10-25',
URL: 'http://github.com/wikimedia/jquery.ime',
author: 'Kevin K.S. Leung, <sprconan@gmail.com>',
license: 'GPLv3',
version: '1.0',
patterns: [
['Q', 'Ф'],
['W', 'Ц'],
['E', 'У'],
['R', 'Ж'],
['T', 'Э'],
['Y', 'Н'],
['U', 'Г'],
['I', 'Ш'],
['O', 'Ү'],
['P', 'З'],
['{', 'К'],
['}', 'Ъ'],
['A', 'Й'],
['S', 'Ы'],
['D', 'Б'],
['F', 'Ө'],
['G', 'А'],
['H', 'Х'],
['J', 'Р'],
['K', 'О'],
['L', 'Л'],
[':', 'Д'],
['"', 'П'],
['Z', 'Я'],
['X', 'Ч'],
['C', 'Ё'],
['V', 'С'],
['B', 'М'],
['N', 'И'],
['M', 'Т'],
['<', 'Ь'],
['>', 'В'],
['\\?', 'Ю'],
['_', 'Е'],
['\\+', 'Щ'],
['q', 'ф'],
['w', 'ц'],
['e', 'у'],
['r', 'ж'],
['t', 'э'],
['y', 'н'],
['u', 'г'],
['i', 'ш'],
['o', 'ү'],
['p', 'з'],
['\\[', 'к'],
['\\]', 'ъ'],
['a', 'й'],
['s', 'ы'],
['d', 'б'],
['f', 'ө'],
['g', 'а'],
['h', 'х'],
['j', 'р'],
['k', 'о'],
['l', 'л'],
[';', 'д'],
['\\\\', 'п'],
['z', 'я'],
['x', 'ч'],
['c', 'ё'],
['v', 'с'],
['b', 'м'],
['n', 'и'],
['m', 'т'],
[',', 'ь'],
['\\.', 'в'],
['/', 'ю'],
['\\-', 'е'],
['=', 'щ'],
['`', '='],
['~', '+'],
['1', '№'],
['2', '-'],
['3', '"'],
['4', '₮'],
['5', ':'],
['6', '.'],
['7', '_'],
['8', ','],
['9', '%'],
['0', '?'],
['!', '1'],
['@', '2'],
['#', '3'],
['\\$', '4'],
['%', '5'],
['^', '6'],
['&', '7'],
['*', '8'],
['\\(', '9'],
['\\)', '0']
]
};
$.ime.register( mncyrl );
}( jQuery ) );

View File

@@ -0,0 +1,51 @@
( function ( $ ) {
'use strict';
var defs = {
id: 'no-normforms',
name: 'Norsk',
description: 'Norwegian input method with most common form transliterated',
date: '2012-12-04',
URL: 'http://www.evertype.com/alphabets/bokmaal-norwegian.pdf',
//URL: 'http://www.evertype.com/alphabets/nynorsk-norwegian.pdf',
author: 'John Erling Blad',
license: 'GPLv3',
version: '1.0',
contextLength: 1,
maxKeyLength: 3,
patterns: [
// The most common transliterations
[ 'aa', 'å' ],
[ 'AA', 'Å' ],
[ 'Aa', 'Å' ],
[ 'ae', 'æ' ],
[ 'AE', 'Æ' ],
[ 'Ae', 'Æ' ],
[ 'oe', 'ø' ],
[ 'OE', 'Ø' ],
[ 'Oe', 'Ø' ],
// The previous as negated transliterations, mostly for names
[ 'åa', 'a', 'aa' ],
[ 'ÅA', 'A', 'AA' ],
[ 'Åa', 'A', 'Aa' ],
[ 'åA', 'a', 'aA' ],
[ 'æe', 'e', 'ae' ],
[ 'ÆE', 'E', 'AE' ],
[ 'Æe', 'E', 'Ae' ],
[ 'æE', 'e', 'aE' ],
[ 'øe', 'e', 'oe' ],
[ 'ØE', 'E', 'OE' ],
[ 'Øe', 'E', 'Oe' ], // this fails for some names like "Øen"
[ 'øE', 'e', 'oE' ]
// historically similar forms
// "Å" is sometimes written as "Aa", and "å" as "aa", but in names
// it is not generally acceptable to use this transliteration. To
// handle those situations we need some oposite forms.
// There is a similar character "Å" for the length unit Angstrom,
// but this is not the upper case letter Å.
]
};
$.ime.register( defs );
}( jQuery ) );

View File

@@ -0,0 +1,36 @@
( function ( $ ) {
'use strict';
var defs = {
id: 'no-tildeforms',
name: 'Norsk',
description: 'Norwegian input method with initial tilde triggering transliteration',
date: '2012-12-04',
URL: 'http://www.evertype.com/alphabets/bokmaal-norwegian.pdf',
//URL: 'http://www.evertype.com/alphabets/nynorsk-norwegian.pdf',
author: 'John Erling Blad',
license: 'GPLv3',
version: '1.0',
//contextLength: 1,
maxKeyLength: 3,
patterns: [
// Uses "~" as "approximatly similar to"
[ '°a', 'å' ], // The simple ~a does not work as there is a "ã"
[ '°A', 'Å' ], // The simple ~A does not work as there is a "Ã"
[ '~ae', 'æ' ], // The simple ~a does not work as there is a "ã"
[ '~AE', 'Æ' ], // The simple ~A does not work as there is a "Ã"
[ '~oe', 'ø' ], // The simple ~o does not work as there is a "õ"
[ '~OE', 'Ø' ], // The simple ~O does not work as there is a "Õ"
[ '~aa', 'å' ], // The simple ~a does not work as there is a "ã"
[ '~AA', 'Å' ] // The simple ~A does not work as there is a "Ã"
// historically similar forms
// "Å" is sometimes written as "Aa", and "å" as "aa", but in names
// it is not generally acceptable to use this transliteration.
// There is a similar character "Å" for the length unit Angstrom,
// but this is not the upper case letter Å.
]
};
$.ime.register( defs );
}( jQuery ) );

View File

@@ -0,0 +1,39 @@
( function ( $ ) {
'use strict';
var defs = {
id: 'se-normforms',
name: 'Davvisámegiella',
description: 'Northern Sami input method',
date: '2012-12-04',
URL: 'http://giellatekno.uit.no/doc/infra/samihtml.html',
author: 'John Erling Blad',
license: 'GPLv3',
version: '1.0',
//contextLength: 1,
maxKeyLength: 3,
patterns: [
// Uses "~" as "approximatly similar to"
[ "'a", 'á' ], // The simple ~a does not work as there is a "ã"
[ "'A", 'Á' ], // The simple ~A does not work as there is a "Ã"
[ '~c', 'č' ],
[ '~C', 'Č' ],
[ '~d', 'đ' ],
[ '~D', 'Đ' ],
//[ '~ng', 'ŋ' ], // The simple ~n does not work as there is a "ñ"
//[ '~NG', 'Ŋ' ], // The simple ~N does not work as there is a "Ñ"
[ '~g', 'ŋ' ],
[ '~G', 'Ŋ' ],
[ '~s', 'š' ],
[ '~S', 'Š' ],
[ '~t', 'ŧ' ],
[ '~T', 'Ŧ' ],
[ '~z', 'ž' ],
[ '~Z', 'Ž' ]
// historically similar forms
]
};
$.ime.register( defs );
}( jQuery ) );

View File

@@ -0,0 +1,51 @@
( function ( $ ) {
'use strict';
var defs = {
id: 'sv-normforms',
name: 'Svenska',
description: 'Swedish input method with most common form transliterated',
date: '2012-12-04',
URL: 'http://www.evertype.com/alphabets/swedish.pdf',
author: 'John Erling Blad',
license: 'GPLv3',
version: '1.0',
contextLength: 1,
maxKeyLength: 3,
patterns: [
// The most common transliterations
[ 'aa', 'å' ],
[ 'AA', 'Å' ],
[ 'Aa', 'Å' ],
[ 'ae', 'ä' ],
[ 'AE', 'Ä' ],
[ 'Ae', 'Ä' ],
[ 'oe', 'ö' ],
[ 'OE', 'Ö' ],
[ 'Oe', 'Ö' ],
// The previous as negated transliterations, mostly for names
[ 'åa', 'a', 'aa' ],
[ 'ÅA', 'A', 'AA' ],
[ 'Åa', 'A', 'Aa' ],
[ 'åA', 'a', 'aA' ],
[ 'äe', 'e', 'ae' ],
[ 'ÄE', 'E', 'AE' ],
[ 'Äe', 'E', 'Ae' ],
[ 'äE', 'e', 'aE' ],
[ 'öe', 'e', 'oe' ],
[ 'ÖE', 'E', 'OE' ],
[ 'Öe', 'E', 'Oe' ], // this fails for some names like "Øen"
[ 'öE', 'e', 'oE' ]
// historically similar forms
// "Å" is sometimes written as "Aa", and "å" as "aa", but in names
// it is not generally acceptable to use this transliteration. The
// same is the case for "Ô" vs "Oe". To
// handle those situations we need some oposite forms.
// There is a similar character "Å" for the length unit Angstrom,
// but this is not the upper case letter Å.
]
};
$.ime.register( defs );
}( jQuery ) );