libinput/tools
Peter Hutterer dc249b0ffe tools/debug-events: add ability to compress motion events
If --compress-motion-events is given (and stdout is a tty) reduce
the output printed to one line per repeated motion/axis/scroll sequence
(with a count). Example output:
 event6   POINTER_MOTION          108 +1.912s	 1.00/ -1.00 ( +1.00/ -1.00))
 event6   POINTER_BUTTON              +2.008s	BTN_LEFT (272) pressed, seat count: 1
 event6   POINTER_BUTTON              +2.074s	BTN_LEFT (272) released, seat count: 0
 event6   POINTER_MOTION           39 +5.249s	 0.00/  0.99 ( +0.00/ +1.00)
 event6   POINTER_BUTTON              +5.385s	BTN_LEFT (272) pressed, seat count: 1
 event6   POINTER_MOTION           66 +6.031s	-1.00/  0.00 ( -1.00/ +0.00)
 event6   POINTER_BUTTON              +6.401s	BTN_LEFT (272) released, seat count: 0

The event count (108, 39 and 66) is only printed for more than one event
in sequence so the output is otherwise identical (but 4 spaces wider
now)

If stdout is not a tty the event count is printed but no compression
happens since we rely on a ansi escape sequence for that. Could be fixed
by changing the current print statements to print a \n before the
current event instead of at the end of the current line.

This makes debugging events easier as button events and similar are no
longer obscured by pages of motion events in between.

Part-of: <https://gitlab.freedesktop.org/libinput/libinput/-/merge_requests/1041>
2024-09-11 12:49:28 +10:00
..
libinput-analyze-buttons.man tools: add libinput analyze buttons for button state analysis 2024-06-18 07:43:02 +00:00
libinput-analyze-buttons.py tools: add libinput analyze buttons for button state analysis 2024-06-18 07:43:02 +00:00
libinput-analyze-per-slot-delta.man Fix pre-commit errors 2024-09-03 09:51:41 +02:00
libinput-analyze-per-slot-delta.py tools/per-slot-delta: handle KeyboardInterrupts nicely 2021-03-10 00:24:51 +00:00
libinput-analyze-recording.man tools: add a tool to print a libinput recording as a table 2021-02-23 13:46:00 +10:00
libinput-analyze-recording.py tools: fix two black warnings 2024-03-18 12:29:57 +10:00
libinput-analyze-touch-down-state.man tools: add a tool to analyze the finger count from a recording 2021-01-29 08:06:53 +10:00
libinput-analyze-touch-down-state.py tools: add a tool to analyze the finger count from a recording 2021-01-29 08:06:53 +10:00
libinput-analyze.c tools: add a libinput analyze command with the per-slot-delta subcommand 2020-03-16 08:35:43 +10:00
libinput-analyze.man tools: add libinput analyze buttons for button state analysis 2024-06-18 07:43:02 +00:00
libinput-debug-events.c tools/debug-events: add ability to compress motion events 2024-09-11 12:49:28 +10:00
libinput-debug-events.man touchpad: add sticky mode to drag-lock 2024-09-05 00:47:47 +00:00
libinput-debug-gui.c tools/debug-gui: draw the evdev x/y axis with the right color 2024-06-13 05:45:19 +00:00
libinput-debug-gui.man tablet: add API for relative dials 2024-02-20 02:49:05 +00:00
libinput-debug-tablet.c tools: actually parse options in libinput-debug-tablets 2024-06-10 15:09:19 +00:00
libinput-debug-tablet.man tools: add a tablet debugging tool 2019-11-19 09:56:14 +10:00
libinput-list-devices.c Introduce custom acceleration profile 2023-01-17 01:46:17 +00:00
libinput-list-devices.man libinput-list-devices: make paragraph about different settings terser 2019-10-28 05:40:02 +00:00
libinput-list-kernel-devices.man tools: add a --hid toggle to libinput-list-kernel-devices 2022-12-08 10:08:44 +10:00
libinput-list-kernel-devices.py tools: add a --hid toggle to libinput-list-kernel-devices 2022-12-08 10:08:44 +10:00
libinput-measure-fuzz.man touchpad: add a tool to measure the touchpad fuzz 2018-05-15 13:51:33 +10:00
libinput-measure-fuzz.py Use python black for all pyhon file formatting 2021-01-28 21:02:45 +00:00
libinput-measure-touch-size.man tools: touch-size: update to use the device quirks 2018-06-21 11:48:41 +10:00
libinput-measure-touch-size.py Use python black for all pyhon file formatting 2021-01-28 21:02:45 +00:00
libinput-measure-touchpad-pressure.man tools: make the thumb threshold configurable while measuring pressure 2020-03-30 14:45:19 +10:00
libinput-measure-touchpad-pressure.py Use python black for all pyhon file formatting 2021-01-28 21:02:45 +00:00
libinput-measure-touchpad-size.man Remove trailing whitespaces in the tree 2022-11-25 10:08:20 +10:00
libinput-measure-touchpad-size.py Use python black for all pyhon file formatting 2021-01-28 21:02:45 +00:00
libinput-measure-touchpad-tap.man treewide: fix typos 2020-12-16 22:08:23 +01:00
libinput-measure-touchpad-tap.py Use python black for all pyhon file formatting 2021-01-28 21:02:45 +00:00
libinput-measure.c libinput-measure.c: remove unused includes 2019-09-13 00:07:39 +03:00
libinput-measure.man tools: add a measure touchpad-size tool 2020-03-30 15:14:45 +10:00
libinput-quirks.c tools: fix a few scan-build dead store warnings 2023-04-20 09:51:49 +10:00
libinput-quirks.man tools: rename list-quirks to the more generic "quirks list" 2018-07-03 15:16:59 +10:00
libinput-record-verify-yaml.py Use python black for all pyhon file formatting 2021-01-28 21:02:45 +00:00
libinput-record.c tools/record: record the DRIVER property in the recording 2024-06-04 16:54:28 +10:00
libinput-record.man tools/record: add support for hidraw recording 2021-05-05 03:59:34 +00:00
libinput-replay.man tools: add --replay-after and --once to libinput replay 2023-02-06 18:02:58 +00:00
libinput-replay.py tools/record: record the DRIVER property in the recording 2024-06-04 16:54:28 +10:00
libinput-test.c tools: add a libinput test tool as entry point for our test suites 2022-05-09 05:03:00 +00:00
libinput-test.man test: install libinput-test-utils as part of install-tests 2022-05-09 05:03:00 +00:00
libinput-tool.c tools: hide debug-gui help when building with -Ddebug-gui=false 2022-10-10 08:27:05 +02:00
libinput.man man: hide debug-gui from the libinput.man page if disabled 2023-06-09 13:00:08 +10:00
make-ptraccel-graphs.sh tools: make-ptraccel-graphs: drop an unnecessary outfile 2018-07-11 16:04:59 +10:00
ptraccel-debug.c Introduce custom acceleration profile 2023-01-17 01:46:17 +00:00
razer-quirks-lister.py tools: add a tool to update our Razer quirks for internal keyboards 2023-04-11 14:48:41 +10:00
shared.c tools/debug-events: add ability to compress motion events 2024-09-11 12:49:28 +10:00
shared.h tools/debug-events: add ability to compress motion events 2024-09-11 12:49:28 +10:00
test_tool_option_parsing.py touchpad: add sticky mode to drag-lock 2024-09-05 00:47:47 +00:00