libinput-record(1) General Commands Manual libinput-record(1) (NAME) libinput-record - (SYNOPSIS) libinput record [] [/dev/input/event0 [/dev/input/event1 ...]] (DESCRIPTION) libinput record (Kernel) libinput-replay(1) . (root) . YAML (FILE FORMAT) . (stdout) . : libinput record /dev/input/event3 touchpad.yml libinput record recording.yml libinput record --all all-devices.yml libinput record /dev/input/event3 /dev/input/event4 tp-and-keyboard.yml libinput libinput . (OPTIONS) (device node) . . . --help --all /dev/input/event* . . --output-file . --autorestart=s s . --output-file . . . -o filename.yml --output-file=filename.yml . --autorestart . --output-file . --grab (Exclusive Grab) . . --show-keycodes (Keycodes) . KEY_A . --with-libinput libinput . . LIBINPUT . --with-hidraw hidraw . . HID . (RECORDING MULTIPLE DEVICES) . libinput record . . . : libinput record -o tap-bug /dev/input/event3 /dev/input/event7 . LIBINPUT (RECORDING LIBINPUT EVENTS) --with-libinput libinput-record libinput . evdev . . . libinput libinput-record . libinput libinput . libinput libinput-record . HID (RECORDING HID REPORTS) --with-hidraw libinput-record hidraw HID . HID . HID . (FILE FORMAT) YAML (Parse) . YAML . (Parser) . . version: 1 ndevices: 2 libinput: version: 1.10.0 system: os: "fedora:26" kernel: "4.13.9-200.fc26.x86_64" dmi: "dmi:bvnLENOVO:bvrGJET72WW(2.22):bd02/21/2014:svnLENOVO:..." devices: - node: /dev/input/event9 evdev: # Name: Synaptics TM2668-002 # ID: bus 0x1d vendor 0x6cb product 00 version 00 # Size in mm: 97x68 # Supported Events: # Event type 0 (EV_SYN) #.. abbreviated for man page ... # name: Synaptics TM2668-002 id: [29, 1739, 0, 0] codes: 0: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15] # EV_SYN 1: [272, 325, 328, 330, 333, 334, 335] # EV_KEY 3: [0, 1, 24, 47, 48, 49, 52, 53, 54, 55, 57, 58] # EV_ABS absinfo: 0: [0, 4089, 0, 0, 42] 1: [0, 2811, 0, 0, 41] 24: [0, 255, 0, 0, 0] 47: [0, 4, 0, 0, 0] 48: [0, 15, 0, 0, 0] 49: [0, 15, 0, 0, 0] 52: [0, 1, 0, 0, 0] 53: [0, 4089, 0, 0, 42] 54: [0, 2811, 0, 0, 41] 55: [0, 2, 0, 0, 0] 57: [0, 65535, 0, 0, 0] 58: [0, 255, 0, 0, 0] properties: [0, 2, 4] hid: [12, 23, 34, 45, ...] udev: properties: - ID_INPUT_MOUSE=1 - ID_INPUT=1 quirks: - ModelAppleTouchpad=1 - AttrSizeHint=32x32 events: - hid: time: [ 0, 0] hidraw0: [1, 2, 3, 4] - evdev: - [ 0, 0, 3, 57, 1420] # EV_ABS / ABS_MT_TRACKING_ID 1420 - [ 0, 0, 3, 53, 1218] # EV_ABS / ABS_MT_POSITION_X 1218 - [ 0, 0, 3, 54, 1922] # EV_ABS / ABS_MT_POSITION_Y 1922 - [ 0, 0, 3, 52, 0] # EV_ABS / ABS_MT_ORIENTATION 0 - [ 0, 0, 3, 58, 47] # EV_ABS / ABS_MT_PRESSURE 47 - [ 0, 0, 1, 330, 1] # EV_KEY / BTN_TOUCH 1 - [ 0, 0, 1, 325, 1] # EV_KEY / BTN_TOOL_FINGER 1 - [ 0, 0, 3, 0, 1218] # EV_ABS / ABS_X 1218 - [ 0, 0, 3, 1, 1922] # EV_ABS / ABS_Y 1922 - [ 0, 0, 3, 24, 47] # EV_ABS / ABS_PRESSURE 47 - [ 0, 0, 0, 0, 0] # ------------ SYN_REPORT (0) ------- +0ms - evdev: - [ 0, 11879, 3, 53, 1330] # EV_ABS / ABS_MT_POSITION_X 1330 - [ 0, 11879, 3, 54, 1928] # EV_ABS / ABS_MT_POSITION_Y 1928 - [ 0, 11879, 3, 58, 46] # EV_ABS / ABS_MT_PRESSURE 46 - [ 0, 11879, 3, 0, 1330] # EV_ABS / ABS_X 1330 - [ 0, 11879, 3, 1, 1928] # EV_ABS / ABS_Y 1928 - [ 0, 11879, 3, 24, 46] # EV_ABS / ABS_PRESSURE 46 - [ 0, 11879, 0, 0, 0] # ------------ SYN_REPORT (0) ------- +0ms # second device (if any) - node: /dev/input/event9 evdev: ... (Top-level) . version: int . . . ndevices: int . --all . libinput: {...} libinput. system: {...} . devices: {...} . libinput version: string libinput system os: string os-release(5) . kernel: string uname(1) . dmi: string DMI modalias /sys/class/dmi/id/modalias . devices node: string evdev evdev. hid HID. udev udev. events . evdev name: string id: [bustype, vendor, product, version] struct input_id . codes: {type: [a, b, c ], ...} evdev . evdev . absinfo: {code: [min, max, fuzz, flat, resolution], ...} struct input_absinfo . ( ABS_X) . properties: [0, 1, ...] INPUT_PROP_FOO. . udev properties: list of strings udev key=value. libinput . . quirks: list of strings (Quirks) key=value. events . . { evdev: [ [sec, usec, type, code, value], ...] } evdev struct input_event . SYN_REPORT . evdev events . { hid: hidrawX : [ 12, 34, 56 ], ...] } hid hid hidraw . time . (timestamp) hidraw clock_gettime(3) evdev . (NOTES) libinput . libinput . libinput . (LIBINPUT) libinput(1) libinput-record(1)