不囉唆的文字移調器
· 閱讀時間約 2 分鐘
不囉唆,直接開始用!
請到 NiceChord.com/transpose 開始使用。
這個工具其實已經發表在好和弦官網 NiceChord.com 好一陣子了,但我還沒在這裡提過。
不曉得有多少人跟我一樣,常常用純文字來記錄音樂想法?比如說,在 Markdown 檔案裡面直接這樣寫和弦表:
Cmaj7 | Am7 | Fmaj7 | G9sus | C(add2) ||
用純文字記和弦,寫的時候真的很方便。但是,如果我想把整份和弦表移調怎麼辦?
MuseScore 之類的打譜軟體,都有內建的移調功能,但純文字檔就沒有。網路上雖然有一些文字移調工具,但它們都爛爛的,介面囉唆複雜、廣告多、跑得慢,而且同音異名的處理常常錯誤,連該轉成 D# 還是 Eb 的邏輯都沒弄對。
所以我只好自己寫一個了。
(不囉唆的文字移調器,介面超級簡潔,不囉唆!)

程式的邏輯很簡單:用正規表達式掃描整個文字,找到任何「大寫字母 A-G + 可能的升降記號」的組合,把它移調,然後其他字元完全不動。就這樣。
但重要的是,這個移調器是受過(我的)樂理教育的,它在乎所謂「正確」的音名,而不僅僅是琴鍵上的位置!舉幾個例,你就知道它跟那些沒有愛的工具是不一樣的:
- 把
C#移高大三度,會得到E#而不是錯誤的F - 把
D#移高增四度,會得到G##而不是錯誤的A - 把
Cmaj7 | Am7 | Fmaj7 | Dbmaj7移高完全四度,會得到Fmaj7 | Dm7 | Bbmaj7 | Gbmaj7,注意它不會把Bb Gb誤寫成A# F#
如果你也像我一樣喜歡用純文字寫音名或和弦代號,而且是看到 E# 被寫成 F 就會抓狂的那種人,這個不囉唆的移調器,就是你一直以來在找的東西!
到 NiceChord.com/transpose 就可以直接使用,歡迎把它加到書籤!