convwiki_rules
Wiki文法変換定義(convert_html 直前に適用されるユーザ定義ルール)
Table of Contents |
概要
PukiWiki 文法を別の文法で表記できるように本体を改造。簡単ハック。
#lsx を #ls と表記したり、#mimetex(x) を $$x$$ と表記したり、 PukiWiki 記法を変更したりすることができるようになります。
適用
lib/convert_html.php、convert_html 関数の、$body->parse($lines); の直前に
global $str_rules, $convwiki_rules; $tmp_rules = $str_rules; $str_rules = $convwiki_rules; foreach ($lines as $i => $line) { $lines[$i] = rtrim($lines[$i], "\n\r"); // something wierd } $lines = explode("\n", make_str_rules(implode("\n", $lines))); $str_rules = $tmp_rules;
を追加。
設定例
rules.ini.php の末尾に
///////////////////////////////////////////////// // ユーザWikiルール変換ルール(convert_html直前に置換) // 正規表現で記述してください。?(){}-*./+\$^|など // は \? のようにクォートしてください。 // 行頭指定は ^ を頭に。行末指定は $ を後ろに。 // $convwiki_rules = array( '^\$\$ (.+) \$\$$' => '#mimetex($1)', '\$ ([^$]+) \$' => '&mimetex($1);', );
のように追加します。これで mimetex プラグインを
$$ x $$ this is $ x $ pen.
で実行できるようになります。よく $hoge は書くので、
$ x $
のように間に空白がないと発動しないようにする、例のような工夫がおすすめです。

this is pen.
#htmlinsert(moge,...)
を
#moge(....)
で実行するなんてことも出来るかも?
既知の問題
任意の場所でキャンセルする方法がない。