svkbd

simple virtual keyboard
git clone git://git.suckless.org/svkbd
Log | Files | Refs | README | LICENSE

commit 378a1c8b308ebe09af1ad87ea00bf142313c6fdd
parent 3cff4547c5360ccf5424a413c3558ca99e2ce487
Author: Maarten van Gompel <proycon@anaproy.nl>
Date:   Sun, 11 Jul 2021 17:53:52 +0200

made the Q key double as a trigger for the emoji overlay in the default mobile-intl layout

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.

Diffstat:
MREADME.md | 9+++++----
Mlayout.mobile-intl.h | 35++++++++++++++++++++++++++++++++---
Mlayout.mobile-simple.h | 2+-
3 files changed, 38 insertions(+), 8 deletions(-)

diff --git a/README.md b/README.md @@ -69,10 +69,11 @@ through the ``SVKBD_LAYERS`` environment variable. They both take a comma separ your ``layout.*.h``). Use the ``↺`` button in the bottom-left to cycle through all the layers in the exact order they were specified. -Some layouts come with overlays that will show when certain keys are hold pressed for a longer time. For -example, a long press on the ``a`` key will enable an overview showing all kinds of diacritic combinations for ``a``. In -the ``mobile-intl`` layout, a long press on a punctuation key will show an overlay with all further punctuation options -(the same for all punctuation keys). +Some layouts come with overlays that will show when certain keys are hold pressed for a longer time. For example, a long +press on the ``a`` key will enable an overview showing all kinds of diacritic combinations for ``a``. In the +``mobile-intl`` layout, a long press on a punctuation key will show an overlay with all further punctuation options (the +same for all punctuation keys). Moreover, a long press on the ``q`` key doubles as a trigger for the emoji overlay in +this layout. Overlay functionality interferes with the ability to hold a key and have it outputted repeatedly. You can disable overlay functionality with the ``-O`` flag or by setting the environment variable ``SVKBD_ENABLEOVERLAYS=0``. There is diff --git a/layout.mobile-intl.h b/layout.mobile-intl.h @@ -17,7 +17,7 @@ static Key keys_en[KEYS] = { { 0 }, /* New row */ { "↹", 0, XK_Tab, 0.75 }, - { 0, 0, XK_q, 1 }, + { 0, "🙂", XK_q, 1 }, { 0, 0, XK_w, 1 }, { 0, 0, XK_e, 1 }, { 0, 0, XK_r, 1 }, @@ -68,7 +68,7 @@ static Key keys_en[KEYS] = { }; static Key keys_minimal[KEYS] = { - { 0, 0, XK_q, 1 }, + { 0, "🙂", XK_q, 1 }, { 0, 0, XK_w, 1 }, { 0, 0, XK_e, 1 }, { 0, 0, XK_r, 1 }, @@ -113,7 +113,7 @@ static Key keys_minimal[KEYS] = { { "↲ Enter", 0, XK_Return, 2 }, }; -#define OVERLAYS 197 +#define OVERLAYS 226 static Key overlay[OVERLAYS] = { { 0, 0, XK_a }, //Overlay for a { "à", 0, XK_agrave }, @@ -283,6 +283,35 @@ static Key overlay[OVERLAYS] = { { "😳", 0, 0x101f633 }, { "😴", 0, 0x101f634 }, { 0, 0, XK_Cancel }, /* XK_Cancel signifies overlay boundary */ + { "q", 0, XK_q }, //New overlay -> emoji overlay on Q key (for minimal layer) + { "😀", 0, 0x101f600 }, + { "😁", 0, 0x101f601 }, + { "😂", 0, 0x101f602 }, + { "😃", 0, 0x101f603 }, + { "😄", 0, 0x101f604 }, + { "😅", 0, 0x101f605 }, + { "😆", 0, 0x101f606 }, + { "😇", 0, 0x101f607 }, + { "😈", 0, 0x101f608 }, + { "😉", 0, 0x101f609 }, + { "😊", 0, 0x101f60a }, + { "😋", 0, 0x101f60b }, + { "😌", 0, 0x101f60c }, + { "😍", 0, 0x101f60d }, + { "😎", 0, 0x101f60e }, + { "😏", 0, 0x101f60f }, + { "😐", 0, 0x101f610 }, + { "😒", 0, 0x101f612 }, + { "😓", 0, 0x101f613 }, + { "😛", 0, 0x101f61b }, + { "😮", 0, 0x101f62e }, + { "😟", 0, 0x101f61f }, + { "😟", 0, 0x101f620 }, + { "😢", 0, 0x101f622 }, + { "😭", 0, 0x101f62d }, + { "😳", 0, 0x101f633 }, + { "😴", 0, 0x101f634 }, + { 0, 0, XK_Cancel }, /* XK_Cancel signifies overlay boundary */ { "/?", 0, XK_slash }, //New overlay - punctuation overlay { "1", "!", XK_1, 1 }, { "2", "@", XK_2, 1 }, diff --git a/layout.mobile-simple.h b/layout.mobile-simple.h @@ -351,7 +351,7 @@ static Key overlay[OVERLAYS] = { { "😒", 0, 0x101f612 }, { "😓", 0, 0x101f613 }, { "😛", 0, 0x101f61b }, - { "😮", 0, 0x101f62e, 2 }, // skip shift + { "😮", 0, 0x101f62e }, { "😟", 0, 0x101f61f }, { "😟", 0, 0x101f620 }, { "😢", 0, 0x101f622 },