カラクリスタ

「輝かしい青春」なんて失かった人のブログ

なんか今日は一日中 PEG を書いていた

ような気がする。


事の発端、と言うか流れとしては、

  1. はてなブログを卒業して自前ホスティングとかにシタイナーと考えが浮ぶ
  2. 次に Markdown も卒業シタイナーと言う考えも浮ぶ
  3. なら自作でもするか、と、おもむろに PEG.js で parser を書きだす

と言う感じで、今日は一日中 PEG を書いてました。

まあ最初の方はオレオレ記法を考えていて、その後にサクっと PEG を書き始めた感じですが、 なんか、こう、久しぶりにこう言う記法パーザとかその類いを作ってるんで、 ナカナカこう言う類いのコードを書く感覚が取り戻せなかったとかで手間取った感が有りました。 とは言っても、コードを書き始めてその後には勘をフツーに取り戻せてたので、一応はなんとかなっていますが。


ちなみに。

今回 PEG.js を使ってコードを書いていたんですが、実際には当初、

Golang の方の PEG を使うかー

という感じでコードを書こうとしていました。が、AST ベースで云々するのに、Golang 使うよりかは、 Node.js で作業した方が良さそう (unist とか hast とか mdast とかその方面で) と判断したので、 とりあえず PEG.js を使う (つもりの) コードを書く、と決めたりもしていました。

あと、今後の予定としては、

  1. 今の PEG.js を使う (つもりの) コードで hast 辺りの AST を構築出来る様にする
  2. 既存の過去記事を mdast -> hast -> 自作記法、という感じで変換し、リンク切れ等を修正
  3. ブログコンテンツを表現するための埋め込み要素などの云々を実装

と言う様な事を考えています。

あとはまあ、色々とゴチャゴチャと考えていて、それは、

  • オレオレ記法は、メタ構文 (所謂 frontmatter ) を使わずにメタ情報を表現する
  • インライン系の記法を充実させ、テキスト表現を豊かにする
  • 今まで作ってきたブログを再統合し、一つ Web サイトとしてまとめる

と言う感じです。

ま、この手の作業は、一日二日で終わる事でもないので、結構時間が掛りそうな予感はしていますが、 とりあえず、今後ブログとか Web サイト作る時は、こう言う感じで行っていくかなー、なんて考えています。

それと、あと今作ってるオレオレ記法のパーザや、あるいは、ブログを含む Web サイトを表現するシステムなんかは、 作って完成して稼動した後ぐらいに、なんらかの OSS として公開する腹積もりはしています。 とは言え、完成はいつになるんやって感じでは有るのですが。


まぁ、そう言う感じで、今日はそういうコトをしていました、と言う話でした。はい。