| 次の日 / 最新 |
うっ、いじってる内に日をまたいでしまった…それはともかく。
↓のエントリが長くなってしまったのでMovableTypeなどで見られるようなエントリの途中まで表示して残りはリンク先、という「見出しモード」を仕込んでみました。
sub write_day_page {
:
$content =~ s|<h2>.+?</h2>||sm;
## 2004-05-08 bills : 見出し
$content = remove_heading($content);
:
sub write_month_page {
:
my $content = join('', map {$month_page{$ym}{$_}} @cont);
## 2004-05-08 bills : 見出し
$content = remove_heading($content);
:
sub write_index_page {
:
## 2004-05-08 bills : 見出し化
## $top_n_str .= $month_page{$ym}{$ymd};
$top_n_str .= make_heading($month_page{$ym}{$ymd}, $ymd);
:
## 2004-05-08 bills : 見出し
sub make_heading {
my ($str, $ymd) = @_;
return $str if ($heading_mode == 0);
my $url = datestr2url($ymd);
$str =~ s!\[\[\[heading\]\]\].+?</p>![<a href="${url}">全部読む</a>]</p>!gsm;
return $str;
}
:
## 2004-05-08 bills : 見出し
sub remove_heading {
my ($str) = @_;
return $str if ($heading_mode == 0);
$str =~ s!\[\[\[heading\]\]\]!!gsm;
return $str
}
(別途$heading_modeをコンフィグ対象変数として定義)
chalow ではChangeLog形式テキストからエントリを生成しますが、テキストの改行毎に<br>タグを生成します。
エディタで論理改行(折り返し)を使わない派の自分は、適当な文節や桁数で改行を入れてテキストを作成するのですが、その改行でレイアウトに影響が出てしまうのが個人的にあまりうれしくないと感じました。
そこでまず、ちょっと chalow をいじって、改行のみの空行の時だけ<br>タグを付けるようにしました。YukiWiki等のように、空行があらわれるまではひとつの行として見た目の改行をせず、同一行に連結するものです。
#print "1[$_]\n";
## 2004-05-08 bills : 空行のみ<br>を付ける
## s!$!<br>!gsm;
## s!<br>$!!;
s!^$!<br>!gsm;
#print "2[$_]\n";
#print "1[$_]\n";
## 2004-05-08 bills : 単一行モード
if ($single_line_mode != 0) {
s!^ (.+?)(^$|\z)!make_single_line($1)!gsme;
}
s!$!<br>!gsm;
s!<br>$!!;
#print "2[$_]\n";
(略)
## 2004-05-08 bills : 単一行
sub make_single_line {
my ($line) = @_;
$line =~ s!\n!!gsm;
return " ${line}\n";
}
(別途$single_line_modeをコンフィグ対象変数として定義)
2004-05 /
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 | 31 |
2006 : 01 02 03 04 05 06 07 08 09 10 11 12
2005 : 01 02 03 04 05 06 07 08 09 10 11 12
2004 : 01 02 03 04 05 06 07 08 09 10 11 12
最終更新時間: 2006-06-05 00:56
