完整更新日志
编辑器内「更新日志」只保留最近的版本;更早的版本按倒序收在这里。重要版本摘录
- v63.7多声部录谱更顺手 · 合唱同一拍一次标完 · 可选 GP 键位(2026-10 评审团 B1 录入零陷阱第二批)。
① 声部之间用键盘移动:Alt+↑/↓ 在各声部之间逐个移动,光标落到同一拍上;合唱谱在低音声部按 ↑ 会到上一个声部,不再直接跳回第一个声部。
② 跨声部一次标记号:Ctrl/Shift 选中几个声部同一拍的音(或框选一段),点延长号、换气、演奏法、力度,一次全部标好,Ctrl+Z 一步撤回。
③ 套用技法后自动取消多选,下一步操作不会把刚标好的技法覆盖掉;节奏型库的提示改为「Shift + 点小节上方条带可区域选择」(这是现有的操作方式)。
④ 八度按钮不再误改整首:没选中音时,记号面板的升/降八度会作用于整个声部——现在先弹出确认,写明会改多少个音。
⑤ 名字说人话:「智能编辑」改叫「修复建议」;配和弦工作台的候选从原始分值改为「契合度」百分比。
⑥ 末尾空小节提醒:打印 / 导出和发布前,如果谱子末尾有自动续出来的空小节,会提示并可一键删除。
⑦ 可选「GP / 简谱大师键位」(默认关闭,在右栏「创作」页的提示里开启):「-」作增时线、Shift+点击作区域选择、六线谱 H/P/S/B 作击弦/勾弦/滑弦/推弦。
新套件tv_b1b(7 项,旧文件全部报红)。 - v63.6录谱不再掉进陷阱:增时线、连音线、延长号都落在刚输入的音上(2026-10 评审团 B1 录入零陷阱第一批)。
① 先落音、再加记号:输入一个音后光标会自动前进到下一格,之前紧接着按 D(增时线)、~(连音线),或点延长号、换气、演奏法、力度、装饰音,记号都落到了前进后的那个空格上——「5 D」把后面的休止拉长,提示却说「已延长」。现在这些记号都作用在刚输入的音上,光标仍停在它后面,可以接着往下录。实测:录《小星星》8 小节只需按 32 个键(28 个音 + 4 个 D),不用任何修正键。
② 连音线不挂在休止上:光标停在空格时按 ~ 会提示「先输入音」,不再画出连向空白的线。
③ 先选时值再落音不溢出:在空格上先按二分、全音等更长的时值,会自动吸收后面紧邻的休止,小节不再超拍。
④ 超拍修复首选「顺延到下一小节」:多出来的音原样挪到下一小节开头,跨过小节线的音拆成两半用连音线连起;下一小节放不下(会把真实音符挤出去)就不顺延,提示手动处理,绝不在全曲连锁移动。原来的「从末尾删掉」降为次选,并先列出会删掉哪几个音;「全部采纳」也不再静默删音。
⑤ 「-」的一次性提示:简谱里刚输入音时按键盘「-」,会提示一次「这是降八度,增时线请按 D 键」,按键含义不变。
新套件tv_b1a(7 项,旧文件全部报红)。 - v63.5粘贴不再抹掉转调 · 页头写成 1=♭B · 新建可选 9/8、12/8(2026-10 评审团 B2a 调性纯缺陷,Sprint B 第一项)。
① 整小节粘贴保留目标小节的设置:之前把一个小节粘到带「转 1=G」标记的小节上,转调标记会被抹掉,后面所有小节的调都跟着变回去;排练标记、房子、变拍子也一样丢。现在覆盖粘贴只换音符,目标小节原有的这些设置都保留。
② 拍号不一样时先问一句:复制来的小节和要覆盖的小节拍号不同,会问「是否同时应用源小节的拍号」;点小节线插入的新小节沿用源小节自己的拍号。
③ 页头调号写法规范:1=Bb、1=C# 改为简谱惯例的 1=♭B、1=♯C(顶栏、曲谱信息、看谱页同步);拍号按调号文字的实际宽度排在其后,1=♯C、1=♯F 不再和拍号挤在一起;12/8 这类两位数拍号的分数线随之加宽。
④ 新建向导的拍号与曲谱信息一致:分子新增 5、7、9、12,可以直接新建 5/4、7/8、9/8、12/8。
⑤ 内部:简谱 1 的八度换算规则从散落 8 处收成一处,语法闸禁止再散写。新套件tv_b2a(6 项,旧文件全部报红)。 - v63.4能回答「多少人做出了成品、从哪里来」:一方度量地基(2026-10 评审团 A7;按拍板只用第一方统计,不接第三方)。
① 匿名访客标识:服务端在 puyouquan.com 下发一个随机的匿名标识(Cookiepyq_anon),官网、制谱器、谱库三站共用,不含手机号等个人信息;登录后与账号关联,「访问 → 注册 → 使用」才能算作同一个人。隐私政策已于 v62.9 披露。
② 关键事件补齐:按评审团清单补上配伴奏、生成织体、换调、导入(带拍数检查结果)、打印、导出图片 / 互动谱 / MusicXML / MIDI、登录弹窗、下单、点赞,以及官网的访问、落地页、去制谱器的点击、谱库零结果搜索,课程的进入、深链、过关。
③ 来源与传播:访问事件记首触来源(广告参数或站外来源网站)和落地页;分享出去的链接带渠道标记(分享卡二维码 / 微信卡片 / 发布后复制 / 小程序),好友打开时记一次「分享打开」。
④ 后台数字按人去重:管理后台概览的事件漏斗显示「人数 / 次数」,新增北极星(7 天内做出成品谱的人数:配伴奏、打印、导出图片、发布任一)与次日、第 7 天留存;node admin.js stats同口径。
⑤ 统计不再被共用网络压低:限流从「每个 IP 每小时 300 条」改为「每个访客每小时 300 条」(同一 IP 另设 3000 条上限),学校机房这类共用出口的访客不再被整体少算。
⑥ 课程页支持?s=小节深链直达某一节。小程序同版更新到 1.1.6(发起转发记mp_share,卡片带渠道标记)。新套件tv_a7(6 项,旧文件全部报红);接口测试 318 项。 - v63.3课程测验不能再靠蒙 · 课程内容勘误 · 全站文案对账(2026-10 评审团 A5 内容纠错第二批)。
① 测验选项每次打乱:之前选项照原顺序排,七成题目的答案都是 B,一路选 B 就能过关。现在每次出题都打乱顺序,题库里的答案位置也重新均衡。
② 已发布课程不能再把坏题直接上线:之前已发布的课保存时不做发布校验,一道空题就能让学员卡在本节、后面整章全锁。现在保存已发布的课和点发布走同一道检查;保存后的提示也如实说明「学员立即看到新内容」还是「草稿,学员看不到」。
③ 《认识简谱》勘误:「改成 1=G 每个音都升高」改为「整体搬到以 G 为 do 的高度」;「单独一个数字=一拍」限定在以四分音符为一拍的拍子里;53231323 分解型的时值说法改正;去掉不规范的「1 - .」写法;「一小节要凑满」挪到讲完小节线和拍号之后(学习进度不受影响)。
④ 课程小毛病:通关最后一章不再提示「第 7 章已解锁」(全课只有 6 章);课程页反复刷新不再叠加按键监听;课程里的「互动谱」卡直达同名谱的观看页,不再停在搜索页。
⑤ 文案对账:撤掉已下线的「哼唱成谱」、过时的「九种场景 / 八场景」「单窗口」「新建会替换当前窗口」「点谱面+和弦」,「11 套织体」改为如实的 21 套(4/4 拍 15 套,2/4、3/4、6/8 各 2 套),删去「不懂五线谱也能」「为吉他爱好者打造」等旧口号;新增文案禁止词检查,发版时自动拦截。
⑥ 谱库官方示例谱:《小星星》句末改为「5 -」「1 -」,与课程教的一致;《欢乐颂》换成示范词。线上已有的这两首需管理员在服务器执行一次node admin.js seed-fix修订(只改从未被人动过的官方谱)。新库建好后示例谱也会立即出现在谱库里。
新套件tv_a5b(7 项,旧文件全部报红);接口测试 302 项。 - v63.2官方示例谱纠错:《送别》按原曲重录 · 《欢乐颂》换成自有歌词 · 课程「听一听」时值听得出来了(2026-10 评审团 A5 内容纠错第一批)。
① 《送别》按公版原曲重录:之前的旋律与原曲多处对不上,还把「天之涯」当成第二段词套在第一句的旋律上,「拂」「柳」两个字之间误画了连线。现在是完整的 16 小节(长亭外 → 晚风拂柳 → 天之涯 → 一壶浊酒),一字多音的地方(亭、草、连、风、阳……)用圆滑线连起来,后一个音不再挂字。
② 两份《欢乐颂》换成谱友圈自己写的示范词:原先用的通行中文译词没有署译配者、权属待核,按拍板改用与四部合唱同一份示范词(让我们来齐声歌唱……),署名不再写「席勒」;教学对照谱里「女」「神」两个字之间的连线一并去掉。
③ 独奏示例页头不再显示「1=Am」:a 小调按 C 调号记写。
④ 制谱页五线谱演示画对了:「一闪一闪亮晶晶」后五个音之前画在 B、C 的位置,与旁边的简谱和六线谱对不上;现在是 C C G G A A G。
⑤ 课程谱例「听一听」时值正确:分开写的增时线「1 -」「1 - -」「1 - - -」之前听起来都只有 1 拍,「5 - ~ 5」还响两次;现在分别是 2、3、4 拍,延音线两端同音只响一次。
新套件tv_a5(6 项,旧文件全部报红);tv_playperf的等待用例钉住其余音色包,CI 外网下载不再造成偶发红。 - v63.1不会在看不见的地方改谱 · 面板开合后谱面不再被裁 · 歌词一个字一个字能撤销(2026-10 评审团 A3 编辑会话安全;手机编辑按拍板先做「只读 + 发到电脑继续」)。
① 启动台上不会再误改上次的谱:之前启动台盖住了谱面,但工具栏按钮和快捷键仍然有效——按个数字、Delete 或 Ctrl+Z,看不见的「上次编辑」就被改了并自动保存。现在启动台上编辑区点不中(淡出显示),编辑快捷键一律不生效,只保留 Ctrl+O 打开文件。
② 谱面右侧不再被裁:新建谱、点「继续上次编辑」或开合左栏面板后,谱面沿用旧宽度,右边被裁掉 100–240 像素且滚动不过去。现在编辑区宽度一变就重新排版。
③ 歌词可以逐个音撤销:之前逐字填歌词不进撤销记录,按一次 Ctrl+Z 会抹掉一整批歌词还连带撤掉前一次改音,再编辑一次就再也找不回。现在每换一个音记一步,同一个音里连续输入算一步,Ctrl+Z 只退最后一个音的词,Ctrl+Y 可以重做。
④ 手机启动台改为只读引导:手机上还录不了音高,原来点「新建」会进入写不了谱的死胡同。现在手机上显示「看示例」「发到电脑继续」(复制制谱链接)「打开」「我的」,并说明写谱请到电脑上继续。
⑤ 小节线菜单不出屏:菜单原来按估算宽度定位,实际更宽,手机上右侧出屏还会撑出横向滚动。现在所有浮层菜单出现时都会夹回屏幕内。
新套件tv_a3(7 项,旧文件全部报红)。 - v63.0不再生成或导入拍子、音高错的谱(2026-10 评审团 A8 出错谱止血)。
① 伴奏织体按拍号严格匹配:之前只看每小节几拍,不看以什么音符为一拍——6/4 拍的谱会被套上 6/8 的织体,3/8 套上 3/4,2/2 套上 2/4,生成出来时值整体错位。现在拍数和单位都要对上;没有合适的织体会直接提示「当前拍号 X/Y 暂无内置织体」,不再弹出一个生成错谱的窗口。变拍子的谱,拍号不符的小节会跳过并告诉你跳过了几个。
② 导入带转调的 MusicXML,音高不再错:之前整份文件都按开头的调来换算简谱,C 大调转到 G 大调之后的音,简谱唱名全错、播放也整体偏高。现在每个小节按它当时的调换算,多声部同样生效;导入后播放的每个音都与原文件一致。
③ 新建 3/8、6/8、2/2 的谱一打开就是对的:之前空小节一律用四分音符填,6/8 每小节变成 12 拍、2/2 只有 1 拍,满屏红色拍数提示。现在空小节、插入小节、加声部、粘贴补空都按拍号的单位生成。
④ 单音推弦的目标圈写对品位:之前圈里照抄起始品位(7 品推弦圈里也写 7),读谱的人会推错。现在写起始品位加推弦幅度:全音推弦 7 → 9,半音 8 → 9;回落仍写落回的原品位。
新套件tv_a8(6 项,旧文件 5 项报红)。 - v62.9不卖还没有的东西 · 登录先同意协议 · 小程序里不出现价格 · 可以举报(2026-10 评审团 A4;产品拍板「考编包停售改预约」)。
① 考编内容包停售,改为免费预约:内容还在筹备,之前却能付款、能兑换,兑换后什么都拿不到。现在支付入口下线(服务器也不再接新单),权益页改成「免费预约」,上线后站内消息通知;卡片不再写「30 套」「常考」这类还兑现不了的承诺。已经付过款或兑换过的照常有效。
② 会员文案只写现在就有的:云端扩容到 2000 首、专属标识、优先答疑;「后续功能上线即享」「解锁专业功能」这类说法撤掉;开通了微信支付时不再同时显示「在线支付即将上线」。个人中心的会员入口直达权益页。
③ 登录前须主动勾选同意《用户协议》《隐私政策》(默认不勾):编辑器、官网弹窗、个人中心三个登录入口同一规则,不勾选时获取验证码、登录、微信登录都只提示不放行。
④ 小程序里打开时:不出现任何价格、会员购买、赞助价目;不出现扫码登录(改为「回小程序用手机号快捷登录」);点到制谱器等小程序打不开的链接,改为复制链接、提示去电脑浏览器打开;页脚邮箱和备案号变成纯文字。
⑤ 举报这首谱:看谱页 ⚙ 设置里新增「举报这首谱」(侵权 / 谱面错误 / 广告 / 违规 / 其他),未登录也能举报;管理后台新增「举报」页签,可预览、下架(站内信通知谱主)或标记已处理。
⑥ 隐私政策同步:如实写明访问统计用的匿名设备标识、登录后与账号关联、举报信息的处理方式(更新日期 2026 年 10 月)。
⑦ 新账号默认昵称不再带手机号后四位(公开署名会泄露号码片段),改为随机编号;线上发布菜单里不再出现无效的「定价 / 试读」输入框。
测试:新增tv_a417 项,对改前文件与官网复跑 16 项红;tv_acct增「协议默认不勾、不勾不发验证码」;api/test.sh 275→292 项(考编包拒新单 / 预约 / 举报去重与处理 / 管理员核查已售 / 随机昵称)。 - v62.8数据不再只靠一块硬盘 · 谱库过 200 首也搜得到、收得全(2026-10 评审团 A6)。
① 异地备份:数据库每天的快照除了存在服务器本盘,现在可以再自动传一份到云对象存储(腾讯云 COS、阿里云 OSS 等,按兼容接口实现),异地保留最近 30 份、本盘保留 7 份——服务器硬盘坏了也丢不了账号和曲谱。另配一个恢复演练脚本:从云上取回最新一份、自动做完整性校验并报出用户数和曲谱数,不碰线上数据。(需要管理员在服务器配置里填好对象存储的桶和密钥后生效;不填就和以前一样只存本盘。)
② 谱库过 200 首的连锁问题:此前谱库各处都只取最新的 200 首——第 201 首起搜不到、不进搜索引擎的站点地图和目录,你收藏或点赞过的老谱还会从个人中心消失。现在:站点地图和曲谱目录收录全部已上架的谱;首页搜索在谱库超过首批时自动去全库查找;个人中心的收藏、点赞直接按你的记录列出,不再受数量限制;谱页底部的「相关曲谱」也改成按需查询,不再每打开一次就把最新 200 首整份读一遍。
测试:新增api/s3.test.js7 项(签名与官方示例逐字一致 / 上传 / 异地超量清理 / 恢复演练 / 未配置时不变);api/test.sh 264→275 项(241 首规模:站点地图与目录全量、第 201 首起可搜、搜索通配符按字面、老收藏带卡片、相关推荐同歌手优先),对改前服务端复跑 7 项红;tv_pubsnap9→11 项,对改前官网复跑 2 项红。 - v62.7打印与导出:一张屏幕页就是一张纸 · 成品干净 · 分享卡不切谱(2026-10 评审团 A2)。
① 打印逐页对齐:v62.4 修好了「只打出第 1 页」,但浏览器仍是把整首谱当一张长图、按纸高硬切——一行谱会被拦腰切成两半,越往后越错位,打出来的页数也和屏幕上看到的不一样。现在打印前按屏幕上的每一页单独出一张纸:屏幕上几页,打出来就是几页,每一行谱都完整。打印预览里的「打印 / 导出」、Ctrl+P、看谱页打印都走这条路;不换行模式下打印预览与打印同样按分页排,页数一致。
② 导出 PNG:不再带屏幕上的页框线、「第 x / y 页」页码和播放竖线;图里的数字/文字字体与屏幕显示一致(此前导出图会换成另一种衬线字体)。
③ 分享卡:谱面只截到最后一行完整的谱,不再半行半行地截;谱框底边移到页脚之上(此前底部被页脚盖住一截);二维码和「扫码」说明整体上移,不再贴着卡片底边;卡片口号换成「专业曲谱平台」,顶部色条随品牌改为朱砂色。
④ 分享出去的互动谱在某些网页环境里另存时,按钮图标会重复出现两枚,已修正。
测试:新增tv_print13 项(PDF 页数=屏幕页数 / 系统不跨页 / 看谱页打印 / 不换行模式预览与打印一致 / PNG 无页框页码与字体同源 / 分享卡四项 / 互动谱图标不重复),对改前文件复跑 10 项红。 - v62.6小程序登录不再把你换成空账号 · 合并旧账号要你点头 · 接口限流与安全响应头补齐(2026-10 评审团 A1c / A1d)。
① 小程序每次打开都把手机号登录「顶掉」:小程序每次冷启动都会静默登录一次,如果你最早用小程序时它替你建过一个没绑手机号的账号,之后每次打开都会被切回那个空账号——老用户在小程序里永远看不到自己的谱。现在:网页里已经登录手机号账号时,静默登录不再覆盖;那个空账号如果什么都没有,会自动并进你的手机号账号,此后小程序一打开就是你本人。
② 旧账号里有东西时,问你再合并:用「手机号快捷登录」时,如果发现旧的小程序账号里有谱或收藏,会弹框列出有多少,由你选「合并」或「暂不」——绝不替你静默合并。
③ 登录链接不能被别人借用:小程序换来的一次性登录票据只在小程序里生效(普通浏览器打开带票链接不会登进任何账号),有效期从 2 分钟缩短到 30 秒。
④ 官网个人中心在小程序里打开时,「去绑定手机号」改为跳回小程序自己的登录页,不再停在一个绑完也回不到小程序的网页表单里。
⑤ 服务器加固:接口与公开谱页按 IP 限流(正常使用碰不到,专防整库抓取);编辑器主页此前因为服务器配置的继承规则,防「被别的网站套进框里」的安全响应头其实没有生效,本版补上,并在每次部署后的自动验收里逐站检查。
小程序:本版改了小程序代码,上传版本号 1.1.5。
测试:api/test.sh 247→264 项(本地模拟微信接口,端到端跑通静默登录 / 手机号登录 / 空号自动并入 / 有数据号确认合并 / 会话不被覆盖 / 普通浏览器不发票据 Cookie;顺带修正两条用 HEAD 请求而空过的老断言),对改前服务端复跑 12 项红;tv_mplogin11→15 项(合并确认框,对改前小程序复跑 4 项红);tv_pubsnap7→9 项(小程序里「去绑定」跳原生页)。 - v62.5存储型脚本注入根治 · 发布快照:过审后再改要重新审(2026-10 评审团 A1a / A1b)。
v62.4 先堵住了「从别人的深链打开」这一条路;但被投毒的谱一旦进过你的本机(上次编辑的谱、「我的曲谱」里的旧条目),刷新页面就会再次触发——这一版从根上解决。
① 一个入口统管:启动时恢复上次的谱、打开「我的曲谱」、云端同步拉下来的谱、MusicXML/MIDI 导入、看谱页、发布缩图,全部经过同一道按字段的规范化:音级、品位、弦号、房子号等数字一律转成数字;技法、升降号、和弦名等短代码去掉尖括号;渐强/渐弱楔形照常保留;曲名、歌词、段落标记等文字一个字都不改(这些在显示时已全部转义)。全部预设规范化前后逐字节不变。
② 逐键实测:对谱面里的 78 种字段逐一注入两类攻击载荷,打开、渲染后零命中;而改前的版本里,被投毒的上次编辑谱刷新即执行。
③ 服务端同口径把关:云端保存时,数字字段必须是数字、已知短代码不得含尖括号,否则拒收并告诉你是哪一处;歌词、曲名不限字符,编辑器以后新增的字段一律放行,不会因为服务端没登记就拒收。
④ 云端拒收不再静默:以前保存被拒你完全不知道;现在会提示一次「云端未保存……本机副本已保留」。
⑤ 存量扫描:管理员可在服务器上一键扫描全部云端谱面,命中的已发布谱可直接打回驳回并写明原因(谱主在个人中心可见,重新打开保存即可恢复)。
测试:新增tv_xss9 项(零误杀 / 逐键注入 / 启动恢复 / 本机库 / 缩图 / 拒收提示),对改前文件复跑 6 项红(其中两条路径脚本真实执行);api/test.sh 219→228 项(危险字段拒收 / 楔形与歌词放行 / 数字串放行 / 未知字段透传 / 存量扫描与隔离)。
发布快照(产品拍板「发布快照,修订另审」):此前谱子一旦过审,作者再改曲谱、改标题、换缩图、甚至改昵称,谱库里都立刻变成新内容——审核等于可以绕过。现在过审那一刻把谱面、标题、署名、缩图冻结成一份快照,谱库、分享落地页、站点地图只展示快照:
⑥ 作者之后的修改(包括编辑器每几秒一次的自动保存)只改自己的草稿,谱子不会下架,谱库照常展示上一版;改完点「提交更新」进入审核,通过后自动替换。被驳回时谱库继续展示上一版,原因发到站内消息。
⑦ 个人中心、创作者中心的状态行会写明「有未发布的修改」「更新审核中」「更新被驳回:原因」;没有改动时点提交会直接告诉你「谱库里已经是这一版」。
⑧ 署名在审核时固定,之后改昵称不影响已上架的谱;管理员改自己的谱免审直接生效。
⑨ 管理后台:待审数包含更新审核,队列里这类条目带「更新审核」角标。
测试:新增tv_pubsnap7 项(对改前文件复跑全红);api/test.sh 228→247 项(过审后改谱/改标题/改昵称/换缩图公开端不变 · 更新审核通过与驳回 · 无改动不送审)。 - v62.4热修周:打印只出 1 页 · 成品带光标 · 弹窗点不中/按键穿透 · 楔形被清洗误删 · 他人谱深链 · 登录弹窗关不掉(2026-10 十三角色评审团 A0 段,产品指示「A 段 B 段先做」)。
① 多页谱打印/存 PDF 只出第 1 页:新版外壳把页面钉成一屏高、超出部分隐藏,它的样式优先级压过了打印复位,于是打印机只看得到第一屏。现在打印时用同等优先级把整页放开,多页谱完整打出;观看页打印也不再把顶部那条操作栏印在第 1 页上。(打印分页与屏幕虚拟页逐页对齐放在下一阶段做。)
② 成品不再带编辑光标:打印、存 PDF、导出 PNG、分享卡、打印预览五个出口统一先熄灭全部编辑装饰——光标列的朱砂底色、弦位红圈、小节选中框、歌词选中框、小节拖柄——出完再原样恢复。此前打印一项都不清,分享卡只清了一半。
③ 弹窗打开时不再盲改背后的谱面:之前弹窗开着按 Delete、数字键、方向键照样改谱;现在只有 Esc(关窗)和 Tab(在弹窗里移动焦点)有效,Esc 终于能关掉弹窗,有未保存改动的配和弦工作台照旧会拦下。
④ 手机「智能」抽屉不再压住弹窗:从抽屉里点开的一键配伴奏、智能填词、曲谱信息、更新日志,「生成」「确定」等按钮之前被抽屉盖住点不到;现在弹窗一出现抽屉自动收起。
⑤ 渐强/渐弱楔形不再被安全清洗删掉:防脚本注入的清洗过去把所有文字里的尖括号一律去掉,而楔形恰好就存成</>——所有已发布谱在看谱页、分享出去的互动谱、审核预览里的楔形其实一直是丢的。清洗改为按字段:音级、品位、弦号等数字一律转成数字(连引号逃逸也一并堵上),楔形按白名单保留,曲名歌词等文字只去尖括号。全部预设清洗前后零差异。
⑥ 他人的谱不能再从「我的曲谱」深链打开:服务端「我的曲谱」接口只给谱主本人;打开别人的谱自动改走谱库看谱页(经安全清洗、只读、不写进你的本机库)。从文件打开谱也先经同样的清洗。
⑦ 登录弹窗:在个人中心里登录成功、或点「取消」,弹窗都会关掉了;在编辑器里点「取消」只是关窗,不再把你带进个人中心。
测试:新增tv_a022 项(打印 PDF 页数 / 打印时零编辑痕迹 / PNG·分享卡·预览零痕迹 / 弹窗按键不改谱 / 抽屉弹窗可点中 / 清洗零差异与楔形保真 / 注入零事件属性 / 他人谱改走看谱页 / 登录弹窗三态),对改前文件复跑 14 项红实证;api/test.sh 216→219 项(非谱主读「我的曲谱」被拒,对改前服务端复跑 2 项红)。 - v62.3课程管理中心独立成页 · 跨课程内容体检 · 列表批量与筛选(产品指示:课程编辑和管理独立页面,并强化功能、系统化功能)。
① 课程管理独立成页:课程的列表、编辑、发布从平台管理的一个小页签里搬出来,成为独立的课程管理中心(kcadmin.html)——顶部一排概览(课程数 / 章节数 / 闯关题数 / 阻塞问题数 / 待完善数),下面三个页签:课程、内容体检、发布记录。平台管理里的「课程」页签改成一张入口卡,全站只留一份工作台实现,不会出现两处各改一半。
② 跨课程内容体检(系统化):一次扫完所有课程,把问题按严重度摊开——阻塞(服务端会拒绝发布,或会让学员卡死)与建议(能发布但内容不完整)分开标,每条都写清楚是哪门课第几章第几节、什么毛病,点「去修」直接跳进工作台的那一小节。可以一键「只看阻塞项」。查的项目包括:章/小节缺标题、题目不合法、内容块填错、本章还是 1.0 结构而课程已小节化(前台压根不渲染)、小节没有学习内容、题目没写解析、课程缺简介,以及一条真正的死锁——某一小节既没有测试题、又关掉了打卡,学员没有任何办法完成它,而 v62.1 起「做完整章才解锁下一章」,于是这一章连同后面所有章会被永久锁死。
③ 列表强化:按标题/id 搜索,按状态与乐器筛选,按排序号/最近更新/标题/问题多少排序;勾选后可批量发布、批量下架、批量删除草稿(逐门下发并报告成功与失败);每门课直接显示体量(几章几节、几个内容块几道题、多大)与体检徽标;可以上移下移调整学习页里的课程顺序,也可以复制一门课再改(副本先只在编辑器里,按保存才真正入库,点错不会多出一门空课)。新建课程时可以选「空白」或直接从某门现有课程复制。
④ 发布记录:谁在什么时候编辑、发布、下架、删除了哪门课,单独一页可查。
⑤ 一处数据红线:课程列表接口不返回简介字段,所以调整排序/复制这类「只改一个字段」的操作,一律先读回整门课再写,否则会把简介连带清空。
测试:tv_site81→85 项(工作台用例整体迁到新页 + 控制台概览与批量 + 体检四类问题识别与直达 + 平台管理入口卡),对改前树复跑 8 项红实证;api/test.sh 216 项、CORE 112 套件、db.test.js 10/10 全绿。 - v62.2《认识简谱》升级成「能听、能录、能玩」的示例课 · 少儿科普风改版 · 侧栏可收起(产品指示:以认识简谱为示例全面升级为声音/录音/动画交互,页面简洁互动性强,风格偏少儿科普)。
① 谱例会响了:课程里的每一行谱例都多了「听一听」——按一下整行按简谱时值唱出来,唱到哪个音,哪个数字就亮一下;单独点某个数字也会单独发声。音高按谱首调号算(1=C 时 1 就是中央 C),增时线加拍、减时线减半、附点一拍半都照实播。全部是网页现场合成的音,不下载任何音频文件,打开即用。
② 练习可以录音:每一节的练习里新增录音条——点一下开始,屏幕上有跳动的电平和计时,录完当场回放,可以「重录」,也可以用这段直接完成今天的打卡。16 个小节都配了具体的录音任务(比如第 3.2 节:唱一个撑满四拍的长音,回放数数自己有没有偷拍)。录音只留在你自己的浏览器里,不上传、不进服务器,关掉页面就没了。浏览器不支持或麦克风被拒时会给出可读的说明,而不是静默失灵。
③ 少儿科普风改版:课程页改成一章一色——六个色相循环,像科普读物每个单元有自己的颜色,本章的小节卡、页签、按钮、插画全部跟着换色;主行动钮取它要去的那一章的颜色,一眼就能和章卡对上。章头加了方格本底纹,圆角加大、正文字号与行距放宽、按钮加粗,整体更适合小朋友和零基础成人。
④ 侧栏可以收起:左侧章节目录一键收起,正文单列铺开;收起后正文左上角留一个「目录」按钮随时叫回来,宽窄状态记在本机,下次进课程还是你上次的样子。课程简介默认收到 4 行,点「展开介绍」再看全文。
⑤ 工作台跟上:小节的练习模块新增「显示录音练习」开关与录音任务说明,作者可以逐节决定要不要让学员录。
⑥ 修一个键盘可达性问题:折叠起来的小节,里面的按钮和音符仍然能被 Tab 键选中——16 个小节全折叠时,键盘用户要按几十次 Tab 才走得出去。现在折叠内容整块移出焦点序列。
测试:tv_site77→81 项(发声换算与播放态 / 侧栏收起与记忆 / 录音挂载与不上传承诺 / 一章一色),对改前树复跑 4 项红实证;api/test.sh 216 项、CORE 112 套件、db.test.js 10/10 全绿。 - v62.1课程排版改矢量插画 + 交互动画 · 编辑器化繁为简 · 解锁改成「锁章不锁节」(产品指示三件套)。
① 锁章不锁节:解锁单位从小节上移到章——一章开了,章里所有小节都能读、能练、能测,想先看后面一节或跳过某节的测试都不再被挡;把一章的小节全部完成,下一章自动解锁。解锁说明也从「每个锁住的小节各写一遍」收成每章一处,并给出「还差几节」与直达按钮。学员已有的星级与打卡进度一条不动。
② 课程页重排:一节展开不再是「学习 / 练习 / 测试」三大段纵向长流——改成三个页签,默认停在学习,可用 ←/→ 键切换,页签上直接标着有几块内容、几道题、今天打没打卡。章不再只是一行小标题,而是带主题插画的分区卡,配本章完成度进度条。
③ 全部换成矢量插画:学习/练习/测试/锁/勾/连续天数等表情符号统一换成描线图标,章头配14 张简谱教学插画(音阶阶梯、调号牌 1=C、八度点、拍子网格、增减时线、休止与小节线、连线反复、和弦图、扫弦…),随课程色族与深浅主题自动着色,放大不糊。作者可在工作台为每章挑插画。
④ 交互动画:章卡滚入视口升起、小节展开高度补间、页签下划线滑动、进度环描边补间、结算星级逐颗弹出、答对描一笔答错轻抖、打卡格子弹起与连续天数火苗脉冲、章解锁时整块弹一下。系统开了「减少动态效果」时全部自动关闭。
⑤ 编辑器化繁为简:三栏挤成一团 → 两栏 + 顶部「编辑 / 预览」二选一(此前主区被挤到放不下一行谱例);加内容块从「点添加 → 等弹窗 → 选类型 → 关弹窗」四步变成按钮直接写着类型,点一下就加(文字 / 谱例 / 图片,其余进「更多」);块内预览只保留谱例(其余类型写的就是看到的,多一份渲染只是把表单撑长);离开页面不再弹「继续编辑 / 放弃 / 保存并离开」三选一,直接静默暂存到本机并提示一行,重新打开这门课可一键恢复。
⑥ 修 v62.0 遗留:课程独立页顶部的面包屑被固定导航压住(手机上整行看不见)。
测试:tv_site77 项(锁章不锁节全流程与工作台简化口径重写),对改前树复跑 4 项红实证;api/test.sh 216 项、CORE 112 套件、db.test.js 10/10 全绿。 - v62.0每门课程独立页面 · 学习页与课程工作台双 UI 重设计(产品指示:调用顶级专家重做课程页面与编辑界面)。
① 一课一页,可搜可分享:课程不再是学习页里的展开面板,而是拥有自己的地址——站内kecheng.html?c=课程id、对外puyouquan.com/course/课程id(服务端直出 HTML,带面包屑、简介、章节小节大纲与正文节选、Course 结构化数据),另有/course/课程目录页与专属站点地图,已进 robots。课程卡改成真实链接:中键新标签、右键复制链接、收藏全部正常。
② 学习页重设计:左侧章节侧导航(当前小节高亮、滚动同步、点击跳转)+ 进度环(完成小节数/累计星数);每个小节是一张三态卡片——已过(✓ 与星级)、进行中(高亮)、未解锁(说明还差什么才能开锁);练习打卡改成周历条(本周七格 + 连续天数),误点 6 秒内可撤销;测试进入专注态(页面收起干扰、分段进度条、剩余星数实时显示、A/B/C/D 键盘作答、对错即时描红/描绿),没通关会列出错题清单并把「回看本节学习内容」放在主按钮位。
③ 后台课程工作台重设计:三栏布局——左大纲树(章/节齐备度圆点,一眼看出哪节缺学习块、缺打卡、缺题)、中块编辑区(内容块以卡片编排,可增删换序换类型,块内实时预览,谱例记号写错当场标红)、右整节预览(桌面/手机双视图,所见即学员所见)。题目改成表单化题卡(选项增删、正确项单选、解析),支持整章批量导入;发布前有检查清单,坏题精确定位到「第 X.Y 节第 Z 题」;未保存时切页签弹三选一守卫并自动暂存草稿,浏览器直接关页也会拦。
④ 发布校验补到小节级(红线修复):此前只校章级题目,小节里的坏题(空题干、选项不足、答案越界)能一路发布出去,学员会在闯关处卡死无法通过——现在缺标题、题目不合法一律拒发并指明位置。
⑤ 两个渲染缺陷:谱例里单独书写的增时线(-)此前被判非法退化成纯文本,现按正规延时符渲染;全站补[hidden]强制隐藏规则,根治「设了 hidden 仍显示」这类被布局声明压过的老坑(已第三次复发)。
测试:api/test.sh 213→216 项、tv_site72→77 项,对改前树复跑 13 项红实证。CORE 112 套件全绿。 - v61.9课程 2.0(P0):内容细化到小节 · 学习/练习/测试三模块 · 五星解锁(产品拍板方案,先《认识简谱》打样)。
① 课程结构升级为 课程 → 章 → 小节:《认识简谱》从 6 章细化成 6 章 16 小节,每个小节都是完整闭环——学习(图文讲解 + 谱例 + 互动谱)→ 练习(可量化任务 + 每日打卡,记打卡天数)→ 测试(闯关题)。共 88 个内容块、80 道题。
② 五星测试 + 锁小节:测试满分 5 星,每错 1 题扣 1 星;拿到 ★★★ 才解锁下一小节,没过可无限重来,过了也能重测冲星(星级只升不降);课程卡与章标题显示累计星数,进度按小节统计。
③ 内容形式多样化:学习模块由内容块组成,支持 富文本(标题/列表/加粗/引用 + 简谱记号内联)、整行谱例(含小节线、终止线、延音线)、互动谱卡片(直接跳谱库跟谱播放/移调)、图片、视频(自托管 mp4)、代码块——图片与视频走白名单校验,非白名单地址一律不渲染。
④ 老课程零回归:吉他课与幼儿课仍走原章级闯关/打卡路径;v61.8 之前的学习进度键位一律不动,章级已完成的老进度会自动解锁对应小节。
⑤ 官方课程随发版更新:此前只在课程缺失时补种,已存在的官方课拿不到新版内容——现改为「没被管理员改过就刷新到最新,改过的一律不动」,新章节内容随部署自动到位。
下一步(P1):工作台小节级可视化编辑器(本版章级编辑器保存不会影响小节内容,已加只读提示与数据守护)。
测试:api/test.sh 196→200 项、tv_site68→72 项(小节全流程 20 断言 / 内容块白名单 16 断言 / 编辑器保存不丢小节树),对改前树复跑 4 项红实证。CORE 112 套件全绿。 - v61.8学习模块升级:认识简谱课程 + 闯关打卡游戏 + 课程发布强化(产品指示三件套)。
① 《认识简谱》上线:零基础识谱 6 关——数字与唱名 → 八度点 → 增时线 → 减时线与附点 → 休止/小节/拍号 → 连线反复与结课综合读谱;每关实质讲解 5 条内容点 + 可量化练习任务 + 配套谱链 + 4 道闯关题(共 24 题),页面内置简谱记号渲染器——题目和讲解里的高低音点、增减时线、附点按出版样式真实呈现。
② 闯关打卡游戏:课程逐关解锁(完成上一关才开下一关);点「🎯 闯关」逐题作答、对错即判并给解析;答完出星级——全对 ★★★、错一题 ★★、正确率 ≥60% ★ 通关(自动打卡+解锁下一关+彩带庆祝),没过线可无限重来,随时重闯冲三星;课程卡累计星数展示。老课程(吉他/幼儿)自动进入逐章解锁模式,手动打卡保留。
③ 课程发布强化(工作台):章节新增闯关题编辑(一行一题,选项 2-4 个可用简谱记号语法);坏题保存即拦截并定位到章;发布要求每章有目标与内容点;新增「预览草稿」(不落库先看真实学习页效果)与章节下移键;列表显示每课「N 章 · N 题」;服务端发布时同步校验题目结构(坏题拒发定位到题)。存量服务器自动补种新课(播种逻辑从「表空才种」改「按 id 补种」)。
测试:api/test.sh 191→196 项、tv_site65→68 项(闯关全流程/发布强化/三课同源),对改前代码复跑红实证。CORE 112 套件全绿。 - v61.7曲谱收录工程 + 功能页场景区块(产品指示:四垂类收进功能页;曲谱页未被收录)。
收录诊断:谱库卡片是 JS 渲染,爬虫抓原始 HTML 只见骨架、拿不到任何曲谱链接;曲谱落地页又带 1.2 秒自动跳转+内容太薄,是典型「桥页」信号——只收首页/谱库页不收谱页正是这两个原因叠加。
① 谱库目录页上线(/pub/):全部已发布谱的纯 HTML 链接清单,谱库首页新增静态内链「全部曲谱目录」——形成 首页 → 目录 → 每首谱 的可爬路径。
② 曲谱落地页去自动跳转 + 内容加厚:撤秒跳(真人点按钮进观看页);新增面包屑(谱库目录 › 谱类)、调号/拍号/速度、歌词节选、和弦进行、相关曲谱互链(同歌手优先)——每页都是有正文、有内链的真页面。
③ sitemap 收目录页 + 百度主动推送:谱面上架(直发/过审)即推百度站长平台(需在服务器配 token,未配自动跳过)。
④ 功能页新增「专属场景」区块:教师考编/音乐艺考/师范·音乐教育/钢琴即兴伴奏 四张卡(v61.6 首页场景带撤除后的站内入口回归)。
测试:api/test.sh 184→191 项(目录页/无跳转防桥页/目录与相关内链/站点地图,对改前服务端复跑 7 项红);tv_site新增 2 项(场景区块/首页目录内链,对改前复跑红),65 项。CORE 112 套件全绿。 - v61.6官网页脚重设计 + 首页底部精简(产品指示:红框内容去除)。
① 页脚再精简:品牌块(logo+口号)、「在线制谱」链、© 行里的域名与口号全部撤除——导航栏已有品牌与制谱入口,页脚不再重复;只留 功能/帮助/更新日志/赞助商/联系我们 五链一排 + 「© 2026 谱友圈」与备案号一行,整体居中排版、行距收紧、去内部分隔线。
② 首页底部三段撤除:工具带四卡(专业制谱/智能配伴奏/考编·艺考/学习)、「支持谱种」带、「专属场景」带整体下架——制谱与学习入口走顶部主菜单。
测试:tv_site断言更新到新口径并新增 v61.6 四项(首页三段撤除/页脚模板净化/静态兜底同口径+备案保留/页脚渲染居中几何),对改前文件复跑 6 项红实证。CORE 112 套件全绿。 - v61.5「当前音轨」卡排版升级 + 乐器图标重绘(产品指示:UI 专家规格)。
① 身份行去胶囊改徽标:撤销常亮朱砂描边胶囊(卡标题已写明语义,描边不承载信息),乐器图标改包 24×24 朱砂淡底徽标块,轨名 12.5px 加粗、删除钮靠右——一条通栏行干净收齐。
② 显示行改分段控件:「显示」标签行内化不再独占一行;三枚记谱钮(六线/五线/简谱)32×28 相邻并边、端部圆角的分段控件,点亮项朱砂淡底描边;MIDI 导入/键盘两枚动作钮虚线描边靠右——一眼分清「切显示」与「做动作」。
③ 变调夹工具排单行收齐:[变调夹][夹位状态]──[指板/键盘] 一行排开,夹位状态设夹时变朱砂徽章(如「夹 2 品」),不再整行占位换行。
④ 六枚乐器图标重绘(吉他/尤克里里/贝斯/小提琴/二胡/琵琶):按乐器真实构造重画——吉他 8 字腰身 45° 斜置带音孔、尤克里里圆头短琴、贝斯长颈拾音器无音孔、小提琴 C 腰角尖+涡卷头、二胡六边琴筒+弓、琵琶梨形折颈;14px 小尺寸下六枚互认不混淆(此前圆圈+斜线画法互相难分)。
测试:tv_uipanel6→8 项(T7 音轨卡几何:徽标 24px/分段 28px 并边/工具排同行坐标;T8 图标构图签名),对 v61.3 复跑 T7/T8 红实证。CORE 112 套件全绿。 - v61.4LOADING 动画:曲谱打开 + 音色加载(产品指示:美观精致)。
① 曲谱打开中:启动遮罩升级——品牌方块下新增「五线谱三音符起伏」动画(三枚朱砂渐变符头带符干在五线上依次跳动)、文字呼吸;从分享/谱库链接打开时文案直说「曲谱加载中…」,谱面就绪才揭幕。
② 音色加载中:点播放但高保真采样还在加载时,播放条上方浮出深色圆角胶囊——四根朱砂渐变均衡条跳动 + 「高保真音色加载中…」,音色就绪自动开播、胶囊自隐(替代原来的一条 toast 文字);按停止立即收起。
③ 两处动画均遵循系统「减少动态效果」设置自动降级;顺手修:等待音色期间手动停止后再播,此前会被误判「已超时」跳过音色等待拿不到高保真音色——现计时随停止归零。
测试:新增tv_loading套件 4 项(遮罩动画+深链文案/胶囊等待→就绪开播自隐/停止收起+计时归零/reduced-motion 降级),对 v61.3 复跑 0/4 全红实证。CORE 111→112 套件全绿。 - v61.3和弦构建器四项强化(产品指示逐条)。
① 主音与类型分开:原「命名」卡拆成「主音」「类型」两张独立卡,选音选性质互不干扰。
② ♯/♭ 异名同音切换:主音卡右上新增 ♯ / ♭ 切换——整排换拼法(♯ 系 C♯ D♯ F♯ G♯ A♯ ↔ ♭ 系 D♭ E♭ G♭ A♭ B♭),当前主音与转位低音同步换等音名(♯G=♭A、♯C=♭D),再点回习惯混合拼法;D♯m 等异名拼法也能拿到 E♭m 的精修库指法图。
③ 六九和弦(6/9):类型区新增「69」——大三度+六度+九度(C·E·G·A·D),谱面записи为 C69,发声/和弦图/构成音全链路支持。
④ 把位方案更多 + 滚动条:撤销「3 张+更多」折叠,改为全量滚动网格——库图/CAGED 五型之外新增沿指板逐窗口枚举的推导方案(1→12 品逐把位搜索),常用和弦可选方案 9-12 个,滚动条翻看。
测试:tv_chordgp6→7 项(分卡/异名往返/69 音集/多把位滚动/等音库图,对 v61.2 复跑红实证);tv_chordlibT8/T14 随分卡与滚动口径更新。CORE 111 套件全绿。 - v61.2和弦功能 GP 级强化(产品指示:参考 Guitar Pro 和弦面板逻辑、弹窗可拖动、自家风格 UI)。
① 编辑和弦弹窗全新分区卡布局(暖米/朱砂自家风格):命名(主音/性质/转位低音)→ 延伸·变化音 → 构成音 → 创建和弦 四张卡,右侧大图实时预览;标题栏按住可拖动(右上角有提示)。
② 延伸·变化音四行(GP 同款):5 度 ♭5/♯5、9 度 ♭9/加9/♯9、11 度 加11/♯11、13 度 ♭13/加13——点亮即入和弦名(如 C7♭9、Cmaj7♯11;空性质自动括号 C(♭9) 防歧义),再点取消;已存的组合和弦重开弹窗自动拆回点亮态。
③ 构成音显示与省略(GP「省略和弦内音」逻辑):按度数正确拼写列出构成音(Ddim7 → D·F·A♭·C♭,♭9 不会拼成 ♯8 系),点击即省略/恢复——省略后「推导」把位方案不含该音(至少保留两音)。
④ 播放与谱面同源受益:新增 7♭9/9♯5/maj7♯11 等 17 个延伸/变化类型 + 组合后缀解析引擎,这些和弦的伴奏发声、和弦图推导全部正确(此前未知后缀一律按大三和弦响、无图可画);老谱未知写法仍按旧口径兜底,零回归。
⑤ 把位方案区新增「推导」卡:按当前变化/省略后的实际音集在指板搜索指法,模板库没有的组合和弦也有图可用。
测试:新增tv_chordgp套件 6 项(解析引擎/推导出图/变化音行/省略+守卫/度数拼写/拖动+应用往返),对 v61.1 文件复跑 0/6 全红实证;tv_chordlibT8 随分区卡布局更新口径。CORE 110→111 套件全绿。 - v61.1不换行模式:横向长带编辑与看谱(产品指示)。
① 编辑不换行:顶栏缩放旁新增 ↔ 切换钮——全部小节排成一条横向长带(Guitar Pro / MuseScore「连续视图」惯例),断行与两端对齐停用、每小节保持自然宽,左右滚动编辑,长句时值关系一目了然;再点回到分页排版。
② 看谱不换行:观看页 ⚙ 设置新增「不换行看谱(横向长带)」——手机上按原比例横向滑动看谱(不再缩到屏宽),适合跟奏时单行推进。
③ 配套行为:播放光标改为横向跟滚(当前小节走近右缘自动前移);打印/导出 PDF、谱库卡片缩图自动按分页排版输出(长带只是屏上视图,出版产物不受影响);编辑与看谱的开关各自记忆、互不影响;谱架模式维持自动卷谱不适用。
测试:新增tv_nowrap套件 6 项(长带几何/打印兜底/横向跟滚/关闭还原/观看独立开关+手机不缩屏/缩图不受影响),对 v61.0 文件复跑 0/6 全红实证。CORE 109→110 套件全绿。 - v61.0记号面板去分类(产品更正)。左栏面板统一叫「记号」,内部不再显示「音高与谱号 / 连接与和声」等分类小标题——全部记号在一个面板里连续平铺(v60.99 制谱专家的按同族相邻排序保留,找记号仍顺手);吉他侧原「音符记号 + 演奏技巧」两段间距也收齐,视觉上就是一整片。
测试:tv_uipanel断言改「零子标题 + 排序保留」口径(对 v60.99 复跑 2 项红实证)。CORE 109 套件全绿。 - v60.99编辑器左栏/上栏专业级升级 + 多开项目回归(产品指示:调用制谱专家与 UI 专家)。
① 记号/技巧面板按制谱惯例重新分组(制谱专家方案,对应 Guitar Pro 8 / MuseScore 4 习惯):吉他侧分「拨奏」(下拨/上拨/下扫/上扫/琶音/切音/拍弦)「时值 · 装饰 · 指法」「连奏与音高」(击勾弦/滑音/推弦/揉弦/摇把/点弦)「制音与音色」(P.M./哑音/let ring/泛音/指弹)四组;简谱侧分「音高与谱号」「连接与和声」「奏法 · 力度」「力度 · 装饰音」四组——每组带小标题,找记号不再靠记位置。
② 面板按钮全面精细化(UI 专家规格):四列等宽网格、46px 定高按钮、22px 图形区+10px 标签两段式——图形基线跨钮对齐、每行齐平;字母系字形统一衬线斜体、悬停中性灰、选中朱砂描边,排列乱/图标粗糙的问题根治。
③ 上栏归整:全部控件统一 28px 行高(时值组不再独高一截)、组内 2px/组间 8px 双档间距、数字等宽字体对齐、分隔线统一淡化。
④ 左轨页签 56px 定宽圆角统一,按下有微沉反馈,键盘焦点可见。
⑤ 多开项目回归:顶部项目页签条复活——「+新窗口」直达新建向导另开项目,页签带谱类图标/入库状态点(绿=已入库、琥珀=未入库本机自动保存)/关闭钮;窗口互不干扰(各自撤销栈),关闭未入库窗口自动存入「我的曲谱」绝不丢谱,刷新后全部页签原样恢复;新建/导入(MusicXML/GP/MIDI/哼唱/一键配伴奏)一律另开新窗口,当前工作不再被替换。手机窄屏与观看/谱架模式不显示页签条。
测试:新增tv_multidoc(6 项:页签渲染/窗口隔离/关闭转存/不重复入库/启动恢复/向导直达)与tv_uipanel(6 项:四列网格 46px 定高/组内序/图形区 22px/上栏 28px 行高/左轨 56px 几何断言)两套件,对 v60.98 文件复跑 12 项全红实证;tv_safetyT1 改多开口径。CORE 107→109 套件全绿。 - v60.98观看页头部按 UI 专家规格重做 + 计数移谱库卡 + 手机拖选小节修复(产品指示逐条落地)。
① 头部右上只留三钮:收藏 / 分享 / 主页——点赞心、计数角标、浏览只读位全部撤下;收藏点亮=朱砂实心红星(注册用户登录后云同步),点亮带一次回弹动效。
② 按 UI 设计专家规格重做「拙劣、太大个」的图标钮:改「幽灵钮」——默认无边框无底色、视觉只剩 21px 字形(此前是 44px 描边圆片反客为主),40×40 盒保住触控热区、按压才浮出圆形底色;图标用灰墨色让左侧数值位保持主角,整组右移 8px 与页缘光学对齐。
③ 浏览数与收藏数改在谱库曲谱卡上显示(信息条追加「N 浏览 · N 收藏」,过万缩写 N.N万)——首页/谱库/个人中心卡片同源全部生效;观看页头部浏览位不再显示(上一版在部分机型上也确实渲染不出)。
④ 手机音轨面板拖选小节修复:此前手指一拖就被浏览器判成页面滚动、拖选序列被掐断——小节格加touch-action:none+ 指针捕获 + 按坐标取格,触屏拖动选段循环与桌面一致。
测试:tv_vwmob重写为 5 项(三钮幽灵样式/红星回弹/点外部收起/底栏轨卡/触屏拖选落选区),对 v60.97 文件复跑 3 项红实证;tv_site卡片信息条断言追加浏览/收藏数。CORE 107 套件全绿。 - v60.97手机观看页改版 + 曲谱浏览数/点赞体系上线(产品指示逐条落地)。
① 收藏星放大:头部图标钮 40→44px、字形 21→25px(此前被按钮内边距压到 18px 的问题一并根治)。
② 谱架钮移到底栏:头部谱架图标撤下、底栏恢复「谱架」钮;底栏 UI 统一——按钮等高 46px、圆角一致、播放主钮加宽突出。
③ 音轨面板点外部自动收起:点面板外任意处即收起,不必再点「音轨」钮(点面板内部/弹窗不误收)。
④ 音轨面板升级:每轨改卡片式浮出(圆角底色)、音色下拉与 S/M 钮统一深色圆角;声像滑杆撤出手机版(过于专业)。
⑤ 浏览数 + 点赞 + 收藏记录:谱库详情每次打开服务端计一次浏览,头部只读位显示(过万显示 1.2万);新增点赞(桃心,登录后云同步,未登录点击就地拉起登录);收藏/点赞钮带计数角标,点按即时增减;个人中心新增「我的点赞」记录卡(与「我的收藏」并列);服务端新增likes表与views计数列、公开详情带 stats、点赞三接口(列表/点/取消),删谱级联清点赞。
测试:api/test.sh176→185 项(统计字段/浏览递增/点赞幂等与权限/计数增减);新增tv_vwmob套件 4 项(统计显示与 44px 图标/点赞即时反馈/点外部收起/底栏与轨卡几何断言),对旧版文件复跑 0/4 全红实证。CORE 106→107 套件全绿。服务端随本版部署自动重启建表。 - v60.96琶音改「滚入拍点」:音头不再拖后(产品反馈「琶音的音头延迟过多」)。
此前琶音从拍点起滚、总展开 138ms(v60.67 定值)——收尾那个音(旋律侧)要比拍点晚 138ms 才响,慢速曲子里听感就是整个音头拖后了。现改为演奏惯例的「滚入拍点」:提前起手、最后一个音正落在拍点上(与前倚音的提前口径同款);下琶音同理(目标低音落拍)。滚奏的 138ms 手感、力度层次、光标与时间轴对齐全部不变——只是整组发声时刻前移;从头起播的第一列琶音按可用提前量收缩(不会早于播放起点)。
测试:tv_arpfix7→8 项(新增 T8:提前量=138ms 跨度/起点收缩/扫弦与普通和弦不受影响),对旧版文件复跑 T8 红实证;tv_audio39 项全绿(strumPlan 口径未动)。CORE 106 套件全绿。 - v60.95页头出版级改版 + 信息弹窗修正(产品指示)。
① 词曲信息不再压和弦图:作词/作曲/制谱列此前画在固定位置,首行行内和弦图一多就撞上(用户截图)——现在版面自动让位:首行谱面永远从词曲列底部之下起排,无词曲信息的谱面版式不变。
② 页头按歌本出版惯例重排:标题字距放宽居中、演唱者小字加距;词曲/制谱列右对齐,首行与左侧 1=X 信息行同基线(左调右词曲同排起笔,出版歌本惯例),行距统一 18,「作词/作曲/制谱」标签弱化墨色、名字保持正墨——版面层次一眼分明;词曲列本身也可点击直接打开曲谱信息弹窗改这些字段。
③ 曲谱信息弹窗「弱起小节」提示修复:说明文字此前被 56px 标签列宽压成一字一行的竖排(看着像乱码)——弹窗表单说明文字统一横排样式(「散拍」勾选项同款根治)。
测试:新增tv_headart套件 3 项(词曲同基线/18 行距/系统让位几何断言、无词曲版式零回归、词曲热区开弹窗+弱起提示横排),对旧版文件复跑 0/3 全红实证。CORE 105→106 套件全绿。 - v60.94两项更正:琶音长时值改增时线 · 散拍节奏型编辑器修复(产品指示逐条落地)。
① 琶音长时值=增时线(更正 v60.92 的延音弧记法):两拍/三拍/四拍的琶音与普通音符同口径——在六线谱中线位画增时线「-」(二分 1 条、全音符 3 条),延音弧撤销;此前只有带显式音符的列画增时线,纯箭头/波浪线列(音符随和弦隐含)此前不画、现在同样画。顶栏时值组的增时线按钮同步改为只显横杠「-」不带数字。
② 散拍节奏型编辑器修复(勾了散拍进编辑器还显示 4/4 + 写了扫弦保存却提示「小节还是空的」):散拍草稿不再显示拍号——页头标「散拍」、六线谱行首不画 4/4,节拍检查整体豁免(散拍本就不限拍数,右下角不再冒红);保存报空是真 bug——点「下扫/上扫/琶音」只落箭头不落音符(发声靠和弦隐含),入库转换却把无音符列一律当休止,整小节扫弦保存直接被拒;现在扫弦/琶音判定提前,纯箭头列照常入库(下琶音顺带并入琶音记法,此前被存成柱式)。
测试:tv_arpfix6→7 项(T3 改增时线口径+无延音弧断言、新增 T7 散拍旗标/页头/免检/纯箭头保存/按钮无数字),对 v60.93 文件复跑 T3/T7 两项红实证。CORE 105 套件全绿。 - v60.93播放样式改版:当前小节整块变色 + 平滑滚动竖线(产品指示,参考出版播放器样式)。
① 小节变色:播放到哪个小节,哪个小节整块罩上淡色底——此前色块只罩当前列(一格一格跳),现在一眼看清「正在弹第几小节」;整谱模式罩本小节所在行的全部声部,单轨 SOLO 时只罩该轨行(纵向口径不变)。
② 滚动竖线:新增一条纵向竖线随播放逐帧平滑移动(不是逐列跳格)——列与列之间按时值线性插值,小节最后一列走到小节右缘收束,换行时自动回到下一行行首;停止播放即隐藏。自动滚屏、循环播放、播放中切 SOLO/静音等既有行为全部不动。
测试:新增tv_playline套件 3 项(竖线存在与几何/播放中两次采样单调前进+停播隐藏/SOLO 模式小节宽×单轨行高),对旧版文件复跑 0/3 全红实证;tv_mix播放头几何口径不回归。CORE 104→105 套件全绿。 - v60.92六线谱四项修正:散拍自定义节奏型 · 琶音长时值延音弧 · 自定义音符琶音 · 手输数字优先(产品指示逐条落地)。
① 自定义节奏型可选散拍:新建/编辑弹窗勾「散拍」——不限拍号,拍数可 1–6 自由写,入库后与库内「半小节/一拍」散拍同一条管线:套用时从所选列起填入所写拍数,一小节可拼两段不同节奏(各自和弦独立);卡片带「散拍」角标。简谱侧套用管线是整小节替换、暂不提供散拍(如实边界)。
② 琶音长时值出版记法:两拍/三拍/四拍的琶音列不再像五线谱那样只靠一个音符表达——琶音后方自动画延音弧,弧长盖满该列的时值跨度(一拍琶音不画),出版惯例同扫弦延留:整个和弦收一条弧。
③ 自定义音符琶音:点琶音列(或记号钮)打开的弹窗里,除覆盖弦范围外新增逐弦品位输入——写入后谱面在琶音波浪线右侧画出每弦数字(波浪线左移让位,同出版谱样式),发声按所写;留空的弦不发声(不再按和弦指法补音);「恢复随和弦」一键回老行为。
④ 和弦内手输数字以编辑为准:教材式记谱把「与和弦指法一致的 ≤4 品实音」折成 ×,用户特意输入的 0/2 也被吞成 ×——现在凡是手输的品位(键盘/弹窗/指板面板)都带「显式」标记,教材式下保数字不折 ×;节奏型与和弦变换生成的音不受影响,× 惯例照旧。
测试:新增tv_arpfix套件 6 项(散拍入库与 2 拍局部套用/延音弧几何/lit 数字与不补空弦/弹窗逐弦写入/教材式手输保数字),对旧版文件复跑 0/6 全红实证。CORE 103→104 套件全绿。 - v60.91简谱记号面板新增「升八度 / 降八度」批量操作(产品指示)。
① 有选中 → 只动选中:Ctrl 多选或框选若干音符后点「升八度/降八度」,选中列整体移一个八度——和音、倚音随主音一起移,相对音高不变;选区保留可连击,再点一次再移一个八度。
② 未选中 → 全曲整体移:当前声部所有音符(含和音/倚音)一键升/降八度,休止不动——录完发现整体偏高/偏低时一步归位,不必逐音加点。
③ 出版级保护:任一音已带 3 个八度点(记谱上限)时整体拒绝执行并提示,绝不让部分音在上限处折返打乱旋律轮廓;操作入撤销栈,一步可回。
④ 入口分工:左栏记号面板钮=批量(新版外壳恢复显示,此前被当作重复入口隐藏);顶栏 8ᵛᵃ/8ᵛᵇ 与快捷键 +/− 仍是单音加高/低音点,语义不变。
测试:新增tv_octbatch套件 7 项(全曲/多选/框选/越界拒绝/面板可见/单音不回归/撤销),对旧版文件复跑 5 项红实证有效。CORE 102→103 套件全绿。 - v60.90课程体系落库:新增《幼儿音乐启蒙课》+ 课程工作台 + 打卡进度(产品指示:视觉化 / 互动化 / 趣味化)。
① 第二门课《幼儿音乐启蒙课》上线:3-6 岁亲子 · 6 周不认字也能上的音乐游戏课——听!世界的声音 → 身体是乐器 → 会唱 do re mi → 数字会唱歌(1-5 简谱启蒙)→ 家里的小乐队 → 我们的小音乐会;每章配亲子任务(声音捉迷藏/全家打稳定拍/高低音蹲跳猜歌…)与谱库互动资源(《小星星》变速、《欢乐颂》跟练),结课有「小小音乐家奖状」仪式感文案。
② 课程数据模型落库:新增courses表——章节 = 谱面(互动谱链接)+ 图文(目标/内容点)+ 练习任务三件套;内容单一来源seed-courses.json(服务端首启自动播种,页面内嵌同一份作 SEO/离线兜底,测试强制两处逐字一致);公开接口/api/courses(列表/详情),线上改课不再动代码。
③ 课程发布工作台:管理控制台新增「课程」页签(7→8)——新建/编辑课程(乐器分类/emoji/配色族/周数/简介),章节可视化编排(每章 emoji/标题/目标/内容点/练习任务/互动资源链接,上移/删除/追加),保存草稿与一键保存并发布;草稿不公开、无章节不能发布、已发布须先下架才能删,全程落审计日志。
④ 学习页展示框架重做:课程卡(分族渐变封面 + 大 emoji🎸🧸 + 免费/难度/周数章数徽章 + 进度条)→ 点开课程详情(每章 emoji 编号卡)→ 「完成打卡」逐章记进度(本地存储,进度条实时涨,完课章节整卡变淡打勾)→ 全部完成触发结课庆祝(幼儿课发奖状文案);支持#课程id深链直达。存量吉他课同步升级为新框架(每章 emoji/打卡/进度)。
测试:api/test.sh160→176 项(种子两门/工作台增删改/发布门槛/权限/审计);tv_site53→59 项(内嵌数据与种子文件逐字一致/两课卡片/打卡进度与本地存储/工作台真实 PUT)。CORE 102 套件全绿。服务端随本版部署自动重启建表播种。 - v60.89主菜单改版:「学习」直达首门课《民谣吉他启蒙课》(7 周);功能/帮助收进页脚(产品指示逐条落地)。
① 主菜单收敛为三项:找谱 / 制谱 / 学习(「课程」改「学习」);「功能」「帮助」撤出主菜单、收进页脚(页脚新增「功能」链接,「帮助」原本就在)。
② 首门课立起课程框架:官方自制《民谣吉他启蒙课》上线「学习」页——7 周从第一次抱琴到完整弹唱一首歌:认识吉他与调音 → 单音旋律 → C/Am/Em/G 四和弦 → 扫弦入门弹唱 → 分解和弦 53231323 → F 大横按与 1645 → 结课完整弹唱。每周固定结构=学习目标 + 内容点 + 练习任务 + 配套互动资源(零基础第一课/谱库跟练《小星星》《欢乐颂》/编辑器节奏型库与节拍器/观看页变速循环移调)——课程框架即按这套周次结构建立,后续课程按同款结构生产。免费,Course 结构化数据(SEO 可收录为课程)。
③ 原课程介绍并入功能页:课程形态(互动谱课时/练习任务与达标/三种开课方式:官方自制·名师签约·创作者开课)移入 features.html 新「学习课程」区块;功能页头部按最新定位重写(出版级·科教级、乐器覆盖含民族乐器筹备、标题与 keywords 同步)。
④ 首页「学习」卡文案随真课更新(民谣吉他启蒙课 7 周 · 免费)。
测试:tv_site51→53 项(主菜单三项且功能/帮助撤出/页脚含功能帮助/学习页 7 周结构+Course LD+练习任务/功能页并入课程介绍与新定位)。CORE 102 套件全绿。 - v60.88平台管理独立成页 admin.html 并强化(产品指示)。
① 独立控制台页:管理中心从个人中心内嵌卡搬到独立页admin.html(noindex 不进搜索)——门卫先行(未登录/非管理员拦在门外,服务端 /api/admin/* 仍逐条鉴权),概览四格 + 近 7 日事件漏斗上墙(接口早就返回、此前从未展示);me.html 撤掉内嵌卡瘦身约 150 行,「平台管理」按钮/徽章直达新页。
② 页签 5→7 并强化:待审核——驳回由 prompt 换成弹窗 + 常用原因一键快填(音符错误/歌词对位/信息不完整/重复/侵权风险五条,可改后提交);用户——新增「详情」展开:权益、订单、曲谱分状态计数一屏看全(新接口/api/admin/users/:id/detail),不用再上服务器 CLI 查;兑换码(新)——生成与列表 HTTP 化(此前只有服务器 CLI),码面同 CLI 格式,生成后文本框一键全选复制;公告——发布之外新增历史列表(含已读人数)与撤回(撤回连同已读记录事务级联删,全站消息即刻消失);订单(新)——带用户昵称/打码手机号的订单流水。
③ 新接口五个(全部 requireAdmin + 写操作落审计):broadcasts 列表/DELETE 撤回、codes 生成/列表、orders、users/:id/detail;审计日志新增 生成兑换码/撤回公告 动作。
测试:api/test.sh144→160 项全绿(公告历史含已读数/撤回级联/非管理员 403/非法 kind 拒绝/订单带用户);tv_site46→51 项(门卫两态/七页签/驳回弹窗/详情展开/兑换码/公告撤回/订单,管理测试整体迁至 admin.html)。CORE 102 套件全绿。 - v60.87站内信上线:用户操作提醒 + 官方信息发布(产品指示)。
① 数据与接口:新增messages(user_id 为空=官方广播)与msg_reads两表——广播不给每个用户插行(用户量大时是笛卡尔积),已读按用户单独记;接口GET /api/messages(列表带已读态)、POST /api/messages/read(单条/一键全读,只能读自己可见的)、POST /api/admin/broadcast(管理员发公告,落审计日志,链接只认站内地址防钓鱼);未读数随 /api/me 带出——各页本就拉 /me,红点零新增请求。广播可见窗口 90 天:老公告自然过期,新注册用户也能看到近期公告。
② 操作提醒自动触发:审核通过/驳回/下架即给谱主发信——通过附谱库直达链、驳回正文带原因附编辑器打开链;通知是旁路(notify 永不抛错),审核主流程不受影响;管理员审自己的谱不发。
③ 个人中心「消息」卡:未读加粗带红点、审核/公告类型角标、正文与时间、点行即读(带链跳转)、「全部标为已读」;全站导航头像亮红点(未读时)。管理中心新增「发公告」页签:标题/正文/站内链接,发布前确认,发布后全站可见。
测试:api/test.sh新增 13 项(审核自动通知/广播可见/未读数三态/权限与站外链拒绝/审计),131→144 项全绿;tv_site新增 4 项(消息卡渲染/一键已读走真实接口/导航红点/发公告页签),42→46 项(管理页签数断言 4→5 随功能更新)。CORE 102 套件全绿。服务端随本版部署自动重启生效。 - v60.86定位话术回归「专业曲谱平台」+ 课程模块框架上站 + 首页布局与全站 SEO 更新(产品拍板 2026-08-31:三层结构认可、先完善曲谱制作、课程=自制/签约/UGC 三轨、命名改回专业曲谱平台)。
① 全站口径:导航/页脚/首页 hero/个人中心/功能页 og/小程序登录页的「智能曲谱平台」全部改「专业曲谱平台」,首页副题升级「出版级 · 科教级在线制谱」(历史更新日志原文不改)。
② 课程模块框架先行:新建site/kecheng.html——课程形态(互动谱课时/练习任务/章节达标)+ 三种来源(官方自制 / 名师签约 / 创作者开课 UGC)+ 现在可做(零基础第一课/谱库跟练/老师合作邮箱),如实标注「框架就绪 · 内容筹备中」,不许诺时间;导航加「课程」项。
③ 首页布局:工具带 3→4 格(专业制谱[出版级文案]/智能配伴奏/考编艺考/学习课程);新增「支持谱种」带:吉他弹唱/独奏 · 钢琴 · 简谱/五线谱 · 尤克里里 · 功能谱/和弦谱,更多乐器·民族乐器 筹备中。
④ SEO:首页 title/description/keywords/og/JSON-LD 按新定位重写(补 尤克里里谱/出版级制谱/乐器学习课程 词);课程页整套 SEO 头 + 进 sitemap;编辑器 keywords 补 钢琴谱制作/专业制谱/出版级制谱。
测试:tv_site37→42 项(旧口径清零/导航课程/课程页框架/sitemap/首页定位布局五项新增;工具带数量断言按拍板改钉 4 格)。CORE 102 套件全绿。拍板记录已落docs/plan-2026-09-platform.md与 CLAUDE.md;四阶段工程仍未启动。 - v60.85小程序 1.1.3 审核驳回整改:登录页协议改主动勾选 + 去「微信」字样 + 协议正文上线(微信审核两条驳回逐条修)。
① 驳回原因 1「默认自动同意协议」:登录页底部原是「登录即表示同意用户协议与隐私政策」死句——属默认强制同意。现改为默认不勾的勾选框「我已阅读并同意《用户协议》与《隐私政策》」:未勾选时「手机号快捷登录」渲染为普通按钮(渲染 open-type 按钮点了就直接弹授权=仍是默认同意),点击只提示去勾选;「手机号验证码登录」同样把关。
② 驳回原因 2「混淆腾讯官方元素」:按钮文案「微信一键登录」按审核指引改为「手机号快捷登录」;错误提示同步去「微信」字样。
③ 顺手排掉的隐患:《用户协议》《隐私政策》链接此前只是复制链接——审核员点不开正文,重审必再挨。现新建site/terms.html与site/privacy.html(与编辑器内协议弹窗同一口径:本地优先原则、手机号/微信标识收集、阿里云短信、support@puyouquan.com),小程序内走 pages/web 直接打开;编辑器隐私弹窗同步补小程序收集项(手机号快捷验证、剪切板写入),更新日期升 2026 年 8 月。
测试:新增tv_mplogin套件 11 项(勾选默认态/双通道把关/协议真打开/全部 wxml 渲染文本无「微信」/站点正文要点),对 v60.84 旧文件跑 8 项红。CORE 101→102 套件全绿。
注意:需先部署网站(terms/privacy 页上线),再上传小程序(版本号 1.1.4)提审——审核员会点开协议链接看正文。 - v60.84小程序分享卡补图补题;朋友圈置灰如实定性为平台限制(产品报告三项:新版上线朋友圈还是灰色、分享好友卡片截图丢失、分享标题要像曲谱链接标题那样带演唱者和谱类)。
① 好友卡片图空白的根因:小程序的onShareAppMessage一直没设imageUrl,微信就自动截屏当前页面——而页面是 web-view,截屏时机常常抓到空白。现在 imageUrl 必设:优先用发布时上传的谱面缩略图直链(/api/pub/ID/thumb,2:1 首屏栅格,thumb_at 做缓存指纹;观看页viewerCtx顺带带上 thumbAt),无缩略图回落品牌方图。小程序层只认谱库域名的图,防被嵌入页塞外链。
② 分享标题带演唱者与谱类:网页端wxShareCard在小程序环境下 postMessage 的素材由「歌名」升级为完整标题(歌名 - 演唱者 · 谱类,与 v60.81 浏览器标签同款),好友卡与朋友圈卡同用;没收到素材时按旧口径回落歌名。
③ 朋友圈仍灰色——如实认账并修正 v60.79 的判断:v60.79 记的「不支持的只是单页模式渲染,分享入口本身可以点亮」在真机上不成立——微信对含 web-view 组件的页面整体禁止分享到朋友圈(菜单置灰「当前页面不可分享」),showShareMenu与onShareTimeline都改变不了,属平台限制、代码无法绕过。相关代码保留不删(微信若放开即自动生效),README 同步注记。朋友圈晒谱的可用通道:观看页顶栏「分享卡」生成含二维码的图片,长按保存后发图到朋友圈——扫码即达该谱。
注意:小程序侧改动需管理员重新上传并发布新版本(1.1.3)后才生效。
测试:新增tv_wxshare套件 10 项——node 侧直测小程序两页分享逻辑(完整标题优先/品牌图回落/外域图拒收),浏览器侧把编辑器伪装成 puku 真域名跑通 postMessage 素材链路(wxShareCard 有 origin 与微信 UA 双守卫,file:// 下测不到);对改前文件(v60.83)跑10 项全红。CORE 100→101 套件全绿。 - v60.83创作者中心发布管理接通真实接口(产品报告:前台一排「待审核」,真后台审核队列却是空的;管理员应免审直接上架)。根因不是审核逻辑错,而是编辑器创作者中心还在跑「本机演示层」——那排状态只读浏览器本地的 circlePubs 演示记录,和服务器完全是两套账:
① 状态显示改以服务器为准:打开创作者页签拉一次/api/scores(scoreList 本就回 status/review_note),行状态按服务器渲染(已上架/待审核/已驳回+原因/未发布);本机演示记录只在离线/未登录时回落,并继续提供定价/销量等演示字段。产品截图那排「待审核」就是本机残留——服务器上这些谱其实是 published 已上架(管理员发布免审逻辑一直是对的),所以真后台审核队列当然是空的。
② 「更新」按钮此前是纯演示:只改本机状态为 pending,既没把最新内容推上云端、也没走发布接口——「更新完还显示待审核」由此而来。现在在线时走真实链路:推最新内容(PUT)→ 重新发布(POST publish,管理员免审仍直接生效、普通创作者重新进审核)→ 顺带重传缩图。
③ 「下架」按钮此前也是纯演示:只删本机记录,服务器上那首谱还挂在谱库里——这是实打实的运营风险(以为下架了其实没下)。现在在线时调真实/unpublish(status→private,谱库立即不可见)。
测试:tv_publish新增 T7(状态真源=服务器:本机记错也显示已上架)/T8(更新走 PUT+publish、管理员不回炉)/T9(下架调 unpublish),对改前文件跑三条全红。CORE 100 套件全绿。 - v60.82全站 SEO 补齐(产品指示)。先盘点:v44.6 的地基(robots.txt 双 sitemap、四垂类落地页带 FAQ 结构化数据、发布谱 SSR 落地页带 MusicComposition + og:music.song + canonical)都在且达标,本轮只补缺口:
① 五个站点页补 og 分享卡(features/help/make/log/sponsors 此前 og=0,微信/QQ/微博分享出裸链接):og:title/description/image/site_name + twitter:card 三件套补齐;首页与三个工具页补keywords(百度仍读)。
② 编辑器(zhipu 与 puku/kanpu 共用同一文件)补 SEO 头:canonical 锚点(静态指 zhipu 根;kanpu?pub=ID 观看时由 openRemotePub 改写为 /pub/ID——同一首谱的两个地址不去重会分散权重)、SoftwareApplication 结构化数据(免费、Web 应用)、og 卡与 keywords。
③ 发布谱动态 sitemap 带 <lastmod>(epoch 秒 → ISO 日期):搜索引擎按它安排重抓,重新发布过的谱更快刷新快照、没动过的不浪费抓取配额。
④ 语法闸升级:跳过application/ld+json数据块(JSON 按 JS 解析必假红)。
测试:tv_site新增 4 项(五页 og 卡/keywords 补位/编辑器 SEO 头含观看时 canonical 改写/动态 sitemap lastmod),33→37 项全绿。API 侧需随服务端发版重启 pyq-api。 - v60.81曲谱页/谱库信息升级:演唱者 + 谱类细分标签 + 收藏星放大(产品指示)。
① 谱类细分标签:不再只写「弹唱谱/歌谱」——弹唱谱说清乐器(吉他弹唱谱/钢琴弹唱谱)、歌谱说清记谱法(简谱歌谱/五线谱歌谱)。判定口径:docType 里 vocal 只会是简谱记谱=简谱歌谱;五线谱写的歌归在 instr 里,按「有没有实际歌词」区分——带词的是给人唱的(五线谱歌谱),没词才是器乐五线谱。三端同一张表:编辑器docTypeLabel、服务端typeLabelOf(谱库列表接口新增typeLabel字段 + SSR 落地页/og 卡同步)、站点卡片pyq.js优先用服务端算好的标签、旧接口回退粗分类(站点先发、接口后发也不破)。
② 曲谱页标题带演唱者:浏览器/小程序导航栏标题由「难忘的一天 · 谱友圈谱库」升级为「难忘的一天 - 许巍 · 吉他弹唱谱 · 谱友圈谱库」;互动谱 HTML 与微信分享卡标题同口径(《难忘的一天》许巍 · 吉他弹唱谱)。谱库卡片本就有「演唱 xx」行,配合细分标签信息补齐。
③ 收藏五角星放大(产品报告太小):星形墨迹本就比方形图标显小,收藏星 16→21,其余头部图标 16→17。
④ 排查记录:产品复报「重新保存发布后手机电脑显示仍不一致」——审计整条链(云端保存带整个 data、观看端深拷贝不丢字段、migrate 只增不删)代码是通的,根因是 v60.80 尚未部署到线上,线上编辑器还没有「载入即补 tabNota」这段码。线上现版本的立即解法:编辑器里点两次「记谱切换」(切过去再切回来)——切换动作本身就会把记谱风格写进谱(v58.2 起有),再保存/重新发布即可。
测试:tv_pub新增 T6(四档标签判定含「带词五线谱=歌谱」/标题含演唱者与细分标签/收藏星 21 其余 17)。CORE 100 套件全绿。 - v60.80手机看谱四项返修(产品截图逐条)。
① 「电脑显示 ×、手机只显示数字」:记谱风格字段tabNota此前只在手动切换时落盘,从未切换过的谱发布后没有该字段,观看端各自回退本机偏好(默认数字)——作者电脑上是 ×、别人手机上就成了数字。现在编辑器载入无此字段的老谱时按当前生效偏好补上(作者看到什么就存什么),之后的保存/发布自然带走;观看模式不补(不能拿观看者的本机偏好当作者意图)。已发布的谱需在编辑器重新打开→保存→发布一次,观看端才会统一成作者的记谱风格。
② 「第一行 1 个小节、第二行 2 个,什么逻辑」:两种排法单看代价相近,DP 逐行取最便宜的就会随机交替,读起来忽松忽紧。现按行宽/行容比分四档(压缩/贴合/偏松/很松),相邻两行档位差 >1 记一笔惩罚(TeX fitness class / adj_demerits 同思路)——密度要变就渐变,同一段落自然收敛成统一的每行小节数。实测产品那份真实谱:手机端行密度跳变 19 次 → 6 次(剩下的都在主歌↔间奏切换处,该跳),每行小节由12122…交替变成2222→1111成段过渡;合成用例 1280px 跳变 15 → 3。
③ 「一整页只显示一行内容」:窄屏下一个系统(双吉他+简谱+歌词)高约 350px,固定 A4 页高 735px 常常只装得下一行——第二行差几十像素放不下就整页推下去,每页空白近半、24 页翻不完。观看等只读模式且窄屏(与 fit-to-width 同一断点 820px)改为不分页的连续长卷:一张长页、无页码,实测 24 页 → 1 卷;打印前自动切回分页渲染、打完还原(beforeprint/afterprint),长图导出本就要连续,编辑器分页照旧。
④ 谱架回到观看页头部(产品指示):v55.0 手机精简时撤下后只剩 ⚙ 设置里一处入口,太深——对谱练习是看谱页高频动作,现在头部图标一步直达(桌面/手机同一入口)。
测试:tv_layoutT10 改钉「行密度跳变 ≤8」(对改前文件当场红:跳变 15);tabNota 补写/观看不补/谱架接线 六项探针全绿。CORE 100 套件全绿。 - v60.79小程序分享直达 + 朋友圈分享(产品报告:分享曲谱链接给好友,点开不是谱的直达链接;曲谱无法分享到朋友圈)。
① 直达修正的根因:小程序的分享卡片路径依赖网页postMessage上报谱 ID,而网页端从没发过这条消息——用户从谱库(首页 web-view)点进某首谱再分享,onShareAppMessage拿不到 ID 就回落到谱库首页,好友点开自然不是那首谱。现在改成以微信在分享时给的webViewUrl(web-view 当前地址)为准解析谱 ID(观看页地址本来就带着?pub=ID,不需要网页配合),另用bindload逐次记下落地地址兜底;网页端wxShareCard在小程序环境下补发wx.miniProgram.postMessage({pubId,title}),只用来给卡片补歌名标题(该消息微信在分享/后退时才送达,ID 不靠它)。
② 朋友圈分享:首页与看谱页补上onShareTimeline并showShareMenu点亮入口(此前注释断言「web-view 页不支持朋友圈」——不准确,不支持的是朋友圈单页模式渲染 web-view,分享本身可用)。朋友圈卡片以「本页+query」重开:看谱页带id=直达,首页收到id=时转看谱页;单页模式(scene 1154)下渲染原生占位页(「点击上方『前往小程序』查看完整曲谱」),微信自带按钮会以完整模式重开、query 原样带回。
③ 网页端在小程序 web-view 里跳过 JS-SDK 签名(updateXxxShareData在该环境不生效,签名是白做的)。
注意:小程序侧改动需管理员重新上传并发布新版本后才生效。pubIdFrom8 组用例 node 单测全过(含 enter 换票链接的to=解包与非法字符拒收)。 - v60.78六线谱记号五项返修(产品截图逐条)。
① 双倚音压住前一列的品位数字:TAB 的前倚音画在主音左边(gx0 = nx − 13 − 组宽),可它的占位一直和后倚音一样加在列的右侧——方向反了,前一列压根不知道左边有一组小数字要落脚。现按渲染几何登记为左伸(13 + 组宽 + 最左那个 8 号小数字的半宽,双位数品位另算)。实测产品那份真实谱:834px 视口最小净距 −0.46(重叠)→ 2.78、1280px 1.91 → 3.12;技法字母离前一列 1.7~3.9 → 7.7~9.6。
② 双倚音的击弦/勾弦可以分别设置(产品指示「一体或者单独设置」):一组 n 个倚音恰好有 n 段过渡——前倚音 倚1→倚2→…→主音,后倚音 主音→倚1→…——新增逐段技巧tks。弹窗里先给一排「整组一致」的快捷键,再逐段各给一排(标出「倚1→倚2」「倚2→主音」这样的段名);谱面每段各画各的字母。旧数据只有组级tk,整组回退成同一个字母,观感与从前完全一致(字段只增不改,红线安全)。
③ 倚音滑音字母 sl 改 S(产品指示「和普通音符一致」):普通两音技法本来就有一张{sl:'S', h:'h', p:'p', tp:'T'}的显示表,而倚音是直接把数据值当字母画出来的,于是同一份谱里一处写 S、一处写 sl。现在两边共用同一张表TAB_TECH_SYM(数据仍存sl,只改显示)。
④ 扫弦小节最后一个音符压在反复记号上:反复结束记号的墨迹从bx−11.3(圆点左缘)就开始了,而普通小节线只有一条 1px 竖线——这段宽度过去完全没进排版,右内边距一视同仁,末列音符/扫弦箭头自然骑上去。现在把「记号型小节线」的墨迹宽度整段加进两侧边距(反复开始 12.3 / 反复结束 11.3 / 终止 5.5 / 段落双线 4.5),末列字形到记号左缘的净空恒等于末段刚杆,与列间口径一致。实测真实谱最小净距 0.36 → 4.32。
⑤ 段落房子记号与和弦图重叠:v56.4 本来就有「本行同时有和弦图与段落记号 → 图带加高 16px 把记号带让到图下方」的机制,可它的判定hasDiag只看六线谱首轨——而简谱声部的和弦(col.chord/ 拍位和弦col.chords)同样画进这条图带。产品这份谱的和弦正是记在简谱行的,于是整条让位机制根本没触发。实测:房子横线 12 处穿过图格、序号 4 处压在图格上 → 修后全 0。
测试:tv_layout新增 T12(前倚音 单/双/双位数 三档)、T13(反复/终止/段落记号 × 品位数字与扫弦箭头)、T14(房子记号让开和弦图,和弦记在六线谱或简谱行各跑一遍);tv_grace新增 T20(逐段技巧:整组一体 + 每段单独,谱面两段各画各的字母)、T21(滑音字母改 S)。对改前文件(v60.77)跑五条全红:T12 单倚音 24 处重叠、T13 记号被穿过、T14 简谱行和弦那一档 16 处相交、T20 逐段按钮不存在、T21 画的是 sl。CORE 100 套件全绿。 - v60.77× 记号与小节线重叠(产品截图:分解和弦最后一个 × 压在小节线上)。两个根因叠在一起:
① × 的字形比品位数字宽得多,可布局按品位数字记账。实测墨迹宽度:分解/闷音 × 是 15 号=9.0、打板 × 是 16 号=10.0,而品位数字只有 10.5 号=6.0;列刚杆过去一律按品位数字的半宽 3.35 给,× 的墨迹自然探出预留、压到小节线上,相邻的打板 × 之间也会重叠(合成用例实测 144 处负净距)。现在 × 列按自己的字形算宽(isXCol与渲染同源:n.x/ 拍弦列 / 教材式记谱下 ≤4 品的和弦内音;宁可当成 × 记宽,只会更宽不会更窄)。
② 右内边距被压到比音符自身的绘制偏移还小。音符字形画在「本列布局位置 +NOTE_OFF(10)」处,而列刚杆是按布局位置算的——这 10px 全部由**右**边距买单:末列到小节线的净空 = 右边距 + 末段刚杆 − 10。右边距压到 6 时净空只剩 3.3px,比 × 的墨迹半宽 4.5 还小。现在把右边距的地板钉在NOTE_OFF,末列净空恒等于末段刚杆,与列间口径一致(实测末列净空 3.3 → 13.2px)。
实测(产品那份真实谱,四档视口 × 两种记谱模式,统计「音符字形与小节线相交」的处数):数字模式 15/12/18/11 → 全 0,教材式 × 模式 23/23/33/11 → 全 0。代价如实记:× 真的比数字宽,所以 × 模式下小节变宽——行数 1440px 27→29、1280px 38→42、834px 28→31、430px 46→53(数字模式几乎不变:27→27、38→39、28→28、46→47)。旧版之所以「不变宽」,是因为它根本没把 × 算进宽度,代价就是那 23 处压线和相邻重叠。
测试:tv_layout新增 T11——12 小节 × 每小节 16 个十六分 × 的满构造,分别跑分解 ×(15 号) 与打板 ×(16 号),钉住「不与小节线相交、相邻不重叠」;对改前文件(v60.76)跑当场红:分解 × 9 处压线、打板 × 1 处压线 + 144 处相邻重叠。CORE 100 套件全绿。 - v60.76横向排版引擎重做:刚杆按行分别算 + 小节真正有弹簧(产品送来真实曲谱并指出:电脑端没歌词的地方留白很多、有歌词的音符反而拥挤;手机端音符和歌词横向重叠;每行小节数量分布不合理)。拿产品那份 56 小节的谱当尺子量,三条报告全部复现:桌面 1280px 172 处负净距(最深 −5.91)、平板 768px 126 处(最深 −9.0)、手机 430px 233 处、390px 264 处(最深 −7.34);每行小节数在 1/2/3/5 之间乱跳。
① 「有歌词的挤、没歌词的空」的根因:列间刚杆过去是跨声部合并成一根的——同一时刻上,歌词、简谱数字、两条六线谱的品位数字被max成同一个数。两头都错:一是歌词的「本字→下一字」间距常跨 2~4 个吉他十六分列,却被整根扣在头一小段上,带词小节凭空胖出约 15%(宽度花错了地方,于是别处只好挤);二是品位数字与中文歌词被当成会相撞的一对,可它们根本不在同一条基线上,永远不会相撞。现在改为按行(band)分别记账——每条 TAB 音轨、每个简谱声部的音符行、它的歌词行各算各的「上一列→本列」净距,跨几段就按时值份额摊到几段,跨拍界的一对也一并管住(旧口径下拍界两侧的两个中文音节只有 13px 中心距,16px 宽的字必然叠)。
② 「每行小节分布不合理」的根因:过去rigid(可压下限)和自然宽是同一个数,小节根本压不动——十六分分解小节自然宽 295px、刚杆也报 295px,两个明明排得下的小节被判定放不下,于是要么一行一个(拉伸到 1.5 倍),要么靠 pull 硬并、再被两端对齐压出重叠。现在分两档净距:舒适档决定自然宽(有地方时的观感),硬底档=字形不相撞的极限决定刚杆(六线谱纸色描边可以叠、字距收到刚好不碰)。同一个小节的刚杆由 295 降到 173,一行装两个成为可能。
③ 行内两端对齐改「按段吃弹簧」:此前是把整个小节等比缩放,于是最紧的那一段(比如两个相邻的中文音节)会跟着整体被压穿,哪怕同小节的吉他段还空着一大截。现在走三级台阶——段内超出舒适刚杆的余量 → 小节两侧留白与拍间隙让到地板 → 舒适刚杆压到硬底,到硬底为止;数学上每一段都不可能被压穿。
④ 断行 DP 的可行性判据由「自然宽 ≤ 行宽×1.06」改为「刚杆之和 ≤ 行宽」,代价改为按弹簧用量的三次方计(轻微形变几乎不计、接近极限陡增)。固定 6% 容限是拍脑袋的:既不敢让两个能压的小节同行,又拦不住真压不下的组合。
⑤ 行尾「+」(pull)由死命令改强偏好:产品那份谱里的 20 个 pull 是在更宽版面下点出来的,换到窄版宽后死守它们会逼出「一行 1 个、下一行 2 个」的锯齿(实测拉伸 σ 0.30、首行只放一个 302px 的小节)。现在能排下就照做(按钮手感不变,其自带的容量守卫仍在),明显更差时允许不照做,σ 降到 0.25;v52.0 的「pull 覆盖 brk」语义原样保留。
⑥ 宽度手柄wf缩窄止步于硬底:此前只缩坐标不动刚杆,wf=0.66的小节实测简谱净距 −0.32。
⑦ 歌词字宽口径 CJK 1.00em→1.06em:实测渲染出的墨迹宽度在 14~17.6 之间浮动(「我」「怀」「忍」的撇捺越出字身框),按 1.00em 记账这几个字会彼此贴上。
⑧ 实测结果(同一份真实谱):四档视口负净距全部归零(172/126/233/264 → 0/0/0/0);行数 768px 32→27、1280px 36→38、手机 36→46(手机行数变多是对的——旧版那 36 行是靠把字压重叠换来的);1280px 拉伸比标准差 0.382→0.25,每行小节数由121232121212…变为222212111121…。
⑨ 测试:tv_layout新增 T10——复刻真实弹唱谱的形制(56 小节、双吉他十六分、2 段歌词、pull/brk/wf 齐全)在桌面/平板/手机三档视口下钉住「三类文字零负净距 + 弹唱段每行 ≥1.6/1.6/1.3 小节」,只复刻形制、不把用户曲谱原文件放进仓库;tv_signtv_glyphsztv_gracetv_addstv_jpspace五个套件把「font-size=16 找简谱数字」这类字面量选择器随 v60.75 的字号更新(口径变更,不是行为回归);tv_meawT9/T10 由「钉死具体分行」改为相对断言——每行容量变大后,旧用例的绝对分法量的是容量而不是它要测的 brk 清理机制。CORE 100 套件全绿。 - v60.75中文歌词与简谱数字各放大 1 号,并根治两者的相互挤压与纵向重叠(产品指示)。① 字号:歌词 15→16、简谱数字 16→17;同族记号按 17/16 等比跟随——变化音 13.6→14.5、♭♭ 11.6→12.3(左移量 9.3→9.9 / 12.2→13)、和音 14.1→15、增时线 14.5→15.4、歌词标点 13→14。② 横向「相互挤压」的根因:两行共用同一套列位置,而列刚杆只按歌词算,简谱数字那一侧只吃一个常数
VOX_MIN;数字放大到 17(实测字宽 10.8)后常数就不够了。现在数字也按半宽入账,列刚杆取「歌词需要」与「数字需要」的大者——谁宽谁说了算。③ 纵向「手机端直接重叠」的根因:歌词基线一直写成常数 25 + 分档 botExtra,而那两档常数(16/10/4 与 5/2)是拍脑袋定的,与实际绘制坐标脱节——减时线画在voxY+3.4+u×3.2、低音点画在voxY+5.5+under×3.1+d×4.2,32 分(3 条减时线)+双低音点的真实墨迹深度是 20.5,而旧档只给 10,歌词顶已经压到距墨迹 0.5px,字号再 +1 就是负的。现改为按真实墨迹深度计算:歌词基线=简谱行墨迹底 + 净空 7 + 歌词上伸高。实测七种密度档纵向净空由 0.5–7px 参差变为稳定 6.0–6.6px。④ 压缩不再压穿刚杆:measureLayout的超宽压缩与行内两端对齐两处,此前余量扣尽后都会等比压穿(双字音节十六分实测歌词净距 −5px)。现在压到刚杆为止就停,小节/行宽按实际声明——谱线与内容始终等宽(v60.74 钉的不变量不破),只是这一行会略微借用页边距;连「行宽+页边距」都放不下才等比压最后一档,保证不画出纸面。⑤ 如实记一次走错的路:中途试过把rigid改从warps.M取(那才是真正约束排布的分段刚杆),结果更差——M 之和小于beatMinSum,rigid 低估 → slack 高估 → 压缩判定「弹簧够」却压穿了,密集档歌词净距由 +3.0 掉到 −1.3。本版先退回偏保守的口径,字距零头由LYR_GAP4→5 补;错的其实不是口径而是压缩方式(等比缩放不会优先吃余量),v60.76 把压缩改成按段吃弹簧之后,「分段刚杆之和」才成立并被正式采用。⑥ 新增tv_layoutT9 密度包络:单字音节撑到 24 字/小节、双字撑到 12 字/小节,歌词与简谱净距全为正(真实中文歌一小节至多 8–16 字,余量充足);越界时的兜底是压缩而非画出纸面。CORE 100 套件全绿。 - v60.74修 v60.73 引入的版面破相:内容伸出谱线(产品截图:小节跑到谱表外面、两条吉他谱右端不齐)。根因是我自己上一版留下的:v60.73 给行内压缩加了「绝不吃刚杆」的硬兜底,可当单个小节的刚杆本身就宽过整行时(密集十六分逐字词就会这样),压缩被兜底挡住压不动,而
sys.w仍被置成行宽——于是谱线只画到行宽、内容却伸出去 20px,正是截图里跑出谱表的那一截。现改为两段式:弹簧(各小节余量 w−rigid)够吸收就只压弹簧、刚杆不动;弹簧不够则退回整体等比压缩——宁可字距紧一点,也绝不让内容跑到谱线外面。新增tv_layoutT8 把这条钉成不变量:16 首预设 + 12 组合成密集谱(1–3 条 TAB 轨 × 1–2 条简谱轨 × 三种页宽,含 2/4 变拍号)逐行核对「小节宽之和=行宽声明值」「列不越出小节宽」——修前实测 36 处违规,修后 0。v60.73 的三项收益全部保留(歌词最小净距 4.38px、DP 断行、密集谱无负净距)。CORE 100 套件全绿。 - v60.73排版引擎三项返修:歌词刚杆按实测字宽、无词列不再白占歌词档、断行改全局最优(产品报告:「有歌词的音符靠得很近,没有歌词的音符又有多余的地方;手机端吉他谱数字、简谱和歌词都混成一团;每一行的小节分配不合理,有些太挤有些过宽」)。① 歌词刚杆由常数改为按该列歌词实测字宽。旧口径
LYR_MIN=18.5与音节字数无关,两头都错:多字音节(「阳光」实测 30px)也只给 18.5,实测相邻歌词净距只剩 0.31px=贴死;而没有歌词的简谱列在拍级同样吃这条 18.5,于是全休止小节反而比逐字词小节还宽(实测 4 列休止 269px vs 8 列带词 288px=每列 67px vs 36px)——这正是产品说的「有词的挤、没词的空」。现按字宽逐列算,字宽口径与渲染同源(CJK 15 / 拉丁 9,末尾标点旁挂不计入)。八分逐字词排满行实测:歌词最小净距 0.31 → 4.38px(14 倍)。② 刚杆改「本列半宽 + 下一列半宽 + 净距」——两列的字都是居中绘制,只按本列整宽算,在「窄音节接宽音节」(「啊」接「阳光」)时仍会重叠:这是本版自己的新测试 T7 抓出来的,改口径前实测 24 处负净距、最深 −3.5px。TAB 品位同理按数字半宽相加(双位数半宽 6.7、单位数 3.35,另加纸色描边 2.6),高把位连奏不再粘成一片。③ 断行由贪心改为全局最优 DP(Knuth-Plass 思路,代价=各行拉伸比偏离 1 的平方和)。贪心「每行尽量塞满」的毛病是遇到下一小节特别宽就塞不下,当前行留一大块空白,两端对齐再把这块摊给本行——同一份谱里有的行几乎不拉伸、有的拉伸五成以上。另加 6% 压缩容限:只超 3% 的一对不该被拆开,压缩 3% 肉眼几乎不可见,但拆开会让前一小节被拉伸到 2.4×。实测(真实预设曲谱):欢乐颂 4 行拉伸 1.41–1.47 → 3 行 0.95–0.97;指弹技法示例 1.41 → 0.98;小星星 8 行 → 7 行。④ 压缩绝不吃刚杆:新增每小节的rigid(各拍刚杆之和);DP 只在「区间刚杆总和塞得下整行」时才允许压缩式超宽,两端对齐的压缩按各小节余量分摊并以 rigid 兜底——否则压掉的正好是字与字之间那点净距。⑤ 新增tv_layout7+1 项,对 v60.72 旧文件跑 T1/T2/T4/T6 当场红=突变实证;T3/T5/T7 是护栏项(旧版在这些构造下本就不红),如实标注不冒充。CORE 99→100 套件全绿。 - v60.72刻版微调三项:歌词 15px、品位数字字重 500、简谱数字 16 且加粗(产品指定具体数值)。① 歌词 14→15:v60.71 定 14 是为了把字距拉开,现按产品指定回到 15。如实报代价——同一份密集谱实测,相邻歌词字净距由 最小 3.8 / 中位 4.8px 回落到 最小 2.8 / 中位 3.8px;相对最初出问题的 15.5 号(1.8 / 3.3px)仍净增 56% / 15%,谱宽照旧 695 未变。若仍觉得挤,最小代价的做法是把刚杆
LYR_MIN由 18.5 提到 19.5(字距回到约 3.8px,谱面加宽约 2%),一行改动,等指示。标点 12→13、宽度估算 7/14→7.5/15 同步。② 简谱数字 15→16 并加粗:加font-weight=500(此前无 weight=400)。同族记号按 16/16.5 从 v60.70 原值重算,维持与主音的固有比例:变化音 ♯/♭/× 14→13.6、♭♭ 12→11.6(左移量 9.6→9.3 / 12.6→12.2),和音 14.5→14.1,增时线 15→14.5。③ 品位数字字重 600→500(v60.71 已由 700 减到 600,本版再减一档)。④ 测试选择器换判据:16 号现在同时有三种元素——页头1=C(--font-num)、打板 ×(无 font-family)、简谱主音(--font-ui),只按字号选会串到页头调号。tv_jpspacetv_signtv_addstv_gracetv_staff的主音选择器一律改为「16 号 + --font-ui」双条件;tv_glyphsz的变化音尺寸与tv_signT14 的品位字重同步。tv_glyphsz第 44 行那个 15 号 × 是 TAB 分解×、不是简谱数字,特意没动。CORE 99 套件全绿。 - v60.71谱面刻版减重:歌词不再挤成一团,简谱数字与小节号缩号,六线谱线径/时值线/品位数字全面减重(产品指示:「文字有些重叠、简谱数字偏大可适当缩小、小节号字体变细稍微缩小靠近小节线、六线谱线径与时值线线径还有数字和 X 标记线径都缩小,整体更宽松更多留白」)。① 歌词重叠先实测再动手:四分音符档量不出问题,换成截图那样的八分/十六分密度就现形了——相邻歌词字的水平净距最小 1.8px、中位 3.3px(字号 15.5,等于贴在一起)。现字号 15.5→14,而列间刚杆
LYR_MIN维持 18.5 不动,省下的字宽全部转成字距:净距最小 3.8px(+111%)、中位 4.8px(+45%),谱宽一格未变(实测 695→695,不是靠拉宽谱面换来的)。② 简谱数字 16.5→15,同族记号等比跟随:变化音 ♯/♭/× 14→12.7、♭♭ 12→11(左移量同比 9.6→8.7 / 12.6→11.5,v60.53「贴近主音 ~1px」口径不变),和音数字 14.5→13.2,增时线 15→13.5——只缩主音不缩这些,♯ 相对主音反而变大,越改越挤。左侧leftW预留仍按旧值,净空只增不减。③ 小节号:字号 9/11→8/10、字重 600/700→500/600,并贴近小节线(x +2.5→+1.5、y +11→+9.5)。④ 线径全面减重:六线谱谱线 0.7→0.6;时值线家族——符干 1→0.85、符杠 2.2→1.9(主梁与 16/32/64 副梁、断梁四处一起改——初版只改了主梁,副梁反而比主梁粗,是tv_d64T3「四层符杠」当场抓出来的真缺陷)、符尾钩 1.6→1.4、长音的梁位短横 2.2→1.9;品位数字字重 700→600,分解 × 与打板 × 字重 700→500。⑤ 11 个套件改的是选择器口径、不是行为回归(tv_jpspacetv_signtv_addstv_glyphsztv_gracetv_stafftv_dottv_tabresttv_orntv_d64tv_detail1):它们靠「font-size=16.5 找简谱数字」「stroke-width=1 找符干」「font-weight=700 找品位数字」这类字面量当选择器,值一改就抓空。已用改前文件复跑实证——tv_signT14 在旧文件绿、在新文件红,改回选择器即绿,弧线几何前后逐点相同。顺带简化tv_tabrest.__stemXs:符干与小节线过去同为线径 1,得再按 y2 把小节线剔出去;现在 0.85 与 1 天然可分,那段启发式作废。另有两处小节号是不同元素——本版改的是六线谱下方那个,五线谱行首入左边距的(9.5 / anchor=end)未动。CORE 99 套件全绿。 - v60.70创作辅助栏重排;指板/键盘加「编辑 / 演奏」双模式;钢琴键盘贴合面板不再有滚动条(产品指示)。① 创作辅助栏样式修正:那一行原本是按两项设计的(和弦/标注各占一半),v60.62 把「指板/键盘」塞进去后每项只剩三分之一宽——图标 26px 加间隙之后文字无处可去,又没有截断规则,于是直接溢出卡片(产品截图所示)。现在改成两列网格:和弦/标注并排一行、指板/键盘独占整行;文字加省略号兜底,以后再加条目也撑不破。副标题按实测可用宽度重写(半宽项 60px、整宽项 130px),默认栏宽下一个字都不会被吃掉。② 编辑 / 演奏双模式:编辑模式点板落音写进谱面;演奏模式点板只出声试听、不改谱面,专心跟着播放弹——两种模式都跟随播放高亮,这本来就是这块板的本职。模式段用浅色描边、与「指板/键盘」的实心红区分开,一眼看得出是两个维度而不是四个并列选项。③ 钢琴键盘贴合面板宽、不再有滚动条:v60.62 为守住「屏幕像素也一比一」让面板横向滚动(88 键排开 1568px);现按产品口径改为只缩不放——钢琴等比缩到面板宽(1568→958px),指板原生 651px 放得下则保持一比一不被拉伸,两块板都不出滚动条。让出的只是绝对物理尺寸这一条:品距定律、白/黑键宽长比、黑键位置这些内部几何比例分毫未变(相关断言都在 SVG 坐标里,照旧成立)。
tv_boardT9 如实改钉新口径(旧口径实测scrollW 1588 > clientW 978=那条滚动条),并补 T11(演奏模式不改谱)/ T12(创作辅助行无溢出无截断)。CORE 99 套件全绿。 - v60.69简谱波音终于会响;波音两侧的间距修正;六线谱双倚音支持逐音击勾弦(产品报告四项)。① 简谱的波音/颤音/回音此前只画不响——这个字段在整个播放调度里一次都没出现过。现在:上波音 主→上邻→主、下波音 主→下邻→主、回音 上→主→下→主、颤音主音与上邻快速交替铺满时值。邻音取随调的自然音级而不是一律全音——C 调里
1的下邻是7(小二度)、3的上邻是4(小二度),写死半音数就唱错了。装饰音在拍头快速奏出、主音占满剩余时值并接回延音链,所以总时长与不加装饰音时完全一致,连音线与踏板逻辑照旧生效。② 波音离主音数字太近:实测字形底与数字顶只有 1px,几乎贴脸;现抬到 3.5px。③ 连音线离波音太远:v60.53 让位时按「波音字形高约 8px」估算抬了 10px,而实测字形只有 4.9px 高,多让了约 5px;现让位收到 7.5px,弧到字形顶的净距由 8.1px → 3.1px。④ 六线谱双倚音支持逐音击勾弦:此前不管几个倚音都只画一条「倚音组→主音」的弧、一个技巧字母——写5h7h9只出现一个 h,而且它落在弧中点、正压住第二个倚音数字(实测字母 x=106.8、数字 x=107)。现在每一段过渡各画一条弧、各标一个字母(吉他惯例:每次击勾弦都要标);带技巧时倚音步距由 7px 放到 13px,字母与数字最近距离由 0.2px 拉到 5.8px。占位同步:渲染步距与排版预留此前是两处各写的字面量,改抽成同一个函数——步距变宽时排版预留自动跟随,倚音不会溢出到相邻列。新增tv_orn套件 7+1 项,tv_jpspaceT9 改为两侧都钉(离数字 3–5px、连音线让过 2–5px)——对 v60.68 旧文件跑,这两个数正好是 1px 与 8.1px,突变实证。CORE 98→99 套件全绿。 - v60.68扫弦终于认连音线;每一击不再一模一样;上扫听得出是上扫(产品反馈四项)。① 连音线此前完全没被识别——六线谱的连音线是逐弦记在音符上的,而播放调度里有一句「没有技法就跳过」,把带连音线但没有其他技法的音整个丢掉了;于是谱面画着连音线、加线时提示还写着「N 根弦保持不重扫」,播放却照样一次次重扫。现在被连的音不再拨弦、时值并入前一个音(实测:三次拨弦变两次,首和弦时长 0.67→1.33 秒,和弦真正贯穿过去)。口径与推弦目标音一致。② 每一击都不一样了:真人不会两次扫弦速度完全相同,而此前六次扫弦只有两种展开(下扫全是 24.8ms、上扫全是 13.5ms),听感自然是机械复读。现在每一击的展开量按既有的确定性微扰动浮动约 ±18%,实测同一条 D-DU-UDU 的六击六个互不相同的展开;「复听一致」不受影响(同一份谱每次播放完全相同),精确档仍然零扰动。只改扫弦快慢、不动起拍点,光标对齐与任何时间轴都不受影响。③ 上扫收过头了,改回来:v60.66 把上扫收到 13.5ms —— 这低于人耳分辨弦先后的阈值,上扫糊成一记块状和弦、与下扫失去对比,就是「听起来所有都是向下扫」的由来。基准由 4.5ms/弦 放回 6.0ms/弦(四弦 18ms),仍比下扫快、仍只碰高音侧 ≤4 弦,下重上轻的手感保留。
tv_strum补 T9/T10/T11,对 v60.67 旧文件跑三项全红=突变实证(T9 尤其直白:旧版「带连音线」与「不带」的发声完全相同)。CORE 98 套件全绿。 - v60.67琶音展开定为 138ms;顺带修好「下琶音其实没有向下」(产品指定)。① 琶音总展开 138ms:与扫弦的「每弦基准 × 弦数」不同,琶音记号的语义是把这个和弦滚一遍——滚多久与音数多少无关,音多就滚得密一些、总时长不变。所以 3 音、5 音、6 音和弦的琶音一律 138ms(此前是 50ms/弦,5 音 200ms、6 音 250ms,音越多拖得越长)。短音符仍按时值上限收紧(不超过时值的 72%),不会溢出到下一个音。② 下琶音方向修正:左栏「下琶音」写的是由高音向低音顺拨、图标也画着向下的箭头,但播放里
arp与arpd被并成同一档之后弦序没有再按方向分岔——实测两者音序完全相同(都是 A1→E3 由低到高),下琶音等于没生效。现在下琶音整条和弦倒序滚,与谱面记号一致。tv_strum补 T8 逐音核对两个方向的音序与展开量,T4 改为钉住 138ms 定值口径;对 v60.66 旧文件跑 T4/T8 当场红=突变实证。CORE 98 套件全绿。 - v60.66吉他扫弦音色修正(产品反馈「扫弦音色很糟糕」)。把播放器实际排出的每一个发声事件抓下来量了一遍,问题不在音色采样,在扫弦的时间与力度塑形:① 下扫展开 63ms——♩=90 的八分音符只有 333ms,一次扫弦就占掉 19%,首个弦间隔 22ms 单独就能听成两个音,整体听感是竖琴式琶音而不是一把拨片刷过去。② 没有扫弦记号的和音列(本该几乎同时发声)按 12ms/弦 累加,五个音摊成 48ms 滚奏。③ 展开量写死,不随音符时值变化——快速十六分扫弦和慢速全音符扫弦用同一个 63ms。④ 闷弦的「嚓」声固定
0.3×音量,既不跟力度也不随和弦音数摊薄,比实音还突出。现在改成:总展开 = 每弦基准 × 弦数,再按音符时值收紧(扫弦不超过时值的 20%,琶音 72%),组内按 0.88 的比例加速(拨片越扫越快,与真人挥拍一致)。实测:下扫 63ms→31ms、上扫 24ms→13.5ms、和音列 48ms→6.4ms;♩=160 的十六分扫弦会自动收到 18.8ms,而全音符扫弦仍保持从容的 31ms。琶音不受影响——它本来就该展开,仍是 200ms。上扫依旧更快更轻、只碰高音侧 4 弦(真人够不到低音弦)。闷弦「嚓」改为跟本音同一增益口径的一半并设安全上限,不再盖过和弦。新增tv_strum套件 7+1 项(含谱面实证:一小节「下下上上下上」逐次核对展开量与弦序),对 v60.65 旧文件跑 7 项全红=突变实证。同时如实跟随tv_audioH 项:下扫展开断言由 40–90ms 收到 20–40ms,注释写明为何原值偏慢。CORE 97→98 套件全绿。 - v60.65套用节奏不再凭空冒出 × · 键盘输入延迟砍掉六成(用户报告两项)。① 套用节奏只给时值,不给音符:顶栏「节奏」组合此前会按当前和弦指法合成整列音符;这些音符的品位正好等于指法,在 ×记谱模式下会被逐个显示成 ×——于是「套个节奏」凭空多出一片 ×,改完音符还得再删一遍。现在与简谱分支同一口径:只换时值,把原有的音按顺序搬过来,不造新音。顺手修掉一处静默数据丢失:没有和弦时旧实现直接返回空列,用户已经写好的品位会被清空(实测 3 弦 11 品 套用「八分×2」后一个音都不剩)——现在原样保留。要按和弦生成伴奏音型请走节奏型库,那才是它的活。② 键盘数字输入不再卡顿:先量后修——50 小节双吉他谱下,
#score是单个 SVG,一次全量重建要写 1.76MB 标记 / 10673 个节点,光innerHTML赋值就 197ms;而敲一个数字会重建两次 DOM(落音渲一次「光标还在原位」,自动前进再渲一次,第一次当场作废),两位品位更是 4 次。新增holdRender把一次按键内的多次渲染合并成一次:单键 2→1 次、两位品位 4→2 次;同机前后实测 单键 551ms→211ms(−62%)、两位品位 1447ms→721ms(−50%)。合并后仍是同步的——按键处理返回时谱面已经更新,不是靠 rAF 拖到之后(专项断言钉住)。如实说明:剩下的约 200ms 仍是「整份谱全量重建」本身,超长谱(几十小节以上)还会有可感延迟;要根治得做按可视区域局部重绘,那是一次较大的渲染引擎改造,本版没做。新增tv_rhythm套件 7+1 项(含数据丢失回归与渲染次数断言),对 v60.64 旧文件跑 T1/T2/T3/T6 当场红=突变实证。CORE 96→97 套件全绿。 - v60.64六线谱恢复休止字形(产品指示)。v60.60 撤掉了六线谱的休止符字形、改由时值线表达时值;v60.63 又按「单独占一拍的休止不要时值线」收紧,结果是一个真休止和一个没填音的空槽在谱面上长得一模一样,附点休止连附点都看不到。现在把字形画回来:沿用 v45.6 的 SMuFL 出版字形(与五线谱同源,非 Unicode 文本字形——后者随字体渲染过小),落在 TAB 中部的等效谱表中线上,字号比五线谱略小以匹配六线谱密度,附点同步显示,时值重新可辨。与同期两条口径不冲突:① 与音符同处一拍的休止照旧连成一条符杠,字形就骑在杠上(Guitar Pro 同款);② 整小节全空的小节仍然一个字形都不画——那是 v60.60「新建项目和新增小节谱内不要标记也不要音符」的落点,未经指示不反转,新建项目的谱面还是干净的。扫弦列、打板列不会被误当成休止。测试如实跟随四处旧断言(
tv_tabrestT3/T8、tv_detail1T2/T14):前三处由「不画」改为「按休止列数各画一枚、附点休止带点」,T14 把字形计数按 x 收窄到空小节那一段——本项要钉的本就是「空小节里一枚都没有」,全谱计数会把有音符小节里的休止误算进来。CORE 96 套件全绿。 - v60.63四件事:记谱引导「会什么谱写什么谱」· 观看页逐轨变调夹 · 六线谱休止符时值线口径 · 空小节按拍号(产品指示)。① 新建时记谱引导——回应「擅长简谱但不懂吉他谱、只懂五线谱想做吉他谱或简谱」:向导新增「我写谱用」,把用哪种谱写和最终出什么谱拆开。选「简谱→生成六线谱」或「五线谱→生成六线谱」,建好后光标直接落在旋律轨并按你会的谱式显示;旋律写完点左栏
显示 · 六线谱,按低把位/中把位/跟随和弦图生成吉他轨(原旋律轨不动、一步可撤销)。独奏/指弹本来一条旋律轨都没有,引导模式会补一条。声乐谱同样可选五线谱录入——「只懂五线谱也能做简谱」的另一半。不新增数据字段,落到既有的voxNotations与光标位置;默认档走的还是老路径,一字不变。② 观看页变调夹补齐逐轨:编辑器 v60.61 已经是每轨一个夹位,观看页却仍是整谱一个数——双吉他谱在观看页调夹位时,有自己夹位的那条轨会被一起改掉(唱调锁定的「指法∓d」本只该作用在跟随轨上)。现在把vwTrans里「由夹位带来的那部分位移」单独记账,这些轨按纯音高位移另建一份;实测:夹 5→3 时两轨发声一个赫兹都没变,而唱调 +2 时两轨一起升 2 个半音(不是把它们焊死不动)。③ 六线谱休止符时值线改口径:单独占一拍的休止不画时值线,与音符同处一拍时照常连成一条杠。v60.60 是「休止一律画」,空小节于是排出一列光秃秃的符干;现在空小节谱面干净,而「八分音符+八分休止」仍旧连杠。实现上有个坑:判定不能拿符杠分组来做——分组只收八分及更短的列,四分/二分根本不进组,照组判会把普通四分音符的符干一并抹掉(本版实测混合小节符干 3→2,已被专项断言钉住)。④ 空小节按拍号:「跟拍号相等的休止音符」是两层——数量=分子、时值=分母。v60.60 只做了数量、时值一律写死四分,于是 6/8 拍的空小节是 6 个四分=12 拍,整整多出一倍;现在 6/8→6 个八分、3/4→3 个四分,各自正好填满。新增tv_guide套件 6+1 项(含闭环实证:简谱写 1 2 3 4 → 生成的吉他轨逐音发声完全一致,比音高不看截图),tv_tabrest补 T7/T8、tv_trkcapo补 T8/T9(观看页两项都用playInst记录器抓真实频率)。旧断言如实跟随(产品有意改口径、非缺陷):tv_tabrestT2、tv_detail1T2/T14、tv_dotT11 四处改按新口径,注释写明来龙去脉。CORE 95→96 套件全绿。 - v60.62音符输入新增「吉他指板 + 钢琴全键盘」,一比一几何,播放时跟着亮(产品指示)。过去落音只有两条路:吉他谱敲弦号+品位数字,简谱敲唱名数字——对会弹但不熟记谱的人来说,脑子里明明是「按这儿」,手上却要先翻译成数字。现在直接在板上点。① 指板是一比一的:品位按十二平均律的物理位置
d(n) = L·(1 − 2^(−n/12))画,所以越往高把位品格越窄、12 品正落在有效弦长的一半——和真琴一个样,不是「均分 22 格」那种示意图;弦径由 1 弦到 6 弦递增,标记点 3·5·7·9·15·17·19·21 单点、12·24 双点,按本轨的定弦与变调夹算音高。② 钢琴是全键盘:88 键 A0–C8,白键宽 23.5mm、黑键宽 13.7mm、白键长 145mm、黑键长 95mm(国际通用琴键尺寸)等比缩放;黑键横向位置走真实约束——同一组里各白键「露头」等宽,于是 C♯ 偏左、G♯ 居中、A♯ 偏右,而不是把黑键简单地骑在白键交界上(那是大多数网页键盘的错法,弹惯琴的人一眼能看出别扭)。③ 点板即落音:指板点某弦某品就写进当前列;键盘在旋律轨落唱名,在吉他轨自动挑能弹到该音高且品位最低的弦位。④ 播放动态跟随:板上高亮跟着播放逐列走,而且跟的是你正在看的这条轨(不是光标那条参考轨)——双吉他谱里看主音轨,指板亮的就是主音轨的把位;停播回落到光标所在列,不留最后一个和弦干亮着。不播放时高亮=光标所在列,边挪光标边看「这个音在哪儿」。⑤ 入口三处:创作辅助栏(产品指定的归属)一个全局入口;吉他轨「当前音轨」行、旋律轨「显示」行各一个——每条轨都能调出自己对应的板,切轨自动换板(吉他轨→指板、旋律轨→键盘),也可手动切。面板浮在播放坞上方,横向可滚(88 键必然超屏)。新增tv_board套件 8+1 项(几何断言:逐品对物理公式求偏差 ≤0.05px、白/黑键宽比 13.7:23.5、黑键三处偏移方向;播放实证:时间线取板所在轨的列数而非参考轨),对 v60.61 旧文件跑当场红=突变实证。CORE 94→95 套件全绿。 - v60.61变调夹改成「每轨一个」:伴奏吉他夹、主音吉他不夹,同一份谱里终于能表达(产品提问 → 拍板)。此前变调夹是整谱一个数,所有吉他轨共用,「伴奏夹 5 品、主音不夹」根本写不出来——设 5 品则主音整轨高 5 个半音(要听对就得把品位全往下写 5 品,2 品变成 −3 品,物理上不存在);设 0 品则伴奏写的 C/Am/F/G 把位会照着 C 调响,实际该响的 F/Dm/B♭/C 全错。现在每条吉他轨可以有各自的变调夹:发声 = 定弦 + 品位 + 本轨夹位。① 入口:左栏「当前音轨」新增变调夹按钮,0–12 品速选,非参考轨还可选「跟随参考轨」。② 参考轨=第一条吉他轨(通常就是伴奏):页头的
1=X · 变调夹 N 品与简谱/歌词行的调仍按它算,弹唱谱的老习惯一点没变。③ 谱面标注:只有各轨夹位不一致时才在行首逐轨标「夹5品/不夹」(Guitar Pro 惯例位置,就在竖排轨名旁);全谱一致时一个都不标,老谱观感分毫不变。④ 唱调锁定不再误伤:在页头变调弹窗改参考轨夹位时,会做「夹±d ↔ 指法∓d」的整体重排——有自己夹位的轨品位一个都不动(它的夹位没变,动品位就是改它的发声)。⑤ 顺手修掉一个正在丢数据的 bug:GP 文件本来就是每轨一个夹位,解析器也早就读到了,但导入时只取第一条轨的夹位往下传——一份「伴奏夹 5、主音不夹」的 GP 导进来,主音会被按夹 5 播放、整轨高 5 个半音且毫无提示。现在逐轨落值。⑥ 播放/输入回响/MIDI 导出/MusicXML 全链路跟着走本轨夹位(<capo>本就是谱表级,逐 part 各写各的)。数据只增不改:新增song.tabCapos稀疏数组,老谱没有这个键、所有轨回落原来的song.capo,行为零变化。新增tv_trkcapo套件 7+1 项(含播放实证:同一个「3 弦 0 品」在夹 5 轨与不夹轨上实测相差正好 5 个半音),对 v60.60 旧文件跑当场红=突变实证。CORE 93→94 套件全绿。 - v60.60六线谱时值线三项:休止也有时值线、空小节=一拍一条四分骨架、倚音技巧符号放大对齐(产品指示)。① 休止符也要时值线:此前六线谱的符干/符杠只画给「有音的列」,所以一拍里「八分音符+八分休止」会变成孤零零一个带钩的音符加一个光秃秃的休止符——看不出这两个是同一拍。现在休止列同样画符干、并与同拍的实音并进同一条符杠。② 空小节改成时值骨架:新建项目、新增小节、新加音轨的吉他谱,此前是每拍两个八分(4/4 共 8 列)、谱面上却只画一枚居中的全休止——既看不出拍位,也没有时值线可点。现在改为一拍一个四分音符(3/4 就是 3 条,变拍小节按本小节拍号),谱面上一拍一条时值线,点哪一拍一目了然。③ 六线谱不再画休止字形:按「点击节奏时只出现时值线,谱内不要标记也不要音符」——谱表内保持干净,时值信息一点不丢(符干/符杠照画,附点照样点在时值线上)。简谱/五线谱声部的休止照旧不变。④ 倚音技巧符号放大对齐:v60.58 加的 h/p/sl 是 8px,比普通音符的技法字母小一圈;现在与普通两音技法完全同款(11px / 600 / 同款纸底描边),点击热区同步上扩,加了字母照样点得中。⑤ 双倚音输入修好了:此前只认空格分隔——输入「57」想要两个倚音,会被读成一个 57 品、越界后静默删掉整个倚音,看起来就像不支持双倚音。现在连写也按逐位识别(
57=5 和 7),读不出品位时明确报错并保留原倚音,绝不静默删除。新增tv_tabrest套件 6+1 项,对 v60.59 旧文件跑 T1–T5 当场红=突变实证。旧断言跟随(产品有意演进):tv_detail1T2/T14 由「TAB 画 SMuFL 休止/居中全休止」改断言「不画字形、改画时值线」;tv_dotT11 符干数 4→5(多出的正是休止列);tv_signT15 不再按固定 8 列下标写测试数据;tv_graceT5/T18 跟随tk字段与新字号。CORE 92→93 套件全绿。 - v60.59符杠按拍并组:同一拍内的带杠音符一律连成一条主梁(产品拍板,截图二红圈处)。此前连音组是「每 N 个一块」独立成杠,所以一拍里两组三连音(6 个十六分)会画成两截杠——看上去像两拍。现在改为整拍内一律并成一条主梁:连音块与同一拍里的其他带杠音符连在一起,连音括线仍按 N 分块(该标几连音还标几连音,不受影响)。六线谱符杠、五线谱符杠、简谱减时线三处共用同一套分组,一并生效。没有推翻 v51.6:
8:7/4:3/7:6这类跨拍的非整拍连音,整块仍然独立成杠、不被拍界拦腰截断(v51.6 修的就是这个)——判据从「是不是连音」换成了「这一块是否整体落在同一拍内」。零副作用实证:整拍三连音、普通十六分、休止打断、6/8 大拍四种场景的分组一字未变(新旧两版跑同一组断言均绿)。踩到一个坑:分拍函数自带+1e-4容差,判「块末是否还在本拍内」时回退量若小于它,正好落在拍尾的块会被误判成跨拍——两组三连音因此没并上,回退量调到1e-3才对。tv_tuplet18→21 项,对 v60.58 旧文件跑 T11/T19 当场红、T20/T21 两版同绿。CORE 92 套件全绿。 - v60.58倚音支持时值与技巧设置(产品指示)。① 技巧(新增):吉他谱的倚音现在可以设 击弦 h / 勾弦 p / 滑音 sl(或「无」)——字母按吉他惯例标在倚音↔主音那条小连音弧的弧顶(Guitar Pro 同款位置),纸底描边不压弦线;点击谱面上的倚音即可设置,热区随字母自动上扩,加了字母也照样点得中。② 时值补齐:吉他谱倚音的时值档此前只有 8/16/32 分,现补上 4 分,与简谱侧的档位一致。换时值不会把已设的技巧弄丢。③ 老谱完全兼容:此前存的倚音没有技巧字段,读进来一律归为「无」、谱面一个字母都不多画,既有的倚音弧线分毫不变。如实记录一处边界:倚音技巧目前不进 MusicXML 导出/导入(弦位、品位、时值照常往返),需要跨软件传递技巧的话待后续补。
tv_grace16→19 项(弹窗档位/技巧写入数据并画在弧顶且换时值不丢/旧数据兼容护栏),对 v60.57 旧文件跑 T17 当场红、T18 直接崩=突变实证。CORE 92 套件全绿。 - v60.57节奏型库支持连音线(产品指示)。节奏型此前只是一串「时值+弹哪根弦」,连音线一律丢失——切分、跨拍延音这类最常用的节奏写法在库里根本存不下来。现在整条链路都认连音线:① 库里画得出来:节奏型卡的预览图直接画出连音弧(六线谱在上方、简谱在符头上方),选之前就看得见;② 套用落得下去:吉他谱的连音线是「按音符」的指针,而节奏型是「按列」的时值骨架——套用时才知道落在哪个小节的哪一列,故按同一根弦把本列的音接到下一列的音上;下一列那根弦上没有音就不画(不会留下指向空处的野指针)。半小节/一拍节奏型套用时列号带偏移,接线同样准。简谱侧节奏型自带的连音线生效,且不会抹掉旋律本来就有的连音线;③ 自己做的也存得住:在草稿小节里画的连音线,「保存到库」时一并入库,下次点「改」铺回草稿仍带着线。④ 两个库各新增一条示例:吉他「5323 切分延音(跨拍连音线)」、简谱「切分延音 ♪♪⌒♩ ♩」。数据格式只在末位增加一位标记(吉他 ev 第 4 位、简谱 durs 第 3 位),老节奏型与已存的自定义节奏型原样可用。
tv_custompat8→11+1 项(库示例与预览弧线/套用接同弦指针且无野指针/简谱不抹旧连音线/自定义往返),对 v60.56 旧文件跑当场红=突变实证。CORE 92 套件全绿。 - v60.56双吉他谱面修正:吉他1 的时值线点得中了、吉他2 的连音线与连音数字不再压别人(用户截图报告三项,全部用命中测试与几何断言实测定位)。① 双吉他时点不中吉他1 的时值线:根因不是时值线本身——每个 TAB 列在谱表上方还挂着一条 18px 的「选中本列」兜底热区,第二条吉他的这条带子整条落在第一条吉他的符杠区里(实测吉他1 的 229–251 被吉他2 的 231–249 全吃掉),而它后画、命中测试就归它。现在第二条起的这条带子钳到上一条的时值线区之下,不足 4px 就整条不画(本列仍可点弦格选中)。修后吉他1 四拍时值线全部命中自己。② 吉他2 的连音线压到吉他1:连音线弧顶落在
音符上方 9.5px 再减弧高,1 弦上最坏到TAB顶线−24.5,而两条吉他之间此前只有 6px 空隙(行间预留只认「第二条有没有和弦名」,连音线/技法/指法一概没算)。现在按第二条声部谱表上方实际挂了什么预留:和弦名 22 / 连音线 26 / 技法·左手指法·摇把 19。实测净距 −18px → +18px。③ 吉他2 的 6 连音数字与简谱 6 连音数字重叠:TAB 连音括线的斜体数字挂在符干基线+9.5,而每条 TAB 声部的行进量只留到+6,溢出 3.5px 顶进下一行。注意这里不能靠加大符干区解决——那样数字跟着一起下移、净差分毫不变;本版单加一项只增行进量、不动符干基线的预留。实测净距 −0.8px → +9.2px。行距按需增:单吉他谱、以及第二条吉他没有上方元素时,行高一分不变(护栏断言实测 0px)。新增tv_tab2套件 5+1 项,对 v60.55 旧文件跑 T1/T2/T3/T5 当场红=突变实证。CORE 91→92 套件全绿。 - v60.55变调入口收敛到谱面:点谱上的 1=X 就地开变调弹窗,右上角变调组撤下,弹窗改浅色(产品指示)。① 右上角变调组撤下:顶栏那组
♭ 1=C ♯不再出现在界面上(DOM 保留供「更多功能」抽屉的快速换调与回归套件程序化调用,同 v55.2 经典版入口口径)。② 谱面调号点击=变调弹窗:此前点谱面上的 1=X 弹的是一张平铺 12 个调名的小菜单——只能换调名,夹位、恢复原调、选指法都够不着;现在改为就地弹出与顶栏同一个变调弹窗:打开时原调 + 一键恢复原调 / 唱调♭♯(指法随动重排、夹不动)/ 变调夹−+(唱调锁定换算)/ 等式行 / 夹位速选 0–7 品(标派生指法调、CAGED 开放把位高亮=「选指法」)。弹窗左对齐锚在调号正下方(不压左栏),下方放不下自动翻到上方;再点一次收起。③ 弹窗改浅色:它现在是从浅色谱纸上弹出来的,原来的深绿浮层压在谱面上像块补丁——底色/描边/文字/chip 全部改走主题变量(--panel/--border/--text),夜间主题自动跟随;CAGED 高亮由金色改琥珀(浅底上金色不可读)。观看页的变调弹窗维持 v55.6 深色不动(那是深色播放坞一族)。踩到的坑:谱面热区是pointerdown开的弹窗,紧随其后的click冒泡到 document 会被两处「点外收起」当场关掉——加popKeepOpen断言放行该热区,开合交给弹窗自己 toggle。tv_edkey7→9 项(新增:谱面真实点击开合+顶栏组撤下+无调名菜单+就地锚定;弹窗底色=--panel且观看页仍深色作对照护栏),对 v60.54 旧文件跑两项当场红=突变实证;tv_capoT3 换调路径跟随改走弹窗、T1 改扫可见文本(提示语里出现「变调夹」不该算进谱面标注)。CORE 91 套件全绿。 - v60.54智能填词支持选声部/加声部 + 左栏「歌词」入口恢复(排在「小节」上方)(产品指示两项)。① 智能填词加声部:此前工具只认「当前选中的那条旋律轨」,合唱谱要给第二声部填词,得先退出弹窗、去左栏点那条轨、再重新打开。现弹窗顶部新增声部行:列出全部旋律声部,每个名字后面直接标该声部的可填音位数(一眼看出哪条有音符、哪条还是空的),点一下即切换填词对象——标题、已填词回填、对齐预览、谱面光标全部跟着走,原声部一个字不动。② 就地「+声部」:弹窗内可直接新增一条旋律声部。要点是新声部会复制来源声部的音符骨架(音高/时值/附点/连音线/连音符,不带歌词)——合唱惯例本就是各声部同节奏、各自一套词;而普通加轨产出的是全休止空轨,填词工具只认实音符,空轨的可填音位=0、工具当场失效。复制后建好即可填词,音高随后照常改;整件事在一次操作内完成,Ctrl+Z 一步撤销。声部满 5 条时「+声部」自动隐藏。③ 左栏歌词入口恢复:歌词页自 v60.43 起在新版外壳被隐藏,现按指示恢复,并排在「小节」正上方(段落切换/逐字填词/智能填词/清空本段都在这一页)。显隐口径同时放宽:此前是「有歌词行才出现」——一段词都还没有时入口自己消失,恰恰是最需要它的时候;现跟随本项目既有的「本谱能不能加歌词行」政策(纯和弦格除外),零段时面板里直接给「+ 添加歌词行」,入口不再是死路。新增
tv_lyrvox套件 7+1 项(左轨顺序/零段空态/声部行与可填音位数/切声部填词互不串/+声部复制骨架不带词且一步撤销/声部上限/空来源按各小节实际拍号铺列不错位),对 v60.53 旧文件跑 T1–T3 当场红、T4 起直接崩=突变实证。CORE 90→91 套件全绿。 - v60.53简谱刻版五项修正:变拍号分数式、波音改出版字形、波音让连音线、升降号贴主音、跨行连音线接成整弧(用户报告截图逐项)。① 变拍号分数式:临时变拍号此前写作斜杠式「2/4」,现改上分子·横线·下分母的出版惯例竖排形态,居中对齐,横线宽 12px。② 波音/颤音/回音改 SMuFL 字形:简谱侧此前是手绘锯齿折线加「tr」「∽」文本——不是出版级符号;现与五线谱共用同一套 SMuFL 字形(上波音
ornamentShortTrill、下波音ornamentMordent、颤音ornamentTrill、回音ornamentTurn),按简谱字号缩放 0.66/颤音 0.78。③ 波音与连音线不再重叠:波音字形画在数字上方 15px 一带,而连音线基线在 16px——两者几乎同高必压;现连音线段内若含波音/颤音,弧基线再让高 10px(字形高约 8+2px 净距),无波音时基线一分不动。④ 升降号贴近主音:♯/♭ 与数字的净距由 1.9px 收到 1.0px,双升降号同步,符合歌本「变化音紧贴主音」的口径。⑤ 跨行连音线接成一条整弧:换行处此前是两个各自端点同高的独立小弧;现行末只画上升段(终点停在弧顶高度不回落)、次行行首画下降段(起点即在弧顶高度),上下两半合起来正是一条完整弧线。另修 32 分密集小节的整行压缩:行宽压缩此前等比压所有间距,把保护净空的「刚杆」一起压扁,导致满小节 32 分时升降号仍重叠 −3.6px;现改为只吃弹簧不吃刚杆(弹簧不够才退回等比),同场景净空 −3.6→+3.8px。tv_jpspace扩到 10+1 项全几何断言,对 v60.52 旧文件跑 T1/T2/T3/T8/T9/T10 当场红=突变实证;CORE 90 套件全绿。 - v60.52简谱横向避让修正:变拍号不再压小节线、音符自动让开升降号与倚音(用户报告截图:简谱临时变拍号样式与小节线重叠;编辑时音符不会避开升降号和双倚音导致重叠)。① 变拍号压线:简谱行的「2/4」小字此前居中画在小节线右 7px 处——字宽 21px 的左半直接压过小节线、糊在上一小节末尾;现改为左对齐贴线右侧,并按谱面实际字宽预留位置:此前只有五线谱/六线谱谱类预留 17px(还短于简谱字宽),纯简谱谱更是零预留,现变拍处按简谱 26px 取足。② 音符避让左伸记号:谱面的升降号(画在数字左 10.5–13.5px)与前倚音组(含共用减时线,左伸约 20px、三倚音更宽)都长在音符左侧,而排版引擎的「刚杆」只保护音符右侧——升降号完全没进排版、前倚音还被记在了右侧,密集时值下必然压住前一个音符(实测双倚音重叠 2.9px、减时线 3.8px)。现按几何实测量出各记号的左伸宽度,记到前一段间距上;跨拍与跨小节两种边界情形同样补足(此前小节首列的双倚音距小节线仅剩 1px)。修后同场景净空:升降号 5.9→10.6px、双倚音 −2.9→13.4px、首列 1→15px;无升降号/倚音的普通谱面排版一字不变。新增
tv_jpspace套件 7+1 项全几何断言(数值坐标,不看截图),对 v60.51 旧文件跑 T1–T4 当场红=突变实证。CORE 89→90 套件全绿。 - v60.51节奏型库筛选展示 + 53231323(2/4)归类调整(产品指示:2 拍的十六分分解移到 2/4 拍分类和半小节分类;库改成筛选展示,不用全部展示方便查找)。① 筛选条:库顶部两组 chips——类型(全部 / 分解 / 扫弦)+拍号(全部 / 2/4 / 3/4 / 4/4 / 6/8 / 散拍);打开即按当前谱拍号收敛:4/4 谱只见 4/4 组、3/4 谱只见 3/4 组,不再全库铺开;「散拍」=不限拍号的半小节/一拍填充组;半小节组内逐款标注分解/扫弦参与类型筛选;自定义组恒显不参与筛选;简谱库同款拍号筛选。② 归类调整:「53231323 十六分(2/4)」自 4/4 组移入新设「分解 · 2/4」组(顺手补 5323 八分与低音+柱式两款 2/4 基本款),并新增「53231323 十六分(半小节)」散拍版——2 拍填充可拼两段不同和弦。新增
tv_patfilter套件。CORE 88→89 套件全绿。 - v60.50编辑器变调弹窗对齐观看页:选指法 / 恢复原调 / 变调夹一站式(产品指示:吉他曲谱编辑时点击调号弹窗的功能应该和曲谱浏览时一样)。① 点顶栏调号 1=X 打开变调弹窗——与观看页同款纵排卡:原调行(打开时的调与夹位,一键恢复原调——快照整体回填,试了几档不满意随时回起点)/ 唱调行 ♭ ♯(指法随动重排、变调夹不动)/ 变调夹行(唱调锁定:夹 +2 品指法自动降 2 半音换算——变调夹的本义)/ 等式行「指法+夹=唱调」/ 夹位速选 0–7 品(每档标出派生指法调,CAGED 开放把位金色推荐——这就是「选指法」)。非吉他谱类自动只留唱调行。与观看页的区别一句话讲清:观看页变调只影响你看,编辑器变调直接改谱——全程单步 mutate,Ctrl+Z 一键撤销。② 编辑器换调引擎升级到 v60.39 重排(此前编辑器还是旧「逐品平移+越界折八度」——和弦图与谱面演奏错位的根源在编辑器侧至此一并根治):顶栏 ♭/♯、快捷换调、曲谱信息换调三处入口统一——伴奏列随新和弦图取形、旋律列束搜索重排把位、和弦名/拍位和弦/转调标记同步平移,折八度/放不下如实播报。旧 transposeEditor 平移实现删除。新增
tv_edkey套件。CORE 87→88 套件全绿。 - v60.49自定义节奏型改在曲谱编辑器里写(产品更正:新建节奏型直接根据谱类调到曲谱编辑器,只需设定拍号,编辑完有保存到库的按钮)。「+新建 / 改」不再打开独立编辑器:① 只问一个拍号(默认随本谱)→ 直接进入曲谱编辑器写一小节草稿——品位录入 / 扫弦琶音 / 时值连音 / 播放试听,所有编辑工具全部可用;吉他节奏型按谱类给六线谱(尤克里里谱四线),以 C 和弦为示例取品,保存时只记弦序与奏法、套用时按目标和弦自动换指法;简谱节奏型取时值骨架。② 顶部常驻浮条「保存到库」:起名即入库并回到原曲谱;「取消」原样返回。③ 原曲谱全程无恙:进入时快照工作区并落崩溃备份——中途刷新/断电重开自动恢复到编辑前状态,未入库的编辑也不丢;草稿期间「新建 / 打开」被拦截防误切换。「改」同一流程:旧节奏型铺回小节接着改。
tv_custompat套件按新流程重写。87 套件全绿。 - v60.48自定义节奏型:库内新建 / 编辑 / 删除,吉他谱与简谱两谱类全支持(产品指示:节奏型库增加自定义节奏型编辑功能,设计节奏型编辑界面,支持不同谱类)。节奏型库顶部新增「自定义 · 我的节奏型」组:① 「+新建节奏型」打开编辑器——选时值(2/4/8/16 分+附点)、点「加一步」托盘逐步搭建:根音低/交替低/1–6 弦(尤克里里谱自动只出 4 根弦)/柱式/下扫/上扫/切音扫/琶音/切音×/休止——与内置节奏型同一套记谱语言;步序随点随删(每步 × / 退一步 / 清空),教材式六线图实时预览+拍数即时统计(与本谱拍号对照,不符会提示由节拍检查标出)。② 简谱侧同款编辑器:点时值即追加(附点先点亮),定义时值骨架,套用时保留小节已有音符。③ 保存即入库:自定义卡与内置卡同样一键套用(有和弦时按指法自动生成音符),卡上「改 / 删」随时维护;持久保存(新键
musetab-custompat,数据红线安全),换谱重开都在。套用/图示/拍数全部复用既有管线,不写第二份实现;钢琴伴奏织体走「伴奏织体」引擎,暂不在自定义范围(如实边界)。新增tv_custompat套件 7+1 项(两库自定义组/编辑器结构与 uku 弦数口径/构建保存/C 和弦套用逐列实证/编辑删除/简谱附点骨架/重载持久化)。CORE 86→87 套件全绿。 - v60.47新建向导二级选项下拉化 + 53231323 十六分分解两款(产品指示:二级选项用下拉选择、图标加文字样式、不占太多位;节奏型库补 53231323 的 16 分 4/4 与 2/4 拍分解)。① 二级全部改下拉:声乐「形式」、器乐「乐器/形态/谱号」、功能「谱式」统一为 图标+文字 的下拉菜单——乐器菜单保留 弹拨/键盘/西洋管弦/民乐 组标题,21 种乐器一个下拉装下,原三行图标网格的占位收敛为一行;选中项在菜单内高亮,选择即收起。② 节奏型库新增两款分解:「53231323 十六分(4/4)」(一小节两遍、后半保持根音——与既有「流水分解」交替低音版并存)与「53231323 十六分(2/4)」(一小节一遍),扫弦/分解图示与套用逻辑走既有管线。
tv_newwiz断言跟随下拉结构。86 套件全绿。 - v60.46乐器体系扩编:器乐谱编入 21 种乐器(图标+名称,产品截图对照整理)。① 乐器网格按族分组——弹拨(吉他 / 尤克里里 / 贝斯)、键盘(钢琴 / 电钢琴 / 电子琴 / 手风琴)、西洋管弦 · 五线谱(小提琴 / 长笛 / 萨克斯 / 小号 / 圆号 / 长号)、民乐 · 简谱(二胡 / 笛子 / 葫芦丝 / 唢呐 / 古筝 / 琵琶 / 扬琴 / 口琴)+「其他器乐」兜底,共 16 枚新细线图标入库,组内自动铺开、滚动容器保持弹窗一屏。② 每件乐器落到对应谱式:键盘族=大谱表(独奏 / 弹唱织体两形态);管弦族=单谱表五线谱、谱号按乐器预置(长号/贝斯自动低音谱号,不再要用户懂谱号);民乐族=简谱独奏(民乐惯例,记谱法随时切五线谱显示);吉他/尤克里里六线谱形态不变。③ 乐器身份随谱保存(新增
instKey字段,数据红线口径只增不动):最左栏音轨钮与「当前音轨」行显示所选乐器本尊图标——二胡谱就是二胡,电钢琴就是电钢琴。④ 混音台默认音色随乐器预置:长笛/笛子→长笛音色,二胡/小提琴→弦乐,古筝/琵琶→尼龙弦,钢琴/电钢琴→对应键盘音色——顺手修正此前新建钢琴/器乐谱声部默认落「人声啊」音色的旧疏漏;暂无专属采样的乐器先落最近似档,音色扩充在路线图。爵士鼓/架子鼓需鼓谱引擎(路线图后段),本轮不编入。tv_newwiz断言跟随(分组结构 / 新乐器组合等价矩阵 / 音色预置)。86 套件全绿。 - v60.45新建界面 Apple 风格重做 + 乐器图标体系 + 导入区样式修复(产品指示:整体苹果风格简约美观;一级三大图标以图标为主字体为辅;二级也带图标;乐器选择换可扩展形式;左栏图标对应;暂下哼唱成谱;修导入样式问题)。① 一级三大卡:声乐谱 / 器乐谱 / 功能谱——32px 细线大图标为主、名称与副字为辅,悬停轻浮起、选中朱砂细框浅底(Apple 形制、产品配色)。② 二级选项全部带图标:独唱(麦克风)/ 合唱(双人)/ 伴奏弹唱(节奏)/ 电吉他 Solo(拨片)/ 指弹(弦上拨弧)/ 级数谱 / 和弦格——新增四枚细线图标入库。③ 乐器选择改为图标网格:吉他 / 尤克里里 / 钢琴 / 其他器乐 每格图标在上名称在下,数据驱动、自动铺开——后期上新乐器只加一行数据,版式零改动。④ 乐器图标三处统一:新建网格、最左栏音轨钮、「当前音轨」行同一套映射——新建时选的什么乐器,左栏就是什么图标(人声旋律轨统一为麦克风)。⑤ 导入区重做:旧虚线提权框内文字溢出截断(产品指出的样式问题)——改为「已有曲子?直接导入」两张干净卡片(MusicXML / Guitar Pro),图标+标题+单行省略说明,任何宽度不再溢出。⑥ 哼唱成谱全站暂下(产品指示):新建向导与创作辅助入口全部撤下;识别引擎与录音流程完整保留(程序化可达),恢复入口只需一行。
tv_newwiz断言跟随(乐器网格/二级图标/导入两卡)、tv_safety/tv_frame/tv_humming口径更新。86 套件全绿。 - v60.44旋律轨一键生成吉他把位轨(音轨化改版 P3 收官)——手稿最后一层「任意轨可用六线谱显示,自动映射时给出把位选择推荐」落地。旋律轨显示灯行新增「六」:点击弹出把位选择——① 低把位(开放弦优先,无和弦标注时默认推荐);② 中把位(4 品起、不用空弦——虚拟变调夹技巧复用同一指派器,零新算法);③ 跟随和弦图(谱面有和弦标注时出现并默认推荐:逐音先在生效和弦指法上找同音直取——弹唱伴奏里旋律音本就该落在按着的和弦上,v60.39 同思想的单音版;不在指法上的乐句回束搜索指派)。三档都现算预览:几个音、折八度几个、放不下几个,选之前就看得到。选定即生成一条独立的吉他/尤克里里轨(六线谱显示、逐音音高与旋律严格等价、时值/连音线随行复制)——原旋律轨一个字不动,两轨并存可对照可分头编辑,不想要一步撤销。「+音轨」选择器同步新增「从旋律生成把位」入口。把位指派复用 v60.25 束搜索(和音异弦/品距≤4/跨列把位连贯),不写第二份实现。新增
tv_voxtab套件 6+1 项(入口谱类显隐/低把位逐音等价/中把位 4 品起/跟随和弦图直取实证/原轨零损+一步撤销/统计如实),对 v60.43 旧文件跑当场红=突变实证。86 套件全绿。至此音轨化四期(P0 向导 / P1 音轨最上级 / P2 工具随轨 / P3 把位映射)全部交付。 - v60.43音轨升为最左栏最上级 + 工具随轨声明表(音轨化改版 P2,产品更正指示:「最左边栏的六线谱/简谱/五线谱去掉,改换音轨——音轨是最上级;歌词和和弦也去除,右栏已有」)。① 最左图标轨改为音轨列表:每条音轨一枚图标钮(乐器图标+轨名,当前轨朱砂高亮、切到小节/段落层也保持点亮——音轨是最上级导航,不随下级图层熄灭)+「+」加轨钮;六线谱/简谱两枚谱类图层钮撤下——点音轨钮即选中该轨并自动带出该轨的工具面板,「谱类」不再是需要用户手动切换的层级,它由音轨组合自动派生。② 歌词/和弦图层钮同步撤下:和弦编辑走创作辅助图标与谱面点击和弦图(v60.28/31 口径),歌词走谱面点击与右栏智能填词;小节/段落/帮助钮保留。左栏展开面板随之只留「当前音轨」属性行(改名 / 删除)+显示灯+MIDI——列表导航不再出现在下级。经典版界面不受影响(四钮 DOM 保留,程序化路径与回归套件照旧)。③ 工具随轨按钮级声明表
VOICE_TOOLS:吉他轨=扫弦琶音技法、旋律轨简谱显示=八度点变化音、五线谱显示=踏板/指法 1–5/八度线/谱号切换、钢琴轨=五线谱工具+织体(仅弹唱谱)、功能谱轨=级数置顶;顺带补实测缺口——「谱号切换」钮标注「仅五线谱声部」却在简谱声部也一直显示,现同口径隐藏。新增tv_paneltools套件 6+1 项(五种轨型工具集合+音轨钮随轨增删),对 v60.42 旧文件跑当场红=突变实证。85 套件全绿。 - v60.42左栏音轨卡(音轨化改版 P1):一张列表管全部轨,跨类型加轨(产品拍板方案第二期)。① 「吉他声部」「旋律声部」两组合并为统一「音轨」卡:每轨一行——乐器图标(吉他/尤克里里/钢琴/五线器乐/简谱旋律自动区分)+轨名+删除;单击选中编辑、双击改名如旧;从简谱语境点吉他轨行自动切换图层,左栏工具与记号面板随轨跟随。② 「+音轨」跨类型加轨:点开选「旋律轨」或「吉他轨/尤克里里轨」——歌谱上加一条吉他轨,即自动升级为弹唱形态(和弦图/扫弦/节奏型立即可用);弹唱谱删光吉他轨则回到歌谱形态——谱类本就由音轨组合派生,增删轨=改变谱面形态,这正是音轨模型的本义。③ 删轨边界(D3 拍板):旋律轨/吉他轨自由增删(总轨数≥1;旋律轨删到 0 仅限六线+五线联排的独奏形态);钢琴大谱表与和弦格保持整谱形态,暂不增删。④ 加轨即选中新轨并落到对应图层,一步可撤销。新增
tv_tracks套件 6 项(统一列表结构 / 点行切图层 / 歌谱加吉他轨升弹唱-删回歌谱闭环 / 删轨守卫 / 钢琴-和弦格锁定 / 改名保留),对 v60.41 旧文件跑当场红=突变实证。84 套件全绿。 - v60.41新建流程音轨化改版(P0):三选一,一屏进编辑器(产品负责人手稿拍板:谱类=音轨组合 × 显示方式——用户先说要什么轨,谱面用简谱/五线谱/六线谱显示是每条轨随时可切的属性)。旧「九张版式卡 → 第二步十项表单」两页流程收敛为一屏:① 三张图标意图卡——声乐(独唱 / 合唱 2–4 声部)、器乐(吉他 / 尤克里里 / 钢琴 / 其他器乐五线谱,形态选独奏或伴奏——伴奏自动加一条人声旋律轨,即弹唱)、功能和声(简谱+级数 / 和弦格);点卡就地展开次级选项,不换页。② 基础信息只留标题 / 调 / 拍号 / 速度四项——小节数、歌词行、变调夹、定弦、词曲署名全部给智能默认,创建后在「曲谱信息」与左栏随时改:不该在还没写一个音时被逼着回答十个问题。③ 默认选中「器乐 · 吉他 · 伴奏」(最主流)——打开向导一击「创建」即进编辑器,任意组合最多三击。④ 全部组合仍落到既有谱类实现:发布、谱库、观看页、导入导出全链路零感知,老谱不受任何影响;教学对照谱不再单设卡——它本就是声部「五线谱+简谱」双显示的组合,左栏点亮两盏显示灯即得同款版式。⑤ 导入三入口(MusicXML / Guitar Pro / 哼唱成谱)原样保留在向导底部。新增
tv_newwiz套件 6 项(一屏结构 / 一击默认建谱 / 十一种组合与旧向导产物逐字段等价自动比对 / 次级联动 / 基础信息生效 / 手机布局),对 v60.40 旧文件跑当场红=突变实证。83 套件全绿。后续按方案推进:P1 左栏音轨卡 → P2 工具随轨 → P3 旋律轨↔六线谱把位映射。 - v60.40数拍并入节拍器 + 节拍器设置弹窗(产品负责人指示:数拍功能并入节拍器,完善节拍器功能,点开弹窗设置)。播放条「节拍器」按钮从单纯开关升级为设置弹窗:① 拍点声开关——随播放逐拍发声(原开关语义);② 数拍(预备拍)回归并入:关 / 1 小节 / 2 小节(新增)——起播前按拍号先打空拍再进曲,教学场景学生跟弹的「进入口令」;与拍点声独立开关:只要预备拍、全曲不要拍点(最常见用法)就开数拍关拍点;③ 首拍重音开关——每小节第一拍高音重读,切分/弱起练习可关掉;④ 八分细分——每拍后半拍加一记轻点(音色略抬、轻一档,机械节拍器双音色惯例),慢速跟练稳节奏;⑤ 拍点音量 20%–200% 推子,与乐音音量独立。设置持久保存(新键
musetab-metro,数据红线安全);数拍/重音等改动在播放中即时生效重排程。按钮亮起=拍点或数拍任一开启。弹窗与变调/拍速同一深色浮层家族,从播放坞向上弹出,点外部收起,手机/桌面/观看页/谱架同款可用。tv_metro新套件 6 项(弹窗结构/开关联动/数拍 2 小节排程口径/细分排程口径/持久化恢复——对 v60.39 旧文件跑当场红=突变实证)。82 套件全绿。 - v60.39指法变调重排:和弦图与谱面演奏严格一致(用户报告:变调+指法调整后和弦图与谱面演奏不匹配,并给出逻辑系统规格:①变调夹变调完全保持指法;②指法变调若保不住原演奏,自动按和弦图匹配指法)。此前的问题:指法变调=逐品平移+越界折八度——谱面音符平移了,和弦图显示的却是新调的标准指法图,图与演奏对不上,且平移出的把位不是人手会按的。现在:① 伴奏列随新和弦图取形——列上的音都落在生效和弦指法上的(扫弦/分解/节奏型),逐弦换成新和弦图的品位;新图与原弦集不同时按低→高弦序对应映射(G 六弦满扫变 D 就成四弦满扫——真人换和弦弹同一织体正是这么做的),谱面演奏与和弦图从此严格一致;单音列是「分解伴奏」还是「旋律恰好路过和弦音」按小节语境判定(本小节多数列在图上才算伴奏)。② 旋律列走束搜索指派器整段重排把位(v60.25 同一份实现:和音异弦/品距≤4/低把位空弦优先/跨列连贯),音高精确移调;放不下的整八度折入并计数、仍放不下退回平移——toast 如实播报,不静默。③ 变调夹路径指法零损有架构保证:观看副本每次从原始发布数据重建,「唱+2 且 夹+2」这类经典夹用法净变调为零,原指法逐音原样。顺带补上 v60.30 拍位和弦在观看页移调时漏平移的缺口。
tv_viewer9→10 项(T8c 三合一断言,对 v60.38 平移版跑当场红=突变实证)。已知缺口如实记录:跨列技法指针(tk 弦号)在重排移弦后可能指偏,观看页试奏场景暂不重连。81 套件全绿。 - v60.38谱架模式控制条修正与优化(用户报告截图:控制条出现两枚空白按钮)。根因:「退出谱架」带
.primary——它的白色文字生效了,朱砂底色却被#standbar button的高特异性规则覆盖成纸白,白字白底完全隐形;「自动卷谱」在卷动进行中被加上同一个类(变「⏸ 暂停」),同样隐形——截图里两枚空白钮正是这一个 bug 的两种表现。修正并顺带优化:① 自动卷谱升为主操作——恒朱砂胶囊白字,卷动中转深色按压态+「⏸ 暂停」文案,状态一眼可辨;② 退出谱架降为安静描边钮(深字浅底,不再与主操作抢红);③ 按钮触控高度提到 38px、条宽随内容不超屏、手机窄屏(≤560px)紧凑排布一屏放下、底部让出 iPhone 安全区。tv_mviews12→14 项(T5 配色语义/T5b 按压态与复原——对 v60.37 旧文件跑当场红)。过程中揪出一个 Chrome 149 测试坑记入 tests/README:读过一次计算样式的元素,类变更后同任务甚至下一帧再读仍拿陈旧值(约 300ms 后才对)——「变更前后」断言必须拆两次读取跨真实 paint,与「先掐过渡」同族。81 套件全绿。 - v60.37观看页头部精简 + 吉他变调逻辑系统(产品负责人指示:只显示变调和速度;变调点击弹窗设置,吉他谱的变调夹融合进弹窗;弹窗有原调显示与恢复原调;五线谱/简谱等其他谱类不显示变调夹)。① 头部三枚收为两枚:「变调」(显示当前唱调,点击进设置弹窗)+「拍速」;独立的变调夹入口撤销。② 变调弹窗:首行原调显示 + 恢复原调(唱调与变调夹一并回到发布状态);主行 ♭/♯ 调唱调。③ 吉他谱专属:一套自洽的变调逻辑——核心等式「唱调 = 指法调 + 变调夹」直接画在弹窗里:调唱调(要更高更低的音)→ 指法随动、夹不动;调变调夹(要更好按的指法)→ 唱调锁定、指法自动反向换算——夹上 2 品指法自动从 G 换算成 F,唱出来还是 G,这才是变调夹的本义;另有夹位速选一排(0–7 品,每格标注对应指法调,C/A/G/E/D 开放把位金色高亮——一眼挑出好按的夹位)。④ 谱类判定按发布数据的谱类声明:五线谱/简谱/钢琴等谱类弹窗只有变调与恢复原调,不出现任何变调夹内容。全部即时生效、不改动原谱。
tv_viewer8→9 项(T8 改测 vocal 无夹 + 恢复原调,新增 T8b 吉他逻辑全流程——「唱调锁定换算」经突变实证:退回旧语义当场红)。81 套件全绿。 - v60.36播放条精简 + 手机播放器界面升级(产品负责人指示:去掉「第 X / Y 小节」标签与「数拍」按钮;手机端做美观的界面设计升级)。① 播放条全端撤下两个控件:小节位置信息本就由小节走带高亮与循环选区承担,「数拍」入口撤下(排程能力保留,后续按教学场景另定入口)。② 手机播放器从「单行横滑」升级为三排卡片——此前实测播放条内容宽 887px、屏幕只有 390px,56% 的控件在屏外要横着划才够得着。新布局:第一排小节走带占满整行(进度/点选循环更好点按)+▦ 小节面板入口;第二排 ⏮ + 大播放胶囊(主操作给主视觉,高 46px);第三排速度/倍速/节拍器/谱架/音轨五枚等宽芯片(全部 ≥40px 触控标准);底坞顶角圆润化+发丝分隔线。观看页保持 v55.0 拍板的精简布局不动;桌面端布局不变。三条底栏(播放器/图层轨/时值条)堆叠高度同步重算,
tv_mobile原有「两两零重叠」几何断言兜底,另新增 T8/T9(控件移除+三排几何:走带整行/播放胶囊尺寸/芯片等宽/无横滚)。81 套件全绿。 - v60.35播放杂音与卡顿根治:音频线程不再过载(用户报告 v60.34 后「播放很多杂音和卡顿,无法分辨音质好坏」——定量排查证明混音信号本身是干净的:离线渲染整条总线输出,削波 0、爆点 0、峰值仅 0.42,杂音全部来自音频线程跑不赢实时产生的缓冲欠载,欠载=爆音+断续,正好同时是「杂音」和「卡顿」,且历代版本一直存在)。实测定位三个互相叠加的病灶:① 按下播放的瞬间整曲所有音符的源+增益+滤波节点全部建好挂上音频图,WebAudio 每个渲染量子都要遍历整张图——负载随「总音符数」近乎平方增长(32 小节扫弦谱 1152 个源实测 0.86× 实时、合成器回落时 1.77×,快机器都跑不赢,何况普通电脑手机);② 放完的音符链路从不拆除,播到后段负载还在线性爬升;③ 每次播放都新建一套「母线+压缩器+卷积混响」且旧的从不拆——反复播放/停止几次后页面上挂着 N 个卷积器同时在跑,越播越卡杂音越多(试听音色同病)。修三件:① 分窗排程——构建期只登记发声参数,滚动地只把「未来 2 秒」的音建到图上,图上任意时刻只挂几十个音,负载与曲长彻底解耦(同谱实测 0.86×→<0.10×,起播阻塞 164ms→75ms);② 音符放完即拆链;③ 停播整套拆除本次总线图,试听/回响共用会话级总线。全链路对账:分窗后整曲 576/576 个发声事件一个不漏、时序不乱。
tv_playperf9→12 项(分窗/拆链/总线拆除,对 v60.34 旧文件跑当场三红=突变实证)。81 套件全绿。 - v60.34音色倒退修复:高保真采样不再被误杀回合成器(用户报告「音色回到了最初的版本,表现的很糟糕」——查实是 v60.33 引入的真回退,不是音色包问题)。A/B 复现定位根因:v60.33 起「启动即建 suspended AudioContext」,但
ensureLiveCtx沿用旧逻辑「先异步 resume、再同步看状态」——resume 还没生效状态仍是 suspended,就被判为不可用而关闭重建,控制台随之报「Cannot resume a context that has been closed」;关闭旧 ctx 会把在途的全量音色包解码一并杀死,解码残缺的包整包换入后逐音命中不了采样,整曲落回合成器——这正是用户听到的「回到最初的版本」。修三件:①ensureLiveCtx不再关可恢复的 suspended ctx(仅 closed 或 resume 确认失败才重建)——启动预解码的采样与在途解码全部存活;② 全量包换入改为合并交换 + 完整性校验:解码不完整先补解一轮再换,仍失败进 60 秒冷却重试,不再用残包覆盖好包;③ 播放前等待在途高保真包(≤2.8 秒,提示「正在加载高保真音色…」,就绪即自动开播;超时按现状开播)——首次点播放不再「前半合成器、后半采样」。真实全量包 A/B 实测:修复前每次播放报 resume-closed 错误、整曲合成器;修复后打开页面 0.3s/0.8s 就点播放也只等约 2 秒,整曲 576/576 音全部命中真实采样、零报错,≥1.6s 后点则零等待。tv_playperf6→9 项(ctx 同一实例/无 resume-closed 报错/等待在途包语义),10 个含播放的套件补测试直通旗标。81 套件全绿。 - v60.33播放性能修复:首播主线程冻结 2.2 秒 → 0.16 秒,整曲命中真实采样(用户报告「播放很卡很多杂音」;另按指正移除和弦操作面板里的指法图预览——点的就是图,重复显示冗余)。实测定位根因:启动时不建 AudioContext → 内嵌采样一个都没解码 → 首次按播放时整曲一次性排程逐音命中不了采样、全部落回合成器——32 小节扫弦谱实测 2304 次 Karplus-Strong 合成(每次十万级样本环路)、主线程冻结 2171ms,卡顿与「合成器质感的杂音」都来自这里。修复三件:① 启动即建 suspended AudioContext 预解码内嵌采样(建 ctx 浏览器允许、出声等手势)——首次播放吉他/贝斯/钢琴直接是真实采样;② KS 弦体缓存:按 1/4 半音格缓存标准频率弦体、播放端 playbackRate 补差(调度层每个音都带微失谐,按精确频率做键命中率为零——实测同谱合成回落从 1887 次生成降到 10 次、二播 0 次);③ 混响脉冲缓存(每次建总线不再重算 1.8s 双声道噪声)。修后实测:首播冻结 2171ms→164ms、二播全缓存命中;技法音高(推弦/揉弦/摇把/滑弦)经 playbackRate 基准换算全数回归通过。新增
tv_playperf6 项(启动预解码/采样命中/KS 缓存/阻塞预算/IR 缓存)。81 套件全绿。音色库现状说明:线上音色包由部署流水线直接供给站内(不依赖境外 CDN),MusyngKite/FluidR3 双库并存可切;弦乐/人声等无内嵌铺底的音色在全量包解码完成前仍走合成器,扩铺底会增大单文件体积,待产品拍板。 - v60.32和弦操作面板补回节奏型库选择(用户指正:「点击和弦或者和弦图要出现对应的和弦编辑以及节奏型库的选择,像之前的版本——现在只有编辑的选项」)。点击谱面和弦图/和弦名弹出的操作面板,在「编辑和弦…/试听/清除」之下补回套用节奏型区:两枚常用节奏型直选 + 「库…」进完整节奏型库(与旧 TAB 弹窗同款);套用写入本小节六线谱并按当前生效和弦取形实体化——简谱音符上锚定的和弦经合并时间线同样生效;歌谱等无六线谱的谱类不显示该区。
tv_chordsysT6 扩为验证「面板含节奏型区 + 套用实体化到六线谱且逐音落在该和弦指法上」。80 套件全绿。 - v60.31和弦系统修正:5⁷ˢᵘˢ/3⁷/♯5 这类和弦全链路可用 + 编辑弹窗可拖动 + 点和弦图先出操作面板(用户报告「57sus 和 37/#5 没办法实现」并要求弹窗可移动、点图不直接进编辑)。① 级数直写:级数构建器的自定义框与左栏和弦输入框现接受级数写法——
57sus→G7sus4、37/#5→E7/G♯、4m7→Fm7、#4dim→F♯dim(1=当前调,别名 sus→sus4、7sus→7sus4、°→dim、ø→m7b5)。② 转位低音扩到全部 12 个半音:构建器「转位」网格新增 ♯1 ♯2 ♯4 ♯5 ♭7 等变化音级(功能记谱惯用拼法),3⁷/♯5(E7/G♯,副属第一转位)从此可点选构建;音名拼写随级数字母走(♭7 在 1=C 是 B♭、1=D 是 C)。③ 级数显示按「写的字母」定级:E7/G♯ 现在显示 3⁷/♯5(此前按半音查表显示成 ♭6——G♯ 与 A♭ 同音不同义,拼写即和声含义);调内和弦显示不变。④ 音名变音记号移到字母后:谱面/弹窗里 G♯ 不再画成「♯G」(级数保持 ♯5 前置惯例)。⑤ 级数构建器弹窗可拖动(标题行为把手,与曲谱信息等弹窗同口径;指法编辑器本就可拖)。⑥ 点击谱面和弦图/和弦名先出操作面板:当前和弦+级数+指法预览+「编辑和弦…/试听/清除」,点「编辑和弦…」才进构建器——不再一点就整窗弹出。⑦ 新增tv_chordsys8 项(级数直写/拼写定级/半音低音往返/网格点选/记号顺序/中间面板/拖动几何),「拼写定级」断言经变异实证(退回半音查表 → ♯5 变 ♭6 当场红);tv_chordanchorT3 跟随中间面板流程。80 套件全绿。 - v60.30延长音(增时线「−」)可选中、可在其拍位设和弦(用户指示并附截图:「延长音属于可选音符编辑和弦,目前没办法选中」)。① 每条增时线都是可点击的音符对象:点击选中所属长音列并记住拍位(选中态在该「−」上画光标圈),创作辅助「和弦」图标即编辑该拍位的和弦;再点别处自动回到列头语义。② 长音中途换和弦不拆音符(GB 简谱惯例:和弦标在「−」上方、音符保持一体):新增列内拍位和弦
col.chords=[{q,chord}]纯增量字段(q=第 q 条增时线,即列起后第 q 个四分拍位),级数构建器读写对应拍位槽(标题注明「延长音第 X 拍位」),列头和弦(col.chord)语义与数据不动。③ 渲染与和声全链路生效:和弦名字框/弹唱谱图带和弦图画在该增时线正上方(对齐拍点 qxs,同列多和弦并存);合并时间线(v60.27)收录拍位和弦——六线谱取形、节奏型套用、生效和弦查询都按真实拍位换算。如实标注两处暂不覆盖:MusicXML 导出与伴奏织体生成的时间线暂只读列头和弦(后续补)。④tv_chordanchor新增 T9b(槽写入/时间线拍位/图锚增时线/热区选中四合一),变异实证:时间线去掉拍位扫描 → 当场红。79 套件全绿。 - v60.29中途转调标记随播放/MIDI 导出生效 + 输入音符实时回响(用户报告「转调时播放不会跟随不会转调」+ 指示「编辑时增加实时的声音,输入音符回响起对应的音高」)。① 查实转调不跟随的根因:整体换调(顶栏快速换调/曲谱信息换调)播放本来就跟随(本版 T3 断言钉住防退化);不跟随的是中途转调标记「转 1=X」——它此前只进渲染与 MusicXML 导出,播放全链路只读谱首调,标记后照旧按原调发声。现新增
keyAt/keyRefAt(第 mi 小节生效调=谱首调被 ≤mi 的最近一个转调标记覆盖),播放构建按小节取调:主音、前/后倚音、和音附加音、震音全部跟随;MIDI 导出同口径跟随(此前「转 1=X」后的音导出仍在原调),断言用「导出 → 自家 parseSMF 回读」闭环验证。六线谱品位是绝对音高,不受标记影响(记谱语义如此)。② 输入回响:录入/修改音符即刻回放对应音高——简谱数字、五线谱音名、TAB 品位、变化音 ♯♭♮、八度点全部触发;与主播放同一音色引擎与八度口径(TAB=调弦+品+变调夹−12,简谱=生效调+级数+八度+变化音+变调夹联动,转调标记后的输入也按新调回响);主播放进行中不插响,×闷音/休止不响;回响走会话级复用总线,不逐击新建混响。③ 新增tv_playkey8 项(生效调语义/播放跟随/导出回读闭环/整体换调防退化/两谱类回响口径/播放中静默/标记后回响),其中「播放跟随」与「输入回响」两断言做了变异实证:播放构建去掉小节语境、回响挂钩移除,各自当场转红。79 套件全绿。 - v60.28和弦/标注入口收敛为创作辅助双图标(哼唱成谱下方),谱面不再留「+和弦」点击位(产品负责人对 v60.27 的入口模型作出更正:「和弦编辑功能改成一个图标,在创作辅助哼唱成谱下方,选中音符时图标可用点击进入编辑。不用在谱上留有位置点击+和弦。同时标注功能也做成一个图标在和弦图标旁」)。① 创作辅助新增「和弦」「标注」并排双图标:选中到有效音符列时可用、否则置灰;「和弦」按选中行分派——简谱音符弹级数构建器、六线谱音符弹指法编辑器(和弦图对齐锚定音符的 v60.27 渲染规则不变);「标注」弹出浮层(12 个固定词 + 任意文字 + 清除),写入与原标注卡同一条
setAnno路径。② 谱面「+和弦」空位悬停区全部撤销(含功能谱/钢琴弹唱原有的)——谱面上只保留已有和弦图/和弦名的点击编辑;上一版加进快捷浮条的「和弦」按钮同步撤销,入口不再多头。③ 标注卡从信息页迁出(v58.0 曾注「暂位于曲谱信息卡下方」,本版定位到创作辅助图标);卡片 DOM 保留供程序化路径使用。④ 测试跟随:tv_chordanchor改测双图标分派与「谱面无+和弦位」;tv_annoT1 改测新入口;tv_detail1T37 浮条序列还原。78 套件全绿。 - v60.27设和弦改为「选中音符设和弦」(全谱类),和弦图对齐锚定音符;撤销六线谱上方点空白设和弦(产品负责人指示,并附截图指出:选中简谱音符设的和弦,和弦图应对齐该音符)。① 入口统一为选中音符后设置:快捷浮条(右键/触屏点音符)新增「和弦」按钮,简谱音符弹级数构建器、六线谱音符弹指法编辑器;左栏「和弦」面板的「编辑和弦…」与输入框同样跟随选中行,不再强制切到六线谱;简谱空位的「+和弦」悬停提示从功能谱/钢琴弹唱扩展到所有谱类。六线谱上方图带的空白点击热区撤销——已有和弦图/和弦名本身即编辑入口(点击=选中锚定列并编辑)。② 和弦图对齐锚定音符:弹唱/尤克里里谱在「随行图」模式下,简谱音符上设的和弦,其指法图画进六线谱上方图带并横向对齐该音符所在列(与六线谱列锚定同一口径),不再在简谱行画名字框;歌谱等无六线谱的谱类维持名字框原样。③ 和弦时间线全行合并:生效和弦查询(
chordBefore/chordAtCol)与 TAB 渲染取形改为按拍位合并简谱/六线谱两行的和弦变更——简谱音符上锚定的和弦,对六线谱的 ×实音化、扫弦音与节奏型套用的取形实体化同样生效(此前只认六线谱列上的和弦)。④ 新增tv_chordanchor10 项(对齐几何/热区撤销/点击编辑/合并时间线/浮条与面板分派/歌谱不回归),其中「图对齐本列」与「合并时间线」两条断言做了变异实证:锚点改回小节头、查询退回只扫六线谱行,各自当场转红。78 套件全绿。 - v60.26MIDI 导入入口重排:创作辅助第一项,替代一键配和弦;移出新建向导(产品负责人指示:「导入 MIDI 的独立界面不要在新建,放在创作辅助第一个,替代一键配和弦」)。① 创作辅助(右栏创作页)第一项现在是「导入 MIDI…」,点击直达独立导入界面(选谱类 → 音轨映射声部),不再经过新建向导;「一键配和弦」按钮从创作辅助与经典栏撤位——能力没有删:配和弦工作台的「应用到谱面」与伴奏织体弹窗里的「一键配和弦(建议)」两处仍可一键写入全曲和弦。② 新建向导的导入组从 4 入口减为 3(MusicXML / Guitar Pro / 哼唱成谱),MIDI 不再出现在新建流程里;启动台的「导入 MIDI」也改为直达独立界面。③ 经典栏同位置换成「导入MIDI」按钮;导入入口不再按谱类显隐(导入建的是新谱,与当前谱类无关,恒显)。④ 测试跟随产品:
tv_safetyT6 向导入口数 4→3;tv_dockT9 的配和弦能力改经工作台「应用到谱面」验证并断言新按钮就位;tv_detail1/tv_frame/tv_mobile/tv_emode的首项锚点同步更新。顺带如实记录一笔陈旧债:排查中发现tv_dock/tv_frame两套件不在 run_all 的 CORE 门禁清单里,其中 tv_dock 的 T1–T6 自 v59.1 左栏图标轨改版后就已失效(期望经典版语义、实际已是新轨)——与本版无关,列入待修清单,不悄悄绕过。56 套件(门禁集)全绿。 - v60.25MIDI 导入大升级:独立导入界面(选谱类·音轨映射声部)+ 左栏声部级导入 + 吉他 TAB 转谱(产品负责人指示:「自动配和弦先置后,MIDI 导入先完善。独立界面,支持选谱类,声部导入到对应声部,支持旋律、吉他谱、钢琴谱,专业级别;左栏声部下方显示图标右边加 MIDI 导入」)。① 独立导入界面:此前 MIDI 导入只有一个三选项小弹窗(单轨简谱/中央C分手/双轨钢琴)。现在是完整界面——先选谱类(歌谱/钢琴独奏/吉他独奏/尤克里里独奏),再把音轨映射到对应声部:歌谱可勾选 1–4 条音轨各成一个旋律声部;钢琴右手/左手各选一轨,或同轨按分手点拆(F3/C4/G4 可调,不再写死中央C);吉他/尤克里里选单轨转 TAB。每条音轨带音数与音域——不给音域没法判断哪轨是旋律哪轨是伴奏。② 吉他 TAB 转谱(全项目第一份音高→弦/品指派器):MusicXML/GP 导入的弦品都来自文件自带标记,MIDI 没有——新写束搜索 DP 指派器,判据与真人排指法一致:和音各音不同弦、按品跨度 ≤4(空弦不计)、低把位与空弦优先、跨和音把位连贯(这就是要 DP 不能逐列贪心的原因);尊重调弦/变调夹/品数上限(尤克里里 15 品)。超出指板音域的音整八度折入并计数上报,仍放不下的略去也计数——不静默。量化复用简谱同一份量化器的 raw 档(不写第二份量化实现),连音线与 GP 导入同口径(col.tie)。③ 左栏声部级导入:声部下方「显示」图标行右侧新增 MIDI 按钮(简谱声部区、吉他声部区各一)——与独立界面的根本区别是不新建谱:选一条音轨,按当前谱的拍号/调号(TAB 还含调弦/变调夹)量化,写进当前选中的那个声部,小节不够自动补,MIDI 拍号与本谱不同会明确提示(按本谱切小节);整体覆盖该声部、一步可撤销。④
tv_midi8→13 项:吉他指派合法性(弦不重/品距≤4/空弦命中 6/6)、八度折入计数、独立界面结构、声部级导入(写对声部/别的声部不动/撤销还原/小节自动补)。「和音各音不同弦」断言做了变异实证——三音大三和弦绑不住这条约束(天然落三根弦),特意加了一对两音最低把位都在五弦的双音(A2+B2),去掉互斥约束后 legal 当场转红。56 套件全绿。 - v60.24级数标签说真话:小调统一用数字级数,套路名改为从「实际写入的和弦」反算(产品负责人拍板:小调用数字、和弦重复照标)。① 发现的问题:
progFitSpan会枚举旋转相位取最优(同一组和弦从哪个音起步),但面板从头到尾显示的是没旋转的模板原名——实测 chip 上写着1-5-6-4,点下去实际写入Am F C G(那是6m-4-1-5,小室进行)。1-5-6-4「50s 进行」在国内都有确定所指,标错就是对用户说假话。同类问题还有三处:套路铺完再手改,行首标签仍显示套路名;8 小节卡农被合并跨度命中时同一个名字贴到两个乐句行上,改了一行另一行还在说卡农;手写核心用裸6、导入条目用6m,同一屏里指同一个 Am 却两种写法。② 修法不是补映射表,是换数据源:标签一律从当前生效的和弦反算级数(chordLabDegs/candDeg)——旋转相位、终止式替换、手改、换套路之后的现状,标签自动跟着变,不可能再对不上。模板自己的名字降为副标「原型」,两者不同才显示。③ 小调统一数字级数:级数空间就是简谱的写作调号(小调歌沿用平行大调调号、主音落在6),故i=6m、♭VII=5、♭VI=4、V=3(和声小调导音)、ii°=7dim;♭前缀有无都收——13 条手写核心带♭、83 条导入的不带,指的是同一个音级。专名(安达卢西亚)保留并只转后面的级数部分。④ 顺带解释了一个看起来像 bug 的现象:小调末句上四条不同套路会显示同一个结果级数,那是终止式替换把它们的末格都换成了主和弦——真实如此,现在 chip 副标注明「末句收主」并列出各自原型,四条仍可区分。⑤ 和弦重复照标:按产品负责人决定,维持每小节都标注的现行做法,不做「只在改变处标」的选项。新增tv_chordlabT16 钉住「标签必须能由 ids 逐格反推」并做变异验证(退回显示模板原名 → 39 条候选里 12 条不符,当场转红),T10 补强为覆盖小调映射的六个用例。15→16 项,56 套件全绿。 - v60.23配和弦工作台:三条会丢数据/谎报成功的阻断缺陷 + 一个从 v60.20 起就没渲染出来的边框(三位专家并行审查面板:视觉、可用性、记谱专业性;本版只落其中不改行为语义的安全项,其余待逐条核实后分批做)。① 点弹窗外空白不再直接关窗丢稿:此前
showModal的遮罩点击一律直接关闭,工作台走同一条路——改了二十分钟,手机上拇指蹭到遮罩窄边就整稿蒸发、一字不写回,chordLab还残留成脏全局。现新增关闭守卫(modalGuard):有未保存改动时点遮罩只提示不关窗;「取消」也改为二次确认(继续编辑/放弃改动)。守卫随弹窗一起清,不会拦到别的弹窗。② 每次点击不再把滚动位置和焦点丢掉:面板每次交互都整窗重建(showModal第一件事是closeModal),实测滚动位置 200 直接归 0、焦点退回body跑出面板——32 小节的谱在手机上滚动区只有三行高,点一个小节就弹回第一乐句,第三层等于不可用。现在渲染前记下「滚到哪儿、焦点在谁身上」,渲染后原样放回;自动滚动只在选择真的变了时才做(踩过一次:无条件把选中格拉进视野,正好把刚恢复的滚动位置又冲掉)。弹窗一并补上role=dialog。③ 不再承诺写不进去的和弦,也不再谎报成功:和弦只能落在有音头的列上,可面板的拍位格是按拍数无条件生成的——长音小节的第 3 拍照样可点、照样显示C·G,应用后那个和弦被静默丢弃,提示却仍是「已写入 8 个小节的和弦」。现在无音头的拍禁用并说明原因,程序化写入也会被拦;应用后如实汇报有几处未能落位。谎报成功比配错更坏——用户看不出少了什么。④ 修一个我自己写的 bug:面板 CSS 里 8 处写的是var(--line),而全项目根本没有这个变量(只有--border)。CSS 中未定义变量会让整条border简写作废——小节格/拍位格/筛选下拉/分数条轨道从 v60.20 起就一直没有边框,只剩一层浅填充;我复核过两轮截图都没看出来,是同色填充骗过了眼睛。教训记在代码注释里:写 CSS 变量前先 grep 确认它存在。⑤ 顺带把成功提示改成「点顶栏 ↶ 或 Ctrl+Z」——手机上没有 Ctrl 键。tv_chordlab12→15 项(T9 改写为「取消需确认」,新增 T13 遮罩守卫/T14 重渲保留视图/T15 无音头拍),56 套件全绿。 - v60.22套路词典:96 条和弦进行按「风格 / 情绪」分类,换套路时可筛(用户指示:「和弦套路按音乐风格和情绪标签给出分类选项」):套路库涨到 96 条之后,「换套路」列表按契合度排完还是一长串,想找「爵士味的」「忧伤的」只能一条条试。本版给每条套路打上两组标签,面板顶部加风格、情绪两个下拉,筛完仍按契合度排序。① 两组标签的来源完全不同,产品里也分开讲:情绪是上游真数据——free-midi-chords 的进行表本来就是「级数序列 = 情绪词」,导入时已原样存下(83 条全有,19 个英文词),本版只做「英文词 → 中文桶」的归并,归成欢快/激昂/温柔/希望/怀旧/忧伤/暗色七类;13 条手写核心套路上游没有,按同一套词汇手工补齐。风格上游没有,由和声内容按规则推定:词汇只用三个正三和弦→民谣;万能四和弦家族→流行;四五度连锁≥3 个和弦→爵士;顺阶模进含 iii 或小调用导音→古典;小调含 ♭VII 且无导音→中国风;判据都写在代码里可复核,一条进行同时属于两三种风格很正常(卡农既是流行也是古典),故为多标签。② 两条错误规则被数据当场证伪,记下来免得再犯:其一,本想判「摇滚」,判据取「含 ♭VII/♭VI」——96 条里 45 条中标,因为 ♭VII/♭VI 在小调里是自然音级,根本不是摇滚标记;真正的摇滚标记是大调里的模态借用,而借用和弦还没进候选集,现在根本没有可判的素材,故不设「摇滚」桶——宁可不给,也不给一个错的。其二,本用「含 iii → 古典」,把
4-5-3-6判成古典,可 4536 是国内流行的王道进行;改成「长度≥5 的顺阶模进,或含 iii 但不含 vi」,4536 才归回流行。③ 下拉里只列这段旋律真配得上的标签并带条数(如「爵士 4」),点了是空的选项不给列;筛完为空时给一句话出路,不留空白。套路 chip 上直接带首要情绪词(1-5-6-4 希望),不用打开下拉也看得见。④ 手机上照样能点:筛选下拉与套路 chip 一并抬到 ≥44px,窄屏两个下拉平分一行;T11 新增断言把这两处也量进去。新增tv_progT9(上游情绪词一个都不许被静默丢掉——将来重跑导入若上游添了新词,没进映射表会悄悄消失,这条让它当场转红;外加五条众所周知的抽查:1-5-6-4→流行、4-5-3-6→流行、2-5-1→爵士、1-4-5-1→民谣、小调 6415→流行/中国风)与tv_chordlabT12(筛选收窄候选、下拉条数与实算一致、清空复原),8→9 与 11→12 项,55 套件全绿。 - v60.21配和弦工作台二版:乐句级换套路 + 每拍逐格编辑,一套界面手机上照样用(用户指示:「乐句级换套路;每拍和弦的逐格编辑。界面设计要符合智能/简单/高效,移动端通用」):上一版只能逐小节换和弦——想让整句改走另一条进行得一格一格点,想在第三拍换和弦则根本做不到。本版把面板改成三层,越往下越细,默认只暴露最上面一层。① 乐句级换套路:每个乐句行首的按钮显示该句现在用的是哪条进行(或「自由解」),点开列出按契合度排好序的候选套路,点一下整句换掉,再点「自由解」原样退回引擎的解。② 每拍逐格编辑:点一个小节,下方展开该小节的拍位条(几拍就几格);点某一拍,候选清单换成「这一拍起」的候选,点选即换并试听——半小节换和弦、第三拍插一个属七,现在都点得出来;小节格上会用
C·G这样的写法显示一小节里的多个和弦。③ 分数仍然一份都不新写:整小节口径用引擎的发射分emit(Viterbi 挑和弦用的就是它),子区间口径用chordRangeScore(引擎拆半小节用的同一把尺子),换套路的排序用progFitSpan(这一版从applyProgTemplates里抽出来,自动挡和手动挡从此共用同一段代码)——所以面板上排第一的,就是引擎自己会选的;tv_chordlabT2/T3/T6 分别钉住这三条同源关系,其中 T3 特意挑了一个「整小节口径与后半段口径答案不同」的小节,面板若偷懒对所有拍都用整小节分数,这条立刻变红。④ 手机上是一等公民:所有可点区域≥44px,栅格自动换行,不依赖 hover;窄屏下乐句标签占满整行把小节格让出完整宽度、隐藏次要的功能列(分数条已经表达了优先级)、底部按钮拉平。新增 T11 在 360×740 真窄屏视口里断言「横向零溢出 + 触控目标 ≥44px + 标签整行」。⑤ 上一版的四条约束一条没松:谱面已有和弦仍优先且分色标出、调式仍可手动覆盖并记进song.mode、应用仍是一次可撤销的整体写入、取消仍一个字都不写。⑥ 两处只有截图才看得出来的毛病,顺手一并修了:其一,标「来源=套路」的小节格类名与新加的套路条容器类名撞车(都叫cl-tpl),被套路条的整行样式带得每个小节格独占一行——断言全绿、肉眼一看就不对,已改名并补上「同乐句的小节格必须排成一行」的几何断言;其二,手机上面板太高,「应用到谱面」被挤出首屏要滚动才够得着(360×780 溢出 67px),已压窄屏两个滚动区并加断言钉住。tv_chordlab7→11 项,55 套件全绿。 - v60.20配和弦工作台:把「一键配和弦」升级成可逐小节推敲的专业面板(用户指示:「自动编配和弦做成一个专业的工具,编辑谱时点击弹出一个独立界面」):此前配和弦只有一个「一键」按钮——按下去就写满全谱,配得对不对、为什么这么配、想改某一小节怎么办,全都看不见也管不着。本版给它一个独立面板。① 面板长什么样:顶栏显示
1=调号、调式判别结果(可手动改成大调/小调)、乐句数与小节数、手改处数;中间按乐句分行(A3 切分),行首标出该乐句命中了哪条进行套路(A8),行内每个小节一个格子显示当前和弦;下方是选中小节的候选清单——列出全部候选和弦,标注功能(主/下属/属),按旋律契合度排序并画分数条,点一下即换、同时试听。② 分数不是新算的:面板显示的分数就是引擎实际用的发射分——为此把suggestChords拆成chordSolve(返回解 + 过程数据)与一层薄封装。不另写一份打分实现,否则面板上看到的分数迟早会和引擎实际用的漂移;tv_chordlabT2 专门钉这一条:逐小节比对「面板首位候选」与「emit 最高候选」,8/8 必须一致。③ 不静默覆盖用户已经写好的东西:谱面上已有的和弦优先于引擎建议进入面板,并标为「谱面已有」(与「套路」「自动」「手改」四种来源分色显示),看得见哪些是你自己写的。④ 调式判错不必回去改谱:面板上直接切大调/小调即刻重算;确认应用时把选择记进song.mode(新增字段,不动任何既有字段),否则下次自动重算又会判回去。⑤ 写回是一次可撤销的整体操作:应用后 Ctrl+Z 一步还原;取消则一个字都不写。⑥ 顺带修了套路名的显示:从 free-midi-chords 导入的条目用罗马级数命名(I-V-IV-vi),与国内习惯的数字级数不统一,现按显示层转成1-5-4-6m;小调仍保留罗马数字(i / ♭VII / ♭VI一眼看出调式)。⑦ 入口两处:右栏创作页「配和弦工作台」(紧挨「一键配和弦」),经典栏同名按钮;两者显隐口径与一键配和弦一致。新增tv_chordlab7 项(打开结构/分数同源/已有和弦优先/改+应用+撤销/调式覆盖/取消不写回/套路名显示),54→55 套件全绿。本版只做「看得见、改得动、可撤销」;乐句级换套路、半小节和弦的逐格编辑、以及试听整句,留作下一步。 - v60.19钢琴伴奏织体 15→21 套:依 POP909 的「节奏骨架统计」重写,难度同步改五级(用户提问:「909 首扒谱里的钢琴伴奏节奏型能不能采纳进来?」——能,但要采对那一层):① 先把边界划清。POP909(MIT · Copyright (c) 2020 Music X Lab)是 909 首**商业中文流行歌**的扒谱,仓库许可解决的是「这份标注数据可以用」,清洗不了底层音乐作品的著作权。所以我们只采「不构成表达」的那一层:节奏骨架——左右手在拍位上的起音分布 + 右手是柱式还是分解;音高内容一概不取(不取音符、不取音程、不取和弦、不记曲目标识),并以跨曲频次为闸:只看某个骨架被多少首不同的歌共用。被两三百首歌共用的打法是体裁惯例(「低音走八分、和弦落在二四拍」这种),不是任何一首歌的表达。落地时由人按我们自己的
PIANO_TEX惯例重写成模板,音级(1/3/5/8)本来就由和弦决定。一句话:采的是「中文流行钢琴伴奏一般怎么打节奏」这个事实,不是任何一首歌怎么弹。② 统计口径调了两轮才站得住:起初按 16 分格逐格比对,908 首里出现 1956 种骨架、没有一种能过 20 首的闸——被演奏的细微差异打散了;退到 8 分格仍有 1584 种,且前 12 名里有 5 条其实是「左手八分但缺一格」的同一个织体。最终改为按拍位类别归并(哪几拍上有音 + 有没有后半拍),这层抽象既更稳、也离具体表达更远。全量跑完:908 首 / 72191 小节,过闸(≥90 首)骨架 63 种,覆盖 48.6% 的小节;头部骨架被 186–383 首歌共用。③ 据此补了 6 套 4/4 织体(括号内为该骨架的共用曲目数):抒情长音每小节各一次(212)、左手流动+右手柱式(352)、低音走三拍+和弦(233)、仅左手流动用于间奏留白(186)、反拍和弦右手只落二四拍(231)、密集柱式推进副歌型(383)。这几类此前一套都没有——我们原有 11 套 4/4 偏抒情与古典,缺的正是流行伴奏的高密度推进型、反拍型与留白型。④ 难度同步改五级(入门/初级/中级/高级/专业),原来只有入门/进阶两档,与已拍板的五级对不上。改完立刻踩了一个真回退:两个织体弹窗把难度组写死成['入门','进阶'],改五级后初级/中级/高级三组直接不渲染,4/4 可选项从 15 掉到 3——被tv_accT7 当场抓住。已抽出共用的TEX_LV常量,两处弹窗都按它分组。⑤ 测试改成跟着库走:原来三处断言钉死数字(「共 15 套」「弹窗 9 套」),加织体就得改一次;现改为与PIANO_TEX实际条数一致,并新增一条结构性不变量——每套织体左右手的时值和必须等于它声明的拍数(6/8 谱按unit=8折算,与生成器同口径)。这条比数数有用得多:写坏一套模板(多写或漏写一格)立刻转红。⑥ 21 套全部实测生成通过(拍数自洽、无 NaN、2/4·3/4·4/4·6/8 四种拍号齐备)。新增工具deploy/pop909-texture.py(零依赖最小 SMF 解析,用set_tempo建 tick↔秒 映射再按重拍定小节线,不假设「从 0 起每 4 拍一小节」)。54 套件全绿。仍缺:专业级织体为 0 套(现有最难是十六分全分解=高级);伴奏仍是整曲一个织体,乐句级选择与段落对比是下一项。 - v60.18更正上一版的家底数字:源表是 190 条不是 108 条;modal 表不再整表跳过(用户质疑:「那个项目写着每个调 190 种进行,你验证的数据是多少?」——用户是对的,我上一版报少了):核对
chords.py的确切条数:大调 50 + 小调 58 + modal 82 = 正好 190。v60.17 的说明里写的「原表 108 条」只是大调+小调,把 82 条 modal 整表跳过了,还没在对外说明里交代这块家底,等于把分母说小了。① 更正后的完整账:190 条 = 已导入 83 条(大调 32 + 小调 49 + modal 回收 2)+ 与既有核心/彼此重复 24 条 + 退化/准退化/长度剔除 5 条 + 待补候选 78 条。② modal 表不是「不能用」,是「需要新增候选级数」——上一版整表跳过的判断下得太粗。按主音语境重新分流:大调语境 45 条 · 小调语境 37 条。其中小调语境里的♭III/♭VI/♭VII本来就等于本项目小调候选的III/VI/VII,所以有 4 条现在就能表达(去重后净增 2 条,已入库)——这是整表跳过造成的实际漏收,不只是数字口径问题。③ 剩下 78 条的可回收量已量化:大调语境补「同主音小调借用」四件(♭III/♭VI/♭VII/iv)可回收 27/45,再加♭II到 34/45;小调语境补♭II(弗里几亚/那不勒斯)可回收 18/37,再加IV(多利亚大下属)与I(同名大调借用)到 30/37。合计再补 5 个候选级数即可回收 52 条以上,覆盖 190 条里的 160 条。④ 但这不是「多加几条模板」:♭VII/♭VI/♭III借用是**候选集的能力缺口**(流行/摇滚/影视/古风里C-B♭-F这类走向极常见),加了会影响**所有**曲子的配和弦结果,必须挂在评测集下逐步放开、逐曲复核,不能一次性放行——故本版只做零风险的 2 条回收,借用和弦另立一项。⑤ 导入器同步改造:deploy/prog-import.py现在三张表全过一遍,按主音语境归一,并对每条给出去向(已收 / 重复 / 退化 / 待补候选:缺哪个级数),家底一目了然,不会再出现「整表跳过且不记账」。⑥ 顺带自查:这次核对过程中我自己的统计口径连错三次——先是没按主音语境分流、再是漏了「小调语境下 ♭VII 就是 VII」这层等价、最后是映射表漏了bIIIM/bVIM/bVIIM三个拼写;每次的中间数字都不同(0/82 → 27/82 → 34/82),直到分流+补全后才自洽。结论数字以本条为准。评测集成绩不变(级数 98.8%、功能 98.8%、命中率 60%),54 套件全绿。 - v60.17套路库从 12 条扩到 94 条(导入 free-midi-chords · MIT),配和弦准确率 97.5%→98.8%(用户提问:「套路储备够不够?
ldrolez/free-midi-chords能不能拿更多进行?」):先回答够不够——不够,而且缺口有实测证据。用评测语料逐段审计,未命中的段落走的是V7-I-V7-I、I-I-V-I、I-V7-I-V这类主属交替,我们 12 条里一条都没有,大调命中率只有 20%。① 可以拿,而且很干净:该项目 MIT 许可,更关键的是它的进行表在源码chords.py里本就是级数文本 + 情绪标签(不是 MIDI),所以既不用解析 MIDI、也不用分发它的任何文件,只取「级数序列」这一层,按 MIT 保留署名即可。新增deploy/prog-import.py做导入:加音/挂留/七九度回落底和弦;表达不了的整条丢弃(大调 vii°、小调 v°、以及整张 modal 表的 ♭II/♭III/♭VI/♭VII)——不做「删掉一格再凑」,那会改掉进行本身。原表 108 条 → 可表达 103 → 与既有核心/彼此去重后净增 81 条(大调 32 + 小调 49),套路库 12 → 94 条。② 导入不是照单全收,三道过滤都是被实测逼出来的:(a) 退化项——I I7 Idom7 I7归一化后成了I-I-I-I,那不是进行是静态主和弦,入库只会让「全程主和弦」的段也算命中;(b) 准退化项——单一和弦占比 ≥3/4 的(如I I7 Idom7 IV→I-I-I-IV),音乐内容原本在七/加音的色彩上、而那层我们表达不了,归一化后几乎没有辨识力却照样带着先验去压别的解,实测把tv_arrangeT13 的末小节从Am掰成F(旋律3-2-6明显更贴 Am);(c) 截断护栏——跨度短于模板时只能用前几格,8 格的I-I-I-I-IV-IV-V-V截成 4 格就是I-I-I-I,同样是拿静态主和弦冒充命中(两只老虎实测中招),故要求截断后仍有 ≥2 个不同和弦且至少用到一半格数。③ 另补一族导入库没有的:主属交替1-5-1-5——流行向的进行库整族没有它,但儿歌与传统民歌大量在用。不开旋转:开了之后V-I-V-I这一相位会把属和弦放到乐句头上,实测把「玛丽有只小羊羔」从 8/8 打到 6/8。④ 试过但撤掉的一条,如实记下:曾加「逐小节让步上限」(任一格丢掉超过该小节最佳契合度的 40% 就作废整条模板),本意是防硬套;实测既没卡住目标案例(两只老虎那处 G7 只比 C 差 12%,卡不住)又误伤了正确命中(铃儿响叮当那条逐格吻合的 8 小节套路被毙),已撤除。⑤ 成绩:评测集级数准确率 97.5% → 98.8%、功能 97.5% → 98.8%,套路命中率 40% → 60%(大调 20% → 46.7%);80 小节里只剩一处红项——欢乐颂第 4 小节的句尾半终止(A2 未实现)。评测地板同步上调到 98%(再错一小节即红)。过程中有一次「聚合数字骗人」值得记一笔:加主属交替族后总分停在 97.5% 没动,看着像没影响,逐曲一看才发现是一换一——欢乐颂第 8 小节修好了,两只老虎第 3 小节却被掰成 G7(同一条旋律的第 4 小节却配 C)。只看聚合准确率会漏掉这种交换,必须逐曲看。54 套件全绿。 - v60.16配和弦评测集上线,首轮跑分就抓出两处终止式真缺陷(编配质量专项 A7):第八节把评测集列为「整节的关键」——没有它,配和弦的每次改动都只是换一批参数、谁也说不清改好还是改坏。本版把它做出来了。① 语料:首批 9 首 / 80 小节(6 首公有领域传统曲目 + 3 段自制小调片段),标注为每小节的「可接受和弦集合」而非唯一答案——配和弦本就多解,钉死单一答案会把评测变成对某一种配法的过拟合。② 三项指标:级数准确率(配得对不对)、功能准确率(T/S/D 对不对——配成 vi 而答案是 I,级数错但功能对,听感可接受)、套路命中率;套路命中率单独统计、不进闸门,否则会为了命中率牺牲准确率。大调 / 小调分桶统计,防止大调涨分掩盖小调仍然错。③ 首轮就抓出两处真缺陷,都是「整首歌停在属和弦上」这种用户一耳朵能听出来的错:(a) 重复乐句复用越过了终止式——小星星第 9–12 小节与第 1–4 小节逐音相同,A8 的「重复乐句同配」把前句收在 V 的决定原样搬到末句,而模板层本已为末句算出了收主和弦的版本(调试打印显示
cad=true,却被复用覆盖)。主歌两遍旋律一样,但只有后一遍结束全曲,复用不能越过终止式。(b) 自由路径根本不认终止式——欢乐颂末小节是2(3 拍) +1(1 拍),长音落在属和弦的五音上,原来 1.6 / 0.8 的主和弦偏置压不过它,整首歌配成 G 收尾。现把判据统一为旋律末音:末音收主音时主和弦偏置提到 2.0 / 0.5(自由路径与模板路径同一口径),复用路径则对末句单独补收尾。修完级数准确率 93.8%→97.5%、功能 96.3%→97.5%。④ 闸门自己也被变异测出问题,一并记下:初版地板留了 1.5% 余量,结果把终止式修复抽掉后只掉到 96.3%,照样绿——80 小节的语料上一小节只占 1.25%,余量放大就等于没有闸门。现地板收紧到错一小节就红,并加一条结构性不变量断言:凡旋律收在主音上的曲目,末小节必须配主和弦。三个变异体(只抽 a / 只抽 b / 两个都抽)现在全部转红,其中「只抽 b」正是靠这条结构断言抓住的——百分比对它无感。⑤ 如实保留的红项:欢乐颂第 4、8 小节(句尾应为半终止G,引擎配C/Dm)确属引擎缺陷——句尾终止式 A2 尚未实现,评测集正好把它变成了一个可复现的靶子。⑥ 标注修订如实记录:小星星第 5/7 小节的可接受集合补入G7(该小节旋律5 5 4 4含4,正是 G7 的七音,教学配法用 G 或 G7 都通行,初稿漏写);修订发生在看到引擎输出之后,已写进语料文件的revisions字段。⑦ 语料缺口如实标注:小调传统曲目目前为 0 首,小调项全部是自制片段,所以「小调 100%」只能当回归闸,不能当作小调达到专业水准的证据;补齐传统小调民歌是本项首要缺口。新增tv_eval5 项,53→54 套件全绿。 - v60.15和弦进行套路层:引擎终于「知道自己在走 1-5-6-4」(编配质量专项 A3+A8)(用户提问:「和弦进行套路(固定级数走向)有没有规划?是不是优先匹配固定走向?」——查下来原方案确实没有,本版补上):此前的和声引擎是一阶的,转移分只看相邻两个和弦,所以
1-5-6-4与1-5-6-3的差别只体现在其中一个转移分上,引擎里根本不存在「整条走向」这个概念;谱面上出现的「卡农」「4536」也只是预设示范曲里写死的和弦,不是引擎能力。本版加两层:① A3 乐句切分——按「小节末长音 / 末尾休止 / 歌词标点 / 4 小节格」取证,用一次小 DP 把全曲切成 2–8 小节的句(偏好 4 小节)。这里踩了一个坑记一笔:证据分若取绝对值,段越多累计分越高,DP 会系统性偏向切碎——全曲每小节都以长音收尾时,8 小节被切成 4 段 2 小节(实测)。改成减去全曲均值后,「并不比别处更像句尾」的位置贡献 0,长度先验才真正说了算。② A8 进行模板层——12 条套路入库(大调 1-5-6-4 / 1-6-4-5 / 4-5-3-6 / 卡农八格 / 1-4-5-1 / 1-4-1-5 / 2-5-1;小调 i-♭VII-♭VI-♭VII / i-♭VI-♭III-♭VII / 安达卢西亚 i-♭VII-♭VI-V / i-iv-v-i / i-iv-♭VII-♭III),以乐句为单位枚举「模板 × 旋转 × 铺排」,用同一套发射分与转移分打分。三条关键设计:(a) 不硬套——套路只带每小节 0.3 的先验,打不过自由最优就退回自由解(「所有歌都配 1-5-6-4」是另一种低级);(b) 每格是一组候选(如 V 与 V7 同格),格内按旋律自选,所以属七终止等既有行为不被套路抹平;(c) 相邻两句可合并成一个跨度再匹配,否则 8 格的卡农永远等不到 8 小节的段。另加终止式收尾:跨度含全曲末小节、且旋律确实收在主音时,把套路最后一格换成主和弦——不加这条,卡农这类循环型套路会让整首歌停在 V 上(实测收尾…F C F G);但也不能一律要求收主和弦——先写成硬性护栏,结果把一条正经的、旋律收在6上的 1-5-6-4 乐句给毙了,故判据改取旋律末音而非小节序号。还有重复乐句同配:旋律指纹一致的句直接沿用先前决定,主歌两遍不会配出两套和弦。实测对照:含糊旋律(某小节只剩1与3,自由解因根音加权偏 C)由C G C F扳正为C G Am F;卡农旋律由C G Am C F C F C变为C G Am Em F C F C(三级和弦归位);而固执停在7与4的旋律一条套路都不套,仍是G7…C。大调既有输出C F G C与C F G7 C一字未变。但有一处大调输出确实变了,如实说明:tv_arrangeT7 那条 5 小节旋律由C C F G C变为C Am F G C。核对后认定是改善而非回退——该小节旋律3-1-6-1的四个音全部落在 Am 内(C 只覆盖三个,6是外音;实测 vi=4/4、I=3/4),且这是地道的 1-6-4-5 进行;功能序列仍为 T-T-S-D-T、无属→下属逆行、首末仍为主和弦。T7 的期望值已随之更新,结构性断言一条没放松。新增tv_prog8 项,并做了两次变异验证证明它真有防线:清空模板表 → 8 项中 5 项转红;把切分证据退回绝对分 → T1 立刻报出[[0,1],[2,3],[4,5],[6,7]]的切碎结果。(其中 T8 最初在停用套路层时也能通过,补上「套路标记须覆盖两句」后才真正有效,顺手记一笔。)52→53 套件全绿。已知边界:套路目前每格恒等于一小节,半小节换和弦(A4)尚未与套路层打通;模板表里的风格与难度字段已预留,但还没接选择器。 - v60.14自动配和弦终于会配小调了(编配质量专项 A1)(用户反馈:「自动编配和弦和节奏型库都非常的低级和错误百出」):先做了一轮审计定位,结论分两半——节奏型库没有算错的条目(60 条逐条复算拍数,0 条硬错误,问题是「量太小、无风格无难度标签」),而配和弦确实系统性配错,主因只有一个:和弦候选集里只有大调级数(I/IV/V/V7/vi/ii/iii),代码里原本就留着「TODO: 小调」。于是任何小调歌曲——民谣、影视、大量儿歌与考级曲目——都会被配上大调和弦。本版补齐小调:新增小调候选集
i / ii° / III / iv / v / V / V7 / VI / ♭VII(按简谱惯例仍写作大调调号、主音落6,故级数一律用「相对写作调号」表达),新增大小调自动判别(终止音最重,其次首音、6与1的时值占比、和声小调导音#5;默认判大调,阈值刻意保守),并为小调单配一张转移偏好表——流行小调的下行走向i-♭VII-♭VI-V在大调的功能三分法里会被当成「属→下属逆行」而遭惩罚,沿用大调那张表配不出地道的小调。半小节换和弦的候选集也一并跟着调式走。改前→改后实测:自然小调旋律C G F Am→Am G F Am;流行小调Am G F C(末小节配成大三和弦,最刺耳的那种错)→Am G F Am;同一旋律写在 1=FF C Bb Dm→Dm C Bb Dm;旋律含导音#5时属和弦取大三 →Am Dm E Am。大调结果一个不变(C F G C、副属和弦C D7 G C均原样),「大调歌偶然结在6」也不会被误判成小调。新增外部交叉校验:新套件tv_keytab拿第三方 MIT 音乐理论库 tonal 当「预言机」,逐调核对 12 个调的自然小调七级、和声小调属和弦与大调候选是否与权威表一致(仅测试期依赖,不进产品单文件,不引入任何运行时体积或许可负担);实测 12 调全对,唯 C#(7♯)/F#(6♯) 两调的字面拼写与学院写法有出入(本项目音名表不写B#/E#,属既有全局拼写策略,非本次引入),已在套件里如实标注为例外而非放行。顺带修一处长期误报:tv_chord2的简谱和音断言写死了font-size="12"字面量,字号早已改过(现主音 16.5、和音 14.5),改成几何断言(和音数字与主音同 x、y 更小=叠在上方)后恢复真实防护。tv_arrange10→14 项,51→52 套件全绿。 - v60.13混音台三件:S/M 点了看得见 · 每轨立体声声像 · 电平平衡(用户反馈:「增加立体声调节,分析电平平衡度,把响度调节到同一水平线。S和M点击时样式没有变化,分辨不出是否生效」):① S / M 点击终于有反馈——之前点了确实生效(独奏/静音是真的在起作用),但按钮外观完全不变,只能靠听。根因是播放坞的深色按钮样式选择器里带了 ID,优先级压过了高亮样式,把琥珀色/红色底整条盖掉了;同一个坞里节拍器的高亮一直正常,正是因为它的写法本来就带 ID。现已补齐,独奏亮琥珀、静音亮红。② 每轨新增立体声声像滑杆——此前各声部只是按固定规则自动左右铺开,用户改不了。现在混音台每轨在音量条右侧多一个声像条,读数显示
L70/中/R40;默认是「自动」,即维持原来的自动铺开,不改任何现有曲谱的听感;拖动即接管,双击滑杆回到「自动」。播放中拖动即时生效(与 S/M/音量同一口径)。③ 电平平衡:响度计量换成感知加权——采样入库时的响度归一原本按「不加权均方根 + 瞬时最大值」两项取小,这让不同乐器落不到同一条线上:一是不加权的均方根高估低频,同样数值的贝斯听起来明显比长笛轻;二是瞬时最大值对拨弦/击弦不公平——它们的起音是一根 1 毫秒的针,这一项先到顶,于是打击类整体被压在目标响度以下,长音类却正好落在目标上。现在响度按国际标准的 K 加权(ITU-R BS.1770,低频降权、高频略升,贴近人耳)来量,峰值约束改看 10 毫秒短时包络(针尖放行,真正决定听感与叠加电平的是包络),另加一道真峰兜底只防单样削波。合成信号实测:贝斯 / 拨弦 / 钢琴 / 长笛四类过归一后的感知响度离散度由 19.0 dB 收窄到 9.1 dB。最坏情况总线峰值 0.635、零削波(与改动前基本持平)。需要说明:本机取不到线上音色包(CDN 不可达),所以上面这组数字是用合成信号测的,真实采样包上的实际改善幅度尚未逐音色复核;另外贝斯这类低频乐器不可能与长笛做到完全等响(同样满刻度下低频的感知响度本就更低),残留差距属物理限制而非算法缺陷。新增 tv_balance 套件 8 项断言(S/M 高亮用「同一时刻比点亮与未点亮两个按钮」判定,绕开计算样式的陈旧读数;声像的自动/手动/双击复位;K 加权滤波器与规范理论值逐点吻合;离散度收窄幅度)。50→51 套件全绿。 - v60.12扫弦连音线改到六线谱上方(用户指示):v60.11 把这条弧画在谱表下方、符杠上方——那是为了躲开行内和弦图。本版按要求移到六线谱上方,跨过扫弦箭头。和弦图的位置冲突不再靠躲,而是让位:本行同时有和弦图与扫弦连音线时,和弦图带自动加高 14px 把整行往下推,弧就有了落脚处(沿用 v56.4 处理段落括线压和弦图时的同一套机制)。弧的基线取本列最高的墨再往上让 6px——下扫是箭头尖、上扫是竖线顶端、带切音点时是那个点,三种情况分别算,不会贴着箭头也不会飘太高。回归断言同步改判:由「落在谱表下方」改为「画在六线谱上方」,并新增一条让位验证——有和弦图时整行确实被下推 14px(这比拿和弦图的墨迹去比对稳,是可复算的证据)。tv_strumtie 7→8 项,50 套件全绿。
- v60.11扫弦「保持不重扫」终于能记了:整列扫弦可加连音线(用户反馈:「如何选中扫弦并设置连音线?这是扫弦中常用的技巧」):扫一下、下一拍不再扫、让和弦响满,这是民谣弹唱最基本的一个技巧,此前记不出来——查下来两层都不成立:① 数据层:给六线谱加连音线时,程序只把选中的第一个音连到最后一个音一条线。单音时这没问题,可扫弦一列是 6 根弦,结果就是从 1 弦斜穿到 6 弦的一条怪线(实测 6 根弦只有 1 根连上)。现在改为逐弦对位:每根弦连到下一列的同一根弦,整个和弦被延留——这才是 Guitar Pro/教材的记法。② 渲染层:扫弦列只画箭头、不画品位数字,压根不走画连音线那段代码,所以哪怕数据对了也一条线都看不见。现在为扫弦单独画:因为没有品位数字可依附,逐弦画 6 条弧既无处落脚也不合刻版惯例,整个和弦被延留时出版惯例本就是一条弧,故画一条,位置在谱表下方、符杠上方的空档里——扫弦的时值本就靠符干符杠表达,弧贴着节奏走才读得懂(放谱表上方会撞行内和弦图,实测撞了)。怎么用:按住鼠标框选要连的那一段(扫弦列的整个谱表区域都是热区),再点左栏记号里的「连音线」;只框一列也行,会自动连到本小节下一个有音的列;再点一次即取消。注意单击扫弦列打开的是「扫几根弦」菜单,不是选中——多选请用框选。新增 tv_strumtie 套件 7 项断言(逐弦对位/单列自动续接/开关语义/不破坏原有的两单音跨列相连/真的画出弧且只画一条/弧位几何:两端等高、落在谱表下方、恰好跨被连的两列),停用修复后 4 项转红。50 套件全绿。
- v60.10修上一版音质改动引入的两处倒退,并更正上一版的说明(v60.9 发版后对全部改动做了一轮对抗式复核,查出 4 条,其中 2 条是真倒退):① 播放结束和循环重播时会「啪」一声——弦乐、人声「啊」这类持续音色,v60.9 把它们的收音由 0.4 秒拉长到 1.6/1.8 秒,但进度条判定「播完」的余量仍是按老的 0.4 秒配的,于是在声音还剩约 10% 音量时就直接掐断了源,波形被阶跃截断即产生爆点。循环选区练习每一轮重播都会响一下,正是课堂与视奏最常用的场景。现在停播前先给总输出 12 毫秒淡出再停源——顺带把一个更早就存在的老毛病一起修了:手动按停止键、或播放中切换曲谱时,同样是硬切,同样会「啪」。② 「让余韵各归各的」在弹拨/键盘类音色上不但没生效,反而更短了——新的收音时长有一步「按剩余素材封顶」的保护(防止余韵长于采样本身),但这一步没有下限:真实排程里这类音符的时值恒长于采样(让它自然延音到底),可用余量只剩 55 毫秒,保护反而把收音从原来的 160 毫秒压到 55 毫秒,比改动之前更硬。现已加下限——装不下就交回原有的「把收音起点前挪」逻辑,任何情况都不会比 v60.9 之前更差。③ 更正 v60.9 的说明:上一条更新日志说「12 个音色的余韵逐一标定、收音时长按乐器走」,实际只有弦乐 / 长笛 / 人声「啊」这 3 个持续音色真正吃到了这份标定。另外 9 个弹拨/键盘音色因为排程口径的关系(让它们自然延音,时值恒长于采样),标定值在播放中不会生效——要让它们也用上,得先决定「一个音被下一个音接替时,该按乐器的自然余韵收,还是按现在的快速阻尼收」,这是个影响听感的取舍,留待确认后再动。八音盒的 3.5 秒余韵目前尚未在播放中体现,特此更正。验证:新增 2 项数值断言,都走真实播放代码再从波形反解出实际生效的收音常数(此前写过一版「在测试里把公式再算一遍」的断言,抽掉修复照样绿,等于没有防线,已改掉)——抽掉修复后两项均转红(0.0042 / 0.0067),装上修复后恢复(0.0504 / 0.02)。tv_audio 37→39 项,49 套件全绿。
- v60.9音质升级:逐音色收音时长 + 三个音色的弱奏不再被压暗(阶段二,标定来自成熟 GM 音源库的解剖):① 每个乐器的余韵长短终于各归各的——此前所有弹拨/键盘类音色共用一个收音时长(0.16 秒),持续类共用另一个(0.40 秒)。可这件事在真实乐器之间差着 17 倍:八音盒的梳齿根本没有制音机构,一拨就得响三秒半;电钢琴的音叉被毡片立刻压住,两百毫秒就没;长笛气一停音就断,人声与弦乐的收尾却最长。同一个数按下去,八音盒被拦腰砍断、长笛拖着尾巴。本版把 12 个音色的余韵逐一标定(数据读自 GeneralUser GS 的包络参数,与声学常识逐项吻合),收音时长按乐器走;同时按采样剩余素材封顶——素材有多少就响多久,物理上本也如此,不会为了拖长而把音符压成一条下降包络。② 八音盒 / 过载吉他 / 失真吉他的弱奏不再被压暗——引擎有一条「轻奏更暗」的规则(真乐器弱奏激励弱、高频泛音少),此前无差别套给所有音色,把这三个的弱奏高次谐波砍到只剩 14%,闷成一团。但这三个恰恰是力度只改响度、不改音色的:八音盒的梳齿由定形拨针拨动,重失真本身就是硬压缩器。音源库里它们的力度分层也印证了这点(滤波设置几乎不随力度变),两条独立证据同向,故本版让它们跳过这条规则。③ 一份没有落地的标定,也一并交代——本来打算把「力度→明暗」曲线也逐音色标定,最终没有采用:手上只有一个音源库有力度分层可读(另一个全库没有,无法交叉验证),而单库数据里电钢琴反而最不敏感、尼龙吉他比钢弦更敏感,两条都与公认声学相反,还有音色的分层是非单调的。一个库作者的口味不等于乐器的物理,证据不足就不动——其余音色的力度曲线本版维持原样。解剖工具与完整判据已随代码提交,换个音源库可随时复算。验证:新增 7 项数值断言(同一段合成采样、只换音色名,确保差异只可能来自标定表本身)——长余韵音色在写定时值结束后明显仍在响、短余韵音色同一时刻已收净、长余韵最终仍收净不拖到源耗尽、持平音色弱奏的高次谐波是走曲线音色的 3.3 倍、两张标定表的键名都是真实音色名(打错字会静默失效)。tv_audio 30→37 项,49 套件全绿。
- v60.8音质升级:持续音色无限延音 + 数拍预备(SF2/SF3 可行性报告阶段一落地):① 弦乐 / 长笛 / 人声「啊」现在能真正拖长音了——此前这三个音色的延音上限就是采样本身的长度(约 3 秒),谱面写全音符×4 也拖不住,一到头就得收,长音听起来总像被掐断。原因是采样包没有循环点元数据(专业音源格式自带、我们用的开源 MP3 包没有)。本版新增离线检测工具,把循环区间算了出来:在浏览器里用和运行时同一个解码器解 MP3(换别的解码器哪怕差几个采样,接缝就会「咔」一声),自相关求出基频周期,再把循环两端吸附到同向过零点、按整周期对齐,最后逐个量接缝的不连续度,只收录听不出接缝的。实测 264 个音收录 258 个(97.7%);没通过的 6 个(人声高音区气声成分重、周期性弱)自动沿用原来的收音方式,不会变差。循环窗长 2.5–3 秒,保留了音色本身的自然起伏,不是死循环一小段。② 新增「数拍」按钮(播放条,节拍器旁):起播前先打满一小节空拍作预备,首拍重音——学生跟弹、课堂示范、艺考视奏都需要这个进入点。与节拍器互相独立:只要预备拍、全曲不要拍点声是最常见的用法。数拍只影响试听,不改谱面、不进导出。验证:新增 8 项数值断言(离线渲染 + Float32Array 逐样本判定,不靠人耳)——循环音超出采样长度后仍在发声、抽掉循环点的对照组同一时刻已静音、接缝一阶差分无爆点、收音后残响持续衰减证明源确实停了(不会失控长鸣)、数拍段只有拍点没有乐音、乐音整体后移、末拍与乐音之间是安静空档。tv_audio 22→30 项,49 套件全绿。
- v60.7v60.6 深度复核修复批(发版后对全部 diff 做了一轮对抗式复核:21 条疑点经双人独立验证,14 条确认为真、7 条误报被拦下,本版全部修复):① 「N 段词」信息条上线即失效——服务端读的字段名
verses在曲谱数据模型里不存在(真实字段是lyricLines),恒为 0 导致该信息永不显示;现已改读真实字段,本地兜底分支一并补上。② 编辑器界面元素会被烤进公开缩图——出缩图前只清了 4 个选区全局,漏了整小节选中框(measureSel/measureRange,实测污染缩图 9.3% 像素、朱砂实色)与小节宽度拖柄 ◂▮▸/行尾按钮(meaHandleOn);另外借无吉他声部的谱出图后左栏页签会被永久切走(activeTab 未复原)。三者全部纳入保存/清零/复原清单,新增像素级断言:开关选区两次出图必须逐像素等墨。③ 换图后卡片吃一整天陈图——缩图 URL 恒定又挂 max-age=86400,重新发布后浏览器根本不发请求;现在 URL 带?v=缩图时间戳,换图即换地址,og 分享图同步;改谱重发后创作者中心会自动刷新过期缩图。④ WebP 魔数校验可被绕过——Node 的 ascii 解码抹高位字节(0xD2→R),伪造高位可冒充 RIFF/WEBP 把任意二进制存进图床;改为按整数逐字节精确比对。⑤ 缩图上传加闸:私有谱拒收(缩图只被公开接口消费,私有缩图是纯死重)+ 每用户每小时 40 次频控。⑥ 图未加载完时卡片白屏——.cc-shot的白底会提前盖死底层刻版骨架占位,撤掉白底让骨架真正兜底。⑦ 钢琴弹唱谱的调号信息条误写「1=F」,与钢琴独奏谱同为大谱表应写「F 调」。⑧ 手机启动台态出缩图裁切起点归零(display:none 下 getBBox 全 0),改读 rect 属性坐标,与布局无关永远可用。⑨ 每日备份改「先写临时文件、成功再原子改名」——原来先删旧快照再写新的,磁盘写满时当天备份直接归零;缩图进库后快照变大,这个次序隐患变成了现实风险。测试:tv_thumb 16→18 项、api/test.sh 126→131 项、tv_site 33 项随缓存戳更新断言,49 套件全绿。 - v60.6曲谱卡片换真实缩图 + 卡片瘦身 + 全站扁平化(用户反馈:「卡片应该是曲谱实例缩图,尺寸不用这么大,信息展示要完整直观;全站扁平化,按钮 LOGO 去掉阴影」):① 封面改真截图——过去卡片画的是按谱种伪造的「刻版骨架」示意图,看不出这首谱到底长什么样。现在发布时由制谱引擎渲染真谱面,跳过标题块裁出版心首屏(和弦图、六线谱品位、简谱数字、歌词一应俱全),光栅化成 2:1 的 webp 存到谱库,卡片直接当截图展示;分享到微信的 og 图也同步换成这张真谱面。老谱不用管——进创作者中心会自动补图,补图前仍由刻版骨架兜底占位,图没加载完/加载失败也是它顶上。安全上只收栅格不收 SVG(SVG 同源打开会执行内嵌脚本,栅格没有脚本面),服务端按文件魔数硬校验,且只有本人能给自己的谱换封面。② 卡片瘦身:列宽 230→186px,封面由定高改 2:1 定比(缩图永不拉伸变形),正文留白收紧;手机窄屏由单列改双列(此前单列配 150px 高封面,一屏只装得下一张半,翻找成本高)。③ 信息补全:卡片新增 调号 / 拍号 / 速度 / 小节数 / 歌词段数,配上曲名与「演唱 X · 制谱 Y」,不点进去就能判断这份谱能不能直接用。④ 全站扁平化:官网与制谱器一次性清掉 57 处立体投影声明(按钮、LOGO、卡片、弹窗、下拉、谱纸、工具带…,含
--shadow令牌本体),层次改由描边和底色区分;分隔用的内阴影和键盘焦点环保留——那是可用性不是装饰。⑤ 顺手修了两个导出老毛病:PNG 导出与分享卡里的强调色一直硬编码着改版前的蓝色(应为朱砂),且墨色取的是当前主题的计算值——深色主题下导出的图是浅墨压白纸,几乎看不见;现已统一按印刷色出图。新增 tv_thumb 套件 16 项断言(出图/借完即还/载荷格式/占位回退/瘦身几何/零投影),官网回归扩到 33 项,后端端到端 126 项,49 套件全绿。 - v60.2手机端制谱大改:工具栏乱码修复 + 信息架构重整(用户实测反馈「乱码、不符合操作逻辑」,产品/UX、UI、制谱三位专家交叉论证后落地):① 修「乱码」——时值按钮上那排空心方框不是编码问题,是字体缺字:全音符/十六分等用的是 Unicode「音乐符号扩展区」字符,手机系统字体不含该区段(四分 ♩ 与八分 ♪ 在基本平面,所以只有这两个正常,正是截图的样子)。现改用与谱面同源的 SMuFL 出版字形现拼(符头+符干+符尾),休止符、谱号、反复/段落/终止线、Segno、小节反复同批换掉,深浅色两套主题都已校色;桌面 Windows 同样缺字,故两端一起修。② 播放键点不到(用户还没遇到的隐性故障)——手机编辑态播放条被图层轨完全压住,播放/节拍器/循环全部失效,现已提层并让位。③ 顶栏从两条横滑收成单行:实测顶部两条工具带分别有 875px 与 1559px 内容塞在 390px 屏里(时值那条 75% 在屏幕外)。现在低频入口(新建/打开/保存/导出/排版/预览/打印/预设/谱库/移调/主题)收进顶栏 ☰ 抽屉,顶栏高度 93px→52px,两条横滑彻底消除。④ 时值条沉到拇指区:9 枚按钮等分铺满、不再横滑,触控高度 44px。⑤ 启动台清场:没打开曲谱时不再挂着三条编辑工具带(此前白占 145px,是「界面坏掉」观感的最大来源)。⑥ 智能编辑在手机上打通——新增顶栏「智能」抽屉,把原本在手机上被整体隐藏的右栏放出来:一键配和弦 / 一键配伴奏(旋律→和弦→双手织体)/ 哼唱成谱 / 智能填词 / 节拍检查 / 曲谱信息(拍号·速度·变调夹)全部可用。⑦ 六线谱在手机上转为「看 + 智能生成」:fit-width 后单弦间距不足 7px,指尖点不准,故手机打开弹唱谱默认落简谱/旋律层(原来默认落最不可编辑的六线谱层),点六线谱层会提示改用智能生成或到电脑端精修。谱面渲染、移调、播放、发布一切照旧。经此一版,手机上谱面可视高度从约 430px 提到 630px。新增 tv_mobile 几何断言 4 组(清场/单行顶栏/零重叠/图标无缺字/智能可达),全部为坐标与计算样式判定,不接受截图目测;48 套回归全绿,桌面端零改动。
- v60.0平台管理中心上线 + 曲谱发布改为审核制:① 平台管理中心进驻个人中心(www.puyouquan.com/me.html),仅平台管理员可见,含待审队列(预览谱面 / 通过 / 驳回并填原因)、已上架(一键下架)、用户管理(手机号或昵称搜索、改角色、发放与撤销权益)、审计日志(谁在什么时候做了什么,全部留痕);概览四格给出用户数、曲谱数、待审数与已支付订单额。② 角色体系扩为 普通用户 / 创作者 / 平台管理员三级,管理员天然含创作者权限;首个管理员只能在服务器上用命令行任命(
node admin.js set-role 手机号 admin),网页端没有任何自助提权入口,之后的管理员由现任管理员在管理中心指派,且不能取消自己的管理员身份。③ 发布改真审核流:创作者点「发布」后曲谱进入待审核(谱库暂不展示),管理员通过才上架;被驳回会带回驳回原因,在个人中心创作者中心与「我的云端曲谱」直接可见,改好再提交即可。管理员本人发布免自审、直接上架。④ 编辑器新增?review=曲谱ID审核预览深链,管理员可在观看模式下核对未上架的谱面。后端新增 7 个管理接口与审计日志表,端到端断言扩到 92 项,官网回归 28 项。 - v59.8修复:右键小节线菜单失灵(CI 门禁拦下的回归):v59.5 新增的「摇把」弹窗函数与既有小节线设置菜单重名,单文件中后声明静默覆盖前者——导致右键/长按小节线弹出的是摇把菜单,反复记号、跳转记号、分段线等设置整块无法使用。现已改名修复。同时给发版语法闸加了「顶层函数重名」检查,此类静默覆盖今后在本地与 CI 都会被直接拦截。
- v59.7哑音「点了没反应」修复(用户反馈):光标不在吉他谱声部(在简谱行/歌词行)或当前位置取不到列时,哑音按钮此前是静默失败——既不生效也无任何提示。现改为明确指引:「哑音 × 用于吉他谱声部——请先在六线谱上点选一个音符(或某根弦的位置)再点哑音」。同时把使用规则写进按钮说明:作用于光标所在的弦位——该弦有音符→变 ×(原品位记住,再点一次还原);该弦没有音符→在此弦落一个 ×;与「×标记」按钮同义;给扫弦箭头加点请用「切音」。
- v59.6技法图标统一与排序(用户指示):① 击勾弦图标改谱面写法——三个符头 + 两道连线弧、弧上分别标 h / p,一眼看懂是「击弦→勾弦」连奏。② 指弹技巧移到记号组最末。③ 图标全部改线性 SVG,不再使用 Emoji:摇把=摇杆+俯冲弧箭头,指弹=击板箭头+面板线+震动纹,与面板其他图标同一线宽与视觉重量。④ 「清除」按钮撤销——清除方式统一为「再点同一技法即取消」(谱面点音符的菜单里仍有清除项)。
- v59.5技法面板再收纳 + 新增击勾弦(用户指示):① 摇把——俯冲/上滑/下点/颤音 4 钮收成一枚「摇把」图标,点击弹窗选择。② 指弹技巧——打板·低/打板·高/击板 3 钮收成一枚「指弹」图标弹窗(作用于当前列)。③ 新增「击勾弦」连奏技法:Ctrl/Shift 选中连续几个音(如 5→7→5),一键按音高走向自动派工——升高的连接记击弦 h、降低的记勾弦 p,并自动连线成串,省去逐音判断;落谱仍是标准 h/p 记号,播放与导出不受影响。演奏技巧组由 14 钮精简到 12 钮。
- v59.3扫弦 · 琶音并入音符记号(用户指示):吉他谱左栏「记号」卡不再分「扫弦 · 琶音」「音符记号」两个子组——下扫/上扫/切音/上下琶音 5 个按钮前置并入音符记号组,与 ×标记/拍弦/延长号/连音线等同组排列,左栏分组更少、找按钮更快(功能与谱面记法不变)。
- v59.2左栏细节修正(用户指示批次):① 声部下方记谱法区标题改「显示」,按钮纯图标化——点击点亮生效,鼠标悬停显示中文说明。② 哑音图标改「圈内 ×」,与音符记号层的「×标记」按钮视觉区分(二者记谱相同,仅入口图标不同)。③ 扫弦「箭头−/箭头+」两钮删除——改箭头覆盖弦数直接点谱面箭头即可。④ 切音按钮图标的圆点移到箭头顶端正上方(与谱面画法一致,此前点偏在右侧)。
- v59.1左栏记号面板改造:收纳弹窗 + 记谱法点亮(用户指示批次):① 指法收纳——左手 6 钮 + 右手 4 钮收成两枚手形按钮,点击弹窗选指(Ⓣ①②③④⓪ / p i m a,当前值高亮,快捷键不变)。② 滑音/泛音收纳——滑弦与无头/无尾上下滑 5 钮收进「滑音」弹窗,自然/人工/拨片/点弦泛音 4 钮收进「泛音」弹窗;演奏技巧面板从 30+ 钮精简到 14 钮。③ 扫弦箭头修正:下扫/上扫按钮此前双重注入图标显示两个箭头,现恒一个。④ 记谱法移到声部下方 · 图标点亮式——吉他声部:六线谱恒亮,五线谱/简谱可点亮联排(同源自动互译:五线谱按调拼写、简谱按首调唱名翻译,新增 TAB+简谱联排行);旋律声部:简谱/五线谱可叠亮(双亮=五线谱+简谱行联排),已点亮再点可换谱号/谱表或关闭。⑤ 箭头长度调节等裸文字钮补齐图标,面板图标盒统一尺寸基线。
- v59.0个人中心独立页面 + 全站移动端深修(UI 设计专家 + 两组移动端审计专家实测策划):① 编辑器个人中心从弹窗升级为独立页面——整页布局:常驻身份页头(头像/昵称/创作者徽章/云同步状态/官网个人中心直达)+ 左侧导航(我的曲谱 / 创作者中心 / 我的权益 / 个人资料,工作台心智曲谱在前)+ 卡片化内容区;地址栏
?pc=页签可刷新可收藏,浏览器返回一步回到制谱器,Esc 同效;手机上导航变吸顶胶囊横滑、触控目标 44px。② 自定义节奏型下线(本机模板数据原地保留不清除)。③ 手机制谱可用性深修(实测发现桌面框架规则在窄屏压过手机适配规则):修复谱面纵向滚动死锁(此前第一屏以下不可达)、启动台入口落回首屏、左栏图层轨改为屏内底部横滑抽屉、编辑栏改单行横滑(清音/高把位钮不再被裁出屏)、放大后可横向平移看右半幅、导出弹窗按钮不再向左甩出屏、按钮触控高度提到 38px+;观看页「放大 115%/135%」在手机上真正生效。④ 官网移动端修正:顶部导航四项完整可见(此前大半被裁且无滑动暗示)、登录弹窗在键盘弹起后可滚动触达按钮、输入框 16px 不再触发 iOS 自动放大、首页工具卡不再逐字竖排、个人中心长曲谱名不再撑破页面横晃、常见小按钮触控热区全面加大。 - v58.9个人中心大升级:统一入口 + 换头像 + 创作者中心(3 位专家 agent 联合策划):① 制谱与看谱共用一个个人中心——www.puyouquan.com/me.html 统管「我是谁」(账号资料/头像/会员/创作者身份/云端曲谱/收藏),编辑器个人中心专注「我在做什么」(发布管理/节奏型模板/已购),编辑器账号页头像与「个人中心 ↗」一键直达统一页面,绑定微信/退出所有设备等账号操作集中到统一中心不再两处维护。② 支持更换头像:点击头像即换——8 个四族社色预设(吉他朱砂/钢琴墨蓝/人声墨绿/功能赭金 × 乐器图标),或上传本地图片(自动裁成正方形、压缩存云端,全端同步显示);选即生效零确认步。③ 成为创作者 / 创作者中心:普通会员在个人中心一键免费开通创作者;开通后原位变身创作者中心——已发布曲谱计数与列表(直达谱库观看页)、「去编辑器发布」深链直落编辑器创作者页签;编辑器创作者页签同步瘦身,删掉演示性的数据看板/收益设置/体验认证,保留发布管理与版权存证两件真功能。
- v58.8官网 UI 大升级:「智能曲谱平台」(slogan 定案,4 位专家 agent 联合策划):① 曲谱卡片刻版化——每种谱种长出真实刻版骨架:六线谱 TAB+品位数字、简谱数字+八度点、大谱表花括线+高低音谱号+符头、和弦框图按点;四族出版社色(吉他朱砂/钢琴墨蓝/人声墨绿/功能赭金)只染封面洗色与印章,音乐内容永远墨色;hover「谱面苏醒」微动效 + 进场渐次浮现 + 加载骨架屏。② 全站降噪:页脚 5 列 20 链砍为两行 7 链(slogan+备案保留)、首页删「看谱三件事」/FAQ/重复制谱条、工具带 4→3 格下移让位卡片流、免费角标撤除。③ 智能可感知:「最近看过」回访置顶一行、「上新 N 首」徽章、搜索占位轮播。④ slogan 落位 h1/浏览器标题/导航/页脚/微信分享卡,全站文案统一口径。
- v58.7官网大改版:曲谱搜索网站 + 独立个人中心(产品定位拍板:整站以找谱为第一任务,制谱是其中一个工具):① www.puyouquan.com 首页改为搜索型首页——大搜索框即时本地过滤、谱种快捷筛选(空分类自动隐藏)、谱库卡片流全量展示 + 加载更多、工具带四入口(在线制谱/智能配伴奏/考编艺考/帮助);原营销内容迁入「制谱」介绍页;谱库域 puku 根路径并入主站(观看页 kanpu 分享链接不受影响)。② 个人中心升级独立页面(导航头像直达):账号资料/会员状态/我的云端曲谱/我的收藏/绑定微信/退出等一站集中,未登录时整页居中登录卡(含微信登录)。③ 全站移动端适配:380px 无横向滚动、搜索框 50px 大点击区、筛选单行横滑、卡片单列、手机端制谱入口先进介绍页(编辑器电脑体验最佳,一键复制链接)。
- v58.6微信内登录通道校准:公众号「一键登录」需认证服务号(订阅号后台没有「网页授权域名」设置项,授权必报 10003)——本站公众号为订阅号,该通道默认关闭不再误导;微信内置浏览器里的登录回落扫码通道,按钮下提示「点击后长按页面上的二维码即可识别登录」(同一部手机扫不了自己的屏幕,长按识别是微信内标准做法)。将来若启用认证服务号,服务器加一个开关即可恢复一键登录。
- v58.5观看页驻谱库域 + 记谱风格随曲谱走:① 分享观看页整体搬到 puku.puyouquan.com——落地页自动进入
puku.puyouquan.com/kanpu.html?pub=曲谱ID,地址栏全程谱库域名不再跳转制谱域名;谱库卡片、落地页「在线观看」同步指向新地址。② 记谱风格存入曲谱:编辑器切换「教材式 ×/全数字」现在会写进当前曲谱(可撤销、随保存/云同步/发布传递)——分享出去的观看页按制谱人选定的风格显示,不再回落观看者本机默认;老谱未存风格时仍按本机偏好。 - v58.4微信生态反馈批次:① 官网/谱库登录弹窗补上微信登录——微信内置浏览器里走公众号网页授权一键登录(免扫码),微信外走扫码登录,与手机号账号经 unionid 统一;编辑器登录/绑定入口同步按环境自动选通道。② 手机版官网头部「登录 / 注册」按钮不再被挤成竖排溢出。③ 微信转发卡片链接统一为 puku.puyouquan.com/pub/曲谱ID 谱库落地页;分享观看页(
?pub=深链)启动遮罩保持到谱面就绪,不再闪现一下编辑器界面。④ 观看页「收藏」图标由桃心改为五角星(更符合收藏的通用认知,已收藏亮琥珀色实心星);「设置」齿轮图标改为真齿形轮廓,更易辨识。 - v58.3手机号账号绑定微信:个人中心(已登录且未绑微信时)新增「绑定微信」入口——跳微信扫码授权后,该微信身份直接落到当前手机号账号上(不建新号、不动登录态),资料卡显示「已绑定微信」,此后可用微信扫码直接登录本账号。安全口径:绑定目标 uid 由服务端 HMAC 签入 state(防伪造/防换绑),该微信已被其他账号占用时提示冲突不抢占。
- v58.2记谱风格双模式对称互切(用户反馈:v57.9 后切不回 × 教材式):「记谱风格」恢复为两种完整模式一键互切——教材式:与当前和弦指法一致的开放把位实音显示 ×(和弦内音记法),× 输入亦显示 ×;全数字(现为默认):实音显示品位数字、× 输入按指法解析显示品位——输入什么看什么、0 品可见(v57.9 诉求默认成立)。两模式仅切显示,谱面数据不变。
- v58.1微信转发卡片美化(转发卡片已随公众号配置打通;用户反馈样式需美观直观):卡片标题改为《歌名》谱类(如《茶花开了》弹唱谱,一眼知道是什么谱);摘要重排为「1=调 · 变调夹 · ♩=速度 · 制谱人|谱友圈在线看谱 · 可播放 · 可移调」;缩略图换 512×512 朱砂品牌方图(原用官网 og 横幅,微信裁成方块后文字模糊);朋友圈卡片标题缀「· 谱友圈」品牌。
- v58.0标注功能上线(用户需求):右栏信息页「曲谱信息」下方新增「标注」卡——固定标注提供常用词一键标注(前奏 / 间奏 / 尾奏 / 副歌 / 慢起 / 渐慢 / 渐快 / 原速 / 自由地 / 扫弦 / 分解 / 加花),自由标注可输入任意文字(回车或点「标注」);标注落在当前光标列上方(斜体小字,TAB 与技法字母同带堆叠避让、简谱/五线谱行置行上方),再次标注即覆盖、「清除当前位置标注」移除;支持撤销、随曲谱本地保存与云同步,MusicXML 导出为 words 记号(简谱与 TAB 声部)。
- v57.9TAB 显示严格跟随输入:输入 0 不再被记成 ×(用户反馈:编辑 0 时出现 × 标记、无法显示 0 品):此前教材式模式会把「与当前和弦指法相同的真实品位」自动替换显示为 ×——输入 0(或指法内任何品位)就看不到数字。自 v57.1 起 × 已可直接输入并按指法解析为和弦内音,这个自动替换废除:输入数字显示数字、输入 × 显示 ×。「记谱风格」切换含义更新:全数字模式下 ×(和弦内音)显示为按指法解析出的品位数字(谱面数据不变,仅显示切换)。
- v57.8技法圆滑线同款短弧(用户反馈:普通连音线已对但带演奏技巧时还是旧样式):击弦 h / 勾弦 p / 滑弦 S / 点弦 T 的两音圆滑线改与简谱短连音线完全同款——端点取两音中心、平基线抬到音符上方、弧高随跨列缓增(此前是贴着音符边缘的小弧);技法字母从顶部标注带移到弧顶上方(教材式,字母带纸底描边不压弦线),跨行出线半弧同步抬高。揉弦/P.M./let ring 等范围技法与推弦保持原样。
- v57.7连音线短弧 + 和弦图避让修正 + 启动遮罩(用户反馈三点):① TAB 连音线弧高完全对齐简谱短连音线——相邻两音为 9px 短弧、随跨列缓增(此前统一 15px 封顶偏高偏圆);② 和弦图避让缩小规则修正:技法字母(h/p/S 等)自 v49.6 起全部画在 TAB 顶部标注带、与行内和弦图同一高度带,但避让判定还停留在「仅一弦技法」——现在任意弦的技法字母与和弦图横向重叠都会触发和弦图缩小让位;③ 启动遮罩:单文件较大时加载期会闪现未初始化的乱版界面——现以品牌遮罩盖住、初始化完成后淡出(含 8 秒兜底自拆,异常也不至于卡住)。
- v57.6TAB 增时线居中 + 连音线对齐简谱规则(用户指示两点):① 增时线固定在六线谱垂直居中位置(三、四弦之间的空隙),不再随音符弦位变动,每列一组;② 六线谱连音线样式与简谱统一——弧画在音符上方居中:端点取首末音符中心、平基线抬到较高音符上方留净距、弧高随跨度缓增(同简谱公式),跨行两段式半弧同步抬高。
- v57.5TAB 增时线位置修正(用户指示:吉他谱的增时线显示在六线谱中间,不是六线谱下面):v57.4 的增时线从谱表下方节奏梁位移入六线谱内——跟在音符后、压在其所在弦线上的短粗横(和弦长音每个发声音符的弦各画一组),拍点对齐不变;附点补记圆点同步移至弦线上方。
- v57.4吉他谱二分/全音符增时线(用户反馈:TAB 上二分音符只有一根符干、与四分音符没有区别看不出延长):按教材/GB 惯例(同简谱
X –),TAB 的二分音符在其后每个四分拍位的节奏梁位画增时线短横——二分 1 条、附点二分 2 条(附点时值并入横线、不再另画附点圆点,同简谱口径)、全音符 3 条(无符干);横线拍点与简谱增时线 / 邻行音符列严格纵向对齐(全声部同源拍点映射);双附点二分余下半拍以附点补记于下一拍点;休止不接增时线。tv_dot 新增 T11 几何断言。 - v57.3创作栏卡片样式统一(用户指示):创作页三个栏目(当前编辑位置 / 编辑模式 · 时值提示 / 创作辅助)改为与信息页「曲谱信息」同款标准卡片样式——带边框卡片 + 标题栏,点击标题可展开 / 收起(默认展开);创作辅助卡内的重复大标题行由标题栏承担。
- v57.2创作栏栏目主题(用户指示):此前创作页卡片标题被整体隐藏、栏目无主题——现恢复显示并定名:光标信息栏目主题为「当前编辑位置」;自由编辑 / 智能编辑开关与时值提示同属一个栏目,主题为「编辑模式 · 时值提示」(原「节拍检查」),准确覆盖栏目全部内容;创作辅助卡保持自带卡内标题。
- v57.1弹唱谱 × 记号=和弦内音实音化 + 琶音/扫弦按指法补全和弦(用户反馈:女儿国——G 和弦 1 弦的 × 应是 3 品实音而非哑音;结尾下琶音五线谱只显示一个音):弹唱语境(非独奏、有和弦)下,TAB 弦上的 × 按教材惯例是「按住和弦弹这根弦」的和弦内音记法——现在关联五线谱按当前和弦指法显示实音高(G 和弦 1 弦 × → 3 品 G),播放/MusicXML/MIDI 导出同步发实音(此前播放为哑音、MIDI 导出直接丢音);扫弦/琶音箭头覆盖而无音符的弦按指法自动补全——单音上做下琶音即整个和弦发声、五线谱显示完整柱式和弦。哑音原义保留:拍弦 ⊠ 列、切音列(节奏型库切音现打 mute 标记并在 × 上方加切音点,同扫弦切音「箭头带点」口径)、扫弦列内的 ×(GP 闷弦惯例)与独奏谱不受影响。光标卡的 × 同步显示「和弦内音(弦/品)」。
- v57.0反复结束线刻版修正(用户截图:六线谱的线冒出反复结束线):六线谱与五线谱的反复结束 𝄇 / 终止线 𝄂 的粗线右缘改为与谱线终点严格齐平——此前粗线右缘差谱线端约 1px,放大或打印时谱线会从反复号右侧探出一小截;圆点与细线按原间距同步右移,出版惯例(谱线止于终止粗线)达成。
- v56.9连音弧与普通连音线样式统一(用户截图:三连音括线一头压到高音点):简谱/五线谱的三连音、N连音弧线改用与普通连音线完全相同的样式与显示规则——同款两端细尖弧形、端点落在首末数字中心、弧高随跨度缓增;简谱基线与连音线同口径并按组内高八度点自动抬升让位(此前固定高度会压到高音点),五线谱仍取组内最高音上方。连音数字改置弧顶中央断口处(N:M 自定比例同步显示)。六线谱保持 Guitar Pro 式刻度括线不变。
- v56.8三连音编辑修复:Ctrl+点选多选可直接成组(用户反馈:4/4 简谱选中三个四分音符点三连音无效):此前只有拖选的选区能整体设连音,Ctrl+点选的红圈多选被忽略、误落到单音拆分。现在两种多选方式都可以:选中相邻、等时值、无附点的 N 个音(同声部同小节)点「三连音/N连音」即整体成组——如三个四分音符=四分三连音(占 2 拍)、三个八分=八分三连音(占 1 拍);选中不连续或时值混杂会明确提示规则。简谱/五线谱/六线谱三谱类通用,括线数字、节拍校验、播放时值、MusicXML 3:2 往返均已验证(tv_tuplet 新增 5 项回归)。
- v56.7光标位置卡精简(用户指示):去掉「可改」快捷键提示行,只保留 声部/小节/列/时值/音符/和弦/多选 等位置与内容信息。
- v56.6右栏改版:创作页置首 + 自由/智能编辑开关(用户指示):① 右栏页签改为「创作·信息」,创作页为默认页;② 创作页原「智能预提示」卡移除,改为光标位置+节拍检查+创作辅助——编辑时光标信息与时值状态一眼可见;③ 节拍检查卡顶部新增自由编辑 / 智能编辑开关:自由编辑=任意时值与形式编辑曲谱,只提示各小节时值正确与否(可点击定位),不给修复建议;智能编辑(默认)=时值不符时给出补充/删减修复建议,支持单条与全部一键采纳。选择记忆在本机。修复建议列表随卡内联展示,不再悬浮谱面右上角。
- v56.5播放功能优化(用户反馈):① 音轨 S(独奏)/M(静音)/音量 在播放中切换即时生效——此前音量等在起播时一次算死,播放中按了没反应;现在收敛到各轨总线增益(平滑过渡无爆音)。② 播放光标升级:默认为整谱光标——高亮条纵向贯穿本行所有声部(此前只罩吉他行);单独 SOLO 某轨时光标只跟随该轨,滚动也按该轨行定位。③ 顺带修复:静音吉他轨后播放光标整个消失(光标事件此前挂在吉他轨排程里)。新增 tv_mix 播放混音回归套件(7 断言)。
- v56.4段落括线不再与和弦图重叠(用户截图反馈):吉他谱行内和弦图模式下,1/2 房段落括线、排练标记、Segno/Coda 跳转记号画在六线谱上方的记号带里,与同一行的和弦图(底缘更低)发生重叠——现在同一行两者共存时和弦图带自动加高,把括线/标记让到和弦图正下方、六线谱上方的空档,互不相压;没有共存的行不加高,版面不变。新增几何回归(tv_sign T15)。
- v56.3倚音连接线定稿:固定线径弧线(用户指示两轮):简谱倚音与主音之间的连接线由直角折线改为小弧线——从倚音组下方弯到主音腰部、弧深为弦长的 1/5(开口朝上、凹向主音),并按第二轮指示采用固定线径描边(0.9,与原折线同线重),不用两头细尖的连音线形。原有避让逻辑不变(减时线越多、低八度点越多,起点自动下移);前倚音/后倚音、单音/多音倚音组全部生效。几何回归 tv_grace T16:无直角折线 + 固定线径 0.9 + 弧深=弦长/5。
- v56.1跨行连音线两段式续接(用户反馈优化):连音线的目标音被排到下一行时,按出版惯例画成两段半弧——行末从起音画「出线半弧」并止于行尾小节线内(此前弧线戳出小节线约 10px 悬在页边),下一行行首新增「进入半弧」连到目标音(此前新行完全没有续接,连音线看起来断头)。简谱、五线谱(含钢琴大谱表)、吉他谱 TAB(连音线 tk)三类记谱同步修正;同行内的跨小节连音线行为不变。新增跨行连音线几何回归 3 项(tv_sign T13a/T13b/T14)。
- v56.0增时线一键延长(用户需求:简谱里给主音加两拍延长拍应像打横线一样简单):时值组新增「增时线」按钮(快捷键 D)——点一下当前音延长一拍:1拍→2拍→3拍→4拍(简谱按国标画增时线「-」,不再需要换算成「2分+附点」);延长所需的时值自动从其后的休止吸收(整拍休止直接吃掉、长休止精确缩短),小节总时值始终保持正确;后面是音符或本小节腾不出位时会明确提示(跨小节延音请用连音线)。Shift+D 反向缩短一拍,腾出的时值原位补休止。同一操作在所有谱类通用:简谱行画增时线、五线谱行落成二分/附点二分/全音符、吉他谱 TAB 行同步时值。
- v55.9Guitar Pro 全版本导入(用户拍板 P2/P3):在 v55.8 的 GP7/8 基础上,补齐全部旧版本格式——.gp3 / .gp4 / .gp5(2000 年代经典二进制格式,国内曲谱站存量 GTP 的主力)与 .gpx(GP6)。同一个「导入 Guitar Pro」入口自动识别版本:GP6 的 .gpx 容器解压后走 GP7/8 同款解析;GP3/4/5 按逆向字节布局逐段解析(小节头/音轨/双声部/和弦图/混音表等变长结构完整跳读,失步立即报错不产出错谱)。识别内容与 .gp 版一致:品位/和音/时值/连音组/变拍/反复/段落/调号速度变调夹/击勾滑推泛闷延颤/倚音/连音线/和弦名;GP5 双声部取主声部。老文件中文乱码免疫:GP3/4/5 时代中文多为 GBK 编码,UTF-8 解不动时自动回退 GBK,曲名歌手名不再乱码。
- v55.8导入 Guitar Pro(.gp)(用户拍板 P1):新建向导「已有曲子」组新增导入 Guitar Pro——支持 GP7/GP8 的 .gp 文件,选择音轨(最多 3 条,各成一个六线谱声部,打击乐轨自动跳过)后直接进编辑器,可二次编辑、三记谱法互切、发布到谱库。识别内容:多轨品位/和音/休止、时值/附点/连音组、变拍子、反复记号、段落标记、调号/速度/变调夹/特殊调弦、和弦名、击勾弦/滑音/推弦/自然与人工泛音/闷音/延音/颤音、倚音、连音线;多声部取主声部、暂不支持的记号计数提示。老格式 .gp3/.gp4/.gp5 与 GP6 的 .gpx 暂不支持(请用 GP7/8 另存为 .gp)。顺带解锁压缩 MusicXML(.mxl)直接导入(此前须解压另存)。解压引擎为零依赖纯 JS 自研,文件在本机浏览器内解析、不上传。
- v55.7微信分享卡诊断开关(配合公众号 JS-SDK 配置排障):谱页链接加
?wxdebug=1(已有参数则加&wxdebug=1)后在微信里打开,会逐步弹窗显示分享卡链路每一环的结果——①签名接口是否成功及使用的 appId、②微信是否接受签名(失败会给出 invalid signature / invalid url domain 等具体原因)、③分享内容是否注册成功。正常访问(不带参数)行为不变,配置未就绪时仍静默回退微信默认卡片。 - v55.6分享观看页改版:页首指法/变调夹/拍速 + 底栏 ⚙ 设置(用户参考 GTP 排版拍板):①页首重排——左侧三组可点数值:指法(当前调,点开 ♭/♯ 升降调、点读数还原原调)、变调夹(点开 −/+ 调品位 0–12,播放音高同步,移调后仍保留)、拍速(点开推子浮层,播放中即时变速);右侧只留三个圆形图标:收藏 ♥ / 分享卡 / 谱库主页;原标题(谱面自带)、谱库、去制谱按钮移出页首。②底栏新增 ⚙ 设置:显示效果(谱面缩放三档 + 谱架模式)、打印 / 导出 PDF、成为创作者(免费制谱入口)——设置内容后续会持续扩充。三处调节都作用在观看副本上,不改动原谱。
- v55.5速度推子改为点击弹出(用户反馈:常驻推条太占空间):手机观看页底栏不再常驻速度推条,改为紧凑的 ♩=92 速度按钮——点击才弹出推子浮层(播放条正上方深色圆角面板:推子 + −/+ 每次 1 BPM 微调 + 大字读数),拖动实时跟手、松手生效,播放中即时变速;点浮层外任意处收起。底栏腾出的空间让 播放/回开头/▦/速度/节拍器/音轨 六个控件等距铺满一行,版面更清爽。
- v55.4手机观看页播放条 2.0:速度推子 + 音轨回归(用户拍板):①底部速度设置改为推子(滑杆)形式——♩= 读数实时跟手,松手生效并写回曲谱,播放中拖动即时变速(谱面速度同步更新);②去除播放倍速功能(速度由推子一处掌管,不再有两套速度叠乘);③音轨功能加回——🎚 打开音轨面板可静音/独奏/调音量/点小节格循环,面板按手机宽度重排(轨名与按钮一行、音量滑杆与小节格通栏),竖屏不横向溢出;④底栏布局与配色随之升级,仍一屏放下、免拖动。
- v55.3微信转发出自定义卡片(JS-SDK 接入):在微信里打开谱页后点右上角「…→发送给朋友」,卡片显示曲名·谱友圈 + 作者/调号/速度摘要 + 品牌缩略图(接入微信官方 JS-SDK 自定义分享;朋友圈同步支持)。需在公众号后台完成:已认证公众号、域名加入「JS接口安全域名」、服务器配置公众号凭据——未配置时自动回退微信默认卡片(页面标题+截图),不影响使用。注:微信聊天里直接粘贴的裸链接任何网站都只显示文字链,卡片来自微信内打开后转发。
- v55.2打开页面不再闪现经典版 · 经典版界面退役(用户反馈+拍板):打开制谱页时闪过的错乱布局是经典版界面的首帧——新版外壳此前由页面脚本加载完才挂上,脚本执行前浏览器先按经典版画了一帧。现在页面首帧直接以新版外壳渲染,不再闪现;同时按拍板移除「经典版」切换入口,界面恒为新版外壳(历史保存过经典版偏好的也统一回新版)。
- v55.1六弦数字不压时值线 + 手机端速度/倍速回归(用户反馈):①六弦(最低弦)上的品位数字与下方时值符杠重叠修复——16 分双杠的第二层此前几乎贴着数字(实测只差 0.2px),现在最低弦有带符杠的音时,符干区按符杠层数自动下移,8/16/32/64 分全档数字与符杠净距 ≥3px;②手机分享页底部速度设置与播放倍速加回(紧凑版:速度输入收窄、节拍器改图标),谱架/小节进度条/音轨维持去除,播放条仍一屏放下。
- v55.0手机观看页精简 + 无声追修(用户拍板):①手机上打开分享曲谱时,谱架(顶栏与播放条)、小节进度条、倍速、音轨、速度输入全部去除——保留 ▦ 展开小节(循环选区走小节面板,面板宽度适配手机),精简后的播放条一屏放下、无需横向拖动;②微信 iOS 播放无声追修——播放期间维持一条循环的静音音轨,把系统音频会话钉在「媒体播放」类别,iPhone 侧边静音拨片不再压掉播放声音(此前静音拨片开着时 WebAudio 会被系统整体静掉,这是微信里最常见的无声原因);起播 1.2 秒后若检测到引擎仍未运转,会弹出可操作的提示(检查媒体音量/静音拨片)。
- v54.9手机分享页五连修(用户反馈:微信打开谱库链接的问题清单):①观看页不再漏出编辑光标——红色弦位圈、光标列高亮、红色段序号全部熄灭(观看模式只读,不该有编辑态);②顶栏移动端重排——第一行返回+标题(超长截断)+移调,第二行收藏/分享卡/谱架/去制谱等宽排满,不再拥挤错位;③底部播放条让出 iPhone 圆角/横条区(安全区适配,小节数不再被裁);④微信 iOS 播放无声修复——音频解锁改为「重试直到真正就绪」(此前首个滚动手势会误标已解锁)、按微信官方口径在 JSBridge 回调内解锁、播放时检测到音频上下文被系统卡死则就地重建(已加载音色不丢)。
- v54.8吉他谱与简谱净距加底线(用户反馈:换页后行距问题再现):v54.7 修了连音线漏计预留,这次修更深一层的基线问题——TAB 下方的符干区与小节号是固定像素,但行距/疏密系数会把这段间隙等比压缩,没有任何预留记号(连音线/倚音/高八度点等)的行就会顶到一起。现在 TAB 块与简谱行之间有不随压缩系数缩小的净距底线(默认净距同时加宽 5px,达到出版口径),任何行距设置、任何页、任何记号组合下都不再贴死。
- v54.7连音线计入行距(用户反馈:同页两行行距不一致,一行简谱与吉他谱之间没有间隙):根因是简谱连音线/圆滑线的弧从未计入行距预留——弧画在数字整体上方(近期又抬高留净距),但只有连音线、没有倚音/高八度点等其它记号的行不会加高行距,弧和数字一起顶到上一行吉他谱底下;带倚音的行恰好因倚音预留了空间而显得「正常」。现在连音线同样按需预留上方空间(跨多列的长弧预留更多),同页各行行距回归一致;五线谱行的连音线贴符头、不占行高,不受影响。
- v54.6选区隐藏光标圈 + 粘贴插入/替换(用户反馈+需求):①区域选中(列/拍/音轨小节格)时不再显示红色弦位光标圈与光标列高亮——选中态只由整块色块表达,取消选区后光标恢复;②粘贴增强:复制小节内容后点击小节线再 Ctrl+V=在小节线后插入(整小节/声部段剪贴板均可,原有小节自动顺延);选中一块区域再 Ctrl+V=从选区起点替换(选区优先于光标位置,小节数不一致时按剪贴板长度替换并提示)。
- v54.5选区色块连成整块(用户参考 GP 截图拍板):列/拍/小节区域选区由「逐列小条带+虚线框」改为一整块连续色块——覆盖选中范围的整行高度、跨小节不断开(首末列在小节边界时贴到小节线),与 Guitar Pro 拖选的蓝色选块同款视觉;音轨小节格选中同步生效。
- v54.4列/拍选改为区域选区(GP 式)(用户参考视频拍板):列拖选、拍区拖选、Shift 扩选与音轨小节格选中,谱面只显示整块区域高亮(同 Guitar Pro 的蓝色选块),不再给范围内音符逐个画圈(撤 v53.8);技法、指法、推弦、连音线、力度括线、八度括线等按音符的批量操作在点击时自动把选区展开成音——区域选中后直接点面板按钮即可批量套用,行为不变、谱面更干净。空白处拖圈(marquee)与 Ctrl 逐音点选的真框选保持原样(仍画圈、优先生效)。
- v54.3播放轨道面板重设计(用户反馈:样式配色问题):①音量条收窄为自绘滑杆(细轨+填充色+圆钮,浅色/深色播放坞双主题适配),不再是占满整行的系统蓝色原生滑杆;轨名/分组标/音色下拉在深色坞里配色同步修正。②每条轨道新增小节格——横向排满全曲小节(带编号),点击某格=光标跳到该轨该小节(该小节整段进入声部选区,复制/批量编辑直接可用)并设为单小节循环播放;按住拖过多格=多小节循环选段;再点同一格取消循环。与下方进度条循环选区双向同步。
- v54.2连音线留距 + 段序号到歌词起始位(用户反馈):①简谱连音线/圆滑线不再几乎贴着数字——基线整体上提,与数字顶端保持约 4px 净距(歌本口径),高八度点让位不变;②多段歌词的段序号改标在该段歌词起始字的左侧(不在行首)——每段在自己开唱的位置标注,第二段从中途小节开唱时序号也跟到那一行那个字前,点击选段功能不变。
- v54.1增时线不再压小节线(用户反馈:延长号与小节线重叠):长音末尾的延长横线所在拍若在吉他谱/五线谱里没有音符(如半音符跨到行尾),该拍此前会收缩到最窄、横线被挤到小节线上——现在每条延长横线在布局里占有自己的拍位空间(与真实音符同权撑开空拍),并加右边界保护,任何压缩下横线都不越过小节右内边距。
- v54.0歌词段序号归位 + 选中歌词直接编辑(用户需求):①多段歌词的段序号只标在歌词最前面(首行行首,歌本惯例),不再每一行谱都重复一遍;②点击任意歌词字即选中(描框高亮)并弹出编辑浮条——前移/后移(此字与后续字整体挪一个可唱音,遇到空位自动吸收截止,只动当前乐句)、空格(仅置空此音位,其余不动)、删除(后续字前提补位)、替换(弹窗改字,多字/英文单词均可;选中后直接打字也是替换);全部操作跳过休止与连音延续音、可 Ctrl+Z 撤销,后移把末尾字挤出时会提醒。
- v53.9简谱增时线对齐拍点(用户反馈:简谱延长符号也要对齐吉他谱/五线谱的每一拍):二分/全音符等长音的延长横线「–」不再在列内均分——每条横线画在它代表的那一拍的拍位上,与上方吉他谱/五线谱同一拍的音符列严格纵向对齐(全声部共用同一张时值→宽度映射,拍宽不均时也对得上);双附点长音的补记附点同样落在对应拍位。
- v53.8列/拍拖选联动框选音符(用户反馈:列选的时候不出现框选音符):音符列拖选、拍区拖选与 Shift 扩选松手后,范围内的音符自动进入框选态——每个音符出现圈选标记,技法/指法/时值等按音符的批量操作直接可用,与空白处拖圈框选行为一致。按住小节号连选整小节、Ctrl+点小节线连选声部段仍保持小节级语义(复制粘贴整段),不转框选。
- v53.7拖动选中节拍/小节 + 全粒度复制粘贴(用户需求):①按住小节号拖过多个小节号=整小节连选(跨全部声部,虚线高亮),Ctrl+C 复制整段、光标移到目标小节 Ctrl+V 粘贴——覆盖同数量小节、不足自动补建;②按住拍区拖过多拍=按拍连选(对齐拍边界、可跨小节),配合组合时值/连音/技法批量套用;③音符列拖选的片段现在也能 Ctrl+C/V——列级片段从光标位置顺延覆盖粘贴(跨小节,到曲末自动截断提示);Ctrl+点小节线连选的多小节声部段则按小节替换粘贴。原有单小节/单声部复制粘贴不变。
- v53.6简谱短连音线按歌本标准重画(用户反馈 v53.5 短弧过小近不可见):找到两轮反馈的共同根因——弧线端点此前挤在两个数字之间的空隙里(相邻十六分音符只剩几个像素的缝),弧怎么调都不对。现按专业制谱标准:弧横跨首末两个数字整体上方(端点落在数字中心),弧高固定在清晰可见的档位(短弧约 6px、随跨度缓增),与出版歌本样式一致。
- v53.5横按圆点 + 简谱连音线形状修正(用户反馈):①和弦图大横按改用逐弦黑点表示——F/Bm 等横按和弦不再画大黑线,每根按弦一个圆点,与分指按法视觉统一;②简谱短连音线不再「^ 尖拱」——弧高改为随跨度比例给(上下限钳制),相邻两音的小连线呈扁平小弧(GB 惯例),长连音线弧高同步封顶;连音线基线自动让过高八度点(此前会压点);五线谱连音线短弧同款钳制。
- v53.4页头点击直改 + 变调夹联动简谱(用户需求):①谱面页头元素全部可点——调号(弹调号菜单,换调自动移调和弦与吉他品位)、拍号(全曲拍号菜单)、速度(直接输入 BPM)、变调夹(0-12 品一键设置)、标题/演唱/词曲区(打开曲谱信息弹窗,标题等文本字段输入即实时上谱预览,取消可恢复、确定后一次撤销)。②变调夹联动简谱:设夹后页头 1=X 显示实际调(指法调+夹品半音,如 1=C 夹 3 品显示 1=Eb),变调夹位注明「按 1=C 指法」(歌本惯例);简谱声部播放与 MIDI 导出同步升 Key,与吉他实际音高一致——此前谱面与播放都停在指法调,显示和听感双双不对。
- v53.3简谱和音编辑与显示完善(用户需求):①显示重做——和音数字放大(接近主音字号)、纵列动态间距,每个叠加音自带高/低八度点(此前完全缺失)与放大左置的变音记号,不再挤成一团;和弦标注框自动上移避让和音纵列,行高按需预留。②编辑升级——记号层「和音」按钮改为完整编辑弹窗:逐音改唱名 1-7、八度 ±、变音(♯/♭/♮)、加删音(自动取上方三度)、一键清空;谱面直接点击和音纵列也可进入编辑;五线谱 Ctrl+点击线/间加减和音保持不变。
- v53.2倚音避让变音记号(用户反馈:五线谱倚音跟升号重叠):主音带临时升降/还原记号时,前倚音组自动再左移让位——升降号紧贴主音符头、倚音排在记号左侧,互不重叠。三处同步生效:联排五线谱(TAB 倚音)、五线谱与简谱(变化音 ♯♭ 左置符号同让位)。
- v53.1推弦弧线与圆圈修正(用户反馈:弧线样式怪、圆圈压邻弦音符):①推弦连音线不再冲到谱表上方——改为贴着两个品位数字上缘的低平小弧,终点搭在圆圈上缘,弧顶不越过上一根弦线,不再穿过邻弦音符区(b↑/b↓ 文字仍在谱表上方标注带);②目标音圆圈 5.8→5 并把圈内数字整体缩号(两位数 6.8/一位数 8.6),在 9px 弦距内完全退出邻弦数字带,同列上下弦有音符也不再重叠。
- v53.0推弦目标音播放修正(用户反馈):推弦的圆圈目标音是「推到的音高」而非再拨一次——播放时目标音不再拨奏,由源音的推弦曲线滑到位并延音贯穿目标时值(连锁推-放的中继音保留发声但去音头连奏)。另修正倚音播放:同弦前倚音此前会把主音误掐成 60ms,现主音完整发声、倚音在主音起点自然收束。
- v52.9连音线线径细化(用户反馈线径过粗):全部连音线/圆滑线/推弦弧统一细化约 40%——中部厚度由约 1.9 降到约 1.1,两端细尖与同一线径(厚度与跨度无关)保持不变,谱面更清爽。
- v52.8倚音/连音线细节修正(用户反馈):①吉他谱(TAB)行的倚音去掉斜杠——只保留小品位数字+小连音弧,更干净(五线谱行的倚音斜杠为标准记谱,保留);②连音线恢复同一线径:弧线中部厚度恒定、与跨度无关,两端细尖不变(撤 v52.7 的短弧随跨度收细)。
- v52.7倚音跨谱类统一 + 连音线厚度封顶:①吉他谱(TAB)新增倚音——记号层「前倚音/后倚音」按钮输入品位(最多3音),谱面显示为弦线上的小品位数字+倚音斜杠+小连音弧,联排五线谱同步显示小符头倚音组(品位→音高自动换算),点谱面倚音组可逐音改弦位/品位/时值;播放为主音前/后的短促小音符;MusicXML 按标准 grace 元素(含 string/fret)出入。至此倚音在简谱/五线谱/六线谱/联排全谱类统一——同一份数据,切换任意记谱法都同步呈现。②连音线最粗处封顶:弧线中部厚度不再与跨度无关地固定给足——短弧(相邻音击勾弦、小连线)随跨度按比例收细,到一定跨度即达上限不再加粗(出版惯例),所有连音线/圆滑线/推弦弧统一生效。
- v52.6吉他技法面板统一:独奏(电吉他)/指弹/弹唱三类吉他谱的左栏技法符号不再按风格分栏——只要是吉他谱,摇把、泛音细分(A.H./P.H./T.H.)、let ring、pima 右手指法、打板等全部技法一并显示,弹唱谱也能直接使用完整技法集(吉他类型仍保留,用于新建向导的默认调弦等)。
- v52.5左右手指法 + 拨片方向(吉他谱,Guitar Pro 对标):记号层新增三组标记——①左手指法 Ⓣ①②③④⓪(标注带圆圈数字,快捷键 Ctrl+Alt+T/1/2/3/4/0);②右手指法 p/i/m/a 开放给全部吉他类型(此前仅指弹谱面板有,标在品位数字下方);③拨片方向:下拨 ⊓ / 上拨 ∨(列级标记,标注带显示)。均为同键再点清除、可多选批量;MusicXML 按 fingering/pluck/down-bow·up-bow 标准元素出入。
- v52.4最小时值扩至 64 分音符(全谱类):①时值库/顶栏时值组新增 64分,快捷键扩展 Y=32分、U=64分;②附点档位整体下移——16分可双附点、32分可单附点(原 32 分不可附点的限制解除);③拆分链延伸:32分可再拆为两个64分;④刻版补齐:TAB 第四层符杠/第四道符尾钩、简谱第四条减时线、五线谱 64 分符尾与休止符字形(SMuFL 同源合成);⑤ MusicXML 按 64th 精确出入(divisions 升为 96),自动补齐/节拍修复网格同步细化到 64 分。
- v52.3增减小节容量计算:①「+ 增加小节」现在会自动计算本行放不放得下——按各小节自然宽度判断(允许适度压缩),塞不下时按钮置灰并提示,不再能把一行塞爆成叠字;②拖柄缩窄自动排入——用拖柄把本行小节缩窄、腾出足够空间后,后续小节自动排入本行(无需手动点 +),配合置灰提示形成完整工作流:先缩窄 → 空间够了自动进(或 + 变为可点)。
- v52.2宽度手柄与增减行修正:①手柄图形改为◂▮▸ 列宽拖柄(表格调列宽的通用符号:中间竖块=可拖的小节线、两侧三角=拖动方向),去掉百分比标注,已调整的小节整体强调色;②缩放范围放宽为 30%–300%——原 60% 下限过早卡住缩窄;③增减小节后剩余小节自由重排——被移动小节的旧换行标记一并清除,不再出现「只能和下一行来回换」,减一个小节后其余小节按宽度自动合并重排。
- v52.1排版控件视觉调整:①行尾 ↺/+/− 三按钮改为对齐首行谱表垂直居中(原来悬在手柄行高度);②小节宽度手柄换新样式——圆角胶囊双竖纹拖柄(专业排版/DAW 通用的 grip 视觉语言),已调整的小节胶囊填强调色底并在上方直接标注当前宽度百分比,悬停描边高亮。
- v52.0行尾布局按钮(Guitar Pro 式 ○+−):开启宽度手柄后,每行行尾出现三个圆形按钮——○ 恢复本行默认布局(清除本行小节的宽度调整与换行设定)、+ 增加小节(把下一行的首小节移入本行,行内自动压缩对齐)、− 删减小节(把本行行尾小节移到下一行)。每步可撤销;换行设定随曲谱保存。
- v51.9小节线选中高亮修正:单击小节线不再多处亮起——①多声部(双吉他/多行谱)时只高亮被点击的那一行的小节线,其他声部同位置不再一起变红;②选中小节线时音符光标同时熄灭,谱面同一时刻只有一个选中焦点。
- v51.8小节宽度手柄(Guitar Pro 式):左栏「小节」层新增宽度手柄开关——开启后每小节右上角显示 ↔▼ 手柄,左右拖动单独调节该小节宽度(60%–250%,实时预览),双击手柄复位 100%,Ctrl+Z 可撤销;已调整过的小节手柄以朱砂色标出。调整保存在曲谱里,行内其余小节按两端对齐自动重排;关闭开关只隐藏手柄、宽度保留。
- v51.7谱末按 → 自动续小节(Guitar Pro 式):光标在最后一个音位时再按右方向键,自动在曲末追加一个空白小节并把光标落进去,录入不再需要先手动「插入小节」;Ctrl+Z 可撤销。仅显式按 → 触发——落音自动前进、歌词回车前进不会扩谱。
- v51.6连音收敛 + 时值线修正:①连音预设只保留三连音——5/6/7 连音及任意比例统一并入「N连音」(弹窗改 N 时自动建议 M:5/6/7→4、9–15→8、2→3、4→6,可手改);②N 连音时值线(符杠)修正——8:7、4:3、7:6 等非整拍连音此前会被拍边界拦腰拆断符杠、或与相邻普通音并成一杠,现连音组按 N 个一块独立成杠,与连音括线分块完全一致(五线谱符杠/TAB 符杠/简谱减时线三处同修)。
- v51.5N连音打磨:①「自定连音」更名为「N连音」,图标与三连音同款(数字换 N);②音符不足自动补齐——设定 N 连音时选中的音不够 N 个(或单音无法拆分,如 7:6、时值过小)不再仅提示,弹窗一键自动补齐空拍凑满 N 个并整组设标,补齐的空拍与所选音同时值,可直接继续输入音符。
- v51.4N 连音自定义(Guitar Pro 式):连音从固定 3/5/6/7 扩展为任意 N:M 自定连音(N 个音符占 M 个音符的时值,如 8:7、9:8、2:3;N 2–16、M 1–16)——记号层新增「自定连音」弹窗,输入 N 音符等于 M 音符,确定=套用/改标(光标在已有连音上时整组改)、移除=清除连音。点时值线选中整拍后同样可设置(选中 N 个等时值音整体套用,任意 M 均可;单音拆分需 M 为 2 的幂)。谱面括线自定比例标 N:M;播放时值按 M/N 精确折算;MusicXML 按真实 N:M 出入(并修正了 5/6/7 连音此前误写 3:2 的导出缺陷)。
- v51.3右键弹出对象菜单:选中不再直接弹窗——鼠标左键点音符/小节线只选中(小节线高亮、音符落光标),右键才弹出快捷浮条/小节线反复终止设置,浏览器默认右键菜单已屏蔽;触屏无右键,点按仍直接弹出。快捷浮条「关闭自动弹出」现在只关触屏自动弹,右键唤出始终可用。
- v51.2吉他谱弦位光标(Guitar Pro 式):选中吉他谱音符时,在当前输入弦位显示圆形光标(淡红填充+描边圈)——空弦位同样显示,一眼看清品位数字将落到哪根弦;上下方向键换弦光标随动。扫弦/琶音列为整列输入不显示。
- v51.1谱号直接点击修改(Guitar Pro 式):五线谱行首谱号可直接点击,弹窗选择 高音 G2 / 中音 C3 / 低音 F4——五线谱声部改整声部谱号;TAB+五线谱联排改 高音/低音(8vb 移调记谱,品位与播放不变);小节内换谱号的小谱号同样可点击直接改换或清除。均仅换记谱视图,音高与播放不变。
- v51.0手机端四项修复:①播放无声修复——首次触摸即解锁音频(含 iOS 静音拨片场景与微信内置浏览器);②手机上新建/编辑不再自动弹出左栏面板(浮层不再挡谱面,点左栏页签随时打开);③谱面默认整幅入屏——手机开机恒 100% 缩放,桌面端存的缩放不再带进手机导致超宽;④播放条手机适配——单行横滑、播放键吸左恒可点、速度/倍速控件紧凑化。
- v50.9手机编辑轻量适配:手机上编辑体验三处升级——①顶部主工具栏改单行横滑(原换行堆叠占掉约 1/3 屏幕);②编辑状态谱面默认缩放适配屏宽(与观看模式同口径,免横向拖动;手动缩放到非 100% 自动回到滚动模式,点缩放数字恢复);③编辑栏与记号面板按钮触屏热区加大。桌面端不受任何影响。
- v50.8谱库回归谱友圈:制谱页点「谱库」回到应用内谱友圈整页(不再跳出编辑器去官网页),在线时与官网首页「最新发布」同源实时同步(点卡片进观看模式即看即弹,编辑现场一键返回)、离线回退本地示例;卡片与筛选回归谱友圈原版视觉(去官网式渐变顶条/渐变胶囊/大标题区,安静阴影+轻上浮),官网首页与谱库页卡片向谱友圈口径同步;收藏登录后云同步。
- v50.7全站个人中心卡 + 云端曲谱直达:官网与谱库的账号菜单升级为个人中心弹窗卡(会员状态/云端曲谱/最近曲谱/退出所有设备),卡上「最近曲谱」点击即以
?mine=曲谱ID直达编辑器打开对应云端曲谱(本地已有秒开,云端拉取自动入库;未登录回落启动台并提示登录)。 - v50.6推弦目标音数字自适应圆圈:目标音的圆圈大小保持不变(与音符圈定惯例一致),两位数品位(10 品及以上)的数字自动缩号收进圆圈内,不再压到圆框线——与泛音菱形的数字自适应同方案。
- v50.5推弦记号放大:b↑/b↓ 由 10 号加大至 12.5 号并加粗——推弦/回落的方向信息由这个文字唯一承载,现在比一般技法字母(S/h/p 为 11 号)更醒目。
- v50.4和弦滑音只画一条连音线:同一列多个音符一起滑(双音/和弦滑音)时,连音弧线与 S 字母只挂在最上方的滑音音符上,其余弦保留各自的方向斜杠(GP 惯例,避免弧线上下堆叠);框选多列多弦标记滑弦时按同弦配对连接(滑音沿弦滑动),两音跨弦选择仍可直连。
- v50.3滑音两音规则 + 推弦连音线化:①普通滑音必须选中两个音符(起始+目标)才生效——单音点「滑弦」不再生效并提示改用无头/无尾滑音(⟋S ⟍S S⟋ S⟍),已标记的单音可再点取消;②推弦/回落的连接线统一改为连音线(两头细尖的出版级弧形,与圆滑线同源),去掉全部箭头三角——推弦方向由 b↑/b↓ 文字承载,目标音仍用圆圈标注准确音高。
- v50.2普通滑音也自带方向斜杠:没框选目标音、只标了 S 的普通滑音,现在也自动向后找最近的音符(优先同弦)比较音高——目标音高就画向上斜杠 ╱,目标音低就画向下斜杠 ╲,只画斜杠不画弧线(GP 的 shift slide 惯例,与带连线的 legato slide 区分);后面再无音符时默认画向上短斜杠。
- v50.1连线滑弦自带方向斜杠:普通滑音(两音相连的滑弦)现在在两个品位数字之间自带斜杠——目标音高于主音画向上斜杠 ╱,低于主音画向下斜杠 ╲(GP 惯例),一眼可见滑行方向;圆滑线弧与标注带的 S 字母保留;跨行断开时起始侧画短斜杠示意方向。
- v50.0出版级连音线:两端细尖、中部有厚度:全部连音线/圆滑线由「等线宽的一根弧线」升级为出版刻版形态——括弧状实心弧(双曲线填充:两端收细成尖、中部自然增厚),与专业出版乐谱一致。覆盖:简谱连音线、五线谱连音线(含贴符头弯向、跨小节续接)、六线谱击/勾/滑圆滑线与纯连音线(含跨行断弧)、工具栏「连音线」按钮图标同步换形。三连音括线与推弦箭头线按刻版惯例保持细线。
- v49.9推弦不再标注几分之几:两音式推弦的规格已经完整——主音起、目标音圆圈即准确音高,故弧上标识固定为 b↑/b↓,不再显示 ¼/½/full 等幅度文字,幅度菜单一并取消(再点同一按钮=取消标记);播放同步升级:推弦/回落的音高曲线直接按主音与圆圈目标音的真实音高差执行(推 2 品就推两个半音),回落连到更低目标时按「起于本音、放回目标音高」的下行曲线播放;单音式推弦维持默认全音。旧曲谱已标的幅度数据不受影响(仅作播放兜底、不再显示)。
- v49.8推弦体系收敛:只留「推弦 b↑」与「回落 b↓」:① 技法面板恢复「回落」独立按钮(即早前的下推弦符号 b↓——推起后放回),与「推弦 b↑」并列,谱面标识固定为 b+箭头;② 取消其他推弦入口——预推 pre-bend 与「常规/回放/预推」类型三选菜单移除(老曲谱里已标的预推/回放数据仍照常显示与播放,不受影响);③ 交互简化:单音点按钮即就地标记,Ctrl/Shift 选两音即连到目标音,已标记的音符再点同一按钮可选幅度(¼/½/full/1½);幅度非全音时在箭头后以小字标注(如 b↑½),全音为默认不标;④ 回落的弧线改为 ∧ 形(推起→放回)、箭头朝下,与听感一致。
- v49.7Shift+点击多选(Ctrl 等效键):部分用户本机装有注册「双击 Ctrl」全局热键的工具(Listary、输入法快捷搜索等),按住 Ctrl 点选音符会误唤系统搜索——网页无法拦截系统级热键,故新增 Shift+点击 作为完全等效的多选键:多选音符加技法/连音线、连选小节,Shift 与 Ctrl 通用;批量选择也推荐直接框选(按住拖动,v49.5)。相关按钮提示与操作文案已同步标注「Ctrl/Shift」。
- v49.6技法标注带:演奏技巧符号统一置于六线谱上方并放大:① 吉他谱所有演奏技巧文字标识——P.M.(含虚线范围)、let ring、揉弦波浪线、击弦 h / 勾弦 p / 滑弦 S / 点弦 T、A.H./P.H./T.H. 泛音标注、摇把 w/bar、打板分区字母、推弦幅度文字——统一画在 TAB 顶线上方的标注带,不再随所在弦位下沉压进谱线(低音弦技法字此前会叠在谱线里);同列多个标识自动向上堆叠,有和弦名时整带上移让位;② 全部字号放大约 15–25%,扫谱一眼可辨;③ 推弦弧线顶点与幅度文字也钳到谱上方(GP 惯例:推弦箭头向谱外发展);④ 顺带修复:扫弦列此前完全不显示技法文字(扫弦列只画箭头)——现在扫弦/琶音列的 P.M.、揉弦等照常显示;⑤ 指弹 pima 指法保持品位数字下方(指法惯例位置),同步放大。几何断言验证 10 种标注全部位于各自谱行顶线上方,全套回归 100 项全绿。
- v49.5柱式和弦整列闷音 + 谱面框选:① P.M. 标在柱式和弦上=整列全弦闷音(GP 惯例)——此前播放只闷被标的那个音,现在列内所有弦、扫弦展开错开的音全部进入闷音;P.M. 虚线范围与范围揉弦同步改为按「列区间」判定,覆盖更准确;② 框选功能——在谱面上按住拖动即可画出选框,框内 TAB 音符一次性全部选中(不用再逐个 Ctrl+点击),松手后在「记号/技法」面板点 P.M./揉弦/let ring/连音线即批量应用;普通点击、Ctrl 多选、触屏滚动行为完全不受影响。tv_audio 增至 21 项(真实播放调度级断言:扫弦和弦列单音标 P.M. → 六弦全部收短)、tv_gtech 增框选端到端交互断言,全绿。
- v49.4吉他技法发声·第二批(技法发声化收官):① 泛音发声——自然泛音按真实物理发声:品位=触弦节点,实际音高=空弦×谐波次数(12 品高八度、7/19 品高八度加五度、5/24 品高两个八度、4/9/16 品更高),人工/点弦泛音=按弦音高八度,拨片泛音(P.H.)额外加亮出「啸叫」倾向,泛音统一软起音更纯净;② 摇把四态——俯冲(保持后渐深下潜)、上滑入音、下点 ∨(快速下探回弹)、摇把颤音(深快颤动)全部按形态画音高曲线;③ 拍弦/打板打击层——拍弦列附加真实拍击噪声、音符短促化;指弹打板三型可闻可辨:低音板(含低频「胸腔感」)、高音板、击板;④ 轮奏细分——简谱/五线谱震音 1-3 杠按八分/十六分/三十二分真实重复演奏,交替强弱如真实拨奏。至此谱面全部吉他技法记号在播放中都有对应发声,采样/合成双通路一致。tv_audio 增至 20 项断言全绿(泛音谐波表/摇把音高下潜/打板频谱区分等数值验证)。
- v49.3电吉他过载/失真音色上线(音色补强):音轨面板的音色下拉新增「电吉他·过载」「电吉他·失真」两个真实采样音色(GM 库 overdriven/distortion guitar,服务器双库同步供给),电吉他 solo 谱终于有了该有的驱动质感——搭配 v49.2 的推弦/揉弦/滑音技法引擎,失真长音推弦揉弦的经典乐句可以完整发声;原「电吉他」更名「电吉他·清音」(既有曲谱不受影响)。采样未就绪的首播窗口由内置合成器回落:过载/失真档对应加大软削波驱动、拉长延音(失真天然压缩延音),实测失真强力和弦齐鸣总线零削波。冒烟验收同步抽查两个新音色包完整性。tv_audio 增至 17 项断言全绿。
- v49.2吉他技法发声·第一批(谱上的记号终于会响了):此前 20 多种吉他技法记号「只画不响」,标满推弦滑音的 solo 谱播出来每个音都直上直下。本版让高频技法全部发声:① 推弦——按标注幅度(¼/½/full/1½,未标默认全音)画真实音高曲线,支持推起保持、推弦回放(推起→放回)与预推(起于高音释放回落);② 滑弦——连线滑弦临近目标时平滑滑到目标音高,滑进/滑出(↗↘ 无头无尾滑)±2 品甩音;③ 击弦 h / 勾弦 p / 点弦——目标音连奏化:抹去拨片音头、力度自然减弱,连奏乐句不再颗颗重敲;④ 揉弦——5.6Hz 揉弦颤动渐入(支持范围揉弦),复听完全一致;⑤ P.M. 闷音——时值门+音色变暗+力度收敛(支持 P.M. 范围线);⑥ let ring 由既有逐弦延音模型天然覆盖。采样与内置合成器两条通路同一套技法引擎(共用音高自动化器),首播回落时技法同样生效;推弦提高播速会提前耗尽采样,已加护栏防截断爆点。tv_audio 增至 16 项断言全绿(推弦稳态能量迁移/连奏起音包络/揉弦 LFO 数值验证)。
- v49.1踏板模拟 + 乐句呼吸 + 合成器力度一致(音质升级·第二批③,本批收官):① 钢琴踏板模拟——钢琴/钢琴弹唱谱左手声部的和音不再按固定门限截断,而是延音到本声部下一个发声位置(右手换旋律音时左手和声仍「踩在踏板里」),曲末和弦自然延响≥3 秒;② 乐句呼吸——谱面标了换气记号 v 的音自动提前收音约 15%,留出真实的「吸气」空隙,唱谱跟练更贴近人声乐句;③ 合成器力度一致——内置合成器(采样未就绪时的回落通路)现在吃同一条力度管道:KS 拨弦亮度、合成钢琴的起始泛音与琴槌噪声都随音乐力度变化,回落与采样两条通路的强弱表现不再脱节。tv_audio 增至 13 项断言全绿。
- v49.0首播音质收敛 + 力度明暗联动(音质升级·第二批②):解决「第一遍播放音色明显偏闷」的三个根源——① 打开曲谱即预取全量音色:进入编辑就后台下载并解码当前谱用到的高保真采样(此前要点了播放才开始下载 2MB 级音色包),首次点播放即是全量音质;② 音色包本地缓存:下载过的音色包存入浏览器 Cache Storage,二次进站秒级就绪、离线也可用;③ 整包就绪才切换:全量包解码期间继续用内置采样,全部就绪后一次性切换——一首歌里不再出现「前半段真采样、后半段合成器」的混播跳变;④ 力度→明暗联动:轻音不只更小声、音色也随之变暗(真乐器弱奏高频泛音更少),与 v48.9 的拍点重音/扫弦力度型贯通成完整力度管道——伴奏更松弛、重音更亮更前。tv_audio 增至 12 项断言全绿。
- v48.9音符层塑形(音质升级·第二批①,MIDI 专家参数落地):① 拍点重音——强拍 +2.5dB、次强拍 +1.5dB、弱拍位 −1.4~−1.9dB,简谱与 TAB 全声部生效,播放从「均匀敲格子」变出律动骨架;② 扫弦力度型——下扫低音弦先响且更重(弦间递减梯度)、展开约 70ms 且逐弦加速;上扫只碰高音侧 ≤4 根弦(真人手腕物理够不到低音弦)、更快更轻——D-DU-UDU 终于有了「下重上轻」的真实手感;③ 和音塑形——同列附加音按音高低→高各错 3ms 微滚奏、内声部退后约 −9dB(旋律浮在和声之上,不再糊成一片),并同步吃力度记号;④ 钢琴左手自动让位——钢琴/钢琴弹唱谱左手声部默认约 −3.5dB,伴奏不压旋律(轨道音量仍可自行调整);⑤ 新增「演奏感:自然/精确」开关(创作提示列)——自然档保留确定性微扰动(复听一致),精确档零扰动供校音/跟练;拍点重音等确定性塑形两档都保留。试听定论:音色库保持 MusyngKite 不换,灰度开关默认收起(机制保留)。tv_audio 增至 10 项断言全绿。
- v48.8响度归一 + 音色库灰度开关(音质升级·第一批③,核心版):① 按样响度归一——每个采样解码时实测起音窗响度与峰值,自动补偿增益(封顶 ×4 防噪底、近静音坏样自动改走合成器);钢琴从此不再「几乎听不见」(此前采样源电平低至 −30dBFS 且引擎再砍半,实测生效峰值提升约 4–10 倍);② 起音修剪——自动跳过 MP3 编码器头部静音(实测 3–7ms),音头与节拍器对得更准;③ 删除采样通路的统一 ×0.5,电平锚点与合成器对齐;离线渲染实测最坏情况(双轨扫弦+和弦齐鸣)总线峰值 0.60、零削波;④ 音色库灰度开关——右栏「信息」页版本号下方新增「音色库」一行,点击在 MusyngKite ↔ FluidR3(逐音电平一致性更好)间切换试听,刷新生效、随时切回;也可用网址参数
?sndlib=fluid。服务器双库已就位。tv_audio 增至 9 项断言全绿。 - v48.7混响细修(音质升级·第一批②):混响 IR 叠加 180Hz 低切——钢琴低音经混响不再糊成一团(低频尾巴是元凶);predelay 12→18ms,干湿分离度提升、音头更清晰(跟练要听得清音头)。如实说明:评审专家建议的「立体声去相关」「时变渐暗」经查现有实现早已具备(双声道独立噪声+时变低通),本版只补真正缺的一刀;湿量不盲调,留待音色库灰度期用耳朵定。tv_audio 新增混响 IR 性质断言(predelay 零区/声道去相关/渐暗/无低频泥),8 项全绿。
- v48.6播放引擎快赢包(音质升级·第一批①,九方专家评审后开工):① 收音全面改为指数衰减——线性收尾的「推子感」消除,音符结束更接近真实弦振动;② 采样截断护栏——任何音在采样耗尽前包络必先收零,长音结尾的潜在爆点(响度归一后会被放大)提前堵死;③ 重复音去机枪化——每个音按谱面位置加 ±4 音分、±1.2dB 的确定性微扰动:同一首谱每次播放完全一致(校对复听可复现),但连续同音不再逐比特相同;④ 力度记号带动吉他伴奏轨——标在简谱声部的 p / mf / f 等力度现在同步作用于 TAB 轨(全曲力度时间线),主歌轻副歌重整体生效;⑤ 新增 tv_audio 数值音频回归:离线渲染后对波形做数值断言(无削波/收音静音/截断无爆点/力度取值/扰动确定性),并纳入发版流水线——音质问题此后由断言把关,不靠人耳抽查。服务器侧已完成 FluidR3_GM 双库供给与完整性冒烟(阶段0),音色库切换开关随下个版本上线灰度。
- v48.5用户手册深度改版:零基础入门 → 专业制谱:① 官网「使用手册」新增「零基础第一课」——不懂乐理也能十分钟看懂简谱数字/时值/拍号/调/六线谱/五线谱/和弦,每个概念都注明编辑器里对应的按钮;新增「专业制谱之路」——三关校对法(节拍→试听→预览)、引擎自动保证的刻版细节、高效工作流顺序、与 MuseScore 协作、常见错谱自查清单与练手路线;② 全册按当前版本重写:启动台四入口、九种谱类(吉他弹唱/独奏/指弹分列)、落音自动前进的连续录入、品位钮 0–9+「10–24▾」、Enter 填词流程、右栏两页签、云端同步与会员现状、版本号自查方法;③ 编辑器内「使用帮助」同步纠偏——移除早已下线的「多窗口标签栏」描述,补自动前进/单窗口/云同步/版本号说明,底部直达完整手册。
- v48.4发版流水线增加「版本落位校验」:此前部署后的冒烟检查只验证页面能打开、含备案号等固定字样,即便落位的是旧文件也照样通过,于是「部署显示成功、线上却还是旧版」这种情况无法被发现。现在每次部署都会比对线上编辑器的版本号与本次提交是否一致,不一致直接判部署失败并打印线上实际版本。(若你看到的版本号仍偏旧,多为浏览器缓存了页面,Ctrl+F5 / Cmd+Shift+R 强制刷新即可;版本号显示在右栏「信息」页「更新日志」下方。)
- v48.3右栏收敛为「信息 · 创作」两页签:① 小节时值提示(节拍状态)与光标位置一并归回「信息」页——节拍状态不再挂在顶栏右端,曲谱信息 / 光标位置 / 使用帮助 / 特色功能 / 更新日志(含版本号)/ 节拍状态自上而下一列到底;② 「创作」页只留创作帮助与预提示——一键配和弦 / 一键配伴奏 / 智能填词 / 哼唱成谱,下接随光标实时变化的智能预提示;③ 「智能」「库」两个页签移除:预提示并入创作页,素材库面板暂时隐藏(节奏型库 / 伴奏织体改从顶栏进入,编辑创建和弦在左栏和弦层,功能均未丢失);「导入 · 互操作」卡片同样暂时隐藏(导入 MusicXML / MIDI 在启动台「导入」与新建向导内照常可用)。启动台未选曲谱时默认停在「信息」页。
- v48.2六线谱也自动前进 + 信息栏标版本号:① 六线谱录品位同样自动跳下一列,不必再「数字+→」交替;两位品位照旧可输——0.7 秒内连打的第二位数字会回改刚落的那一列(如 1、2 得到 12 品),不会被拆成相邻两列;② 「先落品位、再点 ×分解 / 附点」照常生效,记号自动回落到刚录的那个音(简谱的 ♯♭♮/八度同理);③ 同列多弦(和弦叠音)改用「← 退回再换弦」——录完一个音光标已经前进,按 ← 回到该列再换弦输品位即可叠音;④ 右栏「信息」页更新日志下方新增版本号,一眼可确认自己跑的是哪一版(反馈问题、强刷后核对都用得上)。不想要自动前进可在右栏「智能」页一键关闭,关闭后简谱与六线谱一并恢复旧手感。
- v48.1吉他谱品位钮固定铺 0–9,高把位一律收起:品位数字不再随窗口宽度浮动——固定只显示 0–9,10 品及以上统一收进「10–24▾」选择器(尤克里里按乐器上限显示「10–15▾」)。此前按上栏余量动态铺开,实测其余各组已占去约 1300px、宽屏也几乎腾不出位置,结果是按钮个数和位置会随窗口大小变化,手记不住「几品在哪」;固定 10 个钮换来稳定的肌肉记忆,高把位走选择器(弹格 0–24 一屏可点)。同时移除了随之而来的拖窗口重算,拖动窗口时上栏不再抖动。
- v48.0落音光标真正会走 + 吉他谱「品位」组展示修正:① 落音后光标即刻前进到下一个音——v47.9 用的是「延迟前进」(光标停在刚落的音上、下次落音才移动),虽然按键数已经省下来了,但看上去就像没前进;现改为落音即走,录旋律一路按音高键即可,实测录 16 个音只需 16 次按键。② 「先落音、再点升降号 / 附点 / 八度」照常生效——光标虽已前进,这些记号会自动回落到刚录的那个音上(变音钮的高亮同步跟随),不会写到前面的空位去;手动点选谱面即取消回落、就地修改已有音符。③ 吉他谱音符组三处展示修正:组标签由「音符」改为「品位」(六线谱里的数字是品位不是音名);高把位选择器由固定的「0–24▾」改为只标折叠掉的那段(已铺开 0–9 时显示「10–24▾」,不再与旁边的 0–9 重复);× 补中文小字「分解」(该组只有它是纯符号,此前认不出含义)。
- v47.9录入流程两处硬伤修复(九谱类全流程实测查出):① 填词不再串字——歌词框按回车跳到下一个音时没有清空上一个字,连打「好 / 一 / 朵 / 美」会写成「好 / 好一 / 好一朵 / 好一朵美」,多字词还会把谱面挤重叠;现已在跳转后按目标音回填,连打即逐字对位(简谱歌谱 / 教学对照谱 / 吉他弹唱谱三类同修);② 录旋律不必再「数字+→」交替按——简谱 / 五线谱落音后光标自动走到下一个音,实测录 16 个音由 32 次按键降到 16 次。采用延迟前进:光标视觉上停在刚落的音上,下一次落音时才前移,因此「先落音、再点升降号 / 附点 / 八度」的简谱习惯照常生效(不会把升号加到下一个空音上);手动点选谱面即放弃前进、就地改音。可在右栏「智能」页一键关闭恢复旧手感;六线谱不受影响(品位有两位数,需保留合成输入);③ 智能提示按实际行为改写——旧文案「选中音符后直接打字即可填入歌词」并不成立,改为「按 Enter 唤出歌词框填词,填完再按 Enter 跳下一个音」,落音提示也随自动前进开关同步。
- v47.8音符组按谱类彻底分化 + 节奏型库按谱类对应:① 简谱:1–7 为简谱音名、0 为休止符,后接高八度 / 低八度;② 吉他谱:不再出现简谱音名,数字一律是品位——0–24 品全部可直接点选,并按上栏余量自动折叠(宽屏一路铺开到 24 品;窄屏只铺 0–9,其余收进「0–24▾」选择器,改变窗口大小会实时重算),× 改为分解标记(分解和弦中不发实音的 × 记号,不再叫「闷音」);③ 五线谱:休止符按五线谱规则出真正的休止符字形,并随当前时值变化(全 / 二分 / 四分 / 八分 / 十六分 / 三十二分休止),不再沿用简谱的「0」;④ 节奏型库按谱类对应:编辑五线谱大谱表时按钮变为「伴奏织体…」,打开的是常用钢琴节奏型(柱式和弦 / 抒情分解 / 半分解 / 阿尔贝蒂低音 / 圆舞曲等,按已标注和弦自动生成双手音符);吉他谱仍是扫弦/分解节奏型,简谱仍是简谱节奏型;单谱表五线谱会提示「伴奏织体需要大谱表双手声部」并退回节奏型库。
- v47.7音符录入缺陷修复(专家复核后逐条实测确认):① 闷音 × 不再丢品位——原先「7 品 → 打 × → 再点 × 取消」会静默变成空弦(品位被清零),现在取消 × 会还原原品位(v47.6 把 × 放上顶栏后这条路径变成一键可达,属数据丢失,优先修);② 五线谱的 ♮ 还原号此前是无效按钮——五线谱的变音是相对调号的偏移,旧写法让 ♮ 与「无记号」完全等价、点了没反应;现改为按目标音高记谱:升号调里点 ♮ 正确画出还原号且音高降半音;♯ 连点也不再画出「重降号却发升号音」的错谱;简谱的升降号行为完全不变;③ 换弦即断开两位品位输入——原先键盘「1 → ↓换弦 → 2」会在新弦写成 12 品;④ 尤克里里修正:光标弦号不再越到第 5/6 弦(写出四线谱外的幽灵音符),品位上限按乐器取 15 品;⑤ 品位越界守卫:任何入口都不会再写入超出上限的品位;⑥ Esc 关闭弹出菜单(此前弹窗开着时数字键仍会直接写音符);⑦ 品位选择器改 6 列栅格,12 品落在行首(八度位),并按乐器裁剪长度。
- v47.6音符输入组按谱类分化 + 节奏型库上栏:① 吉他谱:× 闷音标记 + 0–24 全品位可选——上栏直接给 0–9(0=空弦排在最前,吉他最常用)与 ×(闷音/死音,再点取消,当前弦已是闷音时按钮高亮;当前弦的品位在数字钮上高亮),另加 「0–24▾」品位选择器:点开即是 0 到 24 全部品位的网格,高把位与泛音位一次点到(另含「× 闷音」「清除本弦音」),当前弦的品位在网格中高亮;② 五线谱:音名录入方案——切到五线谱声部时,七个数字钮自动变为音名 C D E F G A B(随调号旋转:D 大调显示 D E F G A B C),点击即落该音;同组补上 ♯ ♭ ♮ 变音记号(调号内的升降自动生效,需要临时记号时点它)与高/低八度;键盘 1–7 仍然等价可用(按钮提示已标注对应音级),底层数据仍是首调音级,换调不改音符数据;③ 简谱声部保持 1–7 + 0 + 高低八度不变;④ 「节奏型库…」按钮回到上栏,排在节奏组末尾(右栏「库」页签的完整节奏型库仍在)。
- v47.5上栏结构调整:编辑 + 音符输入组 + 撤销重做下移:① 原「音符」组更名「编辑」:后插 / 前插 / 休止 / 清音 / 拆分 / 合并 / 删除(八度移出);② 编辑组后新增「音符」输入组——简谱/五线谱声部:音级 1–7、0(休止)、高八度、低八度;吉他谱声部:品位数字 0–9(0.7 秒内连点两键可输两位品位,如 1→2 = 12 品)——按当前选中声部自动切换选项,与键盘数字输入完全同源;③ 撤销 / 重做从页头下移到上栏,排在节奏组之后(经典版保持页头原位);④ 上栏内容放不下时自动换行(时值提示与缩放右靠齐),不再横向滚动。
- v47.4顶栏节奏「更多」拍号组合:顶栏节奏组新增「更多▾」——点击展开按拍号场景分组的节奏选项:① 单拍细分(通用)=顶栏已铺开的七种组合;② 二拍组合(2/4 整小节 · 4/4 半小节):二分音符 / 四分×2 / 附点四分+八分 / 八分+附点四分 / 大切分 / 四分+八分×2 / 八分×2+四分;③ 三拍 · 复合拍(3/4 整小节 · 6/8 一大拍):附点二分 / 四分×3 / 二分+四分 / 四分+二分 / 附点四分 / 八分×3 / 四分+八分 / 八分+四分 / 八+双十六+八——6/8、9/8、12/8 的附点四分大拍一键拆分;所有组合自光标起替换等长片段、按当前小节拍号折算(变拍子小节同样适用)。组合图示升级:四分画实心符头、二分画空心符头、符杠只连八分及更短的音(出版口径)。
- v47.3顶部编辑行回归:应产品决策撤回 v46.6/46.7 的收纳——音符、时值、节奏三组,加上时值提示与缩放,全部回到顶部编辑行(新版界面恢复顶栏,左栏撤下对应三个图层);节奏组合延续 v47.2 的铺开决策:新版顶栏 7 种组合全显(图示紧凑化,1280 宽屏幕单行不溢出)、「更多▾」隐藏(节奏型库在右栏「库」页签,顶栏不重复);时值提示胶囊在顶栏缩放左侧常驻;连音(3/5/6/7)与连音线保持在各谱类记号层不变;经典版布局不受影响(节奏仍为 4+更多▾ 紧凑式、时值提示在右栏底部)。
- v47.2简谱行首线合一 + 节奏面板铺开:① 简谱行不再画独立的行首起始小节线——多谱行曲谱(弹唱/合唱/对照等)行首由系统连体线充当开头小节线,不再在其右侧多画一条形成双线;单行歌谱按国标简谱出版惯例行首直接起谱(行间小节线不变);② 左栏「节奏」图层组合时值全部铺开——七种组合(八分×2 / 前八后十六 / 前十六后八 / 十六分×4 / 附点八分+十六 / 十六+附点八 / 小切分)一眼全见,不再需要点「更多▾」二级展开(经典版顶栏保持紧凑不变);③ 节奏型库独立成卡——从组合按钮组中分离为独立的「节奏型库」卡片,入口更清晰。
- v47.1音符快捷浮条 + 智能习惯预判:① 点击音符自动弹出快捷浮条——常用可选项就在音符旁边:时值(四分/八分/十六分)、附点、连音线,吉他谱另有 3 枚常用技法钮、简谱/五线谱另有升降号与八度点;点「…」直达左栏完整面板,点「✕」可关闭自动弹出(右栏「智能」页随时重新开启);当前音已有的属性在浮条上高亮显示;② 智能功能深化:学习你的编辑习惯——本地记录常用操作的频次与先后顺序(只存在你自己的浏览器里,绝不上传):浮条的技法槽位按你的高频操作自动重排(比如常用泛音的用户会看到 N.H. 排进浮条);③ 「猜你想做」预判下一步——根据你的操作先后习惯(如"改完时值常接着加 3 连音")在浮条最前面给出高亮预判钮、右栏智能卡同步置顶「猜你想做」提示,点击直达执行;出现 2 次以上的习惯才会给出预判,避免误猜。
- v47.0TAB 行首拍号重叠修复(弹唱/尤克里里):① TAB 字母与拍号不再重叠——纯六线谱+简谱的弹唱谱此前没有五线谱表头区,行首 T A B 字母与拍号挤在同一位置;现在为纯 TAB 谱保留最小表头区,拍号移到字母右侧(与独奏联排谱同口径);② 拍号与首个音符留出出版级间距——首小节内容为拍号预留横向空间(此前拍号紧贴第一列音符);③ 排查其余谱类(歌谱/五线谱/对照谱/大谱表/功能谱/双声部/五线谱唱名弹唱)行首区均无同类重叠;④ 顺带补齐:变拍子在纯 TAB 谱上现在可见——中途换拍的小节在六线谱行首画新拍号(此前只有五线谱行显示,纯 TAB 弹唱谱完全看不到变拍),首行拍号也改为按首小节有效拍号显示。
- v46.9新建=全新曲谱 + 倚音入口去重:① 启动台四入口不再提前露出旧谱——点「新建/打开/导入/我的」后启动台保持在原位(向导与文件框背后是干净的启动页),直到新曲谱真正载入才切换显示;中途取消就回到启动台,全程不会看到上次残留的编辑信息;新建向导里的「当前曲谱《旧稿》…」状态行在启动台状态下也不再显示(从编辑中打开向导时照常提示替换风险);「继续上次编辑」仍是查看旧稿的唯一入口;② 去掉重复的「倚音」按钮——简谱/五线谱记号组原单独「倚音」钮与装饰组「前倚音」功能完全相同,现已移除,倚音入口统一为装饰组的前倚音 / 后倚音两枚(已选中音符带倚音时按钮高亮显示)。
- v46.8左栏细节修正批次:① 音符/时值/节奏面板排版修正——三个图层面板中的按钮组此前按内容撑宽(最宽溢出面板 355px,右侧按钮被截断看不见),现在改为占满面板宽度自动换行铺排,全部按钮尽收眼底;② 倚音图标统一为出版级——「倚音 / 前倚音 / 后倚音」三枚按钮图标此前用简谱数字画法(细笔画小数字,与相邻的波音/颤音/回音出版字形分量不一致),现统一重绘为通用出版记法:带斜杠的小八分音符 + 主音符 + 连线,前/后倚音为同款元素的镜像布局,实心符头与统一线宽和相邻装饰记号视觉一致。
- v46.7顶部编辑行谢幕(界面重构收官):① 音符、时值、节奏拆为三个独立图层——左栏三枚独立图标,各开各的面板(此前合在一个「音符」层里);② 右栏页签顺序调整为 智能 · 库 · 创作 · 信息;③ 顶栏「记号」(3/5/6/7 连音)分配到各谱类记号层——吉他谱与简谱/五线谱记号面板各有一套,图示升级为出版级(符杠组 + 连音括线 + 斜体数字);④ 时值提示(节拍状态胶囊)移到底部播放条——节拍器左侧常驻可见,点击照常展开修复建议;⑤ 缩放控件移到左栏「帮助」上方;⑥ 至此顶部第二行(编辑功能行)在新版界面整行移除,屏幕高度全部留给谱面;经典版界面保持原布局不变。
- v46.6「音符」图层 + 启动台默认页:① 顶栏「编辑」组更名「音符」,并与时值、节奏两组一起收纳进左栏新的「音符」图层(与小节/段落图层并列)——插入/删除/拆合/八度、全部时值档、节奏组合集中一处,顶栏更清爽(经典版界面保持原顶栏布局);② 连音线回归各谱类记号层——吉他谱记号层新增「连音线」按钮,简谱/五线谱记号层沿用原有按钮,顶栏不再重复;③ 启动台默认页——打开制谱页未选择时,右栏默认停在「智能」页显示欢迎指引、光标位置为空、左栏无选中高亮,不再残留上次编辑的信息;选择任一入口或载入曲谱后恢复正常显示。
- v46.5启动台上线(打开即选,不再直落编辑器):打开制谱页默认为空白页面,屏幕中央呈现四个入口——新建(八类曲谱 · 新建向导)、打开(打开曲谱文件)、导入(MusicXML / MIDI)、我的(预设与我的曲谱),下方一键「继续上次编辑」;左侧工具栏默认收起,选择任一入口或载入曲谱后自动恢复。分享谱/谱库观看等直达链接不受影响,仍直接进入对应页面。
- v46.4右栏四页签改版 + 光标信息升级:① 右侧栏从三页签改为四页签:智能 · 创作 · 信息 · 库——新「创作」栏承接 创作辅助(一键配和弦/配伴奏/智能填词/哼唱成谱)与 导入·互操作(MusicXML/MIDI);② 光标位置卡移入「智能」栏,与智能预提示上下联动;③ 点击音符时光标卡同步显示该音符的可编辑信息——当前弦/品位(或简谱音高)、已加技法、所在和弦,以及可改项速查(时值 Q–T · 附点 · 三连音 · 品位/音高输入);④ 右栏整体加宽(254→292px),提示与信息不再局促;⑤ 谱面两侧滚动条隐藏——制版台、左右栏的滚动条不再显示(滚轮/触控滚动照常),页面更干净。
- v46.3智能预提示上线(编辑内上下文提示):右栏「智能」页顶部新增智能预提示卡——根据你当前选中的对象实时给出对应的操作提示:选中吉他谱音符→品位/时值快捷键与推弦/滑弦/泛音/哑音等技法入口;选中五线谱音符→升降还原/谱号切换/八度线/指法踏板;选中简谱音符→数字输入/八度点/歌词填入;选中拍(时值列)→节奏重写与节奏型库;选中整小节/多小节→复制粘贴与小节层操作;选中小节线→反复/终止/跳房子设置。带 › 的提示点击直达对应面板。宏观流程建议(配和弦/修复时值/发布分享等)列为卡内次级「整体建议」。全部为本地规则引擎——按曲谱真实状态推导,准确、即时、离线可用。
- v46.2右栏「智能」页签置首:右侧栏页签顺序调整为 智能 · 信息 · 库——智能配谱/自动配和弦/哼唱转谱等 AI 能力前置曝光,一眼可达;打开曲谱时默认仍停留在「信息」页,不打断编辑流。(智能预提示「下一步建议」功能已完成方案评估,见产品沟通记录,待拍板后实施。)
- v46.1泛音记谱与面板归组:① 泛音菱形恢复固定形状——所有泛音统一同一正菱形(出版一致性),两位数品位(10 品以上)改为数字自动缩小适配框内,不再改变菱形形状;② 左栏泛音类归组——「演奏技巧」面板重排:自然泛音按钮由 ◇ 图形改为字母 N.H.(与人工泛音字母风格统一),并移到技巧列表尾部,与紧随其后的 A.H(人工泛音)/ P.H(拨片泛音)/ T.H(点弦泛音)聚成「泛音类」,「清除」恒排最后;③ 泛音一律带菱形框——自然泛音与 A.H./P.H./T.H. 各细分在谱面上都以菱形框住品位数字(细分另在上方标注字母),规则固化进回归测试。
- v46.0谱面细节修复批次 5 + 小节线多选:① 隐藏移调谱号的「8」缀——独奏联排五线谱谱号下方不再显示小 8(记谱与播放完全不变,仅隐藏该标记,谱面更干净);② 泛音菱形框加宽——两位数品位(10 品以上)的泛音菱形横向加宽,数字不再撑出框外;③ 行首第一小节线可选中了——此前行首可见竖线与点击热区错位约 26px 导致点不中,热区已左延到行首竖线处,点击即弹出小节线设置;④ Ctrl+点击小节线多选小节——按住 Ctrl 点小节线选中该小节整声部,继续 Ctrl+点其他小节线扩展为连续多小节范围,可整段复制/粘贴/批量操作(小节线悬停提示已更新)。
- v45.9谱面细节修复批次 4:① 行首连线色差修复——v45.8 的系统连线与各谱行原有的行首竖线在同一位置重复绘制,叠加处颜色更深造成深浅不一;现在连线存在时各谱行不再重复画自己的行首线,线宽统一,整条连线颜色均匀;② TAB 字母移入谱表内——六线谱行首的 T A B 三个字母从页边距移到谱表内(行首竖线右侧的表头区),与 Guitar Pro / 出版 TAB 谱一致。小知识:独奏谱五线谱谱号下方的小「8」是吉他移调谱号(treble-8vb)的标准记号——吉他实际发声比五线谱记谱低一个八度,出版吉他谱都这样标注,用于提示读谱者,并非多余符号。
- v45.8谱面细节修复批次 3(读谱体验):① 行首小节编号归位——右对齐收进左页边距、垂直贴谱表顶线(出版惯例:行首小节号置于系统左外侧),彻底解决被谱号压住/上移后悬空漂移的问题;② 每行行首谱行相连——五线谱+TAB 联排、弹唱谱的 TAB+简谱行、教学对照谱等多谱行曲谱,每行行首用一条竖线把各谱行连成一组(参考出版谱系统线惯例),逐行对位读谱更清晰;单谱行曲谱保持原样;③ TAB 全休止符居中——全空小节改为在小节中央画一个全休止符(与五线谱同口径),不再逐列落在列位上;部分空拍仍按位置画对应时值休止符。
- v45.7谱面细节修复批次 2 + 联排谱号可选:① 行首小节编号上移——不再被高音谱号上弧压住;② 五线谱+TAB 联排间距重修——改为像素级精确计算(谱表下加线深度 + TAB 上方推弦弧/技法标注高度求和),推弦、低音下加线与 TAB 彻底不再重叠;③ 和弦图横按判定收紧——Em/A 等两三根邻弦同品是分指按法,不再被误画成横按横杠把圆点连成一团(F/Bm/Bb 等真横按仍正常画),圆点大小同步微调防粘连;④ 「记谱风格」独立分组——移入左栏「记谱法 · 谱号」组(与 TAB/TAB+五线谱 同组),不再混在音符记号里;⑤ 联排五线谱谱号可选:新增 高音谱号(吉他标准)/ 低音谱号(贝斯记谱)切换,低音吉他/贝斯谱的联排更专业;⑥ 技巧面板「下推弦」改为「哑音」——下推弦(推弦回放)已并入推弦弹窗的类型选择,原按钮位改为哑音 ×(死音)直达入口。
- v45.6谱面细节修复批次 1 + 五线谱小节内换谱号:① 吉他谱 × 记号放大(闷音/和弦内音 ×→15px、打板 ×→16px,与品位数字视觉匹配);② TAB 休止符改用出版级 SMuFL 字形(与五线谱同源,此前的文本字形过小),附点休止的附点也同步画出;③ 五线谱+TAB 联排间距自适应——低音弦下加线音符多时谱表与 TAB 自动拉开,不再互相重叠;④ 五线谱支持小节内换谱号:记号面板新增「谱号切换」,自选中音起在高音/中音/低音谱号间切换(同一小节内也可多次切换,谱面画小号谱号;仅换记谱位置,音高与播放不变),并进 MusicXML 导出/导入无损往返;⑤ 拍弦记号改为「框内×」(GP 惯例:方框内音符一律记 ×);⑥ 右栏曲谱信息卡补齐——新增作词/作曲/制谱/调弦/谱类·小节数,与曲谱数据实时同步,空值行自动隐藏。
- v45.5左栏记号/技巧按钮全面「符号优先」(出版级 · 与谱面同源):编辑器左栏「记号 / 演奏技巧 / 装饰·力度 / 扫弦·琶音」面板的按钮,从「中文文字为主」升级为标准出版级符号大图 + 中文小字为辅——升降还原号/延长号/跳音/保持音/重音/顿强/波音/颤音/回音等直接取谱面渲染同一份 Bravura(SMuFL) 字形(按钮上看到什么,谱上就是什么);连音线/断音/震音/滑音/琶音/切音等按谱面画法内联绘制;吉他技法字母(S/h/p/b↑/P.M.…)改为与谱面一致的衬线斜体。鼠标悬停仍有完整中文说明。找记号从「读文字」变成「认符号」,与专业制谱软件一致。
- v45.4微信支付上线 + 看谱页分享卡(微信生态四件套):① 微信扫码支付——「我的权益」里可直接微信支付开通会员(月/年)与考编内容包:点按钮出二维码、扫码支付、到账即时生效(服务端以主动查单确认为准,安全可靠;与兑换码并行可用)。② 看谱页也能出分享卡——在线看任何发布谱时,观看栏新增「分享卡」:一键生成品牌谱面卡图片(含直达本谱二维码),手机上长按即可保存/转发微信,看谱人也能帮谱传播。③ 微信扫码登录服务端就绪(配置后自动显示入口);④ 谱库小程序脚手架入库(web-view 承载谱库,分享卡片带谱直达,待管理员配置业务域名后提审)。
- v45.3会员体系上线:真实权益 + 兑换码开通(商业闭环 · 第一步):个人中心「我的权益」从演示页升级为真实会员系统——① 权益如实划分:全部核心制谱(八场景/三谱互切/智能配谱/MusicXML/云同步 500 首/发布)明确永久免费;会员(¥15/月 · ¥98/年)提供云端曲谱扩容至 2000 首等真实增量;「考编内容包」(¥39 买断)制作中,上线后自动到账。② 兑换码开通:输入官方渠道购得的兑换码即时开通、跨设备生效(服务端权益记录,不再是本机演示开关);在线支付即将上线。③ 服务端新增权益/订单/兑换码/流水/统计五张数据表与管理工具,为在线支付与创作者分成打好地基。
- v45.2自动配和弦会用「副属和弦」了(P1 智能配谱深化收官):当旋律里明确写了某个升号导音、且下一小节正是它的解决目标时,自动配和弦会把这一小节配成副属和弦(离调属七)——比如旋律出现
#4且下一小节是 G,本小节自动配 D7(V/V),进行更有推动力、更地道。纯自然音旋律不会触发(不无端加半音色彩),是保守的旋律驱动策略:只在你确实写了变化音时才用。至此 P1「智能配谱 + 织体」深化收官(功能和声全局寻优 → 属七终止 → 一小节两和弦 → 四种拍号织体 → 副属和弦)。tv_arrange回归增至 10 项。 - v45.1伴奏织体扩到 2/4 与 6/8 拍(P1 · 织体深化):内置伴奏织体库从「只支持 4/4 与 3/4」扩到2/4、3/4、4/4、6/8 四种拍号,新增 4 套织体:进行曲 2/4、波尔卡 2/4、船歌 6/8、摇篮曲 6/8(6/8 的附点四分脉冲、蓬-哒-哒律动)。这样 2/4 的进行曲/儿歌、6/8 的抒情摇篮曲 也能一键生成双手伴奏——师范儿歌伴奏、艺考视唱常见的复合拍终于有了内置织体。
tv_acc/tv_arrange回归同步更新。 - v45.0自动配和弦支持「一小节两个和弦」(P1 · 和声节奏):智能配谱不再一小节只配一个和弦——4/4 小节里当下半段明显另属一个和弦时,会自动在后半拍补上第二个和弦(如一小节前半 C、后半 G),更贴近真实歌曲的和声节奏;下半段仍属同一和弦时保持一个,不画蛇添足。沿用 v44.9 的功能和声全局寻优选主和弦,再对下半段按分数与功能走向决定是否加和弦,生成的双手伴奏随之逐拍换和弦。
tv_arrange回归增至 8 项。 - v44.9智能配和弦升级:配得更「地道」了(P1 智能配谱深化):一键配伴奏/自动配和弦的和声引擎从逐小节贪心升级为全局功能和声寻优(Viterbi)——不再各小节各自挑一个「音符最贴」的和弦,而是同时权衡旋律契合度 + 和声进行的功能走向,产出连贯地道的进行(主→下属→属→主 顺行、属→主 正格解决,抑制「属→下属」逆行)。并新增属七和弦 V7:当旋律里出现属和弦的小七度音时自动用 V7、终止式更有推动力(如 …F G7 C)。旋律清晰时结果不变、更稳;旋律模糊处进行更顺。
tv_arrange回归增至 7 项。 - v44.8倚音/滑音/力度/速度术语进 MusicXML 往返(P0 互操作深化):MusicXML 导出/导入再补四类表情记号的无损往返——前倚音(装饰音)、滑音、独立力度记号(f/p/mf/sf…)、意大利速度术语(Andante/Allegro…)。此前这些记号导出会丢、从 MuseScore 等导入也读不回;现在导出→导入逐音一致(倚音→
grace、滑音→slide、力度→dynamics、术语→words)。至此谱面记号体系的 MusicXML 保真度进一步收口。tv_mxl回归增至 8 项。 - v44.7六线谱(TAB)也能导 MusicXML 了(P0 互操作深化):吉他/独奏/尤克里里的 六线谱声部现在可导出 / 导入 MusicXML——导出为标准 TAB 谱表(六线定弦
staff-tuning+TAB谱号 + 每个音的弦号/品位技术标记 + 变调夹),可直接在 MuseScore / Guitar Pro / Finale 打开;导入这些软件的 TAB 也能还原成谱友圈的六线谱。此前只有简谱/五线声部能导 MusicXML,纯 TAB 谱直接被拒——这道口子补上了。自定义调弦(Drop D / DADGAD…)、变调夹、和音、闷音 ×、附点、休止全程往返一致(导出→导入逐音校验)。新增tv_tabmxl回归 5 项。 - v44.6官网 SEO 基建 + 四垂类场景落地页(Sprint 2 · 增长回路收官):为官网补上被搜索引擎收录的基础设施——robots.txt、站点地图(含发布谱动态 sitemap)、每页 canonical 与社交分享大图(og:image)、结构化数据;并新增四个垂类场景落地页:教师考编、音乐艺考、师范·音乐教育、钢琴即兴伴奏(
/kaobian/yikao/shifan/jixing),各自讲清「这个场景怎么用谱友圈配伴奏、出规范谱」,带 FAQ 结构化数据便于命中搜索结果。首页与页脚新增「适用场景」入口。配合 v44.4 发布谱落地页,让目标人群能从搜索/分享一路走到谱友圈。tv_site 回归扩至 14 项。 - v44.5看谱时可一键收藏,登录后跨设备同步(Sprint 2 · 增长回路):在线观看任意发布谱时,观看栏新增「♡ 收藏」——已登录点一下即收藏进「我的收藏」并同步到云端(换设备也在);未登录点收藏会就地拉起登录(不打断看谱),登录/注册后自动把这首谱收好——接住「读者看到喜欢的谱、正想收藏」这个最自然的注册时机(看谱→留账号钩子)。本机/预览环境下收藏仅存本地、不弹登录。新增
tv_fav回归 3 项。 - v44.4发布谱能被搜索/微信收录了(Sprint 2 · 增长回路):为每首已发布的曲谱生成一张可被搜索引擎/微信抓取的服务端落地页(
puku.puyouquan.com/pub/ID)——含真实标题、描述、社交分享大图(og:image)、结构化数据(JSON-LD)与规范链接(canonical),真人打开会自动转到在线观看页(可移调/跟谱)。此前观看页是纯前端渲染、爬虫抓到空壳,发布的谱无法被百度/微信收录;现在分享卡二维码、发布成功链接均指向这张落地页,被转发/收藏后能持续为谱友圈带来自然搜索流量。零依赖服务端出页 + 动态生成品牌封面 SVG,新增 SSR 端到端回归 9 项。 - v44.3手机看谱不用再左右拖 + 未登录发布先登录(Sprint 2 · 增长回路):① 移动端观看 fit-to-width——打开分享/谱库链接看谱时,谱面自动按屏宽等比缩放铺满,一屏看全整行、不再需要横向平移(观看/分享/谱架等只读模式生效;编辑器放大后仍可滚动查看)。手机微信里点开分享的谱,第一眼就是完整谱面。② 线上未登录点「发布」直接拉起登录——此前未登录点发布只写到本机却提示「已记录发布」(他人看不到、易误解),现按钮显示「登录后发布到谱库」并一键唤起登录,接住最自然的登录时机。新增
tv_mobile回归 3 项。 - v44.2分享卡二维码可扫了(Sprint 2 · 增长回路):曲谱分享卡右下角的二维码从「示意占位」升级为真实可扫二维码——已发布的谱,扫码直达该谱的在线观看页(
?pub=链接,可播放/移调/跟谱);未发布则扫码进谱友圈制谱。内置零依赖纯 JS 二维码编码器(byte 模式 + Reed-Solomon 纠错,符合单文件无构建约束),生成的码经独立解码器往返校验、并对「渲染到卡片后」的成品再次解码确认可扫。分享出去的每张卡从此都能把人带回谱友圈。新增tv_qr回归 6 项。 - v44.1云同步更可靠:并发不丢改动 + 删除不复活(Sprint 1 · 数据完整性):① 多设备并发编辑不再静默丢失——当云端已有更新版本、你本机这次改动更旧时(此前会被云端版直接覆盖、改动消失),现自动把本机这份另存为「(冲突副本)」保留在「我的曲谱」,两版都在、由你取舍(类云盘冲突副本)。② 删除不再"复活"——新增删除墓碑,删掉的曲谱不会再被离线的其他设备同步时推回云端、也不会被云端拉回本机;离线删除的指令会在下次联网补发。均为幕后可靠性修复,新增
musetab-deleted键(只增不改红线),tv_sync 回归增至 9 项。 - v44.0登录安全:退出所有设备(Sprint 1 · 信任):个人中心账号卡新增「退出所有设备」——一键作废你在全部设备(含本机)上的登录,用于手机丢失 / 登录态泄露时的自保(此前「退出登录」只清本端,泄露的登录凭据在有效期内无法作废)。技术上服务端自增账号
tok_ver使全部已签发令牌立即失效;普通「退出登录」仍只清本端、不影响其他设备。 - v43.9隐私政策如实披露(合规 · Sprint 0):账号系统与云端同步已上线,隐私政策与「关于」页同步更新——如实说明手机验证码登录收集手机号、微信登录收集 OpenID/UnionID/昵称/头像、登录后云同步与发布会上传曲谱、短信经阿里云发送等真实数据处理(此前文案仍写「不设账号、不上传」,与现状不符)。未登录仍为纯本地、不上传。你可随时退出、删除云端曲谱或注销账号。
- v43.8安全加固(六维审计 Sprint 0 · 止血):① 观看他人发布/分享的谱面时增加内容清洗——打开谱库或分享链接的曲谱前,对来源数据做安全过滤,杜绝被构造的谱面在你浏览器里执行任何脚本(存储型 XSS 防线);② 修复云端曲谱删除的越权问题——服务端现严格校验「只能删除自己的曲谱」且删除在数据库事务内完成,杜绝他人误伤你对某曲谱的收藏/谱架记录。纯安全与数据完整性修复,不改谱面数据与你的使用方式。
- v43.7品牌与域名分工梳理:制谱平台 × 谱库:明确两个独立站点——制谱平台(本编辑器,
zhipu.puyouquan.com,主标题「谱友圈」、副标题「专业制谱平台」)负责做谱;谱库(puku.puyouquan.com,主标题「谱友圈」、副标题「谱库」)是专门在线展示谱面的站点,发现好谱、看谱移调跟谱,微信小程序(轻量版)日后也复用这套谱库展示页、以独立网站形态呈现。编辑器顶栏「预设」旁的入口由「曲谱库」改名「谱库」并直接跳转 puku.puyouquan.com(本机预览无该域名时回落到内置演示库)。纯品牌/导航调整,不改谱面数据与渲染。同时热修 v43.6 更新日志里一处反引号未转义(Cookie一词误用反引号包裹,落在模板字符串内导致整段脚本解析失败、编辑器白屏),现已改为 HTML 标签包裹,脚本恢复正常。 - v43.6微信扫码登录(开放平台·网站应用):登录 / 注册弹窗新增「微信扫码登录」——手机微信扫码即可登录,与手机验证码登录共用一个账号体系(同一微信开放平台主体下
unionid统一,网站 / 公众号 / 小程序日后互通)。零依赖后端(api/wx.jsOAuth +stateHMAC 防伪 + 回跳地址白名单),凭据只存服务器环境、不入代码;Cookie按.puyouquan.com三站共享。仅在服务端配置了微信应用后显示该入口(无死按钮)。接入方式见docs/wechat-login-setup.md。公众号网页授权、小程序轻量版按同一 unionid 账号体系后续接入。 - v43.5变拍子(per-measure 拍号)(完整度审计 Tier 2 收官):全曲不再只能一个拍号——现可为任意小节单独设定拍号(如 4/4 → 3/4 → 6/8 → 7/8)。用法:选中小节 → 小节面板「本小节拍号…」选 2/4…12/8 之一(选「恢复全曲拍号」清除)。改动全链路贯通:节拍校验按本小节拍号(3/4 放 3 拍不再误报)、符杠/减时线成组按本小节 unit(6/8 八分按 3 成组)、谱面在拍号变化处标注新拍号(五线谱字形 / 简谱 N/M 小字,联排谱表头同标)、版面自动预留拍号横向空间、播放时长按各小节拍号、MusicXML 导入导出按小节
<time>往返。核心meaMeter(mi)/beatsOf(c,unit)贯穿 40+ 调用点。mea.beats/mea.unit为只增字段,旧谱与既有单一拍号完全兼容。新增tv_meter回归 8 项。至此完整度审计 Tier 2 全部落地。 - v43.4MusicXML 互操作保真:八度记号 / 震音 / 双变音(完整度审计 Tier 2·P0 互操作):与外部制谱软件(Sibelius/MuseScore/Finale/Guitar Pro)互导时补齐三项保真——① 八度记号导出/导入
<octave-shift>(8va/15ma=down·上方,8vb/15mb=up·下方,span 起止完整,导入后逐列还原移位);② 震音导出/导入<tremolo type="single">N</tremolo>(1/2/3 杠);③ 双变音导入拼写保真——源含重升/重降(alter=±2)时直接还原为 ×/♭♭ 拼写(此前统一归一为升号系,音高对但拼写丢失),音高逐音一致。往返一致性回归全绿。新增tv_mxlfid回归 3 项。 - v43.3电吉他推弦回放 bend & release + 预推 pre-bend(完整度审计 Tier 2 续):推弦在常规上推之外新增两型——推弦回放(bend & release)画 ∧ 形(推上到顶点再回落到目标音,末端下箭头);预推(pre-bend)画起音处竖直上箭头(拨弦前已推起),可单音使用、也可预推后回落。用法:Ctrl 选两音加推弦后再点推弦按钮,在幅度菜单里选「推弦回放 / 预推」;单个音符直接点推弦 = 预推。幅度 full/½/¼/1½ 与目标圆圈保留。纯记谱层。新增
tv_bend回归 5 项。 - v43.2滑音 glissando(完整度审计 Tier 2 续):旋律声部新增滑音——「音符记号」面板点「滑音/」,本音以直线滑到下一个音(含跨小节续接),跨度够宽时线上标斜体 gliss.;五线谱按符头连线、简谱按音高方向斜线。纯记谱层,播放不变。新增
tv_gliss回归 5 项。 - v43.1震音 tremolo(完整度审计 Tier 2 续):旋律声部新增震音记号——「音符记号」面板点「震音≡」连按循环 1→2→3 杠→取消,表示该音以八分 / 十六分 / 三十二分快速轮奏(出版惯例)。五线谱把 1-3 条斜杠画在符干中段(全音符画在符头上方,自动按符干上下朝向摆放),简谱画在数字上方(避让高八度点)。纯记谱层,音符实际音高与播放不变。视奏/器乐/钢琴谱常用记号补齐。新增
tv_trem回归 5 项。 - v43.0记号显示放大优化:① 简谱升降号放大并左置贴数字——♯/♭/×/♭♭ 此前是数字左上角的小上标(偏小难辨),现按 GB 简谱惯例放大(10→14 号)并平移到数字正左侧、纵向贴近数字中线,重降 ♭♭ 双字符略缩再左移避免压字;和音叠音的变化音同步放大。② 吉他分解 / 闷音 × 记号放大——TAB 中和弦内音/闷音的 × 此前 10 号、与品位数字视觉不匹配,现放大到 12.5 号并加宽纸色描边,清晰对齐。纯显示层调整,不改数据与音高。新增
tv_glyphsz回归 3 项。 - v42.9双变音手输:重升 × / 重降 ♭♭(完整度审计 Tier 2 续):音符变化音现支持重升(double sharp)与重降(double flat)——「音符记号」面板♯ 键连按:无→升→重升(×)→无,♭ 键连按:无→降→重降(♭♭)→无(♮ 还原不变)。五线谱按 SMuFL 标准字形画 𝄪 / ♭♭(含小节内临时记号进位:同线重升后转单升自动补 ♯),简谱行标 × / ♭♭ 前缀(含和音叠音);播放音高按 ±2 半音正确发声,MusicXML 导出
<alter>±2</alter>。视唱练耳/器乐/艺考的和声小调导音、变化音级、转调经过音等终于可精确记谱。均为既有col.acc字段扩值('x'/'bb'),旧谱与 #/b/还原完全兼容。新增tv_dblacc回归 5 项。 - v42.8八度记号 8va / 8vb(ottava 线,完整度审计 Tier 2 续):五线谱声部新增八度线——把音区极高/极低的乐句按记谱移低/高一个八度收拢大量上/下加线,谱表上方(8va/15ma)或下方(8vb/15mb)画斜体标签 + 虚线括线 + 端点竖钩(出版惯例),实际音高与播放、导出完全不变(只改谱面位置)。用法:五线谱声部「音符记号」面板点「八度线8va」,Ctrl 选首末两音标注整句、单选标注单音,弹出 8va/8vb/15ma/15mb 四选一(再点清除,整段一并清除);跨行时括线画到行末断开、次行续接。仅五线谱记谱声部可用(简谱仍用「8度±」直接升降八度,二者不同:8度±改实音、八度线只改记谱)。移位由
staffStep内联,符头/加线/符干/符杠/临时记号/连线全部随动。新增tv_ottava回归 4 项。 - v42.7意大利速度/表情术语库 + 弱起小节(完整度审计 Tier 2,视唱练耳/器乐/艺考刚需):① 速度术语库——「曲谱信息」新增速度术语下拉(Grave/Largo/Adagio/Andante/Moderato/Allegro/Presto… 16 项可选、亦可自填如「Andante cantabile」),谱首在 ♩=X 旁以斜体加粗标注(出版惯例),五线谱/器乐谱同样显示。② 表情术语——力度菜单扩充 dolce(柔美)/ cantabile(如歌)/ espressivo(富表情)/ legato(连奏)/ leggiero(轻巧)/ a tempo(回原速)/ rubato(自由速度)/ tacet(此段休止),标在音符下方斜体文字,仅记谱、不改播放音量(力度记号仍影响音量)。③ 弱起小节 Anacrusis——「曲谱信息」勾选弱起小节后,首小节不足拍不再误报「节拍不满」(但超拍仍报错),且谱面重新编号:弱起小节不编号、其后第一整小节记为「1」(出版惯例)。均为 song 只增字段、纯记谱层,不影响既有谱与播放。新增
tv_tempo回归 4 项。 - v42.6独奏谱五线谱改用吉他移调谱号(treble-8vb)(完整度审计 Tier 1 收官):吉他独奏/指弹谱的六线+五线联排中,五线谱此前用普通高音谱号按实音记谱,低音弦(如空弦 E/A)堆大量下加线(低 E 达 7 条),可读性差。现改用吉他标准移调谱号——谱号下方标「8」(实音低八度)、记谱升八度,把吉他音域收拢到谱表附近,单音下加线最多由 7 条降到 3 条,符合所有正式吉他谱出版惯例。仅独奏/指弹联排谱生效,器乐五线谱/钢琴谱/歌谱不受影响;声部实音与播放不变。至此审计 Tier 1 结构四修(大谱表小节线贯穿 / 复合拍号符杠 / 跨小节连线 / 移调谱号)全部落地。
tv_engrave回归扩至 8 项。 - v42.5连音线跨小节续接 + TAB/和弦图刻版精修(完整度审计续):① 跨小节连音线/圆滑线续接——末音连到下一小节首音时,弧线此前只画到本小节右缘悬挂,现跨过小节线连到目标音(五线谱、简谱同源共修);② 推弦弧线加箭头——推弦弧线末端补向上箭头表示音高走向(Guitar Pro / Hal Leonard 惯例,参考手册明确要求),full/½/¼/1½ 幅度标注保留;③ 和弦图横按横杠——最低按弦品位在两根以上弦时画粗圆角横杠(食指横按,如 F / Bm / B7),与开放和弦(C/G/Am 逐弦圆点)区分。均纯渲染、字段只增。
tv_engrave回归扩至 7 项。 - v42.4出版级刻版结构修复 + 记号补齐(对照《乐谱记谱大全》完整度审计 Tier 0/1):① 复合拍号符杠成组——6/8·9/8·12/8 的八分音符此前逐个带符尾,现按附点四分(每三个八分)正确连成一组(Gould 惯例);五线谱符杠、简谱减时线、六线谱符杠三处同源一并修正。② 大谱表小节线贯穿上下谱表——钢琴独奏/弹唱谱的内部与终止小节线此前在上下谱表间断开,现一次画穿连结成整体(键盘大谱表刻版惯例)。③ 新增顿强 Marcato(∧)演奏法(五线谱 Bravura 字形 + 简谱几何,比重音更强)与 sf / sfz 突强力度记号。均为纯渲染/字段只增,不影响既有谱。新增
tv_engrave回归 5 项(含符杠成组数、跨谱表竖线几何断言)。 - v42.3吉他谱三分类 + 演奏技巧符号大补充:新建向导把吉他谱拆为吉他弹唱谱 / 吉他独奏谱(电吉他)/ 指弹吉他谱三入口,独奏与指弹共享「六线+五线联排」基座但各自加载专属技法面板(按
gtype感知,切换即刷新)。① 电吉他技法:摇把 whammy(俯冲/上滑/下点/颤音)、泛音细分(人工 A.H./拨片 P.H./点弦 T.H.)、let ring 余音保持(虚线范围)、推弦幅度(沿用 full/½)。② 指弹技法:右手指法 p i m a、特殊调弦(Drop D / DADGAD / Open G / Open D,谱首自动标注)、打板(低音区/高音区/击板 golpe)。③ 通用:N.C. 无和弦段。用法:六线谱选中音符→左栏「演奏技巧」面板点对应记号(摇把/泛音/pima 作用于音符,打板作用于列,let ring 可 Ctrl 选首末两音覆盖范围);特殊调弦在新建独奏/指弹谱时选择。所有新增均为 song 只增字段,不影响既有谱。新增tv_gtech回归 9 项。 - v42.2各谱类预设曲谱补齐 + 制谱功能深测(5 位谱类制谱师专家协作):曲谱库谱类覆盖由 4 类升级到全 10 类——新增 9 首出版级预设:独奏谱(六线谱+五线谱联排,击弦/勾弦/滑弦/推弦/揉弦五技法)、钢琴独奏(大谱表分解/柱式/阿尔贝蒂三织体)、钢琴弹唱伴奏、歌谱《送别》(两段词逐字对位)、四部合唱(SATB 同源简谱)、器乐五线谱《小步舞曲》(倚音/颤音/三连音/加线音)、教学对照谱(五线+简谱行逐列对齐)、纯和弦谱(卡农+4536)、功能谱进阶(下行贝斯+副属和弦)。同时按出版规范深度测试各谱类并修复三处:① 独奏谱不再把低音/空弦误记为 ×(默认显示品位数字);② 简谱休止不再错误接增时线(GB 惯例);③ 纯和弦谱构造健壮性加固。其余刻版问题(大谱表小节线贯穿、吉他移调谱号、复合拍号符杠分组、跨小节连音线续笔等)已归档
docs/notation-audit-v42.md排期。新增tv_presets回归(遍历全部预设渲染校验 + 谱类覆盖断言)。 - v42.1创作者一键发布到在线谱库打通(云端生态 M2 收官补完):编辑器创作者中心的「发布」不再只是本机演示——登录后点「发布到在线谱库」即真实上架
puku.puyouquan.com:① 非创作者自动开通创作者(开放注册);② 先确保曲谱已存云端(含极端短 id 自动升级),再置为已发布;③ 弹出可复制的公开链接(zhipu.puyouquan.com/?pub=ID,任何人可在线观看 / 移调 / 跟谱)与谱库入口。发布菜单文案按登录态区分(在线发布 vs 本机演示提示);未登录 / 预览环境仍走原本机演示不变。当前线上谱库统一按免费展示(售卖 / 试读功能开发中)。新增tv_publish回归 6 项。 - v42.0官网谱库同款卡片 + 全站登录(云端生态 M2 收官):① 官网谱库页与首页「最新发布曲谱」改为与编辑器曲谱库同款卡片——迷你旋律封面(取谱面首句音符+歌词)+ 类型标签 + 免费/价格 + 标题 + 制谱者,点开进编辑器观看模式;公开接口
/api/pub/scores补返回封面/类型/小节数。② 官网导航新增「登录 / 注册」:站内手机验证码弹窗,与编辑器/谱库共享账号(Cookie 域.puyouquan.com互通),登录后导航显示昵称与下拉(个人中心 / 谱库 / 退出);③ 导航「谱库」链到puku.puyouquan.com子域,入口统一。新增tv_site回归 6 项、后端断言至 33 项。 - v41.9谱库上线(云端生态 M2):puku.puyouquan.com 谱库页从介绍页升级为已发布曲谱列表,卡片点开即在编辑器进入观看模式——只读干净谱面 + 即时移调 + 播放跟谱 + 谱架全屏卷谱。技术上编辑器新增
?pub=ID深链(openRemotePub拉公开接口/api/pub/scores/:id复用观看模式渲染),后端新增公开谱库接口与创作者「发布 / 下架」,并预置官方示例谱(小星星 / 欢乐颂)使谱库开箱有内容。创作者从编辑器一键发布将随手机登录开放。新增tv_pub回归 5 项。 - v41.8我的曲谱云端同步(云端生态 M1b 第二步):登录后「我的曲谱」自动在设备间同步——保存立即上云、编辑 6 秒去抖续传、登录时双向拉取合并(按修改时间 last-write-wins),删除同步传播;未登录 / 本机 / 预览环境保持纯本地,行为不变。技术上新增
mtime时间戳字段(与既有updatedAt并存,不改任何数据红线),极端短 id 自动升级为云端兼容格式;超大曲谱云端跳过并提示、网络失败静默重试。新增tv_sync回归 7 项。提示:需先完成手机验证码登录(阿里云短信配置就绪后开放)。 - v41.7真实账号登录上线(云端生态 M1b 第一步):个人中心接入手机验证码登录 / 注册——未注册手机号自动创建账号,登录态经 httpOnly Cookie 在制谱 / 官网 / 谱库三站互通(域
.puyouquan.com);个人资料页顶部新增账号卡(昵称 / 手机号打码 / 创作者标识 / 退出登录),登录后可成为创作者(开放注册,一键升级)。后端为自建零依赖 Node 服务(Node 24 内建 SQLite,短信走阿里云),已配三级频控防轰炸。当前仅 puyouquan.com 线上启用,本机 / 预览环境自动降级为纯本地(原有本地演示数据不受影响)。下一步接入曲谱 / 收藏 / 谱架 / 谱集的云端同步。 - v41.6上线体检:① 备案号落地——页脚「备案号:申请中」更新为「粤ICP备2026100396号-1」(编辑器与官网各页同步);② 官网设计换向——site 全站从蓝紫渐变切换到与编辑器一致的素材配色(朱砂强调 / 墨绿深色区 / 暖米三级表面 / 中文字体前置栈);③ 官网「帮助」升级为详尽使用手册:快速上手 / 八种谱类逐类指南 / 记号大全(含 v41.1–41.3 全部新记号用法)/ 和弦与级数 / 歌词填词 / 排版打印 / 导入导出 / 播放与跟练 / 快捷键 / 常见问题,共 11 章带侧边目录。
- v41.5编辑组中文化 / 双附点 / 单窗口化(产品负责人三项指示落地):① 工具行「编辑」组——原「音符」组更名「编辑」并恢复中文按钮(后插/前插/休止/清音/拆分/合并/删除,时值/节奏/记号组保持字形),八度+/−并入本组(简谱面板原按钮在新版界面去重隐藏),工具行按 1440 宽度预算整体收紧不溢出;② 双附点——附点按钮循环 无→附点→双附点→无(时值×1.75),按出版逻辑重设可用性:全/2/4/8 分可双附点、16 分限单附点、32 分不可附点(附点需要更低一级细分存在);联动补拍升级(双附点时半时值邻音自动再减半);拍值校验/播放时长/MIDI 导出全部同源生效;五线谱画标准两点;简谱增时线形态按 GB 惯例修正——附点二分改记「数字+两条增时线」(不再画增时线+附点混合形态)、附点全音符 5 条增时线;MusicXML 双 <dot/> 导出/导入往返一致,旧谱单附点数据原样兼容;③ 单窗口化——去掉多窗口标签与「+新建窗口」:新建/打开/导入/预设一律替换当前窗口,未入库且有编辑时先弹确认对话(可一键存入「我的曲谱」再继续);历史多窗口数据自动转存「我的曲谱」绝不丢失;智能配谱生成前自动保存原旋律谱。
- v41.4左右栏布局与图标全新升级(UI 架构评审落地,新版界面专属、经典版不变):① 左栏面板统一形态——组标题一律置顶左对齐、按钮左对齐排列(去居中锯齿);「记号」面板内按 扫弦·琶音 / 音符记号 / 演奏技巧(简谱:变音·连接·记号 / 装饰·力度)分小组显示;小节/段落层去嵌套双边框;② 语义图标补强——下扫/上扫箭头、智能填词、清空、编辑和弦等按钮补线性小图标,左轨「简谱」图标重绘更清晰;③ 右栏信息页升级——新增「曲谱信息」摘要卡(标题/演唱/调式/拍速/变调夹一眼可查,编辑入口直达弹窗),光标位置数值只保留声部/小节两处强调色;④ 智能页卡片化——分「创作辅助」「导入·互操作」两组,每项图标+标题+一句话说明;库页面板卡片形态与左栏统一;⑤ 谱类感知补漏——钢琴弹唱/纯和弦谱的库页不再显示无关的简谱节奏型,吉他和弦图编辑入口仅在含 TAB 声部的谱类显示。
- v41.3记号补充第三批·收官(制谱专家审计第 7–10 项落地):① 中途转调标记——小节层「转调标记…」选新调,小节头上方标「转1=X」(流行歌尾段升调/乐队排练常用;全曲换调时随之自动移调,一期为标注式、五线谱拼写保持谱首调);② 钢琴踏板 Ped.____*——「记号」面板「踏板Ped./踏板收*」两键成对,五线谱(钢琴/大谱表)下方画 Ped. 文字+延续线+*收尾,跨行自动断线续画(即兴伴奏/考编场景刚需);③ 指法数字 1–5——「记号」面板「指法」进入直录,按数字键 1–5 写入符头上/下方小数字(低音谱表标下方,和音随音高纵向堆叠,0/退格清除);④ 小节反复 𝄎——小节层「同前1/2小节」把小节省写为反复记号(本小节数据保留、节拍校验豁免,播放自动展开为前一/两小节内容)。四类记号均已同步接入 MusicXML 导出/导入(key 变更 / pedal start·stop / fingering / measure-repeat,往返一致)。
- v41.2记号补充第二批(制谱专家审计第 4–6 项落地):① 渐强渐弱范围括线——Ctrl 选首末两音再在「力度/速度」菜单选 < / >(或 cresc. / dim.),即从起音到终音画出开口楔形(cresc 开口向右 / dim 向左收拢,简谱与五线谱下方、cresc./dim. 为文字+虚线延长),终点在下一行时自动断行续画;② 推弦幅度——已推弦的音符再点推弦按钮可选 ¼ / ½ / full / 1½,推弦弧线上的 b↑/b↓ 换为幅度标注(Guitar Pro 惯例,可清除还原);③ 排练/段落文字标记——小节层「段落标记…」按钮输入 前奏 / A / 副歌 等短文字,小节头上方出版级方框粗体显示(与 𝄋/⊕ 自动避让,留空清除)。渐强渐弱括线与段落标记已同步接入 MusicXML 导出/导入(wedge crescendo/diminuendo、rehearsal,往返一致);推弦幅度 bend-alter 随 TAB 声部导出一并排期。
- v41.1记号补充第一批(制谱专家审计前 3 项落地):① 延长号 𝄐——简谱/五线谱/六线谱通用,音符(含休止)上方标准字形,简谱侧自动避让八度点/波音/演奏法,入口在简谱与吉他谱图层的「记号」面板(再点取消);② 演奏法四件套——断音▼ / 跳音· / 保持音− / 重音>(四者互斥):五线谱按出版惯例贴符头反符干侧(Bravura 字形),简谱按 GB 惯例画在数字上方;③ 换气记号 v——声乐/合唱刚需,标在列右上角表示本音之后换气(简谱/五线谱通用)。三类记号均已同步接入 MusicXML 导出/导入(fermata / articulations / breath-mark,往返一致),行距按需自动预留。
- v41.0风格页签撤销 + 左栏深度优化:① 右栏「风格」页签取消——记谱法(TAB/五线谱、简谱/谱表切换)回到左栏对应图层、记谱风格回吉他层记号区、和弦图显示在和弦层、级数↔音名在和弦层级数工具,右栏收敛为 信息/库/智能 三页签;② 左栏布局深度优化——统一卡片节奏(内距/卡距/圆角/28px 控件高收敛为一套标尺),面板加宽至 272px,分区更清晰;③ 新增「制谱专家」协作角色(.claude/agents),并启动各谱类记号与标记体系的出版级审计(报告落 docs/notation-audit-v41.md,补充项将按用户价值排期落地)。
- v40.9左栏图层重梳理:① 左轨改图形图标 + 中文小字——六线谱/四线谱(按乐器自动切换 6/4 线图形)、五线谱/简谱(按记谱法自动切换谱表/数字图形)、歌词、和弦、小节、段落;② 吉他层的扫弦·琶音、音符记号、演奏技巧合并为「记号」面板(记号+中文说明统一形态),简谱层的音符记号与装饰同法合并;③ 和弦只在和弦层、记谱法(TAB/五线谱切换等)归入右栏「风格」、「列」面板移除(插删列走工具行音符组);经典版布局不受影响。
- v40.8左轨图标化 + 功能归纳去重:① 左侧图层轨改纯图标显示(名称进悬浮提示),选中态改朱砂底,移除轨上「新建」(顶栏已有);② 节奏型与伴奏织体统一归入右栏「库」页签——吉他/简谱节奏型面板、钢琴伴奏织体工具整体移入库中集中管理,左栏图层与工具行不再重复出现(切回经典版自动还原原布局);③ 右栏「排版」页签与顶栏「排版」重复,改为「风格」页签——记谱风格(×记谱/全数字)、和弦图显示(随行/图例/隐藏)、和弦标注(级数↔音名)三类显示风格归纳一处;顶栏「排版」恢复浮层面板。
- v40.7中文渲染清晰化 + 全面去 emoji:① 界面字体栈改为中文字体前置(苹方/雅黑优先,素材同策略)——中西文统一由同一字体渲染,消除「拉丁字体优先、中文回退」造成的混排参差与伪粗合成,小字号中文更锐利;② 全部 emoji 图案替换为扁平线性 SVG 图标(36 枚自绘图标库,随文字颜色着色):播放条(回开头/节拍器/谱架/音轨)、右栏库与智能入口、新建向导、文档标签、曲谱库(浏览量/收藏审核状态/试读锁)、帮助与特色功能弹窗节头、节拍校验状态、搜索框等全线生效;历史更新日志文案同步清理。跨平台不再出现彩色 emoji 与系统字体差异。
- v40.6素材配色全面启用(产品拍板):① 应用配色整体切换为设计稿方案——朱砂强调(选中/播放/新建/个人中心)+ 墨绿顶/底栏 + 暖米三级表面与暖纸;深色主题、谱面反色同步换用朱砂族;告警色改琥珀与朱砂错开色相(时值不符提示不再与选中态混淆),打印仍白纸黑字;② 顶栏个人中心与右端图标同排同高(紧凑朱砂主按钮,素材 tprimary 样式);③ 底栏「回到开头」改为扁平图标;④ 修复底栏露白——播放条上的开头/小节格/节拍器/谱架/音轨等按钮此前继承浅色面板底、在深色栏上发白且文字对比不足,现统一透明底+暖米文字,禁用态同步修正。
- v40.5视觉舒适度升级(两位专业 Agent 对照设计稿逐项归因后落地,保持品牌蓝):① 中性色整体升温——画布/面板/工具栏转暖米调、谱纸从纯白改暖米白(打印仍纯白),相邻表面亮度阶梯平缓不刺眼;② 强调色纪律——蓝色只留给选中/播放/主按钮,光标数值回墨色(仅声部/小节活值保留蓝)、时值选中态从蓝底白字降为柔和蓝底;③ 边框降噪——灰黑透明线改暖色细线、卡片去阴影走纯扁平;④ 层级顺序修正——左栏分区标题移到按钮上方、左对齐、弱化小字距排版(先分类后内容);⑤ 工具行图标化单排——时值改音符字形(𝅝 𝅗𝅥 ♩ ♪ …)、音符操作/节奏/连音改字形 chip(中文名进悬浮提示),时值校验状态胶囊移到工具行右端(出错即刻入眼);⑥ 顶/底深色栏从近黑改靛墨色(蓝紫同族),撤销/重做/反色/风格图标化。经典版布局与文字按钮不受影响。
- v40.4新版界面 · 通栏应用框架(按 v5 设计稿贴边布局):新版下整个编辑器改为全屏应用网格——左侧图层轨与功能面板贴左缘、右栏四页签贴右缘,均为全高列(各自独立滚动),中间制版台内部滚动(顶栏/工具行/播放条常驻不动,只有谱面滚动);播放跟随与节拍错误跳转自动适配新滚动模型。左轨新增「+新建」(顶部,直达八场景向导)与「?帮助」(底部)。谱架/观看/打印模式不受影响仍为整页滚动;「经典版」一键切回原居中布局。
- v40.3新版界面 · 阶段四收尾:工具行单行化(v5 设计稿主体完工):① 编辑工具收为单行——演奏技巧(滑弦/击勾/推弦/揉弦/泛音/点弦/闷音/无头无尾滑音)并入左栏吉他谱图层、标识符号(倚音/波音/颤音/回音/力度)并入简谱图层,跟在「音符记号」面板后,编辑栏更清爽;② 窄屏适配——窗口较窄时左栏面板自动转为浮层(图层轨保持常驻,点图层弹出面板不再挤压谱面);③ 文档标签页扁平化微调。切回「经典版」时技法/记号回到编辑栏第二行。至此 v5 新版界面四阶段全部落地:深色外壳 → 左轨六图层 → 右栏四页签 → 单行工具行。
- v40.2新版界面 · 阶段三:右栏四页签(v5 设计稿路线):右侧栏重组为 信息 / 排版 / 库 / 智能 四个页签——① 信息页:曲谱信息、光标位置、节拍检查、帮助/特色/更新日志;② 排版页:排版面板从浮层常驻停靠右栏(纸张 A5/A4/A3、智能疏密、缩放/行距/间距滑杆实时生效),顶栏「排版」按钮直达;③ 库页:节奏型库、编辑/创建和弦、伴奏织体一站直达;④ 智能页:一键配和弦、一键配伴奏、智能填词、哼唱成谱、导入 MusicXML/MIDI 按谱类智能显隐、一键进入对应工作流。切回「经典版」时右栏卡片布局与排版浮层行为完整还原。
- v40.1新版界面 · 阶段二:左侧六图层轨(v5 设计稿路线):左侧栏升级为图标图层轨——吉他谱 / 简谱 / 歌词 / 和弦 / 小节 / 段落 六个图层按钮(图标+文字竖排,按谱类自动显隐与命名)。新增三个专属图层:和弦层(和弦输入/编辑指法/图示方式,谱类感知——简谱类曲谱显示级数和弦工具)、小节层(插入/删除小节)、段落层(反复/第一二段/D.C./D.S./Segno/Coda/段落线/终止线,全部展开直达不再折叠)——小节与段落工具从右栏移入左栏图层,右栏更专注于信息展示。切回「经典版」时布局与右栏「小节与段落」卡片完整还原。
- v40.0新版界面 · 阶段一(按 v5 设计稿路线,配色保持现有蓝紫并现代化):① 深色扁平顶栏与通栏播放条——顶栏改深色扁平风、新增快速换调 ♭/♯(和弦与品位自动移调);播放条从悬浮胶囊改为全宽深色底栏;② 护眼扁平化配色——界面背景转暖降亮、阴影减半(谱面纸张保持纯白不受影响);③ 工具行「音符」组前置到「时值」之前(同行排列);④ 顶栏新增「经典版」一键切换——新旧界面随时互切并记住选择。后续阶段:左侧图层轨(六线谱/简谱/歌词/和弦/小节/段落)与右栏四页签。
- v39.7把位方案排版修正:三张方案卡不再换行变形(右栏加宽+卡片紧凑化,标签超长省略号);高把位库指法不再误标「开放」(如 Cm 3品横按改标「常用」);创建器提示语精简为单行「点格新建 · 方案卡调整 · 顶部切 ×/○」。
- v39.6创建流引导 + CAGED 全把位:① 创建和弦改为引导流——点「+创建和弦」→ 自定义名称 → 在空白和弦图上点格编辑 → 保存(名称必填,点格重绘不丢已键入名称);② 把位方案补齐 CAGED 五型体系(C/A/G/E/D 型把位,C 大调即「开放1品→A型3品→G型5品→E型8品→D型10品」),默认只显示前三个、「更多 ▾」展开其余,卡片标注起始品位;③ 主音 12 键单行等分显示不再换行。
- v39.5创建和弦收口 + 常用指法修正:① 「我的和弦」区改为「创建和弦」——点格创建 → 命名 → 一键保存(随本谱携带与分享),移除本机用户和弦库;② 修正默认 C 等常用和弦被顶掉的问题——历史用户和弦库残留数据不再覆盖标准指法库,C 恢复 x32010 标准按法;③ 把位方案从低到高排序并新增 4弦根音 D 型——常用和弦现有「开放/A型/E型/D型」最多四种把位可选。
- v39.4创建体验修正:① 用户创建和弦时从空白和弦图开始——直接点格即全新创建,不再在当前和弦指法基础上调整(想改现有指法:先点「把位方案」卡载入底稿再编辑);把位数字可先填后点格,空白高把位创建一步到位;② 修复把位 ≥10 时把位方案小卡上的数字显示不全(两位数缩字号右靠,几何断言保证不裁切)。
- v39.3和弦细节打磨:① 创建器的「把位」由 −/+ 步进改为直接输入数字(1–12),高把位一步到位;② 主音左上角的升降号放大(谱面/和弦图/弹窗全线,约为主音字号八成),投影和打印下更清晰。
- v39.2和弦弹窗单页化:编辑和弦重排为紧凑双栏、一屏放下无滚动——左列「主音(原根音)/和弦性质/转位低音/命名保存/我的和弦」,右列大号可编辑和弦图(创建器兼预览,名称升降号左上角显示)+ 把位调节/试听 + 把位方案卡;按需求移除「和弦名直达」「调内常用」条与「自定义指法」文本行,创建统一走和弦图点格。
- v39.1和弦图式创建 + 升降号左上角:① 自定义和弦创建从「横向指板模拟」改为与谱面同款的竖式和弦图——点格放音(再点取消)、顶部点击切换 ×不弹/○空弦、「把位 −/+」移动品位窗口(横按高把位同样直观),所见即所得;② 全部和弦名显示改为出版惯例:升降号写在主音左上角(♯C、♭B、♭3),谱面 TAB 和弦、和弦图标题、功能谱级数/音名、弹窗预览全线生效——数据仍存 C#/Bb 格式,导出/移调/兼容不受影响。
- v39.0和弦引擎全面升级(两位专业 Agent 方案落地):① 和弦库扩容到全根音全类型——新增「可移调模板引擎」:每类型维护 E 型/A 型把位模板,12 个根音自动推导指法,覆盖 22 种类型(大/小/属七/大七/小七/减/减七/半减/增/挂二/挂四/七挂四/六/小六/九/大九/小九/加九/十一/十三/强力/小大七)×任意斜杠低音;精修开放指法保留优先,尤克里里走 4 弦通用推导;修复把位卡把减/增等和弦画成大三和弦的错误(468 个推导指法逐音高验证纯净)。② 编辑和弦弹窗升级——新增当前调内七级常用直达条、和弦名搜索直达(输 Abmaj9 回车即跳)、▶试听(按指法琶音)、类型 chip 扩到 22 种与功能谱口径统一。③ 功能谱级数菜单加和弦图预览与试听。④ 和弦输入候选动态化:调内和弦置顶→最近使用→自定义→精修库→全类型组合。⑤ 织体生成的和弦解析升级为全类型音程表(减/增/挂留/扩展和弦不再一律按大三和弦发声)。
- v38.8数据安全加固 + 体验快赢(三位专业 Agent 评审落地第一批):① 数据安全——历史曲谱单条损坏不再连累其余标签页;编辑触发渲染异常时自动撤销且坏状态不写入本地存储;存储写满明确提示并引导导出备份;打开预设/我的曲谱时,未入库且有编辑的曲谱不再被静默覆盖(自动另开新窗口保留)。② 快赢——播放条新增「谱架」直入按钮(编好谱立刻沉浸跟练,无需发布/导出);倍速下限增至 0.25×;新建向导中「导入 MusicXML / 导入 MIDI / 哼唱成谱」升级为高亮功能条;「发布到谱友圈」在决策点明确标注本机演示并导流互动谱;浅色主题语义色(成功绿/警示红/警告黄)加深达到 WCAG AA 对比度标准。
- v38.7揉弦延长线 + 闷音范围标记:① 揉弦(~)由单个符号升级为波浪线随音符时值延长——时值越长波峰越多(列格宽即时值比例),Ctrl 选首末两音还可让波浪覆盖整段;② 闷音 P.M. 支持扩选范围——Ctrl 选首末两音后自动画「P.M. + 虚线 + 末端竖钩」覆盖整段(出版惯例),单音仍为单个 P.M.,中间音符不再重复标记;其余技法(滑弦/击勾弦等)连线行为不变。
- v38.6左栏按谱类自适应:左侧工具栏改为「谱类感知」布局——页签按曲谱类型显隐并改名(独奏谱/钢琴伴奏/教学谱/功能谱/和弦谱…,无歌词行时隐藏歌词页),每种类型只保留相关面板并按工作流排序:钢琴弹唱把「伴奏工具」(标和弦→一键配和弦→伴奏织体)置顶,功能谱/纯和弦谱把「和弦·级数」置顶(纯和弦谱精简到两面板),歌谱/教学/器乐谱内置「一键配伴奏」入口;吉他谱面板拆分为「扫弦·琶音」与「音符记号」两组更好找;无歌词的谱可在简谱页「+添加歌词行」一键补歌词。
- v38.5动态互动谱 + 节拍器:① 打印/导出新增「互动谱 HTML」——把整个应用自打包成单文件网页并注入当前曲谱,对方浏览器打开即进入观看模式:可播放、倍速、节拍器、即时移调、谱架自动卷谱,无需安装、纯本地不上传(分享卡由此升级为「静态 PNG + 动态 HTML」双模式);② 播放条新增节拍器开关——播放时叠加拍点声、每小节第一拍重音,随倍速同步缩放;③ 播放条新增倍速(0.5×–1.5×)——慢速跟练/快速过谱,只改播放快慢不动曲谱速度设置。
- v38.4曲谱分享卡(P2·微信生态增长回路):打印/导出新增「生成分享卡」——一键产出竖版品牌谱面卡 PNG(750×1000):渐变品牌带 + 谱面首屏精裁 + 曲名/词曲/调速信息 + 谱友圈品牌与二维码占位(正式上线后替换为可扫的看谱链接),任何谱类通用,微信/朋友圈/小红书直接转发。纯本地生成,不上传任何数据。
- v38.3哼唱成谱(P2·大众获客钩子):新建向导「哼唱成谱…」——对麦克风清唱一段(或上传清唱录音),纯前端完成 音高检测(NSDF 自相关+首峰选取防八度错+中值平滑)→ 自动定调(12 大调音阶拟合+首末音加权)→ 16 分网格量化(连奏容差、跨小节连音线)→ 生成简谱草稿进编辑器精修;检测不到音高时友好提示。与 MIDI 导入共用同一量化引擎。提示:跟稳所选 BPM 清唱单音旋律(哼「啦」最准)。
- v38.2智能配谱(P1 收官·垂类成品交付):歌谱/教学/器乐谱顶栏新增「智能配谱」——对当前主旋律一键完成 自动配和弦 → 织体生成双手伴奏,在新窗口产出两种成品(原谱不动):①教学对照谱(旋律=五线谱+简谱行+歌词保留,下方右手/左手伴奏大谱表)②纯伴奏钢琴谱(旋律交给演唱者,和弦自动移到右手,接「伴奏织体」可重生成);已填和弦不覆盖;生成后一键换调全谱联动。即兴伴奏/考编场景从旋律到可弹可打印的对照谱一步到位。
- v38.1伴奏织体深化 + 一键配和弦(P1·即兴伴奏/考编垂类):织体库扩至 11 套并按难度分级(入门:抒情分解/柱式/半分解/儿歌伴奏/八分琶音/两种圆舞曲;进阶:阿尔贝蒂/低音行走/进行曲/全分解十六分琶音);织体弹窗新增「一键配和弦(建议)」——按右手旋律用功能和声(I/IV/V/vi/ii/iii)逐小节打分配和弦(强拍加权、根音加权、首尾偏主和弦),已有和弦的小节绝不覆盖,填入后可点击修改再生成伴奏。
- v38.0MIDI 导出(P0 互操作四件套收官:MusicXML 出/入 + MIDI 入/出):打印/导出弹窗新增「导出 MIDI」——标准 SMF:曲名/速度/拍号/调号完整;简谱声部逐轨导出(连音线自动合并为长音、和音同起同长);TAB 声部独立音轨(尼龙吉他音色、含变调夹音高偏移,×闷音跳过提示);可导入任意 DAW/编曲软件或用于跟弹练习。至此「AI 转谱 → 导入精修 → 专业格式交付」链路双向贯通。
- v37.9MIDI 导入(P0·直接吃下 AI 转谱/AI 作曲的主流输出格式):新建向导「导入 MIDI…」——纯前端解析标准 MIDI(含多轨/运行状态/速度/拍号/调号),16 分网格智能量化为简谱草稿:同起点合并为和音、超长音自动拆分并补连音线(含跨小节)、空隙补休止、附点识别;三种导入形式:单轨→歌谱、单轨按中央C自动分手→钢琴大谱表、双轨→钢琴左右手;量化简化处逐一计数提示。量化模块与后续「哼唱转谱」共用。
- v37.8MusicXML 导入(P0·把 AI 转谱产物"吃进来"精修):新建向导新增「导入 MusicXML…」——解析 score-partwise(MuseScore/Finale 等导出均可),自动换算为可动 do 简谱数据:音高按调号逆映射、时值优先读 type/附点/三连音、和弦标注/多段歌词/连音线/反复记号/各声部谱号(G/F/C→高/低/中音谱表)一并还原;暂不支持的记号跳过并计数提示,绝不产出坏谱;未读到调号按 1=C 提醒核对。导入后立即可编辑、可切三种记谱法。压缩 .mxl 请先在 MuseScore 转存未压缩格式。
- v37.7MusicXML 导出(P0·接入专业软件与 AI 转谱生态):打印/导出弹窗新增「导出 MusicXML」——简谱/五线谱声部完整导出为标准 score-partwise 4.0(音高按调号拼写与五线谱渲染同源;含和音、附点、连音线、三连音时值、和弦标注、多段歌词、调号/拍号/速度、反复与终止线、各声部谱号),可直接在 MuseScore / Finale / Sibelius 打开继续编辑或印刷。TAB 声部导出列入路线图。
- v37.6同列多音(和音):一列可叠 1+3 个音——五线谱逐音绘制符头/加线/临时记号、二度音程自动左右翻转、共用一根符干贯穿(含符杠组);简谱视图数字纵向叠置;播放同起同长发声;输入两种方式:面板「和音」按钮输唱名(自动向上排列)或五线谱 Ctrl+点击线/间直接加减。伴奏织体库补全柱式类:柱式和弦、半分解、圆舞曲柱式(织体库共 8 套),行距自动为和音扩展。
- v37.5钢琴弹唱谱·伴奏织体:右手谱表按拍标注和弦 → 顶栏「伴奏织体」选织体一键生成双手伴奏(抒情分解/流行八分琶音/阿尔贝蒂低音/低音行走/圆舞曲,4/4 与 3/4)——生成的是可编辑真音符,和弦标注/歌词/力度自动回填,小节内换和弦逐拍生效,可分范围重生成、Ctrl+Z 撤销,换调自动联动移调。大小三和弦自适应三音。
- v37.4纯和弦谱(功能谱新谱式):小节格内按拍放和弦、每拍节奏斜线(出版和弦格惯例),小节格均匀排布;支持反复/段落/终止线与级数⇄音名切换,乐队排练一页纸。
- v37.3曲谱类型重构为八大场景(深度梳理中国曲谱用户后重新定位):弹唱谱(吉他/尤克里里)、独奏谱(指弹·电吉他,TAB+五线联排)、钢琴弹唱谱(纯伴奏)、钢琴独奏谱、歌谱(独唱/合唱1–4声部·民乐通用)、教学对照谱(五线+简谱行)、器乐五线谱(高/中/低谱号)、功能谱(级数和弦/纯和弦谱);曲谱库分类同步,旧曲谱自动归类。
- v37.2换调自动移调:曲谱信息里更改 1=调号后,全曲和弦名(含斜杠低音、maj7/sus/dim 等后缀,按新调升降体系拼写)与吉他谱品位自动整体平移——优先保持全部音不越界的统一平移(必要时整体换八度),个别越界音按八度回折;简谱唱名与歌词不变;和弦图自动换用新和弦标准指法;一次 Ctrl+Z 可整体撤销。
- v37.1修复大谱表花括线显示不完整:非均匀缩放在特定跨度下误走默认字号分支,导致花括线只有一小段;现按两谱表实际外沿精确拉伸,并新增花括线跨度自动断言(上端=高音谱顶线、下端=低音谱底线)防复发。
- v37.0五线谱四项升级:① 大谱表花括线换 SMuFL 标准 brace 字形(非均匀缩放精确跨接两谱表);② 行距随音域自动扩展——谱表上/下加线区按整曲实际最高/最低音预留空间,相邻声部内容不再交叠(低音谱高加线音的符干/符杠本就朝下,此前是行距不足造成的视觉重叠);③ 五线谱行不再显示声部名;④ 记谱法新增「+简谱行」——谱表下方附加一行与五线谱逐列对齐的简谱(含高低音点/减时线/附点/延音线),构成「五线谱+简谱+歌词」出版式联排;并修复中音谱表切换未生效的问题。
- v36.9五线谱系统头部按严格出版标准重构:① 谱线自系统左端起、谱号画在谱线上(G谱号锚G4线、F谱号锚F3线、新增中音谱表C谱号锚中线);② 调号紧随谱号、每个升降号按字形宽度全尺寸依次排列(任何调不压缩不重叠),升号序F-C-G-D-A-E-B/降号序B-E-A-D-G-C-F 三种谱号各自标准音位;③ 头部宽度纳入排版引擎(可用宽度自动扣除),钢琴大谱表上下两谱表谱号/调号严格纵向对齐;④ 新增头部几何自动化验证(谱线起点/谱号锚线/逐个调号坐标断言)。
- v36.8五线谱刻版规则升级(对照专业钢琴谱逐项修正):① 符杠随旋律倾斜——坡度取首末符头连线之半、限幅±0.8线距,符干自动延伸至杠线(16/32分层级与短杠同坡度,五线谱与联排一致);② 整小节休止——空小节按出版惯例画一个居中全休止,不再逐拍画休止符;③ 非首行行首标小节号;④ 纯五线谱/钢琴谱页头不再重复「1=X 4/4」,只保留 ♩=速度(调性由调号表达)。
- v36.7五线谱出版级字形引擎:接入行业标准 SMuFL 规范 + Bravura 字体(MuseScore/Dorico 同源,SIL 开源协议),45 枚真字形内嵌——谱号(G/F)、符头(全/二分/实心)、休止符(全~32分)、符尾(8/16/32)、变音记号(♯♭♮×𝄫)、调号、拍号数字、装饰音(上/下波音·颤音·回音)、Segno/Coda 全部替换为出版级轮廓,并按 SMuFL 注册点规范定位(谱号锚线、休止符挂线/坐线、符尾锚符干端点);首小节自动预留拍号空间不再拥挤;加线随全音符加宽。
- v36.6五线谱符号标准化(对照出版级符号百科):① 全音符标准字形——更宽的横向空心椭圆、内孔斜切,与二分音符明确区分(五线谱与联排谱同步);② 重升号改标准 × 字形(避免生僻字符缺字);③ 加线音符干延伸至中线(出版惯例,远离谱表的高低音不再短干);④ 高音区三连音括线自动抬升不再压符头;并新增 12 组合跨谱类冲突矩阵测试(吉他/尤克里里联排、钢琴、混合记谱、功能谱+五线谱、反色、A5/A3 等全部通过)。
- v36.5五线谱深度审计五项修正:① 联排谱修复四分/二分/全音符不显示(原先只画符杠组内音符);② 临时记号按出版惯例小节内进位——同小节同音级重复变化音不重复标记、变化后回到调内自动补还原号/调号记号(五线谱与联排谱一致,按线/间独立计算);③ 谱表首行调号右侧补拍号(叠置数字);④ 连音线贴符头并弯向符干反侧(不再固定在谱表上缘);⑤ 左栏行标签随记谱法自动显示「五线谱/简谱」。
- v36.4二期收官:大谱表(钢琴谱)。① 记谱法新增低音谱表(F 谱号、低音调号音位、符干/加线/点击定音高全套适配);② 相邻「高音谱表+低音谱表」声部自动以花括线连成大谱表;③ 新建向导新增「钢琴谱」类型——右手/左手双声部各自独立录入;曲谱库新增钢琴谱分类。
- v36.3五线谱点击定音高:选中音列后,再点谱表上的任意线或间即把该音改为对应音高(含上下加线区,自动换算八度、清除临时记号),配合键盘 0–7 两种输入方式随意用。
- v36.2五线谱二连发:① TAB+五线谱联排(Guitar Pro 式)——吉他谱左栏「记谱法」选「TAB+五线谱」,TAB 上方即出标准五线谱:品位按调号自动拼写(调内音不标记、调外音按调性取升降)、和弦列叠置符头(相邻二度自动错位)、共用符干、符杠随节奏分组、闷音 ×符头、休止符对应;② 五线谱倚音——小符头+小符干+微型符杠+倚音斜杠,前/后倚音各居主音一侧,点击可编辑。
- v36.1平台升级第一步:新增五线谱。① 新建向导新增「五线谱」类型(高音谱表+歌词);② 旋律声部支持记谱法一键互切(左栏「记谱法」:简谱 ↔ 五线谱,同一数据换视图、无损往返);③ 标准绘制:手绘高音谱号、调号(升降号标准音位排布)、符头符干、符杠(8/16/32 分层级、组内同向)、临时记号(与调号联动:调内音不重复标记)、附点、上下加线、全套休止符、连音线/三连音/波音颤音、力度记号;④ 歌词、功能谱和弦标注、排版面板、打印预览、播放全部照常工作;曲谱库新增「五线谱」分类。
- v36.0入口更名与曲谱库改版:① 顶栏「曲谱库」更名为「预设」(预设示例+我的曲谱),原「谱友圈」更名为「曲谱库」;② 曲谱库页面全新改版——大标题引导区、渐变筛选、精致曲谱卡:每张卡自动生成迷你谱面封面(取该曲第一段有旋律的小节,数字谱+歌词+类型/价格徽章),后期将以同款卡面接入小程序分享链接。
- v35.9制谱器与曲谱库视觉对齐官网:① 品牌标换为官网同款渐变谱线 mark(页头与谱友圈顶栏统一);② 主按钮(播放/打开/创建等)与选中态换品牌渐变胶囊;③ 曲谱库标签、新建向导卡片、我的曲谱卡片、谱友圈卡片统一为渐变顶条 + 上浮悬停;④ 页面顶部加入品牌径向光晕,深浅主题同步适配。
- v35.8中文歌词字号提到出版级:正文 14→15.5(约 11.6pt,与简谱数字光学等大、落在主流歌本档位),旁挂标点 12→13;同步把歌词刚杆 17→18.5、多段行距 20→21、点击/选中热区与首行偏移一并放大,密集逐字段仍不贴字、跨声部对齐不变。
- v35.7修正简谱高音点几乎贴住数字的问题:高音点原先硬编码在距数字基线 14px 处,而 16.5px 数字的字顶就在 12px——间隙仅约 0.3px;低音点距字底却有 4px。现高音点上移至与低音点光学对称(距字顶≈4px),并同步上调该情形的行上方预留空间与波音/颤音记号的避让位置。
- v35.6修复 32 分/三连音逐字带词时歌词重叠:拍内定位由"纯时值比例"升级为弹簧-刚杆映射(LilyPond 思路)——相邻音列间距有余量时按时值比例(弹簧),但不小于各列的最小刚性宽(刚杆:带词列=字宽 17、简谱数字列 12、吉他列 13、和弦框/倚音更宽);刚杆之和超过拍宽时该拍自动加宽。所有声部共用同一映射,拍内跨声部依然严格对齐;普通谱面排版几乎不变。
- v35.5吉他谱品位数字/×记号改为极小断口:用纸色描边沿字形轮廓挖开谱线(字形外约 1.3px),断口紧贴字形、不成白块,深浅色与反色下均成立。
- v35.4① 吉他谱品位数字/×记号一度改为不断线,后于 v35.5 调整为极小断口;② 新增曲谱反色(顶栏「◑ 反色」):深色纸张 + 浅色音符,适合夜间 / 投影 / 护眼,随本机记忆;打印与导出 PDF 一律回到白纸黑字(省墨、成品规范)。
- v35.3吉他谱品位数字/×记号的断线更贴字:原先数字底色偏大、几乎占满弦间空隙,看起来像白块切断谱线;现收紧为仅遮住字形本身(高 9.4→7.4、宽度贴字),保留"数字坐线上、线在字处断开"的出版谱可读性,同时谱线保持连贯不显白块(近 Guitar Pro 观感)。
- v35.2两处修复:① 功能谱输入歌词不显示——功能谱默认 0 段歌词,输入的词存进去却因"段数为 0"不渲染;现在输入歌词自动补足歌词段并即时显示,新建功能谱默认也带 1 段歌词;② 页脚「使用帮助」与「帮助文档」去重(二者已指向同一站内帮助),仅保留「使用帮助」。
- v35.1帮助与特色功能升级:① 修复页脚「帮助文档」点击无内容——改为直接打开站内使用帮助(独立 docs 站未部署时也能展示);② 使用帮助 / 特色功能内容同步刷新,补齐排版面板(基准纸张/智能排版/手动微调)、内容驱动版式、打印预览(竖排/横排/网格)等最新能力;③ 两个弹窗视觉升级——品牌 Hero、图标分区、卡片式条目与发丝分隔、悬浮微交互,深浅色自适配。
- v35.0排版引擎升级为出版谱式内容驱动宽度(参照 Gourlay 对数间距 / MuseScore 惯例):① 小节宽度由内容疏密决定——一拍一个四分音符的小节明显窄于每拍两个八分音符的小节,二分/全音符小节更窄,不再统一宽度;② 打破"每行最少 2 小节 / 小节最宽 2/3 行"的旧限制——换行完全按内容宽度自由适配:稀疏行可容纳更多小节(省纸),极密集小节可独占一行从容展开(仅当单小节超过整行才压缩);③ 各行仍两端对齐、右缘整齐,密集小节按权重多得空间、疏密有致;④ 修正跨拍长音的点击热区溢出到邻小节的问题。
- v34.99排版面板文案与交互微调:① 分区标题精简去括号——「① 基准纸张 / ② 智能排版 / ③ 手动微调」;②「字号·内容大小」更名为整体缩放;③ 手动微调的百分比数字点击即可输入精确数值(整体缩放 / 行距 / 间距,回车确认、Esc 取消)。
- v34.97排版实按预期生效:① 修复手动调整时纸张外框跟着变大变小的问题——现在「内容大小/字号」放大的是纸内内容(谱表、音符、字号一起放大,其他自动跟随),纸张外框在屏幕上保持固定尺寸,内容越大每页容纳越少(示例曲 140% 时 2 页→3 页);② 智能排版紧凑/宽松现在可见地缩放行距与间距(宽松行更高、每行更少);③ 手动新增行距(可分别选中 吉他谱 / 简谱 / 歌词 单独调)与间距(音符横向疏密)。所有排版参数随曲谱保存。
- v34.96排版面板按"页面固定→智能间距→手动内容"三步理顺:① 弹窗可拖动(抓标题栏移到任意位置);② 明确页面尺寸选定后固定不变,作为版面基准;③ 智能排版(紧凑/标准/宽松)只在该页上智能缩放行距与间距;④ 手动微调只调内容大小——移除了易混淆的"手动疏密"滑杆。
- v34.95新增排版面板(顶栏「排版」,浮层实时生效):① 智能排版——紧凑 / 标准 / 宽松一键切换疏密;② 手动疏密——滑杆细调行/列空白(只改留白不改字号);③ 内容大小——放大缩小音符本身,内容越大每页容纳越少;④ 页面尺寸 A5/A4/A3——改变的是容量而非整页缩放:A3≈A4 的 2 倍面积、每行与每页容纳更多小节(如示例曲 A4 每行 2 小节→A3 每行 4 小节、2 页→1 页)。排版参数随曲谱保存。
- v34.94预览与缩放修正:① 打印预览打开即默认 100%(纸张真实物理尺寸),且预览为纯净成品谱——不再显示编辑光标/选区/段序号高亮;② 修正缩放跳过 100% 的问题(Ctrl+滚轮与 ± 均对齐 0.1 栅格、100% 必为一档),预览与谱面编辑区同修。
- v34.93新增打印预览(顶栏「预览」按钮):① 纸张适配——A5 / A4 / A3 一键切换,实时按纸张比例呈现;② 缩放——±步进、Ctrl+滚轮、「适配 / 整页」两档自动缩放,100% 即纸张真实物理尺寸;③ 多页排布——竖排(单列翻阅)/ 横排(整页并排,横向滚动)/ 网格(多页平铺)三种展示方式;预览页始终以白纸呈现、不受明暗主题影响,可直接进入打印 / 导出。
- v34.92歌词编辑细化:① 点谱面空白处隐藏光标时,段序号高亮也一并消失;② 智能填词的对齐预览升级为可点选起点——预览显示全部可唱音,点任一音即设为填词起点(自动切「从当前音符」、起点高亮、起点前的音灰显保留原词),一眼定位从哪里开始填。
- v34.91歌词编辑体验:① 点击谱面空白处即可隐藏光标、清除选区;② 智能填词弹窗顶部新增段落切换(多段歌词时),一键切换要编辑的段并自动预载该段已填歌词,切换与填入互不影响其他段。
- v34.90多段歌词与标点排版:① 多段歌词时每段起始显示段序号(当前段高亮),点序号即可选中该段编辑;② 智能填词打开时预载当前段已填歌词,不丢失、可直接续填/修改;③ 歌词标点旁挂——正文(字/词)对准音符居中,末尾标点挂在右侧不影响对齐。
- v34.89修复:智能填词现在正确跳过所有连音线延续音——此前只跳过同音高的延音线,而连音线(圆滑线)常连接不同音高的音(一字多音的旋律),这些延续音之前会错误占字导致整段错位;现只要前一个音带连音线,其后的音一律不占字。
- v34.88「批量填词」升级为智能填词:① 实时对齐预览——边输入边显示每个可唱音将分到哪个字,休止/连音延续位自动标灰跳过、按小节分组;② 字数/音数匹配提示(正好/多字/差字,颜色区分);③ 起点可选(从头 / 从当前光标音符);④「换行对齐乐句」——每行歌词从新小节开头对齐;⑤ 英文单词整体成词;沿用跳休止/连音延续、标点跟随前字、- 手动跳过。
- v34.87批量填词优化:自动跳过休止符与连音线延续的音符(延续音由前一字延唱、不单独占字)——之前连音延续音会错误地被分配一个字导致整段错位;不同音高的音符即使前有连音线仍正常占字(连音线只连同音高)。
- v34.86扫弦箭头方向翻转:下扫标 ↑、上扫标 ↓——箭头表示拨片在六线谱上从低音弦扫向高音弦的移动方向(低音 6 弦画在最下,故下扫向上);播放声音不变(下扫仍低音先响)。按钮改「下扫/上扫」。新增 3 首预设曲谱:小星星(尤克里里 4 弦弹唱)、流行进行(功能谱 1–5–6m–4 级数和弦)、反复与段落示例(反复记号+第一/二段结尾+力度记号,展示播放导航)。
- v34.85「回到开头」修正:图标改为 ⇤(不再用媒体"上一曲"的 );点击后停在第一小节且不自动播放(此前会直接从头播放)。
- v34.84播放控制精简:底部只保留「▶ 播放」与「⇤ 开头」两键。播放键单键三态——点击播放、再点即时暂停、再点继续(基于音频时钟精确冻结,空格键同效);「 最前」回到第一小节从头播放。移除独立的暂停/停止键;移除「 高保真」开关——真实采样音色改为始终启用(内置采样 + 部署后升级全量)。
- v34.83新增帮助文档站(muse-tab/docs/,部署后 puyouquan.com/docs):侧边导航 + 快速上手/曲谱类型/录入编辑/和弦级数/播放谱架/简谱乐理知识/导出分享/谱友圈/常见问题/关于,含 SEO 关键词与乐理科普,响应式适配;页头 CTA 与页脚回链制谱器,制谱器页脚新增「帮助文档」入口;部署脚本同步 docs/。
- v34.82谱友圈功能细化:新增顶部工具条——① 搜索(按曲名/作者实时过滤);② 分类筛选(吉他谱/尤克里里/简谱/功能谱 + 免费/付费);③ 收藏夹(每张卡片 ♥ 一键收藏、"我的收藏"只看已收藏,本机持久保存);实时显示结果数量,进入自动重置筛选。
- v34.81简谱旋律延音:把 v34.80 的「让音自然延续」模型延伸到简谱声部——拨弦/钢琴音色的旋律音延音到下一个音起点(休止不硬掐、末音自然衰减),不再被节奏时值切成断音;持续音色(弦乐/长笛/人声)仍按时值保持;连音线合并、倚音、力度记号照旧。
- v34.80吉他播放逻辑重构(对齐 Guitar Pro 的发声模型)——修复"音色几乎无增强"的根因:此前每个音被强行掐死在其节奏时值上,分解和弦/扫弦变成一串断音。现改为逐弦延音:六根弦各自独立,同一根弦被再次弹响才掐断旧音(自然响到那一刻再 50ms 快速阻尼),否则让弦自然延音到采样衰减结束;不同弦的音同时叠加延续。音符时值只决定下一个音何时开始。采样与合成器包络同步改造(6ms 起音防爆音、被弹响时快速阻尼)。反复扫弦自动掐断不堆积、分解和弦自然交叠,听感与真实吉他一致。
- v34.79音色重大升级——核心乐器内置真实录音采样:木吉他/尼龙吉他(尤克里里共用)/贝斯/钢琴的真实采样直接随页面内置,在任何环境(在线预览、离线、服务器未部署)都是真实音色,不再依赖联网或部署;引擎改为「内置采样即时铺底 → 部署自托管后自动升级 88 音全量 → 合成器仅兜底」三层,起音防爆音、拨弦自然衰减;页面体积一次性增加约 1MB(浏览器缓存)。
- v34.78响应式断点改造(为手机/平板打底,桌面 ≥1200 布局不变):平板(≤1200)自动收起右侧信息栏、谱面占满;手机(≤820)单栏布局——谱面缩放适配屏宽、左侧功能面板收为底部抽屉(横排标签唤出)、右栏隐藏、页头精简、播放条与页脚避让,全程无横向滚动;极窄屏(≤520)进一步精简编辑栏标签。
- v34.77观看模式增强(谱友圈看谱)三件套:① 即时移调——♭/♯ 或 −/+ 键升降半音,1=调号、所有和弦名、TAB 品位、简谱旋律同步移调,点调号一键还原;非破坏性(从原始发布数据重建,退出即恢复)。② 谱架模式——全屏沉浸、放大谱面、隐藏所有编辑界面,适合看谱演奏。③ 自动卷谱——谱架内可 ▶/ 自动向下滚动、加减速(8–90 px/s)、一键回顶,到谱尾自动停;空格控制卷谱、Esc 退出。
- v34.76上线合规准备:新增站点页脚(关于谱友圈 / 用户协议 / 隐私政策 / 使用帮助 常驻链接,含 ICP 备案号位——审核通过后填入并链至工信部备案系统);新增《用户协议》《隐私政策》《关于》页面(按本应用真实数据行为撰写:当前纯本地存储不上传、账号/云端/支付为规划中功能)。观看与打印模式自动隐藏页脚。
- v34.75品牌与域名更名:项目全面更名「谱友圈」,域名 puyouquan.com——页头/标题/曲谱圈/署名/存证凭证/部署套件全量更新;本机数据完全兼容保留(存储键不变)。
- v34.74功能谱和弦标注排版修复与放大:和弦框宽度计入小节逐拍排版——相邻八分音符的两个和弦自动撑开列宽、不再重叠(级数/音名切换即时重排);和弦框整体放大 20%(字号 14、框高 18.5、圆角 6),并为和弦行增加纵向预留空间。
- v34.73功能谱和弦标注三项优化:① 音符上方空位(按八分音符网格)悬停出现「+和弦」编辑提示,点击直接打开级数构建器;② 和弦时值最小单位为八分音符——十六分及更细位置自动就近向前对齐;③ 谱面标注改为常规字号整名显示并用圆角框框住(不再上标缩小),级数/音名切换与点击编辑不变。
- v34.72功能谱和弦全面升级为「级数为主」构建器:级数 1–7(含调内默认性质与各级音名提示)× 丰富类型/扩展(三和弦 / 七和弦 / 6·9·11·13 等 22 种)× 转位斜杠低音 /1–/7,点选即时应用;支持自定义后缀与调外完整自定义;「谱面显示:级数 ↔ 音名」一键切换(随曲谱保存);谱面标注排版升级——根音大字、后缀上标、斜杠低音,悬停显示另一种形式。
- v34.71界面全面升级为极简现代设计语言:中性灰底+白色面板+发丝线边框、系统蓝点缀、毛玻璃顶栏与播放条、胶囊主按钮、柔和大圆角阴影,明暗两套主题同步重调;品牌宣传以中文名「谱吧」为主(页头/标题/弹窗弱化域名与代号);新增《设计规范与多端规划》文档,为后续桌面/平板/手机/小程序客户端预留统一设计与功能架构。
- v34.70播放音色升级为开源采样音色库(midi-js-soundfonts · MusyngKite/FluidR3 GM,逐音符真实录音):吉他/尤克里里/贝斯/钢琴/弦乐/长笛/人声全部映射;播放条「 高保真」开关(默认开),首次播放自动加载(优先站点自托管 sounds/,其次 CDN),加载中与离线无缝回落物理建模合成器;部署套件新增音色包下载脚本。
- v34.69品牌与域名定版:中文名「谱吧」(PU8),域名 pu8.cn——页头/标题/谱吧圈/凭证/格式规范全量更新;配套服务器部署脚本入库。
- v34.68域名更新:pokka.club → pokka.cc(后于 v34.69 定版为 pu8.cn)。
- v34.67平台管理演示版:个人中心新增「平台管理」——平台看板(上架/待审/销量/GMV)、审核队列(预览/通过上架/驳回附原因)、上架内容强制下架、系统配置(平台抽成%与圈内公告);发布改为"提交→待审核→上架"状态机,创作者端实时显示审核状态与分成后收益。
- v34.66谱吧圈(C端生态)本地演示版上线:顶栏「谱吧圈」进入曲谱卡片流(预置官方示例);详情为只读观看模式(可播放/循环,付费谱试读 N 小节+购买解锁演示,已购/免费可下载长图与打印 PDF,可打赏);创作者中心新增「发布管理」——选择曲谱发布/更新/下架、设定价与试读,看板接入谱吧圈浏览与销售收益(演示)。云端账号/微信支付/小程序上线后无缝切换真实数据。
- v34.65修复:双吉他声部时第二行的简写和弦名与第一行符杠区重叠——第二行及以后存在和弦标注时自动加大 TAB 行间距为其留位。
- v34.64和弦编辑器新增「指板创建」:模拟吉他/尤克里里指板(行=弦、列=0-12品、×不弹、把位点标记),点击自选音符实时生成和弦图;可命名「存为用户和弦」(本机全曲谱通用、可载入/删除),同名用户指法自动出现在把位选项。
- v34.63编辑栏"记号"与"音符"板块互换位置;音符板块强化:新增「休止符」(吉他谱可编辑休止,按时值显示 𝄻𝄼𝄽𝄾𝄿𝅀 且加深明显)与「清单音」(只清当前弦位,简谱自动隐藏),Backspace/Delete 快捷同效。
- v34.62修复:和弦编辑器选择高把位(E型/A型)应用后谱面仍显示开放把位——现在所选指法与标准库不同即随谱保存并显示(含把位数字),选回标准指法自动恢复库图。
- v34.61倚音显示修正:整组(含减时线、低音点、连接线横边)最低不越过主音符腰线——下方延伸超限时整组自动上移,连接线横边固定搭在腰线,行距按需加高;标识符号栏前/后倚音图示与谱面记法统一(主音1+8分倚音2+直角连线)。
- v34.60修复:v34.59 加宽置顶的小节线热区盖住贴线音符格,导致点击音符光标不移动——热区回调为 10px 顶层,贴线音符点击与小节线菜单弹出两者实测均 100% 命中。
- v34.59小节线点选热区加宽并置顶层(不再被音符格遮挡,点击更灵敏);「小节与段落」默认只显示插入/删除小节,反复·跳转记号折叠可展开(记忆状态);使用帮助与特色功能改为"通用功能+分谱型"结构全面更新。
- v34.58小节线弹窗等谱面锚定弹窗改为随页面滚动;「小节与段落」模块化重设计(符号+名称分组卡片),移除"补齐小节时值"按钮(修复入口保留在节拍状态条);1房/2房更名"第一段/第二段",括线改为开口式(只有开头竖钩,结尾不收口)。
- v34.57右栏"小节操作"升级为「小节与段落」:分组提供 𝄆𝄇 反复、1房/2房、D.C./D.S./Segno/Fine/⊕ Coda、段落线/终止线一键作用于当前小节(悬停有含义说明,状态高亮);力度/速度记号菜单每项加中文说明(极弱/很弱/…/渐慢/渐快)。
- v34.56反复记号体系补全(参考出版谱):小节线菜单新增 D.C. 从头反复、D.S.+𝄋 标记反复、Fine 结束点、⊕ 跳跃记号(成对)、1房/2房不同结尾括线,谱面按标准记法绘制,播放导航完整识别七类反复走法;简谱新增力度/速度记号(ppp–ff、fp、sfp、cresc./dim.、渐强渐弱折线、rit./accel.),力度即时影响播放音量。
- v34.55品牌升级:网站更名「谱吧 PU8」(pu8.cn),页头 LOGO、页面标题、帮助/特色/日志弹窗、预设制谱署名与存证凭证全面更新;本机数据完全兼容保留。
- v34.54个人中心新增「创作者中心」:数据看板(作品数/曲谱浏览/收藏/收益)、收益设置(付费谱定价/打赏开关/粉丝订阅),认证扒谱人与认证教师体验标识,版权登记辅助——为当前曲谱生成 SHA-256 内容指纹+时间戳存证并可导出凭证文件。
- v34.53小节数多(格宽不足)时进度条自动转为密集标尺(每10小节悬浮编号),点击标尺或 ▦ 按钮打开多行大格"小节选择面板"精确点击/拖选循环区,面板随播放同步填充进度。
- v34.52播放升级:进度条改为小节格(总长不变自动适配、显示小节编号),点击格子单小节循环、拖动多选循环选区、再点取消;整曲播放自动识别反复记号 𝄆 𝄇;新增暂停/继续与从头播放按钮,暂停基于音频时钟精确冻结。
- v34.51播放修正:所有音轨始终同时播放——人声"啊"音色此前在混音中过轻(被吉他掩盖,听感像"只播当前声部"),共振峰增益与旋律权重上调至清晰可闻;纯简谱/功能谱播放补上跟随高亮。
- v34.50播放音色还原度升级:弹拨乐器物理建模增强(分数延迟精准音高、拨弦位置激励、双弦微失谐厚度、琴体共鸣峰、力度联动亮度),新增尤克里里专属音色(尤克里里谱自动默认),钢琴改专用模型(失谐三弦+泛音层+琴槌噪声+两段衰减),混响加预延时与高频渐暗,吉他/人声声部左右摆位。
- v34.49会员中心升级为「个人中心」(扁平化图标):个人资料(昵称/签名/默认制谱署名,自动填入新建曲谱)、我的曲谱(打开/删除)、自定义节奏型(存当前小节为模板、一键套用)、我的权益(点击查看各等级权益)。
- v34.47新建向导类型卡片重设计(更大气现代、去图标);窗口标签显示"类型名+序号+曲谱名"并与 LOGO 左对齐;吉他/尤克里里新建时可设变调夹;功能谱和弦改为智能弹窗:本调常用库+常用扩展+最近使用一键选用,支持自定义,点击谱面级数可再编辑。
- v34.46多窗口:谱面上方窗口标签栏,可同时打开并编辑多个不同类型的曲谱;「+新建窗口」与关闭窗口时提示当前曲谱保存情况(绿点=已存入我的曲谱),未保存可一键「存入我的曲谱并关闭」;刷新后窗口自动恢复。
- v34.45新建向导补齐作词/作曲/制谱信息;新增「功能谱」类型(乐队用):简谱+级数和弦标注,按调号自动换算(C 调 Am → 6m),支持斜杠低音(G/B → 5/7)。
- v34.44新建曲谱向导:先选类型(吉他谱 / 尤克里里谱 / 简谱)再填曲谱信息,可预设小节数与声部;尤克里里 4 线 TAB(GCEA)与专属和弦图,简谱类型隐藏 TAB 行。
- v34.42倚音改直角连接线(自动避让减时线/低音点);连音线单选自动连相邻音、Ctrl 跨选直达目标音(简谱/吉他谱通用);使用帮助细化,新增特色功能与更新日志。
- v34.40自由编辑优先:音符增删拆合不再强制适配拍号,节拍错误改为提示+一键修复;节奏图示精简重绘。
- v34.39音符编辑功能组:任意位置前插/后插(Insert 键)、拆分、合并、删除。
- v34.37倚音支持最多 3 音、独立八度点与时值编辑;简谱八度点扩展到 ±3;新增还原号 ♮。
- v34.35推弦改为 Ctrl 双选:目标音加圆圈+连音线;泛音细线菱形框、拍弦方框区分;无头/无尾上下滑音。
- v34.303/5/6/7 连音:吉他谱刻度线标记、简谱断弧数字标记,同小节多组互相独立、端点对齐时值线。
- v34.27编辑栏第二行:记号组 + 上下文(吉他谱演奏技巧 / 简谱标识符号)全图示化;S/H/P 单选自动连线。
- v34.25附点智能配对:设附点时相邻音自动变半时值(拍尾小时值向前配对);附点对齐首条时值线。
- v34.20小节线交互:点击设置反复/段落/终止线;按住选中单声部复制粘贴;小节编号移到小节线正下方。
- v34.15页头吸顶编辑栏(时值/节奏/缩放)与页头等宽对齐;Ctrl+滚轮以光标为中心缩放。
- v34排版引擎定版:按出版谱逻辑逐拍分配宽度、每行 2–6 小节自适配、A4 高度分页。