mk-mode BLOG

このブログは自作の自宅サーバに構築した Debian GNU/Linux で運用しています。
PC・サーバ構築等の話題を中心に公開しております。(クローンサイト: GitHub Pages

ブログ開設日2009-01-05
サーバ連続稼働時間
Reading...
Page View 合計
Reading...
今日
Reading...
昨日
Reading...

Octopress - TeX で数式表示!

[ ブログ ] [ Octopress, TeX ]

こんばんは。

WordPress でブログを運営していた時は、 によるちょっとした数式表示をプラグインで実現していました。
(多少手の混んだ数式は別途、 ソフトで作成して画像を表示させていました)

少し調べてみたところ、Octopress 用のプラグインがありました。
そのプラグインを使用せず、_config.ymlmarkdown: rdiscountmarkdown: kramdownmarkdown: maruku に変更後、 書式を ‘$’ や ‘$$’ で囲った上で JavaScript を使用する方法もあるようですが、当方はプラグインを利用する方法を採用することにしました。

0. 前提条件

  • Linux Mint 13 Maya (64bit)
  • Ruby 1.9.3-p194
  • Octopress 2.0

使用する環境は特に問わないはず。

1. プラグインのインストール

こちら から MathJax.rb をダウンロードし、plugins ディレクトリに配置する。

2. head.html の編集

MAthJax.js を読み込めるように _includes/custom/head.html に以下の記述を追加する。

_includes/custom/head.html
1
<script src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML" type="text/javascript"></script>

3. 使い方

数式をブロックとして表示させるには、{% math %}{% endmath %} で囲み、数式をインラインで表示させるには、{% m %}{% em %} で囲む。

1
2
3
%}
N(m,\sigma^{2})=\frac{1}{\sigma\sqrt{2\pi}}e^{-\frac{(x-m)^2}{2\sigma^{2}}}
%}

とすれば、以下のように表示されるはず。

ただ、インラインで <^ 等を使用すると正常に変換さいれないことある(?)
jekyll が {% m %} よりも先に <^ 等を変換しているように見える。
しかし、これは <^ 等の前後にスペースを挿入すれば解消する。

参考サイト


若干解せない部分もあるが、これで、一応はちょっとした数式を容易に記述できるようになりました。
ちょっとした数式ばかりか、本格的なものまで記述可能です。

当方の過去の WordPress から移行した記事も全てインライン部分は(自作の XML ファイルからの変換スクリプトで)対応させました。

ちなみに、このプラグインとは別に GoogleChart API の 画像を取得するプラグインも試してみましたが、取得した画像の見た目が綺麗でなかった(画像が荒かったり、位置が多少ずれたりする)ので、こちらのプラグインにしてみました。

また、当方は自作サーバに をインストール済みで利用できる状態なので、外部サービスを使わず自前で 変換処理したいところでもありますが。。。

以上。

Comments