仿 Rolan、对标 Maye 的开源快速启动器。Python + PySide6 实现,只有一个悬浮小面板:全局热键呼出,把东西拖进来,点一下就启动。
- 条目类型:应用(可带参数、工作目录、管理员运行)/ 文件 / 文件夹 / 网址 / 命令,五类统一右键管理
- 拖拽添加:从资源管理器把 exe / 文件 / 文件夹 / 网址(含
.url文件、裸域名如github.com)拖进面板即成条目,支持多选批量;也可右键新建 - 自动图标:自动提取 exe/lnk 图标,网址后台自动抓取 favicon
- 右键菜单:运行 / 管理员运行 / 在资源管理器中显示 / 复制路径 / 编辑 / 移动到分组 / 删除
- 条目快捷键:每个条目可设全局快捷键,无需呼出面板直接启动
- 参数变量:启动参数支持
%mp%(条目所在目录)、%mr%(所在盘根)及系统环境变量
- 全局热键呼出/隐藏,失焦自动隐藏(1.2s 宽限期,拖拽文件进来不会被吞),ESC 关闭
- 分组多页:页签切换、滚轮在页签上滚动换组、拖动页签给分组排序、页签右键重命名/删除
- 跨组移动条目两种手势:拖到目标页签松手;或悬停页签自动翻页后把图标放进面板任意位置
- 组内拖动排序:光标落在目标格左半边插到它前面、右半边插到后面,拖动时格子边缘有强调色指示线
- 边缘拖拽调大小:鼠标贴边变缩放光标,松手自动换算成列数/行数保存;面板位置可锁定
- 高度自适应:内容不满一页时面板自动收矮(手动调过大小后则以设置为准)
- 过滤条目,支持拼音前缀(输
jsb匹配"记事本"),回车启动第一个结果,↓进入列表 > 命令—— 在新终端窗口执行,如> ping example.com<—— 打开 Windows 运行对话框s 词百度 /b 词必应 /g 词谷歌 /d 词DuckDuckGo
- 深色 / 浅色主题 + 自定义强调色,面板不透明度可调
- 开机自启(HKCU Run 注册表)、单实例(重复启动唤出面板)、位置记忆
- 配置导入 / 导出;配置原子写入 + 自动备份(
config.bak.json)
| 按键 | 作用 |
|---|---|
Ctrl+Alt+L(默认,可改) |
全局呼出 / 隐藏面板 |
Esc |
关闭面板 / 退出命令条 |
| 直接打字 | 打开命令条并过滤 |
Enter |
启动选中项 / 命令条第一个结果 |
↓(命令条中) |
进入结果列表 |
| 单击 / 双击 | 启动条目(设置可选) |
双击 dist/Lulen.exe 即可(约 40MB,单文件,绿色免安装)。数据与源码方式共用,位于 %APPDATA%\Lulen\。
conda create -n Lulen python=3.12 -y
conda run -n Lulen pip install -r requirements.txt
conda run -n Lulen python main.py命令行参数:
| 参数 | 作用 |
|---|---|
--hidden |
启动后仅驻留托盘(开机自启用) |
--selftest |
离屏自检(热键解析 / 模型 / 持久化 / 渲染) |
--screenshot x.png |
渲染面板截图后退出(隔离临时配置) |
--theme dark|light |
截图模式指定主题 |
--fresh |
忽略现有配置启动 |
配置位于 %APPDATA%\Lulen\config.json,结构一目了然(分组 → 条目数组),可手动编辑;损坏时自动回退 config.bak.json。
数据目录可自定义:设置 → 系统 → 数据目录 → 更改…,选择目标文件夹后自动把配置、备份、图标缓存整体迁移过去并在界面即时生效(自定义位置记录在 %APPDATA%\Lulen\data_dir.txt 指针文件里,删掉该文件即回默认位置)。用环境变量 LULEN_HOME 也可以覆盖数据目录(便携模式 / 测试,优先级最高)。
pip install -r requirements.txt -r requirements-dev.txt
ruff check . # 静态检查(配置见 pyproject.toml)
python main.py --selftest # 离屏自检
python ui_smoke.py # UI 冒烟:真实窗口事件驱动
python settings_test.py # 设置窗口与热键录制
python tools/make_icon.py # 重新生成应用图标pip install -r requirements-dev.txt
python tools/make_icon.py # 生成 assets/lulen.ico(可选)
python -m PyInstaller --noconfirm Lulen.spec # 产物 dist/Lulen.exe说明:Lulen.spec 中显式收编了 conda/Miniforge 环境的 ffi-8.dll 等运行库(PyInstaller 的依赖分析在 conda 布局下会漏掉 _ctypes 所需 DLL)。
- 启动统一走
ShellExecuteW,与资源管理器双击行为一致(.lnk、UWP 建议、UAC 提权) - 全局热键用
RegisterHotKey+ Qt 原生事件过滤器转发为信号,无 pywin32 依赖 - 单实例用
QLocalServer,服务键按配置目录哈希区分,测试实例与正式实例互不干扰 - 条目模型直接持有配置存储中分组列表的引用,视图变更原地写回,统一由防抖定时器落盘
