ラベル TT の投稿を表示しています。 すべての投稿を表示
ラベル TT の投稿を表示しています。 すべての投稿を表示

2006年3月21日火曜日

Template::Plugin::Encode

内部エンコーディングをFlagged UTF-8にしたところ、テンプレート内の日本語を含んだURLにuriフィルタを適用すると、空になるという現象が発生してしまいました。
uriフィルタをハックして、、とも思いましたが、テンプレート内でEncodeモジュールが使えたら便利かなと思い、プラグインを書いてみました。


Template::Plugin::Encode-0.01


使い方はこんな感じ。メソッドの実装は、Template::Plugin::Jcodeを参考に、virtual methodとして扱えるようにしてみました。

>

[% USE Encode %]

# encode
<a href="/foo/bar?jword=[% ja_str.encode.encode('utf-8')|html|uri %]">click here</a>

# decode
[% foo.encode.decode('euc-jp') %]

# from_to
[% num = bar.encode.from_to('sjis','euc-jp') %]
[% bar %]

<

こういうプラグインはすでにCPANにあるだろうと思ったんですが、ミストを感じなかったので、作成してみました。

2006年2月3日金曜日

Template::Plugin::AutoLink

テキスト中のURLやメールアドレスを自動でハイパーリンクに置換してくれるTTフィルターを書いてみました。

Template::Plugin::AutoLink 0.03

こんな感じで使います。

>

# テンプレート内

[% use AutoLink %]

[% FILTER auto_link target='_blank' %]

hori-uchi.com
http://hori-uchi.com/

[% END %]

# アウトプットはこんな感じ
Search here
http://hori-uchi.com/

<

こういう機能をもったプラグインて絶対すでにあるだろうと思っていたんですが、CPANで探しても見つからなかったので、書いたんですが、実はあったりするのかな。

追記
miyagawaさんが作ったTemplate::Plugin::Clickableというまったく同じことができるモジュールがすでにありました。やっぱないわけないですよね。。