OSDN Git Service

8fda54a88a5a6dcd862f6f4c79b8b295395cd2a4
[fswiki/sandbox.git] / takezoe / plugin / book / Install.pm
1 ############################################################
2 #
3 # ½ñÀÒ¼¹É®ÍѤΥץ饰¥¤¥ó¤òÄ󶡤·¤Þ¤¹¡£
4 #
5 ############################################################
6 package plugin::book::Install;
7 use strict;
8 use plugin::book::TocParser;
9
10 sub install {
11         my $wiki  = shift;
12         $wiki->add_paragraph_plugin("chapter", "plugin::book::Chapter", "HTML");
13         $wiki->add_paragraph_plugin("section", "plugin::book::Section", "HTML");
14         $wiki->add_inline_plugin("title1", "plugin::book::Title1", "HTML");
15         $wiki->add_inline_plugin("title2", "plugin::book::Title2", "HTML");
16         $wiki->add_inline_plugin("title3", "plugin::book::Title3", "HTML");
17         $wiki->add_paragraph_plugin("caption" ,"plugin::book::Caption" ,"HTML");
18         $wiki->add_paragraph_plugin("toc" ,"plugin::book::Toc" ,"HTML");
19         $wiki->add_inline_plugin("link" ,"plugin::book::Link" ,"HTML");
20         
21         $wiki->add_block_plugin("list" ,"plugin::book::List" ,"HTML");
22         $wiki->add_inline_plugin("code" ,"plugin::book::Code" ,"HTML");
23         
24         $wiki->add_block_plugin("column" ,"plugin::book::Column" ,"HTML");
25         $wiki->add_block_plugin("note" ,"plugin::book::Note" ,"HTML");
26         $wiki->add_block_plugin("box" ,"plugin::book::Box" ,"HTML");
27         
28         $wiki->add_inline_plugin("memo", "plugin::book::Memo", "HTML");
29         $wiki->add_paragraph_plugin("memolist", "plugin::book::Memolist", "HTML");
30         
31         $wiki->add_inline_plugin("wordcount", "plugin::book::Wordcount", "HTML");
32         $wiki->add_inline_plugin("pagecount", "plugin::book::Pagecount", "HTML");
33         
34         $wiki->add_hook("chapter", "plugin::book::Title1");
35         $wiki->add_hook("chapter", "plugin::book::Title2");
36         $wiki->add_hook("chapter", "plugin::book::Title3");
37         $wiki->add_hook("chapter", "plugin::book::Caption");
38         
39         $wiki->add_hook("title1", "plugin::book::Title2");
40         $wiki->add_hook("title1", "plugin::book::Title3");
41         $wiki->add_hook("title3", "plugin::book::Title3");
42         
43         $wiki->add_inline_plugin("br", "plugin::book::Br");
44         $wiki->add_paragraph_plugin("keyword" ,"plugin::book::Keyword" ,"HTML");
45         
46         my @paths = split(/\//, $wiki->get_CGI()->path_info());
47         my $path_prefix = '';
48         for(my $i = 0; $i < $#paths; $i++){
49                 $path_prefix .= '../';
50         }
51         
52         my $head_info = <<"END_OF_HEAD";
53 <link href="${path_prefix}plugin/book/google-code-prettify/sunburst.css" type="text/css" rel="stylesheet" />
54 <script type="text/javascript" src="${path_prefix}plugin/book/google-code-prettify/prettify.js"></script>
55 <script type="text/javascript">window.onload = function(){ prettyPrint(); }</script>
56 <style type="text/css">
57 div.chapter {
58   text-align: right;
59   padding: 20px;
60   font-size: 200%;
61   font-style: italic;
62 }
63
64 a.xref {
65   background-color: silver;
66 }
67
68 a.xref:link {
69   color: black;
70 }
71
72 a.xref:hover {
73   color: black;
74 }
75
76 a.xref:visited {
77   color: black;
78 }
79
80 span.xref-error {
81   background-color: silver;
82   font-weight: bold;
83 }
84
85 span.memo {
86   background-color: yellow;
87   border: 1px solid #888800;
88   margin-left: 2px;
89   margin-right: 2x;
90 }
91
92 div.caption {
93   font-size: 80%;
94   font-weight: bold;
95 }
96
97 code {
98  font-weight: bold;
99 /* font-style: italic; */
100  font-family: monospace;
101 }
102
103 img {
104   border: 1px solid silver;
105 }
106
107 div.column {
108   border: 1px solid gray;
109   margin-left: 20px;
110   margin-right: 20px;
111   margin-top: 10px;
112   margin-bottom: 20px;
113 }
114
115 div.column-title {
116   background-color: silver;
117   font-weight: bold;
118   padding: 4px;
119 }
120
121 div.column-body {
122   padding: 4px;
123 }
124
125 div.note {
126   border: 2px dotted #FF8888;
127   background-color: #FFEEEE;
128   margin-bottom: 20px;
129   margin-left: 20px;
130   margin-top: 10px;
131   margin-right: 20px;
132 }
133
134 div.note-title {
135   font-weight: bold;
136   padding: 4px;
137 }
138
139 div.note-body {
140   padding: 4px;
141 }
142
143 span.keyword {
144   background-color: #666688;
145   color: white;
146   padding: 4px;
147 }
148
149 span.keyword a {
150   color: white;
151 }
152
153 div.keyword {
154   padding-top: 4px;
155   padding-left: 4px;
156   padding-right: 4px;
157   padding-bottom: 8px;
158 }
159
160 table.box {
161   width: 100%;
162   border-top: none;\r
163   border-left: none;
164   border-right: none;\r
165   border-bottom: none;\r
166   border-collapse:collapse;\r
167   border-spacing:0;\r
168   empty-cells:show;
169   margin: 2px;
170 }
171
172 table.box th {
173   width: 100px;
174   border-top: 1px solid #88AAFF;
175   border-left: 1px solid #88AAFF;
176   border-right:1px solid #88AAFF;\r
177   border-bottom:1px solid #88AAFF;\r
178   background-position:left top;\r
179   padding:0.3em 1em;\r
180   text-align:center;
181 }
182
183 table.box td {
184   border-top: 1px solid #88AAFF;
185   border-left: none;
186   border-right:1px solid #88AAFF;\r
187   border-bottom:1px solid #88AAFF;\r
188   padding:0.3em 1em;
189 }
190
191 table.box ul {
192   margin-bottom: 0px;
193   margin-left: 0px;
194   padding-left: 10px;
195 }
196
197 table.box p {
198   margin-bottom: 0px;
199   margin-left: 0px;
200   padding-left: 0px;
201 }
202 </style>
203 END_OF_HEAD
204         
205         $wiki->add_head_info($head_info);
206 }
207
208 1;