index.md - sites - public wiki contents of suckless.org
 (HTM) git clone git://git.suckless.org/sites
 (DIR) Log
 (DIR) Files
 (DIR) Refs
       ---
       index.md (3963B)
       ---
            1 SVKBD: Simple Virtual Keyboard
            2 ==============================
            3 This is a simple virtual keyboard, intended to be used in environments,
            4 where no keyboard is available.
            5 
            6 Installation
            7 ------------
            8 
            9         $ make
           10         $ make install
           11 
           12 This will create by default `svkbd-mobile-intl`, which is svkbd using an international
           13 keyboard layout with multiple layers and overlays, and optimised for mobile devices.
           14 
           15 You can create svkbd for additional layouts by doing:
           16 
           17         $ make LAYOUT=$layout
           18 
           19 This will take the file `layout.$layout.h` and create `svkbd-$layout`.
           20 `make install` will then pick up the new file and install it accordingly.
           21 
           22 Layouts
           23 -------
           24 
           25 The following layouts are available:
           26 
           27 * **Mobile Layouts:**
           28     * ``mobile-intl`` - A small international layout optimised for mobile devices. This layout consists of multiple layers which
           29         can be switched on the fly, and overlays that appear on long-press of certain keys, adding input ability for
           30         diacritics and other variants, as well as some emoji. The layers are:
           31         * a basic qwerty layer
           32         * a layer for numeric input, arrows, and punctuation
           33         * a layer for function keys, media keys, and arrows
           34         * a cyrillic layer (ЙЦУКЕН)
           35         * a dialer/numeric layer
           36     * ``mobile-plain`` - This is a plain layout with only a qwerty layer and numeric/punctuation layer. It was
           37         originally made for [sxmo](https://sr.ht/~mil/Sxmo/).
           38 * **Traditional layouts**:
           39     * ``en`` - An english layout without layers (QWERTY)
           40     * ``de`` - A german layout (QWERTZ)
           41     * ``ru`` - A russian layout (ЙЦУКЕН)
           42     * ``sh`` - A serbo-croatian layout using latin script (QWERTZ)
           43 
           44 Usage
           45 -----
           46 
           47         $ svkbd-mobile-intl
           48 
           49 This will open svkbd at the bottom of the screen, showing the default
           50 international layout.
           51 
           52         $ svkbd-mobile-intl -d
           53 
           54 This tells svkbd to announce itself being a dock window, which then
           55 is managed differently between different window managers. If using dwm
           56 and the dock patch, then this will make svkbd being managed by dwm and
           57 some space of the screen being reserved for it.
           58 
           59         $ svkbd-en -g 400x200+1+1
           60 
           61 This will start svkbd-en with a size of 400x200 and at the upper left
           62 window corner.
           63 
           64 For layouts that consist of multiple layers, you can enable layers on program start through either the ``-l`` flag or
           65 through the ``SVKBD_LAYERS`` environment variable.  They both take a comma separated list of layer names (as defined in
           66 your ``layout.*.h``). Use the ``↺`` button in the bottom-left to cycle through all the layers.
           67 
           68 Some layouts come with overlays that will show when certain keys are hold pressed for a longer time. For
           69 example, a long press on the ``a`` key will enable an overview showing all kinds of diacritic combinations for ``a``.
           70 
           71 Overlay functionality interferes with the ability to hold a key and have it outputted repeatedly.  You can disable
           72 overlay functionality with the ``-O`` flag or by setting the environment variable ``SVKBD_ENABLEOVERLAYS=0``. There is
           73 also a key on the function layer of the keyboard itself to enable/disable this behaviour on the fly. Its label shows
           74 ``≅`` when the overlay functionality is enabled and ``≇`` when not.
           75 
           76 Notes
           77 -----
           78 
           79 This virtual keyboard does not actually modify the X keyboard layout, the ``mobile-intl``, ``mobile-plain`` and ``en`` layouts simply rely on a standard US QWERTY layout (setxkbmap us) being activated, the other layouts (``de``, ``ru``, ``sh``) require their respective XKB keymaps to be active.
           80 
           81 If you use another XKB layout you will get unpredictable output that does not match the labels on the virtual keycaps!
           82 
           83 
           84 Development
           85 -----------
           86 You can [browse](//git.suckless.org/svkbd) its source code repository or get a
           87 copy using git with the following command:
           88 
           89         git clone https://git.suckless.org/svkbd
           90 
           91 
           92 Download
           93 --------
           94 * [MIT/X Consortium license](//git.suckless.org/svkbd/plain/LICENSE)
           95 * [svkbd 0.4.2](//dl.suckless.org/tools/svkbd-0.4.2.tar.gz) (25kb) (2024-11-26)