昨日のアップロード時に機能解説をすっとばしてしまっていたので全体的に補足します。
*[共通部分]
*[CHANGE] Sukeroku-originalフォーマット実装をしないことにしました(^^;)
当初予定していたmt-sukeroku.plのフォーマット実装をしないことにしました。
PukiWikiフォーマット+αで大概の表現が肩代わりできると判断したためです。
その影響で、今後独自機能の実装が増えると思いますが…。
おそらくmt-sukeroku-plus.plと異なり、mt-sukeroku.plの利用者は少ないので影響は少ない*1と思いますが、もし愛用されている向きがいらっしゃいましたらスミマセン。
*[NEW] 出力されるHTMLの各要素ごとに指定した属性を定義できる機能を実装した。(CSSなどで利用を想定)
mt-sukeroku-plus内部でHTMLに変換する際にデフォルトの属性を定義できるようにしました。
もちろん本来ならMTのスタイルシート上に各HTML要素に対する設定を追記すればいいんですが、クラスで分けたいとかそういう指定できないので、それぞれのHTML要素(一部除く)で逐一属性を書き出すというアプローチをしてみました。
ver.0.40のソースには用語定義のdt要素に下線を引くスタイル指定をしていますが、こういうCSS方面に限らず、表組みの枠線の幅の設定などにも活用できるかと思われます。
*[NEW] ins,delの対象となるHTML要素を指定できるようにした。
どれぐらいの方がins, delの出力を期待しているか分からないので、利用される側で出力できる要素を設定できる方がベンリなこともあるだろうということでこういう実装にしてみました。
例えば、insは使わないので、代わりに<code>...</code>に置き換えるなど使い道はそれなりにあるかと思われます。
*[NEW] amazon.co.jp,google,はてなキーワードへのリンクURLを任意に設定できるようにした(仕様変更時対応のため)
書いてある通り、URLの左側の部分を任意に指定できるようにしました。
まぁよっぽどのことがない限り使わないと思いますが、いつ仕様変更があるか分からないので(笑)
*[YukiWiki]
*[NEW] (独自機能)&style(CSS,inline)で<span style="CSS">inline</span>とレンダリングするようにした。
YukiWikiのプラグイン書式に従い、機能追加しました。
まぁそんなにCSSを多様するならWiki風フォーマット使わない方がいいと思うんですが、とりあえず。
*[CHANGE] 整形済みテキストの対象となる論理行頭の空白文字1個を取り込まないようにした。
タブ文字に限らず行頭のスペースが整形済みテキストに取り込まれるため、左側に無用なマージンができるためこういう修正を行いました。
もともとフォーマット用の制御文字なので問題ないかと思っています。
*[PukiWiki]
*[NEW] (独自機能)%3つで挟むと<ins>...</ins>(デフォルト)として扱うようにした。
ins要素で挟んで出力しますが、上記の通りあまりinsとして出力することは前提にしていなかったりします。
*[NEW] (独自機能)&style(CSS){inline};で<span style="CSS">inline</span>とレンダリングするようにした。
こちらも気休め程度の実装です。
*[NEW] (独自機能)&ref();のオプションにnoembedを追加。画像自動埋め込みをキャンセルします。
&refの画像展開をして欲しくないケースとかもあると思います。
その際にnoembedキーワードを入れることで、デフォルトの場合画像のURL、代替文字列の指定をしていればリンクアンカー文字列としてそれが表示されます。
*[NEW] (独自機能)バーベイタムモードを実装。
YukiWikiにあって、PukiWikiにない最大の機能ということで実装してみました。
これでMTのアップロード機能で生成されるHTMLをごっそり埋め込むことができます(^^;;
設定できる項目は…
- この機能を使うか使わないか
- バーベイタムモード(ハード)の開始正規表現(デフォルト:^\/\/\/\/)
- バーベイタムモード(ハード)の終了正規表現(デフォルト:^\/\/\/\/)
- バーベイタムモード(ソフト)の開始正規表現(デフォルト:^\/\/\/)
- バーベイタムモード(ソフト)の終了正規表現(デフォルト:^\/\/\/)
です。通常有効にしちゃっています。
ソフトモード中に記述された内容はそのまま出力されますが、ハードモードは中に記述されている内容をHTMLエンコードします。
< を &$1;などとしなくてもいけるということです。
例えば、
//// <a href="http://hsj.jp/works/">ささやかなる実験場の開発室(HSJ.jp)</a> //// /// <a href="http://hsj.jp/works/">ささやかなる実験場の開発室(HSJ.jp)</a> ///
が
<a href="http://hsj.jp/works/">ささやかなる実験場の開発室(HSJ.jp)</a>
以上のような感じになります。
*[CHANGE] 整形済みテキストの対象となる論理行頭の空白文字1個を取り込まないようにした。
YukiWiki風フォーマットとそれと理由は同様です。
*[Hatena]
*[DEBUG] 自動リンク時、属性を大文字混じりで記述している(SRC,Href)と処理されない不具合に対処。(のもとさんご指摘)
基本はXHTMLのつもりなので<a href="...">xxx</a>という記述になると想定していたのですが、<A HREF="...">xxx</A>とかでも大丈夫なようにしてみました。
*[DEBUG] 論理行中に脚注が複数あると正しく処理されない不具合に対処。(トモコさんご指摘)
脚注しまくり文もこれで安心です(笑)