@rubick-extra/io-tools
v0.0.2
Published
io-tools是rubick-extra提供的工具插件,主要用于处理io监听及触发
Readme
@rubick-extra/io-tools
项目简介
io-tools 是 rubick-extra 提供的系统级插件,主要用于监听和处理计算机输入输出设备事件(如键盘、鼠标操作),并通过 Electron 的进程通信机制实现事件的跨进程传递。该插件支持快捷键记录、组合键验证、鼠标事件识别等功能,适用于需要监听用户输入行为的 Electron 应用场景。
功能特点
多设备事件监听:支持键盘按下 / 抬起、鼠标按下 / 抬起等事件的实时捕获
跨进程事件传递:通过 Electron 的
ipcMain和ipcRenderer实现主进程与渲染进程的事件通信快捷键智能记录:自动识别有效快捷键组合,支持修饰键(Ctrl/Alt)组合、鼠标按键组合等
上下文管理:动态管理多个渲染进程上下文的事件订阅与取消订阅
事件格式化:将原始设备事件转换为可读的快捷键格式,支持鼠标长按 / 短按识别
事件处理流程
主进程通过
uiohook监听设备事件事件触发时通过
ipcMain广播到所有订阅的主进程及渲染进程渲染进程通过
useIOEvents接收事件并分发给处理器ShortcutRecorder处理事件流,识别有效快捷键组合格式化后的快捷键状态通过回调函数通知应用层
许可证
该项目遵循 MIT 许可证,详情见 LICENSE 文件。
