| Age | Commit message (Collapse) | Author | Files | Lines |
|
change compose for n͠g to g + n + ~ to avoid overlap. this in order to add n + g = ŋ. also added lowercase Ğ.
|
|
|
|
* add majuscules to compose
* add tse to compose
* added reverse ya FN to modernize it FROM the older form
* fix accent FN and add reverse arabic-heh FN
* little improvements and additions
* QoL improvements for Kurdish Sorani
|
|
compile.py is changed to report when compose+Upper+Upper exists but
compse+Upper+Lower do not.
With these findings, many sequences are added.
|
|
|
|
* Add compact BQN layout
* Add compact APL layout
|
|
This is mostly useful for characters that do not fit on a single 16-bit
char.
Shift sequences for 𝕨𝕩𝕗𝕘𝕤 are added for illustration.
|
|
Shift is the "not" version of some math operators.
∋ is added to the math layout.
|
|
Signed-off-by: Jagadeeshan S <jagadeeshanmsj@gmail.com>
|
|
Signed-off-by: Jagadeeshan S <jagadeeshan.s@addverb.com>
|
|
Appending the ':' character to a sequence result forces it to be a
string final state. This will cause a KeyValue lookup that would
normally not happen for single-character results.
This is useful to make Tamil letters smaller, even when they are the
result of a Shift.
|
|
Co-authored-by: npnpatidar <7de6dkm1@duck.com>
|
|
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.
|
|
This removes the Map_char interface, which required a lot of boilerplate
to use.
|
|
|
|
|
|
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>
|
|
|
|
Mainly add sequences for the combining diacritics.
Co-authored-by: Anastazius Kaejatidarjan <zdarian@asu.edu>
|
|
compose/accent_*.json: improve/complete implementation
compose/shift.json: uppercase for superscript letters & characters without preapplied uppercase versions
|
|
|
|
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.
|
|
|
|
This removes 100Kb from the app.
|
|
Useful to manager growing the collection of sequences.
|
|
This adds the '\n' and '\t' sequences to showcase the new feature.
|
|
|
|
Allow combining circumflex \u0302 for Cyrillic vowels, enabling users to express themselves accurately.
ја сам са̂м = I am alone
ја сам сам = I am am
да = yes
да̂ = give
код = at
ко̂д = code
Similar to #437 for aigo.
|
|
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.
|
|
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).
|
|
Sequences from several files are no longer merged but compiled to
separate starting states.
The plan is to use that to represent the diacritics.
|
|
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.
|
|
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.
|
|
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).
|
|
There's no json file yet, this was part of an experiment.
Add a missing escape rule and detect colliding sequences.
|
|
Mention the source of the sequences files.
|
|
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.
|
|
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.
|