条件コンパイル

| No Comments | No TrackBacks

MMLを書いていると、一部の命令をスキップしたり、特定のトラックだけコンパイルしたり、今書いているブロックだけ演奏して確認したくなることが少なからずある。これを実現するひとつの方法が、コンパイルするMMLを限定するプリプロセッサ ディレクティブを指定するというやり方だ。音楽の授業で特定のブロックから合奏練習を始めるのと同じようなものだ。

これは完全なものではないけど(特に音色指定やテンポ指定をどう処理するかという意味で)、とりあえずある程度の実用性はある。とりあえずブロック指定とトラック指定は実装した。じつのところ、今の時点でやるつもりではなかったのだけど、昔書いたMMLを移植するのに、これを使っていたのを取り外すのが面倒だったのでサポートすることにした。

他にも演奏デバッグ用の方法はいくつか考えられ、いくつかMMLのマニュアルにも記載してあるのだけど、実装が面倒なものがいくつかあるので、その辺は後で着手しようと思う。たとえば小節のサポートなどは、かなり面倒そうだ。同じ条件コンパイルディレクティブの手法では無理ではないかとも思っている。

No TrackBacks

TrackBack URL: http://veritas-vos-liberabit.com/noteon/mt-tb.cgi/55

Leave a comment

About this Entry

This page contains a single entry by note on published on August 12, 2009 5:13 PM.

yacc shaving was the previous entry in this blog.

ブラウザの中だけで完結させる構想 is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.

Categories

Pages

OpenID accepted here Learn more about OpenID
Powered by Movable Type 4.23-en