MebiusPress 0.6.0

MebiusPress は Html作成ツールです。 Wikiライクな文法でコンテンツを作成でき、また、数式(TeX) を埋め込むことができます。 その他に以下の機能があります。

  • Highlight によるコードの色づけ
  • Graphviz を使った図の作成
  • 別ファイルの組み込み
  • テンプレート処理
  • チャート図の生成
  • PDF 出力

マニュアル

使い方

HTML ファイルを作成するには、別途、元となる文章ファイルが必要です。

文章ファイル

文章ファイルは通常のテキストファイルです。文字コードは UTF-8 に対応しています。

Wiki ライクな文法

文章ファイルの書式は Wiki ライクな文法です。MebiusPress では PukiWiki を参考に作られています。 完全互換ではありませんが、一通りの文法はつかえますので、詳しくは PukiWiki の文法マニュアルを参照してください。 MebiusPress では リスト構造(引用)の扱いがいい加減なので、注意してください。–;

数式(TeX)

文章中に数式(TeX)を埋め込むと、変換時に画像が作成されます。 この機能を利用するには別途 mimetex.exe が必要です。 mimetex は http://www.forkosh.com/mimetex.html からダウンロードできます。 Windows バイナリをダウンロードし、mimetex.exe を MebiusPress と同じフォルダに入れてください。

文章中に数式を埋め込むには、TeX 命令を $$$ で囲む(インライン)方法と、#begin(tex), #end で囲む(ブロック)方法があります。 #begin(tex), #end は行の先頭に記述する必要があります。

MebiusPress ブロック要素

#begin(type [, …]), #end

このブロックに囲まれた要素は type 要素となります。type 要素はそれぞれ異なった処理がなされます。 type の種類は以下のとおりです。

tex: TeX 命令。mimetex を使って画像に変換します。

#begin(tex)

html: HTMLコード。そのまま出力されます。

#begin(html)

code: プログラムコード。Highlightを使って色をつけます。設定でhighlight のパスを指定する必要があります。

#begin(code, syntax, [args])
  • syntax: 構文タイプ。詳しくは highlight のドキュメントを参照してください。例:c, csharp
  • args: コマンドラインに渡す引数。オプションです。

graphviz: graphvizを使って画像に変換します。設定でgraphvizのパスを設定する必要があります。

#begin(graphviz, [args])
  • args: コマンドラインに渡す引数。オプションです。

chart Google Chart API を使ってチャート画像を生成します。

#begin(chart)

行ごとに1つのパラメータを記入します。

例:

#begin(chart)
chs=300x300
chd=t:10,15,4,60,45|30,23,73,24,87
cht=lc
chco=ff0000,0000ff
chtt=日本語+チャート|2010/09
#end

chtt, chxl, chdl, chl, chm に関しては URL エンコード処理します。

#include(filename [, type])

他のファイルを組み込みます。組み込まれた内容は変換対象ではありません。 type にはファイルのコンテンツタイプを指定できます。type には html, smarty が指定できます。デフォルトは html です。

#assign(name, value)

変数を設定します。#include でコンテンツタイプに smarty を指定したときに使用されます。詳しくはsmarty テンプレートを参照してください。

#mp_noheader

MebiusPress は変換時に自動的にヘッダを付加します。この要素を文章に含めているとヘッダを付加しません。

#mp_nofooter

MebiusPress は変換時に自動的にフッタを付加します。この要素を文章に含めているとフッタを付加しません。

#mp_title(title)

ヘッダのタイトルを指定します。

#mp_input_encoding(encoding), #mp_output_encoding(encoding)

入出力のエンコーディングを指定します。入力エンコーディングは #include で指定されたファイルに適用されます。 デフォルトは utf-8n です。 encoding に指定できる値は以下のとおりです。

  • utf-8
  • utf-8n (BOMなし)
  • utf-16
  • utf-16n または unicode (BOMなし)
  • sjis
  • ujis
  • jis
  • cp932

#mp_output_extension(extension)

出力ファイルの拡張子を設定します。標準はhtmlです。 “pdf” を指定すると PDF形式で出力します。詳しくはwkhtmltopdfを参照してください。

#mp_output_eol(code)

出力時の改行コードを設定します。標準はcrlfです。 cr または r : CR(Unixx), lf または n : LF(Mac), crlf または rn : CRLF(Windows)

#mp_output_drop_eol

出力時に改行コードを破棄します。標準では破棄しません。

MebiusPress インライン要素

数式(TeX)

$$$ TeX命令... $$$

その他

変換後の名前と、画像出力先

元ファイルの拡張子を html に変更したファイルで出力します。 生成された画像は元ファイルがあるフォルダに images フォルダを作成し、その中に作成されます。 画像は変換される度に新たに作成されますので、注意してください。

ヘッダ、フッタ

MebiusPress では自動的に以下のようなヘッダ、フッタを追加します。

ヘッダ:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja">
<head>
<meta http-equiv="content-type" content="application/xhtml+xml; charset=UTF-8" />
<meta http-equiv="content-style-type" content="text/css" />
<title>MebiusPress Sample</title>
<link rel="stylesheet" type="text/css" media="screen" href="mebiuspress.css" charset="UTF-8" />
</head>
<body>

フッタ:

<hr class="mp_footer_hr">
Generated by <a href="http://mebiusbox.crap.jp/MebiusPress/">MebiusPress</a>.
</body></html>

独自のヘッダやフッタを使いたい場合は #mp_noheader, #mp_nofooter を指定し、#include や #begin(html) などを利用してください。

スタイルシート

ヘッダが自動的に付加されている場合は、出力先に mebiuspress.css がコピーされます。

変換後の html にはなるべく PukiWiki のセレクタ名を使っていますので、PukiWiki のスタイルシートをそのまま使える場合があります。

smarty テンプレート

ファイル埋め込み時に、smarty テンプレートを指定できます。 #include で埋め込むファイルを smarty テンプレートと指定する場合は、以下のようになります。

#include(filename, `smarty`);

現在、smarty テンプレートで使用できるのは変数, if ステートメントだけです。

変数 テンプレート内で参照するには以下のように指定します。

{$xxx}

xxxが変数名です。修飾({$xxx|yyy})は使用できません。 文章内で変数に値を設定するには#assignを使用します。

#assign(xxx, true);

if ステートメント 構文は次のとおりです。

{if condition}
	template
[{elseif condition}
	template
[{else}
	template]]
{/if}

使用できる演算子は ==, !=, <, <=, >, >= です。 たとえば以下のように指定します。

{if $xxx == true}
	aaa
{else}
	bbb
{/if}

highlight

以下のオプションがデフォルトで設定されています。

-S syntax -O html --include-style --inline-css --enclose-pre --fragment

graphviz

以下のオプションがデフォルトで設定されています。

-T jpg

PDF出力(wkhtmltopdf)

wkhtmltopdfを使って PDF 形式で出力することができます。 インストール後、設定から wkhtmltopdf.exe のパスを設定してください。 PDF形式で出力する際、元となる HTML ファイルや画像ファイルを生成します。それらは PDFファイルを作成しても削除しません。

動作環境

  • Windows XP(32), Vista(32), 7
  • .Net Framework 3.5 以上

更新履歴

0.6.0

  • New: Google Chart API を使ってチャート図を作成できるようになりました。(#begin(chart))
  • New: Pdf出力ができるようになりました。(wkhtmltopdf)

0.5.0

  • New: 出力時の改行コードを指定できるようにしました。(#mp_output_eol)
  • New: 出力時の改行コードを破棄するか設定できるようにしました。(#mp_output_drop_eol)
  • Fixed: smarty テンプレートを組み込む際に、if ブロック内に ‘{‘ が使われていた場合、それ移行の文章が無視されてしまう不具合を修正しました。

0.4.0

  • New: 出力ファイルの拡張子を設定できるようにしました。(#mp_output_extension)
  • New: #begin に、code, graphviz が指定できるようになりました。

0.3.0

  • New: 入出力の文字エンコーディングを指定できるようにしました。

0.2.0

  • New: 出力先を指定できるようにしました。
  • New: #assign を追加しました。
  • New: #include で、ファイルのコンテンツタイプを指定できるようにしました。
  • New: #include で、コンテンツタイプ「Smarty」を追加しました。
  • Fixed: 「>&」「数値 + <」が文書中にあると、処理できない不具合を修正しました。
  • Fixed: 変換後、#include で指定したファイルが開いたままになっていた不具合を修正しました。

0.1.0

  • First version.