Module: cuteful.kbd
Supplementary functions for kbd object.
Info:
- Copyright: 2025
- License: GPLv3
-
Originally authored by: Dwi Asmoro Bangun
(Full contributors list available on our github project)
See also:
Static module functions
| cuteful.kbd.click (keycode, kbd) | Perform a key press and release. | |
| cuteful.kbd.type (words, kbd) | Perform sequence of click over given chraacters. | |
| cuteful.kbd.set_layout_by_shortname (words, kbd) |
Set xkb_layout option by the shortname specified in the config.
|
Tables
| cuteful.kbd.event_code |
All the EV_KEY constants from linux input-event-codes.h.
|
Static module functions
- 🔗 cuteful.kbd.click (keycode, kbd)
-
Perform a key press and release.
Parameters:
Name Type(s) Description keycode integer Event code from linux input-event-codes.hkbd Optional cwc_kbd The keyboard object See also:
type Perform sequence of click over given chraacters. static module functions Usage:
local cful = require("cuteful") cful.kbd.click(cful.kbd.event_code.KEY_ENTER)
- 🔗 cuteful.kbd.type (words, kbd)
-
Perform sequence of click over given chraacters.
Only support US layout with limited char available.
Parameters:
Name Type(s) Description words string Characters to type kbd Optional cwc_kbd The keyboard object See also:
cwc.kbd.update_modifiers Update modifiers state of this keyboard change are absolute and not incremental. (cwc.kbd) object methods Usage:
-- example to type "Hello, world!" local mykbd = cwc.kbd.get()[1] mykbd:update_modifiers(0, 0, mod.SHIFT) cful.kbd.type("h") mykbd:update_modifiers(0, 0, 0) cful.kbd.type("ello, world") mykbd:send_key(cful.kbd.event_code.KEY_LEFTSHIFT, enum.key_state.PRESSED) cful.kbd.type("1") mykbd:send_key(cful.kbd.event_code.KEY_LEFTSHIFT, enum.key_state.RELEASED)
- 🔗 cuteful.kbd.set_layout_by_shortname (words, kbd)
-
Set
xkb_layoutoption by the shortname specified in the config.Parameters:
Name Type(s) Description words string Characters to type kbd Optional cwc_kbd The keyboard object See also:
cwc.kbd.layout_index Current active xkb layout index (0-based). (cwc.kbd) object properties Usage:
config.init({ xkb_layout = "us,de,fr"}) local cful = require("cuteful") cful.kbd.set_layout_by_shortname("fr")
Tables
- 🔗 cuteful.kbd.event_code
-
All the EV_KEY constants from linux
input-event-codes.h.Fields:
Name Type(s) Description KEY_ESC KEY_1 KEY_2 KEY_3 KEY_4 KEY_5 KEY_6 KEY_7 KEY_8 KEY_9 KEY_0 KEY_MINUS KEY_EQUAL KEY_BACKSPACE KEY_TAB KEY_Q KEY_W KEY_E KEY_R KEY_T KEY_Y KEY_U KEY_I KEY_O KEY_P KEY_LEFTBRACE KEY_RIGHTBRACE KEY_ENTER KEY_LEFTCTRL KEY_A KEY_S KEY_D KEY_F KEY_G KEY_H KEY_J KEY_K KEY_L KEY_SEMICOLON KEY_APOSTROPHE KEY_GRAVE KEY_LEFTSHIFT KEY_BACKSLASH KEY_Z KEY_X KEY_C KEY_V KEY_B KEY_N KEY_M KEY_COMMA KEY_DOT KEY_SLASH KEY_RIGHTSHIFT KEY_KPASTERISK KEY_LEFTALT KEY_SPACE KEY_CAPSLOCK KEY_F1 KEY_F2 KEY_F3 KEY_F4 KEY_F5 KEY_F6 KEY_F7 KEY_F8 KEY_F9 KEY_F10 KEY_NUMLOCK KEY_SCROLLLOCK KEY_KP7 KEY_KP8 KEY_KP9 KEY_KPMINUS KEY_KP4 KEY_KP5 KEY_KP6 KEY_KPPLUS KEY_KP1 KEY_KP2 KEY_KP3 KEY_KP0 KEY_KPDOT KEY_ZENKAKUHANKAKU KEY_102ND KEY_F11 KEY_F12 KEY_RO KEY_KATAKANA KEY_HIRAGANA KEY_HENKAN KEY_KATAKANAHIRAGANA KEY_MUHENKAN KEY_KPJPCOMMA KEY_KPENTER KEY_RIGHTCTRL KEY_KPSLASH KEY_SYSRQ KEY_RIGHTALT KEY_LINEFEED KEY_HOME KEY_UP KEY_PAGEUP KEY_LEFT KEY_RIGHT KEY_END KEY_DOWN KEY_PAGEDOWN KEY_INSERT KEY_DELETE KEY_MACRO KEY_MUTE KEY_VOLUMEDOWN KEY_VOLUMEUP KEY_POWER KEY_KPEQUAL KEY_KPPLUSMINUS KEY_PAUSE KEY_SCALE KEY_KPCOMMA KEY_HANGEUL KEY_HANJA KEY_YEN KEY_LEFTMETA KEY_RIGHTMETA KEY_COMPOSE KEY_STOP KEY_AGAIN KEY_PROPS KEY_UNDO KEY_FRONT KEY_COPY KEY_OPEN KEY_PASTE KEY_FIND KEY_CUT KEY_HELP KEY_MENU KEY_CALC KEY_SETUP KEY_SLEEP KEY_WAKEUP KEY_FILE KEY_SENDFILE KEY_DELETEFILE KEY_XFER KEY_PROG1 KEY_PROG2 KEY_WWW KEY_MSDOS KEY_COFFEE KEY_ROTATE_DISPLAY KEY_CYCLEWINDOWS KEY_MAIL KEY_BOOKMARKS KEY_COMPUTER KEY_BACK KEY_FORWARD KEY_CLOSECD KEY_EJECTCD KEY_EJECTCLOSECD KEY_NEXTSONG KEY_PLAYPAUSE KEY_PREVIOUSSONG KEY_STOPCD KEY_RECORD KEY_REWIND KEY_PHONE KEY_ISO KEY_CONFIG KEY_HOMEPAGE KEY_REFRESH KEY_EXIT KEY_MOVE KEY_EDIT KEY_SCROLLUP KEY_SCROLLDOWN KEY_KPLEFTPAREN KEY_KPRIGHTPAREN KEY_NEW KEY_REDO KEY_F13 KEY_F14 KEY_F15 KEY_F16 KEY_F17 KEY_F18 KEY_F19 KEY_F20 KEY_F21 KEY_F22 KEY_F23 KEY_F24 KEY_PLAYCD KEY_PAUSECD KEY_PROG3 KEY_PROG4 KEY_ALL_APPLICATIONS KEY_SUSPEND KEY_CLOSE KEY_PLAY KEY_FASTFORWARD KEY_BASSBOOST KEY_PRINT KEY_HP KEY_CAMERA KEY_SOUND KEY_QUESTION KEY_EMAIL KEY_CHAT KEY_SEARCH KEY_CONNECT KEY_FINANCE KEY_SPORT KEY_SHOP KEY_ALTERASE KEY_CANCEL KEY_BRIGHTNESSDOWN KEY_BRIGHTNESSUP KEY_MEDIA KEY_SWITCHVIDEOMODE KEY_KBDILLUMTOGGLE KEY_KBDILLUMDOWN KEY_KBDILLUMUP KEY_SEND KEY_REPLY KEY_FORWARDMAIL KEY_SAVE KEY_DOCUMENTS KEY_BATTERY KEY_BLUETOOTH KEY_WLAN KEY_UWB KEY_UNKNOWN KEY_VIDEO_NEXT KEY_VIDEO_PREV KEY_BRIGHTNESS_CYCLE KEY_BRIGHTNESS_AUTO KEY_DISPLAY_OFF KEY_WWAN KEY_RFKILL KEY_MICMUTE