タグ

perlとfilterに関するkiyo_hikoのブックマーク (3)

  • 演算子 | を overload して TT のフィルタみたいな記法を実装する - 酒日記 はてな支店

    TT (Template-Toolkit) で値にフィルタを掛ける時に [% value | replace('x','y') | uri | html %]みたいに書きますが、Text::MicroTemplate だと仮に replace(), uri() という関数を用意しても <?= uri( replace($value,'x','y') ) ?>こんな感じ。なんか読みにくい気がする。(まあ PHP だってそうだといえばそうなんだけど) <?= $value | replace('x','y') | uri ?>こんな風に書けたら素敵ですよね。ということでこんなのを書いてみた。 package Filter; use strict; require Exporter; our @ISA = qw/ Exporter /; our @EXPORT_OK = qw/ html uri

    演算子 | を overload して TT のフィルタみたいな記法を実装する - 酒日記 はてな支店
  • perlfilter - ソースフィルタ - perldoc.jp

    This article is about a little-known feature of Perl called source filters. Source filters alter the program text of a module before Perl sees it, much as a C preprocessor alters the source text of a C program before the compiler sees it. This article tells you more about what source filters are, how they work, and how to write your own. この記事は、ほとんど知られていない Perl の機能である ソースフィルタ に 関するものです。 C プリプロセッサが

    kiyo_hiko
    kiyo_hiko 2013/04/19
    そのうち読む        と思う。
  • Perl 言語自身すら拡張する Filter 機能をお勉強

    で、そんなことをして何が嬉しいかというと、perl に独自の言語仕様(構文)を加えることができます。ぱっと思いつくものでいえば、Filter::SQLSwitch あたりで使われていたりします。 そもそもなんで今毎 source filter 機能なんて調べているかというと、つい最近、このブログのカテゴリ部分に jQuery の jquery.pager.js を使ってページ分割をしてみました。最近エントリ数が多くなってきて見づらいなぁ〜と思っていたところなんです。 脱線しないように詳しい話はまた別エントリにするとして、MovableType 3.3 の ContextHandlers.pm を一部書き換えないとコレが実現できなかったんですけど、どうせなんでプラグインで配布しようかなぁ〜と考えてしまったわけです。・・・がですね、MT4 系等をサポートしようとすると・・・結構ソースが違

    kiyo_hiko
    kiyo_hiko 2013/04/19
    ソースフィルター知らなかった。マクロとかDSLが書けるようになるのかな // メモ:8094
  • 1