nl2brの動作について

21 views
Skip to first unread message

knj77

unread,
Feb 29, 2012, 4:05:43 AM2/29/12
to kay-us...@googlegroups.com
石井(@knj77)と申します。

Kayのフィルター、nl2br が期待どおりの動作をせずに困っておりますので、
相談させてください。

nl2brフィルターでは以下のようなソースがありますが、
--------------------------------------------------------------------------------
  result = u'<br/>'.join(u'%s' % p.replace('\n', '<br>\n')
                        for p in _paragraph_re.split(escape(value)))
--------------------------------------------------------------------------------
これが実行時には、p.replace()がMarkupSafeにwrapされてしまい、
結果的に<br>もescapeされた状態になってしまいます。

これはどのように回避したらよろしいでしょうか。

Kayのバージョンは、py27ブランチの最新版です。
よろしくお願い申し上げます。

knj77

Takashi Matsuo

unread,
Feb 29, 2012, 5:50:08 AM2/29/12
to kay-us...@googlegroups.com
2012年2月29日18:05 knj77 <kenji....@gmail.com>:

報告ありがとうございます。

  result = u'<br/>'.join(u'%s' % p.replace('\n', Markup('<br>\n'))
                        for p in _paragraph_re.split(escape(value)))

みたいにすると手元ではオッケイですがどうでしょうか?

--
Takashi Matsuo
matsuo....@gmail.com
Kay's daddy


>
> Kayのバージョンは、py27ブランチの最新版です。
> よろしくお願い申し上げます。
>
> knj77
>
> --
> このメールは Google グループのグループ「kay-users-ja」の登録者に送られています。
> このディスカッションをウェブ上で閲覧するには、https://groups.google.com/d/msg/kay-users-ja/-/SDMl8bjZqb0J
> にアクセスしてください。
> このグループに投稿するには、kay-us...@googlegroups.com にメールを送信してください。
> このグループから退会するには、kay-users-ja...@googlegroups.com にメールを送信してください。
> 詳細については、http://groups.google.com/group/kay-users-ja?hl=ja
> からこのグループにアクセスしてください。

knj77

unread,
Feb 29, 2012, 8:00:50 AM2/29/12
to kay-us...@googlegroups.com
松尾さん

ありがとうございます。
下記の対応で期待通りの動作になりました!
ブランチに反映頂けると有り難いです。

# MarkUpは不思議な動作をしますね。初心者なので研究してみます。

knj77


On Wednesday, February 29, 2012 7:50:08 PM UTC+9, tmatsuo wrote:
2012年2月29日18:05 knj77 <>:

> このグループに投稿するには、kay-users-ja@googlegroups.com にメールを送信してください。
> このグループから退会するには、kay-users-ja+unsub...@googlegroups.com にメールを送信してください。
> 詳細については、http://groups.google.com/group/kay-users-ja?hl=ja
> からこのグループにアクセスしてください。

Reply all
Reply to author
Forward
0 new messages