Skip to content

V0.4.3 (2025-10-02) - 命令面板 (Command Palette)

Choose a tag to compare

@EllisMorrow EllisMorrow released this 02 Oct 14:54
· 30 commits to main since this release

V0.4.3 (2025-10-02) - 命令面板 (Command Palette)
新功能:
命令面板 UI(core/command_palette.py):分组展示(app/file/misc)、实时子串过滤、↑/↓/Enter/双击、Esc 关闭。
全局快捷键:Ctrl+P / Cmd+P 打开面板(core/app.py),含事件过滤兜底,避免快捷键冲突。
工具启动器 Dock:可移动/可隐藏,右键主窗口空白处可开关各面板(plugins/tool_launcher.py)。
架构:
引入命令模式:定义 core/command.py 的 BaseCommand。
无 UI 命令服务:提供 CommandRegistry 与装饰器注册(plugins/command_service.py)。
AppContext 暴露 commands;插件通过装饰器即可注册命令(无需改动内核)。
内置命令:app.command_palette / file.new_note / app.about(见各插件文件)。
NFR:
即时打开与过滤(非阻塞 open())、架构解耦(服务化、装饰器注册)、可扩展性(第三方插件零内核修改接入)。
验收:
Ctrl+P/Cmd+P 弹出模态命令面板。
初始列表包含“文件:新建笔记”“关于:EvoNote”等已注册命令。
输入“笔记”时仅显示“文件:新建笔记”。
选中“关于:EvoNote”回车后打印 INFO: Executing command: About EvoNote 并关闭面板。
新增一个命令插件文件并注册,重启应用后命令自动出现在面板中。