カビパン男と私

HOME/横書き縦書き

なんちゃって LaTeX

「なんちゃって○○」というのは、いかいもインチキくさい。しかし、もともとインチキであることを公言しているようなものだから、嘘をついているわけではない。

さて、「なんちゃって LaTeX」である。これは、Javascript のライブラリと CSS ファイルの組み合わせで、ちょっとした LaTeX な感じを楽しもうというアイディアである。ようするに、章・節、図、表への自動番号づけと、それらへのラベルを使った参照、参考文献のソートかんかをクライアント側で Javascript にやらせようという話だ。

この一見馬鹿馬鹿しい計画は(いや、もう一度見ても馬鹿馬鹿しいかもしれないが)、多少面白い側面を持っている。一般のウェブ・ページというのは印刷すると情報の一部を失ってしまう。他の文書へのリンク先が失われるのは仕方がないにしても、同じ文書内の見出しや図表へのリンクが消失してしまう。デザイン的にも文書構造がはっきりしなくなることがしばしばだし、次のページに送られた図表を見落したりもする。それに比べると、「なんちゃって LaTeX」で作られたページは、元々印刷用のプログラムをシミュレートしているので、そうした欠損が少ない。加えて、そうした欠損を少なくする html を一から作ろうとした場合に比べると、かなり楽ができる(ul 要素と li 要素で作った文献リストを本文からの引用順に並べ替えるところなんか、ちょっと自慢したくなる)。

一方、本物の LaTeX で作った文書を pdf にしてウェブサイトに置いておくよりは、ずっと融通が利く。いくら JavaScript を使っているからといって、pdf を読み込むより遅いということはない。印刷しようとしたときにも、テキストがリフローされるから、ブラウザの印刷機能で用紙サイズや文字サイズを自由に変えてしまって問題がない。

使い方は至極簡単で、Javascript のライブラリ(article.js)と、CSS(article.css)を head で読み込めばそれで仕舞いである。詳細はarticle.html(なんちゃって LaTeX を使って書いた、なんちゃって LaTeX の説明である)をご参照ありたい。

しかしまあ、なんのかんの言っても中心にあるのは、やっぱり遊びである。SEO 対策などということを言い始めたら、クライアント側でこう色々やるわけにはいくまい。ページデザインも、到底お商売向きのものではない。正直なところを言うと、私は初めて LaTeX で組版したときの「おーっ」という気持ちをもう一度味わいたかったのである。そういうわけで、遊び心がある人に楽しんでもらいたい「なんちゃって LaTeX」である。

@kabipanotoko