OSDN Git Service

keywordプラグインを追加。
[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_inline_plugin("title1", "plugin::book::Title1", "HTML");
14         $wiki->add_inline_plugin("title2", "plugin::book::Title2", "HTML");
15         $wiki->add_inline_plugin("title3", "plugin::book::Title3", "HTML");
16         $wiki->add_paragraph_plugin("caption" ,"plugin::book::Caption" ,"HTML");
17         $wiki->add_paragraph_plugin("toc" ,"plugin::book::Toc" ,"HTML");
18         $wiki->add_inline_plugin("link" ,"plugin::book::Link" ,"HTML");
19         
20         $wiki->add_block_plugin("list" ,"plugin::book::List" ,"HTML");
21         $wiki->add_inline_plugin("code" ,"plugin::book::Code" ,"HTML");
22         
23         $wiki->add_block_plugin("column" ,"plugin::book::Column" ,"HTML");
24         $wiki->add_block_plugin("note" ,"plugin::book::Note" ,"HTML");
25         
26         $wiki->add_inline_plugin("memo", "plugin::book::Memo", "HTML");
27         $wiki->add_paragraph_plugin("memolist", "plugin::book::Memolist", "HTML");
28         
29         $wiki->add_inline_plugin("wordcount", "plugin::book::Wordcount", "HTML");
30         $wiki->add_inline_plugin("pagecount", "plugin::book::Pagecount", "HTML");
31         
32         $wiki->add_hook("chapter", "plugin::book::Title1");
33         $wiki->add_hook("chapter", "plugin::book::Title2");
34         $wiki->add_hook("chapter", "plugin::book::Title3");
35         $wiki->add_hook("chapter", "plugin::book::Caption");
36         
37         $wiki->add_hook("title1", "plugin::book::Title2");
38         $wiki->add_hook("title1", "plugin::book::Title3");
39         $wiki->add_hook("title3", "plugin::book::Title3");
40         
41         $wiki->add_inline_plugin("br", "plugin::book::Br");
42         $wiki->add_paragraph_plugin("keyword" ,"plugin::book::Keyword" ,"HTML");
43         
44         my @paths = split(/\//, $wiki->get_CGI()->path_info());
45         my $path_prefix = '';
46         for(my $i = 0; $i < $#paths; $i++){
47                 $path_prefix .= '../';
48         }
49         
50         my $head_info = <<"END_OF_HEAD";
51 <link href="${path_prefix}plugin/book/google-code-prettify/sunburst.css" type="text/css" rel="stylesheet" />
52 <script type="text/javascript" src="${path_prefix}plugin/book/google-code-prettify/prettify.js"></script>
53 <script type="text/javascript">window.onload = function(){ prettyPrint(); }</script>
54 <style type="text/css">
55 div.chapter {
56   text-align: right;
57   padding: 20px;
58   font-size: 200%;
59   font-style: italic;
60 }
61
62 a.xref {
63   background-color: silver;
64 }
65
66 a.xref:link {
67   color: black;
68 }
69
70 a.xref:hover {
71   color: black;
72 }
73
74 a.xref:visited {
75   color: black;
76 }
77
78 span.xref-error {
79   background-color: silver;
80   font-weight: bold;
81 }
82
83 span.memo {
84   background-color: yellow;
85   border: 1px solid #888800;
86   margin-left: 2px;
87   margin-right: 2x;
88 }
89
90 div.caption {
91   font-size: 80%;
92   font-weight: bold;
93 }
94
95 code {
96  font-weight: bold;
97 /* font-style: italic; */
98  font-family: monospace;
99 }
100
101 img {
102   border: 1px solid silver;
103 }
104
105 div.column-title {
106   border-top: 1px solid gray;
107   border-left: 1px solid gray;
108   border-right: 1px solid gray;
109   padding: 4px;
110   background-color: silver;
111   font-weight: bold;
112   margin-left: 20px;
113   margin-right: 20px;
114 }
115
116 div.column-body {
117   border-bottom: 1px solid gray;
118   border-left: 1px solid gray;
119   border-right: 1px solid gray;
120   padding: 4px;
121   margin-left: 20px;
122   margin-right: 20px;
123   margin-bottom: 20px;
124 }
125
126 div.note-title {
127   border-top: 1px solid gray;
128   border-left: 1px solid gray;
129   border-right: 1px solid gray;
130   padding: 4px;
131   background-color: silver;
132   font-weight: bold;
133   margin-left: 20px;
134   margin-right: 20px;
135 }
136
137 div.note-body {
138   border-bottom: 1px solid gray;
139   border-left: 1px solid gray;
140   border-right: 1px solid gray;
141   padding: 4px;
142   margin-left: 20px;
143   margin-right: 20px;
144 }
145
146 span.keyword {
147   background-color: #666688;
148   color: white;
149   padding: 4px;
150 }
151
152 span.keyword a {
153   color: white;
154 }
155
156 div.keyword {
157   padding-top: 4px;
158   padding-left: 4px;
159   padding-right: 4px;
160   padding-bottom: 8px;
161 }
162 </style>
163 END_OF_HEAD
164         
165         $wiki->add_head_info($head_info);
166 }
167
168 1;