[前][次][番号順一覧][スレッド一覧]

hikidoc:133

From: Kurotsu Motoya <motoya.kurotsu.2009@g...>
Date: Tue, 11 Aug 2009 12:56:33 +0900
Subject: [hikidoc:133] Re: <pre>や<blockquote>内の plugin syntax

木村さん、こんにちは。黒津です。

> [hikidoc:128]の例にあげた入力に対して期待する出力

下の出力を期待します。

<h1>sec1</h1>
<pre>{{</pre>
<h1>sec2</h1>
<pre>}}</pre>
<h1>sec3</h1>
<blockquote><div class="plugin">{{</div></blockquote>
<h1>sec4</h1>
<blockquote><div class="plugin">}}</div></blockquote>

>実際に困ったケースなど

実際にこのケースに遭遇したのは、tdiary を使っていて、正規表現を含む
コードを複数の<pre>~</pre>にべた張りしていた時でした。たまたま、

!!example1
 ...
 /{{/
 ...
!!example2
 ...
 /}}/
 ...

このようなパターンが含まれていたために、問題に気づきました。それで、
<blockquote> ではどうなのだろうとか調べてみて、同じような問題が起き
たので、[hikidoc:128]には、調べた範囲で最も単純なパターンをあげました。

今回<table>でも簡単なテストをして見ました。tdiary の出力は期待通りに
なる一方、hikidoc コマンドの出力は期待通りにはなりませんでした。

入力:

!!table1
||cell11||{{cell12
!!table2
||cell21||cell22}}

tdiary の出力(期待値):

<h4>table1</h4>
<table border="1">
<tr><td>cell11</td><td>{{cell12
</td></tr>
</table>
<h4>table2</h4>
<table border="1">
<tr><td>cell21</td><td>cell22}}
</td></tr>
</table>

hikidocコマンドの出力:

<h2>table1</h2>
<table border="1">
<tr><td>cell11</td><td><span class="plugin">{{cell12
!!table2
||cell21||cell22}}</span>
</td></tr>
</table>

この場合は tdiary が与える plugin_syntax がうまく機能しているようです。

                def valid_plugin_syntax?(code)
                        lambda {
                                $SAFE = 4
                                eval( "BEGIN {return true}\n#{code}",
nil, "(plugin)", 0 )
                        }.call

ふと、tdiary の plugin_syntax を厳密化する方向もあるのかな、と考え始めた
ところです。

よろしくお願いします。

Motoya Kurotsu

--
ML: hikidoc@m...
使い方: http://QuickML.com/

[前][次][番号順一覧][スレッド一覧]

   @   128 2009-08-06 06:36 [motoya.kurotsu.2009@] <pre>や<blockquote>内の plugin syntax
   @   129 2009-08-08 03:59 ┣[hs@o...             ]                                       
       132 2009-08-10 18:02 ┗[kimuraw@i...        ]                                       
->     133 2009-08-11 05:56  ┗[motoya.kurotsu.2009@]                                     
       135 2009-08-11 16:52   ┗[kimuraw@i...        ]                                   
   @   136 2009-08-16 19:32    ┗[hs@o...             ]