乐于分享
好东西不私藏

obsidian-插件-ABC Music Notation

obsidian-插件-ABC Music Notation

Obsidian ABC Music Notation:在笔记里写五线谱,不用画一个音符

基础介绍:一行文本一张谱

想象一个场景:你在写一篇笔记,里面想放一段旋律。正常的操作是——打开 MuseScore 或 Guitar Pro,画好谱子,导出图片,拖进 Obsidian。一套操作下来,灵感早跑没影了。

ABC Music Notation 插件干的事很纯粹:用文本来写乐谱,Obsidian 里直接渲染成漂亮的五线谱。

你没看错。你敲几行字母数字,它给你变出一张正儿八经的乐谱。

背后的原理是 abcjs 这个开源库——一个纯 JavaScript 的 ABC 记谱法渲染引擎,在浏览器端就能把 ABC 文本转成标准五线谱。插件作者 trentmb 把它接进了 Obsidian,所以你在笔记里写 abc 代码块,预览模式里就是谱子。

特性
你能做什么
文本写谱
用字母和符号描述旋律,不用拖拽音符
实时渲染
阅读模式自动显示五线谱
播放音乐
点击谱面直接播放 MIDI,听你写的旋律(可选)
多声部
支持多声部合奏,不止单旋律
歌词支持
谱子下面自动对齐歌词
和弦标注
吉他/钢琴和弦标在谱面上方

安装:设置 → 社区插件 → 搜索 "ABC Music Notation" → 安装 → 启用。作者是 trentmb。


使用场景:这东西到底用在哪?

1. 音乐理论学习笔记

学乐理的时候,讲到音程、和弦、调式,光写文字干巴巴的。配上一段 ABC 谱,理论立刻有了声音。

比如讲大三和弦的构成,直接写上 C-E-G,渲染出来就是谱子。笔记的可读性和说服力直接上两个台阶。

2. 歌曲创作与草稿

脑子里冒出来一段旋律?不用找乐器、不用开 DAW,打开 Obsidian,敲几行 ABC 记下来。比录音哼哼快,比手画五线谱准,而且自带回放——点一下播放就知道自己写的对不对。

3. 教学材料制作

音乐老师备课的时候,这个插件简直是作弊器。需要示例旋律?直接用 ABC 写一段,学生看到的笔记里既有文字说明又有标准谱例,体验感拉满。

4. 民谣/传统音乐存档

ABC 记谱法最早就是为民谣和传统音乐设计的。如果你在研究 Irish jig、苏格兰民歌、中国民乐这类曲目,用 ABC 存档比扫描手写谱高效太多,而且纯文本天然适合版本管理。

5. 极客的浪漫——用 Git 管乐谱

纯文本意味着什么?意味着你可以 git diff 看改了哪几个音符,git blame 查谁写的烂和弦。一个 pull request 附带音乐播放链接,code review 变成 jam session——想想就带感。


基本使用:五分钟上手

第一步:写你的第一行旋律

在任意笔记里,新建一个 abc 代码块,然后输入以下内容:

```abcX:1T:小星星M:4/4L:1/4K:CC C G G | A A G2 | F F E E | D D C2 |G G F F | E E D2 | G G F F | E E D2 |C C G G | A A G2 | F F E E | D D C2 |```

切换到阅读模式,你会看到一张正儿八经的《小星星》五线谱。

第二步:理解 ABC 记谱法的基础元素

ABC 的文件结构分两部分:头部信息 和 音符正文。

头部字段(每行一个,大写字母+冒号开头):

字段
含义
示例
说明
X:1
曲目编号
X:1
必填,每个谱子必须有,一般从 1 开始
T:xx
曲目标题
T:小星星
会显示在谱面上方
M:xx
拍号
M:4/4
四四拍;M:3/4 三四拍;M:6/8 八六拍
L:xx
默认音符时值
L:1/4
一个字母 = 四分音符;L:1/8 = 八分音符
K:xx
调号
K:C
C 大调;K:G G 大调;K:Dm D 小调

音符怎么写?

  • 音高:C D E F G A B = 中央 C 到 B。大写是低八度,小写 c d e f g a b 是高八度。
    • 继续往上?加撇号:c' 表示比小写 c 再高一个八度
    • 往下?加逗号:C, 表示比大写 C 再低一个八度
  • 时值:L:1/4 时,C = 四分音符。要加长?C2 = 二分音符,C4 = 全音符。要变短?C/2 = 八分音符,C/4 = 十六分音符。
  • 休止符:z 代替音符,时值规则一样,z2 = 二分休止,z/2 = 八分休止。
  • 附点:C> = 附点四分音符,C>2 = 附点二分音符。
  • 小节线:| 分隔小节。双竖线 ||,终止线 |]。

第三步:加点和弦

和弦就是把几个音符围在方括号里:

```abc[CEG] [DFA] [EGB] [FAC]```

分别对应 C 大三和弦、D 小三和弦、E 小三和弦、F 大三和弦。渲染出来你会看到三个音符叠在一起的柱式和弦。

第四步:引用和弦符号(吉他/钢琴用)

用双引号把和弦名包起来,放在对应音符前面:

```abc"C" C E G | "G" G B d | "Am" A c e | "F" F A c```

谱面上方会显示 C、G、Am、F 的 chord symbol,吉他手表示很赞。


进阶使用:让谱子更专业

多声部写作

用 V: 字段定义多个声部,每个声部的音符用括号标记归属:

```abcX:1T:卡农片段(二声部)M:4/4L:1/8K:CV:1c2 e2 g2 e2 | f2 d2 e2 c2 |V:2C,2 C2 E2 C2 | D2 G,2 C2 C,2 |```

两个声部会在同一张谱上并列显示,像真正的钢琴谱一样。

添加歌词

w: 行直接跟在对应旋律下方,歌词按音节用空格分隔。连字符 - 用于多音节的词:

```abcX:1T:生日歌M:3/4L:1/4K:CG G | A G c | B2 z |w:祝你 生日 快 乐```

反复记号与跳房子

```abc|: C D E F :| G A B c |```

:| 左边那段是反复区间,演奏时重复一次。跳房子(volta)用数字标在段落上方:

```abc[1 C D E F :|[2 C D C z |]```

装饰音与表情记号

  • 波音:{g}C = C 前面有个 G 音的波音装饰
  • 回音:~C = C 前面有个回音
  • 力度:!f! 强,!p! 弱,!mf! 中强

连音线

  • 圆滑线(slur):(CDEF) = 这四个音用一条弧线连起来
  • 延音线(tie):C-C = 两个相同的音用连线连起来,第二个不重新发音

一份完整的歌曲样例:《月亮代表我的心》

下面是一份完整的歌曲谱例——旋律加和弦标注,拿去直接放进 Obsidian 就能渲染:

```abcX:1T:月亮代表我的心C:翁清溪 曲 / 孙仪 词M:4/4L:1/4Q:1/4=80K:C"C" C2 "Em" E2 | "Am" A2 "C7" G2 | "F" F G "Dm" A A | "G7" G4 |w:你 问 我 爱 你 有 多 深,我 爱 你 有 几 分?"C" C2 "Em" E2 | "Am" A2 "C7" G2 | "F" F G "Dm" A G | "C" C4 |w:我 的 情 也 真,我 的 爱 也 真,月 亮 代 表 我 的 心。"Am" A A "Em" G E | "F" F G "C" E2 | "Dm" D D "G7" G F | "C" G2 "G7" z2 |w:轻 轻 的 一个 吻,已 经 打 动 我 的 心。"Am" A A "Em" G E | "F" F G "C" E2 | "Dm" D F "G7" G G | "C" C4 |w:深 深 的 一段 情,叫 我 思 念 到 如 今。```

几点说明:

  • Q:1/4=80 设定了速度,四分音符 = 80 bpm
  • C: 是作曲家字段(Composer)
  • 和弦符号用双引号框住,放在对应歌词/音符前面
  • w: 行是歌词,一个音节一个空格,中文每个字一个音节

把这段代码复制到你的笔记里,切成阅读模式——一张带和弦标注的《月亮代表我的心》就摆在眼前了。


小结

ABC Music Notation 的核心哲学其实就一句话:用最简单的文本,换最标准的谱面。

你可能纠结的
答案
学习成本高吗?
音符字母跟自然音名一样,10 分钟上手
复杂曲子能写吗?
能,多声部、装饰音、反复、变调都支持
能导出吗?
纯文本天然支持 SVG(用 abcjs 的导出功能),也能截图
跟 MuseScore 比?
不是取代关系——MuseScore 适合制谱排版,ABC 适合快速记录和嵌入笔记
能听到声音吗?
插件可选开启 MIDI 播放,点一下谱面就能听

如果你是音乐爱好者、乐理学习者、乐器教师,或者单纯想在日记里随手记一段旋律——给自己写首生日歌、给孩子写首摇篮曲、给伴侣写封会唱歌的情书——这个插件值得占你插件列表里的一个位置。

记住一句话:工具的作用不是让你成为一个更好的音乐家,而是让你更轻松地在 Obsidian 里把音乐"写"出来。

进阶学习推荐:abcnotation.com 上的官方标准文档,以及 abcjs 项目 的在线编辑器——在那里写完可以直接贴回 Obsidian。

相关学习资料