42fa47459c
Promote ComposeKeyData.java
2025-07-02 00:30:58 +02:00
536b8d1f67
Add icelandic layout ( #999 )
Check layouts / check_layout.output (push) Waiting to run
Make Apk CI / Build-Apk (push) Has been cancelled
Check translations / check-translations (push) Has been cancelled
Check layouts / Generated files (push) Has been cancelled
2025-05-25 16:44:50 +02:00
a7312054b5
compose: Add compose+A+e as compose+A+E and many others
...
Make Apk CI / Build-Apk (push) Has been cancelled
Check translations / check-translations (push) Has been cancelled
Check layouts / check_layout.output (push) Has been cancelled
Check layouts / Generated files (push) Has been cancelled
compile.py is changed to report when compose+Upper+Upper exists but
compse+Upper+Lower do not.
With these findings, many sequences are added.
2025-05-16 00:59:35 +02:00
d6dfb5c18c
Add compose sequences for n͠g, N͠g and g̃
Make Apk CI / Build-Apk (push) Has been cancelled
Check translations / check-translations (push) Has been cancelled
Check layouts / check_layout.output (push) Has been cancelled
Check layouts / Generated files (push) Has been cancelled
2025-04-19 15:10:07 +02:00
2b978dd2e0
APL and BQN layouts ( #899 )
...
Make Apk CI / Build-Apk (push) Has been cancelled
Check translations / check-translations (push) Has been cancelled
Check layouts / check_layout.output (push) Has been cancelled
Check layouts / Generated files (push) Has been cancelled
* Add compact BQN layout
* Add compact APL layout
2025-02-28 00:47:49 +01:00
ca25cc55f6
Apply compose sequences to String keys
...
Make Apk CI / Build-Apk (push) Has been cancelled
Check translations / check-translations (push) Has been cancelled
Check layouts / check_layout.output (push) Has been cancelled
Check layouts / Generated files (push) Has been cancelled
This is mostly useful for characters that do not fit on a single 16-bit
char.
Shift sequences for 𝕨𝕩𝕗𝕘𝕤 are added for illustration.
2025-02-23 18:00:44 +01:00
12d9e5eaf8
Update Shift mappings for math symbols
...
Make Apk CI / Build-Apk (push) Has been cancelled
Check translations / check-translations (push) Has been cancelled
Check layouts / check_layout.output (push) Has been cancelled
Check layouts / Generated files (push) Has been cancelled
Shift is the "not" version of some math operators.
∋ is added to the math layout.
2024-12-29 11:29:58 +01:00
78974b7453
Tamil layout: Shift and fn changes ( #853 )
...
Signed-off-by: Jagadeeshan S <jagadeeshanmsj@gmail.com >
2024-12-29 10:48:43 +01:00
ae50ff2a5c
Added tamil layout ( #833 )
...
Check layouts / Generated files (push) Waiting to run
Check layouts / check_layout.output (push) Waiting to run
Check translations / check-translations (push) Waiting to run
Make Apk CI / Build-Apk (push) Waiting to run
Signed-off-by: Jagadeeshan S <jagadeeshan.s@addverb.com >
2024-12-19 01:05:36 +01:00
bd2170e04b
Add Modern Hindi and Sanskrit shift layer
...
Co-authored-by: npnpatidar <7de6dkm1@duck.com >
2024-12-19 00:52:22 +01:00
4a429357ef
compose: Fix parsing of long sequences from json files
...
Sequences longer than two characters were not read correctly from json
files, creating conflicts and causing dropped sequences.
The detection of collision in sequences is also improved. Two colliding
sequences are removed.
2024-12-19 00:34:24 +01:00
e4a49d5256
Move numpad script maps to the compose system
...
Check layouts / Generated files (push) Has been cancelled
Check layouts / check_layout.output (push) Has been cancelled
Check translations / check-translations (push) Has been cancelled
Make Apk CI / Build-Apk (push) Has been cancelled
This removes the Map_char interface, which required a lot of boilerplate
to use.
2024-12-11 11:24:50 +01:00
4eb1f8bd9e
Add double grave accent ( #779 )
2024-12-07 13:16:43 +01:00
30fb50d912
Fix typos in cyrillic compose sequences
2024-12-05 22:47:19 +01:00
de6ee1858b
Arabic diacritics ( #807 )
...
Add arabic combining diacritics and make them accessible via Fn and Compose combos.
Co-authored-by: Anastázius Kaejatídarján <32847759+anaskaejdar@users.noreply.github.com >
2024-12-05 00:00:51 +01:00
354c0a6f1c
compose: Add digits to accent_dot_above
2024-11-16 12:23:25 +01:00
c4a88e4d5b
Update compose sequences for Cyrillic
...
Mainly add sequences for the combining diacritics.
Co-authored-by: Anastazius Kaejatidarjan <zdarian@asu.edu >
2024-10-05 11:39:11 +02:00
6fae23a432
compose/accent_*.json: improvements (more accents) ( #770 )
...
compose/accent_*.json: improve/complete implementation
compose/shift.json: uppercase for superscript letters & characters without preapplied uppercase versions
2024-10-05 11:06:24 +02:00
9f0cf15d2e
Add Fn layer and Compose sequences for Cyrillic
2024-09-29 22:47:57 +02:00
b61e9db21e
compose: Deduplicate end states
...
Make compose sequences ending in the same character to share the ending
state.
This reduce the compiled compose key data size from 33kB to 27kB.
2024-09-14 15:13:04 +02:00
a8e331c322
Define the Shift modifier using the compose mechanism
2024-09-10 22:50:39 +02:00
b600332595
Define the Fn modifier using the compose mechanism
...
This removes 100Kb from the app.
2024-09-10 22:43:40 +02:00
c57ae83bfa
Compose sequences can end in internal key names
...
This adds the '\n' and '\t' sequences to showcase the new feature.
2024-09-10 22:16:49 +02:00
105a5a2f33
Added supported key for avoiding the pain of auto-caps ( #725 )
2024-07-27 12:27:05 +02:00
35f35b27be
Update ComposeKeyData
...
Outdated since 6c786f2
2024-07-25 23:23:53 +02:00
2696f42144
Allow extending the compose key ( #713 )
...
This allows adding more compose sequences without modifying
en_US_UTF_8_Compose.pre.
This is done by grouping sequences files that should be merged together
into a directory. This also allows moving keysymdef.h into that
directory.
2024-07-21 23:37:07 +02:00
91ace060bc
Move diacritics mapping to the compose state machine
...
This replaces the switch cases in KeyModifier.java with JSON files, one
for each diacritic.
The number of states increases from 6727 to 7377. The apk size slightly
decreases (around 3kb).
2024-06-09 11:53:17 +02:00
ecac6a77f8
compose: Compile several starting states
...
Sequences from several files are no longer merged but compiled to
separate starting states.
The plan is to use that to represent the diacritics.
2024-06-09 11:52:17 +02:00
a886f6eede
compose: Fix misbehaving due to encoding errors
...
Encoding errors in the compose data compiler due to:
- 'UTF-16' adds a BOM, use 'UTF-16-LE' instead
- 'str.encode' returns a byte array, use 'array' to have a 16-bit char
array.
2024-06-09 10:35:38 +02:00
cf1aaa3bdf
Add compose sequences for Greek, Cyrillic, Hebrew and more
...
Parse key names from keysymdef.h, which is distributed with Xorg. The
Greek, Cyrillic and Hebrew sequences referenced these keysyms.
This increases the number of sequences from 2043 to 2668.
2024-05-29 15:56:08 +02:00
39b3f50aa3
Allow compose sequence ending with more symbols
...
Change the compose state machine definition to allow final states that
are wider than 16-bits.
This increases the number of sequences that can be used from
en_US_UTF_8_Compose.pre from 2013 to 2043 (of 3201).
2024-05-29 15:02:08 +02:00
63e7ac2e94
compose: Add X11 compose sequences
...
compile.py implements a parser for X11's Compose.pre files. A lot of
code is necessary to interpret character names but thanksfully, the name
of most characters is contained in the file.
The state machine is compiled into two char arrays which unfortunately
requires an expensive initialisation and allocation.
2024-02-17 23:28:31 +01:00
8c29073260
Compose key
...
The COMPOSE_PENDING modifier indicate whether a compose sequence is in
progress. The new key of kind Compose_pending sets the current state of
the sequence.
The compose sequences are compiled into a state machine by a python
script into a compact encoding.
The state of the pending compose is determined by the index of a state.
2024-02-17 23:28:31 +01:00