MusiX
TeXは、
フランスの計算機科学者であるDaniel Taupin氏によって開発された、
TeX組版システム上で精緻な楽譜を作成するためのオープンソースのマクロおよびフォント集です。
TeXの強力な
組版能力を活かし、複雑な音楽記号や構造を持つ楽譜を高品質に印字することを目的としています。特に多段譜の
組版に対応しており、オーケストラスコアのような複雑な楽譜も扱うことが可能です。日本のp
TeX環境で利用すれば、日本語による楽譜のタイトルや注釈なども併記できます。
MusiX
TeXは、
TeXコマンドに音楽記号や構造を指定する形で入力ファイルを記述します。この入力作業をより効率化するために、アメリカのDon Simons氏が開発したプリプロセッサPMXが存在します。PMXは、より直感的で簡潔な文法で楽譜情報を記述できるため、MusiX
TeXの直接的な記述よりも容易に利用できます。さらに、歌詞の入力を簡便にするためのPMX用プリプロセッサとして、南アフリカのDirk Laurie氏によるM-Txも開発されています。これらのツール群と連携することで、MusiX
TeXによる楽譜作成のワークフローはより円滑になります。
歴史的背景と発展
TeXシステム上で楽譜を
組版しようとする試みは、MusiX
TeXが登場する以前から行われていました。最初の重要なマクロ集として、
1987年にMu
TeXが登場しましたが、これは主に単一段の楽譜に限定されるという制約がありました。次に、
1991年にDaniel Taupin氏自身がMu
TeXを改良し、多段譜に対応したMusic
TeXを開発しました。しかし、Music
TeXは楽譜の水平方向、特に音符間の間隔調整に課題を抱えていました。これは、単一の処理パスで
組版を完結させようとしたためです。
これらの課題を克服するために、1997年に登場したのがMusiX
TeXです。MusiX
TeXの最大の改良点は、楽譜の水平方向の間隔を精密に調整するための専用のアプリケーション`musixflx`が導入されたことです。これにより、MusiX
TeXでの
組版は、後述する「3パスシステム」と呼ばれる複数回の処理を必要とするようになりましたが、その代わりに以前のシステムでは困難だった高品質な楽譜配置が可能になりました。
MusiX
TeXのオリジナル開発者であるDaniel Taupin氏は、残念ながら
2003年8月26日にアルプスでの
登山中に事故で亡くなりました。Taupin氏が最後に手がけた公式バージョンはT.112(
2003年1月9日リリース)でしたが、彼の死後もプロジェクトは停滞しませんでした。Don Simons氏(PMX作者)、Christian Mondrup氏(
デンマーク)、Cornelius C. Noack氏(
ドイツ)、Jean-Pierre Coulon氏(
フランス)といった国際的な開発者コミュニティが開発を引き継ぎ、活発なメンテナンスと機能拡張が続けられています。2024年5月1日現在の最新版はT.138(2024年3月29日リリース)となっており、Taupin氏の遺志は確かに受け継がれています。また、T.115からはより高機能な
組版エンジンであるε-
TeXへの対応も進められています。
特徴的な3パスシステム
MusiX
TeXによる楽譜
組版は、その最大の特徴として「3パスシステム」を採用しています。これは、高品質な楽譜、特に音符間の適切な水平方向の間隔を確保するために必要な処理フローです。
具体的な手順は以下のようになります。
1.
第1パス (TeX): まず、ユーザーが作成したMusiX
TeXの入力ファイル(例: `foo.tex`)を標準の
TeXエンジンでコンパイルします。この最初のパスでは、楽譜の各段の高さや垂直方向の配置、各システムの長さといった基本的なレイアウト情報が計算され、その結果が一時ファイル(例: `foo.mx1`)に書き出されます。
2.
第2パス (musixflx): 次に、付属のユーティリティプログラム`musixflx`を実行します(例: `musixflx foo`)。`musixflx`は第1パスで生成された`.mx1`ファイルの情報と、入力ファイルに記述された
拍子や音符の種類などを解析し、各段における音符間の最適な水平方向の間隔を計算します。この計算結果は、別の新しい一時ファイル(例: `foo.mx2`)に記録されます。このステップが、MusiX
TeXが美しい水平間隔を実現するための鍵となります。
3.
第3パス (TeX): 最後に、再び元の入力ファイル(`foo.tex`)を
TeXエンジンでコンパイルします。この3回目のパスでは、
TeXは第2パスで生成された`.mx2`ファイルを読み込み、そこに記録されている音符間の正確な間隔情報を参照しながら、最終的な
組版処理を行います。これにより、間隔が適切に調整された完成された楽譜のDVIファイル(例: `foo.dvi`)が出力されます。
もし楽譜全体の水平方向の間隔に影響を与えるような変更(例えば、音符の追加・削除、
拍子の変更など)を行った場合は、`.mx2`ファイルを削除した上で、この3パスすべてをやり直す必要があります。これにより、`musixflx`が新たな間隔情報を正しく計算し直すことが保証されます。
MusiXTeXからの派生
MusiX
TeXの思想や構造は、その後の楽譜
組版ソフトウェア開発にも影響を与えました。
オランダのHan-Wen Nienhuys氏とJan Nieuwenhuizen氏は、
1995年にMusiX
TeXのプリプロセッサ開発プロジェクトを立ち上げましたが、翌
1996年にはMusiX
TeXの基盤技術や概念を参考にしつつ、全く新しい設計思想に基づく楽譜自動作成プログラムであるLilyPondを開発することを決断しました。現在、LilyPondはMusiX
TeXとは独立した、現代的な楽譜
組版ソフトウェアとして広く利用されています。
関連項目
TeX
GNU LilyPond
CTAN
外部リンク
TeXWiki 楽譜
* MusiX
TeXの更新履歴