package MT::Plugin::HigurashiRed; use strict; use Jcode; use MT; use MT::Template::Context; use MT::Plugin; use MT::ConfigMgr; # バージョン our $VERSION = 0.03; # 管理画面表示用項目設定 if(MT->can('add_plugin')){ my $plugin = MT::Plugin->new; $plugin->name("Higurashi Red Plugin " . $VERSION); $plugin->description('Change color of Japanese charactor "NA" in "HIGURASHI NO NA KUKORONI" to RED.'); # $plugin->description('Change color of NA to RED.'); MT->add_plugin($plugin); } # 定義 MT::Template::Context->add_global_filter(HigurashiRed => \&higurashi_red); # メソッド sub higurashi_red { my ($text, $arg, $ctx) =@_; my $chr = MT::ConfigMgr->instance->PublishCharset; my $jcnv; if (lc $chr eq lc 'Shift_JIS') { $jcnv = 'sjis'; } elsif (lc $chr eq lc 'ISO-2022-JP') { $jcnv = 'jis'; } elsif (lc $chr eq lc 'UTF-8') { $jcnv = 'utf8'; } elsif (lc $chr eq lc 'EUC-JP') { $jcnv = 'euc'; } my $BEFORE_STR = Jcode::convert( 'ひぐらしのなく頃に', $jcnv ); my $AFTER_STR = Jcode::convert( 'ひぐらしのく頃に', $jcnv ); $text =~ s/$BEFORE_STR/$AFTER_STR/g; $text; } 1;