DegreeNote 的第一阶段 MVP:一个使用级数简谱快速记录并试听旋律的键盘编辑器。
- 动态多小节旋律输入,一行固定四小节;自动新增、
⌘M前插、⌘⌫删除小节 - 12 个大调调号,并显示对应的自然小调(例如 C / Am)
1–7音级、0休止符、T无音高延音事件- 192 TPQN 整数时值;
-加倍、=减半、.附点、/三连音 - 上下方向键改变当前音符八度
- Command-Z / Shift-Command-Z 撤销与重做
M在当前事件前插入一个同时值休止位置- 拖动范围选择、
⌘A全选可见轨、批量删除以及旋律/和弦按小节语义复制粘贴 B/S降升半音,支持直接输入b6/s4- 新音符默认继承上一个有效音符的八度
- Space 从光标播放,再按一次停止;播放时锁定编辑并高亮当前小节
- 可选节拍器
- 可选 8 分或 16 分 Swing,并支持自定义比例
- 和弦轨:内置常用和弦解析、整小节默认时值、延音与无和弦事件
- 右侧工程与轨道 Inspector,可分别显示或隐藏旋律轨和和弦轨
- 可折叠的工程设置、轨道与作品信息 Inspector;保存标题、创作者和备注
- 从系统“文件”菜单或
⌘E导出旋律/和弦分轨的标准 MIDI 文件 - 顶部播放进度与底部时间、小节、实际音高/和弦状态
- 内置 Web Audio 预听,不依赖 DAW 或 MIDI 设备
- macOS 桌面应用;支持新建、打开、保存和另存为
.dnote工程 - 支持从 Finder 双击、拖入窗口或“文件”菜单打开
.dnote - 原生 macOS 菜单、快捷键、窗口未保存标记与保存确认
- 融合式 macOS 标题栏;顶栏、参数栏和状态栏固定,仅乐谱区域滚动
- 保存采用临时文件替换,编辑中自动维护崩溃恢复副本
- 未保存修改会显示在标题中,并在新建、打开或退出前提醒
- Node.js 24 LTS:
~/.local/bin - Rust stable 与 Cargo:
~/.cargo/bin - Apple Command Line Tools
- Tauri 2、Vite 和项目依赖:本项目的
node_modules
PATH 已写入 ~/.zprofile,新开的终端会自动生效。本项目的 .cargo/config.toml
使用 rsproxy 稀疏索引,以避免当前网络下 crates.io 索引长时间阻塞。
在项目目录运行:
npm run desktop常用命令:
npm run check # JavaScript 语法检查和模型测试
npm run build:web # 构建网页前端
npm run bundle # 构建 macOS DegreeNote.appRelease 应用生成在:
src-tauri/target/release/bundle/macos/DegreeNote.app
⌘N:新建⌘O:打开.dnote⌘S:保存⇧⌘S:另存为⌘E:导出 MIDI
npm run checkV0.5 当前暂不包含实时 MIDI 设备输出、自动更新和 Developer ID 公证签名。