Skip to content

Commit 3485541

Browse files
committed
docs(uinput): add usage example
1 parent 4722a4a commit 3485541

1 file changed

Lines changed: 23 additions & 0 deletions

File tree

types/uinput.d.lua

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,29 @@
1414
---@field product? integer Product ID (default: `0xE7DE`).
1515
---@field version? integer Version number (default: `1`).
1616

17+
---
18+
---Create and control virtual input devices using `/dev/uinput`.
19+
---
20+
---```lua
21+
---local evdev = require "evdev"
22+
---local ecodes = evdev.ecodes
23+
---
24+
----- Create a virtual keyboard device
25+
---local ui = assert(evdev.uinput.create())
26+
---print("Virtual device created at: " .. ui.path)
27+
---
28+
----- Simulate typing Shift + A
29+
---ui:emit(ecodes.EV_KEY, ecodes.KEY_LEFTSHIFT, 1)
30+
---ui:emit(ecodes.EV_KEY, ecodes.KEY_A, 1)
31+
---ui:sync()
32+
---
33+
---ui:emit(ecodes.EV_KEY, ecodes.KEY_A, 0)
34+
---ui:emit(ecodes.EV_KEY, ecodes.KEY_LEFTSHIFT, 0)
35+
---ui:sync()
36+
---
37+
---ui:close()
38+
---```
39+
---
1740
---@class evdev.uinput
1841
local M = {}
1942

0 commit comments

Comments
 (0)