StarPie README

The project's README from github.com/Star-Pie/StarPie. As one markdown file: README.md.

StarPie Logo

StarPie (星盘)

轻量、快捷的 Windows 鼠标轮盘手势与效率工具

Lightweight, Fast & Configurable Radial Pie Menu for Windows 10 / 11

Release Version Platform .NET License Tests Language Co-Authored


简体中文 • English


🌟 功能概览 • 🚀 快速开始 • ✨ 功能特性 • 🎨 外观定制 • 🌐 多语言 • 🛠️ 本地构建 • 💡 开发故事与维护说明 • 📋 更新日志


📖 简介

StarPie (星盘) 是一款专为 Windows 10 / 11 打造的轻量级鼠标轮盘手势(Radial / Pie Menu)效率工具。

在日常使用或专业建模软件中,可通过鼠标右键 / 中键 / 侧键或键盘触发键呼出快捷轮盘,也可使用独立的轨迹手势直接执行动作。当前版本支持 4 / 8 / 12 方位轮盘、多级子动作、专属程序配置(Per-App Profiles)、窗口管理与平铺、屏幕 OCR、快捷键录制、网址与命令调度,以及更完整的视觉形态定制,帮助将高频操作转化为自然的肌肉记忆。

💡 设计重点:

  • 低资源占用:基于原生 C# WPF 构建,无浏览器内核打包,后台常驻内存以轻量化为目标,典型空闲场景约 15 ~ 30 MB;
  • 低延迟响应:基于 Win32 WH_MOUSE_LL 底层事件流,响应迅速,不影响鼠标正常右键点击;
  • 绿色便携:提供独立单文件版(内置 .NET 运行时,解压即用),配置保存于本地 config.json;

✨ V1.6.8正式版视频演示

Bilibili 演示视频

🎬 演示视频 / Video Demo
StarPie 演示视频

📺 点击前往 Bilibili 观看原声讲解与实机演示


🌟 v1.6.8 功能概览

StarPie v1.6.8 在原有快捷轮盘基础上,进一步整合了轨迹手势、窗口管理、屏幕 OCR、多程序配置与深度外观定制,并继续以轻量、低延迟和肌肉记忆为主要设计方向。

功能方向 当前能力
轮盘交互 4 / 8 / 12 扇区、中心核圆动作、多级子轮盘、蜂窝扇与外甩取消
轨迹手势 最多 3 段、8 方向组合、轨迹浮层、分段灵敏度与释放提示
动作与窗口 快捷键、程序、网址、文件夹、命令、系统控制,以及窗口切换、平铺、跨屏、置顶与透明度
屏幕 OCR Windows 本地离线识别、AI 视觉接口与自定义 HTTP OCR
配置体验 双栏聚焦编辑、实时轮盘画布、扇区拖拽换位、运行窗口捕捉与紧凑全览列表
外观定制 多种轮盘形态、独立一二级主题、单扇区字体 / 图标 / 文字位置覆盖与屏幕边缘适配

📋 更完整的版本变化请查看 CHANGELOG.md。


✨ 功能特性

1. ⚡ 鼠标手势快速呼出与动作触发

鼠标手势快速呼出与动作触发演示

按键组合触发录制演示

2. 🌟 多级级联子轮盘

二级轮盘展示

蜂窝扇二级轮盘展示

3. 🚀 顺势外甩脱离取消 (Outer Escape Cancel)

顺势外甩脱离取消演示

4. 🎨 多种轮盘形态与风格预设

轮盘形态与主题风格切换演示

多几何形态与视觉布局展示

预设主题风格与画布实时渲染演示

5. 🎨 自定义高级配色与预设重命名

自定义高级配色与预设管理演示

中心图案调节演示

扇区样式定制演示

6. 🖼️ 自定义矢量 / 图片图标导入

自定义图标导入与管理演示

7. 🎯 4 / 8 / 12 扇区方位自适应

4/8/12扇区分割自适应演示

8. 💼 多程序专属配置方案

多程序专属方案演示

9. 🎛️ 动作配置工作区、应用快捷录入与拖拽编辑

程序拖拽配置界面演示

应用程序智能检索与动作配置
---

10. 🛡️ 场景隔离、全屏防误触与多语言

防误触与多语言设置演示

边缘呼出防溢出配置

11. ➡️ 独立轨迹手势与可视化提示

按键组合触发录制演示

12. 🧰 更完整的动作类型体系

动作分类 主要用途
快捷热键 录制或拼装组合键,支持主按键搜索、Pause / Break 与独占录入
启动程序 启动 EXE、快捷方式或文件,可携带参数并选择常规权限启动
打开网址 使用系统默认、Chrome、Edge、Firefox 或自定义浏览器打开网址
打开文件夹 打开本地路径及桌面、下载等系统虚拟目录
运行命令 支持 CMD、PowerShell、WSL 及隐藏终端模式
屏幕 OCR 框选屏幕区域并调用本地、AI 或自定义 HTTP 识别
窗口管理 切换窗口、平铺、跨屏移动、置顶与透明度控制
系统控制 锁屏、音量、媒体、任务视图、虚拟桌面等系统功能

动作执行与显示图标已经解耦,同一动作可独立选择内置矢量图标、程序图标或自定义图片,不再被动作类型限制。


13. 🪟 窗口切换、管理与多种平铺布局

进程窗口切换演示

14. 📝 Windows 原生 OCR 与可扩展识别接口

OCR演示

OCR接口配置

15. 🔄 在线更新、诊断日志与贡献者信息

系统内置更新与贡献展示演示

🚀 快速开始与下载

当前主线版本:v1.6.8

版本包 适用场景 说明 下载入口
独立免安装单文件版 (推荐) 所有用户 内置 .NET 运行时,解压即可运行 ⬇️ 下载 StarPie.exe (Standalone)
轻量便携版 已安装 .NET 8 运行时的用户 体积小巧,绿色便携 ⬇️ 下载 StarPie 便携包
历史版本归档 版本回溯与对比 历史版本的二进制文件与说明 📂 浏览 Releases 归档

基础使用流程:

  1. 下载并运行 StarPie.exe,程序会在系统托盘中后台运行;
  2. 双击托盘图标或右键选择「偏好设置」,在「触发与场景」中录制轮盘触发键;
  3. 按住触发键拖动超过阈值,或按配置长按,即可在光标附近唤出轮盘;
  4. 滑至目标扇区后松开触发键执行动作,向外甩出则可取消或执行自定义取消动作;
  5. 如需轨迹手势,可启用独立手势触发键,并在动作页映射 1~3 段方向组合。

🌐 多语言支持 (Internationalization)

可在设置页面的「⚙️ 高级与系统」中随时切换界面语言:

语言代码 显示名称 支持状态
zh-CN 🇨🇳 简体中文 🟢 完整支持
zh-TW 🇭🇰/🇹🇼 繁體中文 🟢 完整支持
en 🇺🇸 English 🟢 完整支持
ja 🇯🇵 日本語 🟢 完整支持
Auto 🖥️ 跟随操作系统语言 🟢 完整支持

🛠️ 本地构建与开发

环境要求

编译与运行

# 1. 克隆代码仓库
git clone https://github.com/SoftBlack42/StarPie.git
cd StarPie

# 2. 编译项目 (Release)
dotnet build WinPieGestures/WinPieGestures.csproj -c Release

# 3. 运行项目
dotnet run --project WinPieGestures/WinPieGestures.csproj

# 4. 发布轻量版(需要目标电脑安装 .NET 8 Desktop Runtime)
dotnet publish WinPieGestures/WinPieGestures.csproj -c Release -r win-x64 --no-self-contained -o releases/local/Lightweight

# 5. 发布独立版(自带 .NET 运行时)
dotnet publish WinPieGestures/WinPieGestures.csproj -c Release -r win-x64 --self-contained true -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true -o releases/local/Standalone

运行自动化测试(当前包含 19 项 GUI 用例)

# 安装测试依赖
pip install pytest pywinauto

# 执行测试
python -m pytest tests/test_settings.py -v

📂 项目结构

StarPie/
├── .github/                         # CI 工作流与社区配置
├── WinPieGestures/                  # 核心工程(C# / .NET 8 / WPF)
│   ├── ActionExecutor.cs            # 热键、程序、网址、命令、系统动作调度
│   ├── ActionItem.cs                # 动作模型与单扇区排版覆盖
│   ├── MouseHook.cs                 # Win32 低级鼠标 Hook 专用线程
│   ├── KeyboardHook.cs              # Win32 低级键盘 Hook 与独占录制
│   ├── GestureController.cs         # 轮盘与轨迹手势状态机
│   ├── GestureMapping*.cs           # 轨迹组合映射与配置模型
│   ├── GestureTrailOverlay.cs       # 轨迹绘制和释放提示浮层
│   ├── RadialWindow.xaml(.cs)       # 轮盘透明窗口与运行时渲染
│   ├── SettingsWindow.xaml(.cs)     # 双栏画布、聚焦编辑与系统设置
│   ├── WindowTaskbarHelper.cs       # 任务栏顺序、窗口图标与切换快照
│   ├── WindowTiler.cs               # 窗口平铺、恢复、循环与跨屏控制
│   ├── WindowPickerWindow.xaml(.cs) # 活动窗口和进程捕捉器
│   ├── ScreenHelper.cs              # 多显示器、DPI 与边缘坐标处理
│   ├── ScreenSnipWindow.xaml(.cs)   # OCR 截屏区域选择
│   ├── OcrManager.cs                # 本地、AI 与 HTTP OCR 调度
│   ├── OcrSettingsDialog.xaml(.cs)  # OCR 引擎和接口设置
│   ├── OcrResultWindow.xaml(.cs)    # OCR 结果展示
│   ├── UpdateManager.cs             # GitHub Releases 更新检查
│   ├── AppLogger.cs                 # 异步运行日志
│   ├── ConfigManager.cs             # 配置持久化、导入导出与自启
│   ├─�

StarPie (Star-Pie/StarPie)

Searching Database…

1.2K ·GitHub
这是什么?StarPie(星盘)是一款面向 Windows 10/11 的轻量级环形/饼状菜单与鼠标手势工具:按住鼠标键向某个扇区轻扫,即可触发热键、启动应用、打开 URL 和文件夹、运行命令、管理窗口以及执行屏幕 OCR。
它会取代我的右键菜单,还是和它并存?它是并存的:正常的单击右键仍会照常打开 Windows 原生右键菜单,饼状菜单只在你按住触发键并拖动超过可配置阈值时才弹出。
怎么让它跑起来?下载捆绑 .NET 8 运行时的 StarPie.exe 独立版(解压即用);如果已装 .NET 8,也可以选更小的便携版。它会驻留在系统托盘,在 Preferences > Trigger and Scenes 里录制一个触发键,就能开始使用饼状菜单。
需要先装 .NET 运行时吗?只有用轻量便携版才需要;推荐的独立版已经捆绑 .NET 8 运行时,没有任何前置要求。自己从源码构建需要 .NET 8 SDK,而只有想跑自动化 GUI 测试套件时才需要 Python 3.10+。
饼状菜单会干扰全屏游戏或应用吗?不会——StarPie 会检测全屏/独占的应用和游戏,自动放行原生右键而不弹出饼状菜单;你也可以按住 Ctrl/Shift/Alt 临时绕过,或把特定进程彻底加入黑名单。
一个扇区能触发哪些类型的操作?每个扇区可以触发已录制的热键、启动程序或快捷方式、在指定浏览器中打开 URL、打开文件夹、运行 CMD/PowerShell/WSL 命令、启动屏幕 OCR,或控制窗口(切换、平铺、置顶、调透明度)以及锁屏、音量、媒体等系统功能。
可以给不同应用配不同的饼状菜单吗?可以,StarPie 支持针对 Chrome、VS Code、Photoshop、SolidWorks 等应用的分应用配置(Per-App Profiles):它会自动把配置匹配到前台进程,没有专属配置时回退到全局配置。
内置 OCR 没有网络也能用吗?默认情况下,它用 Windows 原生的离线 Windows.Media.Ocr 引擎做屏幕区域文字识别;你也可以选择换成 AI 视觉后端或自定义 HTTP OCR 服务。
界面支持哪些语言?界面自带简体中文、繁体中文、英文和日文,可在设置中即时切换,另有跟随操作系统语言的自动模式。
Creator
Star-Pie
Size
151.3 MB
Stars
1.2K
Age
1mo
Commits · 90 Days