プログラムdeタマゴ

nodamushiの著作物は、文章、画像、プログラムにかかわらず全てUnlicenseです

TeXをHTMLに変換するツール作った2

 まだやっておりますTeXをHTMLに変換する、なんかTeXもどきのツールnTeX Lamuriyan。今日はlabelとrefの実装が完了しました。
 それと、nTeX Lamuriyan仮本部の数式の説明を充実させました。
 まぁ、まだプログラムを他人が使えるように整備するのはまだいいでしょう………。使いたいなんて人もいないし。一応、Mainクラスから実行できます。呼び出しオプションとかは-hで出力するか、ソースコードから類推してください。





 次の課題は最大の問題\newpageです。何がどう問題なのか。

  1. refはlabelのidへのページ内リンクをしているのですが、\newpageで別ページにすると、書き換えないといけない
  2. 別ページのファイル名の問題



 一つめはわかりやすいと思いますが、二つ目はどういうことなのか?
 問題の本質は、web上に載せると、どのページがブックマークされるのかなんて分かった物じゃない、ということです。はてブでもh ttp://d.hatena.ne.jp/nodamushi/〜〜#idnameみたいな微妙なところにされてたりします。ということは、一回作ったリンク名はなるべく変えないことが重要です。まぁ、同じページなら多少id名が異なっても探すことが出来るけど、別ページ名になったらどうにもならない。よって、一度載せたページは絶対にURLを変えてはならない。つまり、ファイル名を変更してはならない。

 しかし、記事を管理していくと、やっぱりこの前に別なページが欲しい、ということは多々あるもの。そんなときにページ名を順番に「元ファイル名_page001.html」なんてことにしていると、ページがずれてしまいます。こりゃあかん。

 でも、だからといって\newpage{ページ名}みたいに手動でページ名を指定するのは絶対ぜぇっっっっっっっっっっっっっったい嫌です。なんでそんな面倒くさいことしないといけないの?
 でも、だからといって、自動で生成したページ名をオリジナルファイルの\newpageの後ろにくっつけるなんてこともしたくないです。だって、これ人間が作業するファイルだよ?勝手に機械が弄らないでよ。あと、そういう風にちょうど良くファイルを弄る機構がnTeXにはないんだ。というか、主に後ろが理由なんだ。



 というわけで、現在\newpageに関して完全に手詰まり状態です。アイディアが浮かびません。