本文中の設定した特定の文字列に対してリンクを貼ってくれる「KotonohaLinkプラグイン

前から導入してはあったんだけど、どうも動作が変なときがあったのが解決したのでメモとして残す。
KotonohaLinkプラグインの入手は



KotonohaLinkプラグインはKotonohaLink.datはEUCなのに、内部でUTF-8にコード変換して処理をしている。
そのためか、設定した文字列によってはKotonohaLinkプラグインが正常に働かないことがあった。
KotonohaLink.plの44行目あたり
[perl gutter=”false” highlight_lines=”4″]
# PublishCharset
my $cfg = MT::ConfigMgr->instance;
my $charset = {‘Shift_JIS’=>’sjis’,’ISO-2022-JP’=>’jis’,’EUC-JP’=> ‘euc’,
‘UTF-8’=>’utf8’}->{$cfg->PublishCharset} || ‘utf8’;
[/perl]
↓↓↓↓↓

[perl gutter=”false” highlight_lines=”4″]
# PublishCharset
my $cfg = MT::ConfigMgr->instance;
my $charset = {‘Shift_JIS’=>’sjis’,’ISO-2022-JP’=>’jis’,’EUC-JP’=> ‘euc’,
‘UTF-8’=>’utf8’}->{$cfg->PublishCharset} || ‘euc’;
[/perl]
そして、念のためソースじたいもEUCで保存。
KotonohaLink.datもEUCで保存してサーバにアップロード。
これで解決したヽ(´ー` )ノ

小技?

  • KotonohaLinkで自動生成されるLink(Aタグ)はclass=”KotonohaLink”と指定されているので、スタイルシートでKotonohaLinkでのLinkだけ違う表示にすることができる。
  • KotonohaLinkプラグインで自動生成されるLinkを別ウィンドウで開くようにするには
    KotonohaLink.pl 117行目
    [perl gutter=”false”]$$str_ref =~ s!($cur_word)!<a class=”KotonohaLink” href=”$wordList{$cur_word}” target=”_blank”>$1</a>!g;[/perl]
    と、ウィンドウターゲットを指定する「target=”_blank”」を追加する。
  • KotonohaLink.datは空行を入れないこと!
    たぶん、「空白?」もLinkに変換しようとしてしまって再構築が終わらなくなる



関連しそうなentry