rabbit 1.0.3 → 1.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (189) hide show
  1. data/Rakefile +2 -1
  2. data/data/rabbit/image/nari-images/chibi_nari.png +0 -0
  3. data/data/rabbit/image/nari-images/gc_kun.png +0 -0
  4. data/data/rabbit/image/nari-images/nari-goal-flag.png +0 -0
  5. data/data/rabbit/image/nari-images/nari-images.rb +2 -0
  6. data/data/rabbit/image/nari-images/nari-start-flag.png +0 -0
  7. data/data/rabbit/image/nari-images/property.rb +4 -0
  8. data/doc/_site/css/jquery-ui/themes/ui-lightness.css +573 -0
  9. data/doc/_site/css/rabbit.css +287 -0
  10. data/doc/_site/en/development.html +140 -0
  11. data/doc/_site/en/faq.html +117 -0
  12. data/doc/_site/en/hiki.html +420 -0
  13. data/doc/_site/en/how-to-make/hiki.html +113 -0
  14. data/doc/_site/en/how-to-make/index.html +135 -0
  15. data/doc/_site/en/how-to-make/pdf.html +111 -0
  16. data/doc/_site/en/how-to-make/rd.html +151 -0
  17. data/doc/_site/en/how-to-make/theme.html +249 -0
  18. data/doc/_site/en/index.html +352 -0
  19. data/doc/_site/en/install/homebrew.html +273 -0
  20. data/doc/_site/en/install/index.html +146 -0
  21. data/doc/_site/en/install/macports.html +158 -0
  22. data/doc/_site/en/install/windows.html +200 -0
  23. data/doc/_site/en/news.html +1121 -0
  24. data/doc/_site/en/rd.html +555 -0
  25. data/doc/_site/en/sample/hiki/rabbit.html +380 -0
  26. data/doc/_site/en/sample/index.html +117 -0
  27. data/doc/_site/en/sample/rd/rabbit.html +572 -0
  28. data/doc/_site/en/slides.html +113 -0
  29. data/doc/_site/en/usage.html +445 -0
  30. data/doc/_site/en/users.html +129 -0
  31. data/doc/_site/favicon.ico +0 -0
  32. data/doc/_site/favicon.png +0 -0
  33. data/doc/_site/images/background-sample.svg +290 -0
  34. data/doc/_site/images/background.png +0 -0
  35. data/doc/_site/images/background.svg +131 -0
  36. data/doc/_site/images/hare-and-tortoise.png +0 -0
  37. data/doc/_site/images/hare-and-tortoise.svg +541 -0
  38. data/doc/_site/images/jp.png +0 -0
  39. data/doc/_site/images/lavie-icon.png +0 -0
  40. data/doc/_site/images/lavie.png +0 -0
  41. data/doc/_site/images/screenshots/en/blue-circle-raw.png +0 -0
  42. data/doc/_site/images/screenshots/en/blue-circle.png +0 -0
  43. data/doc/_site/images/screenshots/en/clear-blue-raw.png +0 -0
  44. data/doc/_site/images/screenshots/en/clear-blue.png +0 -0
  45. data/doc/_site/images/screenshots/en/cozmixng-raw.png +0 -0
  46. data/doc/_site/images/screenshots/en/cozmixng.png +0 -0
  47. data/doc/_site/images/screenshots/en/dark-gradation-raw.png +0 -0
  48. data/doc/_site/images/screenshots/en/dark-gradation.png +0 -0
  49. data/doc/_site/images/screenshots/en/day-white-raw.png +0 -0
  50. data/doc/_site/images/screenshots/en/day-white.png +0 -0
  51. data/doc/_site/images/screenshots/en/debian-raw.png +0 -0
  52. data/doc/_site/images/screenshots/en/debian.png +0 -0
  53. data/doc/_site/images/screenshots/en/green-circle-raw.png +0 -0
  54. data/doc/_site/images/screenshots/en/green-circle.png +0 -0
  55. data/doc/_site/images/screenshots/en/night-black-raw.png +0 -0
  56. data/doc/_site/images/screenshots/en/night-black.png +0 -0
  57. data/doc/_site/images/screenshots/en/rabbit-raw.png +0 -0
  58. data/doc/_site/images/screenshots/en/rabbit.png +0 -0
  59. data/doc/_site/images/screenshots/en/ranguba-raw.png +0 -0
  60. data/doc/_site/images/screenshots/en/ranguba.png +0 -0
  61. data/doc/_site/images/screenshots/en/red-frame-raw.png +0 -0
  62. data/doc/_site/images/screenshots/en/red-frame.png +0 -0
  63. data/doc/_site/images/screenshots/en/ruby-gnome2-raw.png +0 -0
  64. data/doc/_site/images/screenshots/en/ruby-gnome2.png +0 -0
  65. data/doc/_site/images/screenshots/en/rubykaigi2011-raw.png +0 -0
  66. data/doc/_site/images/screenshots/en/rubykaigi2011.png +0 -0
  67. data/doc/_site/images/screenshots/ja/blue-circle-raw.png +0 -0
  68. data/doc/_site/images/screenshots/ja/blue-circle.png +0 -0
  69. data/doc/_site/images/screenshots/ja/clear-blue-raw.png +0 -0
  70. data/doc/_site/images/screenshots/ja/clear-blue.png +0 -0
  71. data/doc/_site/images/screenshots/ja/cozmixng-raw.png +0 -0
  72. data/doc/_site/images/screenshots/ja/cozmixng.png +0 -0
  73. data/doc/_site/images/screenshots/ja/dark-gradation-raw.png +0 -0
  74. data/doc/_site/images/screenshots/ja/dark-gradation.png +0 -0
  75. data/doc/_site/images/screenshots/ja/day-white-raw.png +0 -0
  76. data/doc/_site/images/screenshots/ja/day-white.png +0 -0
  77. data/doc/_site/images/screenshots/ja/debian-raw.png +0 -0
  78. data/doc/_site/images/screenshots/ja/debian.png +0 -0
  79. data/doc/_site/images/screenshots/ja/green-circle-raw.png +0 -0
  80. data/doc/_site/images/screenshots/ja/green-circle.png +0 -0
  81. data/doc/_site/images/screenshots/ja/night-black-raw.png +0 -0
  82. data/doc/_site/images/screenshots/ja/night-black.png +0 -0
  83. data/doc/_site/images/screenshots/ja/rabbit-raw.png +0 -0
  84. data/doc/_site/images/screenshots/ja/rabbit.png +0 -0
  85. data/doc/_site/images/screenshots/ja/ranguba-raw.png +0 -0
  86. data/doc/_site/images/screenshots/ja/ranguba.png +0 -0
  87. data/doc/_site/images/screenshots/ja/red-frame-raw.png +0 -0
  88. data/doc/_site/images/screenshots/ja/red-frame.png +0 -0
  89. data/doc/_site/images/screenshots/ja/ruby-gnome2-raw.png +0 -0
  90. data/doc/_site/images/screenshots/ja/ruby-gnome2.png +0 -0
  91. data/doc/_site/images/screenshots/ja/rubykaigi2011-raw.png +0 -0
  92. data/doc/_site/images/screenshots/ja/rubykaigi2011.png +0 -0
  93. data/doc/_site/images/us.png +0 -0
  94. data/doc/_site/index.html.en +130 -0
  95. data/doc/_site/index.html.ja +130 -0
  96. data/doc/_site/ja/about.html +120 -0
  97. data/doc/_site/ja/development.html +141 -0
  98. data/doc/_site/ja/faq.html +243 -0
  99. data/doc/_site/ja/hiki.html +416 -0
  100. data/doc/_site/ja/how-to-make/hiki.html +113 -0
  101. data/doc/_site/ja/how-to-make/index.html +135 -0
  102. data/doc/_site/ja/how-to-make/pdf.html +112 -0
  103. data/doc/_site/ja/how-to-make/rd.html +161 -0
  104. data/doc/_site/ja/how-to-make/theme.html +254 -0
  105. data/doc/_site/ja/index.html +359 -0
  106. data/doc/_site/ja/install/homebrew.html +273 -0
  107. data/doc/_site/ja/install/index.html +148 -0
  108. data/doc/_site/ja/install/macports.html +174 -0
  109. data/doc/_site/ja/install/windows.html +200 -0
  110. data/doc/_site/ja/news.html +1110 -0
  111. data/doc/_site/ja/rd.html +565 -0
  112. data/doc/_site/ja/sample/hiki/rabbit.html +390 -0
  113. data/doc/_site/ja/sample/index.html +117 -0
  114. data/doc/_site/ja/sample/rd/rabbit.html +580 -0
  115. data/doc/_site/ja/slides.html +142 -0
  116. data/doc/_site/ja/usage.html +449 -0
  117. data/doc/_site/ja/users.html +332 -0
  118. data/doc/_site/javascripts/jquery-ui.js +11544 -0
  119. data/doc/_site/javascripts/jquery.js +7179 -0
  120. data/doc/_site/screenshot.en.rab +10 -0
  121. data/doc/_site/screenshot.ja.rab +10 -0
  122. data/doc/en/how-to-make/theme.rd +1 -1
  123. data/doc/en/index.rd +2 -0
  124. data/doc/en/news.rd +25 -0
  125. data/doc/en/users.rd +6 -2
  126. data/doc/images/screenshots/en/blue-circle-raw.png +0 -0
  127. data/doc/images/screenshots/en/blue-circle.png +0 -0
  128. data/doc/images/screenshots/en/clear-blue-raw.png +0 -0
  129. data/doc/images/screenshots/en/clear-blue.png +0 -0
  130. data/doc/images/screenshots/en/cozmixng-raw.png +0 -0
  131. data/doc/images/screenshots/en/cozmixng.png +0 -0
  132. data/doc/images/screenshots/en/dark-gradation-raw.png +0 -0
  133. data/doc/images/screenshots/en/dark-gradation.png +0 -0
  134. data/doc/images/screenshots/en/day-white-raw.png +0 -0
  135. data/doc/images/screenshots/en/day-white.png +0 -0
  136. data/doc/images/screenshots/en/debian-raw.png +0 -0
  137. data/doc/images/screenshots/en/debian.png +0 -0
  138. data/doc/images/screenshots/en/green-circle-raw.png +0 -0
  139. data/doc/images/screenshots/en/green-circle.png +0 -0
  140. data/doc/images/screenshots/en/night-black-raw.png +0 -0
  141. data/doc/images/screenshots/en/night-black.png +0 -0
  142. data/doc/images/screenshots/en/rabbit-raw.png +0 -0
  143. data/doc/images/screenshots/en/rabbit.png +0 -0
  144. data/doc/images/screenshots/en/ranguba-raw.png +0 -0
  145. data/doc/images/screenshots/en/ranguba.png +0 -0
  146. data/doc/images/screenshots/en/red-frame-raw.png +0 -0
  147. data/doc/images/screenshots/en/red-frame.png +0 -0
  148. data/doc/images/screenshots/en/ruby-gnome2-raw.png +0 -0
  149. data/doc/images/screenshots/en/ruby-gnome2.png +0 -0
  150. data/doc/images/screenshots/en/rubykaigi2011-raw.png +0 -0
  151. data/doc/images/screenshots/en/rubykaigi2011.png +0 -0
  152. data/doc/images/screenshots/ja/blue-circle-raw.png +0 -0
  153. data/doc/images/screenshots/ja/blue-circle.png +0 -0
  154. data/doc/images/screenshots/ja/clear-blue-raw.png +0 -0
  155. data/doc/images/screenshots/ja/clear-blue.png +0 -0
  156. data/doc/images/screenshots/ja/cozmixng-raw.png +0 -0
  157. data/doc/images/screenshots/ja/cozmixng.png +0 -0
  158. data/doc/images/screenshots/ja/dark-gradation-raw.png +0 -0
  159. data/doc/images/screenshots/ja/dark-gradation.png +0 -0
  160. data/doc/images/screenshots/ja/day-white-raw.png +0 -0
  161. data/doc/images/screenshots/ja/day-white.png +0 -0
  162. data/doc/images/screenshots/ja/debian-raw.png +0 -0
  163. data/doc/images/screenshots/ja/debian.png +0 -0
  164. data/doc/images/screenshots/ja/green-circle-raw.png +0 -0
  165. data/doc/images/screenshots/ja/green-circle.png +0 -0
  166. data/doc/images/screenshots/ja/night-black-raw.png +0 -0
  167. data/doc/images/screenshots/ja/night-black.png +0 -0
  168. data/doc/images/screenshots/ja/rabbit-raw.png +0 -0
  169. data/doc/images/screenshots/ja/rabbit.png +0 -0
  170. data/doc/images/screenshots/ja/ranguba-raw.png +0 -0
  171. data/doc/images/screenshots/ja/ranguba.png +0 -0
  172. data/doc/images/screenshots/ja/red-frame-raw.png +0 -0
  173. data/doc/images/screenshots/ja/red-frame.png +0 -0
  174. data/doc/images/screenshots/ja/ruby-gnome2-raw.png +0 -0
  175. data/doc/images/screenshots/ja/ruby-gnome2.png +0 -0
  176. data/doc/images/screenshots/ja/rubykaigi2011-raw.png +0 -0
  177. data/doc/images/screenshots/ja/rubykaigi2011.png +0 -0
  178. data/doc/index.html.en +2 -0
  179. data/doc/index.html.ja +2 -0
  180. data/doc/ja/how-to-make/theme.rd +1 -1
  181. data/doc/ja/index.rd +2 -0
  182. data/doc/ja/news.rd +25 -0
  183. data/doc/ja/users.rd +4 -2
  184. data/lib/rabbit/rabbit.rb +1 -1
  185. data/lib/rabbit/theme/image-slide-number/image-slide-number.rb +5 -3
  186. data/lib/rabbit/theme/image-timer/image-timer.rb +1 -1
  187. data/lib/rabbit/theme/nari/nari.rb +213 -0
  188. data/lib/rabbit/theme/rubykaigi2011/rubykaigi2011.rb +8 -0
  189. metadata +177 -4
@@ -0,0 +1,10 @@
1
+ = Rabbit
2
+
3
+ : subtitle
4
+ A presentation tool for Rubyist
5
+
6
+ : author
7
+ Kouhei Sutou
8
+
9
+ : institution
10
+ COZMIXNG
@@ -0,0 +1,10 @@
1
+ = Rabbit
2
+
3
+ : subtitle
4
+ Rubyist用プレゼンツール
5
+
6
+ : author
7
+ 須藤功平
8
+
9
+ : institution
10
+ COZMIXNG
@@ -39,7 +39,7 @@ page except the title page.
39
39
 
40
40
  You can set some properties by using
41
41
  (({prop_set})). ((<Pango Text Attribute
42
- Markup|URL:http://developer.gnome.org/doc/API/2.4/pango/PangoMarkupFormat.html>))
42
+ Markup|URL:http://developer.gnome.org/pango/stable/PangoMarkupFormat.html>))
43
43
  has more information.
44
44
 
45
45
  : font_desc
@@ -280,3 +280,5 @@ Here is a contributor list. Thanks to them!!!
280
280
  * Contributed Rabbit control command by Wii Remote.
281
281
  * Nobuyoshi Nakada:
282
282
  * Suggested about console availability check way on Windows.
283
+ * Ken Muryoi:
284
+ * Fixed a bug in document.
@@ -3,6 +3,31 @@ layout: en
3
3
  title: News
4
4
  apply_data: false
5
5
  ---
6
+ == 1.0.4: 2011-08-06
7
+
8
+ Theme improvements release!
9
+
10
+ === Improvements
11
+
12
+ ==== Theme
13
+
14
+ * nari: Added. This is for nari. [Created by nari]
15
+ * image-slide-number: Changed the default here to a cute here.
16
+ * image-slide-number: Supported flag color customize.
17
+ * image-timer: Changed the default tortoise to a cute tortoise.
18
+ * rubykaigi2011: Supported the tortoise and the here.
19
+
20
+ === Fixes
21
+
22
+ ==== Documentation
23
+
24
+ * Fixed Pango link. [Patch by Ken Muryoi]
25
+
26
+ === Thanks
27
+
28
+ * nari
29
+ * Ken Muryoi
30
+
6
31
  == 1.0.3: 2011-07-17
7
32
 
8
33
  A bug fix release of 1.0.2.
@@ -13,8 +13,12 @@ some other active spots.
13
13
 
14
14
  === Mailing list
15
15
 
16
- There is a rabbit-shockers-en mailing list for Shockers. You
17
- can subscribe the mailing list by sending the following mail:
16
+ There is a rabbit-shockers-en mailing list for Shockers.
17
+ (((<archive|URL:http://www.cozmixng.org/~w3ml/index.rb/rabbit-shockers-en/>)))
18
+
19
+
20
+ You can subscribe the mailing list by sending the following
21
+ mail:
18
22
 
19
23
  To: rabbit-shockers@ml.cozmixng.org
20
24
  Cc: kou@cozmixng.org
@@ -35,6 +35,8 @@ no_sidebar: true
35
35
  alt="Red Frame theme" /></li>
36
36
  <li><img src="images/screenshots/en/ruby-gnome2.png"
37
37
  alt="Ruby-GNOME2 theme" /></li>
38
+ <li><img src="images/screenshots/en/rubykaigi2011.png"
39
+ alt="RubyKaigi2011 theme" /></li>
38
40
  </ul>
39
41
  </section>
40
42
 
@@ -35,6 +35,8 @@ no_sidebar: true
35
35
  alt="赤い枠テーマ" /></li>
36
36
  <li><img src="images/screenshots/ja/ruby-gnome2.png"
37
37
  alt="Ruby-GNOME2テーマ" /></li>
38
+ <li><img src="images/screenshots/ja/rubykaigi2011.png"
39
+ alt="日本Ruby会議2011テーマ" /></li>
38
40
  </ul>
39
41
  </section>
40
42
 
@@ -43,7 +43,7 @@ title: テーマの作り方
43
43
 
44
44
  (({prop_set}))では前景色(foreground)以外にも以下のものが指
45
45
  定できます.詳しくは((<Pango Text Attribute
46
- Markup|URL:http://developer.gnome.org/doc/API/2.4/pango/PangoMarkupFormat.html>))
46
+ Markup|URL:http://developer.gnome.org/pango/stable/PangoMarkupFormat.html>))
47
47
  を見てください.
48
48
 
49
49
  : font_desc
@@ -286,3 +286,5 @@ data/rabbit/image/rubykaigi2011-images/rubykaigi2011-background-black.jpg
286
286
  * なかださん:
287
287
  * Windowsでコンソールが利用可能かどうかを検出する方法を
288
288
  教えてくれました。
289
+ * 無量井健さん:
290
+ * ドキュメントのバグを直してくれました。
@@ -3,6 +3,31 @@ layout: ja
3
3
  title: お知らせ
4
4
  apply_data: false
5
5
  ---
6
+ == 1.0.4: 2011-08-06
7
+
8
+ テーマ改良リリース!
9
+
10
+ === 改良
11
+
12
+ ==== テーマ
13
+
14
+ * nari: 追加。nariさん用テーマ。[nariさんが作成]
15
+ * image-slide-number: デフォルトのうさぎをかわいいうさぎに変更。
16
+ * image-slide-number: 旗の色をカスタマイズできるようにした。
17
+ * image-timer: デフォルトのかめをかわいいかめに変更。
18
+ * rubykaigi2011: うさぎとかめに対応。
19
+
20
+ === 修正
21
+
22
+ ==== ドキュメント
23
+
24
+ * Pangoのリンクを修正。[無量井さんが修正]
25
+
26
+ === 感謝
27
+
28
+ * nariさん
29
+ * 無量井さん
30
+
6
31
  == 1.0.3: 2011-07-17
7
32
 
8
33
  1.0.2のバグフィックスバージョン。
@@ -14,8 +14,10 @@ Rabbitユーザのコミュニティとして「ショッカー」がありま
14
14
  === メーリングリスト
15
15
 
16
16
  ショッカーのためにrabbit-shockersというメーリングリストがあ
17
- ります。以下のようなメールを送るとメーリングリストへ参加でき
18
- ます。
17
+ ります。
18
+ (((<アーカイブ|URL:http://www.cozmixng.org/~w3ml/index.rb/rabbit-shockers/>)))
19
+
20
+ 以下のようなメールを送るとメーリングリストへ参加できます。
19
21
 
20
22
  To: rabbit-shockers@ml.cozmixng.org
21
23
  Cc: kou@cozmixng.org
@@ -8,7 +8,7 @@ require "rabbit/gettext"
8
8
 
9
9
  module Rabbit
10
10
 
11
- VERSION = "1.0.3"
11
+ VERSION = "1.0.4"
12
12
 
13
13
  TMP_DIR_NAME = ".tmp"
14
14
 
@@ -2,7 +2,7 @@ add_image_path("rabbit-images")
2
2
 
3
3
  proc_name = "image-slide-number"
4
4
 
5
- @image_slide_number_image ||= "mini-usagi.png"
5
+ @image_slide_number_image ||= "mini-usa-taro.png"
6
6
  @image_slide_number_show_text ||= false
7
7
  @image_slide_number_font_size ||= @xx_small_font_size
8
8
  @image_slide_number_text_color ||= "white"
@@ -14,6 +14,8 @@ end
14
14
  @image_slide_number_start_image ||= "start-flag.png"
15
15
  @image_slide_number_goal_image ||= "goal-flag.png"
16
16
  @image_slide_number_space_ratio ||= 1.0 / 12.0
17
+ @image_slide_number_start_flag_color ||= "red"
18
+ @image_slide_number_goal_flag_color ||= "blue"
17
19
 
18
20
  @image_slide_number_margin_left ||= nil
19
21
  @image_slide_number_margin_right ||= nil
@@ -82,12 +84,12 @@ match(Slide) do |slides|
82
84
  "flag_type" => @image_slide_number_flag_type,
83
85
  "text" => "%0#{max_text_length}d" % slide.index,
84
86
  "text_attributes" => text_attributes,
85
- "flag_color" => "red",
87
+ "flag_color" => @image_slide_number_start_flag_color,
86
88
  }
87
89
  canvas.draw_flag(start_base_x, base_y, loader.height, props)
88
90
 
89
91
  props["text"] = (canvas.slide_size - 1).to_s
90
- props["flag_color"] = "blue"
92
+ props["flag_color"] = @image_slide_number_goal_flag_color
91
93
  canvas.draw_flag(goal_base_x, base_y, loader.height, props)
92
94
  else
93
95
  start_loader.draw(canvas, start_base_x, base_y,
@@ -20,7 +20,7 @@ end
20
20
 
21
21
  @image_timer_auto_scroll_direction ||= :left
22
22
 
23
- @image_timer_image ||= "kame.png"
23
+ @image_timer_image ||= "mini-kame-taro.png"
24
24
  @image_timer_interval ||= 5
25
25
  @image_timer_space_ratio ||= 1.0 / 12.0
26
26
 
@@ -0,0 +1,213 @@
1
+ # base
2
+ base_color = "#458cff"
3
+ base_light_color = "#666666"
4
+ base_light_background_color = "#e9ffff"
5
+ base_background_color = "#ffffff"
6
+
7
+ set_graffiti_color("#{base_color}99")
8
+ set_graffiti_line_width(30)
9
+
10
+ set_progress_foreground(base_color)
11
+ set_progress_background(base_background_color)
12
+
13
+ @default_item1_mark_color = base_light_color
14
+ @default_item1_mark_type = "check"
15
+ @default_item2_mark_color = base_light_color
16
+ @default_item2_mark_type = "check"
17
+ @default_item3_mark_color = base_light_color
18
+ @default_item3_mark_type = "check"
19
+ @default_enum_item1_mark_color = base_light_color
20
+ @default_enum_item1_mark_type = "check"
21
+ @default_enum_item2_mark_color = base_light_color
22
+ @default_enum_item2_mark_type = "check"
23
+ @default_description_item1_mark_color = base_light_color
24
+ @default_block_quote_item1_mark_color = base_light_color
25
+ @description_term_line_color = base_light_color
26
+
27
+ @default_emphasis_color = base_color
28
+
29
+ @preformatted_frame_color = base_light_color
30
+ @preformatted_fill_color = base_background_color
31
+
32
+ @block_quote_frame_color = base_light_color
33
+ @block_quote_fill_color = base_background_color
34
+
35
+ @table_frame_color = base_light_color
36
+ @table_fill_color = base_background_color
37
+ @table_body_frame_color = base_light_color
38
+ @table_body_fill_color = base_background_color
39
+ @table_head_frame_color = base_light_color
40
+ @table_head_fill_color = base_light_background_color
41
+
42
+ add_image_path("rabbit-images")
43
+
44
+ @block_quote_open_quote_image = "open-quote-blue.png"
45
+ @block_quote_close_quote_image = "close-quote-blue.png"
46
+
47
+ @margin_bottom = canvas.height * 0.05
48
+ @font_family = find_font_family("Times")
49
+ @monospace_font_family = find_font_family("Times")
50
+
51
+ @slide_number_uninstall = !print?
52
+ if print?
53
+ include_theme("slide-number")
54
+ end
55
+
56
+ include_theme("default")
57
+ include_theme("newline-in-title")
58
+
59
+ match(TitleSlide, "*") do |elements|
60
+ elements.horizontal_centering = false
61
+ elements.align = :right
62
+ set_font_family(elements)
63
+ end
64
+
65
+ match(TitleSlide, Title) do |titles|
66
+ titles.padding_bottom = @space * 2
67
+ end
68
+
69
+ match(Slide, HeadLine) do |heads|
70
+ name = "head-line"
71
+ heads.delete_post_draw_proc_by_name(name)
72
+ heads.horizontal_centering = true
73
+ set_font_family(heads)
74
+ end
75
+
76
+ match(Slide, Body) do |bodies|
77
+ bodies.vertical_centering = true
78
+ bodies.each do |body|
79
+ set_font_family(body)
80
+ next if body.elements.all? {|element| element.is_a?(Image)}
81
+ next if body.elements.any? {|element| element.is_a?(BlockQuote)}
82
+ next if body.elements.any? {|element| element.is_a?(PreformattedBlock)}
83
+ next if body.elements.any? {|element| element.is_a?(Table)}
84
+ body.margin_left = canvas.width * 0.05
85
+ body.margin_right = canvas.width * 0.05
86
+ end
87
+ end
88
+
89
+ add_image_path("nari-images")
90
+ unless print?
91
+ @image_slide_number_image ||= "gc_kun.png"
92
+ @image_slide_number_start_image = "nari-start-flag.png"
93
+ @image_slide_number_goal_image = "nari-goal-flag.png"
94
+ include_theme("image-slide-number")
95
+ if canvas.allotted_time
96
+ @image_timer_image ||= "chibi_nari.png"
97
+ include_theme("image-timer")
98
+ end
99
+ end
100
+
101
+ @slide_footer_info_left_text ||= canvas.title
102
+ @slide_footer_info_right_text ||= "Powered by Rabbit #{Rabbit::VERSION}"
103
+ include_theme("slide-footer-info")
104
+
105
+ # takahashi method
106
+ @lightning_talk_proc_name = "lightning-simple"
107
+ @lightning_talk_as_large_as_possible = true
108
+
109
+ include_theme("lightning-talk-toolkit")
110
+
111
+ match(Slide) do |slides|
112
+ slides.each do |slide|
113
+ if slide.lightning_talk?
114
+ slide.lightning_talk
115
+ end
116
+ end
117
+ end
118
+
119
+ @lightning_talk_nari_slide_params = {}
120
+
121
+ def slide_params(slide)
122
+ res = {}
123
+ if !slide["size"].nil? && !slide["size"].empty?
124
+ res[:size] = screen_size(slide["size"].to_i * Pango::SCALE)
125
+ end
126
+ %w(color family backgroundcolor).each do |key|
127
+ unless slide[key].nil? || slide[key].empty?
128
+ slide_key = key == "backgroundcolor" ? "background_color" : key
129
+ res[slide_key.to_sym] = slide[key]
130
+ end
131
+ end
132
+ res[:as_large_as_possible] = false unless res.empty?
133
+ res
134
+ end
135
+
136
+
137
+ # All slide property were used first slide property.
138
+ match(Slide) do |slides|
139
+ slides.each_with_index do |slide, index|
140
+ if index.zero?
141
+ @lightning_talk_nari_slide_params = slide_params(slide)
142
+ end
143
+ if slide.lightning_talk?
144
+ adhock_params = slide_params(slide)
145
+ slide.lightning_talk(
146
+ adhock_params.empty? ? @lightning_talk_nari_slide_params : adhock_params)
147
+ end
148
+ end
149
+ end
150
+
151
+ include_theme("per-slide-background-color")
152
+ include_theme("per-slide-background-image")
153
+
154
+ # headline-position
155
+ #
156
+ # Usage:
157
+ # :headline-position
158
+ # bottom-right
159
+ match(Slide) do |slides|
160
+ slides.each do |slide|
161
+ headline_position = slide["headline-position"]
162
+ next if headline_position.nil?
163
+
164
+ head = slide.headline
165
+ head.horizontal_centering = false
166
+ head.vertical_centering = false
167
+
168
+ case headline_position.split("-").first
169
+ when "top"
170
+ head.margin_bottom = canvas.height * 0.5
171
+ when "bottom"
172
+ head.align = :right
173
+ head.margin_top = canvas.height * 0.5
174
+ end
175
+
176
+ case headline_position.split("-")[1]
177
+ when "right"
178
+ head.align = :right
179
+ head.margin_right = canvas.width * 0.05
180
+ when "left"
181
+ head.align = :left
182
+ head.margin_left = canvas.width * 0.05
183
+ when "center"
184
+ head.align = :center
185
+ end
186
+ end
187
+ end
188
+
189
+ # background-image-credit
190
+ #
191
+ # Usage:
192
+ # :background-image
193
+ # images/steal_rabbit.jpg
194
+ # :background-image-credit
195
+ # http://www.flickr.com/photos/ryanr/157458385/
196
+ match(Slide) do |slides|
197
+ slides.each do |slide|
198
+ credit = slide["background-image-credit"]
199
+ next if credit.nil?
200
+
201
+ slide.add_pre_draw_proc(name) do |canvas, x, y, w, h, simulation|
202
+ props = {
203
+ "font_family" => slide[:family],
204
+ "size" => screen_size(1.5 * Pango::SCALE),
205
+ "color" => "#666",
206
+ }
207
+ right_layout = make_layout(span(props, credit))
208
+ text_width, text_height = right_layout.pixel_size
209
+ canvas.draw_layout(right_layout, (canvas.width - text_width - screen_x(1)), canvas.height - @margin_bottom)
210
+ [x, y, w, h]
211
+ end
212
+ end
213
+ end