"This patch fixes uppercase in armenian (and perhaps some other) layouts. svkbd
was previously registering a key in one modification (xorg accepts up to 4
modifications). with this patch svkbd registers 2 modifications - upper and
lower case. function tmp_remap changed in a way that if the key is not found in
a current layout, it is temporary added to it. for cyrillic layout uppercase
(when shift is pressed) letters were showing anyway, because those are somehow
found (modified) by xorg. but for armenian layout that did not work. now works."
Patch by նորայր <norayr@arnet.am>
Fixes a small oversight that was preventing the colors of the smiley on q from changing with Xresources.
Signed-off-by: Maarten van Gompel <proycon@anaproy.nl>
When you build svkbd with different layouts, you get one binary per
layout but all binaries are identical:
$ make LAYOUT=mobile-plain
$ make LAYOUT=mobile-simple
$ diff -s svkbd-mobile-plain svkbd-mobile-simple
Files svkbd-mobile-plain and svkbd-mobile-simple are identical
The problem is that svkbd.o from the first build is being reused in the
second build.
This commit changes the Makefile to create layout-dependent object files
like svkbd-mobile-plain.o and svkbd-mobile-simple.o (instead of a shared
svkbd.o).
This makes the emoji overlay accessible without sacrificing an extra key.
There are (afaik) no languages with diacritics on the Q anyway and it's
the first letter key.
A small emoji will show as 2nd label on the keycap as a hint, the caveat
being that the hint applies to a long press rather than a shift-press as
with most 2nd labels, but better than no hint at all.
From the commit:
commit d06db9eb4f
Author: Maarten van Gompel <proycon@anaproy.nl>
Date: Sat Mar 6 16:30:44 2021 +0100
Added a second key label for the shift-activated symbols
There were two problems with this file.
First, there were commas missing from the definitions for XK_7, XK_0,
XK_minus, and XK_plus. This prevented svkbd from even compiling.
Secondly, XK_Return was misdefined. This resulted in an immediate
segmentation fault upon loading the program.
svkbd allows you to create keys for symbols of the second (=shift) layer by defining them with a modifier included, like:
{ "|", "|", XK_backslash, 1, XK_Shift_L },
This key creates a pipe symbol by sending shift + backslash. But unfortunately, this way you can't emit get the original symbol (backslash) anymore. So you still need a separate key for typing a backslash, wasting precious space on the screen.
The appended patch fixes this by allowing to neutralize the shift by tapping this key with shift. It works both by tapping first shift, then the pipe key on the on-screen keyboard, or by clicking the pipe key with the middle mouse button (assuming XK_Shift_L is set as the button 2 mod).
This way you can create a "flipped" backslash/pipe key:
{ "|", "\\", XK_backslash, 1, XK_Shift_L },
This patch works equally for AltGr symbols in a `de`-based layout. For example:
{ "~", "+", XK_plus, 1, XK_ISO_Level3_Shift },
(In the German QWERTZ layout, you enter "~" with AltGr-"+".)
Best regards,
Max
Signed-off-by: Maarten van Gompel <proycon@anaproy.nl>
As I used it, it really feels like ctrl and alt should be accessible
Esc now replace shift on symbol page (as shift is useless here anyway)
As we now got keys on the two first layers, I removed the smart
old layer.
Signed-off-by: Stacy Harper <contact@stacyharper.net>
Signed-off-by: Maarten van Gompel <proycon@anaproy.nl>