まだ重たいCMSをお使いですか?
毎秒1000リクエスト を捌く超高速CMS「adiary

2006/05/13(土)ソース中コメント記法

5/12スナップショット

今回はスナップショットとして公開してませんが、サーバ上には実装されています。

  • 管理メニューのデザインを変更しました。要望とかあればお願いします。
  • SALT(crypt)のキャッシュ機構を搭載し、更に高速化しました。
  • 要望にあったユーザー定義タグ機能を装備しました(管理メニュー参照)
  • 要望にあったソース中のコメント機能を装備しました。

ソース中コメント記法

ソース中コメント機能ついて解説します。>||#~#||< という新たなブロックタグがこの環境です。基本的には >||~||< と同様にブロック中のすべてのタグが無効化される環境(はてな記法のスーパーpre環境)ですが、次のように強調やコメントを書けます。

>||#
##{# リンク名}
#{if} ($ary->[0] ne '') { $name=#{join}(':', @$ary); }
#{if} (#{substr}($name,0,6) #{eq} 'title=') { $name=#{substr}($name, 6); } 
##{# リンク先タイトル}
#{my} $title = $self->{titles}->{$cmd};
#{if} ($title ne '') { $title=" title=\"$title\""; }
##{# リンク構成}
#{return} "<a$title href=\"$url\">$name</a>";
#||<

と書くことで

# リンク名
if ($ary->[0] ne '') { $name=join(':', @$ary); }
if (substr($name,0,6) eq 'title=') { $name=substr($name, 6); } 
# リンク先タイトル
my $title = $self->{titles}->{$cmd};
if ($title ne '') { $title=" title=\"$title\""; }
# リンク構成
return "<a$title href=\"$url\">$name</a>";

という風になります。

追記(2006/06/10)

ソース中コメント記法において、#{~}によるコメントだけでなく、((注釈記法))も受け付けるように変更しました。

>||#
# mini verbatim表記  {xxx}, {<tag>}, {[xxx:tag]}
$line =~ s/\{\{(.*?)\}\}/ $self->mini_pre($1) /eg;((mini pre {{ xxx }}))
$line =~ s/\{(.*?)\}/ $self->mini_verbatim($1) /eg;((mini varbatim {[xxx]}))
#||<

と入力すると、つぎのようになります。

# mini verbatim表記  {xxx}, {<tag>}, {[xxx:tag]}
$line =~ s/\{\{(.*?)\}\}/ $self->mini_pre($1) /eg;*1
$line =~ s/\{(.*?)\}/ $self->mini_verbatim($1) /eg;*2

*1 : mini pre {{ xxx }}

*2 : mini varbatim { x[x]x }