You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在LilyPond中覆盖被误识别的Cm和弦名称?

解决LilyPond中特定和弦名称覆盖问题

针对你遇到的<c c' ees' g'>被识别为“C ♭10 12”的问题,有两种可靠方法强制将其显示为“Cm”:

方法1:临时单和弦覆盖

直接在目标和弦前添加\set chordName = "Cm",仅对当前和弦生效:

\score {
  \new ChordNames {
    % 临时设置和弦名称
    \set chordName = "Cm"
    <c c' ees' g'>1
  }
  \new TabStaff {
    % 你的吉他指法设置
    \set stringTunings = #standardTuning
    <c c' ees' g'>1 % 已设置正确Voicing的和弦
  }
}

方法2:全局和弦例外定义

如果需要在整个乐谱中统一处理该和弦结构,使用\chordNameExceptions全局定义规则,避免重复设置:

% 全局定义和弦名称例外
\chordNameExceptions {
  <c c' ees' g'> = "Cm"
}

\score {
  \new ChordNames {
    <c c' ees' g'>1
    % 其他和弦不受影响
    <c e g>1
  }
  \new TabStaff {
    \set stringTunings = #standardTuning
    <c c' ees' g'>1
    <c e g>1
  }
}

关于sequential-music-to-chord-exceptions的错误说明

你之前尝试的sequential-music-to-chord-exceptions是用于将**序列音乐(如连续音符)**转换为和弦例外的函数,不适用于直接定义的和弦结构,因此会出现语法错误。改用上述chordNameExceptions即可解决。

内容的提问来源于stack exchange,提问作者Ernest Izdebski

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 04:12:15