一个按键失灵救急脚本

简单方便的定制快捷键,解决笔记本中某些按键失灵问题。

"""
按键失灵急救脚本 (Python 版)

原理同 AutoHotkey 版:给失灵的按键指定一个替代组合键
(默认用键盘上物理相邻的按键 + Ctrl+Shift),脚本监听到这个
组合键时,自动帮你"补发"一次失灵按键的按下事件。

依赖:
    pip install keyboard
"""

import keyboard

# ------------------ 配置区 ------------------
# 格式: "触发组合键": "要模拟输出的失灵按键"
# 例如 6 键失灵,用 ctrl+shift+7 触发
KEY_MAP = {
    "ctrl+shift+7": "6",   # 6 键失灵,用旁边的 7 触发
    "ctrl+shift+-": "0",   # 0 键失灵,用旁边的 - 触发
    # 继续在这里添加,比如:
    # "ctrl+shift+s": "a",  # a 键失灵,用旁边的 s 触发
}
# ---------------------------------------------


def make_handler(hotkey, target_key):
    def handler():
        print(f"触发了: {hotkey}  ->  将输入: {target_key}")
        # 触发这一刻,Ctrl/Shift 物理上还是按住的状态,
        # 如果直接发送目标键,会被系统识别成
        # "Ctrl+Shift+目标键" 这样一个新的组合键,导致什么都不输出。
        # 所以先手动发一个"松开"事件,把 Ctrl/Shift 的状态清掉。
        keyboard.release('ctrl')
        keyboard.release('shift')
        keyboard.send(target_key)
    return handler


def main():
    for hotkey, target in KEY_MAP.items():
        keyboard.add_hotkey(hotkey, make_handler(hotkey, target), suppress=False)
        print(f"已绑定: {hotkey}  ->  模拟按键 {target}")

    print("脚本已启动,按 Ctrl+C 退出。")
    keyboard.wait()


if __name__ == "__main__":
    main()
image.png
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容