• R/O
  • HTTP
  • SSH
  • HTTPS

sandbox: 提交

個人用


Commit MetaInfo

修訂7f10f1ca746585727883de3b22b062e7dafc1d53 (tree)
時間2012-03-14 01:10:42
作者takezoe <takezoe@871d...>
Commitertakezoe

Log Message

CSSを修正。

Change Summary

差異

--- a/takezoe/plugin/book/Install.pm
+++ b/takezoe/plugin/book/Install.pm
@@ -17,7 +17,6 @@ sub install {
1717 $wiki->add_paragraph_plugin("caption" ,"plugin::book::Caption" ,"HTML");
1818 $wiki->add_paragraph_plugin("toc" ,"plugin::book::Toc" ,"HTML");
1919 $wiki->add_inline_plugin("link" ,"plugin::book::Link" ,"HTML");
20- $wiki->add_inline_plugin("slink" ,"plugin::book::SLink" ,"HTML");
2120
2221 $wiki->add_block_plugin("list" ,"plugin::book::List" ,"HTML");
2322 $wiki->add_inline_plugin("code" ,"plugin::book::Code" ,"HTML");
@@ -68,6 +67,7 @@ div.chapter {
6867
6968 a.xref {
7069 background-color: silver;
70+ border: 1px solid gray;
7171 }
7272
7373 a.xref:link {
--- a/takezoe/plugin/book/SLink.pm
+++ /dev/null
@@ -1,101 +0,0 @@
1-################################################################################
2-#
3-# <p>見出しや図表へのリンクを出力するためのインラインプラグインです。</p>
4-# <p>引数にはtitle1〜title3プラグインやcaptionプラグインで記述した参照用のラベルを指定します。</p>
5-# <pre>
6-# !!!{{title1 installation}}インストール方法
7-# ...
8-# インストール方法については{{slink installation}}を参照してください。
9-# </pre>
10-# <p>第2引数でページを指定することで、別ページの見出しや図表を参照することもできます。</p>
11-# <pre>
12-# インストール方法については{{slink installation,Chapter1}}を参照してください。
13-# </pre>
14-#
15-################################################################################
16-package plugin::book::SLink;
17-#==============================================================================
18-# コンストラクタ
19-#==============================================================================
20-sub new {
21- my $class = shift;
22- my $self = {};
23- my $self->{cache} = {};
24- return bless $self,$class;
25-}
26-
27-#==============================================================================
28-# インラインメソッド
29-#==============================================================================
30-sub inline {
31- my $self = shift;
32- my $wiki = shift;
33- my $anchor = shift;
34- my $page = shift;
35-
36- $page = $wiki->get_CGI->param('page') unless $page;
37- my $source = $wiki->get_page($page);
38-
39- unless(defined($self->{cache}->{$page})){
40- $self->{cache}->{$page} = {};
41- my $source = $wiki->get_page($page);
42-
43- my $text = '';
44-
45- my @lines = split(/\n/,$wiki->get_page($page));
46- my $chapter = '';
47- my $count = {};
48- my $title1Count = 0;
49- my $title2Count = 0;
50- my $title3Count = 0;
51-
52- # TODO {{pre}}プラグイン内の記述は飛ばさないとダメ!!パーサを作らないとダメっぽい?
53- foreach my $line (@lines){
54- if($line =~ /^{{(chapter.+}})$/){
55- my $plugin = $wiki->parse_inline_plugin($1);
56- $chapter = $plugin->{'args'}->[0];
57- $title1Count = 0;
58- $title2Count = 0;
59- $title3Count = 0;
60- foreach my $key (keys(%$count)){
61- $count->{$key} = 0;
62- }
63- } elsif($line =~ /^!!!{{(title1.+}})(.+)$/){
64- my $plugin = $wiki->parse_inline_plugin($1);
65- $title1Count++;
66- $title2Count = 0;
67- $title3Count = 0;
68- $text= $chapter.'-'.$title1Count;
69- $self->{cache}->{$page}->{$plugin->{'args'}->[0]} = $text;
70-
71- } elsif($line =~ /^!!{{(title2.+}})$/){
72- my $plugin = $wiki->parse_inline_plugin($1);
73- $title2Count++;
74- $title3Count = 0;
75- $text= $chapter.'-'.$title1Count.'-'.$title2Count;
76- $self->{cache}->{$page}->{$plugin->{'args'}->[0]} = $text;
77-
78- } elsif($line =~ /^!{{(title3.+}})$/){
79- my $plugin = $wiki->parse_inline_plugin($1);
80- $title3Count++;
81- $text= $chapter.'-'.$title1Count.'-'.$title2Count.'-'.$title3Count;
82- $self->{cache}->{$page}->{$plugin->{'args'}->[0]} = $text;
83-
84- } elsif($line =~ /^{{(caption.+}})$/){
85- my $plugin = $wiki->parse_inline_plugin($1);
86- my $type = $plugin->{'args'}->[0];
87- $count->{$type}++;
88- $text = $type.$chapter.'-'.$count->{$type};
89- $self->{cache}->{$page}->{$plugin->{'args'}->[2]} = $text;
90- }
91- }
92- }
93- if(defined($self->{cache}->{$page}->{$anchor})){
94- my $text = $self->{cache}->{$page}->{$anchor};
95- return '<a href="?page='.Util::url_encode($page).'#'.Util::escapeHTML($anchor).'" style="border: 1px solid black;">'.Util::escapeHTML($text).'</a>';
96- } else {
97- return '<span class="xref-error">参照先が見つかりません!</span>';
98- }
99-}
100-
101-1;
Show on old repository browser