Compare commits
767 Commits
v0.3.15-rc
...
test/inlin
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
11a41f30e4 | ||
|
|
c035e19cfc | ||
|
|
8d30403676 | ||
|
|
2886a24fcc | ||
|
|
352c98205c | ||
|
|
18c76b7195 | ||
|
|
ea0712225a | ||
|
|
1132eaf59b | ||
|
|
cba85f1c0e | ||
|
|
15dba9f33a | ||
|
|
3859528120 | ||
|
|
046d253382 | ||
|
|
c55a87862f | ||
|
|
ee08c58db2 | ||
|
|
05d4a5cf62 | ||
|
|
c5c8f7a4c3 | ||
|
|
ce3aee93d6 | ||
|
|
96340f7277 | ||
|
|
d0dcf5be38 | ||
|
|
15450a760e | ||
|
|
de0027d87e | ||
|
|
c7e83fca21 | ||
|
|
115dc5c42a | ||
|
|
c78cf84d6c | ||
|
|
5e59f144dd | ||
|
|
564c075763 | ||
|
|
86365d393b | ||
|
|
45a0c9ef63 | ||
|
|
25da6be1a4 | ||
|
|
976afc2e51 | ||
|
|
d994da8c97 | ||
|
|
40a22a762a | ||
|
|
264b9ff98b | ||
|
|
f1b7ddedb8 | ||
|
|
b1665f61e5 | ||
|
|
0fa663f658 | ||
|
|
b7f5bf267d | ||
|
|
8563f37c98 | ||
|
|
d3a2e50dda | ||
|
|
29562c9980 | ||
|
|
5bbb5cfbce | ||
|
|
4ada583418 | ||
|
|
200a195ae6 | ||
|
|
fa910692bc | ||
|
|
c3545d1625 | ||
|
|
300ca755ec | ||
|
|
3efb760787 | ||
|
|
647f7c106b | ||
|
|
d998f8fe0c | ||
|
|
b7020d7cc9 | ||
|
|
5b874fc22a | ||
|
|
4a6fad851c | ||
|
|
6de6b37f6f | ||
|
|
d2eb6fd1c4 | ||
|
|
4b84a1ed40 | ||
|
|
a1d4079ef9 | ||
|
|
ba6d401447 | ||
|
|
43168fc31f | ||
|
|
d234d30154 | ||
|
|
e010a22863 | ||
|
|
da3b99fda8 | ||
|
|
23f58496e3 | ||
|
|
40ecbe1428 | ||
|
|
62a2131fa8 | ||
|
|
df8f96396f | ||
|
|
bace0259ec | ||
|
|
64f062307d | ||
|
|
2ca69f8fa9 | ||
|
|
f8537a2245 | ||
|
|
cdb6707850 | ||
|
|
35db9be1bf | ||
|
|
8551bb6842 | ||
|
|
9ad5bc68d3 | ||
|
|
ebf5c0f898 | ||
|
|
f913b4f7db | ||
|
|
4f966385ec | ||
|
|
e2ce63a2e9 | ||
|
|
64603c4692 | ||
|
|
90d3fbfdf1 | ||
|
|
1f01c56c68 | ||
|
|
c0a5486619 | ||
|
|
511802cb25 | ||
|
|
eb057ecaf5 | ||
|
|
f93938b43a | ||
|
|
2b7f8212c7 | ||
|
|
44c2c6e9c1 | ||
|
|
a2cfe091a6 | ||
|
|
4d9b4d5522 | ||
|
|
defe45fec6 | ||
|
|
c6721067bf | ||
|
|
a7f55d4589 | ||
|
|
eb2e260924 | ||
|
|
4950533409 | ||
|
|
813047fb40 | ||
|
|
96f3dccfc2 | ||
|
|
65595076ee | ||
|
|
bf1563ae78 | ||
|
|
d111771e06 | ||
|
|
00ce01e102 | ||
|
|
15b7022204 | ||
|
|
759b7f0033 | ||
|
|
73c3777529 | ||
|
|
a365e76383 | ||
|
|
7c4747d451 | ||
|
|
12be43e100 | ||
|
|
207cf244e6 | ||
|
|
6f45cf8456 | ||
|
|
5b73de5700 | ||
|
|
25c94e8270 | ||
|
|
0cd703427a | ||
|
|
3871978abc | ||
|
|
a9502be471 | ||
|
|
a5f2844488 | ||
|
|
dd67497154 | ||
|
|
01c7512c01 | ||
|
|
fe37ea914c | ||
|
|
fa768c0e2a | ||
|
|
bcd3d1719b | ||
|
|
55f881d8a0 | ||
|
|
cd817dec93 | ||
|
|
cdf8bc2825 | ||
|
|
62d07b0142 | ||
|
|
f50cd2de58 | ||
|
|
396a47cde9 | ||
|
|
51e67c7293 | ||
|
|
0bc64c6253 | ||
|
|
f571013fe5 | ||
|
|
5f7ca53458 | ||
|
|
0cacb9a671 | ||
|
|
30d36b7541 | ||
|
|
3ece15f516 | ||
|
|
603fab1831 | ||
|
|
90838012ad | ||
|
|
e366c94d55 | ||
|
|
a0ffa3feb1 | ||
|
|
ecbf5c4e66 | ||
|
|
023645646c | ||
|
|
553251d3c1 | ||
|
|
92ce04d5d9 | ||
|
|
9930eb1bca | ||
|
|
47b2d81f72 | ||
|
|
e6d6260d72 | ||
|
|
dd02948a00 | ||
|
|
4a12b3ded0 | ||
|
|
6acfa7f349 | ||
|
|
d3e2dda165 | ||
|
|
a5ec6a10b3 | ||
|
|
0a8260b7fa | ||
|
|
4cddc9b305 | ||
|
|
b4835b869a | ||
|
|
11c6dc8a0d | ||
|
|
71a2baf402 | ||
|
|
94bfd39a9b | ||
|
|
d473343ca3 | ||
|
|
5101db7169 | ||
|
|
08e10639d1 | ||
|
|
741dd82003 | ||
|
|
4c2bfc5dab | ||
|
|
ce3cb4427a | ||
|
|
463e3a3588 | ||
|
|
da611d3077 | ||
|
|
d0afe023a6 | ||
|
|
00f01b59db | ||
|
|
7a1cc211f3 | ||
|
|
1e29204d9c | ||
|
|
d541eed655 | ||
|
|
aaf7e62ed9 | ||
|
|
29cbc4f373 | ||
|
|
791f3d2a69 | ||
|
|
6595aa4d1a | ||
|
|
815ea0845a | ||
|
|
37c5256769 | ||
|
|
b85703db36 | ||
|
|
bc1bc8fece | ||
|
|
b3c6589326 | ||
|
|
8f44d04a6f | ||
|
|
349758991a | ||
|
|
fed979dec9 | ||
|
|
d6f8555bdf | ||
|
|
5afd6bd722 | ||
|
|
0716420697 | ||
|
|
b923a5bf65 | ||
|
|
3c2b2ae473 | ||
|
|
1e1881e6ea | ||
|
|
3acda3745a | ||
|
|
2a8c67c4f4 | ||
|
|
0d572fc1ae | ||
|
|
7810d8034c | ||
|
|
6b9fc555f0 | ||
|
|
f352c768f4 | ||
|
|
24d6667b52 | ||
|
|
d29cfff7d4 | ||
|
|
babf58bf53 | ||
|
|
701088c842 | ||
|
|
4fdbb7c235 | ||
|
|
5831bd84ad | ||
|
|
dd97ff09b6 | ||
|
|
a5407502f3 | ||
|
|
def05ef3a7 | ||
|
|
8ec03c09cc | ||
|
|
a298687f6e | ||
|
|
2488614d22 | ||
|
|
ca8ca65533 | ||
|
|
8e134cc15f | ||
|
|
17860815b6 | ||
|
|
bb502b5f8c | ||
|
|
0e51f25bb0 | ||
|
|
c1e50c9684 | ||
|
|
c377cd9ed7 | ||
|
|
1fc3b536d9 | ||
|
|
ae645fa327 | ||
|
|
bfd20055fc | ||
|
|
15aa6a6bb3 | ||
|
|
e4ef14e684 | ||
|
|
39d7ea4fc0 | ||
|
|
6d330f807a | ||
|
|
e6bc0657f6 | ||
|
|
4686234ba2 | ||
|
|
57e4765ce7 | ||
|
|
aaf26a7a4b | ||
|
|
f8f6756b84 | ||
|
|
35fd70ce6d | ||
|
|
a0ebd62f9a | ||
|
|
3dacd3c2d0 | ||
|
|
c73b8dda0b | ||
|
|
5353a01226 | ||
|
|
34f8fec2f6 | ||
|
|
7199fcdf12 | ||
|
|
8319f563b9 | ||
|
|
45efe52159 | ||
|
|
7a286b932b | ||
|
|
df3f84e96d | ||
|
|
4cc2216940 | ||
|
|
21fdd31c88 | ||
|
|
53c6cb52ca | ||
|
|
9b12213b3e | ||
|
|
659a5062ab | ||
|
|
086e5f7782 | ||
|
|
ae73e64cd2 | ||
|
|
9f5e8cddd5 | ||
|
|
3724495d4f | ||
|
|
15b5dd9e3e | ||
|
|
36f06e0b4b | ||
|
|
eacb5259ec | ||
|
|
e7a82a3123 | ||
|
|
123b3a6d39 | ||
|
|
9531ad4c36 | ||
|
|
54ed179ead | ||
|
|
2dc7efd811 | ||
|
|
01d0b02e6d | ||
|
|
67c083131a | ||
|
|
03cde7296e | ||
|
|
32d26bcf80 | ||
|
|
e61a2c6e82 | ||
|
|
ce7a97dce6 | ||
|
|
9f17a1d36c | ||
|
|
a248b4f717 | ||
|
|
c470b792c1 | ||
|
|
ff5cd1e7c2 | ||
|
|
32fee44364 | ||
|
|
97edc33d05 | ||
|
|
a89af25eab | ||
|
|
66340249d4 | ||
|
|
14147ca1b9 | ||
|
|
bdc740637b | ||
|
|
eb20e80295 | ||
|
|
453fb0253a | ||
|
|
13fc7679a2 | ||
|
|
2421d13038 | ||
|
|
7dedfd4f7a | ||
|
|
ef37194900 | ||
|
|
58134b1ceb | ||
|
|
53cfbad404 | ||
|
|
d6f724e518 | ||
|
|
6c4aa36b06 | ||
|
|
edc38b6c2c | ||
|
|
891a2c6bac | ||
|
|
229237153b | ||
|
|
290fbb5239 | ||
|
|
409d4f9348 | ||
|
|
82938cda5b | ||
|
|
f7b0a30271 | ||
|
|
575f359a85 | ||
|
|
22591163b3 | ||
|
|
8104ae60ca | ||
|
|
165b682732 | ||
|
|
eb770fac6c | ||
|
|
39c27426a4 | ||
|
|
228d5055cc | ||
|
|
b400e04560 | ||
|
|
27c1bbf039 | ||
|
|
f61b655f7d | ||
|
|
f82af63e97 | ||
|
|
0fbd950f6e | ||
|
|
e97b5f54ac | ||
|
|
b611360dd5 | ||
|
|
1b9d260020 | ||
|
|
d74fe62bc0 | ||
|
|
fe6f61a282 | ||
|
|
8b4239d9be | ||
|
|
a0c7cf2794 | ||
|
|
7480d14a0f | ||
|
|
7274228a46 | ||
|
|
a38f6a2c76 | ||
|
|
eda6c09538 | ||
|
|
9e42d16cb0 | ||
|
|
11ba51c354 | ||
|
|
51f5196b8a | ||
|
|
56bbe9d13c | ||
|
|
4d1ae52dc0 | ||
|
|
1e1916194b | ||
|
|
bae3c8ec9d | ||
|
|
9ff7d86a8d | ||
|
|
89ab0731d2 | ||
|
|
887a75a482 | ||
|
|
e52bea2456 | ||
|
|
2171e16346 | ||
|
|
566b6fbae3 | ||
|
|
5215227793 | ||
|
|
671f97eddb | ||
|
|
b6c9469826 | ||
|
|
77e4414467 | ||
|
|
db85e05714 | ||
|
|
51890c93d4 | ||
|
|
1f16ac2c3b | ||
|
|
199211fdbf | ||
|
|
c5ee414ec6 | ||
|
|
f1c5b1802b | ||
|
|
0450c8c7a1 | ||
|
|
6da6da74fc | ||
|
|
d7fca0aad1 | ||
|
|
1af519e01d | ||
|
|
989d2884b1 | ||
|
|
d137155ab0 | ||
|
|
270ab4fe5f | ||
|
|
be4cd4d897 | ||
|
|
e46d53291b | ||
|
|
8292f9d4cc | ||
|
|
192412b6dd | ||
|
|
a7f8980d35 | ||
|
|
f5d80a5818 | ||
|
|
d9b940f4f3 | ||
|
|
d86fc13cff | ||
|
|
5b7727b884 | ||
|
|
b0649b1b7e | ||
|
|
6244198795 | ||
|
|
bd9f7750aa | ||
|
|
c909d3ad7d | ||
|
|
736411e4f3 | ||
|
|
9c7d980b3b | ||
|
|
4d04eb1bb5 | ||
|
|
68c55d66be | ||
|
|
e1550d813b | ||
|
|
f780ef0213 | ||
|
|
025620a262 | ||
|
|
4b83c907c3 | ||
|
|
5542a131b9 | ||
|
|
eb50498890 | ||
|
|
e6a408fbc0 | ||
|
|
9d76b684be | ||
|
|
b97cc52958 | ||
|
|
aac7134433 | ||
|
|
f1d60d9958 | ||
|
|
e520a9c335 | ||
|
|
30294b02b4 | ||
|
|
f1bdf216fc | ||
|
|
82d43a53cc | ||
|
|
c51a787ac4 | ||
|
|
f116e20829 | ||
|
|
baf2cbcd13 | ||
|
|
1edb90b0f7 | ||
|
|
4c0c3f52e7 | ||
|
|
d23575375d | ||
|
|
e95bbf5192 | ||
|
|
0a4a4418ca | ||
|
|
2c653853e2 | ||
|
|
6f169997e9 | ||
|
|
f2e76cc72a | ||
|
|
3da59cc94b | ||
|
|
cf7f6f5fe2 | ||
|
|
7724b07a75 | ||
|
|
30750d7842 | ||
|
|
7351a8bfa9 | ||
|
|
7df9a93cb9 | ||
|
|
522f9a8153 | ||
|
|
5bff051d41 | ||
|
|
0167e1231f | ||
|
|
97bca076e2 | ||
|
|
83ec842196 | ||
|
|
9c25b7f7a3 | ||
|
|
4d78110a56 | ||
|
|
2b1dd31ad7 | ||
|
|
c5d1d3b31e | ||
|
|
c198e8b376 | ||
|
|
c5e7fea8f2 | ||
|
|
397ef1a150 | ||
|
|
bdd8f660c5 | ||
|
|
632c4a7134 | ||
|
|
43e618333a | ||
|
|
6e1c7716dc | ||
|
|
b2a1e82963 | ||
|
|
0dd1f90c83 | ||
|
|
22b7a675e4 | ||
|
|
74dd67642c | ||
|
|
44f0c9cd89 | ||
|
|
28fdb423b4 | ||
|
|
de169e9d0d | ||
|
|
ffbe7696a4 | ||
|
|
57254e0ebe | ||
|
|
4b671b5794 | ||
|
|
9cd413f2f3 | ||
|
|
777bf48b50 | ||
|
|
11d4ea206d | ||
|
|
8e7311ea01 | ||
|
|
e63186bebc | ||
|
|
17ca0c1cb1 | ||
|
|
c9df7a9f49 | ||
|
|
0e9963bd3b | ||
|
|
2cde597be6 | ||
|
|
5829ff5d07 | ||
|
|
9a7360bfee | ||
|
|
2d42ed1c06 | ||
|
|
031823c81c | ||
|
|
5b8b73ff16 | ||
|
|
80541095fd | ||
|
|
ed7861ec12 | ||
|
|
f6a1a091b5 | ||
|
|
6d7bbc2df7 | ||
|
|
f7b65f788f | ||
|
|
af282693c8 | ||
|
|
5bb7c6f786 | ||
|
|
7e1bce2cea | ||
|
|
1c873e4026 | ||
|
|
964f5d38e5 | ||
|
|
b3c0cf094a | ||
|
|
6c7a4a6fc0 | ||
|
|
45aa02ca1f | ||
|
|
2e8f06232a | ||
|
|
9a2ba678d0 | ||
|
|
4e73e2a2f7 | ||
|
|
2a4b5b6d75 | ||
|
|
e5b51d8572 | ||
|
|
a84df7d07c | ||
|
|
74f062cce7 | ||
|
|
a4f6c0326f | ||
|
|
e66bcc124f | ||
|
|
6b00121a43 | ||
|
|
2813c64101 | ||
|
|
6542d43cf9 | ||
|
|
ac2df6f915 | ||
|
|
fd98df7548 | ||
|
|
d1415d6cfb | ||
|
|
3045e3e930 | ||
|
|
a1b59d6e69 | ||
|
|
1a0bccdf72 | ||
|
|
3529fa8d70 | ||
|
|
aa00eb6e79 | ||
|
|
759a2ac7c7 | ||
|
|
f5e26917c3 | ||
|
|
0d663bd8a1 | ||
|
|
2d9605fbda | ||
|
|
50e2ab4275 | ||
|
|
0708491056 | ||
|
|
44e8a56610 | ||
|
|
158c83c972 | ||
|
|
46cced07c3 | ||
|
|
6597171011 | ||
|
|
26ada18301 | ||
|
|
93ebbbb3de | ||
|
|
215da1c0ab | ||
|
|
b599b807d8 | ||
|
|
deaf3295fd | ||
|
|
0abec78aae | ||
|
|
63fea7ece4 | ||
|
|
f11b3b837b | ||
|
|
6c879c46dc | ||
|
|
407a477c6a | ||
|
|
27af366234 | ||
|
|
b76a25d649 | ||
|
|
8a2189c763 | ||
|
|
c158eabedc | ||
|
|
ff97c6120a | ||
|
|
1314d0da93 | ||
|
|
1d9a5fb552 | ||
|
|
4ef8e7be88 | ||
|
|
a74e1fa489 | ||
|
|
b9f9437fa7 | ||
|
|
36200eba32 | ||
|
|
d8af1a76e7 | ||
|
|
a47a6065df | ||
|
|
f6e58f7534 | ||
|
|
a5dab5fb5a | ||
|
|
9776ac1812 | ||
|
|
099e5678f7 | ||
|
|
3235472e0f | ||
|
|
19b934cb6c | ||
|
|
4b2211b5c0 | ||
|
|
88bd544c90 | ||
|
|
31a01c8d39 | ||
|
|
d29859c6b3 | ||
|
|
4c800f37f0 | ||
|
|
470d302ed2 | ||
|
|
ae2a1db1ef | ||
|
|
94b62b7224 | ||
|
|
8fe84b999a | ||
|
|
da5b316acd | ||
|
|
eb5fdbb08c | ||
|
|
ad73e3894c | ||
|
|
26650d2a00 | ||
|
|
4395eac500 | ||
|
|
90e60a5e03 | ||
|
|
e647e0d248 | ||
|
|
31c046720a | ||
|
|
03b70b43a6 | ||
|
|
de2b3b9433 | ||
|
|
a51f671c3c | ||
|
|
314cdf79bf | ||
|
|
d7137b41fe | ||
|
|
acad9f66a6 | ||
|
|
8d0565854c | ||
|
|
6932fecbbd | ||
|
|
3e6ed3d7b0 | ||
|
|
85e76892b7 | ||
|
|
65cbc4bea3 | ||
|
|
79d177144a | ||
|
|
8cb2b0bfa7 | ||
|
|
201de6a6db | ||
|
|
f65b11bc6d | ||
|
|
86031bb428 | ||
|
|
58f62e1bd5 | ||
|
|
6212e35382 | ||
|
|
c8d0c6269f | ||
|
|
e6f40932ed | ||
|
|
f8af02c400 | ||
|
|
932a7c3126 | ||
|
|
f0c2ac566f | ||
|
|
19224e5f18 | ||
|
|
6c325af80e | ||
|
|
bb82b78cb7 | ||
|
|
eb30eed735 | ||
|
|
3198977143 | ||
|
|
f3b3c21aaa | ||
|
|
0606afbb64 | ||
|
|
5362df02a5 | ||
|
|
3d15bd7f46 | ||
|
|
15e94ecf2c | ||
|
|
ebb3873fe4 | ||
|
|
c1231cd964 | ||
|
|
53ab0a3fa0 | ||
|
|
aeeff67d2e | ||
|
|
4343703eb3 | ||
|
|
5f09bdbce2 | ||
|
|
3a3e3625f2 | ||
|
|
bdf14c1997 | ||
|
|
d6e064ae00 | ||
|
|
1012094568 | ||
|
|
4117537ff2 | ||
|
|
2a72cb70d6 | ||
|
|
b1cd9d9389 | ||
|
|
568dfc973d | ||
|
|
2e74cec0db | ||
|
|
db378159d6 | ||
|
|
50ff2d8f1b | ||
|
|
061495fb27 | ||
|
|
40cb59ddfd | ||
|
|
38affddc9e | ||
|
|
17dcb90473 | ||
|
|
772402b46f | ||
|
|
29bd8a289c | ||
|
|
79d9e73608 | ||
|
|
b04f8d75f3 | ||
|
|
32b1d123d2 | ||
|
|
b576cafaa4 | ||
|
|
312ef93ffc | ||
|
|
a1dda0c247 | ||
|
|
0c36b96922 | ||
|
|
07e92f052b | ||
|
|
244c834de9 | ||
|
|
61b5c2cffd | ||
|
|
1441bd63cb | ||
|
|
e7d0db0fc0 | ||
|
|
a87d340b25 | ||
|
|
3f0d90cb7c | ||
|
|
b9e9f9b122 | ||
|
|
f2d1cf3baf | ||
|
|
cf1112327a | ||
|
|
c2cb28668d | ||
|
|
75f4fcb91a | ||
|
|
3d92bd0584 | ||
|
|
52ca98a14d | ||
|
|
629a73a5cf | ||
|
|
077ec43855 | ||
|
|
3ecd3618cb | ||
|
|
38bc34913b | ||
|
|
c733e5ceea | ||
|
|
e2536ceb92 | ||
|
|
c17b6f073d | ||
|
|
936b177776 | ||
|
|
7d8036fe69 | ||
|
|
6d08d1a265 | ||
|
|
48aba1c055 | ||
|
|
0b3d3317bf | ||
|
|
d1fbdc581b | ||
|
|
044170eb4b | ||
|
|
a7c16b3ceb | ||
|
|
dd12be2275 | ||
|
|
1049bc543a | ||
|
|
5c5ad3cd32 | ||
|
|
6fce521122 | ||
|
|
2af9941ea6 | ||
|
|
9b24f742d1 | ||
|
|
b36bcf7733 | ||
|
|
9559dbdcd6 | ||
|
|
668dd4b5bf | ||
|
|
b98feab9c4 | ||
|
|
5f4711ac3e | ||
|
|
4a931cbdc0 | ||
|
|
90b2ddbdf2 | ||
|
|
3d6cacc753 | ||
|
|
3aed315dfc | ||
|
|
06233cca8c | ||
|
|
3da0ab260a | ||
|
|
5d47159151 | ||
|
|
7e92a7382e | ||
|
|
e69dcd87df | ||
|
|
fb9589f642 | ||
|
|
b034075437 | ||
|
|
cd10906811 | ||
|
|
a1e0bd9a0e | ||
|
|
2dd70db4c2 | ||
|
|
fc835cd1ab | ||
|
|
5d88058354 | ||
|
|
cda111f623 | ||
|
|
fc5ea6204d | ||
|
|
70ba72bf8b | ||
|
|
c9f84a5a32 | ||
|
|
10f53d1bd9 | ||
|
|
7624aac935 | ||
|
|
06ffb89198 | ||
|
|
d48ce5ad94 | ||
|
|
5c1dd57802 | ||
|
|
1f4133676a | ||
|
|
f83d40d137 | ||
|
|
0999cb7b86 | ||
|
|
c58d6311e1 | ||
|
|
8c9016d7e3 | ||
|
|
072d768ef6 | ||
|
|
7eabe77358 | ||
|
|
e4df74bbae | ||
|
|
80f7d50770 | ||
|
|
31d901ba1c | ||
|
|
4e2a43a6cd | ||
|
|
0408d437e1 | ||
|
|
5a6c36d421 | ||
|
|
5fc07f9ae3 | ||
|
|
91cbe6d8ec | ||
|
|
c2aa87beab | ||
|
|
0094699a88 | ||
|
|
4adaf9a315 | ||
|
|
01eee827df | ||
|
|
fd87241887 | ||
|
|
d63792cb15 | ||
|
|
e2c4992b51 | ||
|
|
481d929f2b | ||
|
|
3d1f1d1e12 | ||
|
|
9f4ef7e1ad | ||
|
|
7d24f0c5ae | ||
|
|
67408130b1 | ||
|
|
cdb9504e5f | ||
|
|
977b32de6e | ||
|
|
4ae4eb00e9 | ||
|
|
063fca6dd1 | ||
|
|
a650bfe94c | ||
|
|
517448da06 | ||
|
|
8ba9abdace | ||
|
|
193d03e0eb | ||
|
|
363cfe1443 | ||
|
|
d9cd36966e | ||
|
|
02bfae55b9 | ||
|
|
6edbf64104 | ||
|
|
1c29319036 | ||
|
|
8c8664cafa | ||
|
|
652c7f4e4b | ||
|
|
753fbc30df | ||
|
|
01de9a4ae1 | ||
|
|
aa52784174 | ||
|
|
dc72e2162e | ||
|
|
8ef37cedfb | ||
|
|
08a77ce0eb | ||
|
|
afc6f21a6a | ||
|
|
bdc2a9a5d3 | ||
|
|
c27365bccd | ||
|
|
83d4fc727d | ||
|
|
5bf4819d83 | ||
|
|
60221743f6 | ||
|
|
9d78661ecb | ||
|
|
addedb6f9b | ||
|
|
e1701b2ba7 | ||
|
|
380a0e4f4c | ||
|
|
7fb24c0471 | ||
|
|
aaae483ad8 | ||
|
|
578652b9ba | ||
|
|
b8133b17fe | ||
|
|
8226a4fcb9 | ||
|
|
ea85a63da9 | ||
|
|
21e784fb09 | ||
|
|
0a1fb5a51e | ||
|
|
2a3c3e07e2 | ||
|
|
f8eb86806e | ||
|
|
25a7c47c3c | ||
|
|
f08d92fef4 | ||
|
|
362a84de51 | ||
|
|
64fefef31a | ||
|
|
b0fced6f98 | ||
|
|
406f79ee36 | ||
|
|
893fc758b1 | ||
|
|
126de62f80 | ||
|
|
0ee634a83d | ||
|
|
d4f634e8af | ||
|
|
f544e1203d | ||
|
|
d0a373f5f4 | ||
|
|
e4dfed3940 | ||
|
|
7f674f89d2 | ||
|
|
0d593a07e6 | ||
|
|
261c8fbec1 | ||
|
|
d5262e3ad2 | ||
|
|
527543331a | ||
|
|
75623f2a95 | ||
|
|
29f6658256 | ||
|
|
dbc6606237 | ||
|
|
1108456a8e | ||
|
|
2debf36cb6 | ||
|
|
896101b840 | ||
|
|
a84854a5b1 | ||
|
|
461966de96 | ||
|
|
6dd3713641 | ||
|
|
d51b301364 | ||
|
|
f8db5d3881 | ||
|
|
781a00e7c2 | ||
|
|
a1bb73ba9d | ||
|
|
d6390108c2 | ||
|
|
fee954c95f | ||
|
|
0347eabc04 | ||
|
|
c6bcd8a89c | ||
|
|
114bcb0d4b | ||
|
|
f4a1a04997 | ||
|
|
70a859e00b | ||
|
|
8d3b2ef474 | ||
|
|
76efc0a0e0 | ||
|
|
166734757f | ||
|
|
97f401371f | ||
|
|
b012e5377b | ||
|
|
3b18dc33d8 | ||
|
|
d798f01576 | ||
|
|
55281bd7d6 | ||
|
|
88e9bde0a9 | ||
|
|
54d5a16761 | ||
|
|
701da50479 | ||
|
|
b43b6aa2d0 | ||
|
|
4279e9d100 | ||
|
|
e5bd979880 | ||
|
|
9a48169bf3 | ||
|
|
99cfd99815 | ||
|
|
e8f082d885 | ||
|
|
b63f475a8c | ||
|
|
e183f10969 | ||
|
|
c1e624b9a0 |
11
.dockerignore
Normal file
11
.dockerignore
Normal file
@@ -0,0 +1,11 @@
|
||||
**/.*/
|
||||
!.git/
|
||||
**/build/
|
||||
**/dist/
|
||||
**/out/
|
||||
**/target/
|
||||
utils/
|
||||
!utils/repr_build/scripts/
|
||||
.env
|
||||
gradlew.bat
|
||||
local.properties
|
||||
@@ -9,7 +9,7 @@ insert_final_newline = true
|
||||
max_line_length = 120
|
||||
trim_trailing_whitespace = true
|
||||
|
||||
[{*.har,*.json,*yml}]
|
||||
[{*.har,*.json,*yml,*.sh}]
|
||||
indent_size = 2
|
||||
|
||||
[*.kt]
|
||||
|
||||
1
.github/FUNDING.yml
vendored
1
.github/FUNDING.yml
vendored
@@ -1,2 +1,3 @@
|
||||
github: [patrickgold]
|
||||
liberapay: patrickgold
|
||||
custom: ["https://paypal.me/devpatrickgold"]
|
||||
|
||||
34
.github/ISSUE_TEMPLATE/bug_report.md
vendored
34
.github/ISSUE_TEMPLATE/bug_report.md
vendored
@@ -1,34 +0,0 @@
|
||||
---
|
||||
name: Bug report
|
||||
about: Create a report to help FlorisBoard improve
|
||||
title: ''
|
||||
labels: bug
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
<!--
|
||||
Thank you for your help in making FlorisBoard better!
|
||||
|
||||
Guide to a good bug-report:
|
||||
• Please search existing bug/crash reports reports to avoid creating duplicates.
|
||||
• Give your bug report a good name (no generics like "Error" or "Crash"), so others can easily identify the topic of your issue.
|
||||
• Describe the bug in a short but concise way.
|
||||
• If you have a screenshot or screen recording of the bug, link them at the end of this issue.
|
||||
• Also make sure to fill out the environment information. This info is valuable when trying to fix your described bug.
|
||||
-->
|
||||
|
||||
#### Short description
|
||||
Describe the bug in a short but concise way.
|
||||
|
||||
#### Steps to reproduce
|
||||
1. Go to '…'
|
||||
2. Click on '…'
|
||||
3. Scroll down to '…'
|
||||
4. See error
|
||||
|
||||
#### Environment information
|
||||
- FlorisBoard Version: <!-- e.g. 0.X.X -->
|
||||
- Install Source: <!-- Google PlayStore/F-Droid/GitHub/? -->
|
||||
- Device: <!-- e.g. OnePlus 7T -->
|
||||
- Android: <!-- e.g. 10, Stock -->
|
||||
75
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
Normal file
75
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
Normal file
@@ -0,0 +1,75 @@
|
||||
name: 🐛 Bug Report
|
||||
description: Create a report to help FlorisBoard improve
|
||||
labels:
|
||||
- "bug"
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
Thank you for your help in making FlorisBoard better!
|
||||
Guide to a good bug-report:
|
||||
• Please search existing bug/crash reports reports to avoid creating duplicates.
|
||||
• Give your bug report a good name (no generics like "Error" or "Crash"), so others can easily identify the topic of your issue.
|
||||
• Describe the bug in a short but concise way.
|
||||
• If you have a screenshot or screen recording of the bug, link them at the end of this issue.
|
||||
• Also make sure to fill out the environment information. This info is valuable when trying to fix your described bug.
|
||||
- type: textarea
|
||||
id: description
|
||||
attributes:
|
||||
label: Short description
|
||||
description: Describe the bug in a short but concise way.
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: reproduce
|
||||
attributes:
|
||||
label: Steps to reproduce
|
||||
value: |
|
||||
1. Go to '…'
|
||||
2. Click on '…'
|
||||
3. Scroll down to '…'
|
||||
4. See error
|
||||
validations:
|
||||
required: true
|
||||
- type: input
|
||||
id: florisversion
|
||||
attributes:
|
||||
label: FlorisBoard Version
|
||||
placeholder: e.g. 0.X.X
|
||||
validations:
|
||||
required: true
|
||||
- type: dropdown
|
||||
id: installsource
|
||||
attributes:
|
||||
label: Install Source
|
||||
options:
|
||||
- Google PlayStore
|
||||
- F-Droid
|
||||
- GitHub
|
||||
validations:
|
||||
required: true
|
||||
- type: input
|
||||
id: device
|
||||
attributes:
|
||||
label: Device
|
||||
placeholder: e.g. OnePlus 7T
|
||||
validations:
|
||||
required: true
|
||||
- type: input
|
||||
id: androidversion
|
||||
attributes:
|
||||
label: Android
|
||||
placeholder: e.g. 10, Stock
|
||||
validations:
|
||||
required: true
|
||||
- type: checkboxes
|
||||
id: checklist
|
||||
attributes:
|
||||
label: "Checklist"
|
||||
options:
|
||||
- label: "I made sure that there are *no existing issues* - [open](https://github.com/florisboard/florisboard/issues) or [closed](https://github.com/florisboard/florisboard/issues?q=is%3Aissue+is%3Aclosed) - which I could contribute my information to."
|
||||
required: true
|
||||
- label: "I have read and understood the [contribution guidelines](https://github.com/florisboard/florisboard/blob/main/CONTRIBUTING.md)."
|
||||
required: true
|
||||
- label: "I have taken the time to fill in all the required details. I understand that the bug report will be dismissed otherwise."
|
||||
required: true
|
||||
12
.github/ISSUE_TEMPLATE/config.yml
vendored
12
.github/ISSUE_TEMPLATE/config.yml
vendored
@@ -1,8 +1,8 @@
|
||||
blank_issues_enabled: false
|
||||
contact_links:
|
||||
- name: Ask a question
|
||||
url: https://github.com/florisboard/florisboard/discussions/new?category=q-a
|
||||
about: Ask here if you have a question about FlorisBoard or need assistance
|
||||
- name: General feedback
|
||||
url: https://github.com/florisboard/florisboard/discussions/new?category=feedback
|
||||
about: Give general feedback about this project
|
||||
- name: 💬 Matrix
|
||||
url: https://matrix.to/#/#florisboard:matrix.org
|
||||
about: General chat about FlorisBoard and quick Q/A
|
||||
- name: ❓ Questions / Feedback
|
||||
url: https://github.com/florisboard/florisboard/discussions/new/choose
|
||||
about: Post your questions or feedback in the discussions panel
|
||||
|
||||
28
.github/ISSUE_TEMPLATE/crash_report.md
vendored
28
.github/ISSUE_TEMPLATE/crash_report.md
vendored
@@ -1,28 +0,0 @@
|
||||
---
|
||||
name: Crash report
|
||||
about: Create a report with a generated crash log attached to help FlorisBoard improve
|
||||
title: ''
|
||||
labels: bug
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
<!--
|
||||
Thank you for your help in making FlorisBoard better!
|
||||
|
||||
Guide to a good crash-report:
|
||||
• Please search existing bug/crash reports to avoid creating duplicates.
|
||||
• Give your crash report a good name (no generics like "Error" or "Crash"), so others can easily identify the topic of your issue.
|
||||
• Describe what you were doing what could've led to the crash and whether the crash is random or reproducible.
|
||||
-->
|
||||
|
||||
#### Short description
|
||||
Describe what you were doing that could've led to the crash.
|
||||
|
||||
#### Steps to reproduce
|
||||
1. Go to '…'
|
||||
2. Click on '…'
|
||||
3. Scroll down to '…'
|
||||
4. See crash
|
||||
|
||||
<!-- Paste the generated crash log below -->
|
||||
49
.github/ISSUE_TEMPLATE/crash_report.yml
vendored
Normal file
49
.github/ISSUE_TEMPLATE/crash_report.yml
vendored
Normal file
@@ -0,0 +1,49 @@
|
||||
name: 💥 Crash report
|
||||
description: Create a report with a generated crash log attached to help FlorisBoard improve
|
||||
labels:
|
||||
- "bug"
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
Thank you for your help in making FlorisBoard better!
|
||||
Guide to a good crash-report:
|
||||
• Please search existing bug/crash reports to avoid creating duplicates.
|
||||
• Give your crash report a good name (no generics like "Error" or "Crash"), so others can easily identify the topic of your issue.
|
||||
• Describe what you were doing what could've led to the crash and whether the crash is random or reproducible.
|
||||
- type: textarea
|
||||
id: description
|
||||
attributes:
|
||||
label: Short description
|
||||
description: Describe the bug in a short but concise way.
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: reproduce
|
||||
attributes:
|
||||
label: Steps to reproduce
|
||||
value: |
|
||||
1. Go to '…'
|
||||
2. Click on '…'
|
||||
3. Scroll down to '…'
|
||||
4. See crash
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: crashlog
|
||||
attributes:
|
||||
label: Crash log
|
||||
description: Paste the generated crash log below
|
||||
validations:
|
||||
required: true
|
||||
- type: checkboxes
|
||||
id: checklist
|
||||
attributes:
|
||||
label: "Checklist"
|
||||
options:
|
||||
- label: "I made sure that there are *no existing issues* - [open](https://github.com/florisboard/florisboard/issues) or [closed](https://github.com/florisboard/florisboard/issues?q=is%3Aissue+is%3Aclosed) - which I could contribute my information to."
|
||||
required: true
|
||||
- label: "I have read and understood the [contribution guidelines](https://github.com/florisboard/florisboard/blob/main/CONTRIBUTING.md)."
|
||||
required: true
|
||||
- label: "I have taken the time to fill in all the required details. I understand that the crash report will be dismissed otherwise."
|
||||
required: true
|
||||
18
.github/ISSUE_TEMPLATE/feature_request.md
vendored
18
.github/ISSUE_TEMPLATE/feature_request.md
vendored
@@ -1,18 +0,0 @@
|
||||
---
|
||||
name: Feature request / Suggestion
|
||||
about: Suggest an idea for this project
|
||||
title: ''
|
||||
labels: proposal
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
<!--
|
||||
Thank you for your help in making FlorisBoard better!
|
||||
|
||||
Guide to a good feature-request:
|
||||
• Please search existing proposals to avoid creating duplicates.
|
||||
• If you have multiple ideas which are not directly connected to other, file a new issue for each idea. This makes it easier to implement your proposals.
|
||||
• Describe your idea in a short but concise way.
|
||||
• If you have any examples, e.g. screenshots or other keyboards have the proposed feature implemented, feel free to post them after your description.
|
||||
-->
|
||||
33
.github/ISSUE_TEMPLATE/feature_request.yml
vendored
Normal file
33
.github/ISSUE_TEMPLATE/feature_request.yml
vendored
Normal file
@@ -0,0 +1,33 @@
|
||||
name: ✨ Feature request
|
||||
description: Suggest an idea for this project
|
||||
labels:
|
||||
- "proposal"
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
Thank you for your help in making FlorisBoard better!
|
||||
|
||||
Guide to a good feature-request:
|
||||
• Please search existing proposals to avoid creating duplicates.
|
||||
• If you have multiple ideas which are not directly connected to other, file a new issue for each idea. This makes it easier to implement your proposals.
|
||||
• Describe your idea in a short but concise way.
|
||||
• If you have any examples, e.g. screenshots or other keyboards have the proposed feature implemented, feel free to post them after your description.
|
||||
- type: textarea
|
||||
id: feature
|
||||
attributes:
|
||||
label: Feature idea
|
||||
description: Please explain your idea in a precise way.
|
||||
validations:
|
||||
required: true
|
||||
- type: checkboxes
|
||||
id: checklist
|
||||
attributes:
|
||||
label: "Checklist"
|
||||
options:
|
||||
- label: "I made sure that there are *no existing issues* - [open](https://github.com/florisboard/florisboard/issues) or [closed](https://github.com/florisboard/florisboard/issues?q=is%3Aissue+is%3Aclosed) - which I could contribute my information to."
|
||||
required: true
|
||||
- label: "I have read and understood the [contribution guidelines](https://github.com/florisboard/florisboard/blob/main/CONTRIBUTING.md)."
|
||||
required: true
|
||||
- label: "I have taken the time to fill in all the required details. I understand that the feature request will be dismissed otherwise."
|
||||
required: true
|
||||
BIN
.github/repo_icon.png
vendored
Normal file
BIN
.github/repo_icon.png
vendored
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 55 KiB |
36
.github/workflows/android.yml
vendored
36
.github/workflows/android.yml
vendored
@@ -2,46 +2,40 @@ name: FlorisBoard CI
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ master ]
|
||||
branches: [ main ]
|
||||
paths-ignore:
|
||||
- ".github/ISSUE_TEMPLATE/**"
|
||||
- ".github/FUNDING.yml"
|
||||
- ".editorconfig"
|
||||
- "fastlane/**"
|
||||
- "CONTRIBUTING.md"
|
||||
- "CODE_OF_CONDUCT.md"
|
||||
- "LICENSE"
|
||||
- "README.md"
|
||||
- "ROADMAP.md"
|
||||
pull_request:
|
||||
branches: [ master ]
|
||||
branches: [ main ]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Checkout submodules
|
||||
run: git submodule update --init --recursive
|
||||
- name: set up JDK 11
|
||||
uses: actions/setup-java@v1
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
java-version: 11
|
||||
- name: Setup CMake and Ninja
|
||||
uses: lukka/get-cmake@v3.20.1
|
||||
- uses: actions/cache@v2
|
||||
submodules: recursive
|
||||
|
||||
- uses: gradle/actions/wrapper-validation@v4
|
||||
- name: Set up JDK 17
|
||||
uses: actions/setup-java@v4
|
||||
with:
|
||||
path: |
|
||||
~/.gradle/caches
|
||||
~/.gradle/wrapper
|
||||
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-gradle-
|
||||
java-version: 17
|
||||
distribution: temurin
|
||||
- name: Set up CMake and Ninja
|
||||
uses: lukka/get-cmake@v4.0.2
|
||||
- name: Build with Gradle
|
||||
# MUST call gradlew separately because of an OSS license plugin issue.
|
||||
# See https://github.com/google/play-services-plugins/issues/199
|
||||
run: ./gradlew clean && ./gradlew assembleDebug
|
||||
- uses: actions/upload-artifact@v2
|
||||
run: ./gradlew clean assembleDebug
|
||||
- uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: app-debug.apk
|
||||
path: app/build/outputs/apk/debug/app-debug.apk
|
||||
|
||||
6
.github/workflows/crowdin-upload.yml
vendored
6
.github/workflows/crowdin-upload.yml
vendored
@@ -2,7 +2,7 @@ name: Crowdin Upload Sources
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ master ]
|
||||
branches: [ main ]
|
||||
paths:
|
||||
- "app/src/main/res/values/strings.xml"
|
||||
- ".github/workflows/crowdin-upload.yml"
|
||||
@@ -13,9 +13,9 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
uses: actions/checkout@v4
|
||||
- name: Upload
|
||||
uses: crowdin/github-action@1.4.0
|
||||
uses: crowdin/github-action@v2
|
||||
with:
|
||||
config: "crowdin.yml"
|
||||
upload_sources: true
|
||||
|
||||
61
.github/workflows/validate-strings-no-translations.yml
vendored
Normal file
61
.github/workflows/validate-strings-no-translations.yml
vendored
Normal file
@@ -0,0 +1,61 @@
|
||||
name: Validate no translated strings.xml included
|
||||
|
||||
on:
|
||||
pull_request_target:
|
||||
branches: [ main ]
|
||||
|
||||
jobs:
|
||||
validate:
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
contents: read
|
||||
pull-requests: write
|
||||
steps:
|
||||
- name: Precheck if validation is required
|
||||
id: precheck
|
||||
run: |
|
||||
pr_author="${{ github.event.pull_request.user.login }}"
|
||||
if [[ "$pr_author" == "florisboard-bot" ]]; then
|
||||
echo "PR is by florisboard-bot, skipping validation!"
|
||||
echo "require_validation=false" >> "$GITHUB_OUTPUT"
|
||||
else
|
||||
echo "PR is not by florisboard-bot, requiring validation!"
|
||||
echo "require_validation=true" >> "$GITHUB_OUTPUT"
|
||||
fi
|
||||
|
||||
- name: Fetch PR changed files manually
|
||||
id: fetch_changed_files
|
||||
if: steps.precheck.outputs.require_validation == 'true'
|
||||
run: |
|
||||
pr_files="$(curl -sSf https://api.github.com/repos/${{ github.repository }}/pulls/${{ github.event.pull_request.number }}/files?per_page=1000)" || exit 11
|
||||
changed_files="$(jq -r '.[].filename' <<< "$pr_files")" || exit 12
|
||||
illegal_changes_list="$(grep -E '^app/src/main/res/values-.+/strings.xml$' <<< "$changed_files")" || true
|
||||
if [ -n "$illegal_changes_list" ]; then
|
||||
echo -e "Illegal changes detected:\n$illegal_changes_list"
|
||||
else
|
||||
echo "No illegal changes detected"
|
||||
fi
|
||||
echo "illegal_changes_list<<EOF" >> "$GITHUB_OUTPUT"
|
||||
echo "$illegal_changes_list" >> "$GITHUB_OUTPUT"
|
||||
echo "EOF" >> "$GITHUB_OUTPUT"
|
||||
|
||||
- name: Create comment if illegal files detected
|
||||
uses: peter-evans/create-or-update-comment@v4
|
||||
if: steps.precheck.outputs.require_validation == 'true' && steps.fetch_changed_files.outputs.illegal_changes_list != ''
|
||||
with:
|
||||
issue-number: ${{ github.event.pull_request.number }}
|
||||
body: |
|
||||
⚠️ Illegal changes detected
|
||||
|
||||
Hey there!
|
||||
|
||||
We detected illegal changes that disobey the [contribution guidelines](https://github.com/florisboard/florisboard/blob/main/CONTRIBUTING.md#translation). This is a kind reminder that pull requests must not contain translated `strings.xml` files, as those are exclusively managed from Crowdin.
|
||||
|
||||
Please remove changes to the following files:
|
||||
```
|
||||
${{ steps.fetch_changed_files.outputs.illegal_changes_list }}
|
||||
```
|
||||
|
||||
- name: Fail workflow if illegal files detected
|
||||
if: steps.precheck.outputs.require_validation == 'true' && steps.fetch_changed_files.outputs.illegal_changes_list != ''
|
||||
run: echo -e "Illegal changes detected:\n${{ steps.fetch_changed_files.outputs.illegal_changes_list }}" && exit 1
|
||||
19
.gitignore
vendored
19
.gitignore
vendored
@@ -1,7 +1,11 @@
|
||||
# Built application files
|
||||
*.apk
|
||||
*.aab
|
||||
*.ap_
|
||||
|
||||
# dotenv
|
||||
.env
|
||||
|
||||
# Files for the ART/Dalvik VM
|
||||
*.dex
|
||||
|
||||
@@ -36,6 +40,7 @@ captures/
|
||||
# Intellij
|
||||
*.iml
|
||||
.idea/
|
||||
!/.idea/copyright/
|
||||
|
||||
# Keystore files
|
||||
*.jks
|
||||
@@ -44,5 +49,15 @@ crowdin.properties
|
||||
# C++
|
||||
.cxx/
|
||||
|
||||
# AndroidX Room schema JSONs
|
||||
/app/schemas/
|
||||
# Nix stuff
|
||||
.direnv/
|
||||
result
|
||||
|
||||
# VSCode
|
||||
.vscode/
|
||||
|
||||
# Rust
|
||||
debug/
|
||||
target/
|
||||
**/*.rs.bk
|
||||
*.pdb
|
||||
|
||||
3
.gitmodules
vendored
3
.gitmodules
vendored
@@ -1,3 +0,0 @@
|
||||
[submodule "app/src/main/icu4c"]
|
||||
path = app/src/main/icu4c
|
||||
url = https://github.com/florisboard/icu4c
|
||||
6
.idea/copyright/copyright.xml
generated
Normal file
6
.idea/copyright/copyright.xml
generated
Normal file
@@ -0,0 +1,6 @@
|
||||
<component name="CopyrightManager">
|
||||
<copyright>
|
||||
<option name="notice" value="Copyright (C) &#36;originalComment.match("Copyright \(C\) (\d+)", 1, "-", "&#36;today.year")&#36;today.year The FlorisBoard Contributors Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License." />
|
||||
<option name="myName" value="copyright" />
|
||||
</copyright>
|
||||
</component>
|
||||
15
.idea/copyright/profiles_settings.xml
generated
Normal file
15
.idea/copyright/profiles_settings.xml
generated
Normal file
@@ -0,0 +1,15 @@
|
||||
<component name="CopyrightManager">
|
||||
<settings default="copyright">
|
||||
<module2copyright>
|
||||
<element module="Project Files" copyright="copyright" />
|
||||
</module2copyright>
|
||||
<LanguageOptions name="Shell Script">
|
||||
<option name="fileTypeOverride" value="1" />
|
||||
</LanguageOptions>
|
||||
<LanguageOptions name="XML">
|
||||
<option name="fileTypeOverride" value="1" />
|
||||
<option name="prefixLines" value="false" />
|
||||
</LanguageOptions>
|
||||
<LanguageOptions name="__TEMPLATE__" />
|
||||
</settings>
|
||||
</component>
|
||||
226
.idea/icon.svg
generated
Normal file
226
.idea/icon.svg
generated
Normal file
@@ -0,0 +1,226 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
id="vector"
|
||||
width="108"
|
||||
height="108"
|
||||
viewBox="0 0 108 108"
|
||||
version="1.1"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<defs
|
||||
id="defs10">
|
||||
<radialGradient
|
||||
gradientUnits="userSpaceOnUse"
|
||||
r="20.594"
|
||||
cx="54.141998"
|
||||
cy="48.769001"
|
||||
id="gradient_0"
|
||||
gradientTransform="matrix(2.193116,0,0,2.193116,-64.427669,-59.442216)">
|
||||
<stop
|
||||
offset="0"
|
||||
stop-color="#55E032FF"
|
||||
id="stop1" />
|
||||
<stop
|
||||
offset="1"
|
||||
stop-color="#227C53FF"
|
||||
id="stop2" />
|
||||
</radialGradient>
|
||||
<radialGradient
|
||||
gradientUnits="userSpaceOnUse"
|
||||
r="20.594"
|
||||
cx="54.141998"
|
||||
cy="48.769001"
|
||||
id="gradient_1"
|
||||
gradientTransform="matrix(2.193116,0,0,2.193116,-64.427669,-59.442216)">
|
||||
<stop
|
||||
offset="0"
|
||||
stop-color="#55E032FF"
|
||||
id="stop3" />
|
||||
<stop
|
||||
offset="1"
|
||||
stop-color="#227C53FF"
|
||||
id="stop4" />
|
||||
</radialGradient>
|
||||
<radialGradient
|
||||
gradientUnits="userSpaceOnUse"
|
||||
r="12.849"
|
||||
cx="54.029999"
|
||||
cy="39.144001"
|
||||
id="gradient_2"
|
||||
gradientTransform="matrix(2.193116,0,0,2.193116,-64.427669,-59.442216)">
|
||||
<stop
|
||||
offset="0"
|
||||
stop-color="#FE7901FF"
|
||||
id="stop5" />
|
||||
<stop
|
||||
offset="1"
|
||||
stop-color="#FEBE01FF"
|
||||
id="stop6" />
|
||||
</radialGradient>
|
||||
<radialGradient
|
||||
gradientUnits="userSpaceOnUse"
|
||||
r="20.594"
|
||||
cx="54.141998"
|
||||
cy="48.769001"
|
||||
id="gradient_3"
|
||||
gradientTransform="matrix(2.193116,0,0,2.193116,-64.427669,-59.442216)">
|
||||
<stop
|
||||
offset="0"
|
||||
stop-color="#55E032FF"
|
||||
id="stop7" />
|
||||
<stop
|
||||
offset="1"
|
||||
stop-color="#227C53FF"
|
||||
id="stop8" />
|
||||
</radialGradient>
|
||||
<radialGradient
|
||||
gradientUnits="userSpaceOnUse"
|
||||
r="17.913"
|
||||
cx="54.131001"
|
||||
cy="49.819"
|
||||
id="gradient_4"
|
||||
gradientTransform="matrix(2.193116,0,0,2.193116,-64.427669,-59.442216)">
|
||||
<stop
|
||||
offset="0"
|
||||
stop-color="#FE7901FF"
|
||||
id="stop9" />
|
||||
<stop
|
||||
offset="1"
|
||||
stop-color="#FEBE01FF"
|
||||
id="stop10" />
|
||||
</radialGradient>
|
||||
</defs>
|
||||
<path
|
||||
fill="url(#gradient_0)"
|
||||
d="m 12.291915,34.438502 0.434238,0.0066 c 20.014377,0.256595 36.184221,16.58873 36.184221,36.666707 v 6.504782 C 46.434346,77.090222 43.999987,76.362108 41.642388,75.436613 27.045007,69.710386 16.044337,56.538532 13.081437,41.131892 12.655973,38.923423 12.392799,36.686445 12.289722,34.440694 Z"
|
||||
stroke-linejoin="round"
|
||||
fill-rule="evenodd"
|
||||
id="path_0"
|
||||
style="fill:url(#gradient_0);stroke-width:2.19311" />
|
||||
<path
|
||||
fill="url(#gradient_1)"
|
||||
d="m 41.438428,33.83978 c 1.451843,-7.875479 5.219616,-15.404446 11.305513,-21.490344 0.497838,-0.497837 1.004447,-0.980322 1.524216,-1.449649 0.517575,0.469327 1.026378,0.951812 1.526409,1.449649 6.074931,6.077125 9.842705,13.595127 11.29674,21.459641 -5.296375,4.153762 -9.689186,9.412854 -12.829729,15.428571 -3.136156,-5.974047 -7.53774,-11.23314 -12.823149,-15.395674 z"
|
||||
stroke-linejoin="round"
|
||||
fill-rule="evenodd"
|
||||
id="path_1"
|
||||
style="fill:url(#gradient_1);stroke-width:2.19311" />
|
||||
<path
|
||||
fill="url(#gradient_2)"
|
||||
d="M 33.758135,28.900884 C 35.892037,20.613098 40.199317,12.774901 46.684361,6.2876637 48.478331,4.4936948 50.377569,2.8642095 52.362338,1.4035943 L 54.268157,0 56.176168,1.4035943 c 1.984769,1.4628084 3.884009,3.0901005 5.677977,4.8840694 6.480658,6.4806583 10.790132,14.3210483 12.924033,22.6022543 -2.015473,1.030764 -3.949802,2.199695 -5.783247,3.49802 C 67.332549,24.486141 63.437574,16.961559 57.307815,10.833993 56.548998,10.072982 55.768249,9.3492537 54.965567,8.6584222 L 54.265964,8.0553153 53.56636,8.6584222 C 52.765872,9.3492537 51.985123,10.072982 51.226304,10.833993 45.089966,16.970332 41.190606,24.503686 39.53261,32.414255 37.694779,31.111545 35.764837,29.933841 33.753749,28.900884 Z"
|
||||
stroke-linejoin="round"
|
||||
fill-rule="evenodd"
|
||||
id="path_2"
|
||||
style="fill:url(#gradient_2);stroke-width:2.19311" />
|
||||
<path
|
||||
fill="url(#gradient_3)"
|
||||
d="m 96.244398,34.438502 -0.434237,0.0066 c -20.01657,0.256595 -36.186415,16.58873 -36.186415,36.666707 v 6.506976 C 79.890332,73.322449 95.279427,55.74901 96.244398,34.440694 Z"
|
||||
stroke-linejoin="round"
|
||||
fill-rule="evenodd"
|
||||
id="path_3"
|
||||
style="fill:url(#gradient_3);stroke-width:2.19311" />
|
||||
<path
|
||||
fill="url(#gradient_4)"
|
||||
d="m 12.68887,25.874383 0.149132,0.0022 c 4.506853,0.05702 8.996162,0.787328 13.290282,2.168991 11.959063,3.851112 21.891685,12.759549 27.168322,24.058483 l 0.973744,2.083461 0.969357,-2.085654 C 62.347596,36.789522 77.776168,26.104661 95.702698,25.876577 l 0.149133,-0.0022 c 0.291684,2.098811 0.443009,4.241486 0.445201,6.421443 l -0.510995,0.0066 C 74.600536,32.576546 57.485458,49.860493 57.485458,71.111788 v 6.917088 c -1.048309,0.155711 -2.046178,0.188608 -3.079135,0.192995 h -0.13378 c -1.068047,0 -2.144867,-0.07238 -3.212915,-0.219313 v -6.89077 c 0,-21.251295 -17.117271,-38.535242 -38.300578,-38.809382 l -0.510997,-0.0066 c 0,-2.147061 0.149133,-4.296315 0.445203,-6.421443 z"
|
||||
stroke-linejoin="round"
|
||||
fill-rule="evenodd"
|
||||
id="path_4"
|
||||
style="fill:url(#gradient_4);stroke-width:2.19311" />
|
||||
<path
|
||||
fill="#53cd53"
|
||||
d="m 101.9772,99.716601 c 0,-2.46287 -1.997925,-4.462992 -4.460795,-4.462992 H 85.243728 c -2.460676,0 -4.460798,1.997929 -4.460798,4.462992 v 3.822599 c 0,2.46068 1.997928,4.4608 4.460798,4.4608 h 12.272677 c 2.460676,0 4.460795,-1.99793 4.460795,-4.4608 z"
|
||||
stroke-linejoin="round"
|
||||
fill-rule="evenodd"
|
||||
id="path_5"
|
||||
style="stroke-width:2.19311" />
|
||||
<path
|
||||
fill="#ffffff"
|
||||
d="m 78.620517,84.818763 c 0,-2.460676 -1.997928,-4.460798 -4.460797,-4.460798 h -6.096864 c -2.460676,0 -4.460798,1.997929 -4.460798,4.460798 v 3.824795 c 0,2.460676 1.997929,4.460798 4.460798,4.460798 h 6.096864 c 2.460676,0 4.460797,-1.997929 4.460797,-4.460798 z"
|
||||
stroke-linejoin="round"
|
||||
fill-rule="evenodd"
|
||||
id="path_6"
|
||||
style="stroke-width:2.19311" />
|
||||
<path
|
||||
fill="#ffffff"
|
||||
d="m 61.450612,84.818763 c 0,-2.460676 -1.997929,-4.460798 -4.460798,-4.460798 h -6.09467 c -2.460676,0 -4.460798,1.997929 -4.460798,4.460798 v 3.824795 c 0,2.460676 1.997929,4.460798 4.460798,4.460798 h 6.09467 c 2.460676,0 4.460798,-1.997929 4.460798,-4.460798 z"
|
||||
stroke-linejoin="round"
|
||||
fill-rule="evenodd"
|
||||
id="path_7"
|
||||
style="stroke-width:2.19311" />
|
||||
<path
|
||||
fill="#ffffff"
|
||||
d="m 27.11738,84.818763 c 0,-2.460676 -1.997929,-4.460798 -4.460798,-4.460798 h -6.096863 c -2.460676,0 -4.460798,1.997929 -4.460798,4.460798 v 3.824795 c 0,2.460676 1.997929,4.460798 4.460798,4.460798 h 6.096863 c 2.460676,0 4.460798,-1.997929 4.460798,-4.460798 z"
|
||||
stroke-linejoin="round"
|
||||
fill-rule="evenodd"
|
||||
id="path_8"
|
||||
style="stroke-width:2.19311" />
|
||||
<path
|
||||
fill="#ffffff"
|
||||
d="m 95.78823,84.818763 c 0,-2.460676 -1.997929,-4.460798 -4.460798,-4.460798 h -6.09467 c -2.462869,0 -4.462991,1.997929 -4.462991,4.460798 v 3.824795 c 0,2.460676 1.997928,4.460798 4.462991,4.460798 h 6.09467 c 2.460676,0 4.460798,-1.997929 4.460798,-4.460798 z"
|
||||
stroke-linejoin="round"
|
||||
fill-rule="evenodd"
|
||||
id="path_9"
|
||||
style="stroke-width:2.19311" />
|
||||
<path
|
||||
fill="#ffffff"
|
||||
d="m 21.038062,69.923119 c 0,-2.46287 -1.997928,-4.462991 -4.460797,-4.462991 h -6.09467 c -2.4606765,0 -4.4607984,1.997929 -4.4607984,4.462991 v 3.822601 c 0,2.460676 1.9979288,4.460798 4.4607984,4.460798 h 6.09467 c 2.460676,0 4.460797,-1.997928 4.460797,-4.460798 z"
|
||||
stroke-linejoin="round"
|
||||
fill-rule="evenodd"
|
||||
id="path_10"
|
||||
style="stroke-width:2.19311" />
|
||||
<path
|
||||
fill="#ffffff"
|
||||
d="m 101.9772,69.923119 c 0,-2.46287 -1.997925,-4.462991 -4.460795,-4.462991 h -6.09467 c -2.460676,0 -4.460797,1.997929 -4.460797,4.462991 v 3.822601 c 0,2.460676 1.997928,4.460798 4.460797,4.460798 h 6.09467 c 2.460676,0 4.460795,-1.997928 4.460795,-4.460798 z"
|
||||
stroke-linejoin="round"
|
||||
fill-rule="evenodd"
|
||||
id="path_11"
|
||||
style="stroke-width:2.19311" />
|
||||
<path
|
||||
fill="#ffffff"
|
||||
d="m 44.282899,84.818763 c 0,-2.460676 -1.997928,-4.460798 -4.460798,-4.460798 h -6.09467 c -2.462869,0 -4.462991,1.997929 -4.462991,4.460798 v 3.824795 c 0,2.460676 1.99793,4.460798 4.462991,4.460798 h 6.09467 c 2.460676,0 4.460798,-1.997929 4.460798,-4.460798 z"
|
||||
stroke-linejoin="round"
|
||||
fill-rule="evenodd"
|
||||
id="path_12"
|
||||
style="stroke-width:2.19311" />
|
||||
<path
|
||||
fill="#fe9801"
|
||||
d="m 27.21607,99.716601 c 0,-2.46287 -1.997928,-4.462992 -4.460798,-4.462992 H 10.482595 c -2.4606765,0 -4.4607984,1.997929 -4.4607984,4.462992 v 3.822599 c 0,2.46068 1.9979288,4.4608 4.4607984,4.4608 h 12.272677 c 2.460676,0 4.460798,-1.99793 4.460798,-4.4608 z"
|
||||
stroke-linejoin="round"
|
||||
fill-rule="evenodd"
|
||||
id="path_13"
|
||||
style="stroke-width:2.19311" />
|
||||
<path
|
||||
fill="#ffffff"
|
||||
d="m 83.756795,67.041365 c 0.655742,0.776363 1.054889,1.783003 1.054889,2.881754 v 3.822601 c 0,2.460676 -1.997928,4.460798 -4.460798,4.460798 h -6.096863 c -1.557112,0 -2.927809,-0.798293 -3.723911,-2.006701 4.91258,-2.307158 9.377765,-5.414803 13.226683,-9.158452 z"
|
||||
stroke-linejoin="round"
|
||||
fill-rule="evenodd"
|
||||
id="path_14"
|
||||
style="stroke-width:2.19311" />
|
||||
<path
|
||||
fill="#ffffff"
|
||||
d="m 24.529503,66.738714 c 3.796284,3.76558 8.20664,6.919282 13.066585,9.263722 -0.774169,1.320257 -2.210661,2.204082 -3.848919,2.204082 h -6.096862 c -2.460676,0 -4.460798,-1.997928 -4.460798,-4.460798 v -3.822601 c 0,-1.247883 0.510996,-2.375144 1.337801,-3.186598 z"
|
||||
stroke-linejoin="round"
|
||||
fill-rule="evenodd"
|
||||
id="path_15"
|
||||
style="stroke-width:2.19311" />
|
||||
<path
|
||||
fill="#ffffff"
|
||||
d="m 14.015705,51.362778 c 1.868535,4.322632 4.359915,8.346999 7.366677,11.950289 h -4.822663 c -2.460676,0 -4.460798,-1.997928 -4.460798,-4.460797 v -3.824795 c 0,-1.517637 0.758819,-2.85763 1.916784,-3.664697 z"
|
||||
stroke-linejoin="round"
|
||||
fill-rule="evenodd"
|
||||
id="path_16"
|
||||
style="stroke-width:2.19311" />
|
||||
<path
|
||||
fill="#ffffff"
|
||||
d="m 94.369284,51.764118 c 0.87286,0.813646 1.418946,1.975997 1.418946,3.263357 v 3.824795 c 0,2.460676 -1.997929,4.460797 -4.460798,4.460797 h -4.116479 c 2.897106,-3.471703 5.313921,-7.355711 7.156137,-11.548949 z"
|
||||
stroke-linejoin="round"
|
||||
fill-rule="evenodd"
|
||||
id="path_17"
|
||||
style="stroke-width:2.19311" />
|
||||
<path
|
||||
fill="#ffffff"
|
||||
d="m 78.782808,99.819677 c 0,-2.432165 -1.971611,-4.40597 -4.403777,-4.40597 H 33.738397 c -2.432166,0 -4.405969,1.973805 -4.405969,4.40597 v 3.774353 c 0,2.43217 1.973803,4.40378 4.405969,4.40378 h 40.640634 c 2.432166,0 4.403777,-1.97161 4.403777,-4.40378 z"
|
||||
stroke-linejoin="round"
|
||||
fill-rule="evenodd"
|
||||
id="path_18"
|
||||
style="stroke-width:2.19311" />
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 11 KiB |
133
CODE_OF_CONDUCT.md
Normal file
133
CODE_OF_CONDUCT.md
Normal file
@@ -0,0 +1,133 @@
|
||||
# Contributor Covenant Code of Conduct
|
||||
|
||||
## Our Pledge
|
||||
|
||||
We as members, contributors, and leaders pledge to make participation in our
|
||||
community a harassment-free experience for everyone, regardless of age, body
|
||||
size, visible or invisible disability, ethnicity, sex characteristics, gender
|
||||
identity and expression, level of experience, education, socio-economic status,
|
||||
nationality, personal appearance, race, caste, color, religion, or sexual
|
||||
identity and orientation.
|
||||
|
||||
We pledge to act and interact in ways that contribute to an open, welcoming,
|
||||
diverse, inclusive, and healthy community.
|
||||
|
||||
## Our Standards
|
||||
|
||||
Examples of behavior that contributes to a positive environment for our
|
||||
community include:
|
||||
|
||||
* Demonstrating empathy and kindness toward other people
|
||||
* Being respectful of differing opinions, viewpoints, and experiences
|
||||
* Giving and gracefully accepting constructive feedback
|
||||
* Accepting responsibility and apologizing to those affected by our mistakes,
|
||||
and learning from the experience
|
||||
* Focusing on what is best not just for us as individuals, but for the overall
|
||||
community
|
||||
|
||||
Examples of unacceptable behavior include:
|
||||
|
||||
* The use of sexualized language or imagery, and sexual attention or advances of
|
||||
any kind
|
||||
* Trolling, insulting or derogatory comments, and personal or political attacks
|
||||
* Public or private harassment
|
||||
* Publishing others' private information, such as a physical or email address,
|
||||
without their explicit permission
|
||||
* Other conduct which could reasonably be considered inappropriate in a
|
||||
professional setting
|
||||
|
||||
## Enforcement Responsibilities
|
||||
|
||||
Community leaders are responsible for clarifying and enforcing our standards of
|
||||
acceptable behavior and will take appropriate and fair corrective action in
|
||||
response to any behavior that they deem inappropriate, threatening, offensive,
|
||||
or harmful.
|
||||
|
||||
Community leaders have the right and responsibility to remove, edit, or reject
|
||||
comments, commits, code, wiki edits, issues, and other contributions that are
|
||||
not aligned to this Code of Conduct, and will communicate reasons for moderation
|
||||
decisions when appropriate.
|
||||
|
||||
## Scope
|
||||
|
||||
This Code of Conduct applies within all community spaces, and also applies when
|
||||
an individual is officially representing the community in public spaces.
|
||||
Examples of representing our community include using an official e-mail address,
|
||||
posting via an official social media account, or acting as an appointed
|
||||
representative at an online or offline event.
|
||||
|
||||
## Enforcement
|
||||
|
||||
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
||||
reported to the community leaders responsible for enforcement at
|
||||
[florisboard@patrickgold.dev](mailto:florisboard@patrickgold.dev).
|
||||
All complaints will be reviewed and investigated promptly and fairly.
|
||||
|
||||
All community leaders are obligated to respect the privacy and security of the
|
||||
reporter of any incident.
|
||||
|
||||
## Enforcement Guidelines
|
||||
|
||||
Community leaders will follow these Community Impact Guidelines in determining
|
||||
the consequences for any action they deem in violation of this Code of Conduct:
|
||||
|
||||
### 1. Correction
|
||||
|
||||
**Community Impact**: Use of inappropriate language or other behavior deemed
|
||||
unprofessional or unwelcome in the community.
|
||||
|
||||
**Consequence**: A private, written warning from community leaders, providing
|
||||
clarity around the nature of the violation and an explanation of why the
|
||||
behavior was inappropriate. A public apology may be requested.
|
||||
|
||||
### 2. Warning
|
||||
|
||||
**Community Impact**: A violation through a single incident or series of
|
||||
actions.
|
||||
|
||||
**Consequence**: A warning with consequences for continued behavior. No
|
||||
interaction with the people involved, including unsolicited interaction with
|
||||
those enforcing the Code of Conduct, for a specified period of time. This
|
||||
includes avoiding interactions in community spaces as well as external channels
|
||||
like social media. Violating these terms may lead to a temporary or permanent
|
||||
ban.
|
||||
|
||||
### 3. Temporary Ban
|
||||
|
||||
**Community Impact**: A serious violation of community standards, including
|
||||
sustained inappropriate behavior.
|
||||
|
||||
**Consequence**: A temporary ban from any sort of interaction or public
|
||||
communication with the community for a specified period of time. No public or
|
||||
private interaction with the people involved, including unsolicited interaction
|
||||
with those enforcing the Code of Conduct, is allowed during this period.
|
||||
Violating these terms may lead to a permanent ban.
|
||||
|
||||
### 4. Permanent Ban
|
||||
|
||||
**Community Impact**: Demonstrating a pattern of violation of community
|
||||
standards, including sustained inappropriate behavior, harassment of an
|
||||
individual, or aggression toward or disparagement of classes of individuals.
|
||||
|
||||
**Consequence**: A permanent ban from any sort of public interaction within the
|
||||
community.
|
||||
|
||||
## Attribution
|
||||
|
||||
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
|
||||
version 2.1, available at
|
||||
[https://www.contributor-covenant.org/version/2/1/code_of_conduct.html][v2.1].
|
||||
|
||||
Community Impact Guidelines were inspired by
|
||||
[Mozilla's code of conduct enforcement ladder][Mozilla CoC].
|
||||
|
||||
For answers to common questions about this code of conduct, see the FAQ at
|
||||
[https://www.contributor-covenant.org/faq][FAQ]. Translations are available at
|
||||
[https://www.contributor-covenant.org/translations][translations].
|
||||
|
||||
[homepage]: https://www.contributor-covenant.org
|
||||
[v2.1]: https://www.contributor-covenant.org/version/2/1/code_of_conduct.html
|
||||
[Mozilla CoC]: https://github.com/mozilla/diversity
|
||||
[FAQ]: https://www.contributor-covenant.org/faq
|
||||
[translations]: https://www.contributor-covenant.org/translations
|
||||
|
||||
117
CONTRIBUTING.md
117
CONTRIBUTING.md
@@ -1,105 +1,72 @@
|
||||
# Contributing
|
||||
# Contribution guidelines
|
||||
|
||||
First off, thanks for considering contributing to FlorisBoard!
|
||||
Thanks for considering contributing to FlorisBoard!
|
||||
|
||||
There are several ways to contribute to FlorisBoard. This document provides some general guidelines for each type of
|
||||
contribution.
|
||||
There are several ways to contribute to FlorisBoard. This document provides some general guidelines for each type of contribution.
|
||||
|
||||
## Giving general feedback
|
||||
The FlorisBoard community is international, as such we require all contributions, including issues, pull requests, and participation in the Matrix chat to be in English and follow the [code of conduct](https://github.com/florisboard/florisboard/blob/main/CODE_OF_CONDUCT.md). Contributions not adhering to these requirements will be dismissed. Thanks for making the FlorisBoard community an inclusive and safe space for everyone!
|
||||
|
||||
NEW! You can now [give general feedback](https://github.com/florisboard/florisboard/discussions/new?category=feedback)
|
||||
directly here on GitHub. This is the preferred way to give feedback, as it allows not only for me to read and respond to
|
||||
feedback, but for everyone in this community.
|
||||
## Non-code contributions
|
||||
|
||||
Optionally you can also use the review function within Google Play or email me
|
||||
at [florisboard@patrickgold.dev](mailto:florisboard@patrickgold.dev). I love to hear from you! Note, that the amount of
|
||||
feedback emails I get is overwhelmingly high - so if I don't answer or answer really late, I apologize - I guarantee
|
||||
though that I read through every email and that I will use every feedback to improve FlorisBoard :)
|
||||
### Translations
|
||||
|
||||
## Translations
|
||||
To make FlorisBoard accessible in as many languages as possible, the platform [Crowdin](https://crowdin.florisboard.patrickgold.dev) is used to crowdsource and manage translations. The list of languages in Crowdin covers a good range of languages, but feel free to email [florisboard@patrickgold.dev](mailto:florisboard@patrickgold.dev) to request a new language.
|
||||
|
||||
To make FlorisBoard accessible in as many languages as possible, the
|
||||
platform [Crowdin](https://crowdin.florisboard.patrickgold.dev) is used to crowdsource and manage translations. This is
|
||||
the only source of translations from now on - **PRs that add/update translations are no longer accepted.** The list of
|
||||
languages in Crowdin covers the top 20 languages, but feel free to email me at
|
||||
[florisboard@patrickgold.dev](mailto:florisboard@patrickgold.dev) to request a language and I'll add it.
|
||||
> [!IMPORTANT]
|
||||
> This is the only source of translations - **PRs that add/update translations are not accepted.**
|
||||
|
||||
## Adding a new feature or making large changes
|
||||
### Bug reporting
|
||||
|
||||
If you intend to add a new feature or to make large changes, please discuss this first through a proposal on GitHub.
|
||||
Discussing your idea enables both you and the dev team that we are on the same page before you start on working on your
|
||||
change. If you have any questions, feel free to ask for help at any time!
|
||||
Allows us to see where FlorisBoard has flaws and should be improved to maximize stability and user experience. To make this process as smooth as possible, please use the pre-made [bug report template](https://github.com/florisboard/florisboard/issues/new?template=bug_report.yml). This makes it easy for us to understand what the bug is and how to solve it.
|
||||
|
||||
## Adding a new keyboard layout
|
||||
#### Capturing error logs
|
||||
|
||||
Adding a layout to FlorisBoard is very simple and does not require any coding skills, although you should understand the
|
||||
basics of the JSON syntax (it is very easy though by just looking at some other layout files). Most of the time is
|
||||
enough to look at the existing layout files, but the following attempts to help you in creating layouts from scratch.
|
||||
Logs are captured by FlorisBoard's crash handler, which gives you the ability to copy it to the clipboard and paste it in the crash report [issue template](https://github.com/florisboard/florisboard/issues/new?template=crash_report.yml). This is the preferred way to capture logs.
|
||||
|
||||
### Adding the layout
|
||||
Alternatively, you can also use ADB (Android Debug Bridge) to capture the error log. This is recommended for experienced users only.
|
||||
|
||||
Since v0.3.14-beta06 it is possible to add custom layouts for all types using the new extension format, Flex.
|
||||
### Feature proposals
|
||||
|
||||
Keyboard layout assets are grouped in [`app/src/main/assets/ime/keyboard`](app/src/main/assets/ime/keyboard) and are
|
||||
further sub-grouped into the following:
|
||||
Use the feature proposal [issue template](https://github.com/florisboard/florisboard/issues/new?template=feature_request.yml) to suggest a new idea or improvement for this project.
|
||||
|
||||
- `org.florisboard.composers`: Defines standard composers for interpreting input, currently supports basic typing and
|
||||
Korean input. Most of the time you won't need to add new composers, so if you don't know what they are always
|
||||
assume `appender` (the default composer which does not alter input in any way) is in use.
|
||||
- `org.florisboard.currencysets`: Lists all currency sets, which can be chosen for each subtype. If you consider adding
|
||||
a new one, make sure that the first currency symbol matches the name of the currency set and also ensure that you have
|
||||
exactly 6 currency symbols. This is important as the symbol layouts have exactly 6 slots available to fill these
|
||||
defined currency symbols in.
|
||||
- `org.florisboard.layouts`: Contains the actual layout files for all layout types.
|
||||
- `org.florisboard.localization`: Contains all popup mappings and subtype presets (formally the `config.json` file). The
|
||||
subtype presets are a list of all pre-made subtypes. Each time the user selects a language in the `Subtype Add`
|
||||
-dialog, all options configured here will get selected if found in the presets. The language tag must adhere to the
|
||||
IETF BCP 47 code ([ISO 639-1 language code](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes)
|
||||
and [ISO 3166-1 region code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements)). For
|
||||
example, Dutch as spoken in Belgium is `nl-be`.
|
||||
### Feedback
|
||||
|
||||
To add a new layout, head to above directory and add the necessary files to each extension group.
|
||||
You can [give general feedback](https://github.com/florisboard/florisboard/discussions/new?category=feedback) directly here on GitHub. This is the preferred way to give feedback, as it allows not only for me to read and respond to feedback, but for everyone in this community.
|
||||
|
||||
For the `code` field of each key, make sure to use the UTF-8 code. An useful tool for finding the correct code
|
||||
is [unicode-table.com](https://unicode-table.com/en/). From there, you search for your letter and then use the HTML
|
||||
code, but without the `&#;`
|
||||
For internal codes of functional or UI keys, see
|
||||
[`app/src/main/java/dev/patrickgold/florisboard/ime/text/key/KeyCode.kt`](app/src/main/java/dev/patrickgold/florisboard/ime/text/key/KeyCode.kt)
|
||||
.
|
||||
## Code contributions
|
||||
|
||||
The label is equally important and should always match up with the defined code. If `code` and `label` don't match up,
|
||||
FlorisBoard won't crash but it will most likely lead to confusion in the key processing logic.
|
||||
You are always welcome to contribute new features or work on existing issues, there are a lot to choose from :) It is always best to quickly ask if someone is already working on this issue to avoid duplicate issues.
|
||||
|
||||
Any accents or diacritics that should be exposed via long press can be added
|
||||
at [`app/src/main/assets/ime/keyboard/org.florisboard.localization/popupMappings/<languageTag>.json`](app/src/main/assets/ime/keyboard/org.florisboard.localization/popupMappings)
|
||||
. For each key, you can add 1 main and several relevant accents. The main accent should be used for accents which are
|
||||
important for the language you add. The main field is used for determining if a hint or an accent should take priority,
|
||||
so please make sure to leave main empty and just use relevant for accents which are not-so important.
|
||||
> [!NOTE]
|
||||
> If you intend to implement a bigger feature please coordinate with us so we can prevent that there's a major difference in expected implementation.
|
||||
|
||||
For popups of non-`characters` layout, simply add the popup directly to each key via the `popup` field.
|
||||
If you are overwhelmed by the code don't hesitate to ask for help in the [dev chat](https://matrix.to/#/#florisboard-dev:matrix.org) or the discussions tab! Some issues are also marked as good first issue, which are easy to do tasks.
|
||||
|
||||
## Adding a new dictionary for a language
|
||||
### System requirements for development
|
||||
|
||||
Currently the suggestions implementation is highly experimental and not available until 0.4.0, so dictionaries are
|
||||
currently not accepted.
|
||||
- Desktop PC with Linux or WSL2 (Windows)
|
||||
- MacOS and Windows without WSL2 probably works too however there's no official support
|
||||
- At least 16GB of RAM (because of Android Studio / IntelliJ)
|
||||
- The following tools must be installed:
|
||||
- Android Studio (bundles SDK and NDK) or IntelliJ with Android and Compose plugin
|
||||
- Java 17
|
||||
- CMake 3.22+
|
||||
- Clang 15+
|
||||
- Git
|
||||
- [Rust](https://www.rust-lang.org/tools/install)
|
||||
- Utilities (optional)
|
||||
- Python 3.10+
|
||||
- Bash, realpath, grep, ...
|
||||
|
||||
## Bug reporting
|
||||
### Manual build without Android Studio
|
||||
|
||||
This kind of contribution is the most important, as it tells where FlorisBoard has flaws and thus should be improved to
|
||||
maximize stability and user experience. To make this process as smooth as possible, please use the
|
||||
pre-made [issue template](.github/ISSUE_TEMPLATE/bug_report.md)
|
||||
for bug reporting. This makes it easy for us to understand what the bug is and how to solve it.
|
||||
If you want to manually build the project without Android Studio you must ensure that the Android SDK and NDK are properly installed on your system. Then issue
|
||||
|
||||
### Capturing error logs
|
||||
```./gradlew clean && ./gradlew assembleDebug```
|
||||
|
||||
Logs are captured by FlorisBoard's crash handler, which gives you the ability to copy it to the clipboard and paste it
|
||||
in GitHub. This is the preferred way to capture logs.
|
||||
|
||||
Alternatively, you can also use ADB (Android Debug Bridge) to capture the error log. This is recommended for experienced
|
||||
users only.
|
||||
and Gradle should take care of every build task.
|
||||
|
||||
## Donating
|
||||
|
||||
If none of the above options are feasible for you but you still want to show your support, you can also buy me a coffee,
|
||||
so I can stay up all night and chase away bugs or add new cool stuff :)
|
||||
You can also show your support by buying me a coffee, so I can stay up all night and chase away bugs or add new cool stuff :)
|
||||
See the `Sponsors` button for available options!
|
||||
|
||||
143
LANGUAGEPACKS-CHINESE.md
Normal file
143
LANGUAGEPACKS-CHINESE.md
Normal file
@@ -0,0 +1,143 @@
|
||||
# Chinese language pack
|
||||
|
||||
[简体中文翻译点这里](#简体中文翻译)
|
||||
|
||||
[繁体中文翻譯點這裡](#繁体中文翻譯)
|
||||
|
||||
|
||||
## Default barebones Chinese shape-based pack
|
||||
|
||||
Default barebones Chinese shape-based language pack which are always available.
|
||||
|
||||
Please download the [full Chinese language pack](#full-chinese-shape-based-pack) to access input methods such as wubi, quick cangjie, and other versions of these input methods.
|
||||
|
||||
This pack is released under the same license as Florisboard.
|
||||
|
||||
|
||||
## Full Chinese shape-based pack
|
||||
|
||||
Chinese shape-based language pack based on fcitx5-table-extra.
|
||||
|
||||
This pack is released under a separate license. Please visit to download: [TODO: add link to release page](https://)
|
||||
|
||||
:no_entry: :no_entry: **WARNING** :no_entry: :no_entry:
|
||||
|
||||
- **Input methods that include pinyin, jyutping, zhuyin as (auxiliary) functions are only provided for convenience. Currently, FlorisBoard lacks phonetic input algorithms. These functions currently have poor user experience and are not recommended for daily use.**
|
||||
|
||||
The following input methods are included in this language pack:
|
||||
|
||||
- 中文 (中国) [T9笔画] / Chinese (China) [T9]
|
||||
- 中文 (中国) [五笔98] / Chinese (China) [WUBI98]
|
||||
- ~中文 (中国) [五笔98-拼音混打] / Chinese (China) [WUBI98PINYIN]~
|
||||
- 中文 (中国) [五笔98-单字] / Chinese (China) [WUBI98SINGLE]
|
||||
- 中文 (中国) [五笔-大字库] / Chinese (China) [WUBILARGE]
|
||||
- 中文 (中国) [郑码] / Chinese (China) [ZHENGMA]
|
||||
- 中文 (中国) [郑码-大字库] / Chinese (China) [ZHENGMALARGE]
|
||||
- ~中文 (中国) [郑码-拼音混打] / Chinese (China) [ZHENGMAPINYIN]~
|
||||
- ~中文 (香港) [廣東拼音] / Chinese (Hong Kong) [CANTONESE]~
|
||||
- ~中文 (香港) [港式廣東話] / Chinese (Hong Kong) [CANTONHK]~
|
||||
- 中文 (香港) [輕鬆-大字庫] / Chinese (Hong Kong) [EASYLARGE]
|
||||
- ~中文 (香港) [粤語拼音-表格] / Chinese (Hong Kong) [JYUTPINGTABLE]~
|
||||
- 中文 (香港) [速成三代] / Chinese (Hong Kong) [QUICK3]
|
||||
- 中文 (香港) [經典速成] / Chinese (Hong Kong) [QUICKCLASSIC]
|
||||
- 中文 (香港) [筆順五碼] / Chinese (Hong Kong) [STROKE5]
|
||||
- 中文 (台灣) [行列] / Chinese (Taiwan) [ARRAY30]
|
||||
- 中文 (台灣) [行列-大字库] / Chinese (Taiwan) [ARRAY30LARGE]
|
||||
- 中文 (台灣) [嘸蝦米] / Chinese (Taiwan) [BOSHIAMY]
|
||||
- 中文 (台灣) [倉頡三代] / Chinese (Taiwan) [CANGJIE3]
|
||||
- 中文 (台灣) [倉頡五代] / Chinese (Taiwan) [CANGJIE5]
|
||||
- 中文 (台灣) [倉頡-大字庫] / Chinese (Taiwan) [CANGJIELARGE]
|
||||
- 中文 (台灣) [速成五代] / Chinese (Taiwan) [QUICK5]
|
||||
- 中文 (台灣) [快倉六] / Chinese (Taiwan) [SCJ6]
|
||||
- ~中文 (台灣) [吳語注音] / Chinese (Taiwan) [WU]~
|
||||
|
||||
Third-party license: [https://github.com/fcitx/fcitx5-table-extra/blob/master/LICENSES/GPL-3.0-or-later.txt]
|
||||
|
||||
# 简体中文翻译
|
||||
## 默认中文形码语言包
|
||||
|
||||
请下载[完整中文语言包](#fcitx5-中文形码语言包)来获得五笔、快速仓颉等输入法,及这些输入法的其他版本。
|
||||
|
||||
这一语言包的使用许可与FlorisBoard相同。
|
||||
|
||||
## Fcitx5 中文形码语言包
|
||||
|
||||
这一语言包由另一使用许可提供。下载请访问:[TODO: add link to release page](https://)
|
||||
|
||||
:no_entry: :no_entry: **注意** :no_entry: :no_entry:
|
||||
|
||||
- **含拼音、粤拼、注音等功能的输入法,仅为便利提供。目前,FlorisBoard缺乏音码输入算法,这些功能目前使用体验不佳,暂不推荐日常使用。**
|
||||
|
||||
语言包内含以下输入法:
|
||||
|
||||
- 中文 (中国) [T9笔画] / Chinese (China) [T9]
|
||||
- 中文 (中国) [五笔98] / Chinese (China) [WUBI98]
|
||||
- ~中文 (中国) [五笔98-拼音混打] / Chinese (China) [WUBI98PINYIN]~
|
||||
- 中文 (中国) [五笔98-单字] / Chinese (China) [WUBI98SINGLE]
|
||||
- 中文 (中国) [五笔-大字库] / Chinese (China) [WUBILARGE]
|
||||
- 中文 (中国) [郑码] / Chinese (China) [ZHENGMA]
|
||||
- 中文 (中国) [郑码-大字库] / Chinese (China) [ZHENGMALARGE]
|
||||
- ~中文 (中国) [郑码-拼音混打] / Chinese (China) [ZHENGMAPINYIN]~
|
||||
- ~中文 (香港) [廣東拼音] / Chinese (Hong Kong) [CANTONESE]~
|
||||
- ~中文 (香港) [港式廣東話] / Chinese (Hong Kong) [CANTONHK]~
|
||||
- 中文 (香港) [輕鬆-大字庫] / Chinese (Hong Kong) [EASYLARGE]
|
||||
- ~中文 (香港) [粤語拼音-表格] / Chinese (Hong Kong) [JYUTPINGTABLE]~
|
||||
- 中文 (香港) [速成三代] / Chinese (Hong Kong) [QUICK3]
|
||||
- 中文 (香港) [經典速成] / Chinese (Hong Kong) [QUICKCLASSIC]
|
||||
- 中文 (香港) [筆順五碼] / Chinese (Hong Kong) [STROKE5]
|
||||
- 中文 (台灣) [行列] / Chinese (Taiwan) [ARRAY30]
|
||||
- 中文 (台灣) [行列-大字库] / Chinese (Taiwan) [ARRAY30LARGE]
|
||||
- 中文 (台灣) [嘸蝦米] / Chinese (Taiwan) [BOSHIAMY]
|
||||
- 中文 (台灣) [倉頡三代] / Chinese (Taiwan) [CANGJIE3]
|
||||
- 中文 (台灣) [倉頡五代] / Chinese (Taiwan) [CANGJIE5]
|
||||
- 中文 (台灣) [倉頡-大字庫] / Chinese (Taiwan) [CANGJIELARGE]
|
||||
- 中文 (台灣) [速成五代] / Chinese (Taiwan) [QUICK5]
|
||||
- 中文 (台灣) [快倉六] / Chinese (Taiwan) [SCJ6]
|
||||
- ~中文 (台灣) [吳語注音] / Chinese (Taiwan) [WU]~
|
||||
|
||||
第三方许可证: [https://github.com/fcitx/fcitx5-table-extra/blob/master/LICENSES/GPL-3.0-or-later.txt]
|
||||
|
||||
|
||||
# 繁体中文翻譯
|
||||
## 預設中文形碼語言包
|
||||
|
||||
請下載[完整中文語言包](#fcitx5-中文形碼語言包)來獲得五筆、快速倉頡等輸入法,及這些輸入法的其他版本。
|
||||
|
||||
這一語言包的使用許可與FlorisBoard相同。
|
||||
|
||||
## Fcitx5 中文形碼語言包
|
||||
|
||||
這一語言包由另一使用許可提供。下載請訪問:[TODO: add link to release page](https://)
|
||||
|
||||
:no_entry: :no_entry: **注意** :no_entry: :no_entry:
|
||||
|
||||
- **含拼音、粵拼、注音等功能的輸入法,僅為便利提供。目前,FlorisBoard缺乏音碼輸入算法,這些功能目前使用體驗不佳,暫不推薦日常使用。**
|
||||
|
||||
語言包內含以下輸入法:
|
||||
|
||||
- 中文 (中国) [T9笔画] / Chinese (China) [T9]
|
||||
- 中文 (中国) [五笔98] / Chinese (China) [WUBI98]
|
||||
- ~中文 (中国) [五笔98-拼音混打] / Chinese (China) [WUBI98PINYIN]~
|
||||
- 中文 (中国) [五笔98-单字] / Chinese (China) [WUBI98SINGLE]
|
||||
- 中文 (中国) [五笔-大字库] / Chinese (China) [WUBILARGE]
|
||||
- 中文 (中国) [郑码] / Chinese (China) [ZHENGMA]
|
||||
- 中文 (中国) [郑码-大字库] / Chinese (China) [ZHENGMALARGE]
|
||||
- ~中文 (中国) [郑码-拼音混打] / Chinese (China) [ZHENGMAPINYIN]~
|
||||
- ~中文 (香港) [廣東拼音] / Chinese (Hong Kong) [CANTONESE]~
|
||||
- ~中文 (香港) [港式廣東話] / Chinese (Hong Kong) [CANTONHK]~
|
||||
- 中文 (香港) [輕鬆-大字庫] / Chinese (Hong Kong) [EASYLARGE]
|
||||
- ~中文 (香港) [粤語拼音-表格] / Chinese (Hong Kong) [JYUTPINGTABLE]~
|
||||
- 中文 (香港) [速成三代] / Chinese (Hong Kong) [QUICK3]
|
||||
- 中文 (香港) [經典速成] / Chinese (Hong Kong) [QUICKCLASSIC]
|
||||
- 中文 (香港) [筆順五碼] / Chinese (Hong Kong) [STROKE5]
|
||||
- 中文 (台灣) [行列] / Chinese (Taiwan) [ARRAY30]
|
||||
- 中文 (台灣) [行列-大字库] / Chinese (Taiwan) [ARRAY30LARGE]
|
||||
- 中文 (台灣) [嘸蝦米] / Chinese (Taiwan) [BOSHIAMY]
|
||||
- 中文 (台灣) [倉頡三代] / Chinese (Taiwan) [CANGJIE3]
|
||||
- 中文 (台灣) [倉頡五代] / Chinese (Taiwan) [CANGJIE5]
|
||||
- 中文 (台灣) [倉頡-大字庫] / Chinese (Taiwan) [CANGJIELARGE]
|
||||
- 中文 (台灣) [速成五代] / Chinese (Taiwan) [QUICK5]
|
||||
- 中文 (台灣) [快倉六] / Chinese (Taiwan) [SCJ6]
|
||||
- ~中文 (台灣) [吳語注音] / Chinese (Taiwan) [WU]~
|
||||
|
||||
第三方許可證: [https://github.com/fcitx/fcitx5-table-extra/blob/master/LICENSES/GPL-3.0-or-later.txt]
|
||||
16
LANGUAGEPACKS.md
Normal file
16
LANGUAGEPACKS.md
Normal file
@@ -0,0 +1,16 @@
|
||||
# Language Packs
|
||||
|
||||
## Languages
|
||||
|
||||
- [Summary](#summary)
|
||||
- [Chinese / 中文](LANGUAGEPACKS-CHINESE.md)
|
||||
|
||||
## Summary
|
||||
|
||||
Stub.
|
||||
|
||||
This page should describe how language packs work, how to import them, and point to the location of downloadable
|
||||
language packs.
|
||||
|
||||
The homepage of default language packs included in FlorisBoard should link to this page.
|
||||
|
||||
2
LICENSE
2
LICENSE
@@ -186,7 +186,7 @@
|
||||
same "printed page" as the copyright notice for easier
|
||||
identification within third-party archives.
|
||||
|
||||
Copyright 2020 Patrick Goldinger
|
||||
Copyright 2020-2025 The FlorisBoard Contributors
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
|
||||
74
README.md
74
README.md
@@ -1,27 +1,27 @@
|
||||
<img align="left" width="80" height="80"
|
||||
src="fastlane/metadata/android/en-US/images/icon.png" alt="App icon">
|
||||
src=".github/repo_icon.png" alt="App icon">
|
||||
|
||||
# FlorisBoard [](https://crowdin.florisboard.patrickgold.dev) [](https://matrix.to/#/#florisboard:matrix.org) 
|
||||
# FlorisBoard [](https://crowdin.florisboard.patrickgold.dev) [](https://matrix.to/#/#florisboard:matrix.org) [](CODE_OF_CONDUCT.md) [](https://github.com/florisboard/florisboard/actions/workflows/android.yml)
|
||||
|
||||
**FlorisBoard** is a free and open-source keyboard for Android 6.0+
|
||||
**FlorisBoard** is a free and open-source keyboard for Android 7.0+
|
||||
devices. It aims at being modern, user-friendly and customizable while
|
||||
fully respecting your privacy. Currently in early-beta state.
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<th align="center" width="50%">
|
||||
<h3>Stable <a href="https://github.com/florisboard/florisboard/releases/latest"><img alt="Latest stable release" src="https://img.shields.io/github/v/release/florisboard/florisboard"></a></h3>
|
||||
<h3>Stable <a href="https://github.com/florisboard/florisboard/releases/latest"><img alt="Latest stable release" src="https://img.shields.io/github/v/release/florisboard/florisboard?sort=semver&display_name=tag&color=28a745"></a></h3>
|
||||
</th>
|
||||
<th align="center" width="50%">
|
||||
<h3>Beta <a href="https://github.com/florisboard/florisboard/releases"><img alt="Latest beta release" src="https://img.shields.io/github/v/release/florisboard/florisboard?include_prereleases"></a></h3>
|
||||
<h3>Preview <a href="https://github.com/florisboard/florisboard/releases"><img alt="Latest preview release" src="https://img.shields.io/github/v/release/florisboard/florisboard?include_prereleases&sort=semver&display_name=tag&color=fd7e14"></a></h3>
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top">
|
||||
<p><i>Major versions only, 1 release per 1-5 months</i><br><br>Updates are more polished, new features are matured and tested through to ensure a stable experience.</p>
|
||||
<p><i>Major versions only</i><br><br>Updates are more polished, new features are matured and tested through to ensure a stable experience.</p>
|
||||
</td>
|
||||
<td valign="top">
|
||||
<p><i>Beta versions, up to 1-2 releases per week</i><br><br>Updates contain new features that may not be fully matured yet and bugs are more likely to occur. Allows you to give early feedback.</p>
|
||||
<p><i>Major + Alpha/Beta/Rc versions</i><br><br>Updates contain new features that may not be fully matured yet and bugs are more likely to occur. Allows you to give early feedback.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@@ -34,6 +34,11 @@ fully respecting your privacy. Currently in early-beta state.
|
||||
</p>
|
||||
<p>
|
||||
|
||||
**Obtainium**: [Auto-import stable config][obtainium_stable]
|
||||
|
||||
</p>
|
||||
<p>
|
||||
|
||||
**Manual**: Download and install the APK from the release page.
|
||||
|
||||
</p>
|
||||
@@ -42,7 +47,12 @@ fully respecting your privacy. Currently in early-beta state.
|
||||
<p><a href="https://apt.izzysoft.de/fdroid/index/apk/dev.patrickgold.florisboard.beta"><img src="https://gitlab.com/IzzyOnDroid/repo/-/raw/master/assets/IzzyOnDroid.png" height="64" alt="IzzySoft repo badge"></a></p>
|
||||
<p>
|
||||
|
||||
**Google Play**: Join the [FlorisBoard Test Group](https://groups.google.com/g/florisboard-public-alpha-test), then visit the [beta testing page](https://play.google.com/apps/testing/dev.patrickgold.florisboard.beta). Once joined and installed, updates will be delivered like for any other app. ([Store entry](https://play.google.com/store/apps/details?id=dev.patrickgold.florisboard.beta))
|
||||
**Google Play**: Join the [FlorisBoard Test Group](https://groups.google.com/g/florisboard-public-alpha-test), then visit the [preview testing page](https://play.google.com/apps/testing/dev.patrickgold.florisboard.beta). Once joined and installed, updates will be delivered like for any other app. ([Store entry](https://play.google.com/store/apps/details?id=dev.patrickgold.florisboard.beta))
|
||||
|
||||
</p>
|
||||
<p>
|
||||
|
||||
**Obtainium**: [Auto-import preview config][obtainium_preview]
|
||||
|
||||
</p>
|
||||
<p>
|
||||
@@ -54,26 +64,33 @@ fully respecting your privacy. Currently in early-beta state.
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
Beginning with v0.4.0 FlorisBoard will follow [SemVer](https://semver.org/#summary) versioning scheme and enter the public beta on Google Play.
|
||||
Beginning with v0.7 FlorisBoard will enter the public beta on Google Play.
|
||||
|
||||
## Highlighted features
|
||||
- Integrated clipboard manager / history
|
||||
- Advanced theming support and customization
|
||||
- Integrated extension support (still evolving)
|
||||
- Emoji keyboard
|
||||
- Spell checking service
|
||||
- Glide typing (currently English only)
|
||||
- Emoji keyboard / history / suggestions
|
||||
|
||||
Word suggestions are not included in the current releases and are a major goal for the v0.4.0 milestone.
|
||||
> [!IMPORTANT]
|
||||
> Word suggestions/spell checking are not included in the current releases
|
||||
> and are a major goal for the v0.6 milestone.
|
||||
|
||||
Feature roadmap: See [ROADMAP.md](ROADMAP.md)
|
||||
|
||||
## Contributing
|
||||
Wanna contribute to FlorisBoard? That's great to hear! There are lots of
|
||||
different ways to help out. Bug reporting, making pull requests,
|
||||
translating FlorisBoard to make it more accessible, etc. For more
|
||||
information see the [contributing guidelines](CONTRIBUTING.md). Thank
|
||||
you for your help!
|
||||
Want to contribute to FlorisBoard? That's great to hear! There are lots of
|
||||
different ways to help out, please see the [contribution guidelines](CONTRIBUTING.md) for more info.
|
||||
|
||||
## Addons Store
|
||||
The official [Addons Store](https://beta.addons.florisboard.org) offers the possibility for the community to share and download FlorisBoard extensions.
|
||||
Instructions on how to publish addons can be found [here](https://github.com/florisboard/florisboard/wiki/How-to-publish-on-FlorisBoard-Addons).
|
||||
|
||||
Many thanks to Ali ([@4H1R](https://github.com/4H1R)) for implementing the store!
|
||||
|
||||
> [!NOTE]
|
||||
> During the initial beta release phase, the Addons Store _will_ only accept theme extensions.
|
||||
> Later on we plan to add support for language packs and keyboard extensions.
|
||||
|
||||
## List of permissions FlorisBoard requests
|
||||
Please refer to this [page](https://github.com/florisboard/florisboard/wiki/List-of-permissions-FlorisBoard-requests)
|
||||
@@ -82,8 +99,8 @@ to get more information on this topic.
|
||||
## Used libraries, components and icons
|
||||
* [AndroidX libraries](https://github.com/androidx/androidx) by
|
||||
[Android Jetpack](https://github.com/androidx)
|
||||
* [Accompanist Compose UI libraries](https://github.com/google/accompanist/) by
|
||||
[Google](https://github.com/google)
|
||||
* [AboutLibraries](https://github.com/mikepenz/AboutLibraries) by
|
||||
[mikepenz](https://github.com/mikepenz)
|
||||
* [Google Material icons](https://github.com/google/material-design-icons) by
|
||||
[Google](https://github.com/google)
|
||||
* [JetPref preference library](https://github.com/patrickgold/jetpref) by
|
||||
@@ -92,14 +109,12 @@ to get more information on this topic.
|
||||
[Kotlin](https://github.com/Kotlin)
|
||||
* [KotlinX serialization library](https://github.com/Kotlin/kotlinx.serialization) by
|
||||
[Kotlin](https://github.com/Kotlin)
|
||||
* [ICU4C](https://github.com/unicode-org/icu) by
|
||||
[The Unicode Consortium](https://github.com/unicode-org)
|
||||
* [Nuspell](https://github.com/nuspell/nuspell) by
|
||||
[Nuspell](https://github.com/nuspell)
|
||||
|
||||
Many thanks to [Nikolay Anzarov](https://www.behance.net/nikolayanzarov) ([@BloodRaven0](https://github.com/BloodRaven0)) for designing and providing the main app icons to this project!
|
||||
|
||||
## License
|
||||
```
|
||||
Copyright 2020-2022 Patrick Goldinger
|
||||
Copyright 2020-2025 The FlorisBoard Contributors
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
@@ -113,3 +128,12 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
```
|
||||
|
||||
Thanks to [The FlorisBoard Contributors](https://github.com/florisboard/florisboard/graphs/contributors) for making this project possible!
|
||||
|
||||
<!-- BEGIN SECTION: obtainium_links -->
|
||||
<!-- auto-generated link templates, do NOT edit by hand -->
|
||||
<!-- see fastlane/update-readme.sh -->
|
||||
[obtainium_preview]: https://apps.obtainium.imranr.dev/redirect.html?r=obtainium://app/%7B%22id%22%3A%22dev.patrickgold.florisboard.beta%22%2C%22url%22%3A%22https%3A%2F%2Fgithub.com%2Fflorisboard%2Fflorisboard%22%2C%22author%22%3A%22florisboard%22%2C%22name%22%3A%22FlorisBoard%20Preview%22%2C%22additionalSettings%22%3A%22%7B%5C%22includePrereleases%5C%22%3Atrue%2C%5C%22fallbackToOlderReleases%5C%22%3Atrue%2C%5C%22apkFilterRegEx%5C%22%3A%5C%22preview%5C%22%7D%22%7D%0A
|
||||
[obtainium_stable]: https://apps.obtainium.imranr.dev/redirect.html?r=obtainium://app/%7B%22id%22%3A%22dev.patrickgold.florisboard%22%2C%22url%22%3A%22https%3A%2F%2Fgithub.com%2Fflorisboard%2Fflorisboard%22%2C%22author%22%3A%22florisboard%22%2C%22name%22%3A%22FlorisBoard%20Stable%22%2C%22additionalSettings%22%3A%22%7B%5C%22includePrereleases%5C%22%3Afalse%2C%5C%22fallbackToOlderReleases%5C%22%3Atrue%2C%5C%22apkFilterRegEx%5C%22%3A%5C%22stable%5C%22%7D%22%7D%0A
|
||||
<!-- END SECTION: obtainium_links -->
|
||||
|
||||
126
ROADMAP.md
126
ROADMAP.md
@@ -1,103 +1,69 @@
|
||||
# FlorisBoard's feature roadmap & milestones
|
||||
# Roadmap
|
||||
|
||||
This feature roadmap intents to provide transparency to what I want to add to FlorisBoard in the foreseeable future.
|
||||
Note that there are no ETAs for any version milestones down below, experience says these won't hold anyways.
|
||||
This feature roadmap intents to provide transparency to what is planned to be added to FlorisBoard in the foreseeable future. Note that there are no ETAs for any version milestones down below, experience has shown these won't hold anyway.
|
||||
|
||||
I try my best to release regularly, though some features take a lot longer than others and thus releases can be spaced
|
||||
out a bit on the stable track. If you are interested in following the development more closely, make sure to follow
|
||||
along the beta track releases! These are generally more unstable but you get new stuff faster and can provide early
|
||||
feedback, which helps a lot!
|
||||
Each major milestone has associated alpha/beta releases, so if you are interested in previewing features quicker, keep an eye out! Each major 0.x release has also patch releases after the initial major release, which will be published on both the stable and preview tracks.
|
||||
|
||||
## 0.3.x
|
||||
## 0.5 (currently in development)
|
||||
|
||||
Releases in this section still follow the old versioning scheme, meaning the patch number is a feature upgrade. As this
|
||||
naming convention is more confusing than useful, beginning with v0.4.0 development a new release/development cycle will
|
||||
be introduced.
|
||||
> [!NOTE]
|
||||
> The milestone 0.5 was split, thus the word suggestions now come with version 0.6. The old version 0.6 has been moved down and is now 0.7. The time it takes to implement word suggestions will not change, but we can now release the new theme editor earlier, which would otherwise lie dormant.
|
||||
|
||||
### 0.3.14 (almost completed, release candidate phase)
|
||||
- [ ] Theme rework part II / Snygg v2
|
||||
- [x] See https://github.com/florisboard/florisboard/pull/2855
|
||||
- [x] Spaces in URI bug (See https://github.com/florisboard/florisboard/issues/2898)
|
||||
- [ ] Rework cache manager (See https://github.com/florisboard/florisboard/issues/2870)
|
||||
- [x] Re-add time based theme switching (See https://github.com/florisboard/florisboard/pull/2977)
|
||||
- [ ] Add support for any remaining new features introduced with Android 13 / 14
|
||||
- [ ] Proper physical keyboard support (See https://github.com/florisboard/florisboard/issues/2815)
|
||||
- [x] Raise minimum required Android version from Android 7 (SDK level 24) to Android 8 (SDK level 26)
|
||||
|
||||
- Re-write of the Preference core
|
||||
- Reduce redundancy in key/default value definitions
|
||||
- Avoid having to manually add redundant code for adding a new pref
|
||||
- Goes hand-in-hand with the Settings UI re-write
|
||||
- Re-write of the Settings UI with Jetpack Compose
|
||||
- Also re-structure UI into a more list-like panel
|
||||
- Adjust theme colors of Settings a bit to make it more modern
|
||||
- Preview the keyboard at any time from within the Settings
|
||||
- Settings language different than device language
|
||||
- Re-write the Setup UI in Jetpack Compose
|
||||
- Simplify screen based on previously discussed ideas and mock-ups
|
||||
- Improve backend setup logic
|
||||
- Implement base-UI for extensions and further continue development of existing Flex (FlorisBoard extension) format
|
||||
- Allows for a continuous experience of customizing FlorisBoard in different areas
|
||||
- Planned what will use Flex:
|
||||
- Themes
|
||||
- Layouts (Characters, symbols, numeric, ...)
|
||||
- Composers for non-Latin script languages
|
||||
- Word suggestion dictionaries (in 0.4.0)
|
||||
- Spell check dictionaries
|
||||
- User dictionaries (not in 0.3.14)
|
||||
- Other features that require only data and no logic (not in 0.3.14)
|
||||
- Maybe full backup of preferences? Not 100% confirmed though and may be pushed back
|
||||
- Theme rework part I:
|
||||
- Custom key corner radius
|
||||
- Custom key border color (not shadow!!)
|
||||
- Re-work theme internals so they use Flex extension format and FlexCSS
|
||||
- Improvement of the Smartbar
|
||||
- Allow to have multiple Smartbars
|
||||
- Better candidate view (in prep for 0.4.0)
|
||||
## 0.6
|
||||
|
||||
### 0.3.15 & 0.3.16
|
||||
- [ ] Implement predictive text support / spell checking
|
||||
- [ ] Add new extension type: Language Pack
|
||||
- Basically groups all locale-relevant data (predictive base model, emoji suggestion data, ...)
|
||||
in a dynamically importable extension file
|
||||
|
||||
- Hotfix releases for possible bugs in the preference rework, may be skipped.
|
||||
## k3lp
|
||||
|
||||
## 0.4.0
|
||||
> [!NOTE]
|
||||
> The development of k3lp is not tied to a florisboard version and takes place on [codeberg.org](https://codeberg.org/k3lp/k3lp) simultaneously.
|
||||
|
||||
- Re-adding word suggestions (at least for Latin-based languages at first)
|
||||
- Importing the dictionaries as well as management relies on the Flex extension core and UI in Kotlin
|
||||
- Actually parsing and generating suggestions happens in C++ to avoid another OOM catastrophe like in 0.3.9/10
|
||||
- The actual format of the dictionary and word list source is not decided yet
|
||||
- Community repository on GitHub for theme sharing across users (may be 0.5.0)
|
||||
- [ ] New keyboard layout engine + file syntax based on the upcoming Unicode Keyboard v3 standard
|
||||
- [ ] Add Tablet mode / Optimizations for landscape input based on new keyboard layout engine
|
||||
|
||||
With this release the versioning scheme changes: the second number now indicates new features, changes in the third "
|
||||
patch" number now indicates bug fixes and minor feature additions for the stable track. The development cycle for each
|
||||
0.x release will have `-alphaXX`, `-betaXX` and `-rcXX` (release candidate) releases on the beta track for interested
|
||||
people to follow along the development. The first release to follow the new scheme will be `0.4.0-alpha01` on the beta
|
||||
track.
|
||||
## 0.7+
|
||||
|
||||
## 0.5.0
|
||||
> [!NOTE]
|
||||
> From 0.6 onwards we plan to have more stable 0.X releases but with at most one large feature per release, thus having a much quicker iteration of new features on the stable track, which is a benefit for everyone involved.
|
||||
|
||||
- Complete rework of the Emoji panel
|
||||
- Recently used / Emoji history (already implemented with 0.3.14)
|
||||
- Emoji search
|
||||
- Emoji suggestions when using :emoji_name: syntax
|
||||
- Kaomoji panel implementation (the third tab which currently has "not yet implemented")
|
||||
- Smartbar customization improvements
|
||||
- Quick actions customization (order and which buttons to show)
|
||||
- Prepare FlorisBoard repository and app store presence for public beta release on Google Play (will go live with stable
|
||||
0.5.0!!)
|
||||
- Rework branding images and texts of FlorisBoard for the app stores
|
||||
- Focus on stability and experience improvements of the app and keyboard
|
||||
- [ ] Add floating keyboard mode
|
||||
- [ ] New text processing logic
|
||||
- [ ] Complete rework of the Emoji panel
|
||||
- [ ] Emoji search
|
||||
- [ ] Fully scrollable emoji list (soft category borders)
|
||||
- [ ] Side scrollable emoji list (swipe for next category)
|
||||
- [ ] More granular theming options
|
||||
- [ ] Layout customization (e.g. placement of category buttons)
|
||||
- [ ] Maybe: consider upgrading to emoji2 for better unified system-wide emoji styles
|
||||
- [ ] Reimplementation of glide typing with the new layout engine and predictive text core
|
||||
- [ ] Prepare FlorisBoard repository and app store presence for public beta release on Google Play (will go live with stable 0.7)
|
||||
- [ ] Rework branding images and texts of FlorisBoard for the app stores
|
||||
- [ ] Focus on stability and experience improvements of the app and keyboard
|
||||
- [ ] Add support for new features introduced with Android 15 / 16
|
||||
|
||||
## 0.6.0
|
||||
## Backlog / Planned (unassigned)
|
||||
|
||||
**Features that MAY be added (even in versions mentioned above) or dismissed**
|
||||
|
||||
- Full on-board layout editor which allows users to create their own layouts without writing a JSON file
|
||||
- Import/Export of custom layout files packed in Flex extensions
|
||||
|
||||
## Backlog / Features that MAY be added, even in versions not mentioned above if the feature implementation fits perfectly with another feature
|
||||
|
||||
- Theme rework part II
|
||||
- Adaptive themes v2
|
||||
- Voice-to-text with Mozilla's open-source voice service
|
||||
- Voice-to-text with Mozilla's open-source voice service (or any other oss voice provider)
|
||||
- Text translation
|
||||
- Glide typing better word detection
|
||||
- Proximity-based key typo detection
|
||||
- Floating keyboard
|
||||
- Tablet mode / Optimizations for landscape input
|
||||
- Stickers/GIFs
|
||||
- Kaomoji panel implementation
|
||||
- FlorisBoard landing web page for presentation
|
||||
- Implementing additional layouts
|
||||
- Support for Tasker/Automate/MacroDroid plugins
|
||||
- Support for WearOS/Smartwatches
|
||||
- Handwriting
|
||||
- ...
|
||||
|
||||
2
app/.gitignore
vendored
Normal file
2
app/.gitignore
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
# Exclude auto-generated icu4c assets
|
||||
src/main/assets/icu4c/
|
||||
@@ -1,70 +1,89 @@
|
||||
/*
|
||||
* Copyright (C) 2022-2025 The FlorisBoard Contributors
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import java.io.ByteArrayOutputStream
|
||||
|
||||
plugins {
|
||||
id("com.android.application")
|
||||
kotlin("android")
|
||||
kotlin("kapt")
|
||||
kotlin("plugin.serialization")
|
||||
id("com.google.android.gms.oss-licenses-plugin")
|
||||
id("de.mannodermaus.android-junit5")
|
||||
alias(libs.plugins.agp.application)
|
||||
alias(libs.plugins.kotlin.android)
|
||||
alias(libs.plugins.kotlin.plugin.compose)
|
||||
alias(libs.plugins.kotlin.serialization)
|
||||
alias(libs.plugins.ksp)
|
||||
alias(libs.plugins.mikepenz.aboutlibraries)
|
||||
}
|
||||
|
||||
val projectMinSdk: String by project
|
||||
val projectTargetSdk: String by project
|
||||
val projectCompileSdk: String by project
|
||||
val projectVersionCode: String by project
|
||||
val projectVersionName: String by project
|
||||
val projectVersionNameSuffix = projectVersionName.substringAfter("-", "").let { suffix ->
|
||||
if (suffix.isNotEmpty()) {
|
||||
"-$suffix"
|
||||
} else {
|
||||
suffix
|
||||
}
|
||||
}
|
||||
|
||||
android {
|
||||
compileSdk = 31
|
||||
buildToolsVersion = "31.0.0"
|
||||
ndkVersion = "22.1.7171670"
|
||||
namespace = "dev.patrickgold.florisboard"
|
||||
compileSdk = projectCompileSdk.toInt()
|
||||
buildToolsVersion = tools.versions.buildTools.get()
|
||||
ndkVersion = tools.versions.ndk.get()
|
||||
|
||||
compileOptions {
|
||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
targetCompatibility = JavaVersion.VERSION_1_8
|
||||
sourceCompatibility = JavaVersion.VERSION_11
|
||||
targetCompatibility = JavaVersion.VERSION_11
|
||||
}
|
||||
|
||||
kotlinOptions {
|
||||
jvmTarget = JavaVersion.VERSION_1_8.toString()
|
||||
jvmTarget = "11"
|
||||
freeCompilerArgs = listOf(
|
||||
"-Xallow-result-return-type",
|
||||
"-Xopt-in=kotlin.RequiresOptIn",
|
||||
"-Xopt-in=kotlin.contracts.ExperimentalContracts",
|
||||
"-Xjvm-default=compatibility",
|
||||
"-opt-in=kotlin.contracts.ExperimentalContracts",
|
||||
"-Xjvm-default=all-compatibility",
|
||||
"-Xwhen-guards",
|
||||
)
|
||||
}
|
||||
|
||||
defaultConfig {
|
||||
applicationId = "dev.patrickgold.florisboard"
|
||||
minSdk = 23
|
||||
targetSdk = 31
|
||||
versionCode = 78
|
||||
versionName = "0.3.15"
|
||||
minSdk = projectMinSdk.toInt()
|
||||
targetSdk = projectTargetSdk.toInt()
|
||||
versionCode = projectVersionCode.toInt()
|
||||
versionName = projectVersionName.substringBefore("-")
|
||||
|
||||
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
|
||||
|
||||
javaCompileOptions {
|
||||
annotationProcessorOptions {
|
||||
arguments += mapOf(
|
||||
Pair("room.schemaLocation", "$projectDir/schemas"),
|
||||
Pair("room.incremental", "true"),
|
||||
Pair("room.expandProjection", "true")
|
||||
)
|
||||
}
|
||||
}
|
||||
buildConfigField("String", "BUILD_COMMIT_HASH", "\"${getGitCommitHash()}\"")
|
||||
buildConfigField("String", "FLADDONS_API_VERSION", "\"v~draft2\"")
|
||||
buildConfigField("String", "FLADDONS_STORE_URL", "\"beta.addons.florisboard.org\"")
|
||||
|
||||
externalNativeBuild {
|
||||
cmake {
|
||||
cFlags("-fvisibility=hidden", "-DU_STATIC_IMPLEMENTATION=1")
|
||||
cppFlags("-fvisibility=hidden", "-std=c++17", "-fexceptions", "-ffunction-sections", "-fdata-sections", "-DU_DISABLE_RENAMING=1", "-DU_STATIC_IMPLEMENTATION=1")
|
||||
arguments("-DANDROID_STL=c++_static")
|
||||
}
|
||||
}
|
||||
|
||||
ndk {
|
||||
abiFilters += listOf("armeabi-v7a", "arm64-v8a")
|
||||
ksp {
|
||||
arg("room.schemaLocation", "$projectDir/schemas")
|
||||
arg("room.incremental", "true")
|
||||
arg("room.expandProjection", "true")
|
||||
}
|
||||
|
||||
sourceSets {
|
||||
maybeCreate("main").apply {
|
||||
assets {
|
||||
srcDirs("src/main/assets", "src/main/icu4c/prebuilt/assets")
|
||||
srcDirs("src/main/assets")
|
||||
}
|
||||
jniLibs {
|
||||
srcDirs("src/main/icu4c/prebuilt/jniLibs")
|
||||
java {
|
||||
srcDirs("src/main/kotlin")
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -80,43 +99,31 @@ android {
|
||||
}
|
||||
|
||||
buildFeatures {
|
||||
buildConfig = true
|
||||
compose = true
|
||||
}
|
||||
|
||||
composeOptions {
|
||||
kotlinCompilerExtensionVersion = "1.1.1"
|
||||
}
|
||||
|
||||
externalNativeBuild {
|
||||
cmake {
|
||||
path("src/main/cpp/CMakeLists.txt")
|
||||
}
|
||||
}
|
||||
|
||||
buildTypes {
|
||||
named("debug").configure {
|
||||
named("debug") {
|
||||
applicationIdSuffix = ".debug"
|
||||
versionNameSuffix = "-debug"
|
||||
versionNameSuffix = "-debug+${getGitCommitHash(short = true)}"
|
||||
|
||||
isDebuggable = true
|
||||
isJniDebuggable = false
|
||||
|
||||
ndk {
|
||||
// For running FlorisBoard on the emulator
|
||||
abiFilters += listOf("x86", "x86_64")
|
||||
}
|
||||
|
||||
resValue("mipmap", "floris_app_icon", "@mipmap/ic_app_icon_debug")
|
||||
resValue("mipmap", "floris_app_icon_round", "@mipmap/ic_app_icon_debug_round")
|
||||
resValue("drawable", "floris_app_icon_foreground", "@drawable/ic_app_icon_debug_foreground")
|
||||
resValue("string", "floris_app_name", "FlorisBoard Debug")
|
||||
}
|
||||
|
||||
create("beta") // Needed because by default the "beta" BuildType does not exist
|
||||
named("beta").configure {
|
||||
create("beta") {
|
||||
applicationIdSuffix = ".beta"
|
||||
versionNameSuffix = "-rc01"
|
||||
proguardFiles.add(getDefaultProguardFile("proguard-android-optimize.txt"))
|
||||
versionNameSuffix = projectVersionNameSuffix
|
||||
|
||||
proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro")
|
||||
isMinifyEnabled = true
|
||||
isShrinkResources = true
|
||||
|
||||
resValue("mipmap", "floris_app_icon", "@mipmap/ic_app_icon_beta")
|
||||
resValue("mipmap", "floris_app_icon_round", "@mipmap/ic_app_icon_beta_round")
|
||||
@@ -124,14 +131,34 @@ android {
|
||||
resValue("string", "floris_app_name", "FlorisBoard Beta")
|
||||
}
|
||||
|
||||
named("release").configure {
|
||||
proguardFiles.add(getDefaultProguardFile("proguard-android-optimize.txt"))
|
||||
named("release") {
|
||||
versionNameSuffix = projectVersionNameSuffix
|
||||
|
||||
resValue("mipmap", "floris_app_icon", "@mipmap/ic_app_icon_release")
|
||||
resValue("mipmap", "floris_app_icon_round", "@mipmap/ic_app_icon_release_round")
|
||||
resValue("drawable", "floris_app_icon_foreground", "@drawable/ic_app_icon_release_foreground")
|
||||
proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro")
|
||||
isMinifyEnabled = true
|
||||
isShrinkResources = true
|
||||
|
||||
resValue("mipmap", "floris_app_icon", "@mipmap/ic_app_icon_stable")
|
||||
resValue("mipmap", "floris_app_icon_round", "@mipmap/ic_app_icon_stable_round")
|
||||
resValue("drawable", "floris_app_icon_foreground", "@drawable/ic_app_icon_stable_foreground")
|
||||
resValue("string", "floris_app_name", "@string/app_name")
|
||||
}
|
||||
|
||||
create("benchmark") {
|
||||
initWith(getByName("release"))
|
||||
signingConfig = signingConfigs.getByName("debug")
|
||||
matchingFallbacks += listOf("release")
|
||||
}
|
||||
}
|
||||
|
||||
aboutLibraries {
|
||||
collect {
|
||||
configPath = file("src/main/config")
|
||||
}
|
||||
}
|
||||
|
||||
lint {
|
||||
baseline = file("lint.xml")
|
||||
}
|
||||
|
||||
testOptions {
|
||||
@@ -149,36 +176,64 @@ tasks.withType<Test> {
|
||||
}
|
||||
|
||||
dependencies {
|
||||
implementation("androidx.activity:activity-compose:1.4.0")
|
||||
implementation("androidx.activity:activity-ktx:1.4.0")
|
||||
implementation("androidx.autofill:autofill:1.1.0")
|
||||
implementation("androidx.collection:collection-ktx:1.2.0")
|
||||
implementation("androidx.compose.material:material:1.1.1")
|
||||
implementation("androidx.compose.runtime:runtime-livedata:1.1.1")
|
||||
implementation("androidx.compose.ui:ui:1.1.1")
|
||||
implementation("androidx.compose.ui:ui-tooling-preview:1.1.1")
|
||||
implementation("androidx.core:core-ktx:1.7.0")
|
||||
implementation("androidx.core:core-splashscreen:1.0.0-beta01")
|
||||
implementation("androidx.emoji2:emoji2:1.1.0")
|
||||
implementation("androidx.emoji2:emoji2-views:1.1.0")
|
||||
implementation("androidx.navigation:navigation-compose:2.4.1")
|
||||
implementation("com.google.accompanist:accompanist-flowlayout:0.23.0")
|
||||
implementation("com.google.accompanist:accompanist-insets:0.23.0")
|
||||
implementation("com.google.accompanist:accompanist-systemuicontroller:0.23.0")
|
||||
implementation("dev.patrickgold.jetpref:jetpref-datastore-model:0.1.0-beta08")
|
||||
implementation("dev.patrickgold.jetpref:jetpref-datastore-ui:0.1.0-beta08")
|
||||
implementation("dev.patrickgold.jetpref:jetpref-material-ui:0.1.0-beta08")
|
||||
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.0")
|
||||
implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.3.2")
|
||||
implementation("androidx.room:room-runtime:2.4.2")
|
||||
kapt("androidx.room:room-compiler:2.4.2")
|
||||
val composeBom = platform(libs.androidx.compose.bom)
|
||||
implementation(composeBom)
|
||||
// testImplementation(composeBom)
|
||||
// androidTestImplementation(composeBom)
|
||||
|
||||
testImplementation("io.kotest:kotest-runner-junit5:5.1.0")
|
||||
testImplementation("io.kotest:kotest-assertions-core:5.1.0")
|
||||
testImplementation("io.kotest:kotest-property:5.1.0")
|
||||
testImplementation("io.kotest.extensions:kotest-extensions-robolectric:0.5.0")
|
||||
testImplementation("nl.jqno.equalsverifier:equalsverifier:3.8.3")
|
||||
implementation(libs.androidx.activity.compose)
|
||||
implementation(libs.androidx.activity.ktx)
|
||||
implementation(libs.androidx.autofill)
|
||||
implementation(libs.androidx.collection.ktx)
|
||||
implementation(libs.androidx.compose.material.icons)
|
||||
implementation(libs.androidx.compose.material3)
|
||||
implementation(libs.androidx.compose.runtime.livedata)
|
||||
implementation(libs.androidx.compose.ui)
|
||||
implementation(libs.androidx.compose.ui.tooling.preview)
|
||||
implementation(libs.androidx.core.ktx)
|
||||
implementation(libs.androidx.core.splashscreen)
|
||||
implementation(libs.androidx.emoji2)
|
||||
implementation(libs.androidx.emoji2.views)
|
||||
implementation(libs.androidx.exifinterface)
|
||||
implementation(libs.androidx.navigation.compose)
|
||||
implementation(libs.androidx.profileinstaller)
|
||||
ksp(libs.androidx.room.compiler)
|
||||
implementation(libs.androidx.room.runtime)
|
||||
implementation(libs.cache4k)
|
||||
implementation(libs.kotlinx.coroutines)
|
||||
implementation(libs.kotlinx.serialization.json)
|
||||
implementation(libs.mikepenz.aboutlibraries.core)
|
||||
implementation(libs.mikepenz.aboutlibraries.compose)
|
||||
implementation(libs.patrickgold.compose.tooltip)
|
||||
implementation(libs.patrickgold.jetpref.datastore.model)
|
||||
ksp(libs.patrickgold.jetpref.datastore.model.processor)
|
||||
implementation(libs.patrickgold.jetpref.datastore.ui)
|
||||
implementation(libs.patrickgold.jetpref.material.ui)
|
||||
|
||||
androidTestImplementation("androidx.test.ext", "junit", "1.1.2")
|
||||
androidTestImplementation("androidx.test.espresso", "espresso-core", "3.3.0")
|
||||
implementation(project(":lib:android"))
|
||||
implementation(project(":lib:color"))
|
||||
implementation(project(":lib:kotlin"))
|
||||
implementation(project(":lib:native"))
|
||||
implementation(project(":lib:snygg"))
|
||||
|
||||
testImplementation(libs.kotlin.test.junit5)
|
||||
androidTestImplementation(libs.androidx.test.ext)
|
||||
androidTestImplementation(libs.androidx.test.espresso.core)
|
||||
}
|
||||
|
||||
fun getGitCommitHash(short: Boolean = false): String {
|
||||
if (!File(".git").exists()) {
|
||||
return "null"
|
||||
}
|
||||
|
||||
val stdout = ByteArrayOutputStream()
|
||||
exec {
|
||||
if (short) {
|
||||
commandLine("git", "rev-parse", "--short", "HEAD")
|
||||
} else {
|
||||
commandLine("git", "rev-parse", "HEAD")
|
||||
}
|
||||
standardOutput = stdout
|
||||
}
|
||||
return stdout.toString().trim()
|
||||
}
|
||||
|
||||
3
app/lint.xml
Normal file
3
app/lint.xml
Normal file
@@ -0,0 +1,3 @@
|
||||
<lint>
|
||||
<issue id="ExtraTranslation" severity="warning"/>
|
||||
</lint>
|
||||
29
app/proguard-rules.pro
vendored
Normal file
29
app/proguard-rules.pro
vendored
Normal file
@@ -0,0 +1,29 @@
|
||||
# Disable obfuscation (we use Proguard exclusively for optimization)
|
||||
-dontobfuscate
|
||||
|
||||
# Keep `Companion` object fields of serializable classes.
|
||||
# This avoids serializer lookup through `getDeclaredClasses` as done for named companion objects.
|
||||
-if @kotlinx.serialization.Serializable class **
|
||||
-keepclassmembers class <1> {
|
||||
static <1>$Companion Companion;
|
||||
}
|
||||
|
||||
# Keep `serializer()` on companion objects (both default and named) of serializable classes.
|
||||
-if @kotlinx.serialization.Serializable class ** {
|
||||
static **$* *;
|
||||
}
|
||||
-keepclassmembers class <2>$<3> {
|
||||
kotlinx.serialization.KSerializer serializer(...);
|
||||
}
|
||||
|
||||
# Keep `INSTANCE.serializer()` of serializable objects.
|
||||
-if @kotlinx.serialization.Serializable class ** {
|
||||
public static ** INSTANCE;
|
||||
}
|
||||
-keepclassmembers class <1> {
|
||||
public static <1> INSTANCE;
|
||||
kotlinx.serialization.KSerializer serializer(...);
|
||||
}
|
||||
|
||||
# @Serializable and @Polymorphic are used at runtime for polymorphic serialization.
|
||||
-keepattributes RuntimeVisibleAnnotations,AnnotationDefault
|
||||
@@ -0,0 +1,62 @@
|
||||
{
|
||||
"formatVersion": 1,
|
||||
"database": {
|
||||
"version": 1,
|
||||
"identityHash": "d573e2ae2cbe7026957bc8d8fda291f3",
|
||||
"entities": [
|
||||
{
|
||||
"tableName": "clipboard_files",
|
||||
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`_id` INTEGER NOT NULL, `_display_name` TEXT NOT NULL, `_size` INTEGER NOT NULL, `mimeTypes` TEXT NOT NULL, PRIMARY KEY(`_id`))",
|
||||
"fields": [
|
||||
{
|
||||
"fieldPath": "id",
|
||||
"columnName": "_id",
|
||||
"affinity": "INTEGER",
|
||||
"notNull": true
|
||||
},
|
||||
{
|
||||
"fieldPath": "displayName",
|
||||
"columnName": "_display_name",
|
||||
"affinity": "TEXT",
|
||||
"notNull": true
|
||||
},
|
||||
{
|
||||
"fieldPath": "size",
|
||||
"columnName": "_size",
|
||||
"affinity": "INTEGER",
|
||||
"notNull": true
|
||||
},
|
||||
{
|
||||
"fieldPath": "mimeTypes",
|
||||
"columnName": "mimeTypes",
|
||||
"affinity": "TEXT",
|
||||
"notNull": true
|
||||
}
|
||||
],
|
||||
"primaryKey": {
|
||||
"columnNames": [
|
||||
"_id"
|
||||
],
|
||||
"autoGenerate": false
|
||||
},
|
||||
"indices": [
|
||||
{
|
||||
"name": "index_clipboard_files__id",
|
||||
"unique": false,
|
||||
"columnNames": [
|
||||
"_id"
|
||||
],
|
||||
"orders": [],
|
||||
"createSql": "CREATE INDEX IF NOT EXISTS `index_clipboard_files__id` ON `${TABLE_NAME}` (`_id`)"
|
||||
}
|
||||
],
|
||||
"foreignKeys": []
|
||||
}
|
||||
],
|
||||
"views": [],
|
||||
"setupQueries": [
|
||||
"CREATE TABLE IF NOT EXISTS room_master_table (id INTEGER PRIMARY KEY,identity_hash TEXT)",
|
||||
"INSERT OR REPLACE INTO room_master_table (id,identity_hash) VALUES(42, 'd573e2ae2cbe7026957bc8d8fda291f3')"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,68 @@
|
||||
{
|
||||
"formatVersion": 1,
|
||||
"database": {
|
||||
"version": 2,
|
||||
"identityHash": "dc886df9792fe6b6ad532cc7aa7c4a84",
|
||||
"entities": [
|
||||
{
|
||||
"tableName": "clipboard_files",
|
||||
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`_id` INTEGER NOT NULL, `_display_name` TEXT NOT NULL, `_size` INTEGER NOT NULL, `orientation` INTEGER NOT NULL, `mimeTypes` TEXT NOT NULL, PRIMARY KEY(`_id`))",
|
||||
"fields": [
|
||||
{
|
||||
"fieldPath": "id",
|
||||
"columnName": "_id",
|
||||
"affinity": "INTEGER",
|
||||
"notNull": true
|
||||
},
|
||||
{
|
||||
"fieldPath": "displayName",
|
||||
"columnName": "_display_name",
|
||||
"affinity": "TEXT",
|
||||
"notNull": true
|
||||
},
|
||||
{
|
||||
"fieldPath": "size",
|
||||
"columnName": "_size",
|
||||
"affinity": "INTEGER",
|
||||
"notNull": true
|
||||
},
|
||||
{
|
||||
"fieldPath": "orientation",
|
||||
"columnName": "orientation",
|
||||
"affinity": "INTEGER",
|
||||
"notNull": true
|
||||
},
|
||||
{
|
||||
"fieldPath": "mimeTypes",
|
||||
"columnName": "mimeTypes",
|
||||
"affinity": "TEXT",
|
||||
"notNull": true
|
||||
}
|
||||
],
|
||||
"primaryKey": {
|
||||
"columnNames": [
|
||||
"_id"
|
||||
],
|
||||
"autoGenerate": false
|
||||
},
|
||||
"indices": [
|
||||
{
|
||||
"name": "index_clipboard_files__id",
|
||||
"unique": false,
|
||||
"columnNames": [
|
||||
"_id"
|
||||
],
|
||||
"orders": [],
|
||||
"createSql": "CREATE INDEX IF NOT EXISTS `index_clipboard_files__id` ON `${TABLE_NAME}` (`_id`)"
|
||||
}
|
||||
],
|
||||
"foreignKeys": []
|
||||
}
|
||||
],
|
||||
"views": [],
|
||||
"setupQueries": [
|
||||
"CREATE TABLE IF NOT EXISTS room_master_table (id INTEGER PRIMARY KEY,identity_hash TEXT)",
|
||||
"INSERT OR REPLACE INTO room_master_table (id,identity_hash) VALUES(42, 'dc886df9792fe6b6ad532cc7aa7c4a84')"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,80 @@
|
||||
{
|
||||
"formatVersion": 1,
|
||||
"database": {
|
||||
"version": 2,
|
||||
"identityHash": "6fbec9d7ea017f8aefac4fb84dbd5189",
|
||||
"entities": [
|
||||
{
|
||||
"tableName": "clipboard_history",
|
||||
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`_id` INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, `type` INTEGER NOT NULL, `text` TEXT, `uri` TEXT, `creationTimestampMs` INTEGER NOT NULL, `isPinned` INTEGER NOT NULL, `mimeTypes` TEXT NOT NULL)",
|
||||
"fields": [
|
||||
{
|
||||
"fieldPath": "id",
|
||||
"columnName": "_id",
|
||||
"affinity": "INTEGER",
|
||||
"notNull": true
|
||||
},
|
||||
{
|
||||
"fieldPath": "type",
|
||||
"columnName": "type",
|
||||
"affinity": "INTEGER",
|
||||
"notNull": true
|
||||
},
|
||||
{
|
||||
"fieldPath": "text",
|
||||
"columnName": "text",
|
||||
"affinity": "TEXT",
|
||||
"notNull": false
|
||||
},
|
||||
{
|
||||
"fieldPath": "uri",
|
||||
"columnName": "uri",
|
||||
"affinity": "TEXT",
|
||||
"notNull": false
|
||||
},
|
||||
{
|
||||
"fieldPath": "creationTimestampMs",
|
||||
"columnName": "creationTimestampMs",
|
||||
"affinity": "INTEGER",
|
||||
"notNull": true
|
||||
},
|
||||
{
|
||||
"fieldPath": "isPinned",
|
||||
"columnName": "isPinned",
|
||||
"affinity": "INTEGER",
|
||||
"notNull": true
|
||||
},
|
||||
{
|
||||
"fieldPath": "mimeTypes",
|
||||
"columnName": "mimeTypes",
|
||||
"affinity": "TEXT",
|
||||
"notNull": true
|
||||
}
|
||||
],
|
||||
"primaryKey": {
|
||||
"columnNames": [
|
||||
"_id"
|
||||
],
|
||||
"autoGenerate": true
|
||||
},
|
||||
"indices": [
|
||||
{
|
||||
"name": "index_clipboard_history__id",
|
||||
"unique": false,
|
||||
"columnNames": [
|
||||
"_id"
|
||||
],
|
||||
"orders": [],
|
||||
"createSql": "CREATE INDEX IF NOT EXISTS `index_clipboard_history__id` ON `${TABLE_NAME}` (`_id`)"
|
||||
}
|
||||
],
|
||||
"foreignKeys": []
|
||||
}
|
||||
],
|
||||
"views": [],
|
||||
"setupQueries": [
|
||||
"CREATE TABLE IF NOT EXISTS room_master_table (id INTEGER PRIMARY KEY,identity_hash TEXT)",
|
||||
"INSERT OR REPLACE INTO room_master_table (id,identity_hash) VALUES(42, '6fbec9d7ea017f8aefac4fb84dbd5189')"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,94 @@
|
||||
{
|
||||
"formatVersion": 1,
|
||||
"database": {
|
||||
"version": 3,
|
||||
"identityHash": "145ca5bf4bff8e98f71ebc70ab3b495b",
|
||||
"entities": [
|
||||
{
|
||||
"tableName": "clipboard_history",
|
||||
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`_id` INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, `type` INTEGER NOT NULL, `text` TEXT, `uri` TEXT, `creationTimestampMs` INTEGER NOT NULL, `isPinned` INTEGER NOT NULL, `mimeTypes` TEXT NOT NULL, `isSensitive` INTEGER NOT NULL DEFAULT 0, `isRemoteDevice` INTEGER NOT NULL DEFAULT 0)",
|
||||
"fields": [
|
||||
{
|
||||
"fieldPath": "id",
|
||||
"columnName": "_id",
|
||||
"affinity": "INTEGER",
|
||||
"notNull": true
|
||||
},
|
||||
{
|
||||
"fieldPath": "type",
|
||||
"columnName": "type",
|
||||
"affinity": "INTEGER",
|
||||
"notNull": true
|
||||
},
|
||||
{
|
||||
"fieldPath": "text",
|
||||
"columnName": "text",
|
||||
"affinity": "TEXT",
|
||||
"notNull": false
|
||||
},
|
||||
{
|
||||
"fieldPath": "uri",
|
||||
"columnName": "uri",
|
||||
"affinity": "TEXT",
|
||||
"notNull": false
|
||||
},
|
||||
{
|
||||
"fieldPath": "creationTimestampMs",
|
||||
"columnName": "creationTimestampMs",
|
||||
"affinity": "INTEGER",
|
||||
"notNull": true
|
||||
},
|
||||
{
|
||||
"fieldPath": "isPinned",
|
||||
"columnName": "isPinned",
|
||||
"affinity": "INTEGER",
|
||||
"notNull": true
|
||||
},
|
||||
{
|
||||
"fieldPath": "mimeTypes",
|
||||
"columnName": "mimeTypes",
|
||||
"affinity": "TEXT",
|
||||
"notNull": true
|
||||
},
|
||||
{
|
||||
"fieldPath": "isSensitive",
|
||||
"columnName": "isSensitive",
|
||||
"affinity": "INTEGER",
|
||||
"notNull": true,
|
||||
"defaultValue": "0"
|
||||
},
|
||||
{
|
||||
"fieldPath": "isRemoteDevice",
|
||||
"columnName": "isRemoteDevice",
|
||||
"affinity": "INTEGER",
|
||||
"notNull": true,
|
||||
"defaultValue": "0"
|
||||
}
|
||||
],
|
||||
"primaryKey": {
|
||||
"autoGenerate": true,
|
||||
"columnNames": [
|
||||
"_id"
|
||||
]
|
||||
},
|
||||
"indices": [
|
||||
{
|
||||
"name": "index_clipboard_history__id",
|
||||
"unique": false,
|
||||
"columnNames": [
|
||||
"_id"
|
||||
],
|
||||
"orders": [],
|
||||
"createSql": "CREATE INDEX IF NOT EXISTS `index_clipboard_history__id` ON `${TABLE_NAME}` (`_id`)"
|
||||
}
|
||||
],
|
||||
"foreignKeys": []
|
||||
}
|
||||
],
|
||||
"views": [],
|
||||
"setupQueries": [
|
||||
"CREATE TABLE IF NOT EXISTS room_master_table (id INTEGER PRIMARY KEY,identity_hash TEXT)",
|
||||
"INSERT OR REPLACE INTO room_master_table (id,identity_hash) VALUES(42, '145ca5bf4bff8e98f71ebc70ab3b495b')"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,94 @@
|
||||
{
|
||||
"formatVersion": 1,
|
||||
"database": {
|
||||
"version": 4,
|
||||
"identityHash": "1dd181d116dcb4530fb5b33451ea9ab5",
|
||||
"entities": [
|
||||
{
|
||||
"tableName": "clipboard_history",
|
||||
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`_id` INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, `type` INTEGER NOT NULL, `text` TEXT, `uri` TEXT, `creationTimestampMs` INTEGER NOT NULL, `isPinned` INTEGER NOT NULL, `mimeTypes` TEXT NOT NULL, `is_sensitive` INTEGER NOT NULL DEFAULT 0, `is_remote_device` INTEGER NOT NULL DEFAULT 0)",
|
||||
"fields": [
|
||||
{
|
||||
"fieldPath": "id",
|
||||
"columnName": "_id",
|
||||
"affinity": "INTEGER",
|
||||
"notNull": true
|
||||
},
|
||||
{
|
||||
"fieldPath": "type",
|
||||
"columnName": "type",
|
||||
"affinity": "INTEGER",
|
||||
"notNull": true
|
||||
},
|
||||
{
|
||||
"fieldPath": "text",
|
||||
"columnName": "text",
|
||||
"affinity": "TEXT",
|
||||
"notNull": false
|
||||
},
|
||||
{
|
||||
"fieldPath": "uri",
|
||||
"columnName": "uri",
|
||||
"affinity": "TEXT",
|
||||
"notNull": false
|
||||
},
|
||||
{
|
||||
"fieldPath": "creationTimestampMs",
|
||||
"columnName": "creationTimestampMs",
|
||||
"affinity": "INTEGER",
|
||||
"notNull": true
|
||||
},
|
||||
{
|
||||
"fieldPath": "isPinned",
|
||||
"columnName": "isPinned",
|
||||
"affinity": "INTEGER",
|
||||
"notNull": true
|
||||
},
|
||||
{
|
||||
"fieldPath": "mimeTypes",
|
||||
"columnName": "mimeTypes",
|
||||
"affinity": "TEXT",
|
||||
"notNull": true
|
||||
},
|
||||
{
|
||||
"fieldPath": "isSensitive",
|
||||
"columnName": "is_sensitive",
|
||||
"affinity": "INTEGER",
|
||||
"notNull": true,
|
||||
"defaultValue": "0"
|
||||
},
|
||||
{
|
||||
"fieldPath": "isRemoteDevice",
|
||||
"columnName": "is_remote_device",
|
||||
"affinity": "INTEGER",
|
||||
"notNull": true,
|
||||
"defaultValue": "0"
|
||||
}
|
||||
],
|
||||
"primaryKey": {
|
||||
"autoGenerate": true,
|
||||
"columnNames": [
|
||||
"_id"
|
||||
]
|
||||
},
|
||||
"indices": [
|
||||
{
|
||||
"name": "index_clipboard_history__id",
|
||||
"unique": false,
|
||||
"columnNames": [
|
||||
"_id"
|
||||
],
|
||||
"orders": [],
|
||||
"createSql": "CREATE INDEX IF NOT EXISTS `index_clipboard_history__id` ON `${TABLE_NAME}` (`_id`)"
|
||||
}
|
||||
],
|
||||
"foreignKeys": []
|
||||
}
|
||||
],
|
||||
"views": [],
|
||||
"setupQueries": [
|
||||
"CREATE TABLE IF NOT EXISTS room_master_table (id INTEGER PRIMARY KEY,identity_hash TEXT)",
|
||||
"INSERT OR REPLACE INTO room_master_table (id,identity_hash) VALUES(42, '1dd181d116dcb4530fb5b33451ea9ab5')"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,68 @@
|
||||
{
|
||||
"formatVersion": 1,
|
||||
"database": {
|
||||
"version": 1,
|
||||
"identityHash": "787af4a2df15bf9d2c0597519d3fb273",
|
||||
"entities": [
|
||||
{
|
||||
"tableName": "words",
|
||||
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`_id` INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, `word` TEXT NOT NULL, `frequency` INTEGER NOT NULL, `locale` TEXT, `shortcut` TEXT)",
|
||||
"fields": [
|
||||
{
|
||||
"fieldPath": "id",
|
||||
"columnName": "_id",
|
||||
"affinity": "INTEGER",
|
||||
"notNull": true
|
||||
},
|
||||
{
|
||||
"fieldPath": "word",
|
||||
"columnName": "word",
|
||||
"affinity": "TEXT",
|
||||
"notNull": true
|
||||
},
|
||||
{
|
||||
"fieldPath": "freq",
|
||||
"columnName": "frequency",
|
||||
"affinity": "INTEGER",
|
||||
"notNull": true
|
||||
},
|
||||
{
|
||||
"fieldPath": "locale",
|
||||
"columnName": "locale",
|
||||
"affinity": "TEXT",
|
||||
"notNull": false
|
||||
},
|
||||
{
|
||||
"fieldPath": "shortcut",
|
||||
"columnName": "shortcut",
|
||||
"affinity": "TEXT",
|
||||
"notNull": false
|
||||
}
|
||||
],
|
||||
"primaryKey": {
|
||||
"columnNames": [
|
||||
"_id"
|
||||
],
|
||||
"autoGenerate": true
|
||||
},
|
||||
"indices": [
|
||||
{
|
||||
"name": "index_words__id",
|
||||
"unique": false,
|
||||
"columnNames": [
|
||||
"_id"
|
||||
],
|
||||
"orders": [],
|
||||
"createSql": "CREATE INDEX IF NOT EXISTS `index_words__id` ON `${TABLE_NAME}` (`_id`)"
|
||||
}
|
||||
],
|
||||
"foreignKeys": []
|
||||
}
|
||||
],
|
||||
"views": [],
|
||||
"setupQueries": [
|
||||
"CREATE TABLE IF NOT EXISTS room_master_table (id INTEGER PRIMARY KEY,identity_hash TEXT)",
|
||||
"INSERT OR REPLACE INTO room_master_table (id,identity_hash) VALUES(42, '787af4a2df15bf9d2c0597519d3fb273')"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -1,3 +1,19 @@
|
||||
/*
|
||||
* Copyright (C) 2025 The FlorisBoard Contributors
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package dev.patrickgold.florisboard
|
||||
|
||||
import androidx.test.ext.junit.runners.AndroidJUnit4
|
||||
@@ -1,26 +1,13 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Copyright (C) 2020-2022 Patrick Goldinger
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
package="dev.patrickgold.florisboard">
|
||||
xmlns:tools="http://schemas.android.com/tools">
|
||||
|
||||
<!-- Permission needed to vibrate if the user has key press vibration enabled -->
|
||||
<uses-permission android:name="android.permission.VIBRATE"/>
|
||||
|
||||
<!-- Permission needed to create notifications on devices running Android 13+ -->
|
||||
<uses-permission android:name="android.permission.POST_NOTIFICATIONS"/>
|
||||
|
||||
<!-- Android 11+ only: Define that FlorisBoard requests to see all apps that
|
||||
ship with an IME or Spell Check service. This is used to guide the user
|
||||
in the Settings Ui why FlorisBoard may not be working.
|
||||
@@ -41,10 +28,14 @@
|
||||
android:fullBackupContent="@xml/backup_rules"
|
||||
android:icon="@mipmap/floris_app_icon"
|
||||
android:label="@string/floris_app_name"
|
||||
android:enableOnBackInvokedCallback="true"
|
||||
android:roundIcon="@mipmap/floris_app_icon_round"
|
||||
android:supportsRtl="true"
|
||||
android:theme="@style/FlorisAppTheme"
|
||||
tools:targetApi="s">
|
||||
tools:targetApi="tiramisu">
|
||||
|
||||
<!-- Allow app to be profiled for benchmarking and baseline profile generation -->
|
||||
<profileable android:shell="true"/>
|
||||
|
||||
<!-- IME service -->
|
||||
<service
|
||||
@@ -52,8 +43,7 @@
|
||||
android:label="@string/floris_app_name"
|
||||
android:permission="android.permission.BIND_INPUT_METHOD"
|
||||
android:directBootAware="true"
|
||||
android:exported="true"
|
||||
tools:targetApi="n">
|
||||
android:exported="true">
|
||||
<intent-filter>
|
||||
<action android:name="android.view.InputMethod"/>
|
||||
</intent-filter>
|
||||
@@ -80,10 +70,26 @@
|
||||
android:launchMode="singleTask"
|
||||
android:roundIcon="@mipmap/floris_app_icon_round"
|
||||
android:windowSoftInputMode="adjustResize"
|
||||
android:theme="@style/FlorisAppTheme"
|
||||
android:exported="false">
|
||||
android:theme="@style/FlorisAppTheme.Splash"
|
||||
android:exported="true">
|
||||
<intent-filter>
|
||||
<data android:scheme="florisboard" android:host="app-ui"/>
|
||||
<action android:name="android.intent.action.VIEW"/>
|
||||
<category android:name="android.intent.category.DEFAULT" />
|
||||
<category android:name="android.intent.category.BROWSABLE" />
|
||||
<data android:scheme="ui" android:host="florisboard" android:pathPrefix="/" />
|
||||
</intent-filter>
|
||||
<intent-filter android:label="Import Extension">
|
||||
<action android:name="android.intent.action.VIEW"/>
|
||||
<category android:name="android.intent.category.DEFAULT"/>
|
||||
<data android:scheme="content"/>
|
||||
<data android:mimeType="application/vnd.florisboard.extension+zip"/>
|
||||
<data android:mimeType="application/octet-stream"/><!-- Firefox looking at you :eyes: -->
|
||||
</intent-filter>
|
||||
<intent-filter android:label="Import Extension">
|
||||
<action android:name="android.intent.action.SEND"/>
|
||||
<category android:name="android.intent.category.DEFAULT"/>
|
||||
<data android:mimeType="application/vnd.florisboard.extension+zip"/>
|
||||
<data android:mimeType="application/octet-stream"/><!-- Firefox looking at you :eyes: -->
|
||||
</intent-filter>
|
||||
</activity>
|
||||
|
||||
@@ -95,7 +101,7 @@
|
||||
android:launchMode="singleTask"
|
||||
android:roundIcon="@mipmap/floris_app_icon_round"
|
||||
android:targetActivity="dev.patrickgold.florisboard.app.FlorisAppActivity"
|
||||
android:theme="@style/FlorisAppTheme"
|
||||
android:theme="@style/FlorisAppTheme.Splash"
|
||||
android:exported="true">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN"/>
|
||||
@@ -103,31 +109,26 @@
|
||||
</intent-filter>
|
||||
</activity-alias>
|
||||
|
||||
<!-- Import File Bridging Activity -->
|
||||
<activity
|
||||
android:name="dev.patrickgold.florisboard.app.ui.ext.ImportFileActivity"
|
||||
android:icon="@mipmap/floris_app_icon"
|
||||
android:label="@string/settings__title"
|
||||
android:launchMode="singleTask"
|
||||
android:roundIcon="@mipmap/floris_app_icon_round"
|
||||
android:windowSoftInputMode="adjustResize"
|
||||
android:theme="@style/FlorisAppTheme"
|
||||
android:exported="true">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.VIEW"/>
|
||||
<category android:name="android.intent.category.DEFAULT"/>
|
||||
<data android:scheme="*" android:host="*" android:pathPattern=".*\\.flex"/>
|
||||
<data android:scheme="*" android:host="*" android:pathPattern=".*\\.xpi"/>
|
||||
</intent-filter>
|
||||
</activity>
|
||||
|
||||
<!-- Crash Dialog Activity -->
|
||||
<activity
|
||||
android:name="dev.patrickgold.florisboard.crashutility.CrashDialogActivity"
|
||||
android:name="dev.patrickgold.florisboard.lib.crashutility.CrashDialogActivity"
|
||||
android:icon="@mipmap/floris_app_icon"
|
||||
android:label="@string/crash_dialog__title"
|
||||
android:configChanges="orientation|screenSize"
|
||||
android:theme="@style/CrashDialogTheme"/>
|
||||
|
||||
<!-- Copy to Clipboard Activity -->
|
||||
<activity
|
||||
android:name="dev.patrickgold.florisboard.ime.clipboard.FlorisCopyToClipboardActivity"
|
||||
android:theme="@style/FlorisAppTheme.Transparent"
|
||||
android:exported="true">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.SEND"/>
|
||||
<category android:name="android.intent.category.DEFAULT"/>
|
||||
<data android:mimeType="image/*"/>
|
||||
</intent-filter>
|
||||
</activity>
|
||||
|
||||
<!-- Clipboard Media File Provider -->
|
||||
<provider
|
||||
android:name="dev.patrickgold.florisboard.ime.clipboard.provider.ClipboardMediaProvider"
|
||||
@@ -147,6 +148,17 @@
|
||||
android:resource="@xml/file_paths"/>
|
||||
</provider>
|
||||
|
||||
<!-- Disable default EmojiCompat initializer -->
|
||||
<provider
|
||||
android:name="androidx.startup.InitializationProvider"
|
||||
android:authorities="${applicationId}.androidx-startup"
|
||||
android:exported="false"
|
||||
tools:node="merge">
|
||||
<meta-data
|
||||
android:name="androidx.emoji2.text.EmojiCompatInitializer"
|
||||
tools:node="remove"/>
|
||||
</provider>
|
||||
|
||||
</application>
|
||||
|
||||
</manifest>
|
||||
|
||||
Binary file not shown.
@@ -2,10 +2,10 @@
|
||||
"$": "ime.extension.keyboard",
|
||||
"meta": {
|
||||
"id": "org.florisboard.composers",
|
||||
"version": "0.1.0",
|
||||
"version": "0.1.1",
|
||||
"title": "Default composers",
|
||||
"description": "Default composers which are always available.",
|
||||
"maintainers": [ "patrickgold <patrick@patrickgold.dev>" ],
|
||||
"maintainers": [ "patrickgold <patrick@patrickgold.dev>", "thanhhocse96 <thanh.hoquang@pm.me>" ],
|
||||
"license": "apache-2.0"
|
||||
},
|
||||
"composers": [
|
||||
@@ -13,10 +13,10 @@
|
||||
{ "$": "hangul-unicode" },
|
||||
{ "$": "kana-unicode" },
|
||||
{ "$": "with-rules",
|
||||
"id": "basic-telex",
|
||||
"label": "Basic Telex",
|
||||
"id": "telex",
|
||||
"label": "Telex",
|
||||
"rules": {
|
||||
"aw": "ă", "aa": "â", "dd": "đ", "ee": "ê", "oo": "ô", "ow": "ơ", "uw": "ư", "w": "ư",
|
||||
"aw": "ă", "aa": "â", "dd": "đ", "ee": "ê", "oo": "ô", "ow": "ơ", "uw": "ư", "w": "ư",
|
||||
"uow": "ươ",
|
||||
"af": "à", "ar": "ả", "ax": "ã", "as": "á", "aj": "ạ",
|
||||
"ăf": "ằ", "ăr": "ẳ", "ăx": "ẵ", "ăs": "ắ", "ăj": "ặ",
|
||||
@@ -30,7 +30,7 @@
|
||||
"uf": "ù", "ur": "ủ", "ux": "ũ", "us": "ú", "uj": "ụ",
|
||||
"ưf": "ừ", "ưr": "ử", "ưx": "ữ", "ưs": "ứ", "ưj": "ự",
|
||||
"yf": "ỳ", "yr": "ỷ", "yx": "ỹ", "ys": "ý", "yj": "ỵ",
|
||||
"ăw": "aw", "âa": "aa", "đd": "dd", "êe": "ee", "ôo": "oo", "ơw": "ow", "ưw": "w",
|
||||
"ăw": "aw", "âa": "aa", "đd": "dd", "êe": "ee", "ôo": "oo", "ơw": "ow", "ưw": "w", "iêe": "iee",
|
||||
"ươw": "uow",
|
||||
"àf": "af", "ảr": "ar", "ãx": "ax", "ás": "as", "ạj": "aj",
|
||||
"ằf": "ăf", "ẳr": "ăr", "ẵx": "ăx", "ắs": "ăs", "ặj": "ăj",
|
||||
@@ -55,7 +55,710 @@
|
||||
"ờz": "ơ", "ởz": "ơ", "ỡz": "ơ", "ớz": "ơ", "ợz": "ơ",
|
||||
"ùz": "u", "ủz": "u", "ũz": "u", "úz": "u", "ụz": "u",
|
||||
"ừz": "ư", "ửz": "ư", "ữz": "ư", "ứz": "ư", "ựz": "ư",
|
||||
"ỳz": "y", "ỷz": "y", "ỹz": "y", "ýz": "y", "ỵz": "y"
|
||||
"ỳz": "y", "ỷz": "y", "ỹz": "y", "ýz": "y", "ỵz": "y",
|
||||
|
||||
"áf": "à", "ár": "ả", "áx": "ã", "áj": "ạ",
|
||||
"às": "á", "àr": "ả", "àx": "ã", "àj": "ạ",
|
||||
"ảs": "á", "ảf": "à", "ảx": "ã", "ảj": "ạ",
|
||||
"ãs": "á", "ãf": "à", "ãr": "ả", "ãj": "ạ",
|
||||
"ạs": "á", "ạf": "à", "ạr": "ả", "ạx": "ã",
|
||||
"ấf": "ầ", "ấr": "ẩ", "ấx": "ẫ", "ấj": "ậ",
|
||||
"ầs": "ấ", "ầr": "ẩ", "ầx": "ẫ", "ầj": "ậ",
|
||||
"ẩs": "ấ", "ẩf": "ầ", "ẩx": "ẫ", "ẩj": "ậ",
|
||||
"ẫs": "ấ", "ẫf": "ầ", "ẫr": "ẩ", "ẫj": "ậ",
|
||||
"ậs": "ấ", "ậf": "ầ", "ậr": "ẩ", "ậx": "ẫ",
|
||||
"ắf": "ằ", "ắr": "ẳ", "ắx": "ẵ", "ắj": "ặ",
|
||||
"ằs": "ắ", "ằr": "ẳ", "ằx": "ẵ", "ằj": "ặ",
|
||||
"ẳs": "ắ", "ẳf": "ằ", "ẳx": "ẵ", "ẳj": "ặ",
|
||||
"ẵs": "ắ", "ẵf": "ằ", "ẵr": "ẳ", "ẵj": "ặ",
|
||||
"ặs": "ắ", "ặf": "ằ", "ặr": "ẳ", "ặx": "ẵ",
|
||||
"éf": "è", "ér": "ẻ", "éx": "ẽ", "éj": "ẹ",
|
||||
"ès": "é", "èr": "ẻ", "èx": "ẽ", "èj": "ẹ",
|
||||
"ẻs": "é", "ẻf": "è", "ẻx": "ẽ", "ẻj": "ẹ",
|
||||
"ẽs": "é", "ẽf": "è", "ẽr": "ẻ", "ẽj": "ẹ",
|
||||
"ẹs": "é", "ẹf": "è", "ẹr": "ẻ", "ẹx": "ẽ",
|
||||
"ếf": "ề", "ếr": "ể", "ếx": "ễ", "ếj": "ệ",
|
||||
"ềs": "ế", "ềr": "ể", "ềx": "ễ", "ềj": "ệ",
|
||||
"ểs": "ế", "ểf": "ề", "ểx": "ễ", "ểj": "ệ",
|
||||
"ễs": "ế", "ễf": "ề", "ễr": "ể", "ễj": "ệ",
|
||||
"ệs": "ế", "ệf": "ề", "ệr": "ể", "ệx": "ễ",
|
||||
"íf": "ì", "ír": "ỉ", "íx": "ĩ", "íj": "ị",
|
||||
"ìs": "í", "ìr": "ỉ", "ìx": "ĩ", "ìj": "ị",
|
||||
"ỉs": "í", "ỉf": "ì", "ỉx": "ĩ", "ỉj": "ị",
|
||||
"ĩs": "í", "ĩf": "ì", "ĩr": "ỉ", "ĩj": "ị",
|
||||
"ịs": "í", "ịf": "ì", "ịr": "ỉ", "ịx": "ĩ",
|
||||
"óf": "ò", "ór": "ỏ", "óx": "õ", "ój": "ọ",
|
||||
"òs": "ó", "òr": "ỏ", "òx": "õ", "òj": "ọ",
|
||||
"ỏs": "ó", "ỏf": "ò", "ỏx": "õ", "ỏj": "ọ",
|
||||
"õs": "ó", "õf": "ò", "õr": "ỏ", "õj": "ọ",
|
||||
"ọs": "ó", "ọf": "ò", "ọr": "ỏ", "ọx": "õ",
|
||||
"ốf": "ồ", "ốr": "ổ", "ốx": "ỗ", "ốj": "ộ",
|
||||
"ồs": "ố", "ồr": "ổ", "ồx": "ỗ", "ồj": "ộ",
|
||||
"ổs": "ố", "ổf": "ồ", "ổx": "ỗ", "ổj": "ộ",
|
||||
"ỗs": "ố", "ỗf": "ồ", "ỗr": "ổ", "ỗj": "ộ",
|
||||
"ộs": "ố", "ộf": "ồ", "ộr": "ổ", "ộx": "ỗ",
|
||||
"ớf": "ờ", "ớr": "ở", "ớx": "ỡ", "ớj": "ợ",
|
||||
"ờs": "ớ", "ờr": "ở", "ờx": "ỡ", "ờj": "ợ",
|
||||
"ởs": "ớ", "ởf": "ờ", "ởx": "ỡ", "ởj": "ợ",
|
||||
"ỡs": "ớ", "ỡf": "ờ", "ỡr": "ở", "ỡj": "ợ",
|
||||
"ợs": "ớ", "ợf": "ờ", "ợr": "ở", "ợx": "ỡ",
|
||||
"úf": "ù", "úr": "ủ", "úx": "ũ", "új": "ụ",
|
||||
"ùs": "ú", "ùr": "ủ", "ùx": "ũ", "ùj": "ụ",
|
||||
"ủs": "ú", "ủf": "ù", "ủx": "ũ", "ủj": "ụ",
|
||||
"ũs": "ú", "ũf": "ù", "ũr": "ủ", "ũj": "ụ",
|
||||
"ụs": "ú", "ụf": "ù", "ụr": "ủ", "ụx": "ũ",
|
||||
"ứf": "ừ", "ứr": "ử", "ứx": "ữ", "ứj": "ự",
|
||||
"ừs": "ứ", "ừr": "ử", "ừx": "ữ", "ừj": "ự",
|
||||
"ửs": "ứ", "ửf": "ừ", "ửx": "ữ", "ửj": "ự",
|
||||
"ữs": "ứ", "ữf": "ừ", "ữr": "ử", "ữj": "ự",
|
||||
"ựs": "ứ", "ựf": "ừ", "ựr": "ử", "ựx": "ữ",
|
||||
"ýf": "ỳ", "ýr": "ỷ", "ýx": "ỹ", "ýj": "ỵ",
|
||||
"ỳs": "ý", "ỳr": "ỷ", "ỳx": "ỹ", "ỳj": "ỵ",
|
||||
"ỷs": "ý", "ỷf": "ỳ", "ỷx": "ỹ", "ỷj": "ỵ",
|
||||
"ỹs": "ý", "ỹf": "ỳ", "ỹr": "ỷ", "ỹj": "ỵ",
|
||||
"ỵs": "ý", "ỵf": "ỳ", "ỵr": "ỷ", "ỵx": "ỹ",
|
||||
|
||||
"gias": "giá", "giaf": "già", "giar": "giả", "giax": "giã", "giaj": "giạ",
|
||||
"gía": "giá", "gìa": "già", "gỉa": "giả", "gĩa": "giã", "gịa": "giạ",
|
||||
"gíă": "giắ", "gìă": "giằ", "gỉă": "giẳ", "gĩă": "giẵ", "gịă": "giặ",
|
||||
"gíâ": "giấ", "gìâ": "giầ", "gỉâ": "giẩ", "gĩẫ": "giẫ", "gịâ": "giậ",
|
||||
"gíe": "gié", "gìe": "giè", "gỉe": "giẻ", "gĩe": "giẽ", "gịe": "giẹ",
|
||||
"gíê": "giế", "gìê": "giề", "gỉê": "giể", "gĩê": "giễ", "gịê": "giệ",
|
||||
"gío": "gió", "gìo": "giò", "gỉo": "giỏ", "gĩo": "giõ", "gịo": "giọ",
|
||||
"gíô": "giố", "gìô": "giồ", "gỉô": "giổ", "gĩô": "giỗ", "gịô": "giộ",
|
||||
"gíơ": "giớ", "gìơ": "giờ", "gỉơ": "giở", "gĩơ": "giỡ", "gịơ": "giợ",
|
||||
"gius": "giú", "giuf": "giù", "giur": "giủ", "giux": "giũ", "giuj": "giụ",
|
||||
"gíu": "giú", "gìu": "giù", "gỉu": "giủ", "gĩu": "giũ", "gịu": "giụ",
|
||||
"gíư": "giứ", "gìư": "giừ", "gỉư": "giử", "gĩư": "giữ", "gịư": "giự",
|
||||
|
||||
"ghíê": "ghiế", "ghìê": "ghiề", "ghỉê": "ghiể", "ghĩê": "ghiễ", "ghịê": "ghiệ",
|
||||
|
||||
|
||||
"acw": "ăc", "amw": "ăm", "anw": "ăn", "apw": "ăp", "atw": "ăt", "angw": "ăng",
|
||||
"aca": "âc", "ama": "âm", "ana": "ân", "apa": "âp", "ata": "ât", "aua": "âu", "aya": "ây", "anga": "âng",
|
||||
"eme": "êm", "ene": "ên", "epe": "êp", "ete": "êt", "enhe": "ênh",
|
||||
"oio": "ôi","omo": "ôm", "ono": "ôn", "opo": "ôp", "oto": "ôt", "ongo": "ông",
|
||||
"oiw": "ơi", "omw": "ơm", "onw": "ơn", "opw": "ơp", "otw": "ơt",
|
||||
"uaw": "ưa", "ucw": "ưc", "uiw": "ưi", "umw": "ưm", "unw": "ưn", "utw": "ưt", "uuw": "ưu", "ungw": "ưng",
|
||||
"ieme": "iêm", "iene": "iên", "iepe": "iêp", "iete": "iêt", "ieue": "iêu", "ienge": "iêng",
|
||||
"uocw": "ươc", "uoiw": "ươi", "uomw": "ươm", "uonw": "ươn", "uotw": "ươt", "uongw": "ương",
|
||||
"uoco": "uôc", "uoio": "uôi", "uomo": "uôm", "uono": "uôn", "uoto": "uôt", "uongo": "uông",
|
||||
"uyene": "uyên", "uyete": "uyêt",
|
||||
"yeme": "yêm", "yene": "yên", "yete": "yêt", "yeue": "yêu", "yenge": "yêng",
|
||||
|
||||
"ăca": "âc", "ăma": "âm", "ăna": "ân", "ăpa": "âp", "ăta": "ât", "ănga": "âng",
|
||||
"âcw": "ăc", "âmw": "ăm", "ânw": "ăn", "âpw": "ăp", "âtw": "ăt", "ângw": "ăng",
|
||||
"ôiw": "ơi", "ômw": "ơm", "ônw": "ơn", "ôpw": "ơp", "ôtw": "ơt",
|
||||
"ơio": "ôi", "ơmo": "ôm", "ơno": "ôn", "ơpo": "ôp", "ơto": "ôt",
|
||||
|
||||
"ăcw": "acw", "ămw": "amw", "ănw": "anw", "ăpw": "apw", "ătw": "atw", "ăngw": "angw",
|
||||
"âca": "aca", "âma": "ama", "âna": "ana", "âpa": "apa", "âta": "ata", "âua": "aua", "âya": "aya", "ânga": "anga",
|
||||
"ême": "eme", "êne": "ene", "êpe": "epe", "ête": "ete",
|
||||
"ôio": "oio", "ômo": "omo", "ôno": "ono", "ôpo": "opo", "ôto": "oto", "ôngo": "ongo",
|
||||
"ơmw": "omw", "ơnw": "onw", "ơpw": "opw", "ơtw": "otw",
|
||||
"ưaw": "uaw", "ưcw": "ucw", "ưiw": "uiw", "ưmw": "umw", "ưnw": "unw" , "ưtw": "utw", "ưuw": "uuw", "ưngw": "ungw",
|
||||
"iême": "ieme", "iêne": "iene", "iêpe": "iepe", "iête": "iete", "iêue": "ieue", "iênge": "ienge",
|
||||
"ươcw": "uocw", "ươiw": "uoiw", "ươmw": "uomw", "ươnw": "uonw", "ươtw": "uotw", "ươngw": "uongw",
|
||||
"uyêne": "uyene", "uyêt": "uyete",
|
||||
"yême": "yeme", "yêne": "yene", "yête": "yete", "yêue": "yeue", "yênge": "yenge",
|
||||
|
||||
"acs": "ác", "acj": "ạc",
|
||||
"achs": "ách", "achj": "ạch",
|
||||
"ais": "ái", "aif": "ài", "air": "ải", "aix": "ãi", "aij": "ại",
|
||||
"ams": "ám", "amf": "àm", "amr": "ảm", "amx": "ãm", "amj": "ạm",
|
||||
"ans": "án" , "anf": "àn", "anr": "ản", "anx": "ãn", "anj": "ạn",
|
||||
"aos": "áo", "aof": "ào", "aor": "ảo", "aox": "ão", "aoj": "ạo",
|
||||
"aps":"áp", "apj": "ạp",
|
||||
"ats":"át", "atj": "ạt",
|
||||
"aus":"áu", "auf": "àu", "aur": "ảu", "aux": "ãu", "auj": "ạu",
|
||||
"ays": "áy", "ayf": "ày", "ayr": "ảy", "ayx": "ãy", "ayj": "ạy",
|
||||
"angs": "áng", "angf": "àng", "angr": "ảng", "angx": "ãng", "angj": "ạng",
|
||||
"anhs": "ánh", "anhf": "ành", "anhr": "ảnh", "anhx": "ãnh", "anhj": "ạnh",
|
||||
|
||||
"ács": "acs", "ạcj": "acj",
|
||||
"áchs": "achs", "ạchj": "achj",
|
||||
"áis": "ais", "àif": "aif", "ảir": "air", "ãix": "aix", "ạij": "aij",
|
||||
"áms": "ams", "àmf": "amf", "ảmr": "amr", "ãmx": "amx", "ạmj": "amj",
|
||||
"áns": "ans", "ànf": "anf", "ảnr": "anr", "ãnx": "anx", "ạnj": "anj",
|
||||
"áos": "aos", "àof": "aof", "ảor": "aor", "ãox": "aox", "ạoj":"aoj",
|
||||
"áps": "aps", "ạpj": "apj",
|
||||
"áts": "ats", "ạtj": "atj",
|
||||
"áus": "aus", "àuf": "auf", "ảur": "aur", "ãux": "aux", "ạuj": "auj",
|
||||
"áys": "ays", "àyf": "ayf", "ảyr": "ayr", "ãyx": "ayx", "ạyj": "ayj",
|
||||
"ángs": "angs", "àngf": "angf", "ảngr": "angr", "ãngx": "angx", "ạngj": "angj",
|
||||
"ánhs": "anhs", "ànhf": "anhf", "ảnhr": "anhr", "ãnhx": "anhx", "ạnhj": "anhj",
|
||||
|
||||
"ecs": "éc", "ecj": "ẹc",
|
||||
"ems": "ém", "emf": "èm", "emr": "ẻm", "emx": "ẽm", "emj": "ẹm",
|
||||
"ens": "én", "enf": "èn", "enr": "ẻn", "enx": "ẽn", "enj": "ẹn",
|
||||
"eps": "ép", "epj": "ẹp",
|
||||
"ets": "ét", "etj": "ẹt",
|
||||
"engs": "éng", "engf": "èng", "engr": "ẻng", "engx": "ẽng", "engj": "ẹng",
|
||||
"enhs": "énh", "enhf": "ènh", "enhr": "ẻnh", "enhx": "ẽnh", "enhj": "ẹnh",
|
||||
|
||||
"écs": "ecs", "ẹcj": "ecj",
|
||||
"éms": "ems", "èmf": "emf", "ẻmr": "emr", "ẽmx": "emx", "ẹmj": "emj",
|
||||
"éns": "ens", "ènf": "enf","ẻnr": "enr", "ẽnx": "enx", "ẹnj": "enj",
|
||||
"éps": "eps", "ẹpj": "epj",
|
||||
"éts": "ets", "ẹtj": "etj",
|
||||
"éngs": "engs", "èngf": "engf", "ẻngr": "engr", "ẽngx":"engx", "ẹngj": "engj",
|
||||
"énhs": "enhs", "ènhf": "enhf", "ẻnhr": "enhr", "ẽnh": "enhx", "ẹnh": "enhj",
|
||||
|
||||
"ias": "ía", "iaf": "ìa", "iar": "ỉa", "iax": "ĩa", "iaj": "ịa",
|
||||
"ics": "íc", "icj": "ịc",
|
||||
"ims": "ím", "imf": "ìm", "imr": "ỉm", "imx": "ĩm", "imj": "ịm",
|
||||
"ins": "ín", "inf": "ìn", "inr": "ỉn", "inx": "ĩn", "inj": "ịn",
|
||||
"ips": "íp", "ipj": "ịp",
|
||||
"its": "ít", "itj": "ịt",
|
||||
"ius": "íu", "iuf": "ìu", "iur": "ỉu", "iux": "ĩu", "iuj": "ịu",
|
||||
"ichs": "ích", "ichj": "ịch",
|
||||
"inhs": "ính", "inhf": "ình", "inhr": "ỉnh", "inhx": "ĩnh", "inhj": "ịnh",
|
||||
|
||||
"ías": "ias", "ìaf": "iaf", "ỉar": "iar", "ĩax": "iax", "ịaj": "iaj",
|
||||
"iás": "ias", "iàf": "iaf", "iảr": "iar", "iãx": "iax", "iạj": "iaj",
|
||||
"ícs": "ics", "ịcj": "icj",
|
||||
"íms": "ims", "ìmf": "imf", "ỉmr": "imr", "ĩmx": "imx", "ịmj": "imj",
|
||||
"íns": "ins", "ìnf": "inf", "ỉnr": "inr", "ĩnx": "inx", "ịnj": "inj",
|
||||
"íps": "ips", "ịpj": "ipj",
|
||||
"íts": "its", "ịtj": "itj",
|
||||
"íus": "ius", "ìuf": "iuf", "ỉur": "iur", "ĩux": "iux", "ịuj": "iuj",
|
||||
"íchs": "ichs", "ịchj": "ichj",
|
||||
"ínhs": "inhs", "ìnhf": "inhf", "ỉnhr": "inhr", "ĩnhx": "inhx", "ịnhj": "inhj",
|
||||
|
||||
"oas": "óa", "oaf": "òa", "oar": "ỏa", "oax": "õa", "oaj": "ọa",
|
||||
"ocs": "óc", "ocj": "ọc",
|
||||
"ois": "ói", "oif": "òi", "oir": "ỏi", "oix": "õi", "oij": "ọi",
|
||||
"oms": "óm", "omf": "òm", "omr": "ỏm", "omx": "õm", "omj": "ọm",
|
||||
"ons": "ón", "onf": "òn", "onr": "ỏn", "onx": "õn", "onj": "ọn",
|
||||
"ops": "óp", "opj": "ọp",
|
||||
"ots": "ót", "otj": "ọt",
|
||||
"ongs": "óng", "ongf": "òng", "ongr": "ỏng", "ongx": "õng", "ongj": "ọng",
|
||||
|
||||
"óas": "oas", "òaf": "oaf", "ỏar": "oar", "õax": "oax", "ọaj": "oaj",
|
||||
"ócs": "ocs", "ọcj": "ocj",
|
||||
"óis": "ois", "òif": "oif", "ỏir": "oir", "õix": "oix", "ọij": "oij",
|
||||
"óms": "oms", "òmf": "omf", "ỏmr": "omr", "õmx": "omx", "ọmj": "omj",
|
||||
"óns": "ons", "ònf": "onf", "ỏnr": "onr", "õnx": "onx", "ọnj": "onj",
|
||||
"óps": "ops", "ọpj": "opj",
|
||||
"óts": "ots", "ọtj": "otj",
|
||||
"óngs": "ongs", "òngf": "ongf", "ỏngr": "ongr", "õngx": "ongx", "ọngj": "ongj",
|
||||
|
||||
"uas": "úa", "uaf": "ùa", "uar": "ủa", "uax": "ũa", "uaj": "ụa",
|
||||
"ucs": "úc", "ucj": "ục",
|
||||
"uis": "úi", "uif": "ùi", "uir": "ủi", "uix": "ũi", "uij": "ụi",
|
||||
"ums": "úm", "umf": "ùm", "umr": "ủm", "umx": "ũm", "umj": "ụm",
|
||||
"uns": "ún", "unf": "ùn", "unr": "ủn", "unx": "ũn", "unj": "ụn",
|
||||
"ups": "úp", "upj": "ụp",
|
||||
"uts": "út", "utj": "ụt",
|
||||
"uus": "úu", "uuf": "ùu", "uur": "ủu", "uux": "ũu", "uuj": "ụu",
|
||||
"uys": "úy", "uyf": "ùy", "uyr": "ủy", "uyx": "ũy", "uyj": "ụy",
|
||||
"ungs": "úng", "ungf": "ùng", "ungr": "ủng", "ungx": "ũng", "ungj": "ụng",
|
||||
|
||||
"úas": "uas", "ùaf": "uaf", "ủar": "uar", "ũax": "uax", "ụaj": "uaj",
|
||||
"úcs": "ucs", "ụcj": "ucj",
|
||||
"úis": "uis", "ùif": "uif", "ủir": "uir", "ũix": "uix", "ụij": "uij",
|
||||
"úms": "ums", "ùmf": "umf", "ủmr": "umr", "ũmx": "umx", "ụmj": "umj",
|
||||
"úns": "uns", "ùnf": "unf", "ủnr": "unr", "ũnx": "unx", "ụnj": "unj",
|
||||
"úps": "ups", "ụpj": "upj",
|
||||
"úts": "uts", "ụtj": "utj",
|
||||
"úus": "uus", "ùuf": "uuf", "ủur": "uur", "ũux": "uux", "ụuj": "uuj",
|
||||
"úu ": "uus", "ùu ": "uuf", "ủu ": "uur", "ũu ": "uux", "ụu ": "uuj",
|
||||
"úys": "uys", "ùyf": "uyf", "ủyr": "uyr", "ũyx": "uyx", "ụyj": "uyj",
|
||||
"úngs": "ungs", "ùngf": "ungf", "ủngr": "ungr", "ũngx": "ungx", "ụngj": "ungj",
|
||||
|
||||
"ăcs": "ắc", "ăcj": "ặc",
|
||||
"ácw": "ắc", "ạcw": "ặc",
|
||||
"ăms": "ắm", "ămf": "ằm", "ămr": "ẳm", "ămx": "ẵm", "ămj": "ặm",
|
||||
"ámw": "ắm", "àmw": "ằm", "ảmw": "ẳm", "ãmw": "ẵm", "ạmw": "ặm",
|
||||
"ăns": "ắn", "ănf": "ằn", "ănr": "ẳn", "ănx": "ẵn", "ănj": "ặn",
|
||||
"ánw": "ắn", "ànw": "ằn", "ảnw": "ẳn", "ãnw": "ẵn", "ạnw": "ặn",
|
||||
"ăps": "ắp", "ăpj": "ặp",
|
||||
"ápw": "ắp", "ạpw": "ặp",
|
||||
"ăts": "ắt", "ătj": "ặt",
|
||||
"átw": "ắt", "ạtw": "ặt",
|
||||
"ăngs": "ắng", "ăngf": "ằng", "ăngr": "ẳng", "ăngx": "ẵng", "ăngj": "ặng",
|
||||
"ángw": "ắng", "àngw": "ằng", "ảngw": "ẳng", "ãngw":"ẵng", "ạngw": "ặng",
|
||||
|
||||
"ắcw": "ácw", "ắcs": "ăcs", "ăcsw": "acsw", "ácws": "acws",
|
||||
"ặcw": "ạcw", "ặcj": "ăcj", "ăcjw": "acjw", "ạcwj": "acwj",
|
||||
"ắms": "ăms", "ắmw": "ámw", "ămsw": "amsw", "ámws": "amws",
|
||||
"ằmf": "ămf", "ằmw": "àmw", "ămfw": "amfw", "àmwf": "amwf",
|
||||
"ẳmr": "ămr", "ẳmw": "ảmw", "ămrw": "amrw", "ảmwr": "amwr",
|
||||
"ẵmx": "ămx", "ẵmw": "ãmw", "ămxw": "amxw", "ãmwx": "amwx",
|
||||
"ặmj": "ămj", "ặmw": "ạmw", "ămjw": "amjw", "ạmwj": "amwj",
|
||||
"ắns": "ăns", "ắnw": "ánw", "ănsw": "answ", "ánws": "anws",
|
||||
"ằnf": "ănf", "ằnw": "ànw", "ănfw": "anfw", "ànwf": "anwf",
|
||||
"ẳnr": "ănr", "ẳnw": "ảnw", "ănrw": "anrw", "ảnwr": "anwr",
|
||||
"ẵnx": "ănx", "ẵnw": "ãnw", "ănxw": "anxw", "ãnwx": "anwx",
|
||||
"ặnj": "ănj", "ặnw": "ạnw", "ănjw": "anjw", "ạnwj": "anwj",
|
||||
"ắps": "ăps", "ắpw": "ápw", "ăpsw": "apsw", "ápws": "apws",
|
||||
"ặpj": "ăpj", "ặpw": "ạpw", "ăpjw": "apjw", "ạpwj": "apwj",
|
||||
"ắts": "ăts", "ắtw": "átw", "ătsw": "atws", "átws": "atws",
|
||||
"ặtj": "ătj", "ặtw": "ạtw", "ătjw": "atjw", "ạtwj": "atwj",
|
||||
"ắngs": "ăngs", "ắngw": "ángw", "ăngsw": "angsw", "ángws": "angws",
|
||||
"ằngf": "ăngf", "ằngw": "àngw", "ăngfw": "angfw", "àngwf": "angwf",
|
||||
"ẳngr": "ăngr", "ẳngw": "ảngw", "ăngrw": "angrw", "ảngwr": "angwr",
|
||||
"ẵngx": "ăngx", "ẵngw": "ãngw", "ăngxw": "angxw", "ãngwx": "angwx",
|
||||
"ặngj": "ăngj", "ặngw": "ạngw", "ăngjw": "angjw", "ạngwj": "angwj",
|
||||
|
||||
"âcs": "ấc", "âcj": "ậc",
|
||||
"áca": "ấc", "ạca": "ậc",
|
||||
"âms": "ấm", "âmf": "ầm", "âmr": "ẩm", "âmx": "ẫm", "âmj": "ậm",
|
||||
"áma": "ấm", "àma": "ầm", "ảma": "ẩm", "ãma": "ẫm", "ạma": "ậm",
|
||||
"âns": "ấn", "ânf": "ần", "ânr": "ẩn", "ânx": "ẫn", "ânj": "ận",
|
||||
"ána": "ấn", "àna": "ần", "ảna": "ẩn", "ãna": "ẫn", "ạna": "ận",
|
||||
"âps": "ấp", "âpj": "ập",
|
||||
"ápa": "ấp", "ạpa": "ập",
|
||||
"âts": "ất", "âtj": "ật",
|
||||
"áta": "ất", "ạta": "ật",
|
||||
"âus": "ấu", "âuf": "ầu", "âur": "ẩu", "âux": "ẫu", "âuj": "ậu",
|
||||
"áua": "ấu", "àua": "ầu", "ảua": "ẩu", "ãua": "ẫu", "ạua": "ậu",
|
||||
"âys": "ấy", "âyf": "ầy", "âyr": "ẩy", "âyx": "ẫy", "âyj": "ậy",
|
||||
"áya": "ấy", "àya": "ầy", "ảya": "ẩy", "ãya": "ẫy", "ạya": "ậy",
|
||||
"ângs": "ấng", "ângf": "ầng", "ângr": "ẩng", "ângx": "ẫng", "ângj": "ậng",
|
||||
"ánga": "ấng", "ànga": "ầng", "ảnga": "ẩng", "ãnga": "ẫng", "ạnga": "ậng",
|
||||
|
||||
"ấcs": "âcs", "ấca": "áca", "âcsa": "acsa", "ácas": "acas",
|
||||
"ậcj": "âcj", "ậca": "ạca", "âcja": "acja", "ạcaj": "acaj",
|
||||
"ấms": "âms", "ấma": "áma", "âmsa": "amsa", "ámas": "amas",
|
||||
"ầmf": "âmf", "ầma": "àma", "âmfa": "amfa", "àmaf": "amaf",
|
||||
"ẩmr": "âmr", "ẩma": "ảma", "âmra": "amra", "ảmar": "amar",
|
||||
"ẫmx": "âmx", "ẫma": "ãma", "âmxa": "amxa", "ãmax": "amax",
|
||||
"ậmj": "âmj", "ậma": "ạma", "âmja": "amja", "ạmaj": "amaj",
|
||||
"ấns": "âns", "ấna": "ána", "ânsa": "ansa", "ánas": "anas",
|
||||
"ầnf": "ânf", "ầna": "àna", "ânfa": "anfa", "ànaf": "anaf",
|
||||
"ẩnr": "ânr", "ẩna": "ảna", "ânra": "anra", "ảnar": "anar",
|
||||
"ẫnx": "ânx", "ẫna": "ãna", "ânxa": "anxa", "ãnax": "anax",
|
||||
"ậnj": "ânj", "ậna": "ạna", "ânja": "anja", "ạnaj": "anaj",
|
||||
"ấps": "âps", "ấpa": "ápa", "âpsa": "apsa", "ápas": "apas",
|
||||
"ậpj": "âpj", "ậpa": "ạpa", "âpja": "apja", "ạpaj": "apaj",
|
||||
"ấts": "âts", "ấta": "áta", "âtsa": "atas", "átas": "atas",
|
||||
"ậtj": "âtj", "ậta": "ạta", "âtja": "atja", "ạtaj": "ataj",
|
||||
"ấus": "âus", "ấua": "áua", "âusa": "ausa", "áuas": "auas",
|
||||
"ầuf": "âuf", "ầua": "àua", "âufa": "aufa", "àuaf": "auaf",
|
||||
"ẩur": "âur", "ẩua": "ảua", "âura": "aura", "ảuar": "auar",
|
||||
"ẫux": "âux", "ẫua": "ãua", "âuxa": "auxa", "ãuax": "auax",
|
||||
"ậuj": "âuj", "ậua": "ạua", "âuja": "auja", "ạuaj": "auaj",
|
||||
"ấys": "âys", "ấya": "áya", "âysa": "aysa", "áyas": "ayas",
|
||||
"ầyf": "âyf", "ầya": "àya", "âyfa": "ayfa", "àyaf": "ayaf",
|
||||
"ẩyr": "âyr", "ẩya": "ảya", "âyra": "ayra", "ảyar": "ayar",
|
||||
"ẫyx": "âyx", "ẫya": "ãya", "âyxa": "ayxa", "ãyax": "ayax",
|
||||
"ậyj": "âyj", "ậya": "ạya", "âyja": "ayja", "ạyaj": "ayaj",
|
||||
"ấngs": "ângs", "ấnga": "ánga", "ângsa": "angsa", "ángas": "angas",
|
||||
"ầngf": "ângf", "ầnga": "ànga", "ângfa": "angfa", "àngaf": "angaf",
|
||||
"ẩngr": "ângr", "ẩnga": "ảnga", "ângra": "angra", "ảngar": "angar",
|
||||
"ẫngx": "ângx", "ẫnga": "ãnga", "ângxa": "angxa", "ãngax": "angax",
|
||||
"ậngj": "ângj", "ậnga": "ạnga", "ângja": "angja", "ạngaj": "angaj",
|
||||
|
||||
"êcs": "ếc", "êcj": "ệc",
|
||||
"éce": "ếc", "ẹce": "ệc",
|
||||
"êms": "ếm", "êmf": "ềm", "êmr": "ểm", "êmx": "ễm", "êmj": "ệm",
|
||||
"éme": "ếm", "ème": "ềm", "ẻme": "ểm", "ẽme": "ễm", "ẹme": "ệm",
|
||||
"êns": "ến", "ênf": "ền", "ênr": "ển", "ênx": "ễn", "ênj": "ện",
|
||||
"éne": "ến", "ène": "ền", "ẻne": "ển", "ẽne": "ễn", "ẹne": "ện",
|
||||
"êps": "ếp", "êpj": "ệp",
|
||||
"épe": "ếp", "ẹpe": "ệp",
|
||||
"êts": "ết", "êtj": "ệt",
|
||||
"éte": "ết", "ẹte": "ệt",
|
||||
"êchs": "ếch", "êchj": "ệch",
|
||||
"echs": "éch", "echj": "ẹch",
|
||||
"éche": "ếch", "ẹche": "ệch",
|
||||
"ênhs": "ếnh", "ênhf": "ềnh", "ênhr": "ểnh", "ênhx": "ễnh", "ênhj": "ệnh",
|
||||
"énhe": "ếnh", "ènhe": "ềnh", "ẻnhe": "ểnh", "ẽnhe": "ễnh", "ẹnhe": "ệnh",
|
||||
|
||||
"ếms": "êms", "ếme": "éme", "êmse": "emse", "émes": "emes",
|
||||
"ềmf": "êmf", "ềme": "ème", "êmfe": "emfe", "èmef": "emef",
|
||||
"ểmr": "êmr", "ểme": "ẻme", "êmre": "emre", "ẻmer": "emer",
|
||||
"ễmx": "êmx", "ễme": "ẽme", "êmxe": "emxe", "ẽmex": "emex",
|
||||
"ệmj": "êmj", "ệme": "ẹme", "êmje": "emje", "ẹmej": "emej",
|
||||
"ếns": "êns", "ếne": "éne", "ênse": "ense", "énes": "enes",
|
||||
"ềnf": "ênf", "ềne": "ène", "ênfe": "enfe", "ènef": "enef",
|
||||
"ểnr": "ênr", "ểne": "ẻne", "ênre": "enre", "ẻner": "ener",
|
||||
"ễnx": "ênx", "ễne": "ẽne", "ênxe": "enxe", "ẽnex": "enex",
|
||||
"ệnj": "ênj", "ệne": "ẹne", "ênje": "enje", "ẹnej": "enej",
|
||||
"ếps": "êps", "ếpe": "épe", "êpse": "epse", "épes": "epes",
|
||||
"ệpj": "êpj", "ệpe": "ẹpe", "êpje": "epje", "ẹpej": "epej",
|
||||
"ếts": "êts", "ếte": "éte", "êtse": "etes", "étes": "etes",
|
||||
"ệtj": "êtj", "ệte": "ẹte", "êtje": "etje", "ẹtej": "etej",
|
||||
"ếchs": "êchs", "ếche": "éche", "êchse": "eches", "éches": "eches",
|
||||
"ệchj": "êchj", "ệche": "ẹche", "êchje": "echje", "ẹchej": "echej",
|
||||
"ếnhs": "ênhs", "ếnhe": "énhe", "ênhse": "enhse", "énhes": "enhes",
|
||||
"ềnhf": "ênhf", "ềnhe": "ènhe", "ênhfe": "enhfe", "ènhef": "enhef",
|
||||
"ểnhr": "ênhr", "ểnhe": "ẻnhe", "ênhre": "enhre", "ẻnher": "enher",
|
||||
"ễnhx": "ênhx", "ễnhe": "ẽnhe", "ênhxe": "enhxe", "ẽnhex": "enhex",
|
||||
"ệnhj": "ênhj", "ệnhe": "ẹnhe", "ênhje": "enhje", "ẹnhej": "enhej",
|
||||
|
||||
"ôcs": "ốc", "ôcj": "ộc",
|
||||
"óco": "ốc", "ọco": "ộc",
|
||||
"ôis": "ối", "ôif": "ồi", "ôir": "ổi", "ôix": "ỗi", "ôij": "ội",
|
||||
"óio": "ối", "òio": "ồi", "ỏio": "ổi", "õio": "ỗi", "ọio": "ội",
|
||||
"ôms": "ốm", "ômf": "ồm", "ômr": "ổm", "ômx": "ỗm", "ômj": "ộm",
|
||||
"ómo": "ốm", "òmo": "ồm", "ỏmo": "ổm", "õmo": "ỗm", "ọmo": "ộm",
|
||||
"ôns": "ốn", "ônf": "ồn", "ônr": "ổn", "ônx": "ỗn", "ônj": "ộn",
|
||||
"óno": "ốn", "òno": "ồn", "ỏno": "ổn", "õno": "ỗn", "ọno": "ộn",
|
||||
"ôps": "ốp", "ôpj": "ộp",
|
||||
"ópo": "ốp", "ọpo": "ộp",
|
||||
"ôts": "ốt", "ôtj": "ột",
|
||||
"óto": "ốt", "ọto": "ột",
|
||||
"ôngs": "ống", "ôngf": "ồng", "ôngr": "ổng", "ôngx": "ỗng", "ôngj": "ộng",
|
||||
"óngo": "ống", "òngo": "ồng", "ỏngo": "ổng", "õngo": "ỗng", "ọngo": "ộng",
|
||||
|
||||
"ốcs": "ôcs", "ốco": "óco", "ôcso": "ocso", "ócos": "ocos",
|
||||
"ộcj": "ôcj", "ộco": "ọco", "ôcjo": "ocjo", "ọcoj": "ocoj",
|
||||
"ốis": "ôis", "ốio": "óio", "ôiso": "oiso", "óios": "oios",
|
||||
"ồif": "ôif", "ồio": "òio", "ôifo": "oifo", "òiof": "oiof",
|
||||
"ổir": "ôir", "ổio": "ỏio", "ôiro": "oiro", "ỏior": "oior",
|
||||
"ỗix": "ôix", "ỗio": "õio", "ôixo": "oixo", "õiox": "oiox",
|
||||
"ộij": "ôij", "ộio": "ọio", "ôijo": "oijo", "ọioj": "oioj",
|
||||
"ốms": "ôms", "ốmo": "ómo", "ômso": "omso", "ómos": "omos",
|
||||
"ồmf": "ômf", "ồmo": "òmo", "ômfo": "omfo", "òmof": "omof",
|
||||
"ổmr": "ômr", "ổmo": "ỏmo", "ômro": "omro", "ỏmor": "omor",
|
||||
"ỗmx": "ômx", "ỗmo": "õmo", "ômxo": "omxo", "õmox": "omox",
|
||||
"ộmj": "ômj", "ộmo": "ọmo", "ômjo": "omjo", "ọmoj": "omoj",
|
||||
"ốns": "ôns", "ốno": "óno", "ônso": "onso", "ónos": "onos",
|
||||
"ồnf": "ônf", "ồno": "òno", "ônfo": "onfo", "ònof": "onof",
|
||||
"ổnr": "ônr", "ổno": "ỏno", "ônro": "onro", "ỏnor": "onor",
|
||||
"ỗnx": "ônx", "ỗno": "õno", "ônxo": "onxo", "õnox": "onox",
|
||||
"ộnj": "ônj", "ộno": "ọno", "ônjo": "onjo", "ọnoj": "onoj",
|
||||
"ốps": "ôps", "ốpo": "ópo", "ôpso": "opso", "ópos": "opos",
|
||||
"ộpj": "ôpj", "ộpo": "ọpo", "ôpjo": "opjo", "ọpoj": "opoj",
|
||||
"ốts": "ôts", "ốto": "óto", "ôtso": "otso", "ótos": "otos",
|
||||
"ộtj": "ôtj", "ộto": "ọto", "ôtjo": "otjo", "ọtoj": "otoj",
|
||||
"ốngs": "ôngs", "ốngo": "óngo", "ôngso": "ongso", "óngos": "ongos",
|
||||
"ồngf": "ôngf", "ồngo": "òngo", "ôngfo": "ongfo", "òngof": "ongof",
|
||||
"ổngr": "ôngr", "ổngo": "ỏngo", "ôngro": "ongro", "ỏngor": "ongor",
|
||||
"ỗngx": "ôngx", "ỗngo": "õngo", "ôngxo": "ongxo", "õngox": "ongox",
|
||||
"ộngj": "ôngj", "ộngo": "ọngo", "ôngjo": "ongjo", "ọngoj": "ongoj",
|
||||
|
||||
"ơis": "ới", "ơif": "ời", "ơir": "ởi", "ơix": "ỡi", "ơij": "ợi",
|
||||
"óiw": "ới", "òiw": "ời", "ỏiw": "ởi", "õiw": "ỡi", "ọiw": "ợi",
|
||||
"ơms": "ớm", "ơmf": "ờm", "ơmr": "ởm", "ơmx": "ỡm", "ơmj": "ợm",
|
||||
"ómw": "ớm", "òmw": "ờm", "ỏmw": "ởm", "õmw": "ỡm", "ọmw": "ợm",
|
||||
"ơns": "ớn", "ơnf": "ờn", "ơnr": "ởn", "ơnx": "ỡn", "ơnj": "ợn",
|
||||
"ónw": "ớn", "ònw": "ờn", "ỏnw": "ởn", "õnw": "ỡn", "ọnw": "ợn",
|
||||
"ơps": "ớp", "ơpj": "ợp",
|
||||
"ópw": "ớp", "ọpw": "ợp",
|
||||
"ơts": "ớt", "ơtj": "ợt",
|
||||
"ótw": "ớt", "ọtw": "ợt",
|
||||
|
||||
"ớis": "ơis", "ớiw": "óiw", "ơisw": "oisw", "óiws": "oiws",
|
||||
"ờif": "ơif", "ờiw": "òiw", "ơifw": "oifw", "òiwf": "oiwf",
|
||||
"ởir": "ơir", "ởiw": "ỏiw", "ơirw": "oirw", "ỏiwr": "oiwr",
|
||||
"ỡix": "ơix", "ỡiw": "õiw", "ơixw": "oixw", "õiwx": "oiwx",
|
||||
"ợij": "ơij", "ợiw": "ọiw", "ơijw": "oijw", "ọiwj": "oiwj",
|
||||
"ớms": "ơms", "ớmw": "ómw", "ơmsw": "omsw", "ómws": "omws",
|
||||
"ờmf": "ơmf", "ờmw": "òmw", "ơmfw": "omfw", "òmwf": "omwf",
|
||||
"ởmr": "ơmr", "ởmw": "ỏmw", "ơmrw": "omrw", "ỏmwr": "omwr",
|
||||
"ỡmx": "ơmx", "ỡmw": "õmw", "ơmxw": "omxw", "õmwx": "omwx",
|
||||
"ợmj": "ơmj", "ợmw": "ọmw", "ơmjw": "omjw", "ọmwj": "omwj",
|
||||
"ớns": "ơns", "ớnw": "ónw", "ơnsw": "onsw", "ónws": "onws",
|
||||
"ờnf": "ơnf", "ờnw": "ònw", "ơnfw": "onfw", "ònwf": "onwf",
|
||||
"ởnr": "ơnr", "ởnw": "ỏnw", "ơnrw": "onrw", "ỏnwr": "onwr",
|
||||
"ỡnx": "ơnx", "ỡnw": "õnw", "ơnxw": "onxw", "õnwx": "onwx",
|
||||
"ợnj": "ơnj", "ợnw": "ọnw", "ơnjw": "onjw", "ọnwj": "onwj",
|
||||
"ớps": "ơps", "ớpw": "ópw", "ơpsw": "opsw", "ópws": "opws",
|
||||
"ợpj": "ơpj", "ợpw": "ọpw", "ơpjw": "opjw", "ọpwj": "opwj",
|
||||
"ớts": "ơts", "ớtw": "ótw", "ơtsw": "otsw", "ótws": "otws",
|
||||
"ợtj": "ơtj", "ợtw": "ọtw", "ơtjw": "otjw", "ọtwj": "otwj",
|
||||
|
||||
"ưas": "ứa", "ưaf": "ừa", "ưar": "ửa", "ưax": "ữa", "ưaj": "ựa",
|
||||
"úaw": "ứa", "ùaw": "ừa", "ủaw": "ửa", "ũaw": "ữa", "ụaw": "ựa",
|
||||
"ưcs": "ức", "ưcj": "ực",
|
||||
"úcw": "ức", "ụcw": "ực",
|
||||
"ưis": "ứi", "ưif": "ừi", "ưir": "ửi", "ưix": "ữi", "ưij": "ựi",
|
||||
"úiw": "ứi", "ùiw": "ừi", "ủiw": "ửi", "ũiw": "ữi", "ụiw": "ựi",
|
||||
"ưms": "ứm", "ưmf": "ừm", "ưmr": "ửm", "ưmx": "ữm", "ưmj": "ựm",
|
||||
"úmw": "ứm", "ùmw": "ừm", "ủmw": "ửm", "ũmw": "ữm", "ụmw": "ựm",
|
||||
"ưns": "ứn", "ưnf": "ừn", "ưnr": "ửn", "ưnx": "ữn", "ưnj": "ựn",
|
||||
"únw": "ứn", "ùnw": "ừn", "ủnw": "ửn", "ũnw": "ữn", "ụnw": "ựn",
|
||||
"ưts": "ứt", "ưtj": "ựt",
|
||||
"útw": "ứt", "ụtw": "ựt",
|
||||
"ưus": "ứu", "ưuf": "ừu", "ưur": "ửu", "ưux": "ữu", "ưuj": "ựu",
|
||||
"úuw": "ứu", "ùuw": "ừu", "ủuw": "ửu", "ũuw": "ữu", "ụuw": "ựu",
|
||||
"ưngs": "ứng", "ưngf": "ừng", "ưngr": "ửng", "ưngx": "ững", "ưngj": "ựng",
|
||||
"úngw": "ứng", "ùngw": "ừng", "ủngw": "ửng", "ũngw": "ững", "ụngw": "ựng",
|
||||
|
||||
"ứas": "ưas", "ứaw": "úaw", "ưasw": "uasw", "úaws": "uaws",
|
||||
"ừaf": "ưaf", "ừaw": "ùaw", "ưafw": "uafw", "ùawf": "uawf",
|
||||
"ửar": "ưar", "ửaw": "ủaw", "ưarw": "uarw", "ủawr": "uawr",
|
||||
"ữax": "ưax", "ữaw": "ũaw", "ưaxw": "uaxw", "ũawx": "uawx",
|
||||
"ựaj": "ưaj", "ựaw": "ụaw", "ưajw": "uajw", "ụawj": "uawj",
|
||||
"ứcs": "ưcs", "ứcw": "úcw", "ưcsw": "ucsw", "úcws": "ucws",
|
||||
"ựcj": "ưcj", "ựcw": "ụcw", "ưcjw": "ucjw", "ụcwj": "ucwj",
|
||||
"ứis": "ưis", "ứiw": "úiw", "ưisw": "uisw", "úiws": "uiws",
|
||||
"ừif": "ưif", "ừiw": "ùiw", "ưifw": "uifw", "ùiwf": "uiwf",
|
||||
"ửir": "ưir", "ửiw": "ủiw", "ưirw": "uirw", "ủiwr": "uiwr",
|
||||
"ữix": "ưix", "ữiw": "ũiw", "ưixw": "uixw", "ũiwx": "uiwx",
|
||||
"ựij": "ưij", "ựiw": "ụiw", "ưijw": "uijw", "ụiwj": "uiwj",
|
||||
"ứms": "ưms", "ứmw": "úmw", "ưmsw": "umsw", "úmws": "umws",
|
||||
"ừmf": "ưmf", "ừmw": "ùmw", "ưmfw": "umfw", "ùmwf": "umwf",
|
||||
"ửmr": "ưmr", "ửmw": "ủmw", "ưmrw": "umrw", "ủmwr": "umwr",
|
||||
"ữmx": "ưmx", "ữmw": "ũmw", "ưmxw": "umxw", "ũmwx": "umwx",
|
||||
"ựmj": "ưmj", "ựmw": "ụmw", "ưmjw": "umjw", "ụmwj": "umwj",
|
||||
"ứns": "ưns", "ứnw": "únw", "ưnsw": "unsw", "únws": "unws",
|
||||
"ừnf": "ưnf", "ừnw": "ùnw", "ưnfw": "unfw", "ùnwf": "unwf",
|
||||
"ửnr": "ưnr", "ửnw": "ủnw", "ưnrw": "unrw", "ủnwr": "unwr",
|
||||
"ữnx": "ưnx", "ữnw": "ũnw", "ưnxw": "unxw", "ũnwx": "unwx",
|
||||
"ựnj": "ưnj", "ựnw": "ụnw", "ưnjw": "unjw", "ụnwj": "unwj",
|
||||
"ứts": "ưts", "ứtw": "útw", "ưtsw": "utsw", "útws": "utws",
|
||||
"ựtj": "ưtj", "ựtw": "ụtw", "ưtjw": "utjw", "ụtwj": "utwj",
|
||||
"ứus": "ưus", "ứuw": "úuw", "ưusw": "uusw", "úuws": "uuws",
|
||||
"ừuf": "ưuf", "ừuw": "ùuw", "ưufw": "uufw", "ùuwf": "uuwf",
|
||||
"ửur": "ưur", "ửuw": "ủuw", "ưurw": "uurw", "ủuwr": "uuwr",
|
||||
"ữux": "ưux", "ữuw": "ũuw", "ưuxw": "uuxw", "ũuwx": "uuwx",
|
||||
"ựuj": "ưuj", "ựuw": "ụuw", "ưujw": "uujw", "ụuwj": "uuwj",
|
||||
"ứngs": "ưngs", "ứngw": "úngw", "ưngsw": "ungsw", "úngws": "ungws",
|
||||
"ừngf": "ưngf", "ừngw": "ùngw", "ưngfw": "ungfw", "ùngwf": "ungwf",
|
||||
"ửngr": "ưngr", "ửngw": "ủngw", "ưngrw": "ungrw", "ủngwr": "ungwr",
|
||||
"ữngx": "ưngx", "ữngw": "ũngw", "ưngxw": "ungxw", "ũngwx": "ungwx",
|
||||
"ựngj": "ưngj", "ựngw": "ụngw", "ưngjw": "ungjw", "ụngwj": "ungwj",
|
||||
|
||||
"iems": "iém", "iemf": "ièm", "iemr": "iẻm", "iemx": "iẽm", "iemj": "iẹm",
|
||||
"iéme": "iếm", "ième": "iềm", "iẻme": "iểm", "iẽme": "iễm", "iẹme": "iệm",
|
||||
"iêms": "iếm", "iêmf": "iềm", "iêmr": "iểm", "iêmx": "iễm", "iêmj": "iệm",
|
||||
"iens": "ién", "ienf": "ièn", "ienr": "iẻn", "ienx": "iẽn", "ienj": "iẹn",
|
||||
"iéne": "iến", "iène": "iền", "iẻne": "iển", "iẽne": "iễn", "iẹne": "iện",
|
||||
"iêns": "iến", "iênf": "iền", "iênr": "iển", "iênx": "iễn", "iênj": "iện",
|
||||
"ieps": "iép", "iepj": "iẹp",
|
||||
"iépe": "iếp", "iẹpe": "iệp",
|
||||
"iêps": "iếp", "iêpj": "iệp",
|
||||
"iets": "iét", "ietj": "iẹt",
|
||||
"iéte": "iết", "iẹte": "iệt",
|
||||
"iêts": "iết", "iêtj": "iệt",
|
||||
"ieus": "iéu", "ieuf": "ièu", "ieur": "iẻu", "ieux": "iẽu", "ieuj": "iẹu",
|
||||
"iéue": "iếu", "ièue": "iều", "iẻue": "iểu", "iẽue": "iễu", "iẹue": "iệu",
|
||||
"iêus": "iếu", "iêuf": "iều", "iêur": "iểu", "iêux": "iễu", "iêuj": "iệu",
|
||||
"iengs": "iéng", "iengf": "ièng", "iengr": "iẻng", "iengx": "iẽng", "iengj": "iẹng",
|
||||
"iénge": "iếng", "iènge": "iềng", "iẻnge": "iểng", "iẽnge": "iễng", "iẹnge": "iệng",
|
||||
"iêngs": "iếng", "iêngf": "iềng", "iêngr": "iểng", "iêngx": "iễng", "iêngj": "iệng",
|
||||
|
||||
"iếs": "iês", "iếe": "iée", "iêse": "iese", "iées": "iees",
|
||||
"iềf": "iêf", "iềe": "ièe", "iêfe": "iefe", "ièef": "ieef",
|
||||
"iểr": "iêr", "iểe": "iẻe", "iêre": "iere", "iẻer": "ieer",
|
||||
"iễx": "iêx", "iễe": "iẽe", "iêxe": "iexe", "iẽex": "ieex",
|
||||
"iệj": "iêj", "iệe": "iẹe", "iêje": "ieje", "iẹej": "ieej",
|
||||
"iếms": "iêms", "iếme": "iéme", "iêmse": "iemse", "iémes": "iemes",
|
||||
"iềmf": "iêmf", "iềme": "ième", "iêmfe": "iemfe", "ièmef": "iemef",
|
||||
"iểmr": "iêmr", "iểme": "iẻme", "iêmre": "iemre", "iẻmer": "iemer",
|
||||
"iễmx": "iêmx", "iễme": "iẽme", "iêmxe": "iemxe", "iẽmex": "iemex",
|
||||
"iệmj": "iêmj", "iệme": "iẹme", "iêmje": "iemje", "iẹmej": "iemej",
|
||||
"iếns": "iêns", "iếne": "iéne", "iênse": "iense", "iénes": "ienes",
|
||||
"iềnf": "iênf", "iềne": "iène", "iênfe": "ienfe", "iènef": "ienef",
|
||||
"iểnr": "iênr", "iểne": "iẻne", "iênre": "ienre", "iẻner": "iener",
|
||||
"iễnx": "iênx", "iễne": "iẽne", "iênxe": "ienxe", "iẽnex": "ienex",
|
||||
"iệnj": "iênj", "iệne": "iẹne", "iênje": "ienje", "iẹnej": "ienej",
|
||||
"iếps": "iêps", "iếpe": "iépe", "iêpse": "iepse", "iépes": "iepes",
|
||||
"iệpj": "iêpj", "iệpe": "iẹpe", "iêpje": "iepje", "iẹpej": "iepej",
|
||||
"iếts": "iêts", "iếte": "iéte", "iêtse": "ietse", "iétes": "ietes",
|
||||
"iệtj": "iêtj", "iệte": "iẹte", "iêtje": "ietje", "iẹtej": "ietej",
|
||||
"iếus": "iêus", "iếue": "iéue", "iêuse": "ieuse", "iéues": "ieues",
|
||||
"iềuf": "iêuf", "iềue": "ièue", "iêufe": "ieufe", "ièuef": "ieuef",
|
||||
"iểur": "iêur", "iểue": "iẻue", "iêure": "ieure", "iẻuer": "ieuer",
|
||||
"iễux": "iêux", "iễue": "iẽue", "iêuxe": "ieuxe", "iẽuex": "ieuex",
|
||||
"iệuj": "iêuj", "iệue": "iẹue", "iêuje": "ieuje", "iẹuej": "ieuej",
|
||||
"iếngs": "iêngs", "iếnge": "iénge", "iêngse": "iengse", "iénges": "ienges",
|
||||
"iềngf": "iêngf", "iềnge": "iènge", "iêngfe": "iengfe", "ièngef": "iengef",
|
||||
"iểngr": "iêngr", "iểnge": "iẻnge", "iêngre": "iengre", "iẻnger": "ienger",
|
||||
"iễngx": "iêngx", "iễnge": "iẽnge", "iêngxe": "iengxe", "iẽngex": "iengex",
|
||||
"iệngj": "iêngj", "iệnge": "iẹnge", "iêngje": "iengje", "iẹngej": "iengej",
|
||||
|
||||
"uyens": "uyén", "uyenf": "uyèn", "uyenr": "uyẻn", "uyenx": "uyẽn", "uyenj": "uyẹn",
|
||||
"uyéne": "uyến", "uyène": "uyền", "uyẻne": "uyển", "uyẽne": "uyễn", "uyẹne": "uyện",
|
||||
"uyêns": "uyến", "uyênf": "uyền", "uyênr": "uyển", "uyênx": "uyễn", "uyênj": "uyện",
|
||||
"uyets": "uyét", "uyetf": "uyèt", "uyetr": "uyẻt", "uyetx": "uyẽt", "uyetj": "uyẹt",
|
||||
"uyéte": "uyết", "uyète": "uyềt", "uyẻte": "uyểt", "uyẽte": "uyễt", "uyẹte": "uyệt",
|
||||
"uyêts": "uyết", "uyêtf": "uyềt", "uyêtr": "uyểt", "uyêtx": "uyễt", "uyêtj": "uyệt",
|
||||
|
||||
"uyếns": "uyêns", "uyếne": "uyéne", "uyênse": "uyense", "uyénes": "uyenes",
|
||||
"uyềnf": "uyênf", "uyềne": "uyène", "uyênfe": "uyenfe", "uyènef": "uyenef",
|
||||
"uyểnr": "uyênr", "uyểne": "uyẻne", "uyênre": "uyenre", "uyẻner": "uyener",
|
||||
"uyễnx": "uyênx", "uyễne": "uyẽne", "uyênxe": "uyenxe", "uyẽnex": "uyenex",
|
||||
"uyệnj": "uyênj", "uyệne": "uyẹne", "uyênje": "uyenje", "uyẹnej": "uyenej",
|
||||
"uyếts": "uyêts", "uyếte": "uyéte", "uyêtse": "uyetse", "uyétes": "uyetes",
|
||||
"uyềtf": "uyêtf", "uyềte": "uyète", "uyêtfe": "uyetfe", "uyètef": "uyetef",
|
||||
"uyểtr": "uyêtr", "uyểte": "uyẻte", "uyêtre": "uyetre", "uyẻter": "uyeter",
|
||||
"uyễtx": "uyêtx", "uyễte": "uyẽte", "uyêtxe": "uyetxe", "uyẽtex": "uyetex",
|
||||
"uyệtj": "uyêtj", "uyệte": "uyẹte", "uyêtje": "uyetje", "uyẹtej": "uyetej",
|
||||
|
||||
"uyts": "uýt", "uytj": "uỵt",
|
||||
"uynhs": "uýnh", "uynhf": "uỳnh", "uynhr": "uỷnh", "uynhx": "uỹnh", "uynhj": "uỵnh",
|
||||
|
||||
"uýts": "uyts", "uỵtj": "uytj",
|
||||
"uýnhs": "uynhs", "uỳnhf": "uynhf", "uỷnhr": "uynhr", "uỹnh": "uynhx", "uỵnhj": "uynhj",
|
||||
|
||||
"uits": "uít", "uitj": "uịt",
|
||||
|
||||
"uíts": "uits", "uịtj": "uitj",
|
||||
|
||||
"uos": "úo", "uof": "ùo", "uor": "ủo", "uox": "ũo", "uoj": "ụo",
|
||||
"úoc": "uóc", "ụoc": "uọc",
|
||||
"uocs": "uóc", "uocj": "uọc",
|
||||
"uócw": "ước", "uọcw": "ược",
|
||||
"ươcs": "ước", "ươcj": "ược",
|
||||
"úoi": "uói", "ùoi" : "uòi", "ủoi": "uỏi", "ũoi": "uõi", "ụoi": "uọi",
|
||||
"uois": "uói", "uoif": "uòi", "uoir": "uỏi", "uoix": "uõi", "uoij": "uọi",
|
||||
"uóiw": "ưới", "uòiw": "ười", "uỏiw": "ưởi", "uõiw": "ưỡi", "uọiw": "ượi",
|
||||
"ươis": "ưới", "ươif": "ười", "ươir": "ưởi", "ươix": "ưỡi", "ươij": "ượi",
|
||||
"úom": "uóm", "ùom" : "uòm", "ủom": "uỏm", "ũom": "uõm", "ụom": "uọm",
|
||||
"uoms": "uóm", "uomf": "uòm", "uomr": "uỏm", "uomx": "uõm", "uomj": "uọm",
|
||||
"uómw": "ướm", "uòmw": "ườm", "uỏmw": "ưởm", "uõmw": "ưỡm", "uọmw": "ượm",
|
||||
"ươms": "ướm", "ươmf": "ườm", "ươmr": "ưởm", "ươmx": "ưỡm", "ươmj": "ượm",
|
||||
"úon": "uón", "ùon" : "uòn", "ủon": "uỏn", "ũon": "uõn", "ụon": "uọn",
|
||||
"uons": "uón", "uonf": "uòn", "uonr": "uỏn", "uonx": "uõn", "uonj": "uọn",
|
||||
"uónw": "ướn", "uònw": "ườn", "uỏnw": "ưởn", "uõnw": "ưỡn", "uọnw": "ượn",
|
||||
"ươns": "ướn", "ươnf": "ườn", "ươnr": "ưởn", "ươnx": "ưỡn", "ươnj": "ượn",
|
||||
"úop": "uóp", "ụop": "uọp",
|
||||
"uops": "uóp", "uopj": "uọp",
|
||||
"uópw": "ướp", "uọpw": "ượp",
|
||||
"ươps": "ướp", "ươpj": "ượp",
|
||||
"úot": "uót", "ụot": "uọt",
|
||||
"uots": "uót", "uotj": "uọt",
|
||||
"uótw": "ướt", "uọtw": "ượt",
|
||||
"ươts": "ướt", "ươtj": "ượt",
|
||||
"úou": "uóu", "ùou" : "uòu", "ủou": "uỏu", "ũou": "uõu", "ụou": "uọu",
|
||||
"uous": "uóu", "uouf": "uòu", "uour": "uỏu", "uoux": "uõu", "uouj": "uọu",
|
||||
"uóuw": "ướu", "uòuw": "ườu", "uỏuw": "ưởu", "uõuw": "ưỡu", "uọuw": "ượu",
|
||||
"ươus": "ướu", "ươuf": "ườu", "ươur": "ưởu", "ươux": "ưỡu", "ươuj": "ượu",
|
||||
"úong": "uóng", "ùong" : "uòng", "ủong": "uỏng", "ũong": "uõng", "ụong": "uọng",
|
||||
"uongs": "uóng", "uongf": "uòng", "uongr": "uỏng", "uongx": "uõng", "uongj": "uọng",
|
||||
"uóngw": "ướng", "uòngw": "ường", "uỏngw": "ưởng", "uõngw": "ưỡng", "uọngw": "ượng",
|
||||
"ươngs": "ướng", "ươngf": "ường", "ươngr": "ưởng", "ươngx": "ưỡng", "ươngj": "ượng",
|
||||
|
||||
"úos": "uos", "ùof": "uof", "ủor": "uor", "ũo": "uox", "ụoj": "uoj",
|
||||
"uócs": "uocs", "uọcj": "uocj",
|
||||
"ướcs": "ươcs", "ướcw": "uócw", "ươcsw": "uocsw", "uócws": "uocws",
|
||||
"ượcj": "ươcj", "ượcw": "uọcw", "ươcjw": "uocjw", "uọcwj": "uocwj",
|
||||
"uóis": "uois", "uòif": "uoif", "uỏir": "uoir", "uõix": "uoix", "uọij": "uoij",
|
||||
"ướis": "ươis", "ướiw": "uóiw", "ươisw": "uoisw", "uóiws": "uoiws",
|
||||
"ườif": "ươif", "ườiw": "uòiw", "ươifw": "uoifw", "uòiwf": "uoiwf",
|
||||
"ưởir": "ươir", "ưởiw": "uỏiw", "ươirw": "uoirw", "uỏiwr": "uoiwr",
|
||||
"ưỡix": "ươix", "ưỡiw": "uõiw", "ươixw": "uoixw", "uõiwx": "uoiwx",
|
||||
"ượij": "ươij", "ượiw": "uóiw", "ươijw": "uoijw", "uọiwj": "uoiwj",
|
||||
"uóms": "uoms", "uòmf": "uomf", "uỏmr": "uomr", "uõmx": "uomx", "uọmj": "uomj",
|
||||
"ướms": "ươms", "ướmw": "uómw", "ươmsw": "uomsw", "uómws": "uomws",
|
||||
"ườmf": "ươmf", "ườmw": "uòmw", "ươmfw": "uomfw", "uòmwf": "uomwf",
|
||||
"ưởmr": "ươmr", "ưởmw": "uỏmw", "ươmrw": "uomrw", "uỏmwr": "uomwr",
|
||||
"ưỡmx": "ươmx", "ưỡmw": "uõmw", "ươmxw": "uomxw", "uõmwx": "uomwx",
|
||||
"ượmj": "ươmj", "ượmw": "uómw", "ươmjw": "uomjw", "uọmwj": "uomwj",
|
||||
"uóns": "uons", "uònf": "uonf", "uỏnr": "uonr", "uõnx": "uonx", "uọnj": "uonj",
|
||||
"ướns": "ươns", "ướnw": "uónw", "ươnsw": "uonsw", "uónws": "uonws",
|
||||
"ườnf": "ươnf", "ườnw": "uònw", "ươnfw": "uonfw", "uònwf": "uonwf",
|
||||
"ưởnr": "ươnr", "ưởnw": "uỏnw", "ươnrw": "uonrw", "uỏnwr": "uonwr",
|
||||
"ưỡnx": "ươnx", "ưỡnw": "uõnw", "ươnxw": "uonxw", "uõnwx": "uonwx",
|
||||
"ượnj": "ươnj", "ượnw": "uónw", "ươnjw": "uonjw", "uọnwj": "uonwj",
|
||||
"uóps": "uops", "uọpj": "uopj",
|
||||
"ướps": "ươps", "ướpw": "uópw", "ươpsw": "uopsw", "uópws": "uopws",
|
||||
"ượpj": "ươpj", "ượpw": "uọpw", "ươpjw": "uopjw", "uọpwj": "uopwj",
|
||||
"uóts": "uots", "uọtj": "uotj",
|
||||
"ướts": "ươts", "ướtw": "uótw", "ươtsw": "uotsw", "uótws": "uotws",
|
||||
"ượtj": "ươtj", "ượtw": "uọtw", "ươtjw": "uotjw", "uọtwj": "uotwj",
|
||||
"uóus": "uous", "uòuf": "uouf", "uỏur": "uour", "uõux": "uoux", "uọuj": "uouj",
|
||||
"ướus": "ươus", "ướuw": "uóuw", "ươusw": "uousw", "uóuws": "uouws",
|
||||
"ườuf": "ươuf", "ườuw": "uòuw", "ươufw": "uoufw", "uòuwf": "uouwf",
|
||||
"ưởur": "ươur", "ưởuw": "uỏuw", "ươurw": "uourw", "uỏuwr": "uouwr",
|
||||
"ưỡux": "ươux", "ưỡuw": "uõuw", "ươuxw": "uouxw", "uõuwx": "uouwx",
|
||||
"ượuj": "ươuj", "ượuw": "uóuw", "ươujw": "uoujw", "uọuwj": "uouwj",
|
||||
"uóngs": "uongs", "uòngf": "uongf", "uỏngr": "uongr", "uõngx": "uongx", "uọngj": "uongj",
|
||||
"ướngs": "ươngs", "ướngw": "uóngw", "ươngsw": "uongsw", "uóngws": "uongws",
|
||||
"ườngf": "ươngf", "ườngw": "uòngw", "ươngfw": "uongfw", "uòngwf": "uongwf",
|
||||
"ưởngr": "ươngr", "ưởngw": "uỏngw", "ươngrw": "uongrw", "uỏngwr": "uongwr",
|
||||
"ưỡngx": "ươngx", "ưỡngw": "uõngw", "ươngxw": "uongxw", "uõngwx": "uongwx",
|
||||
"ượngj": "ươngj", "ượngw": "uóngw", "ươngjw": "uongjw", "uọngwj": "uongwj",
|
||||
|
||||
"uóco": "uốc", "uọco": "uộc",
|
||||
"uôcs": "uốc", "uôcj": "uộc",
|
||||
"uóio": "uối", "uòio": "uồi", "uỏio": "uổi", "uõio": "uỗi", "uọio": "uội",
|
||||
"uôis": "uối", "uôif": "uồi", "uôir": "uổi", "uôix": "uỗi", "uôij": "uội",
|
||||
"uómo": "uốm", "uòmo": "uồm", "uỏmo": "uổm", "uõmo": "uỗm", "uọmo": "uộm",
|
||||
"uôms": "uốm", "uômf": "uồm", "uômr": "uổm", "uômx": "uỗm", "uômj": "uộm",
|
||||
"uóno": "uốn", "uòno": "uồn", "uỏno": "uổn", "uõno": "uỗn", "uọno": "uộn",
|
||||
"uôns": "uốn", "uônf": "uồn", "uônr": "uổn", "uônx": "uỗn", "uônj": "uộn",
|
||||
"uópo": "uốp", "uọpo": "uộp",
|
||||
"uôps": "uốp", "uôpj": "uộp",
|
||||
"uóto": "uốt", "uọto": "uột",
|
||||
"uôts": "uốt", "uôtj": "uột",
|
||||
"uóuo": "uốu", "uòuo": "uồu", "uỏuo": "uổu", "uõuo": "uỗu", "uọuo": "uộu",
|
||||
"uôus": "uốu", "uôuf": "uồu", "uôur": "uổu", "uôux": "uỗu", "uôuj": "uộu",
|
||||
"uóngo": "uống", "uòngo": "uồng", "uỏngo": "uổng", "uõngo": "uỗng", "uọngo": "uộng",
|
||||
"uôngs": "uống", "uôngf": "uồng", "uôngr": "uổng", "uôngx": "uỗng", "uôngj": "uộng",
|
||||
|
||||
"uốcs": "uôcs", "uốco": "uóco", "uôcso": "uocso", "uócos": "uocos",
|
||||
"uộcj": "uôcj", "uộco": "uọco", "uôcjo": "uocjo", "uọcoj": "uocoj",
|
||||
"uốis": "uôis", "uốio": "uóio", "uôiso": "uoiso", "uóios": "uoios",
|
||||
"uồif": "uôif", "uồio": "uòio", "uôifo": "uoifo", "uòiof": "uoiof",
|
||||
"uổir": "uôir", "uổio": "uỏio", "uôiro": "uoiro", "uỏior": "uoior",
|
||||
"uỗix": "uôix", "uỗio": "uõio", "uôixo": "uoixo", "uõiox": "uoiox",
|
||||
"uộij": "uôij", "uộio": "uóio", "uôijo": "uoijo", "uọioj": "uoioj",
|
||||
"uốms": "uôms", "uốmo": "uómo", "uômso": "uomso", "uómos": "uomos",
|
||||
"uồmf": "uômf", "uồmo": "uòmo", "uômfo": "uomfo", "uòmof": "uomof",
|
||||
"uổmr": "uômr", "uổmo": "uỏmo", "uômro": "uomro", "uỏmor": "uomor",
|
||||
"uỗmx": "uômx", "uỗmo": "uõmo", "uômxo": "uomxo", "uõmox": "uomox",
|
||||
"uộmj": "uômj", "uộmo": "uómo", "uômjo": "uomjo", "uọmoj": "uomoj",
|
||||
"uốns": "uôns", "uốno": "uóno", "uônso": "uonso", "uónos": "uonos",
|
||||
"uồnf": "uônf", "uồno": "uòno", "uônfo": "uonfo", "uònof": "uonof",
|
||||
"uổnr": "uônr", "uổno": "uỏno", "uônro": "uonro", "uỏnor": "uonor",
|
||||
"uỗnx": "uônx", "uỗno": "uõno", "uônxo": "uonxo", "uõnox": "uonox",
|
||||
"uộnj": "uônj", "uộno": "uóno", "uônjo": "uonjo", "uọnoj": "uonoj",
|
||||
"uốps": "uôps", "uốpo": "uópo", "uôpso": "uopso", "uópos": "uopos",
|
||||
"uộpj": "uôpj", "uộpo": "uọpo", "uôpjo": "uopjo", "uọpoj": "uopoj",
|
||||
"uốts": "uôts", "uốto": "uóto", "uôtso": "uotso", "uótos": "uotos",
|
||||
"uộtj": "uôtj", "uộto": "uọto", "uôtjo": "uotjo", "uọtoj": "uotoj",
|
||||
"uốus": "uôus", "uốuo": "uóuo", "uôuso": "uouso", "uóuos": "uouos",
|
||||
"uồuf": "uôuf", "uồuo": "uòuo", "uôufo": "uoufo", "uòuof": "uouof",
|
||||
"uổur": "uôur", "uổuo": "uỏuo", "uôuro": "uouro", "uỏuor": "uouor",
|
||||
"uỗux": "uôux", "uỗuo": "uõuo", "uôuxo": "uouxo", "uõuox": "uouox",
|
||||
"uộuj": "uôuj", "uộuo": "uóuo", "uôujo": "uoujo", "uọuoj": "uouoj",
|
||||
"uốngs": "uôngs", "uốngo": "uóngo", "uôngso": "uongso", "uóngos": "uongos",
|
||||
"uồngf": "uôngf", "uồngo": "uòngo", "uôngfo": "uongfo", "uòngof": "uongof",
|
||||
"uổngr": "uôngr", "uổngo": "uỏngo", "uôngro": "uongro", "uỏngor": "uongor",
|
||||
"uỗngx": "uôngx", "uỗngo": "uõngo", "uôngxo": "uongxo", "uõngox": "uongox",
|
||||
"uộngj": "uôngj", "uộngo": "uóngo", "uôngjo": "uongjo", "uọngoj": "uongoj",
|
||||
|
||||
"yes": "ýe", "yef": "ỳe", "yer": "ỷe", "yex": "ỹe", "yej": "ỵe",
|
||||
"ýem": "yém", "ỳem": "yèm", "ỷem": "yẻm", "ỹem": "yẽm", "ỵem": "yẹm",
|
||||
"yems": "yém", "yemf": "yèm", "yemr": "yẻm", "yemx": "yẽm", "yemj": "yẹm",
|
||||
"yêms": "yếm", "yêmf": "yềm", "yêmr": "yểm", "yêmx": "yễm", "yêmj": "yệm",
|
||||
"yéme": "yếm", "yème": "yềm", "yẻme": "yểm", "yẽme": "yễm", "yẹme": "yệm",
|
||||
"ýen": "yén", "ỳen": "yèn", "ỷen": "yẻn", "ỹen": "yẽn", "ỵen": "yẹn",
|
||||
"yens": "yén", "yenf": "yèn", "yenr": "yẻn", "yenx": "yẽn", "yenj": "yẹn",
|
||||
"yêns": "yến", "yênf": "yền", "yênr": "yển", "yênx": "yễn", "yênj": "yện",
|
||||
"yéne": "yến", "yène": "yền", "yẻne": "yển", "yẽne": "yễn", "yẹne": "yện",
|
||||
"ýet": "yét", "ỵet": "yẹt",
|
||||
"yets": "yét", "yetj": "yẹt",
|
||||
"yêts": "yết", "yêtj": "yệt",
|
||||
"yéte": "yết", "yẹte": "yệt",
|
||||
"ýeu": "yéu", "ỳeu": "yèu", "ỷeu": "yẻu", "ỹeu": "yẽu", "ỵeu": "yẹu",
|
||||
"yeus": "yéu", "yeuf": "yèu", "yeur": "yẻu", "yeux": "yẽu", "yeuj": "yẹu",
|
||||
"yêus": "yếu", "yêuf": "yều", "yêur": "yểu", "yêux": "yễu", "yêuj": "yệu",
|
||||
"yéue": "yếu", "yèue": "yều", "yẻue": "yểu", "yẽue": "yễu", "yẹue": "yệu",
|
||||
"ýeng": "yéng", "ỳeng": "yèng", "ỷeng": "yẻng", "ỹeng": "yẽng", "ỵeng": "yẹng",
|
||||
"yengs": "yéng", "yengf": "yèng", "yengr": "yẻng", "yengx": "yẽng", "yengj": "yẹng",
|
||||
"yêngs": "yếng", "yêngf": "yềng", "yêngr": "yểng", "yêngx": "yễng", "yêngj": "yệng",
|
||||
"yénge": "yếng", "yènge": "yềng", "yẻnge": "yểng", "yẽnge": "yễng", "yẹnge": "yệng",
|
||||
|
||||
"ýes": "yes", "ỳef": "yef", "ỷer": "yer", "ỹex": "yex", "ỵej": "yej",
|
||||
"yếms": "yêms", "yếme": "yéme", "yêmse": "yemse", "yémes": "yemes",
|
||||
"yềmf": "yêmf", "yềme": "yème", "yêmfe": "yemfe", "yèmef": "yemef",
|
||||
"yểmr": "yêmr", "yểme": "yẻme", "yêmre": "yemre", "yẻmer": "yemer",
|
||||
"yễmx": "yêmx", "yễme": "yẽme", "yêmxe": "yemxe", "yẽmex": "yemex",
|
||||
"yệmj": "yêmj", "yệme": "yẹme", "yêmje": "yemje", "yẹmej": "yemej",
|
||||
"yếns": "yêns", "yếne": "yéne", "yênse": "yense", "yénes": "yenes",
|
||||
"yềnf": "yênf", "yềne": "yène", "yênfe": "yenfe", "yènef": "yenef",
|
||||
"yểnr": "yênr", "yểne": "yẻne", "yênre": "yenre", "yẻner": "yener",
|
||||
"yễnx": "yênx", "yễne": "yẽne", "yênxe": "yenxe", "yẽnex": "yenex",
|
||||
"yệnj": "yênj", "yệne": "yẹne", "yênje": "yenje", "yẹnej": "yenej",
|
||||
"yếts": "yêts", "yếte": "yéte", "yêtse": "yetse", "yétes": "yetes",
|
||||
"yệtj": "yêtj", "yệte": "yẹte", "yêtje": "yetje", "yẹtej": "yetej",
|
||||
"yếus": "yêus", "yếue": "yéue", "yêuse": "yeuse", "yéues": "yeues",
|
||||
"yềuf": "yêuf", "yềue": "yèue", "yêufe": "yeufe", "yèuef": "yeuef",
|
||||
"yểur": "yêur", "yểue": "yẻue", "yêure": "yeure", "yẻuer": "yeuer",
|
||||
"yễux": "yêux", "yễue": "yẽue", "yêuxe": "yeuxe", "yẽuex": "yeuex",
|
||||
"yệuj": "yêuj", "yệue": "yẹue", "yêuje": "yeuje", "yẹuej": "yeuej",
|
||||
"yếngs": "yêngs", "yếnge": "yénge", "yêngse": "yengse", "yénges": "yenges",
|
||||
"yềngf": "yêngf", "yềnge": "yènge", "yêngfe": "yengfe", "yèngef": "yengef",
|
||||
"yểngr": "yêngr", "yểnge": "yẻnge", "yêngre": "yengre", "yẻnger": "yenger",
|
||||
"yễngx": "yêngx", "yễnge": "yẽnge", "yêngxe": "yengxe", "yẽngex": "yengex",
|
||||
"yệngj": "yêngj", "yệnge": "yẹnge", "yêngje": "yengje", "yẹngej": "yengej"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
||||
@@ -32,6 +32,18 @@
|
||||
{ "code": 163, "label": "£" },
|
||||
{ "code": 165, "label": "¥" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "bangladeshi_taka",
|
||||
"label": "Bangladeshi taka (৳)",
|
||||
"slots": [
|
||||
{ "code": 2547, "label": "৳" },
|
||||
{ "code": 36, "label": "$" },
|
||||
{ "code": 8364, "label": "€" },
|
||||
{ "code": 162, "label": "¢" },
|
||||
{ "code": 163, "label": "£" },
|
||||
{ "code": 165, "label": "¥" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "bitcoin",
|
||||
@@ -45,6 +57,18 @@
|
||||
{ "code": 165, "label": "¥" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "costa_rican_colon",
|
||||
"label": "Costa Rican colón (₡)",
|
||||
"slots": [
|
||||
{ "code": 8353, "label": "₡" },
|
||||
{ "code": 36, "label": "$" },
|
||||
{ "code": 8364, "label": "€" },
|
||||
{ "code": 162, "label": "¢" },
|
||||
{ "code": 163, "label": "£" },
|
||||
{ "code": 165, "label": "¥" }
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "dollar",
|
||||
"label": "Dollar ($)",
|
||||
|
||||
@@ -17,6 +17,13 @@
|
||||
"direction": "rtl",
|
||||
"modifier": "org.florisboard.layouts:arabic"
|
||||
},
|
||||
{
|
||||
"id": "armenian_alt_phonetic",
|
||||
"label": "Armenian Alt Phonetic",
|
||||
"authors": [ "MikayelB" ],
|
||||
"direction": "ltr",
|
||||
"modifier": "org.florisboard.layouts:armenian"
|
||||
},
|
||||
{
|
||||
"id": "western_armenian",
|
||||
"label": "Armenian (Western)",
|
||||
@@ -42,6 +49,18 @@
|
||||
"label": "AZERTY",
|
||||
"authors": [ "patrickgold" ],
|
||||
"direction": "ltr"
|
||||
},
|
||||
{
|
||||
"id": "bengali_bd",
|
||||
"label": "বাংলা",
|
||||
"authors": [ "iamrasel" ],
|
||||
"direction": "ltr"
|
||||
},
|
||||
{
|
||||
"id": "hindi_in",
|
||||
"label": "हिंदी",
|
||||
"authors": [ "npnpatidar" ],
|
||||
"direction": "ltr"
|
||||
},
|
||||
{
|
||||
"id": "bepo",
|
||||
@@ -98,12 +117,25 @@
|
||||
"authors": [ "blucin" ],
|
||||
"direction": "ltr"
|
||||
},
|
||||
{
|
||||
"id": "colemak_dhm",
|
||||
"label": "ColemakDHm",
|
||||
"authors": [ "SteveP", "oneilljp" ],
|
||||
"direction": "ltr"
|
||||
},
|
||||
{
|
||||
"id": "danish",
|
||||
"label": "Danish (QWERTY)",
|
||||
"authors": [ "patrickgold" ],
|
||||
"direction": "ltr"
|
||||
},
|
||||
{
|
||||
"id": "diktor",
|
||||
"label": "Diktor",
|
||||
"authors": [ "kuroya2mouse" ],
|
||||
"direction": "ltr",
|
||||
"modifier": "org.florisboard.layouts:diktor"
|
||||
},
|
||||
{
|
||||
"id": "dvorak",
|
||||
"label": "Dvorak",
|
||||
@@ -111,6 +143,20 @@
|
||||
"direction": "ltr",
|
||||
"modifier": "org.florisboard.layouts:dvorak"
|
||||
},
|
||||
{
|
||||
"id": "dvorak_de",
|
||||
"label": "Dvorak (DE)",
|
||||
"authors": [ "msrd0" ],
|
||||
"direction": "ltr",
|
||||
"modifier": "org.florisboard.layouts:dvorak_de"
|
||||
},
|
||||
{
|
||||
"id": "dvorak_es",
|
||||
"label": "Dvorak (ÑÇ)",
|
||||
"authors": [ "tsiflimagas" ],
|
||||
"direction": "ltr",
|
||||
"modifier": "org.florisboard.layouts:dvorak"
|
||||
},
|
||||
{
|
||||
"id": "esperanto",
|
||||
"label": "Esperanto",
|
||||
@@ -123,6 +169,12 @@
|
||||
"authors": [ "jeremiah-miller", "patrickgold" ],
|
||||
"direction": "ltr"
|
||||
},
|
||||
{
|
||||
"id": "estonian",
|
||||
"label": "Estonian",
|
||||
"authors": [ "OneSheepy" ],
|
||||
"direction": "ltr"
|
||||
},
|
||||
{
|
||||
"id": "faroese",
|
||||
"label": "Faroese (QWERTY)",
|
||||
@@ -135,6 +187,12 @@
|
||||
"authors": [ "mahmoudk1000" ],
|
||||
"direction": "ltr"
|
||||
},
|
||||
{
|
||||
"id": "german2",
|
||||
"label": "German (GBoard)",
|
||||
"authors": [ "M-Koushan" ],
|
||||
"direction": "rtl"
|
||||
},
|
||||
{
|
||||
"id": "greek",
|
||||
"label": "Ελληνικά",
|
||||
@@ -172,6 +230,12 @@
|
||||
"authors": [ "nd500" ],
|
||||
"direction": "ltr"
|
||||
},
|
||||
{
|
||||
"id": "indonesian",
|
||||
"label": "Indonesian (QWERTY)",
|
||||
"authors": [ "Linerly" ],
|
||||
"direction": "ltr"
|
||||
},
|
||||
{
|
||||
"id": "ipa",
|
||||
"label": "International Phonetic Alphabet",
|
||||
@@ -180,13 +244,13 @@
|
||||
},
|
||||
{
|
||||
"id": "jcuken_russian",
|
||||
"label": "Russian (JCUKEN)",
|
||||
"label": "Russian (ЙЦУКЕН)",
|
||||
"authors": [ "williamtheaker" ],
|
||||
"direction": "ltr"
|
||||
},
|
||||
{
|
||||
"id": "jcuken_ukrainian",
|
||||
"label": "Ukrainian (JCUKEN)",
|
||||
"label": "Ukrainian (ЙЦУКЕН)",
|
||||
"authors": [ "williamtheaker", "33kk" ],
|
||||
"direction": "ltr"
|
||||
},
|
||||
@@ -256,6 +320,13 @@
|
||||
"direction": "rtl",
|
||||
"modifier": "org.florisboard.layouts:persian2"
|
||||
},
|
||||
{
|
||||
"id": "persian3",
|
||||
"label": "Persian3",
|
||||
"authors": [ "SaeID-Rz" ],
|
||||
"direction": "rtl",
|
||||
"modifier": "org.florisboard.layouts:persian3"
|
||||
},
|
||||
{
|
||||
"id": "qwerty",
|
||||
"label": "QWERTY",
|
||||
@@ -298,6 +369,12 @@
|
||||
"authors": ["GrbavaCigla"],
|
||||
"direction": "ltr"
|
||||
},
|
||||
{
|
||||
"id": "slovenian",
|
||||
"label": "Slovenian (QWERTZ)",
|
||||
"authors": ["samo_lego"],
|
||||
"direction": "ltr"
|
||||
},
|
||||
{
|
||||
"id": "spanish",
|
||||
"label": "Spanish (QWERTY)",
|
||||
@@ -328,6 +405,12 @@
|
||||
"authors": [ "patrickgold" ],
|
||||
"direction": "ltr"
|
||||
},
|
||||
{
|
||||
"id": "tamil",
|
||||
"label": "Tamil",
|
||||
"authors": [ "Clem0908" ],
|
||||
"direction": "ltr"
|
||||
},
|
||||
{
|
||||
"id": "thai_kedmanee",
|
||||
"label": "Thai Kedmanee",
|
||||
@@ -352,6 +435,18 @@
|
||||
"authors": [ "patrickgold" ],
|
||||
"direction": "ltr"
|
||||
},
|
||||
{
|
||||
"id": "udmurt_compact",
|
||||
"label": "Udmurt (3 чур)",
|
||||
"authors": [ "vorgoron" ],
|
||||
"direction": "ltr"
|
||||
},
|
||||
{
|
||||
"id": "udmurt_extended",
|
||||
"label": "Udmurt (4 чур)",
|
||||
"authors": [ "vorgoron" ],
|
||||
"direction": "ltr"
|
||||
},
|
||||
{
|
||||
"id": "urdu_phonetic",
|
||||
"label": "Urdu Phonetic",
|
||||
@@ -370,6 +465,12 @@
|
||||
"label": "Workman",
|
||||
"authors": [ "icyphox" ],
|
||||
"direction": "ltr"
|
||||
},
|
||||
{
|
||||
"id": "jcuken_interslavic",
|
||||
"label": "Interslavic (ЈЦУКЕН)",
|
||||
"authors": [ "victorbnl" ],
|
||||
"direction": "ltr"
|
||||
}
|
||||
],
|
||||
"charactersMod": [
|
||||
@@ -391,12 +492,24 @@
|
||||
"authors": [ "HeiWiper" ],
|
||||
"direction": "rtl"
|
||||
},
|
||||
{
|
||||
"id": "diktor",
|
||||
"label": "Diktor",
|
||||
"authors": [ "kuroya2mouse" ],
|
||||
"direction": "ltr"
|
||||
},
|
||||
{
|
||||
"id": "dvorak",
|
||||
"label": "Dvorak",
|
||||
"authors": [ "patrickgold" ],
|
||||
"direction": "ltr"
|
||||
},
|
||||
{
|
||||
"id": "dvorak_de",
|
||||
"label": "Dvorak (DE)",
|
||||
"authors": [ "msrd0" ],
|
||||
"direction": "ltr"
|
||||
},
|
||||
{
|
||||
"id": "hebrew",
|
||||
"label": "עברית",
|
||||
@@ -432,6 +545,12 @@
|
||||
"label": "Persian2",
|
||||
"authors": [ "M-Koushan" ],
|
||||
"direction": "rtl"
|
||||
},
|
||||
{
|
||||
"id": "persian3",
|
||||
"label": "Persian3",
|
||||
"authors": [ "SaeID-Rz" ],
|
||||
"direction": "rtl"
|
||||
}
|
||||
],
|
||||
"extension": [
|
||||
@@ -468,6 +587,12 @@
|
||||
"label": "Western Arabic (PC)",
|
||||
"authors": [ "patrickgold" ],
|
||||
"direction": "ltr"
|
||||
},
|
||||
{
|
||||
"id": "bengali",
|
||||
"label": "Bengali",
|
||||
"authors": [ "iamrasel" ],
|
||||
"direction": "ltr"
|
||||
}
|
||||
],
|
||||
"numericRow": [
|
||||
@@ -540,7 +665,7 @@
|
||||
{
|
||||
"id": "tamil",
|
||||
"label": "Tamil",
|
||||
"authors": [ "yashpalgoyal1304" ],
|
||||
"authors": [ "Clem0908" ],
|
||||
"direction": "ltr"
|
||||
},
|
||||
{
|
||||
@@ -635,6 +760,12 @@
|
||||
"label": "Western (Additional symbols)",
|
||||
"authors": [ "patrickgold" ],
|
||||
"direction": "ltr"
|
||||
},
|
||||
{
|
||||
"id": "western_samsung",
|
||||
"label": "Western (Samsung)",
|
||||
"authors": [ "nettnikl" ],
|
||||
"direction": "ltr"
|
||||
}
|
||||
],
|
||||
"symbolsMod": [
|
||||
@@ -694,6 +825,12 @@
|
||||
"label": "Western",
|
||||
"authors": [ "patrickgold" ],
|
||||
"direction": "ltr"
|
||||
},
|
||||
{
|
||||
"id": "western_samsung",
|
||||
"label": "Western (Samsung)",
|
||||
"authors": [ "nettnikl" ],
|
||||
"direction": "ltr"
|
||||
}
|
||||
],
|
||||
"symbols2Mod": [
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
[
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 1383, "label": "է" },
|
||||
{ "$": "auto_text_key", "code": 1385, "label": "թ" },
|
||||
{ "$": "auto_text_key", "code": 1411, "label": "փ" },
|
||||
{ "$": "auto_text_key", "code": 1393, "label": "ձ" },
|
||||
{ "$": "auto_text_key", "code": 1403, "label": "ջ" },
|
||||
{ "$": "auto_text_key", "code": 1408, "label": "ր" },
|
||||
{ "$": "auto_text_key", "code": 1401, "label": "չ" },
|
||||
{ "$": "auto_text_key", "code": 1395, "label": "ճ" },
|
||||
{ "$": "auto_text_key", "code": 1386, "label": "ժ" },
|
||||
{ "$": "auto_text_key", "code": 1390, "label": "ծ" }
|
||||
],
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 1412, "label": "ք" },
|
||||
{ "$": "auto_text_key", "code": 1400, "label": "ո" },
|
||||
{ "$": "auto_text_key", "code": 1381, "label": "ե" },
|
||||
{ "$": "auto_text_key", "code": 1404, "label": "ռ" },
|
||||
{ "$": "auto_text_key", "code": 1407, "label": "տ" },
|
||||
{ "$": "auto_text_key", "code": 1384, "label": "ը" },
|
||||
{ "$": "auto_text_key", "code": 1410, "label": "ւ" },
|
||||
{ "$": "auto_text_key", "code": 1387, "label": "ի" },
|
||||
{ "$": "auto_text_key", "code": 1413, "label": "օ" },
|
||||
{ "$": "auto_text_key", "code": 1402, "label": "պ" }
|
||||
],
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 1377, "label": "ա" },
|
||||
{ "$": "auto_text_key", "code": 1405, "label": "ս" },
|
||||
{ "$": "auto_text_key", "code": 1380, "label": "դ" },
|
||||
{ "$": "auto_text_key", "code": 1414, "label": "ֆ" },
|
||||
{ "$": "auto_text_key", "code": 1379, "label": "գ" },
|
||||
{ "$": "auto_text_key", "code": 1392, "label": "հ" },
|
||||
{ "$": "auto_text_key", "code": 1397, "label": "յ" },
|
||||
{ "$": "auto_text_key", "code": 1391, "label": "կ" },
|
||||
{ "$": "auto_text_key", "code": 1388, "label": "լ" },
|
||||
{ "$": "auto_text_key", "code": 1389, "label": "խ" }
|
||||
],
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 1382, "label": "զ" },
|
||||
{ "$": "auto_text_key", "code": 1394, "label": "ղ" },
|
||||
{ "$": "auto_text_key", "code": 1409, "label": "ց" },
|
||||
{ "$": "auto_text_key", "code": 1406, "label": "վ" },
|
||||
{ "$": "auto_text_key", "code": 1378, "label": "բ" },
|
||||
{ "$": "auto_text_key", "code": 1398, "label": "ն" },
|
||||
{ "$": "auto_text_key", "code": 1396, "label": "մ" },
|
||||
{ "$": "auto_text_key", "code": 1399, "label": "շ" }
|
||||
]
|
||||
]
|
||||
|
||||
@@ -0,0 +1,112 @@
|
||||
[
|
||||
[
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2457, "label": "ঙ" },
|
||||
"upper": { "code": 2434, "label": "ং" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2479, "label": "য" },
|
||||
"upper": { "code": 2527, "label": "য়" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2465, "label": "ড" },
|
||||
"upper": { "code": 2466, "label": "ঢ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2474, "label": "প" },
|
||||
"upper": { "code": 2475, "label": "ফ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2463, "label": "ট" },
|
||||
"upper": { "code": 2464, "label": "ঠ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2458, "label": "চ" },
|
||||
"upper": { "code": 2459, "label": "ছ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2460, "label": "জ" },
|
||||
"upper": { "code": 2461, "label": "ঝ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2489, "label": "হ" },
|
||||
"upper": { "code": 2462, "label": "ঞ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2455, "label": "গ" },
|
||||
"upper": { "code": 2456, "label": "ঘ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2524, "label": "ড়" },
|
||||
"upper": { "code": 2525, "label": "ঢ়" }
|
||||
}
|
||||
],
|
||||
[
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2499, "label": "ৃ" },
|
||||
"upper": { "code": 2435, "label": "ঃ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2497, "label": "ু" },
|
||||
"upper": { "code": 2498, "label": "ূ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2495, "label": "ি" },
|
||||
"upper": { "code": 2496, "label": "ী" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2494, "label": "া" },
|
||||
"upper": { "code": 2437, "label": "অ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2509, "label": "্" },
|
||||
"upper": { "code": 2433, "label": "ঁ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2476, "label": "ব" },
|
||||
"upper": { "code": 2477, "label": "ভ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2453, "label": "ক" },
|
||||
"upper": { "code": 2454, "label": "খ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2468, "label": "ত" },
|
||||
"upper": { "code": 2469, "label": "থ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2470, "label": "দ" },
|
||||
"upper": { "code": 2471, "label": "ধ" }
|
||||
}
|
||||
],
|
||||
[
|
||||
{ "$": "case_selector",
|
||||
"lower": { "$": "multi_text_key", "codePoints": [2509, 2480], "label": "্র" },
|
||||
"upper": { "$": "multi_text_key", "codePoints": [2509, 2479], "label": "্য" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2507, "label": "ো" },
|
||||
"upper": { "code": 2508, "label": "ৌ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2503, "label": "ে" },
|
||||
"upper": { "code": 2504, "label": "ৈ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2480, "label": "র" },
|
||||
"upper": { "code": 2482, "label": "ল" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2472, "label": "ন" },
|
||||
"upper": { "code": 2467, "label": "ণ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2488, "label": "স" },
|
||||
"upper": { "code": 2487, "label": "ষ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2478, "label": "ম" },
|
||||
"upper": { "code": 2486, "label": "শ" }
|
||||
}
|
||||
]
|
||||
]
|
||||
@@ -0,0 +1,46 @@
|
||||
[
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 113, "label": "q" },
|
||||
{ "$": "auto_text_key", "code": 119, "label": "w" },
|
||||
{ "$": "auto_text_key", "code": 102, "label": "f" },
|
||||
{ "$": "auto_text_key", "code": 112, "label": "p" },
|
||||
{ "$": "auto_text_key", "code": 98, "label": "b" },
|
||||
{ "$": "auto_text_key", "code": 106, "label": "j" },
|
||||
{ "$": "auto_text_key", "code": 108, "label": "l" },
|
||||
{ "$": "auto_text_key", "code": 117, "label": "u" },
|
||||
{ "$": "auto_text_key", "code": 121, "label": "y" },
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 59, "label": ";", "popup": {
|
||||
"relevant": [
|
||||
{ "code": 58, "label": ":" }
|
||||
]
|
||||
} },
|
||||
"upper": { "code": 58, "label": ":", "popup": {
|
||||
"relevant": [
|
||||
{ "code": 59, "label": ";" }
|
||||
]
|
||||
} }
|
||||
}
|
||||
],
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 97, "label": "a" },
|
||||
{ "$": "auto_text_key", "code": 114, "label": "r" },
|
||||
{ "$": "auto_text_key", "code": 115, "label": "s" },
|
||||
{ "$": "auto_text_key", "code": 116, "label": "t" },
|
||||
{ "$": "auto_text_key", "code": 103, "label": "g" },
|
||||
{ "$": "auto_text_key", "code": 109, "label": "m" },
|
||||
{ "$": "auto_text_key", "code": 110, "label": "n" },
|
||||
{ "$": "auto_text_key", "code": 101, "label": "e" },
|
||||
{ "$": "auto_text_key", "code": 105, "label": "i" },
|
||||
{ "$": "auto_text_key", "code": 111, "label": "o" }
|
||||
],
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 122, "label": "z" },
|
||||
{ "$": "auto_text_key", "code": 120, "label": "x" },
|
||||
{ "$": "auto_text_key", "code": 99, "label": "c" },
|
||||
{ "$": "auto_text_key", "code": 100, "label": "d" },
|
||||
{ "$": "auto_text_key", "code": 118, "label": "v" },
|
||||
{ "$": "auto_text_key", "code": 107, "label": "k" },
|
||||
{ "$": "auto_text_key", "code": 104, "label": "h" }
|
||||
]
|
||||
]
|
||||
@@ -0,0 +1,49 @@
|
||||
[
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 1094, "label": "ц" },
|
||||
{ "$": "auto_text_key", "code": 1100, "label": "ь" },
|
||||
{ "$": "auto_text_key", "code": 1103, "label": "я" },
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 44, "label": ",", "popup": {
|
||||
"relevant": [
|
||||
{ "code": 46, "label": "." }
|
||||
]
|
||||
} },
|
||||
"upper": { "code": 46, "label": ".", "popup": {
|
||||
"relevant": [
|
||||
{ "code": 44, "label": "," }
|
||||
]
|
||||
} }
|
||||
},
|
||||
{ "$": "auto_text_key", "code": 1079, "label": "з" },
|
||||
{ "$": "auto_text_key", "code": 1074, "label": "в" },
|
||||
{ "$": "auto_text_key", "code": 1082, "label": "к" },
|
||||
{ "$": "auto_text_key", "code": 1076, "label": "д" },
|
||||
{ "$": "auto_text_key", "code": 1095, "label": "ч" },
|
||||
{ "$": "auto_text_key", "code": 1096, "label": "ш" },
|
||||
{ "$": "auto_text_key", "code": 1097, "label": "щ" }
|
||||
],
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 1091 , "label": "у" },
|
||||
{ "$": "auto_text_key", "code": 1080 , "label": "и" },
|
||||
{ "$": "auto_text_key", "code": 1077 , "label": "е" },
|
||||
{ "$": "auto_text_key", "code": 1086 , "label": "о" },
|
||||
{ "$": "auto_text_key", "code": 1072 , "label": "а" },
|
||||
{ "$": "auto_text_key", "code": 1083 , "label": "л" },
|
||||
{ "$": "auto_text_key", "code": 1085 , "label": "н" },
|
||||
{ "$": "auto_text_key", "code": 1090 , "label": "т" },
|
||||
{ "$": "auto_text_key", "code": 1089 , "label": "с" },
|
||||
{ "$": "auto_text_key", "code": 1088 , "label": "р" },
|
||||
{ "$": "auto_text_key", "code": 1081 , "label": "й" }
|
||||
],
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 1101 , "label": "э" },
|
||||
{ "$": "auto_text_key", "code": 1093 , "label": "х" },
|
||||
{ "$": "auto_text_key", "code": 1099 , "label": "ы" },
|
||||
{ "$": "auto_text_key", "code": 1102 , "label": "ю" },
|
||||
{ "$": "auto_text_key", "code": 1073 , "label": "б" },
|
||||
{ "$": "auto_text_key", "code": 1084 , "label": "м" },
|
||||
{ "$": "auto_text_key", "code": 1087 , "label": "п" },
|
||||
{ "$": "auto_text_key", "code": 1075 , "label": "г" }
|
||||
]
|
||||
]
|
||||
@@ -1,47 +1,47 @@
|
||||
[
|
||||
[
|
||||
{ "$": "variation_selector",
|
||||
"default": { "$": "case_selector",
|
||||
"lower": { "code": 39, "label": "'", "popup": {
|
||||
{ "$": "shift_state_selector",
|
||||
"shiftedManual": { "code": 34, "label": "\"", "popup": {
|
||||
"relevant": [
|
||||
{ "code": 33, "label": "!" },
|
||||
{ "code": 39, "label": "'"}
|
||||
]
|
||||
} },
|
||||
"default": { "$": "variation_selector",
|
||||
"email": { "code": 64, "label": "@" },
|
||||
"uri": { "code": 47, "label": "/" },
|
||||
"default": { "code": 39, "label": "'", "popup": {
|
||||
"relevant": [
|
||||
{ "code": 33, "label": "!" },
|
||||
{ "code": 34, "label": "\"" }
|
||||
]
|
||||
} },
|
||||
"upper": { "code": 34, "label": "\"", "popup": {
|
||||
"relevant": [
|
||||
{ "code": 33, "label": "!" },
|
||||
{ "code": 39, "label": "'"}
|
||||
]
|
||||
} }
|
||||
},
|
||||
"email": { "code": 64, "label": "@" },
|
||||
"uri": { "code": 47, "label": "/" }
|
||||
}
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 44, "label": ",", "popup": {
|
||||
"relevant": [
|
||||
{ "code": 60, "label": "<" },
|
||||
{ "code": 63, "label": "?" }
|
||||
]
|
||||
} },
|
||||
"upper": { "code": 60, "label": "<", "popup": {
|
||||
{ "$": "shift_state_selector",
|
||||
"shiftedManual": { "code": 60, "label": "<", "popup": {
|
||||
"relevant": [
|
||||
{ "code": 44, "label": "," },
|
||||
{ "code": 63, "label": "?" }
|
||||
]
|
||||
} },
|
||||
"default": { "code": 44, "label": ",", "popup": {
|
||||
"relevant": [
|
||||
{ "code": 60, "label": "<" },
|
||||
{ "code": 63, "label": "?" }
|
||||
]
|
||||
} }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 46, "label": ".", "popup": {
|
||||
"relevant": [
|
||||
{ "code": 62, "label": ">" }
|
||||
]
|
||||
} },
|
||||
"upper": { "code": 62, "label": ">", "popup": {
|
||||
{ "$": "shift_state_selector",
|
||||
"shiftedManual": { "code": 62, "label": ">", "popup": {
|
||||
"relevant": [
|
||||
{ "code": 46, "label": "." }
|
||||
]
|
||||
} },
|
||||
"default": { "code": 46, "label": ".", "popup": {
|
||||
"relevant": [
|
||||
{ "code": 62, "label": ">" }
|
||||
]
|
||||
} }
|
||||
},
|
||||
{ "$": "auto_text_key", "code": 112, "label": "p" },
|
||||
|
||||
@@ -0,0 +1,71 @@
|
||||
[
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 252, "label": "ü" },
|
||||
{ "$": "shift_state_selector",
|
||||
"shiftedManual": { "code": 59, "label": ";", "popup": {
|
||||
"relevant": [
|
||||
{ "code": 44, "label": "," }
|
||||
]
|
||||
} },
|
||||
"default": { "code": 44, "label": ",", "popup": {
|
||||
"relevant": [
|
||||
{ "code": 59, "label": ";" }
|
||||
]
|
||||
} }
|
||||
},
|
||||
{ "$": "shift_state_selector",
|
||||
"shiftedManual": { "code": 58, "label": ":", "popup": {
|
||||
"relevant": [
|
||||
{ "code": 46, "label": "." }
|
||||
]
|
||||
} },
|
||||
"default": { "code": 46, "label": ".", "popup": {
|
||||
"relevant": [
|
||||
{ "code": 58, "label": ":" }
|
||||
]
|
||||
} }
|
||||
},
|
||||
{ "$": "auto_text_key", "code": 112, "label": "p" },
|
||||
{ "$": "auto_text_key", "code": 121, "label": "y" },
|
||||
{ "$": "auto_text_key", "code": 102, "label": "f" },
|
||||
{ "$": "auto_text_key", "code": 103, "label": "g" },
|
||||
{ "$": "auto_text_key", "code": 99, "label": "c" },
|
||||
{ "$": "auto_text_key", "code": 116, "label": "t" },
|
||||
{ "$": "auto_text_key", "code": 122, "label": "z" },
|
||||
{ "$": "shift_state_selector",
|
||||
"shiftedManual": { "code": 223, "label": "ß", "popup": {
|
||||
"relevant": [
|
||||
{ "code": 63, "label": "?" }
|
||||
]
|
||||
} },
|
||||
"default": { "code": 63, "label": "?", "popup": {
|
||||
"relevant": [
|
||||
{ "code": 223, "label": "ß" }
|
||||
]
|
||||
} }
|
||||
}
|
||||
],
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 97, "label": "a" },
|
||||
{ "$": "auto_text_key", "code": 111, "label": "o" },
|
||||
{ "$": "auto_text_key", "code": 101, "label": "e" },
|
||||
{ "$": "auto_text_key", "code": 105, "label": "i" },
|
||||
{ "$": "auto_text_key", "code": 117, "label": "u" },
|
||||
{ "$": "auto_text_key", "code": 104, "label": "h" },
|
||||
{ "$": "auto_text_key", "code": 100, "label": "d" },
|
||||
{ "$": "auto_text_key", "code": 114, "label": "r" },
|
||||
{ "$": "auto_text_key", "code": 110, "label": "n" },
|
||||
{ "$": "auto_text_key", "code": 115, "label": "s" },
|
||||
{ "$": "auto_text_key", "code": 108, "label": "l" }
|
||||
],
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 113, "label": "q" },
|
||||
{ "$": "auto_text_key", "code": 106, "label": "j" },
|
||||
{ "$": "auto_text_key", "code": 107, "label": "k" },
|
||||
{ "$": "auto_text_key", "code": 120, "label": "x" },
|
||||
{ "$": "auto_text_key", "code": 98, "label": "b" },
|
||||
{ "$": "auto_text_key", "code": 109, "label": "m" },
|
||||
{ "$": "auto_text_key", "code": 119, "label": "w" },
|
||||
{ "$": "auto_text_key", "code": 118, "label": "v" }
|
||||
]
|
||||
]
|
||||
@@ -0,0 +1,78 @@
|
||||
[
|
||||
[
|
||||
{ "$": "shift_state_selector",
|
||||
"shiftedManual": { "code": 60, "label": "<", "popup": {
|
||||
"relevant": [
|
||||
{ "code": 44, "label": "," },
|
||||
{ "code": 63, "label": "?" }
|
||||
]
|
||||
} },
|
||||
"default": { "code": 44, "label": ",", "popup": {
|
||||
"relevant": [
|
||||
{ "code": 60, "label": "<" },
|
||||
{ "code": 63, "label": "?" }
|
||||
]
|
||||
} }
|
||||
},
|
||||
{ "$": "shift_state_selector",
|
||||
"shiftedManual": { "code": 62, "label": ">", "popup": {
|
||||
"relevant": [
|
||||
{ "code": 46, "label": "." }
|
||||
]
|
||||
} },
|
||||
"default": { "code": 46, "label": ".", "popup": {
|
||||
"relevant": [
|
||||
{ "code": 62, "label": ">" }
|
||||
]
|
||||
} }
|
||||
},
|
||||
{ "$": "auto_text_key", "code": 241, "label": "ñ" },
|
||||
{ "$": "auto_text_key", "code": 112, "label": "p" },
|
||||
{ "$": "auto_text_key", "code": 121, "label": "y" },
|
||||
{ "$": "auto_text_key", "code": 102, "label": "f" },
|
||||
{ "$": "auto_text_key", "code": 103, "label": "g" },
|
||||
{ "$": "auto_text_key", "code": 99, "label": "c" },
|
||||
{ "$": "auto_text_key", "code": 104, "label": "h" },
|
||||
{ "$": "auto_text_key", "code": 108, "label": "l" }
|
||||
],
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 97, "label": "a" },
|
||||
{ "$": "auto_text_key", "code": 111, "label": "o" },
|
||||
{ "$": "auto_text_key", "code": 101, "label": "e" },
|
||||
{ "$": "auto_text_key", "code": 117, "label": "u" },
|
||||
{ "$": "auto_text_key", "code": 105, "label": "i" },
|
||||
{ "$": "auto_text_key", "code": 100, "label": "d" },
|
||||
{ "$": "auto_text_key", "code": 114, "label": "r" },
|
||||
{ "$": "auto_text_key", "code": 116, "label": "t" },
|
||||
{ "$": "auto_text_key", "code": 110, "label": "n" },
|
||||
{ "$": "auto_text_key", "code": 115, "label": "s" },
|
||||
{ "$": "shift_state_selector",
|
||||
"shiftedManual": { "code": 34, "label": "\"", "popup": {
|
||||
"relevant": [
|
||||
{ "code": 33, "label": "!" },
|
||||
{ "code": 39, "label": "'"}
|
||||
]
|
||||
} },
|
||||
"default": { "$": "variation_selector",
|
||||
"email": { "code": 64, "label": "@" },
|
||||
"uri": { "code": 47, "label": "/" },
|
||||
"default": { "code": 39, "label": "'", "popup": {
|
||||
"relevant": [
|
||||
{ "code": 33, "label": "!" },
|
||||
{ "code": 34, "label": "\"" }
|
||||
]
|
||||
} }
|
||||
}
|
||||
},
|
||||
{ "$": "auto_text_key", "code": 231, "label": "ç" }
|
||||
],
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 106, "label": "j" },
|
||||
{ "$": "auto_text_key", "code": 107, "label": "k" },
|
||||
{ "$": "auto_text_key", "code": 120, "label": "x" },
|
||||
{ "$": "auto_text_key", "code": 98, "label": "b" },
|
||||
{ "$": "auto_text_key", "code": 109, "label": "m" },
|
||||
{ "$": "auto_text_key", "code": 119, "label": "w" },
|
||||
{ "$": "auto_text_key", "code": 118, "label": "v" }
|
||||
]
|
||||
]
|
||||
@@ -0,0 +1,38 @@
|
||||
[
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 113, "label": "q" },
|
||||
{ "$": "auto_text_key", "code": 119, "label": "w" },
|
||||
{ "$": "auto_text_key", "code": 101, "label": "e" },
|
||||
{ "$": "auto_text_key", "code": 114, "label": "r" },
|
||||
{ "$": "auto_text_key", "code": 116, "label": "t" },
|
||||
{ "$": "auto_text_key", "code": 121, "label": "y" },
|
||||
{ "$": "auto_text_key", "code": 117, "label": "u" },
|
||||
{ "$": "auto_text_key", "code": 105, "label": "i" },
|
||||
{ "$": "auto_text_key", "code": 111, "label": "o" },
|
||||
{ "$": "auto_text_key", "code": 112, "label": "p" },
|
||||
{ "$": "auto_text_key", "code": 252, "label": "ü" }
|
||||
],
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 97, "label": "a" },
|
||||
{ "$": "auto_text_key", "code": 115, "label": "s" },
|
||||
{ "$": "auto_text_key", "code": 100, "label": "d" },
|
||||
{ "$": "auto_text_key", "code": 102, "label": "f" },
|
||||
{ "$": "auto_text_key", "code": 103, "label": "g" },
|
||||
{ "$": "auto_text_key", "code": 104, "label": "h" },
|
||||
{ "$": "auto_text_key", "code": 106, "label": "j" },
|
||||
{ "$": "auto_text_key", "code": 107, "label": "k" },
|
||||
{ "$": "auto_text_key", "code": 108, "label": "l" },
|
||||
{ "$": "auto_text_key", "code": 246, "label": "ö" },
|
||||
{ "$": "auto_text_key", "code": 228, "label": "ä" }
|
||||
],
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 122, "label": "z" },
|
||||
{ "$": "auto_text_key", "code": 120, "label": "x" },
|
||||
{ "$": "auto_text_key", "code": 99, "label": "c" },
|
||||
{ "$": "auto_text_key", "code": 118, "label": "v" },
|
||||
{ "$": "auto_text_key", "code": 98, "label": "b" },
|
||||
{ "$": "auto_text_key", "code": 110, "label": "n" },
|
||||
{ "$": "auto_text_key", "code": 109, "label": "m" },
|
||||
{ "$": "auto_text_key", "code": 245, "label": "õ" }
|
||||
]
|
||||
]
|
||||
@@ -0,0 +1,37 @@
|
||||
[
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 113, "label": "q" },
|
||||
{ "$": "auto_text_key", "code": 119, "label": "w" },
|
||||
{ "$": "auto_text_key", "code": 101, "label": "e" },
|
||||
{ "$": "auto_text_key", "code": 114, "label": "r" },
|
||||
{ "$": "auto_text_key", "code": 116, "label": "t" },
|
||||
{ "$": "auto_text_key", "code": 122, "label": "z" },
|
||||
{ "$": "auto_text_key", "code": 117, "label": "u" },
|
||||
{ "$": "auto_text_key", "code": 105, "label": "i" },
|
||||
{ "$": "auto_text_key", "code": 111, "label": "o" },
|
||||
{ "$": "auto_text_key", "code": 112, "label": "p" },
|
||||
{ "$": "auto_text_key", "code": 252, "label": "ü" }
|
||||
],
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 97, "label": "a" },
|
||||
{ "$": "auto_text_key", "code": 115, "label": "s" },
|
||||
{ "$": "auto_text_key", "code": 100, "label": "d" },
|
||||
{ "$": "auto_text_key", "code": 102, "label": "f" },
|
||||
{ "$": "auto_text_key", "code": 103, "label": "g" },
|
||||
{ "$": "auto_text_key", "code": 104, "label": "h" },
|
||||
{ "$": "auto_text_key", "code": 106, "label": "j" },
|
||||
{ "$": "auto_text_key", "code": 107, "label": "k" },
|
||||
{ "$": "auto_text_key", "code": 108, "label": "l" },
|
||||
{ "$": "auto_text_key", "code": 246, "label": "ö" },
|
||||
{ "$": "auto_text_key", "code": 228, "label": "ä" }
|
||||
],
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 121, "label": "y" },
|
||||
{ "$": "auto_text_key", "code": 120, "label": "x" },
|
||||
{ "$": "auto_text_key", "code": 99, "label": "c" },
|
||||
{ "$": "auto_text_key", "code": 118, "label": "v" },
|
||||
{ "$": "auto_text_key", "code": 98, "label": "b" },
|
||||
{ "$": "auto_text_key", "code": 110, "label": "n" },
|
||||
{ "$": "auto_text_key", "code": 109, "label": "m" }
|
||||
]
|
||||
]
|
||||
@@ -0,0 +1,42 @@
|
||||
[
|
||||
[
|
||||
{ "$": "case_selector", "lower": { "code": 2335, "label": "ट" }, "upper": { "code": 2336, "label": "ठ" } },
|
||||
{ "$": "case_selector", "lower": { "code": 2337, "label": "ड" }, "upper": { "code": 2338, "label": "ढ" } },
|
||||
{ "$": "case_selector", "lower": { "code": 2375, "label": "े" }, "upper": { "code": 2376, "label": "ै" } },
|
||||
{ "$": "case_selector", "lower": { "code": 2352, "label": "र" }, "upper": { "code": 2371, "label": "ृ" } },
|
||||
{ "$": "case_selector", "lower": { "code": 2340, "label": "त" }, "upper": { "code": 2341, "label": "थ" } },
|
||||
{ "$": "case_selector", "lower": { "code": 2351, "label": "य" }, "upper": { "code": 2399, "label": "य़" } },
|
||||
{ "$": "case_selector", "lower": { "code": 2369, "label": "ु" }, "upper": { "code": 2370, "label": "ू" } },
|
||||
{ "$": "case_selector", "lower": { "code": 2367, "label": "ि" }, "upper": { "code": 2368, "label": "ी" } },
|
||||
{ "$": "case_selector", "lower": { "code": 2379, "label": "ो" }, "upper": { "code": 2380, "label": "ौ" } },
|
||||
{ "$": "case_selector", "lower": { "code": 2346, "label": "प" }, "upper": { "code": 2398, "label": "फ़" } }
|
||||
],
|
||||
[
|
||||
{ "$": "case_selector", "lower": { "code": 2366, "label": "ा" }, "upper": { "code": 2309, "label": "अ" } },
|
||||
{ "$": "case_selector", "lower": { "code": 2360, "label": "स" }, "upper": { "code": 2358, "label": "श" } },
|
||||
{ "$": "case_selector", "lower": { "code": 2342, "label": "द" }, "upper": { "code": 2343, "label": "ध" } },
|
||||
{ "$": "case_selector", "lower": { "code": 2347, "label": "फ" }, "upper": { "code": 2364, "label": " ़" } },
|
||||
{ "$": "case_selector", "lower": { "code": 2327, "label": "ग" }, "upper": { "code": 2328, "label": "घ" } },
|
||||
{ "$": "case_selector", "lower": { "code": 2361, "label": "ह" }, "upper": { "code": 2307, "label": "ः" } },
|
||||
{ "$": "case_selector", "lower": { "code": 2332, "label": "ज" }, "upper": { "code": 2333, "label": "झ" } },
|
||||
{ "$": "case_selector", "lower": { "code": 2325, "label": "क" }, "upper": { "code": 2326, "label": "ख" } },
|
||||
{ "$": "case_selector", "lower": { "code": 2354, "label": "ल" }, "upper": { "code": 2355, "label": "ळ" } }
|
||||
],
|
||||
[
|
||||
{
|
||||
"$": "case_selector",
|
||||
"lower": { "$": "multi_text_key", "codePoints": [2332, 2381, 2334], "label": "ज्ञ" },
|
||||
"upper": { "code": 2395, "label": "ज़" }
|
||||
},
|
||||
{
|
||||
"$": "case_selector",
|
||||
"lower": { "$": "multi_text_key", "codePoints": [2325, 2381, 2359], "label": "क्ष" },
|
||||
"upper": { "code": 2359, "label": "ष" }
|
||||
},
|
||||
{ "$": "case_selector", "lower": { "code": 2330, "label": "च" }, "upper": { "code": 2331, "label": "छ" } },
|
||||
{ "$": "case_selector", "lower": { "code": 2357, "label": "व" }, "upper": { "code": 2381, "label": "्" } },
|
||||
{ "$": "case_selector", "lower": { "code": 2348, "label": "ब" }, "upper": { "code": 2349, "label": "भ" } },
|
||||
{ "$": "case_selector", "lower": { "code": 2344, "label": "न" }, "upper": { "code": 2339, "label": "ण" } },
|
||||
{ "$": "case_selector", "lower": { "code": 2350, "label": "म" }, "upper": { "code": 2306, "label": "ं" } }
|
||||
]
|
||||
]
|
||||
@@ -0,0 +1,36 @@
|
||||
[
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 1112, "label": "ј" },
|
||||
{ "$": "auto_text_key", "code": 1094, "label": "ц" },
|
||||
{ "$": "auto_text_key", "code": 1091, "label": "у" },
|
||||
{ "$": "auto_text_key", "code": 1082, "label": "к" },
|
||||
{ "$": "auto_text_key", "code": 1077, "label": "е" },
|
||||
{ "$": "auto_text_key", "code": 1085, "label": "н" },
|
||||
{ "$": "auto_text_key", "code": 1114, "label": "њ" },
|
||||
{ "$": "auto_text_key", "code": 1075, "label": "г" },
|
||||
{ "$": "auto_text_key", "code": 1096, "label": "ш" },
|
||||
{ "$": "auto_text_key", "code": 1079, "label": "з" },
|
||||
{ "$": "auto_text_key", "code": 1093, "label": "х" }
|
||||
],
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 1092 , "label": "ф" },
|
||||
{ "$": "auto_text_key", "code": 1099 , "label": "ы" },
|
||||
{ "$": "auto_text_key", "code": 1074 , "label": "в" },
|
||||
{ "$": "auto_text_key", "code": 1072 , "label": "а" },
|
||||
{ "$": "auto_text_key", "code": 1087 , "label": "п" },
|
||||
{ "$": "auto_text_key", "code": 1088 , "label": "р" },
|
||||
{ "$": "auto_text_key", "code": 1086 , "label": "о" },
|
||||
{ "$": "auto_text_key", "code": 1083 , "label": "л" },
|
||||
{ "$": "auto_text_key", "code": 1113 , "label": "љ" },
|
||||
{ "$": "auto_text_key", "code": 1078 , "label": "ж" }
|
||||
],
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 1108 , "label": "є" },
|
||||
{ "$": "auto_text_key", "code": 1095 , "label": "ч" },
|
||||
{ "$": "auto_text_key", "code": 1089 , "label": "с" },
|
||||
{ "$": "auto_text_key", "code": 1084 , "label": "м" },
|
||||
{ "$": "auto_text_key", "code": 1080 , "label": "и" },
|
||||
{ "$": "auto_text_key", "code": 1090 , "label": "т" },
|
||||
{ "$": "auto_text_key", "code": 1073 , "label": "б" }
|
||||
]
|
||||
]
|
||||
@@ -48,7 +48,9 @@
|
||||
|
||||
],
|
||||
[
|
||||
|
||||
{ "code": 1600, "label": "kashida", "popup":
|
||||
{ "main": { "code": 8204, "label": "half_space" }
|
||||
} },
|
||||
{ "code": 1574, "label": "ﺋ", "popup": {
|
||||
"main": { "code": 1569, "label": "ء" }
|
||||
} },
|
||||
@@ -58,9 +60,14 @@
|
||||
} },
|
||||
{ "code": 1688, "label": "ژ" },
|
||||
{ "code": 1605, "label": "م" },
|
||||
{ "code": 1567, "label": "؟" },
|
||||
{ "code": 1548, "label": "،" },
|
||||
{ "code": 58, "label": ":" }
|
||||
|
||||
{ "code": 1567, "label": "؟", "popup": {
|
||||
"main": { "code": 63, "label": "?" }
|
||||
} },
|
||||
{ "code": 1548, "label": "،", "popup": {
|
||||
"main": { "code": 1643, "label": "٫" }
|
||||
} },
|
||||
{ "code": 58, "label": ":", "popup": {
|
||||
"main": { "code": 1563, "label": "؛" }
|
||||
} }
|
||||
]
|
||||
]
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
[
|
||||
[
|
||||
{ "code": 1590, "label": "ض" },
|
||||
{ "code": 1589, "label": "ص" },
|
||||
{ "code": 1579, "label": "ث" },
|
||||
{ "code": 1602, "label": "ق" },
|
||||
{ "code": 1601, "label": "ف" },
|
||||
{ "code": 1594, "label": "غ" },
|
||||
{ "code": 1593, "label": "ع" },
|
||||
{ "code": 1607, "label": "ه" },
|
||||
{ "code": 1582, "label": "خ" },
|
||||
{ "code": 1581, "label": "ح" },
|
||||
{ "code": 1580, "label": "ج" }
|
||||
],
|
||||
[
|
||||
{ "code": 1588, "label": "ش" },
|
||||
{ "code": 1587, "label": "س" },
|
||||
{ "code": 1740, "label": "ی" },
|
||||
{ "code": 1576, "label": "ب" },
|
||||
{ "code": 1604, "label": "ل" },
|
||||
{ "code": 1575, "label": "ا" },
|
||||
{ "code": 1578, "label": "ت" },
|
||||
{ "code": 1606, "label": "ن" },
|
||||
{ "code": 1605, "label": "م" },
|
||||
{ "code": 1705, "label": "ک" },
|
||||
{ "code": 1711, "label": "گ" }
|
||||
],
|
||||
[
|
||||
{ "code": 1592, "label": "ظ" },
|
||||
{ "code": 1591, "label": "ط" },
|
||||
{ "code": 1586, "label": "ز" },
|
||||
{ "code": 1585, "label": "ر" },
|
||||
{ "code": 1584, "label": "ذ" },
|
||||
{ "code": 1583, "label": "د" },
|
||||
{ "code": 1662, "label": "پ" },
|
||||
{ "code": 1608, "label": "و" },
|
||||
{ "code": 1670, "label": "چ" }
|
||||
]
|
||||
]
|
||||
@@ -0,0 +1,37 @@
|
||||
[
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 113, "label": "q" },
|
||||
{ "$": "auto_text_key", "code": 119, "label": "w" },
|
||||
{ "$": "auto_text_key", "code": 101, "label": "e" },
|
||||
{ "$": "auto_text_key", "code": 114, "label": "r" },
|
||||
{ "$": "auto_text_key", "code": 116, "label": "t" },
|
||||
{ "$": "auto_text_key", "code": 122, "label": "z" },
|
||||
{ "$": "auto_text_key", "code": 117, "label": "u" },
|
||||
{ "$": "auto_text_key", "code": 105, "label": "i" },
|
||||
{ "$": "auto_text_key", "code": 111, "label": "o" },
|
||||
{ "$": "auto_text_key", "code": 112, "label": "p" },
|
||||
{ "$": "auto_text_key", "code": 353, "label": "š" }
|
||||
],
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 97, "label": "a" },
|
||||
{ "$": "auto_text_key", "code": 115, "label": "s" },
|
||||
{ "$": "auto_text_key", "code": 100, "label": "d" },
|
||||
{ "$": "auto_text_key", "code": 102, "label": "f" },
|
||||
{ "$": "auto_text_key", "code": 103, "label": "g" },
|
||||
{ "$": "auto_text_key", "code": 104, "label": "h" },
|
||||
{ "$": "auto_text_key", "code": 106, "label": "j" },
|
||||
{ "$": "auto_text_key", "code": 107, "label": "k" },
|
||||
{ "$": "auto_text_key", "code": 108, "label": "l" },
|
||||
{ "$": "auto_text_key", "code": 269, "label": "č" }
|
||||
],
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 121, "label": "y" },
|
||||
{ "$": "auto_text_key", "code": 120, "label": "x" },
|
||||
{ "$": "auto_text_key", "code": 99, "label": "c" },
|
||||
{ "$": "auto_text_key", "code": 118, "label": "v" },
|
||||
{ "$": "auto_text_key", "code": 98, "label": "b" },
|
||||
{ "$": "auto_text_key", "code": 110, "label": "n" },
|
||||
{ "$": "auto_text_key", "code": 109, "label": "m" },
|
||||
{ "$": "auto_text_key", "code": 382, "label": "ž" }
|
||||
]
|
||||
]
|
||||
@@ -0,0 +1,98 @@
|
||||
[
|
||||
[
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2974, "label": "ஞ" },
|
||||
"upper": { "code": 2998, "label": "ஶ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2993, "label": "ற" },
|
||||
"upper": { "code": 2999, "label": "ஷ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2984, "label": "ந" },
|
||||
"upper": { "code": 3000, "label": "ஸ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2970, "label": "ச" },
|
||||
"upper": { "code": 3001, "label": "ஹ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2997, "label": "வ" },
|
||||
"upper": { "code": 2972, "label": "ஜ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2992, "label": "ர" },
|
||||
"upper": { "code": 2994, "label": "ல" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 3016, "label": "ை" },
|
||||
"upper": { "code": 2960, "label": "ஐ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 3018, "label": "ொ" },
|
||||
"upper": { "code": 3019, "label": "ோ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 3007, "label": "ி" },
|
||||
"upper": { "code": 3008, "label": "ீ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 3009, "label": "ு" },
|
||||
"upper": { "code": 3010, "label": "ூ" }
|
||||
}
|
||||
],
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 2991, "label": "ய" },
|
||||
{ "$": "auto_text_key", "code": 2995, "label": "ள" },
|
||||
{ "$": "auto_text_key", "code": 2985, "label": "ன" },
|
||||
{ "$": "auto_text_key", "code": 2965, "label": "க" },
|
||||
{ "$": "auto_text_key", "code": 2986, "label": "ப" },
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 3006, "label": "ா" },
|
||||
"upper": { "code": 2996, "label": "ழ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2980, "label": "த" },
|
||||
"upper": { "code": 2990, "label": "ம" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2975, "label": "ட" },
|
||||
"upper": { "code": 2969, "label": "ங" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 3021, "label": "்" },
|
||||
"upper": { "code": 2947, "label": "ஃ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2951, "label": "இ" },
|
||||
"upper": { "code": 2952, "label": "ஈ" }
|
||||
}
|
||||
],
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 2979, "label": "ண" },
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2962, "label": "ஒ" },
|
||||
"upper": { "code": 2963, "label": "ஓ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2953, "label": "உ" },
|
||||
"upper": { "code": 2954, "label": "ஊ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2958, "label": "எ" },
|
||||
"upper": { "code": 2959, "label": "ஏ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 3014, "label": "ெ" },
|
||||
"upper": { "code": 3015, "label": "ே" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2964, "label": "ஔ" },
|
||||
"upper": { "code": 3020, "label": "ௌ" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 2949, "label": "அ" },
|
||||
"upper": { "code": 2950, "label": "ஆ" }
|
||||
}
|
||||
]
|
||||
]
|
||||
@@ -0,0 +1,39 @@
|
||||
[
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 1081, "label": "й" },
|
||||
{ "$": "auto_text_key", "code": 1094, "label": "ц" },
|
||||
{ "$": "auto_text_key", "code": 1091, "label": "у" },
|
||||
{ "$": "auto_text_key", "code": 1082, "label": "к" },
|
||||
{ "$": "auto_text_key", "code": 1077, "label": "е" },
|
||||
{ "$": "auto_text_key", "code": 1085, "label": "н" },
|
||||
{ "$": "auto_text_key", "code": 1075, "label": "г" },
|
||||
{ "$": "auto_text_key", "code": 1096, "label": "ш" },
|
||||
{ "$": "auto_text_key", "code": 1097, "label": "щ" },
|
||||
{ "$": "auto_text_key", "code": 1079, "label": "з" },
|
||||
{ "$": "auto_text_key", "code": 1093, "label": "х" }
|
||||
],
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 1092 , "label": "ф" },
|
||||
{ "$": "auto_text_key", "code": 1099 , "label": "ы" },
|
||||
{ "$": "auto_text_key", "code": 1074 , "label": "в" },
|
||||
{ "$": "auto_text_key", "code": 1072 , "label": "а" },
|
||||
{ "$": "auto_text_key", "code": 1087 , "label": "п" },
|
||||
{ "$": "auto_text_key", "code": 1088 , "label": "р" },
|
||||
{ "$": "auto_text_key", "code": 1086 , "label": "о" },
|
||||
{ "$": "auto_text_key", "code": 1083 , "label": "л" },
|
||||
{ "$": "auto_text_key", "code": 1076 , "label": "д" },
|
||||
{ "$": "auto_text_key", "code": 1078 , "label": "ж" },
|
||||
{ "$": "auto_text_key", "code": 1101 , "label": "э" }
|
||||
],
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 1103 , "label": "я" },
|
||||
{ "$": "auto_text_key", "code": 1095 , "label": "ч" },
|
||||
{ "$": "auto_text_key", "code": 1089 , "label": "с" },
|
||||
{ "$": "auto_text_key", "code": 1084 , "label": "м" },
|
||||
{ "$": "auto_text_key", "code": 1080 , "label": "и" },
|
||||
{ "$": "auto_text_key", "code": 1090 , "label": "т" },
|
||||
{ "$": "auto_text_key", "code": 1100 , "label": "ь" },
|
||||
{ "$": "auto_text_key", "code": 1073 , "label": "б" },
|
||||
{ "$": "auto_text_key", "code": 1102 , "label": "ю" }
|
||||
]
|
||||
]
|
||||
@@ -0,0 +1,48 @@
|
||||
[
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 1081, "label": "ё" },
|
||||
{ "$": "auto_text_key", "code": 1245, "label": "ӝ" },
|
||||
{ "$": "auto_text_key", "code": 1255, "label": "ӧ" },
|
||||
{ "$": "auto_text_key", "code": 1269, "label": "ӵ" },
|
||||
{ "$": "auto_text_key", "code": 1253, "label": "ӥ" },
|
||||
{ "$": "auto_text_key", "code": 1247, "label": "ӟ" },
|
||||
{ "$": "auto_text_key", "code": 1100, "label": "ь" },
|
||||
{ "$": "auto_text_key", "code": 1098, "label": "ъ" },
|
||||
{ "$": "auto_text_key", "code": 1093, "label": "х" },
|
||||
{ "$": "auto_text_key", "code": 1101, "label": "э" }
|
||||
],
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 1081, "label": "й" },
|
||||
{ "$": "auto_text_key", "code": 1094, "label": "ц" },
|
||||
{ "$": "auto_text_key", "code": 1091, "label": "у" },
|
||||
{ "$": "auto_text_key", "code": 1082, "label": "к" },
|
||||
{ "$": "auto_text_key", "code": 1077, "label": "е" },
|
||||
{ "$": "auto_text_key", "code": 1085, "label": "н" },
|
||||
{ "$": "auto_text_key", "code": 1075, "label": "г" },
|
||||
{ "$": "auto_text_key", "code": 1096, "label": "ш" },
|
||||
{ "$": "auto_text_key", "code": 1097, "label": "щ" },
|
||||
{ "$": "auto_text_key", "code": 1079, "label": "з" }
|
||||
],
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 1092 , "label": "ф" },
|
||||
{ "$": "auto_text_key", "code": 1099 , "label": "ы" },
|
||||
{ "$": "auto_text_key", "code": 1074 , "label": "в" },
|
||||
{ "$": "auto_text_key", "code": 1072 , "label": "а" },
|
||||
{ "$": "auto_text_key", "code": 1087 , "label": "п" },
|
||||
{ "$": "auto_text_key", "code": 1088 , "label": "р" },
|
||||
{ "$": "auto_text_key", "code": 1086 , "label": "о" },
|
||||
{ "$": "auto_text_key", "code": 1083 , "label": "л" },
|
||||
{ "$": "auto_text_key", "code": 1076 , "label": "д" },
|
||||
{ "$": "auto_text_key", "code": 1078 , "label": "ж" }
|
||||
],
|
||||
[
|
||||
{ "$": "auto_text_key", "code": 1103 , "label": "я" },
|
||||
{ "$": "auto_text_key", "code": 1095 , "label": "ч" },
|
||||
{ "$": "auto_text_key", "code": 1089 , "label": "с" },
|
||||
{ "$": "auto_text_key", "code": 1084 , "label": "м" },
|
||||
{ "$": "auto_text_key", "code": 1080 , "label": "и" },
|
||||
{ "$": "auto_text_key", "code": 1090 , "label": "т" },
|
||||
{ "$": "auto_text_key", "code": 1073 , "label": "б" },
|
||||
{ "$": "auto_text_key", "code": 1102 , "label": "ю" }
|
||||
]
|
||||
]
|
||||
@@ -0,0 +1,16 @@
|
||||
[
|
||||
[
|
||||
{ "code": -11, "label": "shift", "type": "modifier" },
|
||||
{ "code": 0, "type": "placeholder" },
|
||||
{ "code": -7, "label": "delete", "type": "enter_editing" }
|
||||
],
|
||||
[
|
||||
{ "code": -202, "label": "view_symbols", "type": "system_gui" },
|
||||
{ "$": "auto_text_key", "code": 1092, "label": "ф", "groupId": 1 },
|
||||
{ "code": -227, "label": "language_switch", "type": "system_gui" },
|
||||
{ "code": -212, "label": "ime_ui_mode_media", "type": "system_gui" },
|
||||
{ "code": 32, "label": "space" },
|
||||
{ "$": "auto_text_key", "code": 1078, "label": "ж", "groupId": 2 },
|
||||
{ "code": 10, "label": "enter", "groupId": 3, "type": "enter_editing" }
|
||||
]
|
||||
]
|
||||
@@ -0,0 +1,16 @@
|
||||
[
|
||||
[
|
||||
{ "code": -11, "label": "shift", "type": "modifier" },
|
||||
{ "code": 0, "type": "placeholder" },
|
||||
{ "code": -7, "label": "delete", "type": "enter_editing" }
|
||||
],
|
||||
[
|
||||
{ "code": -202, "label": "view_symbols", "type": "system_gui" },
|
||||
{ "$": "auto_text_key", "code": 228, "label": "ä", "groupId": 1 },
|
||||
{ "code": -227, "label": "language_switch", "type": "system_gui" },
|
||||
{ "code": -212, "label": "ime_ui_mode_media", "type": "system_gui" },
|
||||
{ "code": 32, "label": "space" },
|
||||
{ "$": "auto_text_key", "code": 246, "label": "ö", "groupId": 2 },
|
||||
{ "code": 10, "label": "enter", "groupId": 3, "type": "enter_editing" }
|
||||
]
|
||||
]
|
||||
@@ -1,8 +1,5 @@
|
||||
[
|
||||
[
|
||||
{ "code": 1600, "label": "kashida", "popup":
|
||||
{ "main": { "code": 8204, "label": "half_space" }
|
||||
} },
|
||||
{ "code": 0, "type": "placeholder" },
|
||||
{ "code": -7, "label": "delete", "type": "enter_editing" }
|
||||
],
|
||||
|
||||
@@ -14,7 +14,6 @@
|
||||
{ "code": -212, "label": "ime_ui_mode_media", "type": "system_gui" },
|
||||
{ "code": 32, "label": "space" },
|
||||
{ "code": 8204, "label": "half_space" },
|
||||
{ "code": 1600, "label": "kashida" },
|
||||
{ "code": 46, "label": ".", "groupId": 2 },
|
||||
{ "code": 10, "label": "enter", "groupId": 3, "type": "enter_editing" }
|
||||
]
|
||||
|
||||
@@ -5,13 +5,13 @@
|
||||
],
|
||||
[
|
||||
{ "code": -202, "label": "view_symbols", "type": "system_gui" },
|
||||
{ "code": -227, "label": "language_switch", "type": "system_gui" },
|
||||
{ "code": -212, "label": "ime_ui_mode_media", "type": "system_gui" },
|
||||
{ "$": "variation_selector",
|
||||
"default": { "code": 1548, "label": "،", "groupId": 1 },
|
||||
"email": { "code": 64, "label": "@", "groupId": 1 },
|
||||
"uri": { "code": 47, "label": "/", "groupId": 1 }
|
||||
},
|
||||
{ "code": -227, "label": "language_switch", "type": "system_gui" },
|
||||
{ "code": -212, "label": "ime_ui_mode_media", "type": "system_gui" },
|
||||
{ "code": 32, "label": "space" },
|
||||
{ "code": 46, "label": ".", "groupId": 2 },
|
||||
{ "code": 10, "label": "enter", "groupId": 3, "type": "enter_editing" }
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
[
|
||||
[
|
||||
{ "code": 0, "type": "placeholder" },
|
||||
{ "code": -7, "label": "delete", "type": "enter_editing" }
|
||||
],
|
||||
[
|
||||
{ "code": -202, "label": "view_symbols", "type": "system_gui" },
|
||||
{ "$": "variation_selector",
|
||||
"default": { "code": 1548, "label": "،", "groupId": 1 },
|
||||
"email": { "code": 64, "label": "@", "groupId": 1 },
|
||||
"uri": { "code": 47, "label": "/", "groupId": 1 }
|
||||
},
|
||||
{ "code": -227, "label": "language_switch", "type": "system_gui" },
|
||||
{ "code": -212, "label": "ime_ui_mode_media", "type": "system_gui" },
|
||||
{ "code": 32, "label": "space" },
|
||||
{ "code": 46, "label": ".", "groupId": 2 },
|
||||
{ "code": 10, "label": "enter", "groupId": 3, "type": "enter_editing" }
|
||||
]
|
||||
]
|
||||
@@ -1,12 +0,0 @@
|
||||
[
|
||||
[
|
||||
{ "code": -35, "label": "clipboard_select_all", "type": "enter_editing" },
|
||||
{ "code": -31, "label": "clipboard_copy", "type": "enter_editing" },
|
||||
{ "code": -32, "label": "clipboard_cut", "type": "enter_editing" },
|
||||
{ "code": -21, "label": "arrow_left", "type": "navigation" },
|
||||
{ "code": -22, "label": "arrow_right", "type": "navigation" },
|
||||
{ "code": -33, "label": "clipboard_paste", "type": "enter_editing" },
|
||||
{ "code": -38, "label": "clipboard_clear_primary_clip", "type": "system_gui"},
|
||||
{ "code": -213, "label": "ime_ui_mode_clipboard", "type": "system_gui"}
|
||||
]
|
||||
]
|
||||
@@ -0,0 +1,48 @@
|
||||
[
|
||||
[
|
||||
{ "code": 43, "label": "+", "popup": {
|
||||
"relevant": [
|
||||
{ "code": 45, "label": "-" },
|
||||
{ "code": 215, "label": "×" },
|
||||
{ "code": 247, "label": "÷" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2535, "label": "১", "type": "numeric" },
|
||||
{ "code": 2536, "label": "২", "type": "numeric" },
|
||||
{ "code": 2537, "label": "৩", "type": "numeric" },
|
||||
{ "code": 37, "label": "%" }
|
||||
],
|
||||
[
|
||||
{ "code": 40, "label": "(", "popup": {
|
||||
"relevant": [
|
||||
{ "code": 91, "label": "[" },
|
||||
{ "code": 123, "label": "{" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2538, "label": "৪", "type": "numeric" },
|
||||
{ "code": 2539, "label": "৫", "type": "numeric" },
|
||||
{ "code": 2540, "label": "৬", "type": "numeric" },
|
||||
{ "code": 32, "label": "space" }
|
||||
],
|
||||
[
|
||||
{ "code": 41, "label": ")", "popup": {
|
||||
"relevant": [
|
||||
{ "code": 93, "label": "]" },
|
||||
{ "code": 125, "label": "}" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2541, "label": "৭", "type": "numeric" },
|
||||
{ "code": 2542, "label": "৮", "type": "numeric" },
|
||||
{ "code": 2543, "label": "৯", "type": "numeric" },
|
||||
{ "code": -7, "label": "delete", "type": "enter_editing" }
|
||||
],
|
||||
[
|
||||
{ "code": -201, "label": "view_characters", "type": "system_gui" },
|
||||
{ "code": 44, "label": "," },
|
||||
{ "code": -202, "label": "view_symbols", "type": "system_gui" },
|
||||
{ "code": 2534, "label": "০", "type": "numeric" },
|
||||
{ "code": 61, "label": "=" },
|
||||
{ "code": 46, "label": "." },
|
||||
{ "code": 10, "label": "enter", "groupId": 3, "type": "enter_editing" }
|
||||
]
|
||||
]
|
||||
@@ -3,46 +3,52 @@
|
||||
{ "code": 2535, "label": "১", "type": "numeric", "popup": {
|
||||
"main": { "code": 49, "label": "1" },
|
||||
"relevant": [
|
||||
{ "code": 8537, "label": "⅙" },
|
||||
{ "code": 8321, "label": "₁" },
|
||||
{ "code": 8528, "label": "⅐" },
|
||||
{ "code": 8539, "label": "⅛" },
|
||||
{ "code": 8529, "label": "⅑" },
|
||||
{ "code": 8530, "label": "⅒" },
|
||||
{ "code": 8543, "label": "⅟" },
|
||||
{ "code": 185, "label": "¹" },
|
||||
{ "code": 189, "label": "½" },
|
||||
{ "code": 8531, "label": "⅓" },
|
||||
{ "code": 188, "label": "¼" },
|
||||
{ "code": 8533, "label": "⅕" }
|
||||
{ "code": 8533, "label": "⅕" },
|
||||
{ "code": 8537, "label": "⅙" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2536, "label": "২", "type": "numeric", "popup": {
|
||||
"main": { "code": 50, "label": "2" },
|
||||
"relevant": [
|
||||
{ "code": 8532, "label": "⅔" },
|
||||
{ "code": 8322, "label": "₂"},
|
||||
{ "code": 178, "label": "²" },
|
||||
{ "code": 8532, "label": "⅔" },
|
||||
{ "code": 8534, "label": "⅖" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2537, "label": "৩", "type": "numeric", "popup": {
|
||||
"main": { "code": 51, "label": "3" },
|
||||
"relevant": [
|
||||
{ "code": 8535, "label": "⅗" },
|
||||
{ "code": 190, "label": "¾" },
|
||||
{ "code": 179, "label": "³" },
|
||||
{ "code": 8540, "label": "⅜" }
|
||||
{ "code": 8535, "label": "⅗" },
|
||||
{ "code": 8540, "label": "⅜" },
|
||||
{ "code": 8323, "label": "₃"},
|
||||
{ "code": 179, "label": "³" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2538, "label": "৪", "type": "numeric", "popup": {
|
||||
"main": { "code": 52, "label": "4" },
|
||||
"relevant": [
|
||||
{ "code": 8536, "label": "⅘" },
|
||||
{ "code": 8308, "label": "⁴" }
|
||||
{ "code": 8324, "label": "₄" },
|
||||
{ "code": 8308, "label": "⁴" },
|
||||
{ "code": 8536, "label": "⅘" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2539, "label": "৫", "type": "numeric", "popup": {
|
||||
"main": { "code": 53, "label": "5" },
|
||||
"relevant": [
|
||||
{ "code": 8538, "label": "⅚" },
|
||||
{ "code": 8325, "label": "₅" },
|
||||
{ "code": 8309, "label": "⁵" },
|
||||
{ "code": 8541, "label": "⅝" }
|
||||
]
|
||||
@@ -50,6 +56,7 @@
|
||||
{ "code": 2540, "label": "৬", "type": "numeric", "popup": {
|
||||
"main": { "code": 54, "label": "6" },
|
||||
"relevant": [
|
||||
{ "code": 8326, "label": "₆" },
|
||||
{ "code": 8310, "label": "⁶" }
|
||||
]
|
||||
} },
|
||||
@@ -57,27 +64,32 @@
|
||||
"main": { "code": 55, "label": "7" },
|
||||
"relevant": [
|
||||
{ "code": 8542, "label": "⅞" },
|
||||
{ "code": 8327, "label": "₇" },
|
||||
{ "code": 8311, "label": "⁷" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2542, "label": "৮", "type": "numeric", "popup": {
|
||||
"main": { "code": 56, "label": "8" },
|
||||
"relevant": [
|
||||
{ "code": 8328, "label": "₈" },
|
||||
{ "code": 8312, "label": "⁸" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2543, "label": "৯", "type": "numeric", "popup": {
|
||||
"main": { "code": 57, "label": "9" },
|
||||
"relevant": [
|
||||
{ "code": 8329, "label": "₉" },
|
||||
{ "code": 8313, "label": "⁹" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2534, "label": "০", "type": "numeric", "popup": {
|
||||
"main": { "code": 48, "label": "0" },
|
||||
"relevant": [
|
||||
{ "code": 8319, "label": "ⁿ" },
|
||||
{ "code": 8709, "label": "∅" },
|
||||
{ "code": 8304, "label": "⁰" }
|
||||
{ "code": 8319, "label": "ⁿ" },
|
||||
{ "code": 8304, "label": "⁰" },
|
||||
{ "code": 8585, "label": "↉" },
|
||||
{ "code": 8320, "label": "₀" }
|
||||
]
|
||||
} }
|
||||
]
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
{ "code": 32902, "label": "肆" },
|
||||
{ "code": 18825, "label": "䦉" },
|
||||
{ "code": 20118, "label": "亖" },
|
||||
{ "code": 65300, "label": "3" }
|
||||
{ "code": 65300, "label": "4" }
|
||||
]
|
||||
} },
|
||||
{ "code": 20116, "label": "五", "type": "numeric", "popup": {
|
||||
|
||||
@@ -3,46 +3,52 @@
|
||||
{ "code": 2407, "label": "१", "type": "numeric", "popup": {
|
||||
"main": { "code": 49, "label": "1" },
|
||||
"relevant": [
|
||||
{ "code": 8537, "label": "⅙" },
|
||||
{ "code": 8321, "label": "₁" },
|
||||
{ "code": 8528, "label": "⅐" },
|
||||
{ "code": 8539, "label": "⅛" },
|
||||
{ "code": 8529, "label": "⅑" },
|
||||
{ "code": 8530, "label": "⅒" },
|
||||
{ "code": 8543, "label": "⅟" },
|
||||
{ "code": 185, "label": "¹" },
|
||||
{ "code": 189, "label": "½" },
|
||||
{ "code": 8531, "label": "⅓" },
|
||||
{ "code": 188, "label": "¼" },
|
||||
{ "code": 8533, "label": "⅕" }
|
||||
{ "code": 8533, "label": "⅕" },
|
||||
{ "code": 8537, "label": "⅙" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2408, "label": "२", "type": "numeric", "popup": {
|
||||
"main": { "code": 50, "label": "2" },
|
||||
"relevant": [
|
||||
{ "code": 8532, "label": "⅔" },
|
||||
{ "code": 8322, "label": "₂"},
|
||||
{ "code": 178, "label": "²" },
|
||||
{ "code": 8532, "label": "⅔" },
|
||||
{ "code": 8534, "label": "⅖" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2409, "label": "३", "type": "numeric", "popup": {
|
||||
"main": { "code": 51, "label": "3" },
|
||||
"relevant": [
|
||||
{ "code": 8535, "label": "⅗" },
|
||||
{ "code": 190, "label": "¾" },
|
||||
{ "code": 179, "label": "³" },
|
||||
{ "code": 8540, "label": "⅜" }
|
||||
{ "code": 8535, "label": "⅗" },
|
||||
{ "code": 8540, "label": "⅜" },
|
||||
{ "code": 8323, "label": "₃"},
|
||||
{ "code": 179, "label": "³" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2410, "label": "४", "type": "numeric", "popup": {
|
||||
"main": { "code": 52, "label": "4" },
|
||||
"relevant": [
|
||||
{ "code": 8536, "label": "⅘" },
|
||||
{ "code": 8308, "label": "⁴" }
|
||||
{ "code": 8324, "label": "₄" },
|
||||
{ "code": 8308, "label": "⁴" },
|
||||
{ "code": 8536, "label": "⅘" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2411, "label": "५", "type": "numeric", "popup": {
|
||||
"main": { "code": 53, "label": "5" },
|
||||
"relevant": [
|
||||
{ "code": 8538, "label": "⅚" },
|
||||
{ "code": 8325, "label": "₅" },
|
||||
{ "code": 8309, "label": "⁵" },
|
||||
{ "code": 8541, "label": "⅝" }
|
||||
]
|
||||
@@ -50,6 +56,7 @@
|
||||
{ "code": 2412, "label": "६", "type": "numeric", "popup": {
|
||||
"main": { "code": 54, "label": "6" },
|
||||
"relevant": [
|
||||
{ "code": 8326, "label": "₆" },
|
||||
{ "code": 8310, "label": "⁶" }
|
||||
]
|
||||
} },
|
||||
@@ -57,27 +64,32 @@
|
||||
"main": { "code": 55, "label": "7" },
|
||||
"relevant": [
|
||||
{ "code": 8542, "label": "⅞" },
|
||||
{ "code": 8327, "label": "₇" },
|
||||
{ "code": 8311, "label": "⁷" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2414, "label": "८", "type": "numeric", "popup": {
|
||||
"main": { "code": 56, "label": "8" },
|
||||
"relevant": [
|
||||
{ "code": 8328, "label": "₈" },
|
||||
{ "code": 8312, "label": "⁸" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2415, "label": "९", "type": "numeric", "popup": {
|
||||
"main": { "code": 57, "label": "9" },
|
||||
"relevant": [
|
||||
{ "code": 8329, "label": "₉" },
|
||||
{ "code": 8313, "label": "⁹" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2406, "label": "०", "type": "numeric", "popup": {
|
||||
"main": { "code": 48, "label": "0" },
|
||||
"relevant": [
|
||||
{ "code": 8319, "label": "ⁿ" },
|
||||
{ "code": 8709, "label": "∅" },
|
||||
{ "code": 8304, "label": "⁰" }
|
||||
{ "code": 8319, "label": "ⁿ" },
|
||||
{ "code": 8304, "label": "⁰" },
|
||||
{ "code": 8585, "label": "↉" },
|
||||
{ "code": 8320, "label": "₀" }
|
||||
]
|
||||
} }
|
||||
]
|
||||
|
||||
@@ -3,46 +3,52 @@
|
||||
{ "code": 1633, "label": "١", "type": "numeric", "popup": {
|
||||
"main": { "code": 49, "label": "1" },
|
||||
"relevant": [
|
||||
{ "code": 8537, "label": "⅙" },
|
||||
{ "code": 8321, "label": "₁" },
|
||||
{ "code": 8528, "label": "⅐" },
|
||||
{ "code": 8539, "label": "⅛" },
|
||||
{ "code": 8529, "label": "⅑" },
|
||||
{ "code": 8530, "label": "⅒" },
|
||||
{ "code": 8543, "label": "⅟" },
|
||||
{ "code": 185, "label": "¹" },
|
||||
{ "code": 189, "label": "½" },
|
||||
{ "code": 8531, "label": "⅓" },
|
||||
{ "code": 188, "label": "¼" },
|
||||
{ "code": 8533, "label": "⅕" }
|
||||
{ "code": 8533, "label": "⅕" },
|
||||
{ "code": 8537, "label": "⅙" }
|
||||
]
|
||||
} },
|
||||
{ "code": 1634, "label": "٢", "type": "numeric", "popup": {
|
||||
"main": { "code": 50, "label": "2" },
|
||||
"relevant": [
|
||||
{ "code": 8532, "label": "⅔" },
|
||||
{ "code": 8322, "label": "₂"},
|
||||
{ "code": 178, "label": "²" },
|
||||
{ "code": 8532, "label": "⅔" },
|
||||
{ "code": 8534, "label": "⅖" }
|
||||
]
|
||||
} },
|
||||
{ "code": 1635, "label": "٣", "type": "numeric", "popup": {
|
||||
"main": { "code": 51, "label": "3" },
|
||||
"relevant": [
|
||||
{ "code": 8535, "label": "⅗" },
|
||||
{ "code": 190, "label": "¾" },
|
||||
{ "code": 179, "label": "³" },
|
||||
{ "code": 8540, "label": "⅜" }
|
||||
{ "code": 8535, "label": "⅗" },
|
||||
{ "code": 8540, "label": "⅜" },
|
||||
{ "code": 8323, "label": "₃"},
|
||||
{ "code": 179, "label": "³" }
|
||||
]
|
||||
} },
|
||||
{ "code": 1636, "label": "٤", "type": "numeric", "popup": {
|
||||
"main": { "code": 52, "label": "4" },
|
||||
"relevant": [
|
||||
{ "code": 8536, "label": "⅘" },
|
||||
{ "code": 8308, "label": "⁴" }
|
||||
{ "code": 8324, "label": "₄" },
|
||||
{ "code": 8308, "label": "⁴" },
|
||||
{ "code": 8536, "label": "⅘" }
|
||||
]
|
||||
} },
|
||||
{ "code": 1637, "label": "٥", "type": "numeric", "popup": {
|
||||
"main": { "code": 53, "label": "5" },
|
||||
"relevant": [
|
||||
{ "code": 8538, "label": "⅚" },
|
||||
{ "code": 8325, "label": "₅" },
|
||||
{ "code": 8309, "label": "⁵" },
|
||||
{ "code": 8541, "label": "⅝" }
|
||||
]
|
||||
@@ -50,6 +56,7 @@
|
||||
{ "code": 1638, "label": "٦", "type": "numeric", "popup": {
|
||||
"main": { "code": 54, "label": "6" },
|
||||
"relevant": [
|
||||
{ "code": 8326, "label": "₆" },
|
||||
{ "code": 8310, "label": "⁶" }
|
||||
]
|
||||
} },
|
||||
@@ -57,27 +64,32 @@
|
||||
"main": { "code": 55, "label": "7" },
|
||||
"relevant": [
|
||||
{ "code": 8542, "label": "⅞" },
|
||||
{ "code": 8327, "label": "₇" },
|
||||
{ "code": 8311, "label": "⁷" }
|
||||
]
|
||||
} },
|
||||
{ "code": 1640, "label": "٨", "type": "numeric", "popup": {
|
||||
"main": { "code": 56, "label": "8" },
|
||||
"relevant": [
|
||||
{ "code": 8328, "label": "₈" },
|
||||
{ "code": 8312, "label": "⁸" }
|
||||
]
|
||||
} },
|
||||
{ "code": 1641, "label": "٩", "type": "numeric", "popup": {
|
||||
"main": { "code": 57, "label": "9" },
|
||||
"relevant": [
|
||||
{ "code": 8329, "label": "₉" },
|
||||
{ "code": 8313, "label": "⁹" }
|
||||
]
|
||||
} },
|
||||
{ "code": 1632, "label": "٠", "type": "numeric", "popup": {
|
||||
"main": { "code": 48, "label": "0" },
|
||||
"relevant": [
|
||||
{ "code": 8319, "label": "ⁿ" },
|
||||
{ "code": 8709, "label": "∅" },
|
||||
{ "code": 8304, "label": "⁰" }
|
||||
{ "code": 8319, "label": "ⁿ" },
|
||||
{ "code": 8304, "label": "⁰" },
|
||||
{ "code": 8585, "label": "↉" },
|
||||
{ "code": 8320, "label": "₀" }
|
||||
]
|
||||
} }
|
||||
]
|
||||
|
||||
@@ -3,46 +3,52 @@
|
||||
{ "code": 2791, "label": "૧", "type": "numeric", "popup": {
|
||||
"main": { "code": 49, "label": "1" },
|
||||
"relevant": [
|
||||
{ "code": 8537, "label": "⅙" },
|
||||
{ "code": 8321, "label": "₁" },
|
||||
{ "code": 8528, "label": "⅐" },
|
||||
{ "code": 8539, "label": "⅛" },
|
||||
{ "code": 8529, "label": "⅑" },
|
||||
{ "code": 8530, "label": "⅒" },
|
||||
{ "code": 8543, "label": "⅟" },
|
||||
{ "code": 185, "label": "¹" },
|
||||
{ "code": 189, "label": "½" },
|
||||
{ "code": 8531, "label": "⅓" },
|
||||
{ "code": 188, "label": "¼" },
|
||||
{ "code": 8533, "label": "⅕" }
|
||||
{ "code": 8533, "label": "⅕" },
|
||||
{ "code": 8537, "label": "⅙" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2792, "label": "૨", "type": "numeric", "popup": {
|
||||
"main": { "code": 50, "label": "2" },
|
||||
"relevant": [
|
||||
{ "code": 8532, "label": "⅔" },
|
||||
{ "code": 8322, "label": "₂"},
|
||||
{ "code": 178, "label": "²" },
|
||||
{ "code": 8532, "label": "⅔" },
|
||||
{ "code": 8534, "label": "⅖" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2793, "label": "૩", "type": "numeric", "popup": {
|
||||
"main": { "code": 51, "label": "3" },
|
||||
"relevant": [
|
||||
{ "code": 8535, "label": "⅗" },
|
||||
{ "code": 190, "label": "¾" },
|
||||
{ "code": 179, "label": "³" },
|
||||
{ "code": 8540, "label": "⅜" }
|
||||
{ "code": 8535, "label": "⅗" },
|
||||
{ "code": 8540, "label": "⅜" },
|
||||
{ "code": 8323, "label": "₃"},
|
||||
{ "code": 179, "label": "³" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2794, "label": "૪", "type": "numeric", "popup": {
|
||||
"main": { "code": 52, "label": "4" },
|
||||
"relevant": [
|
||||
{ "code": 8536, "label": "⅘" },
|
||||
{ "code": 8308, "label": "⁴" }
|
||||
{ "code": 8324, "label": "₄" },
|
||||
{ "code": 8308, "label": "⁴" },
|
||||
{ "code": 8536, "label": "⅘" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2795, "label": "૫", "type": "numeric", "popup": {
|
||||
"main": { "code": 53, "label": "5" },
|
||||
"relevant": [
|
||||
{ "code": 8538, "label": "⅚" },
|
||||
{ "code": 8325, "label": "₅" },
|
||||
{ "code": 8309, "label": "⁵" },
|
||||
{ "code": 8541, "label": "⅝" }
|
||||
]
|
||||
@@ -50,6 +56,7 @@
|
||||
{ "code": 2796, "label": "૬", "type": "numeric", "popup": {
|
||||
"main": { "code": 54, "label": "6" },
|
||||
"relevant": [
|
||||
{ "code": 8326, "label": "₆" },
|
||||
{ "code": 8310, "label": "⁶" }
|
||||
]
|
||||
} },
|
||||
@@ -57,27 +64,32 @@
|
||||
"main": { "code": 55, "label": "7" },
|
||||
"relevant": [
|
||||
{ "code": 8542, "label": "⅞" },
|
||||
{ "code": 8327, "label": "₇" },
|
||||
{ "code": 8311, "label": "⁷" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2798, "label": "૮", "type": "numeric", "popup": {
|
||||
"main": { "code": 56, "label": "8" },
|
||||
"relevant": [
|
||||
{ "code": 8328, "label": "₈" },
|
||||
{ "code": 8312, "label": "⁸" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2799, "label": "૯", "type": "numeric", "popup": {
|
||||
"main": { "code": 57, "label": "9" },
|
||||
"relevant": [
|
||||
{ "code": 8329, "label": "₉" },
|
||||
{ "code": 8313, "label": "⁹" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2790, "label": "૦", "type": "numeric", "popup": {
|
||||
"main": { "code": 48, "label": "0" },
|
||||
"relevant": [
|
||||
{ "code": 8319, "label": "ⁿ" },
|
||||
{ "code": 8709, "label": "∅" },
|
||||
{ "code": 8304, "label": "⁰" }
|
||||
{ "code": 8319, "label": "ⁿ" },
|
||||
{ "code": 8304, "label": "⁰" },
|
||||
{ "code": 8585, "label": "↉" },
|
||||
{ "code": 8320, "label": "₀" }
|
||||
]
|
||||
} }
|
||||
]
|
||||
|
||||
@@ -3,46 +3,52 @@
|
||||
{ "code": 2663, "label": "੧", "type": "numeric", "popup": {
|
||||
"main": { "code": 49, "label": "1" },
|
||||
"relevant": [
|
||||
{ "code": 8537, "label": "⅙" },
|
||||
{ "code": 8321, "label": "₁" },
|
||||
{ "code": 8528, "label": "⅐" },
|
||||
{ "code": 8539, "label": "⅛" },
|
||||
{ "code": 8529, "label": "⅑" },
|
||||
{ "code": 8530, "label": "⅒" },
|
||||
{ "code": 8543, "label": "⅟" },
|
||||
{ "code": 185, "label": "¹" },
|
||||
{ "code": 189, "label": "½" },
|
||||
{ "code": 8531, "label": "⅓" },
|
||||
{ "code": 188, "label": "¼" },
|
||||
{ "code": 8533, "label": "⅕" }
|
||||
{ "code": 8533, "label": "⅕" },
|
||||
{ "code": 8537, "label": "⅙" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2664, "label": "੨", "type": "numeric", "popup": {
|
||||
"main": { "code": 50, "label": "2" },
|
||||
"relevant": [
|
||||
{ "code": 8532, "label": "⅔" },
|
||||
{ "code": 8322, "label": "₂"},
|
||||
{ "code": 178, "label": "²" },
|
||||
{ "code": 8532, "label": "⅔" },
|
||||
{ "code": 8534, "label": "⅖" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2665, "label": "੩", "type": "numeric", "popup": {
|
||||
"main": { "code": 51, "label": "3" },
|
||||
"relevant": [
|
||||
{ "code": 8535, "label": "⅗" },
|
||||
{ "code": 190, "label": "¾" },
|
||||
{ "code": 179, "label": "³" },
|
||||
{ "code": 8540, "label": "⅜" }
|
||||
{ "code": 8535, "label": "⅗" },
|
||||
{ "code": 8540, "label": "⅜" },
|
||||
{ "code": 8323, "label": "₃"},
|
||||
{ "code": 179, "label": "³" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2666, "label": "੪", "type": "numeric", "popup": {
|
||||
"main": { "code": 52, "label": "4" },
|
||||
"relevant": [
|
||||
{ "code": 8536, "label": "⅘" },
|
||||
{ "code": 8308, "label": "⁴" }
|
||||
{ "code": 8324, "label": "₄" },
|
||||
{ "code": 8308, "label": "⁴" },
|
||||
{ "code": 8536, "label": "⅘" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2667, "label": "੫", "type": "numeric", "popup": {
|
||||
"main": { "code": 53, "label": "5" },
|
||||
"relevant": [
|
||||
{ "code": 8538, "label": "⅚" },
|
||||
{ "code": 8325, "label": "₅" },
|
||||
{ "code": 8309, "label": "⁵" },
|
||||
{ "code": 8541, "label": "⅝" }
|
||||
]
|
||||
@@ -50,6 +56,7 @@
|
||||
{ "code": 2668, "label": "੬", "type": "numeric", "popup": {
|
||||
"main": { "code": 54, "label": "6" },
|
||||
"relevant": [
|
||||
{ "code": 8326, "label": "₆" },
|
||||
{ "code": 8310, "label": "⁶" }
|
||||
]
|
||||
} },
|
||||
@@ -57,27 +64,32 @@
|
||||
"main": { "code": 55, "label": "7" },
|
||||
"relevant": [
|
||||
{ "code": 8542, "label": "⅞" },
|
||||
{ "code": 8327, "label": "₇" },
|
||||
{ "code": 8311, "label": "⁷" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2670, "label": "੮", "type": "numeric", "popup": {
|
||||
"main": { "code": 56, "label": "8" },
|
||||
"relevant": [
|
||||
{ "code": 8328, "label": "₈" },
|
||||
{ "code": 8312, "label": "⁸" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2671, "label": "੯", "type": "numeric", "popup": {
|
||||
"main": { "code": 57, "label": "9" },
|
||||
"relevant": [
|
||||
{ "code": 8329, "label": "₉" },
|
||||
{ "code": 8313, "label": "⁹" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2662, "label": "੦", "type": "numeric", "popup": {
|
||||
"main": { "code": 48, "label": "0" },
|
||||
"relevant": [
|
||||
{ "code": 8319, "label": "ⁿ" },
|
||||
{ "code": 8709, "label": "∅" },
|
||||
{ "code": 8304, "label": "⁰" }
|
||||
{ "code": 8319, "label": "ⁿ" },
|
||||
{ "code": 8304, "label": "⁰" },
|
||||
{ "code": 8585, "label": "↉" },
|
||||
{ "code": 8320, "label": "₀" }
|
||||
]
|
||||
} }
|
||||
]
|
||||
|
||||
@@ -3,46 +3,52 @@
|
||||
{ "code": 3303, "label": "೧", "type": "numeric", "popup": {
|
||||
"main": { "code": 49, "label": "1" },
|
||||
"relevant": [
|
||||
{ "code": 8537, "label": "⅙" },
|
||||
{ "code": 8321, "label": "₁" },
|
||||
{ "code": 8528, "label": "⅐" },
|
||||
{ "code": 8539, "label": "⅛" },
|
||||
{ "code": 8529, "label": "⅑" },
|
||||
{ "code": 8530, "label": "⅒" },
|
||||
{ "code": 8543, "label": "⅟" },
|
||||
{ "code": 185, "label": "¹" },
|
||||
{ "code": 189, "label": "½" },
|
||||
{ "code": 8531, "label": "⅓" },
|
||||
{ "code": 188, "label": "¼" },
|
||||
{ "code": 8533, "label": "⅕" }
|
||||
{ "code": 8533, "label": "⅕" },
|
||||
{ "code": 8537, "label": "⅙" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3304, "label": "೨", "type": "numeric", "popup": {
|
||||
"main": { "code": 50, "label": "2" },
|
||||
"relevant": [
|
||||
{ "code": 8532, "label": "⅔" },
|
||||
{ "code": 8322, "label": "₂"},
|
||||
{ "code": 178, "label": "²" },
|
||||
{ "code": 8532, "label": "⅔" },
|
||||
{ "code": 8534, "label": "⅖" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3305, "label": "೩", "type": "numeric", "popup": {
|
||||
"main": { "code": 51, "label": "3" },
|
||||
"relevant": [
|
||||
{ "code": 8535, "label": "⅗" },
|
||||
{ "code": 190, "label": "¾" },
|
||||
{ "code": 179, "label": "³" },
|
||||
{ "code": 8540, "label": "⅜" }
|
||||
{ "code": 8535, "label": "⅗" },
|
||||
{ "code": 8540, "label": "⅜" },
|
||||
{ "code": 8323, "label": "₃"},
|
||||
{ "code": 179, "label": "³" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3306, "label": "೪", "type": "numeric", "popup": {
|
||||
"main": { "code": 52, "label": "4" },
|
||||
"relevant": [
|
||||
{ "code": 8536, "label": "⅘" },
|
||||
{ "code": 8308, "label": "⁴" }
|
||||
{ "code": 8324, "label": "₄" },
|
||||
{ "code": 8308, "label": "⁴" },
|
||||
{ "code": 8536, "label": "⅘" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3307, "label": "೫", "type": "numeric", "popup": {
|
||||
"main": { "code": 53, "label": "5" },
|
||||
"relevant": [
|
||||
{ "code": 8538, "label": "⅚" },
|
||||
{ "code": 8325, "label": "₅" },
|
||||
{ "code": 8309, "label": "⁵" },
|
||||
{ "code": 8541, "label": "⅝" }
|
||||
]
|
||||
@@ -50,6 +56,7 @@
|
||||
{ "code": 3308, "label": "೬", "type": "numeric", "popup": {
|
||||
"main": { "code": 54, "label": "6" },
|
||||
"relevant": [
|
||||
{ "code": 8326, "label": "₆" },
|
||||
{ "code": 8310, "label": "⁶" }
|
||||
]
|
||||
} },
|
||||
@@ -57,27 +64,32 @@
|
||||
"main": { "code": 55, "label": "7" },
|
||||
"relevant": [
|
||||
{ "code": 8542, "label": "⅞" },
|
||||
{ "code": 8327, "label": "₇" },
|
||||
{ "code": 8311, "label": "⁷" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3310, "label": "೮", "type": "numeric", "popup": {
|
||||
"main": { "code": 56, "label": "8" },
|
||||
"relevant": [
|
||||
{ "code": 8328, "label": "₈" },
|
||||
{ "code": 8312, "label": "⁸" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3311, "label": "೯", "type": "numeric", "popup": {
|
||||
"main": { "code": 57, "label": "9" },
|
||||
"relevant": [
|
||||
{ "code": 8329, "label": "₉" },
|
||||
{ "code": 8313, "label": "⁹" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3302, "label": "೦", "type": "numeric", "popup": {
|
||||
"main": { "code": 48, "label": "0" },
|
||||
"relevant": [
|
||||
{ "code": 8319, "label": "ⁿ" },
|
||||
{ "code": 8709, "label": "∅" },
|
||||
{ "code": 8304, "label": "⁰" }
|
||||
{ "code": 8319, "label": "ⁿ" },
|
||||
{ "code": 8304, "label": "⁰" },
|
||||
{ "code": 8585, "label": "↉" },
|
||||
{ "code": 8320, "label": "₀" }
|
||||
]
|
||||
} }
|
||||
]
|
||||
|
||||
@@ -3,46 +3,52 @@
|
||||
{ "code": 3431, "label": "൧", "type": "numeric", "popup": {
|
||||
"main": { "code": 49, "label": "1" },
|
||||
"relevant": [
|
||||
{ "code": 8537, "label": "⅙" },
|
||||
{ "code": 8321, "label": "₁" },
|
||||
{ "code": 8528, "label": "⅐" },
|
||||
{ "code": 8539, "label": "⅛" },
|
||||
{ "code": 8529, "label": "⅑" },
|
||||
{ "code": 8530, "label": "⅒" },
|
||||
{ "code": 8543, "label": "⅟" },
|
||||
{ "code": 185, "label": "¹" },
|
||||
{ "code": 189, "label": "½" },
|
||||
{ "code": 8531, "label": "⅓" },
|
||||
{ "code": 188, "label": "¼" },
|
||||
{ "code": 8533, "label": "⅕" }
|
||||
{ "code": 8533, "label": "⅕" },
|
||||
{ "code": 8537, "label": "⅙" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3432, "label": "൨", "type": "numeric", "popup": {
|
||||
"main": { "code": 50, "label": "2" },
|
||||
"relevant": [
|
||||
{ "code": 8532, "label": "⅔" },
|
||||
{ "code": 8322, "label": "₂"},
|
||||
{ "code": 178, "label": "²" },
|
||||
{ "code": 8532, "label": "⅔" },
|
||||
{ "code": 8534, "label": "⅖" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3433, "label": "൩", "type": "numeric", "popup": {
|
||||
"main": { "code": 51, "label": "3" },
|
||||
"relevant": [
|
||||
{ "code": 8535, "label": "⅗" },
|
||||
{ "code": 190, "label": "¾" },
|
||||
{ "code": 179, "label": "³" },
|
||||
{ "code": 8540, "label": "⅜" }
|
||||
{ "code": 8535, "label": "⅗" },
|
||||
{ "code": 8540, "label": "⅜" },
|
||||
{ "code": 8323, "label": "₃"},
|
||||
{ "code": 179, "label": "³" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3434, "label": "൪", "type": "numeric", "popup": {
|
||||
"main": { "code": 52, "label": "4" },
|
||||
"relevant": [
|
||||
{ "code": 8536, "label": "⅘" },
|
||||
{ "code": 8308, "label": "⁴" }
|
||||
{ "code": 8324, "label": "₄" },
|
||||
{ "code": 8308, "label": "⁴" },
|
||||
{ "code": 8536, "label": "⅘" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3435, "label": "൫", "type": "numeric", "popup": {
|
||||
"main": { "code": 53, "label": "5" },
|
||||
"relevant": [
|
||||
{ "code": 8538, "label": "⅚" },
|
||||
{ "code": 8325, "label": "₅" },
|
||||
{ "code": 8309, "label": "⁵" },
|
||||
{ "code": 8541, "label": "⅝" }
|
||||
]
|
||||
@@ -50,6 +56,7 @@
|
||||
{ "code": 3436, "label": "൬", "type": "numeric", "popup": {
|
||||
"main": { "code": 54, "label": "6" },
|
||||
"relevant": [
|
||||
{ "code": 8326, "label": "₆" },
|
||||
{ "code": 8310, "label": "⁶" }
|
||||
]
|
||||
} },
|
||||
@@ -57,27 +64,32 @@
|
||||
"main": { "code": 55, "label": "7" },
|
||||
"relevant": [
|
||||
{ "code": 8542, "label": "⅞" },
|
||||
{ "code": 8327, "label": "₇" },
|
||||
{ "code": 8311, "label": "⁷" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3438, "label": "൮", "type": "numeric", "popup": {
|
||||
"main": { "code": 56, "label": "8" },
|
||||
"relevant": [
|
||||
{ "code": 8328, "label": "₈" },
|
||||
{ "code": 8312, "label": "⁸" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3439, "label": "൯", "type": "numeric", "popup": {
|
||||
"main": { "code": 57, "label": "9" },
|
||||
"relevant": [
|
||||
{ "code": 8329, "label": "₉" },
|
||||
{ "code": 8313, "label": "⁹" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3430, "label": "൦", "type": "numeric", "popup": {
|
||||
"main": { "code": 48, "label": "0" },
|
||||
"relevant": [
|
||||
{ "code": 8319, "label": "ⁿ" },
|
||||
{ "code": 8709, "label": "∅" },
|
||||
{ "code": 8304, "label": "⁰" }
|
||||
{ "code": 8319, "label": "ⁿ" },
|
||||
{ "code": 8304, "label": "⁰" },
|
||||
{ "code": 8585, "label": "↉" },
|
||||
{ "code": 8320, "label": "₀" }
|
||||
]
|
||||
} }
|
||||
]
|
||||
|
||||
@@ -3,46 +3,52 @@
|
||||
{ "code": 2919, "label": "୧", "type": "numeric", "popup": {
|
||||
"main": { "code": 49, "label": "1" },
|
||||
"relevant": [
|
||||
{ "code": 8537, "label": "⅙" },
|
||||
{ "code": 8321, "label": "₁" },
|
||||
{ "code": 8528, "label": "⅐" },
|
||||
{ "code": 8539, "label": "⅛" },
|
||||
{ "code": 8529, "label": "⅑" },
|
||||
{ "code": 8530, "label": "⅒" },
|
||||
{ "code": 8543, "label": "⅟" },
|
||||
{ "code": 185, "label": "¹" },
|
||||
{ "code": 189, "label": "½" },
|
||||
{ "code": 8531, "label": "⅓" },
|
||||
{ "code": 188, "label": "¼" },
|
||||
{ "code": 8533, "label": "⅕" }
|
||||
{ "code": 8533, "label": "⅕" },
|
||||
{ "code": 8537, "label": "⅙" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2920, "label": "୨", "type": "numeric", "popup": {
|
||||
"main": { "code": 50, "label": "2" },
|
||||
"relevant": [
|
||||
{ "code": 8532, "label": "⅔" },
|
||||
{ "code": 8322, "label": "₂"},
|
||||
{ "code": 178, "label": "²" },
|
||||
{ "code": 8532, "label": "⅔" },
|
||||
{ "code": 8534, "label": "⅖" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2921, "label": "୩", "type": "numeric", "popup": {
|
||||
"main": { "code": 51, "label": "3" },
|
||||
"relevant": [
|
||||
{ "code": 8535, "label": "⅗" },
|
||||
{ "code": 190, "label": "¾" },
|
||||
{ "code": 179, "label": "³" },
|
||||
{ "code": 8540, "label": "⅜" }
|
||||
{ "code": 8535, "label": "⅗" },
|
||||
{ "code": 8540, "label": "⅜" },
|
||||
{ "code": 8323, "label": "₃"},
|
||||
{ "code": 179, "label": "³" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2922, "label": "୪", "type": "numeric", "popup": {
|
||||
"main": { "code": 52, "label": "4" },
|
||||
"relevant": [
|
||||
{ "code": 8536, "label": "⅘" },
|
||||
{ "code": 8308, "label": "⁴" }
|
||||
{ "code": 8324, "label": "₄" },
|
||||
{ "code": 8308, "label": "⁴" },
|
||||
{ "code": 8536, "label": "⅘" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2923, "label": "୫", "type": "numeric", "popup": {
|
||||
"main": { "code": 53, "label": "5" },
|
||||
"relevant": [
|
||||
{ "code": 8538, "label": "⅚" },
|
||||
{ "code": 8325, "label": "₅" },
|
||||
{ "code": 8309, "label": "⁵" },
|
||||
{ "code": 8541, "label": "⅝" }
|
||||
]
|
||||
@@ -50,6 +56,7 @@
|
||||
{ "code": 2924, "label": "୬", "type": "numeric", "popup": {
|
||||
"main": { "code": 54, "label": "6" },
|
||||
"relevant": [
|
||||
{ "code": 8326, "label": "₆" },
|
||||
{ "code": 8310, "label": "⁶" }
|
||||
]
|
||||
} },
|
||||
@@ -57,27 +64,32 @@
|
||||
"main": { "code": 55, "label": "7" },
|
||||
"relevant": [
|
||||
{ "code": 8542, "label": "⅞" },
|
||||
{ "code": 8327, "label": "₇" },
|
||||
{ "code": 8311, "label": "⁷" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2926, "label": "୮", "type": "numeric", "popup": {
|
||||
"main": { "code": 56, "label": "8" },
|
||||
"relevant": [
|
||||
{ "code": 8328, "label": "₈" },
|
||||
{ "code": 8312, "label": "⁸" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2927, "label": "୯", "type": "numeric", "popup": {
|
||||
"main": { "code": 57, "label": "9" },
|
||||
"relevant": [
|
||||
{ "code": 8329, "label": "₉" },
|
||||
{ "code": 8313, "label": "⁹" }
|
||||
]
|
||||
} },
|
||||
{ "code": 2918, "label": "୦", "type": "numeric", "popup": {
|
||||
"main": { "code": 48, "label": "0" },
|
||||
"relevant": [
|
||||
{ "code": 8319, "label": "ⁿ" },
|
||||
{ "code": 8709, "label": "∅" },
|
||||
{ "code": 8304, "label": "⁰" }
|
||||
{ "code": 8319, "label": "ⁿ" },
|
||||
{ "code": 8304, "label": "⁰" },
|
||||
{ "code": 8585, "label": "↉" },
|
||||
{ "code": 8320, "label": "₀" }
|
||||
]
|
||||
} }
|
||||
]
|
||||
|
||||
@@ -3,46 +3,52 @@
|
||||
{ "code": 1777, "label": "۱", "type": "numeric", "popup": {
|
||||
"main": { "code": 49, "label": "1" },
|
||||
"relevant": [
|
||||
{ "code": 8537, "label": "⅙" },
|
||||
{ "code": 8321, "label": "₁" },
|
||||
{ "code": 8528, "label": "⅐" },
|
||||
{ "code": 8539, "label": "⅛" },
|
||||
{ "code": 8529, "label": "⅑" },
|
||||
{ "code": 8530, "label": "⅒" },
|
||||
{ "code": 8543, "label": "⅟" },
|
||||
{ "code": 185, "label": "¹" },
|
||||
{ "code": 189, "label": "½" },
|
||||
{ "code": 8531, "label": "⅓" },
|
||||
{ "code": 188, "label": "¼" },
|
||||
{ "code": 8533, "label": "⅕" }
|
||||
{ "code": 8533, "label": "⅕" },
|
||||
{ "code": 8537, "label": "⅙" }
|
||||
]
|
||||
} },
|
||||
{ "code": 1778, "label": "۲", "type": "numeric", "popup": {
|
||||
"main": { "code": 50, "label": "2" },
|
||||
"relevant": [
|
||||
{ "code": 8532, "label": "⅔" },
|
||||
{ "code": 8322, "label": "₂"},
|
||||
{ "code": 178, "label": "²" },
|
||||
{ "code": 8532, "label": "⅔" },
|
||||
{ "code": 8534, "label": "⅖" }
|
||||
]
|
||||
} },
|
||||
{ "code": 1779, "label": "۳", "type": "numeric", "popup": {
|
||||
"main": { "code": 51, "label": "3" },
|
||||
"relevant": [
|
||||
{ "code": 8535, "label": "⅗" },
|
||||
{ "code": 190, "label": "¾" },
|
||||
{ "code": 179, "label": "³" },
|
||||
{ "code": 8540, "label": "⅜" }
|
||||
{ "code": 8535, "label": "⅗" },
|
||||
{ "code": 8540, "label": "⅜" },
|
||||
{ "code": 8323, "label": "₃"},
|
||||
{ "code": 179, "label": "³" }
|
||||
]
|
||||
} },
|
||||
{ "code": 1780, "label": "۴", "type": "numeric", "popup": {
|
||||
"main": { "code": 52, "label": "4" },
|
||||
"relevant": [
|
||||
{ "code": 8536, "label": "⅘" },
|
||||
{ "code": 8308, "label": "⁴" }
|
||||
{ "code": 8324, "label": "₄" },
|
||||
{ "code": 8308, "label": "⁴" },
|
||||
{ "code": 8536, "label": "⅘" }
|
||||
]
|
||||
} },
|
||||
{ "code": 1781, "label": "۵", "type": "numeric", "popup": {
|
||||
"main": { "code": 53, "label": "5" },
|
||||
"relevant": [
|
||||
{ "code": 8538, "label": "⅚" },
|
||||
{ "code": 8325, "label": "₅" },
|
||||
{ "code": 8309, "label": "⁵" },
|
||||
{ "code": 8541, "label": "⅝" }
|
||||
]
|
||||
@@ -50,6 +56,7 @@
|
||||
{ "code": 1782, "label": "۶", "type": "numeric", "popup": {
|
||||
"main": { "code": 54, "label": "6" },
|
||||
"relevant": [
|
||||
{ "code": 8326, "label": "₆" },
|
||||
{ "code": 8310, "label": "⁶" }
|
||||
]
|
||||
} },
|
||||
@@ -57,27 +64,32 @@
|
||||
"main": { "code": 55, "label": "7" },
|
||||
"relevant": [
|
||||
{ "code": 8542, "label": "⅞" },
|
||||
{ "code": 8327, "label": "₇" },
|
||||
{ "code": 8311, "label": "⁷" }
|
||||
]
|
||||
} },
|
||||
{ "code": 1784, "label": "۸", "type": "numeric", "popup": {
|
||||
"main": { "code": 56, "label": "8" },
|
||||
"relevant": [
|
||||
{ "code": 8328, "label": "₈" },
|
||||
{ "code": 8312, "label": "⁸" }
|
||||
]
|
||||
} },
|
||||
{ "code": 1785, "label": "۹", "type": "numeric", "popup": {
|
||||
"main": { "code": 57, "label": "9" },
|
||||
"relevant": [
|
||||
{ "code": 8329, "label": "₉" },
|
||||
{ "code": 8313, "label": "⁹" }
|
||||
]
|
||||
} },
|
||||
{ "code": 1776, "label": "۰", "type": "numeric", "popup": {
|
||||
"main": { "code": 48, "label": "0" },
|
||||
"relevant": [
|
||||
{ "code": 8319, "label": "ⁿ" },
|
||||
{ "code": 8709, "label": "∅" },
|
||||
{ "code": 8304, "label": "⁰" }
|
||||
{ "code": 8319, "label": "ⁿ" },
|
||||
{ "code": 8304, "label": "⁰" },
|
||||
{ "code": 8585, "label": "↉" },
|
||||
{ "code": 8320, "label": "₀" }
|
||||
]
|
||||
} }
|
||||
]
|
||||
|
||||
@@ -3,46 +3,52 @@
|
||||
{ "code": 3047, "label": "௧", "type": "numeric", "popup": {
|
||||
"main": { "code": 49, "label": "1" },
|
||||
"relevant": [
|
||||
{ "code": 8537, "label": "⅙" },
|
||||
{ "code": 8321, "label": "₁" },
|
||||
{ "code": 8528, "label": "⅐" },
|
||||
{ "code": 8539, "label": "⅛" },
|
||||
{ "code": 8529, "label": "⅑" },
|
||||
{ "code": 8530, "label": "⅒" },
|
||||
{ "code": 8543, "label": "⅟" },
|
||||
{ "code": 185, "label": "¹" },
|
||||
{ "code": 189, "label": "½" },
|
||||
{ "code": 8531, "label": "⅓" },
|
||||
{ "code": 188, "label": "¼" },
|
||||
{ "code": 8533, "label": "⅕" }
|
||||
{ "code": 8533, "label": "⅕" },
|
||||
{ "code": 8537, "label": "⅙" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3048, "label": "௨", "type": "numeric", "popup": {
|
||||
"main": { "code": 50, "label": "2" },
|
||||
"relevant": [
|
||||
{ "code": 8532, "label": "⅔" },
|
||||
{ "code": 8322, "label": "₂"},
|
||||
{ "code": 178, "label": "²" },
|
||||
{ "code": 8532, "label": "⅔" },
|
||||
{ "code": 8534, "label": "⅖" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3049, "label": "௩", "type": "numeric", "popup": {
|
||||
"main": { "code": 51, "label": "3" },
|
||||
"relevant": [
|
||||
{ "code": 8535, "label": "⅗" },
|
||||
{ "code": 190, "label": "¾" },
|
||||
{ "code": 179, "label": "³" },
|
||||
{ "code": 8540, "label": "⅜" }
|
||||
{ "code": 8535, "label": "⅗" },
|
||||
{ "code": 8540, "label": "⅜" },
|
||||
{ "code": 8323, "label": "₃"},
|
||||
{ "code": 179, "label": "³" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3050, "label": "௪", "type": "numeric", "popup": {
|
||||
"main": { "code": 52, "label": "4" },
|
||||
"relevant": [
|
||||
{ "code": 8536, "label": "⅘" },
|
||||
{ "code": 8308, "label": "⁴" }
|
||||
{ "code": 8324, "label": "₄" },
|
||||
{ "code": 8308, "label": "⁴" },
|
||||
{ "code": 8536, "label": "⅘" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3051, "label": "௫", "type": "numeric", "popup": {
|
||||
"main": { "code": 53, "label": "5" },
|
||||
"relevant": [
|
||||
{ "code": 8538, "label": "⅚" },
|
||||
{ "code": 8325, "label": "₅" },
|
||||
{ "code": 8309, "label": "⁵" },
|
||||
{ "code": 8541, "label": "⅝" }
|
||||
]
|
||||
@@ -50,6 +56,7 @@
|
||||
{ "code": 3052, "label": "௬", "type": "numeric", "popup": {
|
||||
"main": { "code": 54, "label": "6" },
|
||||
"relevant": [
|
||||
{ "code": 8326, "label": "₆" },
|
||||
{ "code": 8310, "label": "⁶" }
|
||||
]
|
||||
} },
|
||||
@@ -57,27 +64,32 @@
|
||||
"main": { "code": 55, "label": "7" },
|
||||
"relevant": [
|
||||
{ "code": 8542, "label": "⅞" },
|
||||
{ "code": 8327, "label": "₇" },
|
||||
{ "code": 8311, "label": "⁷" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3054, "label": "௮", "type": "numeric", "popup": {
|
||||
"main": { "code": 56, "label": "8" },
|
||||
"relevant": [
|
||||
{ "code": 8328, "label": "₈" },
|
||||
{ "code": 8312, "label": "⁸" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3055, "label": "௯", "type": "numeric", "popup": {
|
||||
"main": { "code": 57, "label": "9" },
|
||||
"relevant": [
|
||||
{ "code": 8329, "label": "₉" },
|
||||
{ "code": 8313, "label": "⁹" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3046, "label": "௦", "type": "numeric", "popup": {
|
||||
"main": { "code": 48, "label": "0" },
|
||||
"relevant": [
|
||||
{ "code": 8319, "label": "ⁿ" },
|
||||
{ "code": 8709, "label": "∅" },
|
||||
{ "code": 8304, "label": "⁰" }
|
||||
{ "code": 8319, "label": "ⁿ" },
|
||||
{ "code": 8304, "label": "⁰" },
|
||||
{ "code": 8585, "label": "↉" },
|
||||
{ "code": 8320, "label": "₀" }
|
||||
]
|
||||
} }
|
||||
]
|
||||
|
||||
@@ -3,46 +3,52 @@
|
||||
{ "code": 3175, "label": "౧", "type": "numeric", "popup": {
|
||||
"main": { "code": 49, "label": "1" },
|
||||
"relevant": [
|
||||
{ "code": 8537, "label": "⅙" },
|
||||
{ "code": 8321, "label": "₁" },
|
||||
{ "code": 8528, "label": "⅐" },
|
||||
{ "code": 8539, "label": "⅛" },
|
||||
{ "code": 8529, "label": "⅑" },
|
||||
{ "code": 8530, "label": "⅒" },
|
||||
{ "code": 8543, "label": "⅟" },
|
||||
{ "code": 185, "label": "¹" },
|
||||
{ "code": 189, "label": "½" },
|
||||
{ "code": 8531, "label": "⅓" },
|
||||
{ "code": 188, "label": "¼" },
|
||||
{ "code": 8533, "label": "⅕" }
|
||||
{ "code": 8533, "label": "⅕" },
|
||||
{ "code": 8537, "label": "⅙" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3176, "label": "౨", "type": "numeric", "popup": {
|
||||
"main": { "code": 50, "label": "2" },
|
||||
"relevant": [
|
||||
{ "code": 8532, "label": "⅔" },
|
||||
{ "code": 8322, "label": "₂"},
|
||||
{ "code": 178, "label": "²" },
|
||||
{ "code": 8532, "label": "⅔" },
|
||||
{ "code": 8534, "label": "⅖" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3177, "label": "౩", "type": "numeric", "popup": {
|
||||
"main": { "code": 51, "label": "3" },
|
||||
"relevant": [
|
||||
{ "code": 8535, "label": "⅗" },
|
||||
{ "code": 190, "label": "¾" },
|
||||
{ "code": 179, "label": "³" },
|
||||
{ "code": 8540, "label": "⅜" }
|
||||
{ "code": 8535, "label": "⅗" },
|
||||
{ "code": 8540, "label": "⅜" },
|
||||
{ "code": 8323, "label": "₃"},
|
||||
{ "code": 179, "label": "³" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3178, "label": "౪", "type": "numeric", "popup": {
|
||||
"main": { "code": 52, "label": "4" },
|
||||
"relevant": [
|
||||
{ "code": 8536, "label": "⅘" },
|
||||
{ "code": 8308, "label": "⁴" }
|
||||
{ "code": 8324, "label": "₄" },
|
||||
{ "code": 8308, "label": "⁴" },
|
||||
{ "code": 8536, "label": "⅘" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3179, "label": "౫", "type": "numeric", "popup": {
|
||||
"main": { "code": 53, "label": "5" },
|
||||
"relevant": [
|
||||
{ "code": 8538, "label": "⅚" },
|
||||
{ "code": 8325, "label": "₅" },
|
||||
{ "code": 8309, "label": "⁵" },
|
||||
{ "code": 8541, "label": "⅝" }
|
||||
]
|
||||
@@ -50,6 +56,7 @@
|
||||
{ "code": 3180, "label": "౬", "type": "numeric", "popup": {
|
||||
"main": { "code": 54, "label": "6" },
|
||||
"relevant": [
|
||||
{ "code": 8326, "label": "₆" },
|
||||
{ "code": 8310, "label": "⁶" }
|
||||
]
|
||||
} },
|
||||
@@ -57,27 +64,32 @@
|
||||
"main": { "code": 55, "label": "7" },
|
||||
"relevant": [
|
||||
{ "code": 8542, "label": "⅞" },
|
||||
{ "code": 8327, "label": "₇" },
|
||||
{ "code": 8311, "label": "⁷" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3182, "label": "౮", "type": "numeric", "popup": {
|
||||
"main": { "code": 56, "label": "8" },
|
||||
"relevant": [
|
||||
{ "code": 8328, "label": "₈" },
|
||||
{ "code": 8312, "label": "⁸" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3183, "label": "౯", "type": "numeric", "popup": {
|
||||
"main": { "code": 57, "label": "9" },
|
||||
"relevant": [
|
||||
{ "code": 8329, "label": "₉" },
|
||||
{ "code": 8313, "label": "⁹" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3174, "label": "౦", "type": "numeric", "popup": {
|
||||
"main": { "code": 48, "label": "0" },
|
||||
"relevant": [
|
||||
{ "code": 8319, "label": "ⁿ" },
|
||||
{ "code": 8709, "label": "∅" },
|
||||
{ "code": 8304, "label": "⁰" }
|
||||
{ "code": 8319, "label": "ⁿ" },
|
||||
{ "code": 8304, "label": "⁰" },
|
||||
{ "code": 8585, "label": "↉" },
|
||||
{ "code": 8320, "label": "₀" }
|
||||
]
|
||||
} }
|
||||
]
|
||||
|
||||
@@ -3,20 +3,23 @@
|
||||
{ "code": 3665, "label": "๑", "type": "numeric", "popup": {
|
||||
"main": { "code": 185, "label": "¹" },
|
||||
"relevant": [
|
||||
{ "code": 8537, "label": "⅙" },
|
||||
{ "code": 8321, "label": "₁" },
|
||||
{ "code": 8528, "label": "⅐" },
|
||||
{ "code": 8539, "label": "⅛" },
|
||||
{ "code": 8529, "label": "⅑" },
|
||||
{ "code": 8530, "label": "⅒" },
|
||||
{ "code": 8543, "label": "⅟" },
|
||||
{ "code": 189, "label": "½" },
|
||||
{ "code": 8531, "label": "⅓" },
|
||||
{ "code": 188, "label": "¼" },
|
||||
{ "code": 8533, "label": "⅕" }
|
||||
{ "code": 8533, "label": "⅕" },
|
||||
{ "code": 8537, "label": "⅙" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3666, "label": "๒", "type": "numeric", "popup": {
|
||||
"main": { "code": 178, "label": "²" },
|
||||
"relevant": [
|
||||
{ "code": 8322, "label": "₂"},
|
||||
{ "code": 8532, "label": "⅔" },
|
||||
{ "code": 8534, "label": "⅖" }
|
||||
]
|
||||
@@ -24,44 +27,59 @@
|
||||
{ "code": 3667, "label": "๓", "type": "numeric", "popup": {
|
||||
"main": { "code": 179, "label": "³" },
|
||||
"relevant": [
|
||||
{ "code": 8535, "label": "⅗" },
|
||||
{ "code": 8540, "label": "⅜" },
|
||||
{ "code": 8323, "label": "₃"},
|
||||
{ "code": 190, "label": "¾" },
|
||||
{ "code": 8540, "label": "⅜" }
|
||||
{ "code": 8535, "label": "⅗" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3668, "label": "๔", "type": "numeric", "popup": {
|
||||
"main": { "code": 8308, "label": "⁴" },
|
||||
"relevant": [
|
||||
{ "code": 8324, "label": "₄" },
|
||||
{ "code": 8536, "label": "⅘" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3669, "label": "๕", "type": "numeric", "popup": {
|
||||
"main": { "code": 8309, "label": "⁵" },
|
||||
"relevant": [
|
||||
{ "code": 8325, "label": "₅" },
|
||||
{ "code": 8538, "label": "⅚" },
|
||||
{ "code": 8541, "label": "⅝" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3670, "label": "๖", "type": "numeric", "popup": {
|
||||
"main": { "code": 8310, "label": "⁶" }
|
||||
"main": { "code": 8310, "label": "⁶" },
|
||||
"relevant": [
|
||||
{ "code": 8326, "label": "₆" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3671, "label": "๗", "type": "numeric", "popup": {
|
||||
"main": { "code": 8311, "label": "⁷" },
|
||||
"relevant": [
|
||||
{ "code": 8327, "label": "₇" },
|
||||
{ "code": 8542, "label": "⅞" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3672, "label": "๘", "type": "numeric", "popup": {
|
||||
"main": { "code": 8312, "label": "⁸" }
|
||||
"main": { "code": 8312, "label": "⁸" },
|
||||
"relevant": [
|
||||
{ "code": 8328, "label": "₈" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3672, "label": "๘", "type": "numeric", "popup": {
|
||||
"main": { "code": 8313, "label": "⁹" }
|
||||
{ "code": 3673, "label": "๙", "type": "numeric", "popup": {
|
||||
"main": { "code": 8313, "label": "⁹" },
|
||||
"relevant": [
|
||||
{ "code": 8329, "label": "₉" }
|
||||
]
|
||||
} },
|
||||
{ "code": 3664, "label": "๐", "type": "numeric", "popup": {
|
||||
"main": { "code": 8304, "label": "⁰" },
|
||||
"relevant": [
|
||||
{ "code": 8709, "label": "∅" },
|
||||
{ "code": 8319, "label": "ⁿ" }
|
||||
{ "code": 8319, "label": "ⁿ" },
|
||||
{ "code": 8585, "label": "↉" },
|
||||
{ "code": 8320, "label": "₀" }
|
||||
]
|
||||
} }
|
||||
]
|
||||
|
||||
@@ -3,46 +3,52 @@
|
||||
{ "code": 71905, "label": "𑣡", "type": "numeric", "popup": {
|
||||
"main": { "code": 49, "label": "1" },
|
||||
"relevant": [
|
||||
{ "code": 8537, "label": "⅙" },
|
||||
{ "code": 8321, "label": "₁" },
|
||||
{ "code": 8528, "label": "⅐" },
|
||||
{ "code": 8539, "label": "⅛" },
|
||||
{ "code": 8529, "label": "⅑" },
|
||||
{ "code": 8530, "label": "⅒" },
|
||||
{ "code": 8543, "label": "⅟" },
|
||||
{ "code": 185, "label": "¹" },
|
||||
{ "code": 189, "label": "½" },
|
||||
{ "code": 8531, "label": "⅓" },
|
||||
{ "code": 188, "label": "¼" },
|
||||
{ "code": 8533, "label": "⅕" }
|
||||
{ "code": 8533, "label": "⅕" },
|
||||
{ "code": 8537, "label": "⅙" }
|
||||
]
|
||||
} },
|
||||
{ "code": 71906, "label": "𑣢", "type": "numeric", "popup": {
|
||||
"main": { "code": 50, "label": "2" },
|
||||
"relevant": [
|
||||
{ "code": 8532, "label": "⅔" },
|
||||
{ "code": 8322, "label": "₂"},
|
||||
{ "code": 178, "label": "²" },
|
||||
{ "code": 8532, "label": "⅔" },
|
||||
{ "code": 8534, "label": "⅖" }
|
||||
]
|
||||
} },
|
||||
{ "code": 71907, "label": "𑣣", "type": "numeric", "popup": {
|
||||
"main": { "code": 51, "label": "3" },
|
||||
"relevant": [
|
||||
{ "code": 8535, "label": "⅗" },
|
||||
{ "code": 190, "label": "¾" },
|
||||
{ "code": 179, "label": "³" },
|
||||
{ "code": 8540, "label": "⅜" }
|
||||
{ "code": 8535, "label": "⅗" },
|
||||
{ "code": 8540, "label": "⅜" },
|
||||
{ "code": 8323, "label": "₃"},
|
||||
{ "code": 179, "label": "³" }
|
||||
]
|
||||
} },
|
||||
{ "code": 71908, "label": "𑣤", "type": "numeric", "popup": {
|
||||
"main": { "code": 52, "label": "4" },
|
||||
"relevant": [
|
||||
{ "code": 8536, "label": "⅘" },
|
||||
{ "code": 8308, "label": "⁴" }
|
||||
{ "code": 8324, "label": "₄" },
|
||||
{ "code": 8308, "label": "⁴" },
|
||||
{ "code": 8536, "label": "⅘" }
|
||||
]
|
||||
} },
|
||||
{ "code": 71909, "label": "𑣥", "type": "numeric", "popup": {
|
||||
"main": { "code": 53, "label": "5" },
|
||||
"relevant": [
|
||||
{ "code": 8538, "label": "⅚" },
|
||||
{ "code": 8325, "label": "₅" },
|
||||
{ "code": 8309, "label": "⁵" },
|
||||
{ "code": 8541, "label": "⅝" }
|
||||
]
|
||||
@@ -50,6 +56,7 @@
|
||||
{ "code": 71910, "label": "𑣦", "type": "numeric", "popup": {
|
||||
"main": { "code": 54, "label": "6" },
|
||||
"relevant": [
|
||||
{ "code": 8326, "label": "₆" },
|
||||
{ "code": 8310, "label": "⁶" }
|
||||
]
|
||||
} },
|
||||
@@ -57,27 +64,32 @@
|
||||
"main": { "code": 55, "label": "7" },
|
||||
"relevant": [
|
||||
{ "code": 8542, "label": "⅞" },
|
||||
{ "code": 8327, "label": "₇" },
|
||||
{ "code": 8311, "label": "⁷" }
|
||||
]
|
||||
} },
|
||||
{ "code": 71912, "label": "𑣨", "type": "numeric", "popup": {
|
||||
"main": { "code": 56, "label": "8" },
|
||||
"relevant": [
|
||||
{ "code": 8328, "label": "₈" },
|
||||
{ "code": 8312, "label": "⁸" }
|
||||
]
|
||||
} },
|
||||
{ "code": 71913, "label": "𑣩", "type": "numeric", "popup": {
|
||||
"main": { "code": 57, "label": "9" },
|
||||
"relevant": [
|
||||
{ "code": 8329, "label": "₉" },
|
||||
{ "code": 8313, "label": "⁹" }
|
||||
]
|
||||
} },
|
||||
{ "code": 71904, "label": "𑣠", "type": "numeric", "popup": {
|
||||
"main": { "code": 48, "label": "0" },
|
||||
"relevant": [
|
||||
{ "code": 8319, "label": "ⁿ" },
|
||||
{ "code": 8709, "label": "∅" },
|
||||
{ "code": 8304, "label": "⁰" }
|
||||
{ "code": 8319, "label": "ⁿ" },
|
||||
{ "code": 8304, "label": "⁰" },
|
||||
{ "code": 8585, "label": "↉" },
|
||||
{ "code": 8320, "label": "₀" }
|
||||
]
|
||||
} }
|
||||
]
|
||||
|
||||
@@ -1,68 +1,218 @@
|
||||
[
|
||||
[
|
||||
{ "code": 49, "label": "1", "type": "numeric", "popup": {
|
||||
"main": { "code": 185, "label": "¹" },
|
||||
"relevant": [
|
||||
{ "code": 8537, "label": "⅙" },
|
||||
{ "code": 8528, "label": "⅐" },
|
||||
{ "code": 8539, "label": "⅛" },
|
||||
{ "code": 8529, "label": "⅑" },
|
||||
{ "code": 8530, "label": "⅒" },
|
||||
{ "code": 189, "label": "½" },
|
||||
{ "code": 8531, "label": "⅓" },
|
||||
{ "code": 188, "label": "¼" },
|
||||
{ "code": 8533, "label": "⅕" }
|
||||
]
|
||||
} },
|
||||
{ "code": 50, "label": "2", "type": "numeric", "popup": {
|
||||
"main": { "code": 178, "label": "²" },
|
||||
"relevant": [
|
||||
{ "code": 8532, "label": "⅔" },
|
||||
{ "code": 8534, "label": "⅖" }
|
||||
]
|
||||
} },
|
||||
{ "code": 51, "label": "3", "type": "numeric", "popup": {
|
||||
"main": { "code": 179, "label": "³" },
|
||||
"relevant": [
|
||||
{ "code": 8535, "label": "⅗" },
|
||||
{ "code": 190, "label": "¾" },
|
||||
{ "code": 8540, "label": "⅜" }
|
||||
]
|
||||
} },
|
||||
{ "code": 52, "label": "4", "type": "numeric", "popup": {
|
||||
"main": { "code": 8308, "label": "⁴" },
|
||||
"relevant": [
|
||||
{ "code": 8536, "label": "⅘" }
|
||||
]
|
||||
} },
|
||||
{ "code": 53, "label": "5", "type": "numeric", "popup": {
|
||||
"main": { "code": 8309, "label": "⁵" },
|
||||
"relevant": [
|
||||
{ "code": 8538, "label": "⅚" },
|
||||
{ "code": 8541, "label": "⅝" }
|
||||
]
|
||||
} },
|
||||
{ "code": 54, "label": "6", "type": "numeric", "popup": {
|
||||
"main": { "code": 8310, "label": "⁶" }
|
||||
} },
|
||||
{ "code": 55, "label": "7", "type": "numeric", "popup": {
|
||||
"main": { "code": 8311, "label": "⁷" },
|
||||
"relevant": [
|
||||
{ "code": 8542, "label": "⅞" }
|
||||
]
|
||||
} },
|
||||
{ "code": 56, "label": "8", "type": "numeric", "popup": {
|
||||
"main": { "code": 8312, "label": "⁸" }
|
||||
} },
|
||||
{ "code": 57, "label": "9", "type": "numeric", "popup": {
|
||||
"main": { "code": 8313, "label": "⁹" }
|
||||
} },
|
||||
{ "code": 48, "label": "0", "type": "numeric", "popup": {
|
||||
"main": { "code": 8304, "label": "⁰" },
|
||||
"relevant": [
|
||||
{ "code": 8709, "label": "∅" },
|
||||
{ "code": 8319, "label": "ⁿ" }
|
||||
]
|
||||
} }
|
||||
{ "$": "shift_state_selector",
|
||||
"shiftedManual": {
|
||||
"code": 33, "label": "!", "type": "numeric", "popup": {
|
||||
"main": { "code": 161, "label": "¡" }
|
||||
}
|
||||
},
|
||||
"default": {
|
||||
"code": 49, "label": "1", "type": "numeric", "popup": {
|
||||
"main": { "code": 185, "label": "¹" },
|
||||
"relevant": [
|
||||
{ "code": 8321, "label": "₁" },
|
||||
{ "code": 8528, "label": "⅐" },
|
||||
{ "code": 8539, "label": "⅛" },
|
||||
{ "code": 8529, "label": "⅑" },
|
||||
{ "code": 8530, "label": "⅒" },
|
||||
{ "code": 8543, "label": "⅟" },
|
||||
{ "code": 189, "label": "½" },
|
||||
{ "code": 8531, "label": "⅓" },
|
||||
{ "code": 188, "label": "¼" },
|
||||
{ "code": 8533, "label": "⅕" },
|
||||
{ "code": 8537, "label": "⅙" }
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{ "$": "shift_state_selector",
|
||||
"shiftedManual": { "code": 64, "label": "@", "type": "numeric" },
|
||||
"default": {
|
||||
"code": 50, "label": "2", "type": "numeric", "popup": {
|
||||
"main": { "code": 178, "label": "²" },
|
||||
"relevant": [
|
||||
{ "code": 8322, "label": "₂"},
|
||||
{ "code": 8532, "label": "⅔" },
|
||||
{ "code": 8534, "label": "⅖" }
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{ "$": "shift_state_selector",
|
||||
"shiftedManual": {
|
||||
"code": 35, "label": "#", "type": "numeric", "popup": {
|
||||
"main": { "code": 8470, "label": "№" }
|
||||
}
|
||||
},
|
||||
"default": {
|
||||
"code": 51, "label": "3", "type": "numeric", "popup": {
|
||||
"main": { "code": 179, "label": "³" },
|
||||
"relevant": [
|
||||
{ "code": 8540, "label": "⅜" },
|
||||
{ "code": 8323, "label": "₃"},
|
||||
{ "code": 190, "label": "¾" },
|
||||
{ "code": 8535, "label": "⅗" }
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{ "$": "shift_state_selector",
|
||||
"shiftedManual": {
|
||||
"code": -801, "label": "currency_slot_1", "type": "numeric", "popup": {
|
||||
"main": { "code": -802, "label": "currency_slot_2" },
|
||||
"relevant": [
|
||||
{ "code": -806, "label": "currency_slot_6" },
|
||||
{ "code": -803, "label": "currency_slot_3" },
|
||||
{ "code": -804, "label": "currency_slot_4" },
|
||||
{ "code": -805, "label": "currency_slot_5" }
|
||||
]
|
||||
}
|
||||
},
|
||||
"default": {
|
||||
"code": 52, "label": "4", "type": "numeric", "popup": {
|
||||
"main": { "code": 8308, "label": "⁴" },
|
||||
"relevant": [
|
||||
{ "code": 8324, "label": "₄" },
|
||||
{ "code": 8536, "label": "⅘" }
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{ "$": "shift_state_selector",
|
||||
"shiftedManual": {
|
||||
"code": 37, "label": "%", "type": "numeric", "popup": {
|
||||
"main": { "code": 8240, "label": "‰" },
|
||||
"relevant": [
|
||||
{ "code": 8453, "label": "℅" }
|
||||
]
|
||||
}
|
||||
},
|
||||
"default": {
|
||||
"code": 53, "label": "5", "type": "numeric", "popup": {
|
||||
"main": { "code": 8309, "label": "⁵" },
|
||||
"relevant": [
|
||||
{ "code": 8325, "label": "₅" },
|
||||
{ "code": 8538, "label": "⅚" },
|
||||
{ "code": 8541, "label": "⅝" }
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{ "$": "shift_state_selector",
|
||||
"shiftedManual": {
|
||||
"code": 94, "label": "^", "type": "numeric", "popup": {
|
||||
"main": { "code": 8593, "label": "↑" },
|
||||
"relevant": [
|
||||
{ "code": 8592, "label": "←" },
|
||||
{ "code": 8595, "label": "↓" },
|
||||
{ "code": 8594, "label": "→" }
|
||||
]
|
||||
}
|
||||
},
|
||||
"default": {
|
||||
"code": 54, "label": "6", "type": "numeric", "popup": {
|
||||
"main": { "code": 8310, "label": "⁶" },
|
||||
"relevant": [
|
||||
{ "code": 8326, "label": "₆" }
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{ "$": "shift_state_selector",
|
||||
"shiftedManual": { "code": 38, "label": "&", "type": "numeric" },
|
||||
"default": {
|
||||
"code": 55, "label": "7", "type": "numeric", "popup": {
|
||||
"main": { "code": 8311, "label": "⁷" },
|
||||
"relevant": [
|
||||
{ "code": 8327, "label": "₇" },
|
||||
{ "code": 8542, "label": "⅞" }
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{ "$": "shift_state_selector",
|
||||
"shiftedManual": {
|
||||
"code": 42, "label": "*", "type": "numeric", "popup": {
|
||||
"main": { "code": 8224, "label": "†" },
|
||||
"relevant": [
|
||||
{ "code": 9733, "label": "★" },
|
||||
{ "code": 8225, "label": "‡" }
|
||||
]
|
||||
}
|
||||
},
|
||||
"default": {
|
||||
"code": 56, "label": "8", "type": "numeric", "popup": {
|
||||
"main": { "code": 8312, "label": "⁸" },
|
||||
"relevant": [
|
||||
{ "code": 8328, "label": "₈" }
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{ "$": "shift_state_selector",
|
||||
"shiftedManual": {
|
||||
"$": "layout_direction_selector",
|
||||
"ltr": {
|
||||
"code": 40, "label": "(", "type": "numeric", "popup": {
|
||||
"main": { "code": 60, "label": "<" },
|
||||
"relevant": [
|
||||
{ "code": 91, "label": "[" },
|
||||
{ "code": 123, "label": "{" }
|
||||
]
|
||||
}
|
||||
},
|
||||
"rtl": {
|
||||
"code": 41, "label": "(", "type": "numeric", "popup": {
|
||||
"main": { "code": 62, "label": "<" },
|
||||
"relevant": [
|
||||
{ "code": 93, "label": "[" },
|
||||
{ "code": 125, "label": "{" }
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"default": {
|
||||
"code": 57, "label": "9", "type": "numeric", "popup": {
|
||||
"main": { "code": 8313, "label": "⁹" },
|
||||
"relevant": [
|
||||
{ "code": 8329, "label": "₉" }
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{ "$": "shift_state_selector",
|
||||
"shiftedManual": {
|
||||
"$": "layout_direction_selector",
|
||||
"ltr": {
|
||||
"code": 41, "label": ")", "type": "numeric", "popup": {
|
||||
"main": { "code": 62, "label": ">" },
|
||||
"relevant": [
|
||||
{ "code": 93, "label": "]" },
|
||||
{ "code": 125, "label": "}" }
|
||||
]
|
||||
}
|
||||
},
|
||||
"rtl": {
|
||||
"code": 40, "label": ")", "type": "numeric", "popup": {
|
||||
"main": { "code": 60, "label": ">" },
|
||||
"relevant": [
|
||||
{ "code": 91, "label": "]" },
|
||||
{ "code": 123, "label": "}" }
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"default": {
|
||||
"code": 48, "label": "0", "type": "numeric", "popup": {
|
||||
"main": { "code": 8304, "label": "⁰" },
|
||||
"relevant": [
|
||||
{ "code": 8709, "label": "∅" },
|
||||
{ "code": 8319, "label": "ⁿ" },
|
||||
{ "code": 8585, "label": "↉" },
|
||||
{ "code": 8320, "label": "₀" }
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
]
|
||||
|
||||
@@ -8,15 +8,13 @@
|
||||
},
|
||||
"half": { "code": 64, "label": "@" }
|
||||
},
|
||||
{ "code": 12306, "label": "〒", "popup": {
|
||||
"main": { "code": 12320, "label": "〠" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"$": "char_width_selector",
|
||||
"full": { "code": 65283, "label": "#", "popup": {
|
||||
"main": { "code": 35, "label": "#" },
|
||||
"relevant": [
|
||||
{ "code": 12306, "label": "〒"},
|
||||
{ "code": 12320, "label": "〠" },
|
||||
{ "code": 8470, "label": "№" }
|
||||
]
|
||||
}
|
||||
@@ -24,6 +22,8 @@
|
||||
"half": { "code": 35, "label": "#", "popup": {
|
||||
"main": { "code": 65283, "label": "#" },
|
||||
"relevant": [
|
||||
{ "code": 12306, "label": "〒"},
|
||||
{ "code": 12320, "label": "〠" },
|
||||
{ "code": 8470, "label": "№" }
|
||||
]
|
||||
}
|
||||
@@ -99,14 +99,18 @@
|
||||
"full": { "code": 65291, "label": "+", "popup": {
|
||||
"main": { "code": 43, "label": "+" },
|
||||
"relevant": [
|
||||
{ "code": 177, "label": "±" }
|
||||
{ "code": 177, "label": "±" },
|
||||
{ "code": 61, "label": "=" },
|
||||
{ "code": 65309, "label": "=" }
|
||||
]
|
||||
}
|
||||
},
|
||||
"half": { "code": 43, "label": "+", "popup": {
|
||||
"main": { "code": 65291, "label": "+" },
|
||||
"relevant": [
|
||||
{ "code": 177, "label": "±" }
|
||||
{ "code": 177, "label": "±" },
|
||||
{ "code": 61, "label": "=" },
|
||||
{ "code": 65309, "label": "=" }
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -117,16 +121,20 @@
|
||||
"main": { "code": 12302, "label": "『" },
|
||||
"relevant": [
|
||||
{ "code": 12304, "label": "【" },
|
||||
{ "code": 12310, "label": "〖" }
|
||||
{ "code": 12310, "label": "〖" },
|
||||
{ "code": 65288, "label": "(" },
|
||||
{ "code": 65339, "label": "[" }
|
||||
]
|
||||
}
|
||||
},
|
||||
"half": { "code": 65378, "label": "「", "popup": {
|
||||
"main": { "code": 12301, "label": "」" },
|
||||
"main": { "code": 12300, "label": "「" },
|
||||
"relevant": [
|
||||
{ "code": 12303, "label": "』" },
|
||||
{ "code": 12302, "label": "『" },
|
||||
{ "code": 12304, "label": "【" },
|
||||
{ "code": 12310, "label": "〖" }
|
||||
{ "code": 12310, "label": "〖" },
|
||||
{ "code": 40, "label": "(" },
|
||||
{ "code": 91, "label": "[" }
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -137,7 +145,9 @@
|
||||
"main": { "code": 12303, "label": "』" },
|
||||
"relevant": [
|
||||
{ "code": 12305, "label": "】" },
|
||||
{ "code": 12311, "label": "〗" }
|
||||
{ "code": 12311, "label": "〗" },
|
||||
{ "code": 65289, "label": ")" },
|
||||
{ "code": 65341, "label": "]" }
|
||||
]
|
||||
}
|
||||
},
|
||||
@@ -146,7 +156,9 @@
|
||||
"relevant": [
|
||||
{ "code": 12303, "label": "』" },
|
||||
{ "code": 12305, "label": "】" },
|
||||
{ "code": 12311, "label": "〗" }
|
||||
{ "code": 12311, "label": "〗" },
|
||||
{ "code": 41, "label": ")" },
|
||||
{ "code": 93, "label": "]" }
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
@@ -64,7 +64,7 @@
|
||||
{ "code": 11816, "label": "⸨" },
|
||||
{ "code": 10214, "label": "⟦" },
|
||||
{ "code": 10216, "label": "⟨" },
|
||||
{ "code": 10218, "label": "⟩" },
|
||||
{ "code": 10218, "label": "⟪" },
|
||||
{ "code": 123, "label": "{" }
|
||||
]
|
||||
} },
|
||||
@@ -72,7 +72,7 @@
|
||||
"relevant": [
|
||||
{ "code": 41, "label": ")" },
|
||||
{ "code": 11817, "label": "⸩" },
|
||||
{ "code": 10215, "label": "⟦" },
|
||||
{ "code": 10215, "label": "⟧" },
|
||||
{ "code": 10217, "label": "⟩" },
|
||||
{ "code": 10219, "label": "⟫" },
|
||||
{ "code": 125, "label": "}" }
|
||||
|
||||
@@ -0,0 +1,85 @@
|
||||
[
|
||||
[
|
||||
{ "code": 43, "label": "+", "popup": {
|
||||
"main": { "code": 177, "label": "±" }
|
||||
} },
|
||||
{ "code": 215, "label": "×" },
|
||||
{ "code": 247, "label": "÷" },
|
||||
{ "code": 61, "label": "=", "popup": {
|
||||
"main": { "code": 8776, "label": "≈" },
|
||||
"relevant": [
|
||||
{ "code": 8800, "label": "≠" },
|
||||
{ "code": 8801, "label": "≡" }
|
||||
]
|
||||
} },
|
||||
{ "code": 47, "label": "/" },
|
||||
{ "code": 95, "label": "_" },
|
||||
{ "code": 60, "label": "<" },
|
||||
{ "code": 62, "label": ">" },
|
||||
{ "code": 91, "label": "[", "popup": {
|
||||
"main": { "code": 12302, "label": "『" },
|
||||
"relevant": [
|
||||
{ "code": 12300, "label": "「" },
|
||||
{ "code": 12308, "label": "〔" },
|
||||
{ "code": 12304, "label": "【" }
|
||||
]
|
||||
} },
|
||||
{ "code": 93, "label": "]", "popup": {
|
||||
"main": { "code": 12303, "label": "』" },
|
||||
"relevant": [
|
||||
{ "code": 12301, "label": "」" },
|
||||
{ "code": 12309, "label": "〕" },
|
||||
{ "code": 12305, "label": "】" }
|
||||
]
|
||||
} }
|
||||
],
|
||||
[
|
||||
{ "code": 33, "label": "!", "popup": {
|
||||
"main": { "code": 161, "label": "¡" }
|
||||
} },
|
||||
{ "code": 64, "label": "@" },
|
||||
{ "code": 35, "label": "#", "popup": {
|
||||
"main": { "code": 8470, "label": "№" }
|
||||
} },
|
||||
{ "code": -801, "label": "currency_slot_1", "popup": {
|
||||
"main": { "code": -802, "label": "currency_slot_2" },
|
||||
"relevant": [
|
||||
{ "code": -806, "label": "currency_slot_6" },
|
||||
{ "code": -803, "label": "currency_slot_3" },
|
||||
{ "code": -804, "label": "currency_slot_4" },
|
||||
{ "code": -805, "label": "currency_slot_5" }
|
||||
]
|
||||
} },
|
||||
{ "code": 37, "label": "%", "popup": {
|
||||
"main": { "code": 1642, "label": "٪" },
|
||||
"relevant": [
|
||||
{ "code": 8240, "label": "‰" }
|
||||
]
|
||||
} },
|
||||
{ "code": 94, "label": "^" },
|
||||
{ "code": 38, "label": "&" },
|
||||
{ "code": 42, "label": "*" },
|
||||
{ "code": 40, "label": "(" },
|
||||
{ "code": 41, "label": ")" }
|
||||
],
|
||||
[
|
||||
{ "code": 45, "label": "-", "popup": {
|
||||
"main": { "code": 8208, "label": "‐" },
|
||||
"relevant": [
|
||||
{ "code": 8211, "label": "–" },
|
||||
{ "code": 8212, "label": "—" }
|
||||
]
|
||||
} },
|
||||
{ "code": 39, "label": "'" },
|
||||
{ "code": 34, "label": "\"" },
|
||||
{ "code": 58, "label": ":" },
|
||||
{ "code": 59, "label": ";" },
|
||||
{ "code": 44, "label": "," },
|
||||
{ "code": 63, "label": "?", "popup": {
|
||||
"main": { "code": 191, "label": "¿" },
|
||||
"relevant": [
|
||||
{ "code": 8253, "label": "‽" }
|
||||
]
|
||||
} }
|
||||
]
|
||||
]
|
||||
@@ -54,7 +54,9 @@
|
||||
]
|
||||
} }
|
||||
},
|
||||
{ "code": 8730, "label": "√" },
|
||||
{ "code": 8730, "label": "√", "popup": {
|
||||
"main": { "code": 10003, "label": "✓" }
|
||||
} },
|
||||
{ "code": 960, "label": "π", "popup": {
|
||||
"main": { "code": 928, "label": "Π" },
|
||||
"relevant": [
|
||||
@@ -104,7 +106,7 @@
|
||||
{ "code": 61, "label": "=", "popup": {
|
||||
"main": { "code": 8800, "label": "≠" },
|
||||
"relevant": [
|
||||
{ "code": 61, "label": "=" },
|
||||
{ "code": 65309, "label": "=" },
|
||||
{ "code": 8734, "label": "∞" },
|
||||
{ "code": 8776, "label": "≈" }
|
||||
]
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
[
|
||||
[
|
||||
{ "code": 96, "label": "`" },
|
||||
{ "code": 126, "label": "~" },
|
||||
{ "code": 92, "label": "\\" },
|
||||
{ "code": 124, "label": "|" },
|
||||
{ "code": 123, "label": "{" },
|
||||
{ "code": 125, "label": "}" },
|
||||
{ "code": -802, "label": "currency_slot_2" },
|
||||
{ "code": -804, "label": "currency_slot_4" },
|
||||
{ "code": -805, "label": "currency_slot_5" },
|
||||
{ "code": -806, "label": "currency_slot_6" }
|
||||
],
|
||||
[
|
||||
{ "code": 176, "label": "°" },
|
||||
{ "code": 8226, "label": "•" },
|
||||
{ "code": 9675, "label": "○" },
|
||||
{ "code": 9679, "label": "●" },
|
||||
{ "code": 9633, "label": "□" },
|
||||
{ "code": 9632, "label": "■" },
|
||||
{ "code": 9828, "label": "♤", "popup": {
|
||||
"main": { "code": 9824, "label": "♠️" }
|
||||
} },
|
||||
{ "code": 9825, "label": "♡", "popup": {
|
||||
"main": { "code": 9829, "label": "♥️" }
|
||||
} },
|
||||
{ "code": 9671, "label": "◇", "popup": {
|
||||
"main": { "code": 9670, "label": "◆" }
|
||||
} },
|
||||
{ "code": 9831, "label": "♧", "popup": {
|
||||
"main": { "code": 9827, "label": "♣️" }
|
||||
} }
|
||||
],
|
||||
[
|
||||
{ "code": 9734, "label": "☆", "popup": {
|
||||
"main": { "code": 9733, "label": "★" }
|
||||
} },
|
||||
{ "code": 9642, "label": "▪️" },
|
||||
{ "code": 164, "label": "¤" },
|
||||
{ "code":12298, "label": "《" },
|
||||
{ "code":12299, "label": "》" },
|
||||
{ "code": 161, "label": "¡" },
|
||||
{ "code": 191, "label": "¿" }
|
||||
]
|
||||
]
|
||||
@@ -6,15 +6,28 @@
|
||||
],
|
||||
[
|
||||
{ "code": -201, "label": "view_characters", "type": "system_gui" },
|
||||
{ "code": 12296, "label": "〈", "popup": {
|
||||
"main": { "code": 12298, "label": "《" },
|
||||
"relevant": [
|
||||
{ "code": 8804, "label": "≤" },
|
||||
{ "code": 8249, "label": "‹" },
|
||||
{ "code": 10216, "label": "⟨" },
|
||||
{ "code": 65308, "label": "<" }
|
||||
]
|
||||
} },
|
||||
{ "$": "char_width_selector",
|
||||
"full": { "code": 12296, "label": "〈", "popup": {
|
||||
"main": { "code": 12298, "label": "《" },
|
||||
"relevant": [
|
||||
{ "code": 60, "label": "<" },
|
||||
{ "code": 8804, "label": "≤" },
|
||||
{ "code": 8249, "label": "‹" },
|
||||
{ "code": 10216, "label": "⟨" },
|
||||
{ "code": 65308, "label": "<" }
|
||||
]
|
||||
} },
|
||||
"half": { "code": 60, "label": "<", "popup": {
|
||||
"main": { "code": 12298, "label": "《" },
|
||||
"relevant": [
|
||||
{ "code": 12296, "label": "〈" },
|
||||
{ "code": 8804, "label": "≤" },
|
||||
{ "code": 8249, "label": "‹" },
|
||||
{ "code": 10216, "label": "⟨" },
|
||||
{ "code": 65308, "label": "<" }
|
||||
]
|
||||
} }
|
||||
},
|
||||
{ "code": -205, "label": "view_numeric_advanced", "type": "system_gui" },
|
||||
{ "code": 12288, "label": "空白" },
|
||||
{ "code": -9701, "label": "char_width_switcher", "type": "system_gui", "popup": {
|
||||
@@ -24,15 +37,28 @@
|
||||
]
|
||||
}
|
||||
},
|
||||
{ "code": 12297, "label": "〉", "popup": {
|
||||
"main": { "code": 12299, "label": "》" },
|
||||
"relevant": [
|
||||
{ "code": 62, "label": ">" },
|
||||
{ "code": 8805, "label": "≥" },
|
||||
{ "code": 10217, "label": "⟩" },
|
||||
{ "code": 65310, "label": ">" }
|
||||
]
|
||||
} },
|
||||
{ "$": "char_width_selector",
|
||||
"full": { "code": 12297, "label": "〉", "popup": {
|
||||
"main": { "code": 12299, "label": "》" },
|
||||
"relevant": [
|
||||
{ "code": 62, "label": ">" },
|
||||
{ "code": 8805, "label": "≥" },
|
||||
{ "code": 8250, "label": "›" },
|
||||
{ "code": 10217, "label": "⟩" },
|
||||
{ "code": 65310, "label": ">" }
|
||||
]
|
||||
} },
|
||||
"half": { "code": 62, "label": ">", "popup": {
|
||||
"main": { "code": 12299, "label": "》" },
|
||||
"relevant": [
|
||||
{ "code": 12297, "label": "〉" },
|
||||
{ "code": 8805, "label": "≥" },
|
||||
{ "code": 8250, "label": "›" },
|
||||
{ "code": 10217, "label": "⟩" },
|
||||
{ "code": 65310, "label": ">" }
|
||||
]
|
||||
} }
|
||||
},
|
||||
{ "code": 10, "label": "enter", "groupId": 3, "type": "enter_editing" }
|
||||
]
|
||||
]
|
||||
|
||||
@@ -8,11 +8,17 @@
|
||||
{ "code": -201, "label": "view_characters", "type": "system_gui" },
|
||||
{ "$": "char_width_selector",
|
||||
"full": { "code": 12289, "label": "、", "popup": {
|
||||
"main": { "code": 44, "label": "," }
|
||||
"main": { "code": 65292, "label": "," },
|
||||
"relevant": [
|
||||
{ "code": 44, "label": "," }
|
||||
]
|
||||
}
|
||||
},
|
||||
"half": { "code": 65380, "label": "、", "popup": {
|
||||
"main": { "code": 44, "label": "," }
|
||||
"main": { "code": 44, "label": "," },
|
||||
"relevant": [
|
||||
{ "code": 65292, "label": "," }
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
"$": "ime.extension.keyboard",
|
||||
"meta": {
|
||||
"id": "org.florisboard.localization",
|
||||
"version": "0.1.0",
|
||||
"version": "0.2.0",
|
||||
"title": "Default subtype presets / popup mappings",
|
||||
"description": "Default subptye presets and popup mappings which are always available.",
|
||||
"description": "Default subtype presets and popup mappings which are always available.",
|
||||
"maintainers": [ "patrickgold <patrick@patrickgold.dev>" ],
|
||||
"license": "apache-2.0"
|
||||
},
|
||||
@@ -13,188 +13,73 @@
|
||||
"org.florisboard.currencysets",
|
||||
"org.florisboard.layouts"
|
||||
],
|
||||
"popupMappings": [
|
||||
"punctuationRules": [
|
||||
{
|
||||
"id": "default",
|
||||
"authors": [ "patrickgold" ]
|
||||
},
|
||||
{
|
||||
"id": "ar",
|
||||
"authors": [ "HeiWiper" ]
|
||||
},
|
||||
{
|
||||
"id": "bg",
|
||||
"authors": [ "iorvethe" ]
|
||||
},
|
||||
{
|
||||
"id": "ca",
|
||||
"authors": [ "mikelloc" ]
|
||||
},
|
||||
{
|
||||
"id": "ckb",
|
||||
"authors": [ "GoRaN" ]
|
||||
},
|
||||
{
|
||||
"id": "cs",
|
||||
"authors": [ "stefan-misik" ]
|
||||
},
|
||||
{
|
||||
"id": "da",
|
||||
"authors": [ "patrickgold" ]
|
||||
},
|
||||
{
|
||||
"id": "de",
|
||||
"authors": [ "patrickgold" ]
|
||||
},
|
||||
{
|
||||
"id": "de-DE-neobone",
|
||||
"authors": [ "ostrya" ]
|
||||
},
|
||||
{
|
||||
"id": "el",
|
||||
"authors": [ "tsiflimagas" ]
|
||||
},
|
||||
{
|
||||
"id": "en",
|
||||
"authors": [ "patrickgold" ]
|
||||
},
|
||||
{
|
||||
"id": "eo",
|
||||
"authors": [ "jeremiah-miller" ]
|
||||
},
|
||||
{
|
||||
"id": "es",
|
||||
"authors": [ "patrickgold" ]
|
||||
},
|
||||
{
|
||||
"id": "fa",
|
||||
"authors": [ "PHELAT" ]
|
||||
},
|
||||
{
|
||||
"id": "fa2",
|
||||
"authors": [ "M-Koushan" ]
|
||||
},
|
||||
{
|
||||
"id": "fi",
|
||||
"authors": [ "patrickgold" ]
|
||||
},
|
||||
{
|
||||
"id": "fo",
|
||||
"authors": [ "BinFlush" ]
|
||||
},
|
||||
{
|
||||
"id": "fr",
|
||||
"authors": [ "patrickgold" ]
|
||||
},
|
||||
{
|
||||
"id": "hr",
|
||||
"authors": [ "hedidnothingwrong" ]
|
||||
},
|
||||
{
|
||||
"id": "hu",
|
||||
"authors": [ "zoli111, gabik65" ]
|
||||
},
|
||||
{
|
||||
"id": "hy",
|
||||
"authors": [ "PJTSearch" ]
|
||||
},
|
||||
{
|
||||
"id": "is",
|
||||
"authors": [ "patrickgold" ]
|
||||
},
|
||||
{
|
||||
"id": "it",
|
||||
"authors": [ "patrickgold" ]
|
||||
},
|
||||
{
|
||||
"id": "iw",
|
||||
"authors": [ "Antony" ]
|
||||
},
|
||||
{
|
||||
"id": "ja-JP-jis",
|
||||
"authors": [ "waelwindows" ]
|
||||
},
|
||||
{
|
||||
"id": "ko",
|
||||
"authors": [ "patrickgold", "Hayleia" ]
|
||||
},
|
||||
{
|
||||
"id": "ku",
|
||||
"authors": [ "GoRaN" ]
|
||||
},
|
||||
{
|
||||
"id": "lt",
|
||||
"authors": [ "patrickgold" ]
|
||||
},
|
||||
{
|
||||
"id": "lv",
|
||||
"authors": [ "patrickgold", "eandersons" ]
|
||||
},
|
||||
{
|
||||
"id": "nb",
|
||||
"authors": [ "patrickgold" ]
|
||||
},
|
||||
{
|
||||
"id": "nn",
|
||||
"authors": [ "patrickgold" ]
|
||||
},
|
||||
{
|
||||
"id": "pl",
|
||||
"authors": [ "Mikołaj Biel" ]
|
||||
},
|
||||
{
|
||||
"id": "pt",
|
||||
"authors": [ "patrickgold" ]
|
||||
},
|
||||
{
|
||||
"id": "pt-BR",
|
||||
"authors": [ "rickym7" ]
|
||||
},
|
||||
{
|
||||
"id": "ro",
|
||||
"authors": [ "bertin0" ]
|
||||
},
|
||||
{
|
||||
"id": "ru",
|
||||
"authors": [ "williamtheaker", "33kk" ]
|
||||
},
|
||||
{
|
||||
"id": "rue",
|
||||
"authors": [ "svvvst" ]
|
||||
},
|
||||
{
|
||||
"id": "sk",
|
||||
"authors": [ "stefan-misik", "majso" ]
|
||||
},
|
||||
{
|
||||
"id": "sr",
|
||||
"authors": [ "hedidnothingwrong", "GrbavaCigla" ]
|
||||
},
|
||||
{
|
||||
"id": "sv",
|
||||
"authors": [ "patrickgold" ]
|
||||
},
|
||||
{
|
||||
"id": "tr",
|
||||
"authors": [ "kisekinopureya", "patrickgold", "dvrnynr" ]
|
||||
},
|
||||
{
|
||||
"id": "uk",
|
||||
"authors": [ "williamtheaker", "33kk", "honsiorovskyi" ]
|
||||
},
|
||||
{
|
||||
"id": "uk-cyr-ext",
|
||||
"authors": [ "williamtheaker", "33kk", "honsiorovskyi" ]
|
||||
},
|
||||
{
|
||||
"id": "ur-PK",
|
||||
"authors": [ "mubashir-rehman", "mirfatif" ]
|
||||
},
|
||||
{
|
||||
"id": "vi-VN",
|
||||
"authors": [ "patrickgold", "Hayleia" ]
|
||||
"label": "Default",
|
||||
"symbolsPrecedingAutoSpace": ".,?‽!\"&%)]}»",
|
||||
"symbolsFollowingAutoSpace": "",
|
||||
"symbolsPrecedingPhantomSpace": ".,;:?‽!&%)]}»©®™",
|
||||
"symbolsFollowingPhantomSpace": "¿⸘¡([{",
|
||||
"symbolsTerminatingSentence": ".?‽!"
|
||||
}
|
||||
],
|
||||
"popupMappings": [
|
||||
{ "id": "default", "authors": [ "patrickgold" ] },
|
||||
{ "id": "ar", "authors": [ "HeiWiper" ] },
|
||||
{ "id": "ast", "authors": [ "Softastur" ] },
|
||||
{ "id": "bg", "authors": [ "iorvethe" ] },
|
||||
{ "id": "bn-BD", "authors": [ "iamrasel" ] },
|
||||
{ "id": "ca", "authors": [ "mikelloc" ] },
|
||||
{ "id": "cjk", "authors": [ "moonbeamcelery" ] },
|
||||
{ "id": "ckb", "authors": [ "GoRaN" ] },
|
||||
{ "id": "cs", "authors": [ "stefan-misik" ] },
|
||||
{ "id": "da", "authors": [ "patrickgold" ] },
|
||||
{ "id": "de", "authors": [ "patrickgold" ] },
|
||||
{ "id": "de-DE-neobone", "authors": [ "ostrya" ] },
|
||||
{ "id": "el", "authors": [ "tsiflimagas" ] },
|
||||
{ "id": "en", "authors": [ "patrickgold" ] },
|
||||
{ "id": "eo", "authors": [ "jeremiah-miller" ] },
|
||||
{ "id": "es", "authors": [ "patrickgold" ] },
|
||||
{ "id": "et", "authors": [ "OneSheepy" ] },
|
||||
{ "id": "fa", "authors": [ "PHELAT" ] },
|
||||
{ "id": "fa2", "authors": [ "M-Koushan" ] },
|
||||
{ "id": "fa3", "authors": [ "SaeID-Rz" ] },
|
||||
{ "id": "fi", "authors": [ "patrickgold" ] },
|
||||
{ "id": "fo", "authors": [ "BinFlush" ] },
|
||||
{ "id": "fr", "authors": [ "patrickgold" ] },
|
||||
{ "id": "hi-IN", "authors": [ "npnpatidar" ] },
|
||||
{ "id": "hr", "authors": [ "hedidnothingwrong" ] },
|
||||
{ "id": "hu", "authors": [ "zoli111, gabik65" ] },
|
||||
{ "id": "hy", "authors": [ "PJTSearch" ] },
|
||||
{ "id": "id", "authors": [ "Linerly" ] },
|
||||
{ "id": "is", "authors": [ "patrickgold" ] },
|
||||
{ "id": "it", "authors": [ "patrickgold" ] },
|
||||
{ "id": "iw", "authors": [ "Antony" ] },
|
||||
{ "id": "ja-JP-jis", "authors": [ "waelwindows" ] },
|
||||
{ "id": "kab", "authors": [ "yanis867" ] },
|
||||
{ "id": "ko", "authors": [ "patrickgold", "Hayleia" ] },
|
||||
{ "id": "ku", "authors": [ "GoRaN" ] },
|
||||
{ "id": "lt", "authors": [ "patrickgold" ] },
|
||||
{ "id": "lv", "authors": [ "patrickgold", "eandersons" ] },
|
||||
{ "id": "nb", "authors": [ "patrickgold" ] },
|
||||
{ "id": "nn", "authors": [ "patrickgold" ] },
|
||||
{ "id": "pl", "authors": [ "Mikołaj Biel" ] },
|
||||
{ "id": "pt", "authors": [ "patrickgold" ] },
|
||||
{ "id": "pt-BR", "authors": [ "rickym7" ] },
|
||||
{ "id": "ro", "authors": [ "bertin0" ] },
|
||||
{ "id": "ru", "authors": [ "williamtheaker", "33kk" ] },
|
||||
{ "id": "rue", "authors": [ "svvvst" ] },
|
||||
{ "id": "sk", "authors": [ "stefan-misik", "majso" ] },
|
||||
{ "id": "sr", "authors": [ "hedidnothingwrong", "GrbavaCigla" ] },
|
||||
{ "id": "sv", "authors": [ "patrickgold" ] },
|
||||
{ "id": "tr", "authors": [ "kisekinopureya", "patrickgold", "dvrnynr" ] },
|
||||
{ "id": "udm", "authors": [ "vorgoron" ] },
|
||||
{ "id": "uk", "authors": [ "williamtheaker", "33kk", "honsiorovskyi" ] },
|
||||
{ "id": "uk-cyr-ext", "authors": [ "williamtheaker", "33kk", "honsiorovskyi" ] },
|
||||
{ "id": "ur-PK", "authors": [ "mubashir-rehman", "mirfatif" ] },
|
||||
{ "id": "vi-VN", "authors": [ "patrickgold", "Hayleia" ] }
|
||||
],
|
||||
"subtypePresets": [
|
||||
{
|
||||
"languageTag": "en-US",
|
||||
@@ -405,6 +290,15 @@
|
||||
"characters": "org.florisboard.layouts:danish"
|
||||
}
|
||||
},
|
||||
{
|
||||
"languageTag": "id",
|
||||
"composer": "org.florisboard.composers:appender",
|
||||
"currencySet": "org.florisboard.currencysets:dollar",
|
||||
"popupMapping": "org.florisboard.localization:id",
|
||||
"preferred": {
|
||||
"characters": "org.florisboard.layouts:qwerty"
|
||||
}
|
||||
},
|
||||
{
|
||||
"languageTag": "is-IS",
|
||||
"composer": "org.florisboard.composers:appender",
|
||||
@@ -447,6 +341,18 @@
|
||||
"numericRow": "org.florisboard.layouts:persian"
|
||||
}
|
||||
},
|
||||
{
|
||||
"languageTag": "fa-FA",
|
||||
"composer": "org.florisboard.composers:appender",
|
||||
"currencySet": "org.florisboard.currencysets:rial",
|
||||
"popupMapping": "org.florisboard.localization:fa3",
|
||||
"preferred": {
|
||||
"characters": "org.florisboard.layouts:persian3",
|
||||
"symbols": "org.florisboard.layouts:persian",
|
||||
"symbols2": "org.florisboard.layouts:persian",
|
||||
"numericRow": "org.florisboard.layouts:western_arabic"
|
||||
}
|
||||
},
|
||||
{
|
||||
"languageTag": "ar",
|
||||
"composer": "org.florisboard.composers:appender",
|
||||
@@ -495,6 +401,16 @@
|
||||
"characters": "org.florisboard.layouts:qwertz"
|
||||
}
|
||||
},
|
||||
{
|
||||
"languageTag": "hy",
|
||||
"composer": "org.florisboard.composers:appender",
|
||||
"currencySet": "org.florisboard.currencysets:armenian_dram",
|
||||
"popupMapping": "org.florisboard.localization:hy",
|
||||
"preferred": {
|
||||
"characters": "org.florisboard.layouts:armenian_alt_phonetic",
|
||||
"symbols": "org.florisboard.layouts:armenian"
|
||||
}
|
||||
},
|
||||
{
|
||||
"languageTag": "hy",
|
||||
"composer": "org.florisboard.composers:appender",
|
||||
@@ -617,6 +533,15 @@
|
||||
"characters": "org.florisboard.layouts:serbian_cyrillic"
|
||||
}
|
||||
},
|
||||
{
|
||||
"languageTag": "sl-SI",
|
||||
"composer": "org.florisboard.composers:appender",
|
||||
"currencySet": "org.florisboard.currencysets:euro",
|
||||
"popupMapping": "org.florisboard.localization:sl-SI",
|
||||
"preferred": {
|
||||
"characters": "org.florisboard.layouts:slovenian"
|
||||
}
|
||||
},
|
||||
{
|
||||
"languageTag": "lv-LV",
|
||||
"composer": "org.florisboard.composers:appender",
|
||||
@@ -713,7 +638,7 @@
|
||||
},
|
||||
{
|
||||
"languageTag": "vi-VN",
|
||||
"composer": "org.florisboard.composers:basic-telex",
|
||||
"composer": "org.florisboard.composers:telex",
|
||||
"currencySet": "org.florisboard.currencysets:vietnamese_dong",
|
||||
"popupMapping": "org.florisboard.localization:vi-VN",
|
||||
"preferred": {
|
||||
@@ -737,6 +662,15 @@
|
||||
"numericRow": "org.florisboard.layouts:warang_citi"
|
||||
}
|
||||
},
|
||||
{
|
||||
"languageTag": "udm",
|
||||
"composer": "org.florisboard.composers:appender",
|
||||
"currencySet": "org.florisboard.currencysets:russian_ruble",
|
||||
"popupMapping": "org.florisboard.localization:udm",
|
||||
"preferred": {
|
||||
"characters": "org.florisboard.layouts:udmurt_extended"
|
||||
}
|
||||
},
|
||||
{
|
||||
"languageTag": "ur-PK",
|
||||
"composer": "org.florisboard.composers:appender",
|
||||
@@ -745,6 +679,68 @@
|
||||
"preferred": {
|
||||
"characters": "org.florisboard.layouts:urdu_phonetic"
|
||||
}
|
||||
},
|
||||
{
|
||||
"languageTag": "zh-CN-zhengma",
|
||||
"composer": "org.florisboard.composers:appender",
|
||||
"nlpProviders": {
|
||||
"spelling": "org.florisboard.nlp.providers.han.shape",
|
||||
"suggestion": "org.florisboard.nlp.providers.han.shape"
|
||||
},
|
||||
"currencySet": "org.florisboard.currencysets:yen",
|
||||
"popupMapping": "org.florisboard.localization:cjk",
|
||||
"preferred": {
|
||||
"characters": "org.florisboard.layouts:qwerty",
|
||||
"symbols": "org.florisboard.layouts:cjk",
|
||||
"symbols2": "org.florisboard.layouts:cjk"
|
||||
}
|
||||
},
|
||||
{
|
||||
"languageTag": "bn-BD",
|
||||
"composer": "org.florisboard.composers:appender",
|
||||
"currencySet": "org.florisboard.currencysets:bangladeshi_taka",
|
||||
"popupMapping": "org.florisboard.localization:bn-BD",
|
||||
"preferred": {
|
||||
"characters": "org.florisboard.layouts:bengali_bd",
|
||||
"numericRow": "org.florisboard.layouts:bengali",
|
||||
"numericAdvanced": "org.florisboard.layouts:bengali"
|
||||
}
|
||||
},
|
||||
{
|
||||
"languageTag": "hi-IN",
|
||||
"composer": "org.florisboard.composers:appender",
|
||||
"currencySet": "org.florisboard.currencysets:indian_rupee",
|
||||
"popupMapping": "org.florisboard.localization:hi-IN",
|
||||
"preferred": {
|
||||
"characters": "org.florisboard.layouts:hindi_in",
|
||||
"numericRow": "org.florisboard.layouts:devanagari"
|
||||
}
|
||||
},
|
||||
{
|
||||
"languageTag": "ast",
|
||||
"composer": "org.florisboard.composers:appender",
|
||||
"currencySet": "org.florisboard.currencysets:euro",
|
||||
"popupMapping": "org.florisboard.localization:ast",
|
||||
"preferred": {
|
||||
"characters": "org.florisboard.layouts:qwerty"
|
||||
}
|
||||
},
|
||||
{
|
||||
"languageTag": "ta-lk",
|
||||
"composer": "org.florisboard.composers:appender",
|
||||
"currencySet": "org.florisboard.currencysets:indian_rupee",
|
||||
"preferred": {
|
||||
"characters": "org.florisboard.layouts:tamil"
|
||||
}
|
||||
},
|
||||
{
|
||||
"languageTag": "kab",
|
||||
"composer": "org.florisboard.composers:appender",
|
||||
"currencySet": "org.florisboard.currencysets:euro",
|
||||
"popupMapping": "org.florisboard.localization:kab",
|
||||
"preferred": {
|
||||
"characters": "org.florisboard.layouts:qwerty"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -0,0 +1,115 @@
|
||||
{
|
||||
"all": {
|
||||
"a": {
|
||||
"main": { "$": "auto_text_key", "code": 225, "label": "á" },
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 170, "label": "ª" },
|
||||
{ "$": "auto_text_key", "code": 229, "label": "å" },
|
||||
{ "$": "auto_text_key", "code": 261, "label": "ą" },
|
||||
{ "$": "auto_text_key", "code": 230, "label": "æ" },
|
||||
{ "$": "auto_text_key", "code": 257, "label": "ā" },
|
||||
{ "$": "auto_text_key", "code": 224, "label": "à" },
|
||||
{ "$": "auto_text_key", "code": 228, "label": "ä" },
|
||||
{ "$": "auto_text_key", "code": 226, "label": "â" },
|
||||
{ "$": "auto_text_key", "code": 227, "label": "ã" }
|
||||
]
|
||||
},
|
||||
"c": {
|
||||
"main": { "$": "auto_text_key", "code": 231, "label": "ç" },
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 269, "label": "č" },
|
||||
{ "$": "auto_text_key", "code": 263, "label": "ć" }
|
||||
]
|
||||
},
|
||||
"e": {
|
||||
"main": { "$": "auto_text_key", "code": 233, "label": "é" },
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 7497, "label": "ᵉ" },
|
||||
{ "$": "auto_text_key", "code": 275, "label": "ē" },
|
||||
{ "$": "auto_text_key", "code": 281, "label": "ę" },
|
||||
{ "$": "auto_text_key", "code": 279, "label": "ė" },
|
||||
{ "$": "auto_text_key", "code": 235, "label": "ë" },
|
||||
{ "$": "auto_text_key", "code": 232, "label": "è" },
|
||||
{ "$": "auto_text_key", "code": 234, "label": "ê" }
|
||||
]
|
||||
},
|
||||
"h": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 7717, "label": "ḥ" }
|
||||
]
|
||||
},
|
||||
"i": {
|
||||
"main": { "$": "auto_text_key", "code": 237, "label": "í" },
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 299, "label": "ī" },
|
||||
{ "$": "auto_text_key", "code": 238, "label": "î" },
|
||||
{ "$": "auto_text_key", "code": 303, "label": "į" },
|
||||
{ "$": "auto_text_key", "code": 236, "label": "ì" },
|
||||
{ "$": "auto_text_key", "code": 239, "label": "ï" }
|
||||
]
|
||||
},
|
||||
"l": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 7735, "label": "ḷ" }
|
||||
]
|
||||
},
|
||||
"n": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 241, "label": "ñ" },
|
||||
{ "$": "auto_text_key", "code": 324, "label": "ń" }
|
||||
]
|
||||
},
|
||||
"o": {
|
||||
"main": { "$": "auto_text_key", "code": 243, "label": "ó" },
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 186, "label": "º" },
|
||||
{ "$": "auto_text_key", "code": 333, "label": "ō" },
|
||||
{ "$": "auto_text_key", "code": 248, "label": "ø" },
|
||||
{ "$": "auto_text_key", "code": 339, "label": "œ" },
|
||||
{ "$": "auto_text_key", "code": 245, "label": "õ" },
|
||||
{ "$": "auto_text_key", "code": 244, "label": "ô" },
|
||||
{ "$": "auto_text_key", "code": 246, "label": "ö" },
|
||||
{ "$": "auto_text_key", "code": 242, "label": "ò" }
|
||||
]
|
||||
},
|
||||
"r": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 691, "label": "ʳ" }
|
||||
]
|
||||
},
|
||||
"s": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 223, "label": "ß" }
|
||||
]
|
||||
},
|
||||
"u": {
|
||||
"main": { "$": "auto_text_key", "code": 250, "label": "ú" },
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 7512, "label": "ᵘ" },
|
||||
{ "$": "auto_text_key", "code": 363, "label": "ū" },
|
||||
{ "$": "auto_text_key", "code": 249, "label": "ù" },
|
||||
{ "$": "auto_text_key", "code": 252, "label": "ü" },
|
||||
{ "$": "auto_text_key", "code": 251, "label": "û" }
|
||||
]
|
||||
},
|
||||
"~right": {
|
||||
"main": { "code": 58, "label": ":" },
|
||||
"relevant": [
|
||||
{ "code": 59, "label": ";" },
|
||||
{ "code": 8230, "label": "…" }
|
||||
]
|
||||
}
|
||||
},
|
||||
"uri": {
|
||||
"~right": {
|
||||
"main": { "code": -255, "label": ".com" },
|
||||
"relevant": [
|
||||
{ "code": -255, "label": ".org" },
|
||||
{ "code": -255, "label": ".es" },
|
||||
{ "code": -255, "label": ".com.es" },
|
||||
{ "code": -255, "label": ".net" }
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,153 @@
|
||||
{
|
||||
"all": {
|
||||
"ঙ": {
|
||||
"main": { "$": "auto_text_key", "code": 2434, "label": "ং" }
|
||||
},
|
||||
"য": {
|
||||
"main": { "$": "auto_text_key", "code": 2527, "label": "য়" }
|
||||
},
|
||||
"ড": {
|
||||
"main": { "$": "auto_text_key", "code": 2466, "label": "ঢ" }
|
||||
},
|
||||
"প": {
|
||||
"main": { "$": "auto_text_key", "code": 2475, "label": "ফ" }
|
||||
},
|
||||
"ট": {
|
||||
"main": { "$": "auto_text_key", "code": 2464, "label": "ঠ" }
|
||||
},
|
||||
"চ": {
|
||||
"main": { "$": "auto_text_key", "code": 2459, "label": "ছ" }
|
||||
},
|
||||
"জ": {
|
||||
"main": { "$": "auto_text_key", "code": 2461, "label": "ঝ" }
|
||||
},
|
||||
"হ": {
|
||||
"main": { "$": "auto_text_key", "code": 2462, "label": "ঞ" }
|
||||
},
|
||||
"গ": {
|
||||
"main": { "$": "auto_text_key", "code": 2456, "label": "ঘ" }
|
||||
},
|
||||
"ড়": {
|
||||
"main": { "$": "auto_text_key", "code": 2525, "label": "ঢ়" }
|
||||
},
|
||||
"ৃ": {
|
||||
"main": { "$": "auto_text_key", "code": 2443, "label": "ঋ" }
|
||||
},
|
||||
"ু": {
|
||||
"main": { "$": "auto_text_key", "code": 2441, "label": "উ" }
|
||||
},
|
||||
"ি": {
|
||||
"main": { "$": "auto_text_key", "code": 2439, "label": "ই" }
|
||||
},
|
||||
"া": {
|
||||
"main": { "$": "auto_text_key", "code": 2438, "label": "আ" },
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 2437, "label": "অ" }
|
||||
]
|
||||
},
|
||||
"্": {
|
||||
"main": { "$": "auto_text_key", "code": 2433, "label": "ঁ" }
|
||||
},
|
||||
"ব": {
|
||||
"main": { "$": "auto_text_key", "code": 2477, "label": "ভ" }
|
||||
},
|
||||
"ক": {
|
||||
"main": { "$": "auto_text_key", "code": 2454, "label": "খ" }
|
||||
},
|
||||
"ত": {
|
||||
"main": { "$": "auto_text_key", "code": 2469, "label": "থ" },
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 2510, "label": "ৎ" }
|
||||
]
|
||||
},
|
||||
"দ": {
|
||||
"main": { "$": "auto_text_key", "code": 2471, "label": "ধ" }
|
||||
},
|
||||
"ো": {
|
||||
"main": { "$": "auto_text_key", "code": 2451, "label": "ও" }
|
||||
},
|
||||
"ে": {
|
||||
"main": { "$": "auto_text_key", "code": 2447, "label": "এ" }
|
||||
},
|
||||
"র": {
|
||||
"main": { "$": "auto_text_key", "code": 2482, "label": "ল" },
|
||||
"relevant": [
|
||||
{ "code": -255, "label": "র্য" }
|
||||
]
|
||||
},
|
||||
"ন": {
|
||||
"main": { "$": "auto_text_key", "code": 2467, "label": "ণ" }
|
||||
},
|
||||
"স": {
|
||||
"main": { "$": "auto_text_key", "code": 2487, "label": "ষ" }
|
||||
},
|
||||
"ম": {
|
||||
"main": { "$": "auto_text_key", "code": 2486, "label": "শ" }
|
||||
},
|
||||
"ূ": {
|
||||
"main": { "$": "auto_text_key", "code": 2442, "label": "ঊ" }
|
||||
},
|
||||
"ী": {
|
||||
"main": { "$": "auto_text_key", "code": 2440, "label": "ঈ" }
|
||||
},
|
||||
"ঁ": {
|
||||
"main": { "$": "auto_text_key", "code": 2492, "label": "়" },
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 2500, "label": "ৄ" },
|
||||
{ "$": "auto_text_key", "code": 2530, "label": "ৢ" },
|
||||
{ "$": "auto_text_key", "code": 2531, "label": "ৣ" },
|
||||
{ "$": "auto_text_key", "code": 2528, "label": "ৠ" },
|
||||
{ "$": "auto_text_key", "code": 2444, "label": "ঌ" },
|
||||
{ "$": "auto_text_key", "code": 2529, "label": "ৡ" },
|
||||
{ "$": "auto_text_key", "code": 2544, "label": "ৰ" },
|
||||
{ "$": "auto_text_key", "code": 2545, "label": "ৱ" },
|
||||
{ "$": "auto_text_key", "code": 2493, "label": "ঽ" },
|
||||
{ "$": "auto_text_key", "code": 2554, "label": "৺" },
|
||||
{ "$": "auto_text_key", "code": 2519, "label": "ৗ" }
|
||||
]
|
||||
},
|
||||
"ৌ": {
|
||||
"main": { "$": "auto_text_key", "code": 2452, "label": "ঔ" }
|
||||
},
|
||||
"ৈ": {
|
||||
"main": { "$": "auto_text_key", "code": 2448, "label": "ঐ" }
|
||||
},
|
||||
"~right": {
|
||||
"main": { "code": 2404, "label": "।" },
|
||||
"relevant": [
|
||||
{ "code": 37, "label": "%" },
|
||||
{ "code": 43, "label": "+" },
|
||||
{ "code": 45, "label": "-" },
|
||||
{ "code": 58, "label": ":" },
|
||||
{ "code": 59, "label": ";" },
|
||||
{ "code": 47, "label": "/" },
|
||||
{ "$": "layout_direction_selector",
|
||||
"ltr": { "code": 40, "label": "(" },
|
||||
"rtl": { "code": 41, "label": "(" }
|
||||
},
|
||||
{ "$": "layout_direction_selector",
|
||||
"ltr": { "code": 41, "label": ")" },
|
||||
"rtl": { "code": 40, "label": ")" }
|
||||
},
|
||||
{ "code": 64, "label": "@" },
|
||||
{ "code": 35, "label": "#" },
|
||||
{ "code": 8205, "label": ">⁞<" },
|
||||
{ "code": 8204, "label": "<⁞>" },
|
||||
{ "code": 33, "label": "!" },
|
||||
{ "code": 63, "label": "?" },
|
||||
{ "code": 2405, "label": "॥" }
|
||||
]
|
||||
}
|
||||
},
|
||||
"uri": {
|
||||
"~right": {
|
||||
"main": { "code": -255, "label": ".com" },
|
||||
"relevant": [
|
||||
{ "code": -255, "label": ".org" },
|
||||
{ "code": -255, "label": ".com.bd" },
|
||||
{ "code": -255, "label": ".bd" },
|
||||
{ "code": -255, "label": ".net" }
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,117 @@
|
||||
{
|
||||
"all": {
|
||||
"a": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 257, "label": "ā" },
|
||||
{ "$": "auto_text_key", "code": 225, "label": "á" },
|
||||
{ "$": "auto_text_key", "code": 462, "label": "ǎ" },
|
||||
{ "$": "auto_text_key", "code": 224, "label": "à" },
|
||||
{ "$": "auto_text_key", "code": 230, "label": "æ" },
|
||||
{ "$": "auto_text_key", "code": 227, "label": "ã" },
|
||||
{ "$": "auto_text_key", "code": 229, "label": "å" },
|
||||
{ "$": "auto_text_key", "code": 226, "label": "â" },
|
||||
{ "$": "auto_text_key", "code": 228, "label": "ä" }
|
||||
]
|
||||
},
|
||||
"c": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 231, "label": "ç" }
|
||||
]
|
||||
},
|
||||
"e": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 275, "label": "ē" },
|
||||
{ "$": "auto_text_key", "code": 233, "label": "é" },
|
||||
{ "$": "auto_text_key", "code": 283, "label": "ě" },
|
||||
{ "$": "auto_text_key", "code": 232, "label": "è" },
|
||||
{ "$": "auto_text_key", "code": 234, "label": "ê" },
|
||||
{ "$": "auto_text_key", "code": 235, "label": "ë" }
|
||||
]
|
||||
},
|
||||
"i": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 299, "label": "ī" },
|
||||
{ "$": "auto_text_key", "code": 237, "label": "í" },
|
||||
{ "$": "auto_text_key", "code": 464, "label": "ǐ" },
|
||||
{ "$": "auto_text_key", "code": 236, "label": "ì" },
|
||||
{ "$": "auto_text_key", "code": 239, "label": "ï" },
|
||||
{ "$": "auto_text_key", "code": 238, "label": "î" }
|
||||
]
|
||||
},
|
||||
"n": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 241, "label": "ñ" },
|
||||
{ "$": "auto_text_key", "code": 324, "label": "ń" }
|
||||
]
|
||||
},
|
||||
"o": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 333, "label": "ō" },
|
||||
{ "$": "auto_text_key", "code": 243, "label": "ó" },
|
||||
{ "$": "auto_text_key", "code": 466, "label": "ǒ" },
|
||||
{ "$": "auto_text_key", "code": 242, "label": "ò" },
|
||||
{ "$": "auto_text_key", "code": 245, "label": "õ" },
|
||||
{ "$": "auto_text_key", "code": 339, "label": "œ" },
|
||||
{ "$": "auto_text_key", "code": 248, "label": "ø" },
|
||||
{ "$": "auto_text_key", "code": 246, "label": "ö" },
|
||||
{ "$": "auto_text_key", "code": 244, "label": "ô" }
|
||||
]
|
||||
},
|
||||
"s": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 223, "label": "ß" }
|
||||
]
|
||||
},
|
||||
"u": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 363, "label": "ū" },
|
||||
{ "$": "auto_text_key", "code": 250, "label": "ú" },
|
||||
{ "$": "auto_text_key", "code": 468, "label": "ǔ" },
|
||||
{ "$": "auto_text_key", "code": 249, "label": "ù" },
|
||||
{ "$": "auto_text_key", "code": 252, "label": "ü" },
|
||||
{ "$": "auto_text_key", "code": 470, "label": "ǖ" },
|
||||
{ "$": "auto_text_key", "code": 472, "label": "ǘ" },
|
||||
{ "$": "auto_text_key", "code": 474, "label": "ǚ" },
|
||||
{ "$": "auto_text_key", "code": 476, "label": "ǜ" },
|
||||
{ "$": "auto_text_key", "code": 251, "label": "û" }
|
||||
]
|
||||
},
|
||||
"~right": {
|
||||
"main": { "code": 44, "label": "," },
|
||||
"relevant": [
|
||||
{ "code": 38, "label": "&" },
|
||||
{ "code": 37, "label": "%" },
|
||||
{ "code": 43, "label": "+" },
|
||||
{ "code": 34, "label": "\"" },
|
||||
{ "code": 45, "label": "-" },
|
||||
{ "code": 58, "label": ":" },
|
||||
{ "code": 39, "label": "'" },
|
||||
{ "code": 64, "label": "@" },
|
||||
{ "code": 59, "label": ";" },
|
||||
{ "code": 47, "label": "/" },
|
||||
{ "$": "layout_direction_selector",
|
||||
"ltr": { "code": 40, "label": "(" },
|
||||
"rtl": { "code": 41, "label": "(" }
|
||||
},
|
||||
{ "$": "layout_direction_selector",
|
||||
"ltr": { "code": 41, "label": ")" },
|
||||
"rtl": { "code": 40, "label": ")" }
|
||||
},
|
||||
{ "code": 35, "label": "#" },
|
||||
{ "code": 33, "label": "!" },
|
||||
{ "code": 63, "label": "?" }
|
||||
]
|
||||
}
|
||||
},
|
||||
"uri": {
|
||||
"~right": {
|
||||
"main": { "code": -255, "label": ".com" },
|
||||
"relevant": [
|
||||
{ "code": -255, "label": ".gov" },
|
||||
{ "code": -255, "label": ".edu" },
|
||||
{ "code": -255, "label": ".org" },
|
||||
{ "code": -255, "label": ".net" }
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -11,16 +11,18 @@
|
||||
]
|
||||
},
|
||||
"ی": {
|
||||
"main": { "code": 1610, "label": "ي" },
|
||||
"relevant": [
|
||||
{ "code": 1746, "label": "ے" },
|
||||
{ "code": 1741, "label": "ۍ" },
|
||||
{ "code": 1744, "label": "ې" },
|
||||
{ "code": 1610, "label": "ي" },
|
||||
{ "code": 1597, "label": "ؽ" }
|
||||
{ "code": 1744, "label": "ې" }
|
||||
]
|
||||
},
|
||||
|
||||
|
||||
"ێ": {
|
||||
"main": { "code": 1597, "label": "ؽ" }
|
||||
},
|
||||
|
||||
"ﺋ": {
|
||||
"relevant": [
|
||||
{ "code": 65163, "label": "ﺋ" },
|
||||
@@ -118,19 +120,23 @@
|
||||
"~right": {
|
||||
"main": { "code": 1567, "label": "؟" },
|
||||
"relevant": [
|
||||
{ "code": 64, "label": "@" },
|
||||
{ "code": 35, "label": "#" },
|
||||
{ "code": 40, "label": "(" },
|
||||
{ "code": 41, "label": ")" },
|
||||
{ "code": 171, "label": "«" },
|
||||
{ "code": 187, "label": "»" },
|
||||
{ "code": 60, "label": "<" },
|
||||
{ "code": 62, "label": ">" },
|
||||
{ "code": 1642, "label": "٪" },
|
||||
{ "code": 35, "label": "#" },
|
||||
{ "code": 42, "label": "*" },
|
||||
{ "code": 1563, "label": "؛" },
|
||||
{ "code": 59, "label": ";" },
|
||||
{ "code": 58, "label": ":" },
|
||||
{ "code": 44, "label": "," },
|
||||
{ "code": 1549, "label": "؍" },
|
||||
{ "code": 45, "label": "-" },
|
||||
{ "code": 95, "label": "_" },
|
||||
{ "code": 1600, "label": "▬" },
|
||||
{ "code": 33, "label": "!" },
|
||||
{ "code": 1548, "label": "،" }
|
||||
{ "code": 1563, "label": "؛" },
|
||||
{ "code": 58, "label": ":" },
|
||||
{ "code": 1549, "label": "؍" },
|
||||
{ "code": 1643, "label": "٫" },
|
||||
{ "code": 1548, "label": "،" },
|
||||
{ "code": 33, "label": "!" }
|
||||
]
|
||||
}
|
||||
},
|
||||
|
||||
@@ -2,41 +2,74 @@
|
||||
"all": {
|
||||
"α": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 940, "label": "ά" }
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 940, "label": "ά" },
|
||||
"upper": { "code": 902, "label": "Ά" }
|
||||
}
|
||||
]
|
||||
},
|
||||
"ε": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 941, "label": "έ" }
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 941, "label": "έ" },
|
||||
"upper": { "code": 904, "label": "Έ" }
|
||||
}
|
||||
]
|
||||
},
|
||||
"η": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 942, "label": "ή" }
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 942, "label": "ή" },
|
||||
"upper": { "code": 905, "label": "Ή" }
|
||||
}
|
||||
]
|
||||
},
|
||||
"ι": {
|
||||
"main": { "$": "auto_text_key", "code": 943, "label": "ί" },
|
||||
"main": { "$": "case_selector",
|
||||
"lower": { "code": 943, "label": "ί" },
|
||||
"upper": { "code": 906, "label": "Ί" }
|
||||
},
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 912, "label": "ΐ" },
|
||||
{ "$": "auto_text_key", "code": 970, "label": "ϊ" }
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 912, "label": "ΐ" },
|
||||
"upper": { "$": "multi_text_key", "codePoints": [921, 776, 769], "label": "Ϊ́" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 970, "label": "ϊ" },
|
||||
"upper": { "code": 938, "label": "Ϊ" }
|
||||
}
|
||||
]
|
||||
},
|
||||
"ο": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 972, "label": "ό" }
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 972, "label": "ό" },
|
||||
"upper": { "code": 908, "label": "Ό" }
|
||||
}
|
||||
]
|
||||
},
|
||||
"υ": {
|
||||
"main": { "$": "auto_text_key", "code": 973, "label": "ύ" },
|
||||
"main": { "$": "case_selector",
|
||||
"lower": { "code": 973, "label": "ύ" },
|
||||
"upper": { "code": 910, "label": "Ύ" }
|
||||
},
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 944, "label": "ΰ" },
|
||||
{ "$": "auto_text_key", "code": 971, "label": "ϋ" }
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 944, "label": "ΰ" },
|
||||
"upper": { "$": "multi_text_key", "codePoints": [933, 776, 769], "label": "Ϋ́" }
|
||||
},
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 971, "label": "ϋ" },
|
||||
"upper": { "code": 939, "label": "Ϋ" }
|
||||
}
|
||||
]
|
||||
},
|
||||
"ω": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 974, "label": "ώ" }
|
||||
{ "$": "case_selector",
|
||||
"lower": { "code": 974, "label": "ώ" },
|
||||
"upper": { "code": 911, "label": "Ώ" }
|
||||
}
|
||||
]
|
||||
},
|
||||
"~right": {
|
||||
|
||||
@@ -0,0 +1,120 @@
|
||||
{
|
||||
"all": {
|
||||
"a": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 228, "label": "ä" },
|
||||
{ "$": "auto_text_key", "code": 225, "label": "á" },
|
||||
{ "$": "auto_text_key", "code": 226, "label": "â" },
|
||||
{ "$": "auto_text_key", "code": 227, "label": "ã" },
|
||||
{ "$": "auto_text_key", "code": 257, "label": "ā" },
|
||||
{ "$": "auto_text_key", "code": 229, "label": "å" },
|
||||
{ "$": "auto_text_key", "code": 230, "label": "æ" },
|
||||
{ "$": "auto_text_key", "code": 224, "label": "à" }
|
||||
]
|
||||
},
|
||||
"e": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 233, "label": "é" },
|
||||
{ "$": "auto_text_key", "code": 275, "label": "ē" },
|
||||
{ "$": "auto_text_key", "code": 281, "label": "ę" },
|
||||
{ "$": "auto_text_key", "code": 279, "label": "ė" },
|
||||
{ "$": "auto_text_key", "code": 232, "label": "è" },
|
||||
{ "$": "auto_text_key", "code": 235, "label": "ë" },
|
||||
{ "$": "auto_text_key", "code": 234, "label": "ê" }
|
||||
]
|
||||
},
|
||||
"i": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 237, "label": "í" },
|
||||
{ "$": "auto_text_key", "code": 299, "label": "ī" },
|
||||
{ "$": "auto_text_key", "code": 236, "label": "ì" },
|
||||
{ "$": "auto_text_key", "code": 303, "label": "į" },
|
||||
{ "$": "auto_text_key", "code": 238, "label": "î" },
|
||||
{ "$": "auto_text_key", "code": 239, "label": "ï" }
|
||||
]
|
||||
},
|
||||
"o": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 246, "label": "ö" },
|
||||
{ "$": "auto_text_key", "code": 333, "label": "ō" },
|
||||
{ "$": "auto_text_key", "code": 339, "label": "œ" },
|
||||
{ "$": "auto_text_key", "code": 243, "label": "ó" },
|
||||
{ "$": "auto_text_key", "code": 245, "label": "õ" },
|
||||
{ "$": "auto_text_key", "code": 242, "label": "ò" },
|
||||
{ "$": "auto_text_key", "code": 244, "label": "ô" },
|
||||
{ "$": "auto_text_key", "code": 248, "label": "ø" }
|
||||
]
|
||||
},
|
||||
"s": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 353, "label": "š" },
|
||||
{ "$": "auto_text_key", "code": 223, "label": "ß" },
|
||||
{ "$": "auto_text_key", "code": 347, "label": "ś" }
|
||||
]
|
||||
},
|
||||
"u": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 252, "label": "ü" },
|
||||
{ "$": "auto_text_key", "code": 363, "label": "ū" },
|
||||
{ "$": "auto_text_key", "code": 251, "label": "û" },
|
||||
{ "$": "auto_text_key", "code": 250, "label": "ú" },
|
||||
{ "$": "auto_text_key", "code": 249, "label": "ù" }
|
||||
]
|
||||
},
|
||||
"z": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 382, "label": "ž" },
|
||||
{ "$": "auto_text_key", "code": 380, "label": "ż" },
|
||||
{ "$": "auto_text_key", "code": 378, "label": "ź" }
|
||||
]
|
||||
},
|
||||
"ä": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 230, "label": "æ" }
|
||||
]
|
||||
},
|
||||
"ö": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 248, "label": "ø" }
|
||||
]
|
||||
},
|
||||
"~right": {
|
||||
"main": { "code": 44, "label": "," },
|
||||
"relevant": [
|
||||
{ "code": 38, "label": "&" },
|
||||
{ "code": 37, "label": "%" },
|
||||
{ "code": 43, "label": "+" },
|
||||
{ "code": 34, "label": "\"" },
|
||||
{ "code": 45, "label": "-" },
|
||||
{ "code": 58, "label": ":" },
|
||||
{ "code": 39, "label": "'" },
|
||||
{ "code": 64, "label": "@" },
|
||||
{ "code": 59, "label": ";" },
|
||||
{ "code": 47, "label": "/" },
|
||||
{ "$": "layout_direction_selector",
|
||||
"ltr": { "code": 40, "label": "(" },
|
||||
"rtl": { "code": 41, "label": "(" }
|
||||
},
|
||||
{ "$": "layout_direction_selector",
|
||||
"ltr": { "code": 41, "label": ")" },
|
||||
"rtl": { "code": 40, "label": ")" }
|
||||
},
|
||||
{ "code": 35, "label": "#" },
|
||||
{ "code": 33, "label": "!" },
|
||||
{ "code": 63, "label": "?" }
|
||||
]
|
||||
}
|
||||
},
|
||||
"uri": {
|
||||
"~right": {
|
||||
"main": { "code": -255, "label": ".com" },
|
||||
"relevant": [
|
||||
{ "code": -255, "label": ".gov" },
|
||||
{ "code": -255, "label": ".edu" },
|
||||
{ "code": -255, "label": ".org" },
|
||||
{ "code": -255, "label": ".net" },
|
||||
{ "code": -255, "label": ".ee" }
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -30,6 +30,7 @@
|
||||
},
|
||||
"ک": {
|
||||
"relevant": [
|
||||
{ "code": 1603, "label": "ك" },
|
||||
{ "code": 1706, "label": "ڪ"}
|
||||
]
|
||||
},
|
||||
|
||||
@@ -30,12 +30,12 @@
|
||||
]
|
||||
},
|
||||
"ا": {
|
||||
"main": { "code": 1570, "label": "آ"},
|
||||
"relevant": [
|
||||
{ "code": 1649, "label": "ٱ" },
|
||||
{ "code": 1569, "label": "ء" },
|
||||
{ "code": 1571, "label": "أ" },
|
||||
{ "code": 1573, "label": "إ" },
|
||||
{ "code": 1570, "label": "آ" }
|
||||
{ "code": 1573, "label": "إ" }
|
||||
]
|
||||
},
|
||||
"ه": {
|
||||
|
||||
@@ -0,0 +1,69 @@
|
||||
{
|
||||
"all": {
|
||||
"ی": {
|
||||
"main": { "code": 1574, "label": "ئ" },
|
||||
"relevant": [
|
||||
{ "code": 1610, "label": "ي" },
|
||||
{ "code": 1746, "label": "ے" }
|
||||
]
|
||||
},
|
||||
"ا": {
|
||||
"main": { "code": 1570, "label": "آ" },
|
||||
"relevant": [
|
||||
{ "code": 1649, "label": "ٱ" },
|
||||
{ "code": 1569, "label": "ء" },
|
||||
{ "code": 1571, "label": "أ" },
|
||||
{ "code": 1573, "label": "إ" }
|
||||
]
|
||||
},
|
||||
"ه": {
|
||||
"relevant": [
|
||||
{ "code": 1729, "label": "ہ" },
|
||||
{ "code": 1728, "label": "ۀ" },
|
||||
{ "code": 1726, "label": "ھ" }
|
||||
]
|
||||
},
|
||||
"ت": {
|
||||
"relevant": [
|
||||
{ "code": 1577, "label": "ة" }
|
||||
]
|
||||
},
|
||||
"ک": {
|
||||
"relevant": [
|
||||
{ "code": 1706, "label": "ڪ"}
|
||||
]
|
||||
},
|
||||
"ز": {
|
||||
"relevant": [
|
||||
{ "code": 1688, "label": "ژ" }
|
||||
]
|
||||
},
|
||||
"و": {
|
||||
"relevant": [
|
||||
{ "code": 1572, "label": "ؤ" }
|
||||
]
|
||||
},
|
||||
"~right": {
|
||||
"main": { "code": 1611, "label": "ً" },
|
||||
"relevant": [
|
||||
{ "code": 1615, "label": "ُ" },
|
||||
{ "code": 1616, "label": "ِ" },
|
||||
{ "code": 1614, "label": "َ" },
|
||||
{ "code": 1617, "label": "ّ" },
|
||||
{ "code": 1620, "label": "ٔ" }
|
||||
]
|
||||
}
|
||||
},
|
||||
"uri": {
|
||||
"~right": {
|
||||
"main": { "code": -255, "label": ".ir"},
|
||||
"relevant": [
|
||||
{ "code": -255, "label": ".gov" },
|
||||
{ "code": -255, "label": ".org" },
|
||||
{ "code": -255, "label": ".edu" },
|
||||
{ "code": -255, "label": ".com" },
|
||||
{ "code": -255, "label": ".net" }
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,173 @@
|
||||
{
|
||||
"all": {
|
||||
"क": {
|
||||
"main": { "$": "auto_text_key", "code": 2392, "label": "क़" },
|
||||
"relevant": [{ "$": "auto_text_key", "code": 2393, "label": "ख़" }]
|
||||
},
|
||||
"ग": {
|
||||
"main": { "$": "auto_text_key", "code": 2394, "label": "ग़" },
|
||||
"relevant": [{ "$": "auto_text_key", "code": 2427, "label": "ॻ" }]
|
||||
},
|
||||
"च": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 2385, "label": " ॑" },
|
||||
{ "$": "auto_text_key", "code": 2386, "label": " ॒" }
|
||||
]
|
||||
},
|
||||
"ज": {
|
||||
"main": { "$": "auto_text_key", "code": 2395, "label": "ज़" },
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 2428, "label": "ॼ" },
|
||||
{ "$": "auto_text_key", "code": 2425, "label": "ॹ" }
|
||||
]
|
||||
},
|
||||
"ड": {
|
||||
"main": { "$": "auto_text_key", "code": 2396, "label": "ड़" },
|
||||
"relevant": [{ "$": "auto_text_key", "code": 2397, "label": "ढ़" }]
|
||||
},
|
||||
"त": {
|
||||
"main": { "$": "multi_text_key", "codePoints": [2340, 2381, 2352], "label": "त्र" }
|
||||
},
|
||||
"द": {
|
||||
"main": { "$": "auto_text_key", "code": 2396, "label": "ड़" },
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 2430, "label": "ॾ" },
|
||||
{ "$": "auto_text_key", "code": 2397, "label": "ढ़" },
|
||||
{ "$": "auto_text_key", "code": 2424, "label": "ॸ" }
|
||||
]
|
||||
},
|
||||
"न": {
|
||||
"main": { "$": "auto_text_key", "code": 2329, "label": "ङ" },
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 2345, "label": "ऩ" },
|
||||
{ "$": "auto_text_key", "code": 2334, "label": "ञ" }
|
||||
]
|
||||
},
|
||||
"फ": {
|
||||
"main": { "$": "auto_text_key", "code": 2398, "label": "फ़" }
|
||||
},
|
||||
"ब": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 2431, "label": "ॿ" },
|
||||
{ "$": "auto_text_key", "code": 2365, "label": "ऽ" },
|
||||
{ "$": "auto_text_key", "code": 2416, "label": "॰" }
|
||||
]
|
||||
},
|
||||
"म": {
|
||||
"main": { "$": "auto_text_key", "code": 2305, "label": "ँ" },
|
||||
"relevant": [{ "$": "auto_text_key", "code": 2304, "label": "ऀ" }]
|
||||
},
|
||||
"य": {
|
||||
"main": { "$": "auto_text_key", "code": 2426, "label": "ॺ" }
|
||||
},
|
||||
"र": {
|
||||
"main": { "$": "auto_text_key", "code": 2315, "label": "ऋ" },
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 2400, "label": "ॠ" },
|
||||
{ "$": "auto_text_key", "code": 2372, "label": "ॄ" },
|
||||
{ "$": "auto_text_key", "code": 2353, "label": "ऱ" }
|
||||
]
|
||||
},
|
||||
"ल": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 2402, "label": "ॢ" },
|
||||
{ "$": "auto_text_key", "code": 2403, "label": "ॣ" },
|
||||
{ "$": "auto_text_key", "code": 2316, "label": "ऌ" },
|
||||
{ "$": "auto_text_key", "code": 2401, "label": "ॡ" },
|
||||
{ "$": "auto_text_key", "code": 2356, "label": "ऴ" }
|
||||
]
|
||||
},
|
||||
"व": {
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 2387, "label": " ॓" },
|
||||
{ "$": "auto_text_key", "code": 2388, "label": " ॔" }
|
||||
]
|
||||
},
|
||||
"स": {
|
||||
"main": { "$": "multi_text_key", "codePoints": [2358, 2381, 2352], "label": "श्र" },
|
||||
"relevant": [{ "$": "auto_text_key", "code": 2359, "label": "ष" }]
|
||||
},
|
||||
"ा": {
|
||||
"main": { "$": "auto_text_key", "code": 2310, "label": "आ" },
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 2373, "label": "ॅ" },
|
||||
{ "$": "auto_text_key", "code": 2418, "label": "ॲ" },
|
||||
{ "$": "auto_text_key", "code": 2308, "label": "ऄ" }
|
||||
]
|
||||
},
|
||||
"ि": {
|
||||
"main": { "$": "auto_text_key", "code": 2311, "label": "इ" },
|
||||
"relevant": [{ "$": "auto_text_key", "code": 2312, "label": "ई" }]
|
||||
},
|
||||
"ु": {
|
||||
"main": { "$": "auto_text_key", "code": 2313, "label": "उ" },
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 2422, "label": "ॶ" },
|
||||
{ "$": "auto_text_key", "code": 2423, "label": "ॷ" },
|
||||
{ "$": "auto_text_key", "code": 2390, "label": " ॖ" },
|
||||
{ "$": "auto_text_key", "code": 2314, "label": "ऊ" },
|
||||
{ "$": "auto_text_key", "code": 2391, "label": " ॗ" }
|
||||
]
|
||||
},
|
||||
"े": {
|
||||
"main": { "$": "auto_text_key", "code": 2319, "label": "ए" },
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 2317, "label": "ऍ" },
|
||||
{ "$": "auto_text_key", "code": 2318, "label": "ऎ" },
|
||||
{ "$": "auto_text_key", "code": 2374, "label": " ॆ" },
|
||||
{ "$": "auto_text_key", "code": 2320, "label": "ऐ" },
|
||||
{ "$": "auto_text_key", "code": 2382, "label": " ॎ" },
|
||||
{ "$": "auto_text_key", "code": 2389, "label": " ॕ" }
|
||||
]
|
||||
},
|
||||
"ो": {
|
||||
"main": { "$": "auto_text_key", "code": 2323, "label": "ओ" },
|
||||
"relevant": [
|
||||
{ "$": "auto_text_key", "code": 2322, "label": "ऒ" },
|
||||
{ "$": "auto_text_key", "code": 2378, "label": " ॊ" },
|
||||
{ "$": "auto_text_key", "code": 2383, "label": " ॏ" },
|
||||
{ "$": "auto_text_key", "code": 2421, "label": "ॵ" },
|
||||
{ "$": "auto_text_key", "code": 2384, "label": "ॐ" },
|
||||
{ "$": "auto_text_key", "code": 2377, "label": "ॉ" },
|
||||
{ "$": "auto_text_key", "code": 2419, "label": "ॳ" },
|
||||
{ "$": "auto_text_key", "code": 2420, "label": "ॴ" },
|
||||
{ "$": "auto_text_key", "code": 2362, "label": " ऺ" },
|
||||
{ "$": "auto_text_key", "code": 2363, "label": " ऻ" },
|
||||
{ "$": "auto_text_key", "code": 2324, "label": "औ" },
|
||||
{ "$": "auto_text_key", "code": 2321, "label": "ऑ" }
|
||||
]
|
||||
},
|
||||
|
||||
"~right": {
|
||||
"main": { "code": 2404, "label": "।" },
|
||||
"relevant": [
|
||||
{ "code": 37, "label": "%" },
|
||||
{ "code": 43, "label": "+" },
|
||||
{ "code": 45, "label": "-" },
|
||||
{ "code": 58, "label": ":" },
|
||||
{ "code": 59, "label": ";" },
|
||||
{ "code": 47, "label": "/" },
|
||||
{ "$": "layout_direction_selector", "ltr": { "code": 40, "label": "(" }, "rtl": { "code": 41, "label": "(" } },
|
||||
{ "$": "layout_direction_selector", "ltr": { "code": 41, "label": ")" }, "rtl": { "code": 40, "label": ")" } },
|
||||
{ "code": 8205, "label": ">⁞<" },
|
||||
{ "code": 8204, "label": "<⁞>" },
|
||||
{ "code": 2417, "label": "ॱ" },
|
||||
{ "code": 2429, "label": "ॽ" },
|
||||
{ "code": 33, "label": "!" },
|
||||
{ "code": 63, "label": "?" },
|
||||
{ "code": 2405, "label": "॥" }
|
||||
]
|
||||
}
|
||||
},
|
||||
"uri": {
|
||||
"~right": {
|
||||
"main": { "code": -255, "label": ".com" },
|
||||
"relevant": [
|
||||
{ "code": -255, "label": ".org" },
|
||||
{ "code": -255, "label": ".net" },
|
||||
{ "code": -255, "label": ".in" },
|
||||
{ "code": -255, "label": ".co.in" }
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user