V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
snomiao
V2EX  ›  分享创造

CapsLockX - 像黑客一样操作电脑

  •  
  •   snomiao · 25 天前 · 2255 次点击

    酱~

    CapsLockX 是一款基于 AutoHotkey 的模块化热键脚本引擎。 让你可以轻轻松松像电影里的黑客一样,双手不离开键盘,高效率地操作电脑。这里有超多一摸就懂超好上手的功能:编辑增强、虚拟桌面与窗口管理、鼠标模拟、应用内热键增强、JS 数学表达式计算、等超多功能等你来亲自定义。主仓库地址:https://github.com/snolab/CapsLockX

    jsdelivr_NPM jsdelivr_GITHUB gh-pages NPM

    入门教程第一

    太长不看版 TL;DR

    下这个: 下载 JSDelivrCDN-发布程序包.zip

    装上之后,按住 CapsLockX,然后按 WASD 鼠标移动,QE 点击 RF 滚轮,HJKL 光标移动,YOUI 页面移动,ZXCV 窗口管理,1234567890 切换虚拟桌面,M 打开配置。

    安装与使用

    绿色程序包(新手适用,稳定版)

    源码打包就是软件本体,无需编译,纯绿色软件解压即用。源码 + 程序包,推荐第一个(最快)。

    解压后使用即可,启动与自启动的方法: 双击 CapsLockX.exe 即可启动脚本,如需添加启动项,请在开始菜单 - 运行输入 shell:startup 然后给本程序创建快捷方式,扔进去就可以了。

    命令行方式安装(进阶用户推荐,可自动更新)

    以下几种任选其一,推荐第一个(最快)

    使用方式

    启动脚本后, 你可以尝试:按下 Alt, 按住 Tab, 然后按 WASD 切换选中窗口, 再按 C 关闭窗口,

    某些功能需要使用管理员身份运行(如鼠标模拟) 在 CapsLockX-Settings.ahk 中 手动修改 global T_AskRunAsAdmin := 1 即可 如不需要,可以改为 0

    目录第二

    使用手册第三

    • 按住 CapsLock 进入 CapsLockX 模式,此时你的键盘会成为像 Vim 默认模式那样的功能键盘,(键位见下

    CapsLockX 默认加载了一些常用的模块,功能与使用方法已在下方列出。 对于不需要的模块,你也可以直接删除 ./Modules 目录下对应的文件,然后按 Ctrl + Alt + \ 重新加载即可。

    帮助模块

    如果你想学习如何开发 CapsLockX 的插件,请:

    1. 打开 Modules/01-Help.ahk , 你可以了解到 CapsLockX 插件的基本格式
    2. 将它复制一份,命名为你自己的插件名称
    3. 将它本来的功能改成你自己需要的功能,插件的开发就完成啦!

    本模块功能见下

    作用于 按键 功能
    全局 CapsLockX + / 临时显示热键提示
    全局 CapsLockX (长按) 临时显示热键提示
    全局 CapsLockX + Alt + / 🔗 打开 CapsLockX 的 README.md 页面
    全局 CapsLockX + Shift + / 🕷 提交 bug 、建议等

    模拟鼠标插件( WASD QERF )

    功能

    • 本模块使用按键区:CapsLockX + QWER ASDF
    • 非常舒适地使用 WASD QE RF 来模拟 [完整的] 鼠标功能,相信我,试过这种手感之后,你会喜欢上它的。
    • 指针移动时会自动黏附各种按钮、超链接。滚轮的指数级增长的加速度滚动机制使你再也不惧怕超级长的文章和网页。
    • 效果如图: 鼠标模拟.gif

    使用方法如下

    作用于 按键 说明
    全局 CapsLockX + w a s d 鼠标移动(上下左右)
    全局 CapsLockX + r f 垂直滚轮(上下)
    全局 CapsLockX + R F 水平滚轮(左右)
    全局 CapsLockX + Alt + r f 垂直滚轮自动滚动(上 下)
    全局 CapsLockX + Alt + R F 水平滚轮自动滚动(左 右)
    全局 CapsLockX + rf rf 同时按相当于鼠标中键
    全局 CapsLockX + e 鼠标左键
    全局 CapsLockX + q 鼠标右键

    编辑增强插件( TG YUIO HJKL )

    这个世界上还有比 Vim 模式的 HJKL 移动光标更棒的东西吗? 这个必须有! 那就是带加速度的 HJKL 流畅编辑体验!想不想试试让你的光标来一次排水沟过弯的高端操作?装它!

    光标移动.gif

    作用域 Edit 模块 说明
    全局(基本) CapsLockX + h j k l 上下左右 方向键
    全局(基本) CapsLockX + y o Home End
    全局(基本) CapsLockX + u i PageUp PageDown
    全局(基本) CapsLockX + g 回车
    全局(基本) CapsLockX + t BackSpace
    全局(进阶) CapsLockX + Shift + t Delete
    全局(进阶) CapsLockX + hl hl 一起按选择当前词
    全局(进阶) CapsLockX + kj kj 一起按选择当前行

    窗口增强插件 (123456789-=XC)

    功能简述

    12 个虚拟桌面豪华配置、多显示器自动排列窗口、半透明置顶、

    1. 快速排列窗口:CapsLockX + C
    2. 左手窗口管理:在 Alt + Tab 的时候,用 WASD 切换窗口,X 关掉窗口
    3. 高效使用虚拟桌面:CapsLockX + 0123456789-= 切换、增减虚拟桌面,加上 Alt 键可以转移当前窗口

    效果图

    使用方法如下 ( Alt+Tab 与 CapsLockX )

    作用域 窗口增强模块 说明
    Alt+Tab 界面 Q E 左右切换多桌面
    Alt+Tab 界面 W A S D 上下左右切换窗口选择
    Alt+Tab 界面 X C 关闭选择的窗口(目前 X 和 C 没有区别)
    Win+Tab 视图 Alt + W A S D 切换窗口选择
    全局 CapsLockX + 1 2 ... 9 0 - = 切换到第 1 .. 12 个桌面
    全局 CapsLockX + Backspace 删除当前桌面(会把所有窗口移到上一个桌面)
    全局 CapsLockX + Shift + 1 2 ... 9 0 - = 把当前窗口移到第 n 个桌面(如果有的话)
    全局 CapsLockX + C 快速排列当前桌面的窗口
    全局 CapsLockX + Ctrl + C 快速排列当前桌面的窗口(包括最小化的窗口)
    全局 CapsLockX + Shift + C 快速堆叠当前桌面的窗口
    全局 CapsLockX + Shift + Ctrl + C 快速堆叠当前桌面的窗口(包括最小化的窗口)
    全局 CapsLockX + Shift + [ ] 把当前窗口移到上一个 /下一个桌面
    全局 CapsLockX + Z 循环切到最近使用的窗口
    全局 CapsLockX + Shift+ Z 循环切到最不近使用的窗口
    全局 CapsLockX + X 关掉当前标签页 Ctrl+W
    全局 CapsLockX + Shift+ X 关掉当前窗口 Alt+F4
    全局 CapsLockX + V 让窗口透明
    全局 CapsLockX + Shift+ V 让窗口保持透明(并置顶)

    Surface 笔记本扩充功能键

    专治各种笔记本残破键盘

    1. 没有右 Ctrl 键?合并 Menu 与 右 Ctrl 键,Menu 当 Ctrl 用 或者 Ctrl 当 Menu 用都可以
    2. 没有 Pause 键? Win + Alt + P 也能打开系统设定信息。
    3. 待补充
    模式 按键 功能
    全局 Win + Alt + P 相当于 Win + Pause,专为笔记本定制
    全局 右 Ctrl 按一下 会按一下 Menu 弹出菜单
    全局 按住右 Menu 会按住 Ctrl,此时可以与其它键组合

    秒打时间戳

    模式 秒打时间戳 说明
    全局 #D# 插入日期, 类似 2021-04-19- 这样的时间戳
    全局 #DD# 插入日期, 类似 (20190115) 这样的时间戳
    全局 #T# 插入日期时间, 类似 20190115.164744 这样的时间戳
    全局 #TT# 插入日期时间, 类似 (20190115.164744) 这样的时间戳
    全局 #DT# 插入日期时间, 类似 2021-04-19 04:30:35 这样的时间戳

    Anki 增强模块

    模式 Anki 增强模块 说明
    在 Anki-学习界面 w 或 k 或 ↑ 按下=撤销,松开显示答案
    在 Anki-学习界面 a 或 h 或 ← 按下=顺利,松开显示答案
    在 Anki-学习界面 s 或 j 或 ↓ 按下=困难,松开显示答案
    在 Anki-学习界面 d 或 l 或 → 按下=生疏,松开显示答案
    在 Anki-学习界面 q 返回上个界面
    在 Anki-学习界面 c 添加新卡片
    在 Anki-学习界面 1 或 NumPad1 困难(原键位不动)
    在 Anki-学习界面 2 或 NumPad2 生疏(原键位不动)
    在 Anki-学习界面 3 或 NumPad3 一般(原键位不动)
    在 Anki-学习界面 4 或 NumPad4 顺利(原键位不动)
    在 Anki-学习界面 5 或 NumPad5 撤销
    在 Anki-学习界面 6 或 NumPad6 暂停卡片
    在 Anki-学习界面 Alt + i 快速导入剪贴版的内容(按 Tab 分割) / 比如可以从 Excel 复制
    在 Anki-添加卡片界面 Alt + s 按下 添加 按钮

    此插件可配合手柄使用,使用 XPadder 配置手柄摇杆映射到方向键即可。

    效果请见 bilibili 中二雪星怎背词 - 手柄怎么可以不用来背单词!

    Edge 增强模块(测试中)

    模式 按键 说明
    在 Edge 内 Alt + w 拿出笔(全屏模式暂时不支持)
    在 Edge 内 Alt + q 换左边的笔 /橡皮(全屏模式暂时不支持)
    在 Edge 内 Alt + e 换右边的笔 /橡皮(全屏模式暂时不支持)
    在 Edge 内 Alt + , 上一章 /节
    在 Edge 内 Alt + . 下一章 /节
    在 Edge 内 Alt + / 显示目录
    在 Edge 内 Alt + ; 切换自适应页面大小模式
    在 Edge 内 Alt + ' 切换双页布局模式

    MSTSC 远程桌面增强

    模式 按键 功能说明
    任意窗口 双击左边 Shift+Ctrl+Alt 后置当前窗口,用于远程桌面与虚拟机,使其可与本机桌面窗口同时显示

    OneNote 2016

    我很确定我们用的不是同一个 OneNote,因为,你没有装 CapsLockX !

    按键分布设计(开发中)

    按键描述 作用 备注
    所有 OneNote 自带热键 原功能
    按一下 Alt 再按别的 触发 OneNote 原菜单功能
    Alt + / 热键帮助、提示 开发中
    Alt + 1234567 大纲折叠展开到 1-7 层级
    Alt + qwe asd rf 工具、换笔、视图
    Alt + -= 公式
    Alt + m 移动笔记
    Alt + hjkl 各种链接功能
    Alt + zxcv 高级复制粘贴
    F2 F3 重命名、查找笔记

    详细按键表 / CheatSheet

    作用于 格式热键 功能
    OneNote2016 Alt + 1234567 大纲:大纲折叠展开到那层(强烈推荐,超好用)
    OneNote2016 Ctrl + Shift + c 转换:复制(纯文本)
    OneNote2016 Ctrl + Shift + v 转换:粘贴(纯文本)
    OneNote2016 F2 整理:重命名笔记
    OneNote2016 Shift + F2 整理:重命名分区
    OneNote2016 Alt + m 整理:移动笔记
    OneNote2016 Alt + Shift + m 整理:移动分区
    OneNote2016 Ctrl + n 整理:新建笔记
    OneNote2016 Ctrl + Alt + n 整理:在当前笔记下方新建笔记
    OneNote2016 Alt + Delete 整理:快速删除当前页面
    OneNote2016 Ctrl + s 整理:立即同步此笔记本
    OneNote2016 Ctrl + w 整理:关闭窗口
    OneNote2016 Shift + Delete 编辑:快速删除当前行
    OneNote2016 Alt + - 编辑:自动 2 维化公式
    OneNote2016 Alt + k 编辑:展开当前关键词的相关页面链接(快速关键词一对多链接)
    OneNote2016 Alt + n 样式:切换页面为无色背景
    OneNote2016 Alt + v 样式:改变文字背景色
    OneNote2016 Alt + q 工具:拖动
    OneNote2016 Alt + w 工具:套锁
    OneNote2016 Alt + e 工具:橡皮
    OneNote2016 Alt + s 工具:输入
    OneNote2016 Alt + a 工具:换到第 2 支笔
    OneNote2016 Alt + d 工具:打开换笔盘(然后可可方向键选笔 (目前全屏无效)
    OneNote2016 Alt + d 然后 1234567 工具:打开换笔盘(然后选第 1 行第 x 支笔) (目前全屏无效)
    OneNote2016 Alt + d 然后 Shift + 1234567 工具:打开换笔盘(然后选第 2 行第 x 支笔) (目前全屏无效)
    OneNote2016 Alt + r 视图:缩放到原始大小
    OneNote2016 Alt + y 视图:缩放到页面宽度
    OneNote2016 ^!+- 或 ^!+= 视图:缩小页面 或 放大页面
    OneNote2016 Alt + f 视图:搜索标记
    OneNote2016 创建链接窗口 Alt + s 转换:复制当前所有搜索结果页面的链接
    OneNote2016 创建链接窗口 Alt + Shift + s 转换:复制当前所有搜索结果页面的链接并粘贴
    剪贴板 笔记打开时 Ctrl + C 转换:追加复制的内容到该笔记
    Clipboard 笔记打开时 Ctrl + C 转换:追加复制的内容到该笔记

    TIM 添加常驻功能模块

    模式 按键 功能
    在 Tim 窗口内 Alt + f 焦点定位到左上角搜索框
    在 Tim 窗口内 Ctrl + PgUp 切换上一个窗口
    在 Tim 窗口内 Ctrl + PgDn 切换下一个窗口

    讯飞输入法悬浮窗插件

    用法

    作用于 按键 功能说明
    全局 Win + H 启动 /切换讯飞语音输入

    1. Win + H 的功能是 Windows 自带听写,安装本插件后,可通过 Win + Shift + H 使用原 Windows 的听写
    2. 若没有安装讯飞语音则会自动询问是否引导下载安装

    效果如下图

    应用-讯飞语音输入法悬浮窗演示.gif

    媒体键模块

    作用于 媒体键模块 说明
    全局 CapsLockX + F1 打开:我的电脑
    全局 CapsLockX + F2 打开:计算器
    全局 CapsLockX + F3 打开:浏览器主页
    全局 CapsLockX + F4 打开:媒体库(默认是 Windows Media Player )
    全局 CapsLockX + F5 播放:暂停 /播放
    全局 CapsLockX + F6 播放:上一首
    全局 CapsLockX + F7 播放:下一首
    全局 CapsLockX + F8 播放:停止
    全局 CapsLockX + F9 音量加
    全局 CapsLockX + F10 音量减
    全局 CapsLockX + F11 静音
    全局 CapsLockX + F12

    定时任务

    使用 CapsLockX + M 打开配置,然后修改 EnableScheduleTasks=1 即可启用本插件。

    • 使用番茄报时( 00 分和 30 分播放工作铃声,每小时的 25 分和 55 分播放休息铃声)(需要先开启定时任务)

      UseTomatoLife=1
      
    • 使用番茄报时时,自动切换桌面(使用番茄报时时,自动切换桌面(休息桌面为 1,工作桌面为 2 )

      UseTomatoLifeSwitchVirtualDesktop=1
      

    雪星转屏模块

    功能:同步旋转你所有的屏幕,自动对齐屏幕边界,不会错位

    使用方式如下

    模式 按键 功能
    全局 CapsLockX + Alt + 方向键 上 下 左 右 同时旋转所有屏幕到你指定的方向

    过去与未来第四

    制作背景 ( 2017 年秋)

    本人比较经常写代码… 起初我是右鼠……后来觉得鼠标放右边有点远……改成了左鼠 左鼠之后发现手还是要离开键盘……于是做了个 WASD 模拟鼠标的东西。(然后就能一直用右手托着下巴玩电脑了) 后来写的脚本越来越多,就把其中一些常用的放到一起加载……

    发展路线

    本项目的核心理念是:简化系统操作逻辑,提升操作效率,且尽量不与原有习惯键位冲突。

    1. <input checked="" disabled="" type="checkbox"> 按 CapsLockX + / 键显示对应帮助(目前的显示样式相当草率)
    2. <input disabled="" type="checkbox"> 自动更新(虽然 git pull 一下也不是不行)
    3. <input disabled="" type="checkbox"> 初次使用上手教程(这个真没有……)
    4. <input disabled="" type="checkbox"> 插件管理器(虽然文件系统也可以搞定)
    5. <input disabled="" type="checkbox"> 自动配置同步功能(虽然一般来说扔 onedrive 就够)
    6. <input disabled="" type="checkbox"> 易用的选项配置的 UI 界面(虽然改 ini 也不是什么难事)
    7. <input disabled="" type="checkbox"> 执行外部代码( Python 、Nodejs 、外部 AHK 、Bash 、……)(虽然写个脚本 run 一下也并不算麻烦)

    如果你有任何想法或建议,请在这里提出: Issues · snomiao/CapslockX

    17 条回复    2021-04-30 10:59:17 +08:00
    snomiao
        1
    snomiao   25 天前
    如果你有任何想法或建议,除 github 外也可以在这里(评论区)提出。
    weak
        2
    weak   25 天前 via Android
    还挺有趣
    yangbin9317
        3
    yangbin9317   25 天前
    楼主真是个人才
    yangbin9317
        4
    yangbin9317   25 天前   ❤️ 11
    以 CapsLock 为抓手,打通底层逻辑,拉齐 Windows 和 Linux WM,解决了 Windows 难用的痛点
    wty21cn
        5
    wty21cn   25 天前
    @yangbin9317 老阿里了
    snomiao
        6
    snomiao   24 天前
    @yangbin9317 现已加入帮助文档套餐
    adocder
        7
    adocder   24 天前
    我寻思搞渗透的好像也不用 win 工作吧
    no1xsyzy
        8
    no1xsyzy   23 天前
    @adocder 大约是黑客( hacker )的本义,而非讹义。
    adocder
        9
    adocder   21 天前
    @no1xsyzy shell+快捷键比这效率多了,记一套不通用的用鼠标操作图形界面的快捷键没看出来哪里 hack 了
    no1xsyzy
        10
    no1xsyzy   21 天前
    @adocder 俺寻思这个项目看上去就是在尝试将快捷键 “通用化”,至于是否完成了这一目的、完成得出色与否,是结果论的部分。
    GUI 也是 Palo Alto 的顶尖 hacker 们发明的。不要 shell 中心主义
    admonition
        11
    admonition   21 天前
    @adocder 渗透测试大都是:kail 虚拟机+win/mac
    ddzzhen
        12
    ddzzhen   20 天前 via Android
    很有创意,主要快捷键有就够了
    adocder
        13
    adocder   20 天前
    @admonition 对啊,工作主体还是 Linux 啊
    admonition
        14
    admonition   20 天前
    @adocder 其实是浏览器
    adocder
        15
    adocder   20 天前
    @admonition 哈哈哈,面向 stackoverflow
    gledos
        16
    gledos   17 天前
    推荐配合安装下面的油猴脚本,修改作用域为全局,可以防止长按空格导致浏览器快速下滑。

    greasyfork.org/en/scripts/25035-disable-space-bar-scrolling
    devcat
        17
    devcat   16 天前
    楼主的想法确实挺有意思的,而且也践行了自己的想法,已经很棒了
    hack 也不一定非要局限于 shell 而排拆 GUI 吧?
    关于   ·   帮助文档   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1999 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 18ms · UTC 15:43 · PVG 23:43 · LAX 08:43 · JFK 11:43
    ♥ Do have faith in what you're doing.