Age | Commit message (Collapse) | Author | Files | Lines |
|
Not really functional, since we cannot control shift states and keys.
|
|
Fixes #10.
|
|
Create self-containted, minimal, but still human-readable C file with
all typedefs. Gets rid of the copied header file and all of its weird
ifdef logic. Simplifies virtual scancode to virtual key mapping.
|
|
Hide them by default
|
|
Automate the process via GitHub Actions as well. kbd.h can be
simplified.
Fixes #11.
|
|
Might come handy if you need a physical reference card.
|
|
|
|
|
|
|
|
|
|
|
|
Trying to give the reader a sense for how difficult carpalx thinks
certain parts of a sentence are. Conclusions are only valid for a single
layout and comparison between them is not possible.
|
|
Also fix the layout break point.
|
|
|
|
In particular: * - # and ٠. Recompute optimal layout for symbols and
bump version to 0.4.
|
|
Take another stab at the symbol layers and call it v0.3.
|
|
Apparently direction must be specified on parent <text> element to have
an effect. This way brackets will be mirrored correctly when rendering.
|
|
In combination with `-n 0` this allows manual evaluation of changes
without using `lulua-write` to re-evaluate the entire corpus.
|
|
Introduce composable filters, switch to brotli-compressed tarballs,
which has good ratios and fast decompression, reducing I/O
significantly.
|
|
|
|
|
|
|
|
|
|
Set default value.
|
|
Remove English layer, the paper talks about different “modes”.
|
|
|
|
Replace Windows-style newlines with Unix newlines. There were quite a
few stray \r’s in the stats. This takes care of them.
|
|
Expand explanation of proposed layout and criticism of other layouts.
|
|
Some combinations had the same score and the “wrong” one was chosen as a
result.
This affects how key combinations are chosen and thus it significantly affects
results (lowering ar-lulua’s asymmetry and increasing it for almost
every other layout) and probably optimization of levels > 1.
|
|
|
|
Looks pretty similar to ASMO663.
|
|
|
|
Function was moved and changed by commit
0f8643954fd9507aec85bab46046e71a497bfffe, but the testcase was not.
|
|
Arabic font was renamed.
|
|
|
|
Pre-rendering HTML was not the best idea. Instead pre-process the data,
cache it into data files and do the HTML rendering only as the final
step.
Also adds asymmetry to analysis and uses tabular numbers and spaces
instead of ugly table hacks to align numbers.
|
|
|
|
Button caps will not overlap heat map any more. Change heat map to
circles, which seem more fitting.
|
|
In preparation for fixing heapmap rendering.
|
|
Generate C header file based on layout description and create a source
bundle that must be compiled on a Windows system and then moved back to
the source tree. This sucks, but cross-compiling on Linux is a pain,
since Windows’ development headers assume a case-insensitive filesystem.
Also I’m using MSKLC because the latest driver development kit cannot
compile these drivers correctly. Dear @microsoft, please fix your shit:
https://github.com/microsoft/Windows-driver-samples/issues/433
A remaining concern right now is licensing. keyboard.{c,h,def,rc} have
been copied from a project generated by MSKLC and are probably non-free,
although pretty much identical files like
https://github.com/microsoft/Windows-driver-samples/blob/master/input/layout/kbdus/kbdus.c
are covered by MS-PL.
Also binds backspace key to \b and adjusts xmodmap/svg rendering
accordingly.
See #7.
|
|
|
|
Extract node labels (name:ar) from OpenStreetMap’s planet dump. Heavily
leans towards a few common words (“street”, obviously), but we should be
fine since the corpus is not that large.
|
|
|
|
See issue #5.
|
|
See issue #5.
|
|
|
|
|
|
Add word stats (well, tokens seperated by non-letter symbols really, but
that’s alright) and dumping into an LatinIME-compatible dictionary file
(for Android).
|
|
|
|
Switch to proper SVG user coordinate rendering instead of font-dependent
sizes. Embed WOFF2 fonts, so images have proper fonts when embedded.
Remove font blobs and submodule IBM’s plex git repo.
|