如意百宝箱, 一款快速启动自定义动作的脚本

如意百宝箱-Ahk 简介

如意百宝箱-Ahk: 如意百宝箱是一款针对不同窗口和选中文件显示一个定制的动作面板的快捷启动工具. 动作面板由热键或鼠标手势来显示, 然后点击动作按钮来执行动作, 也可以由单独的热键或鼠标手势直接执行动作. 软件可以自由新增动作(如改写内置动作, 添加外部 ahk 脚本).

脚本下载: https://wyagd001.github.io/RuYi-Ahk/RuYi.zip

当前版本: 2.4 - 2023/11/01

最新发布: https://github.com/wyagd001/RuYi-Ahk

关键词及目录: AutoHotkey 快捷键与模式 面板 动作 外部脚本

功能介绍

如意百宝箱受到类似软件 Quicker, Ahk 的 Windy 和 Candy 脚本的影响, 是一款由 AutoHotkey 脚本语言编写的快速启动软件. 打开 “如一.exe” 即启动了程序, 然后在不同的窗口按下 Ctrl+Mbutton 即可显示定制的动作面板, 点击面板上的按钮来执行相应的动作, 也可以使用鼠标手势 “上右” 来显示主面板. 欢迎大家试用,?非常渴望倾听您的声音. 欢迎您的任何意见、建议、疑问、吐槽, 或者鼓励.

快捷键与模式

不同的快捷键对应不同的显示模式. 如意百宝箱的 3 组快捷键 Ctrl+Mbutton, Ctrl + 1, Alt + CapLocks 分别对应着面板, 菜单, 工具提示这 3 种模式. 热键可以在配置文件 “如一.ini” 中手动修改(重启程序后生效).

  • Ctrl+Mbutton 表示 Ctrl+鼠标中键, 可以右键托盘图标, 通过托盘菜单的 “热键管理\面板模式热键管理” 或 “如意设置\热键管理” 来修改为其他按键(不用重启程序, 直接生效). 按下热键后显示一个主面板, 主面板由上面的 12 个按钮(针对当前窗口) 和下面的 12 个按钮(针对选中的文字, 或文件, 由 Ctrl+C 获取) 组成, 其中每个按钮执行一个指定的动作.

    • 下图是主面板图片
      Image text
  • Ctrl + 1, 将面板模式转换为菜单模式, 按下后面板显示为菜单, 其中每个菜单执行对应着一个指定的动作, 该模式在针对当前窗口操作时容易获取到当前窗口. 可以通过托盘菜单的 “热键管理” 或 “如意设置” 来自定义该热键.
    Image text

  • Alt + CapLocks 热键将面板模式转换为纯按键模式. 按下后将面板显示为工具提示, 工具提示中的每个项目通过按键(0-9, q-]) 来执行一个动作. 可以通过托盘菜单的 “热键管理” 或 “如意设置” 来修改为其他按键.
    Image text

  • 额外的热键: 鼠标手势(仅上下左右四个方向)[[1.5+]], 使用鼠标手势 “上右” 来显示主面板. 可以手动修改配置文件 “如一.ini”, 或整体关闭鼠标手势, 但推荐通过托盘菜单的 “如意设置” 来自定义.

面板

面板为动作的集合, 在按下上面的热键后显示, 点击面板上的按钮或菜单中的项目来执行相应的动作. 其配置文件为 “面板列表.ini”, 定义了面板中按钮的顺序, 可以手动修改(重启程序后生效), 其配置形式为[面板名称], 其下条目 1=动作编号1, 2=动作编号2…

  • 面板分为 3 种类型: 窗口进程名和窗口Class(例如, 资源管理器的 [explorer], [CabinetWClass], [Progman]), 选中文件的的扩展名(如 txt, 文件夹, 短文本, 长文本)和自定义名称. 前两种会根据优先级自动显示在主面板界面(按下热键后根据窗口类名和选中内容自动匹配), 后者多用于子面板(由主面板上的按钮来启动).

    • .1 主面板上部面板顺序(优先级): 当前窗口的进程名 > 当前窗口的窗口 Class > 窗口默认(当前窗口没有定义面板时显示)
    • .2 主面板下部面板顺序: 选中文件扩展名 > 文件默认 > 无选中
    • .3 选中文件扩展名包含的种类: 盘符, 文件夹, 多文件, 选中文件扩展名(如 txt), 短文本, 长文本
  • 下图为面板中的按钮编辑菜单, 可以左右移动按钮位置和删除按钮.
    [[2.3+]]鼠标可以拖拽按钮到其他按钮的位置, 实现两个按钮交换位置的效果.
    Image text
    Image text

  • 下图为面板中的按钮编辑界面, 指定按钮的要执行动作的编号.
    Image text

动作

每个动作代表一个预设好的命令, 面板上的按钮对应一个动作, 点击面板上的按钮就会执行相应的动作. 动作设置保存在[[1.1+]] “配置文件/内置动作.ini” 和 “配置文件/自定义动作.ini” 文件中.

  • 完整的内置动作列表

  • 动作有以下 10 种类别: 运行(Run), 面板(Gui), 菜单(Menu), 发送按键(Key), 内置命令和函数(Cando 和 CanFunc), 使用指定程序打开选中文件(OpenWith), 设置剪贴板(SetClip), 对话框(Msgbox), 动作组合(CombActions).

    • .1 运行: 运行程序, 打开文件(文件夹, 网址). 如打开C盘写为 “Run|C:”, 打开记事本写为 “Run|notepad.exe”. 要运行的外部 Ahk 脚本统一放在 “外部脚本” 目录.
    • .2 面板: 在主面板上点击按钮后, 显示一个子面板. 动作写作 “Gui|常用工具”
    • .3 菜单: 在主面板上点击按钮后, 显示一个子面板中按钮的菜单. 动作写作 “Menu|常用工具”
    • .4 发送按键: 在当前窗口发送按键. 例: Keys|^w 表示发送 Ctrl+w
    • .5+6 内置命令和函数: 执行内置的 ahk 脚本标签和函数. 例: canfunc|CF_FileRemoveBlankDir|%Windy_CurWin_FolderPath% 其中 CF_FileRemoveBlankDir 为内置函数名称(删除指定文件夹下的空目录), %Windy_CurWin_FolderPath% 为函数的参数变量(资源管理器的当前窗口的目录)
    • .7 使用指定程序打开选中文件. 例: openwith|Notepad.exe 使用记事本打开选中的文件
    • .8 设置剪贴板: 将剪贴板设为某个变量的值. 例: setclip|CandySel 将选中文本或文件(的路径) 放入剪贴板
    • .9 对话框: 测试用, 显示变量的值.
    • .10 动作组合[2.4+]: 依次执行指定的多个动作
  • 动作的管理由托盘菜单的 “动作管理” 和面板按钮编辑界面的 “转到动作编辑” 按钮来启动.
    动作管理界面可以编辑动作, 例如修改动作的图标, 名称, 针对的对象, 热键, 鼠标手势, 说明文本, 动作的命令. 也可以在这里创建新的动作(自定义动作编号 > 5000).
    Image text

  • 动作除了通过通过面板或菜单运行外, 还可以通过以下方式运行

    • .1 [1.5+]动作可以设置单独的热键, 如 “^!a”, 表示 Ctrl + Alt + a 热键来直接启动该动作
    • .2 [1.5+]动作可以设置单独的鼠标手势(上下左右), 如 “左”, 表示按下鼠标右键后向左拖, 默认配置是将窗口放到左半屏幕.
    • .3 [1.8+]动作可以通过热字串来启动打开. 例: 默认的 “jsb” 来打开记事本
    • .4 [1.7+]通过动作搜索界面来打开
    • .5 [1.7+]设置动作悬浮为按钮, 可以通过点击单个动作的悬浮按钮来打开.
    • .6 [1.9+]在如意运行时, 通过运行主程序加动作编号的方式, 如 “如一.exe 1017” 来打开指定动作
    • .7 [1.9+]如意固定到任务栏, 通过任务栏按钮菜单点击菜单项目打开最近的某个动作(可固定动作)(启动方式同 6)
    • .8 [2.0+]设置跟随或定时动作, 启动如意时自动打开或定时打开
    • .9 [2.1+]设置文件右键菜单, 通过资源管理器中文件的右键菜单打开(启动方式同 6, 但是带有文件路径参数)
    • .10 [2.1+]通过网页(运行着如意的电脑浏览器打开链接) 来打开执行动作(任意窗口和无条件的动作)
    • .11 [2.3+]设置动作到托盘按钮, 通过点击托盘按钮来打开

外部脚本

  • 许多动作是由外部的 ahk 脚本来完成的, 它们统一放在 “外部脚本” 目录. 现在内置的外部动作脚本有 202 个.
8 个赞

这不是提供中文文档的大佬吗,强啊

我c,果然是!
感谢大佬坚持更新文档!

是我写 AHK 时必须参考的文档作者(翻译者),膜拜并感激~

绝对是倾注了不少心血的好东西。
不过,小小好奇一下,
为啥既然叫如意百宝箱,软件名字不叫如意,要叫如一呢?

牛逼.

好软件. 支持.

持续关注,感谢作者创作的软件,希望能成为一个标杆一般的软件。

好东西!github已加星
把Candy改成v2了,已经完成所有脚本切换。
大佬是不是也考虑下将如一切换到v2,哈哈

一直都想把Candy改成V2版本的,可惜没有那个实力,感谢做出的工作,已经Star

大佬太牛了~

真是绝了,膜拜大佬!:cow:
Quicker 长按鼠标右键激活面板,光标移动到某个动作上松开即运行,这一招也值得复刻:heavy_check_mark:

今天详细看了一下项目,主脚本还是V1版本的啊,Candy.exe也是V1.1.15.04,是还没更么?

就是 v1 编写的,但是可以调用 v2 的外部脚本

不太想使用频繁使用的左键, 右键作为热键来呼出面板或菜单.

  1. 入口级操作值得最快捷、省力的启动方式
  2. 长按右键不需要滑动鼠标,不需要记忆手势,是最省力和快捷的,而且它和98%的软件和平共处,没有冲突

这个是Candy 的AHK V2版.
Candy/Candy-V2.ahk at master · valuex/Candy · GitHub