40 |
# データベース名(.pag, .dir, .dbなどは不要) |
# データベース名(.pag, .dir, .dbなどは不要) |
41 |
# $dbmopen = 1のときはデータベース名、 |
# $dbmopen = 1のときはデータベース名、 |
42 |
# $dbmopen = 0のときはディレクトリ名になる。 |
# $dbmopen = 0のときはディレクトリ名になる。 |
43 |
my $dbname = './wiki'; |
my $dbname = './wikidata'; |
44 |
my $diffdbname = './wikidiff'; |
my $diffdbname = './wikidiff'; |
45 |
############################## |
############################## |
46 |
# 修正者の氏名(自由に変更してください) |
# 修正者の氏名(自由に変更してください) |
233 |
$page_msg = &escape($page_msg); |
$page_msg = &escape($page_msg); |
234 |
print <<"EOD"; |
print <<"EOD"; |
235 |
<form action="$thisurl" method="post"> |
<form action="$thisurl" method="post"> |
236 |
<input type="hidden" name="mycmd" value="preview"> |
<!--<input type="hidden" name="mycmd" value="preview">--> |
237 |
<input type="hidden" name="mypage" value="$page_name"> |
<input type="hidden" name="mypage" value="$page_name"> |
238 |
<input type="hidden" name="mydigest" value="$digest"> |
<input type="hidden" name="mydigest" value="$digest"> |
239 |
<textarea cols="$cols" rows="$rows" name="mymsg" wrap="virtual">$page_msg</textarea><br> |
<textarea cols="$cols" rows="$rows" name="mymsg" wrap="virtual">$page_msg</textarea><br> |
240 |
<input type="submit" value="プレビュー"> |
<input type="submit" name="myspecial_preview" value="確認"> |
241 |
|
<input type="submit" name="myspecial_write" value="確認せず変更"> |
242 |
</form> |
</form> |
243 |
<hr> |
<hr> |
244 |
<h3>テキスト整形のルール</h3> |
<h3>テキスト整形のルール</h3> |
564 |
$line =~ s|'''([^']+?)'''|<strong>$1</strong>|g; |
$line =~ s|'''([^']+?)'''|<strong>$1</strong>|g; |
565 |
$line =~ s|''([^']+?)''|<em>$1</em>|g; |
$line =~ s|''([^']+?)''|<em>$1</em>|g; |
566 |
$line =~ s! |
$line =~ s! |
567 |
( |
( |
568 |
((mailto|http|https|ftp):[\x21-\x7E]*) # Direct http://... |
(?:<(?:mailto|http|https|ftp|urn):[\x21-\x7E]*)> |
569 |
| |
| (?:$WikiName) # LocalLinkLikeThis |
570 |
($WikiName) # LocalLinkLikeThis |
| (?:$BracketName) # [[日本語リンク]] |
571 |
| |
) |
|
($BracketName) # [[日本語リンク]] |
|
|
) |
|
572 |
! |
! |
573 |
&make_link($1) |
&make_link($1) |
574 |
!gex; |
!gex; |
668 |
# URLやページの名前からリンクを作る |
# URLやページの名前からリンクを作る |
669 |
sub make_link { |
sub make_link { |
670 |
my $name = shift; |
my $name = shift; |
671 |
if ($name =~ /^(http|https|ftp).*?(\.gif|\.png|\.jpeg|\.jpg)?$/) { |
$name =~ s/^<(.*)>$/$1/; |
672 |
|
if ($name =~ /^(http|https|ftp).*?(\.png|\.jpeg|\.jpg)?$/) { |
673 |
if ($2) { |
if ($2) { |
674 |
return qq|<a href="$name"><img border="0" src="$name" /></a>|; |
return qq|<a href="$name"><img border="0" src="$name" /></a>|; |
675 |
} else { |
} else { |
676 |
return qq|<a href="$name">$name</a>|; |
return qq|<<a href="$name">$name</a>>|; |
677 |
} |
} |
678 |
} elsif ($name =~ /^mailto:(.*)/) { |
} elsif ($name =~ /^mailto:(.*)/) { |
679 |
my $address = $1; |
my $address = $1; |
680 |
return qq|<a href="$name">$address</a>|; |
return qq|<<a href="$name">$address</a>>|; |
681 |
|
} elsif ($name =~ /^urn:[0-9A-Za-z_:-]+/) { |
682 |
|
return qq|<<a href="/uri-res/N2L?${name}">$name</a>>|; |
683 |
} elsif ($database{$name}) { |
} elsif ($database{$name}) { |
684 |
my $percent_name = &encode_percent($name); |
my $percent_name = &encode_percent($name); |
685 |
return qq|<a href="$thisurl?mycmd=read;mypage=$percent_name">$name</a>|; |
return qq|<a href="$thisurl?mycmd=read;mypage=$percent_name">$name</a>|; |
835 |
---- |
---- |
836 |
*大見出し2 |
*大見出し2 |
837 |
**小見出し2-1 |
**小見出し2-1 |
838 |
http://www.hyuki.com/ |
<http://suika.fam.cx/> |
839 |
**小見出し2-2 |
**小見出し2-2 |
840 |
|
|
841 |
[[結城浩]] |
[[結城浩]] |