Skip to content

Posts

goldmarkを読む

難解だと思って避けていたASTを直接見れば、goqueryを使わなくてもよいのでは?と思ってgoldmarkのソースを眺めてみた。 rendererのhtml.goが参考になると思うんだけど、なかなか長大な感じ。 RegisterFuncsで各要素ごとの処理を登録していけばよいのかな。 うーん。変換結果と Read more

ライブラリの力を借りる

機能を追加していってだんだんマークダウンのパターンマッチが面倒になってきたので、パーサー使おうかと。 マークダウンのパーサーはyuin/goldmark: A markdown parser written in Go. Easy to extend, standard(CommonMark) compliant, well structured.が良さそう。 で、HTMLに変換したのをPuerkitoBio/goquery: A little like that j-thing, only in Go.で必 Read more

構成指定実装

結局、Sectionsで実装することにした。 データ構造変更したのでテストも修正。修正の影響範囲がわかるから、テスト書いておいてよかったと思う。

曲の構成の変数名

昨日思いついた、曲の構成もマークダウン上で管理するのをやってみようと思ったところ、変数名をどうするか悩んでいる。 イメージ的にはパートとかセクションかなーと思うんだけど、自信がない。

MDMML 機能追加

曲の全体の構成と部品を分けて定義できるとよいのではないかと思いついた。 マークダウンなので、見出しでそのあたりの管理をするのは適していそう。 ## Song - Intro - A - B - A ## Intro | | | |---|---| | pf | cdef | ## A | | | |---|---| | pf | defg | ## B | | | |---|---| | pf | gfed | こんなイメージ?

MDMML

数値の下限と上限をチェックするようにした。 そろそろ一区切りかな。

MDMML

メタ情報をMarkDownのFront Matterで書けるようにした。 タイトルとかテンポとか。

ロジクールK400p購入

Inspironのタッチパッドが相変わらず不調なのと、だいぶ前から欲しいものリストに入れていたので、Amazon.co.jp: ロジクール ワイヤレスキーボード タッチ キーボード K400pBK 国内正規品 : パソコン・周辺機器を買った。 パッド部分のタップでクリック動作になるのを抑制するには、専用のアプリを入れないといけな Read more

MML実装

タイと繰り返しを実装した。 繰り返しが入れ子になるとpanic起こすのでいつか直す。 テストが書きにくくなってきたので、もっと小さい単位で関数化していきたい。 和音も何とか実装した。 前後の文字列によりpanicすることがあるのでいつか直す。 ひとまず予定していたコマンド群は全部実装できた・・かな。

MML実装

おとといあげた実装したいコマンド群、あとはタイと繰り返しと和音を残すところまできた。 ちょっと今の作りだとやりにくくなってきたからリファクタリングしたい気持ち。 ノートオンオフを一つのメソッドにしてしまっているのを何とかしないとタイと和音ができない気がする。