結局。
なんだか、最近グチグチ言ってたソースコード表示の話ですが。
結局wpautopとの兼ね合いとか色々あって、既存のモノでは納得行かなかったのでプラグインを自作する羽目に・・・orz
1日つぶれました、とほほ。
まぁ、お陰で当面の不満は解消できるモノはできたワケですが。
とりあえず、不満としては
- ソースに連続した改行があると、wpautopと干渉してタグが崩れる
- XAMLがない。
- 特定キーワードにつくヘルプへのリンクがウザい
- コメントが斜体になる
- スタイルがコード直埋め
とかあったワケですが、とりあえず大体解消しました。
まぁ、GeSHi使ってしまったので、最後のスタイルが直接htmlに埋まるってのは解消しようがなかったワケですが。
もっとも、回避策がないではないので、その内また手間暇かけてやるかも知れません。
その手間暇ってのが、GeSHiのサポートしてる言語ファイル(約80ファイル)からスタイル記述抜き出して、cssを作るって内容なので、面倒過ぎて今はやる気がおきなかったり。
そもそも、個人的に使ってない大多数の言語をどーしたもんか?とか、ねぇ。
そーいや、wpautopとの干渉でタグのバランスが壊れる話ですが、iG:SyntaxHiliterでも行番号表示にすると発生しませんなぁ。
たぶん、作者はそっちのモードでしか使ってないんだろうな。
理由は単純で、<br/>とか改行がすべて<li>に置き換わるから、wpautopに連続改行が送られなくなるんですな。
じゃぁ、俺はどーやって回避したかってゆーと、本当に「回避」で。
優先度が最高のフィルタと、優先度がめちゃくちゃ低いフィルタの2つのフィルタ作って、1番目のフィルタでソースコードをいったん全部改行とか文字コードをエスケープしちゃって、2番目のフィルタでそれを戻してからGeSHiに掛けるって荒業使いました。
まぁ、ちょっと重いかもしれない。
(wpautopにひっからないよーに変換掛けてるので、wpautopでの置換処理とのトレードオフって気もするけどね)
ん?公開ですか?
・・・公開するとそれなりに手間が発生するので、まぁ、万が一要望があったら考えようかなぁ・・・。
トラックバック URL :