rabbit 2.1.2 → 2.1.3

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 (116) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +26 -0
  3. data/data/locale/en/LC_MESSAGES/rabbit.mo +0 -0
  4. data/data/locale/fr/LC_MESSAGES/rabbit.mo +0 -0
  5. data/data/locale/ja/LC_MESSAGES/rabbit.mo +0 -0
  6. data/doc/_config.yml +2 -3
  7. data/doc/en/development.rd +9 -9
  8. data/doc/en/faq.rd +132 -0
  9. data/doc/en/hiki.hiki +2 -1
  10. data/doc/en/index.rd +19 -29
  11. data/doc/en/install/homebrew.rd +1 -0
  12. data/doc/en/install/windows.rd +6 -3
  13. data/doc/en/news.rd +68 -1
  14. data/doc/en/rd.rd +2 -1
  15. data/doc/en/sample/hiki/rabbit.hiki +2 -1
  16. data/doc/en/usage.rd +4 -0
  17. data/doc/en/usage/platform/os-x.rd +13 -0
  18. data/doc/images/screenshots/en/blue-circle-raw.png +0 -0
  19. data/doc/images/screenshots/en/blue-circle.png +0 -0
  20. data/doc/images/screenshots/en/clear-blue-raw.png +0 -0
  21. data/doc/images/screenshots/en/clear-blue.png +0 -0
  22. data/doc/images/screenshots/en/cozmixng-raw.png +0 -0
  23. data/doc/images/screenshots/en/cozmixng.png +0 -0
  24. data/doc/images/screenshots/en/dark-gradation-raw.png +0 -0
  25. data/doc/images/screenshots/en/dark-gradation.png +0 -0
  26. data/doc/images/screenshots/en/day-white-raw.png +0 -0
  27. data/doc/images/screenshots/en/day-white.png +0 -0
  28. data/doc/images/screenshots/en/debian-raw.png +0 -0
  29. data/doc/images/screenshots/en/debian.png +0 -0
  30. data/doc/images/screenshots/en/green-circle-raw.png +0 -0
  31. data/doc/images/screenshots/en/green-circle.png +0 -0
  32. data/doc/images/screenshots/en/night-black-raw.png +0 -0
  33. data/doc/images/screenshots/en/night-black.png +0 -0
  34. data/doc/images/screenshots/en/rabbit-raw.png +0 -0
  35. data/doc/images/screenshots/en/rabbit.png +0 -0
  36. data/doc/images/screenshots/en/ranguba-raw.png +0 -0
  37. data/doc/images/screenshots/en/ranguba.png +0 -0
  38. data/doc/images/screenshots/en/red-frame-raw.png +0 -0
  39. data/doc/images/screenshots/en/red-frame.png +0 -0
  40. data/doc/images/screenshots/en/ruby-gnome2-raw.png +0 -0
  41. data/doc/images/screenshots/en/ruby-gnome2.png +0 -0
  42. data/doc/images/screenshots/en/rubykaigi2011-raw.png +0 -0
  43. data/doc/images/screenshots/en/rubykaigi2011.png +0 -0
  44. data/doc/images/screenshots/ja/blue-circle-raw.png +0 -0
  45. data/doc/images/screenshots/ja/blue-circle.png +0 -0
  46. data/doc/images/screenshots/ja/clear-blue-raw.png +0 -0
  47. data/doc/images/screenshots/ja/clear-blue.png +0 -0
  48. data/doc/images/screenshots/ja/cozmixng-raw.png +0 -0
  49. data/doc/images/screenshots/ja/cozmixng.png +0 -0
  50. data/doc/images/screenshots/ja/dark-gradation-raw.png +0 -0
  51. data/doc/images/screenshots/ja/dark-gradation.png +0 -0
  52. data/doc/images/screenshots/ja/day-white-raw.png +0 -0
  53. data/doc/images/screenshots/ja/day-white.png +0 -0
  54. data/doc/images/screenshots/ja/debian-raw.png +0 -0
  55. data/doc/images/screenshots/ja/debian.png +0 -0
  56. data/doc/images/screenshots/ja/green-circle-raw.png +0 -0
  57. data/doc/images/screenshots/ja/green-circle.png +0 -0
  58. data/doc/images/screenshots/ja/night-black-raw.png +0 -0
  59. data/doc/images/screenshots/ja/night-black.png +0 -0
  60. data/doc/images/screenshots/ja/rabbit-raw.png +0 -0
  61. data/doc/images/screenshots/ja/rabbit.png +0 -0
  62. data/doc/images/screenshots/ja/ranguba-raw.png +0 -0
  63. data/doc/images/screenshots/ja/ranguba.png +0 -0
  64. data/doc/images/screenshots/ja/red-frame-raw.png +0 -0
  65. data/doc/images/screenshots/ja/red-frame.png +0 -0
  66. data/doc/images/screenshots/ja/ruby-gnome2-raw.png +0 -0
  67. data/doc/images/screenshots/ja/ruby-gnome2.png +0 -0
  68. data/doc/images/screenshots/ja/rubykaigi2011-raw.png +0 -0
  69. data/doc/images/screenshots/ja/rubykaigi2011.png +0 -0
  70. data/doc/ja/hiki.hiki +2 -1
  71. data/doc/ja/install/windows.rd +6 -3
  72. data/doc/ja/news.rd +68 -1
  73. data/doc/ja/rd.rd +2 -1
  74. data/doc/ja/sample/hiki/rabbit.hiki +2 -1
  75. data/lib/rabbit/canvas.rb +1 -5
  76. data/lib/rabbit/command/rabbit.rb +9 -2
  77. data/lib/rabbit/element/container-element.rb +5 -3
  78. data/lib/rabbit/element/slide-element.rb +11 -0
  79. data/lib/rabbit/gtk.rb +25 -0
  80. data/lib/rabbit/image-data-loader.rb +46 -0
  81. data/lib/rabbit/image/base.rb +9 -11
  82. data/lib/rabbit/image/default.rb +1 -2
  83. data/lib/rabbit/image/eps.rb +2 -2
  84. data/lib/rabbit/image/gimp.rb +1 -2
  85. data/lib/rabbit/image/pdf.rb +1 -0
  86. data/lib/rabbit/info-window.rb +62 -21
  87. data/lib/rabbit/logger.rb +20 -4
  88. data/lib/rabbit/logger/gui.rb +5 -8
  89. data/lib/rabbit/logger/stderr.rb +5 -9
  90. data/lib/rabbit/parser/rd.rb +1 -1
  91. data/lib/rabbit/renderer/display/button-handler.rb +2 -2
  92. data/lib/rabbit/renderer/display/drawing-area-base.rb +2 -6
  93. data/lib/rabbit/renderer/display/progress.rb +1 -1
  94. data/lib/rabbit/renderer/engine/cairo.rb +17 -13
  95. data/lib/rabbit/slideshare.rb +1 -1
  96. data/lib/rabbit/source/base.rb +24 -40
  97. data/lib/rabbit/task/slide.rb +1 -1
  98. data/lib/rabbit/theme/applier.rb +8 -3
  99. data/lib/rabbit/theme/default-preformatted/default-preformatted.rb +4 -1
  100. data/lib/rabbit/theme/default-text/default-text.rb +0 -10
  101. data/lib/rabbit/theme/slide-show/slide-show.rb +2 -2
  102. data/lib/rabbit/theme/syntax-highlighting/syntax-highlighting.rb +6 -0
  103. data/lib/rabbit/theme/tag/tag.rb +4 -0
  104. data/lib/rabbit/version.rb +2 -2
  105. data/po/en/rabbit.edit.po +2675 -0
  106. data/po/en/rabbit.po +3 -862
  107. data/po/fr/rabbit.edit.po +2674 -0
  108. data/po/fr/rabbit.po +3 -862
  109. data/po/ja/rabbit.edit.po +2737 -0
  110. data/po/ja/rabbit.po +4 -864
  111. data/sample/image-reflection.rab +12 -0
  112. data/sample/note.rab +31 -0
  113. data/sample/rabbit-slide-show-logo.svg +597 -0
  114. data/test/parser/test-rd.rb +45 -0
  115. data/test/test-source.rb +78 -30
  116. metadata +767 -756
data/doc/en/rd.rd CHANGED
@@ -1,8 +1,8 @@
1
1
  ---
2
2
  layout: en
3
3
  title: RD
4
- apply_data: false
5
4
  ---
5
+ {% raw %}
6
6
  == What is RD?
7
7
 
8
8
  RD is Ruby's POD, embeddable documentation format in script file.
@@ -479,3 +479,4 @@ Of course, you can use the text for the display for Reference to URL resource.
479
479
  When the text for the display is omitted, you can use ((<Inline>)) for Label.
480
480
  ((<((*Label*))>))
481
481
  ((<((*Label*))>))
482
+ {% endraw %}
@@ -1,8 +1,8 @@
1
1
  ---
2
2
  layout: en
3
3
  title: "Sample slide: Rabbit"
4
- apply_data: false
5
4
  ---
5
+ {% raw %}
6
6
  <<<
7
7
  // To run with it without system install.
8
8
  // % ruby -I./lib bin/rabbit -f sample/rabbit-en.rd
@@ -389,3 +389,4 @@ End of source code.
389
389
  * Emphasize keybord shortcuts
390
390
  ** UI/text based source
391
391
  >>>
392
+ {% endraw %}
data/doc/en/usage.rd CHANGED
@@ -18,3 +18,7 @@ other pages.
18
18
  comments on the current slide.
19
19
  * ((<"rabwii/"/RabWii>)): A Wii Remote interface for Rabbit. You can
20
20
  control Rabbit by your Wii Remote.
21
+
22
+ Here are platform specific usages:
23
+
24
+ * ((<"usage/platform/os-x.rd"/OS X specific Rabbit usage>))
@@ -0,0 +1,13 @@
1
+ ---
2
+ layout: en
3
+ title: OS X specific usage
4
+ ---
5
+ == Summary
6
+
7
+ There are OS X specific Rabbit usage.
8
+
9
+ === TODO: title
10
+
11
+ TODO: summary
12
+
13
+ TODO: description
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
data/doc/ja/hiki.hiki CHANGED
@@ -1,8 +1,8 @@
1
1
  ---
2
2
  layout: ja
3
3
  title: Hiki記法
4
- apply_data: false
5
4
  ---
5
+ {% raw %}
6
6
  !パラグラフ
7
7
 
8
8
  連続した複数行は連結されて一つのパラグラフになります。
@@ -317,3 +317,4 @@ http://jp.rubyist.net/theme/clover/clover_h1.png
317
317
  パラメータ2
318
318
  パラメータ3
319
319
  )}}
320
+ {% endraw %}
@@ -23,11 +23,14 @@ Windows上でRabbitをインストール、利用する手順について説明
23
23
 
24
24
  ((<RubyInstall for Windowsのダウンロードページ(英語)
25
25
  |URL:http://rubyinstaller.org/downloads/>))からRuby 2.0.0 の
26
- インストーラをダウンロードします。Ruby 2.0.0-p247のインストー
26
+ インストーラをダウンロードします。Ruby 2.0.0-p451のインストー
27
27
  ラは以下のURLからダウンロードできます。
28
28
 
29
- : rubyinstaller-2.0.0-p247.exe
30
- ((<URL:http://dl.bintray.com/oneclick/rubyinstaller/rubyinstaller-2.0.0-p247.exe>))
29
+ : rubyinstaller-2.0.0-p451.exe
30
+ ((<URL:http://dl.bintray.com/oneclick/rubyinstaller/rubyinstaller-2.0.0-p451.exe>))
31
+
32
+ 注意:64bit版Windowsを使っている場合でも、32bit版のRubyをインストールしてください。
33
+ 現在のところ、RabbitはWindows上の64bit版Rubyでは動作しません。
31
34
 
32
35
  ==== Rabbitのインストール
33
36
 
data/doc/ja/news.rd CHANGED
@@ -3,6 +3,73 @@ layout: ja
3
3
  title: お知らせ
4
4
  apply_data: false
5
5
  ---
6
+ {% raw %}
7
+ == 2.1.3: 2014-08-03
8
+
9
+ 描画速度を改善したリリース。
10
+
11
+ === 改良
12
+
13
+ ==== rabbit
14
+
15
+ * UTF-8な入力ファイルのエンコーディング検出処理を改良。
16
+ [GitHub#34] [Colin Deanさんが報告]
17
+ * Markdown: 項目の内容がないリストをサポート。
18
+ [GitHub#37] [Colin Deanさんが報告]
19
+ * 縦方向の中央揃えを使っていない時の描画性能を改善。
20
+ [GitHub#35] [Colin Deanさんが報告]
21
+ * メモリー使用量の増加を抑えた。o
22
+ [GitHub#41] [Enrico Rivarolaさんが報告]
23
+
24
+ ==== テーマ
25
+
26
+ * default-preformatted: (({PreformattedText}))ではなく、
27
+ (({PreformattedBlock}))にテキストサイズを設定するように変更。
28
+ * tag: (({xx-small}))タグと(({xx-large}))タグに対応。
29
+ [GitHub#39] [Enrico Rivarolaさんがパッチ提供]
30
+ * syntax-highlighting: 浮動小数点リテラルに対応。
31
+
32
+ ==== ドキュメント
33
+
34
+ * Ruby Installerのバージョンを更新。 [Masafumi Yokoyamaさん]
35
+ * Homebrewでのインストール方法を更新。
36
+ [GitHub#30] [Bert Changさんがパッチ提供]
37
+ * 英語の翻訳と改良。
38
+ [GitHub#33] [Tomohiro Imaizumiさんがパッチ提供]
39
+ * Windowsでは64bit版Rubyに未対応であるという説明を追加。
40
+ [GitHub#43] [YUKI Hiroshiさんがパッチ提供]
41
+
42
+ === 修正
43
+
44
+ ==== rabbit
45
+
46
+ * rabbitコマンドの終了ステータスが常に0以外の問題を修正。
47
+ * ウィンドウシステムがない環境で起動するとエラーを出力して終了するのではなく、
48
+ クラッシュする問題を修正。
49
+ [shocker-ja:1189] [Kazuhiro NISHIYAMAさんが報告]
50
+ * 情報ウィンドウ: ウィンドウサイズが変更してもノートテキストの大きさ
51
+ が反映されない問題を修正。
52
+ [shocker-en:71][shocker-en:74] [Enrico Rivarolaさんが報告]
53
+ * 情報ウィンドウ: ノートに長い単語があると切れてしまう問題を修正。
54
+ [shocker-en:78] [Enrico Rivarolaさんが報告]
55
+ * 情報ウィンドウ: ノートのマークアップが反映されない問題を修正。
56
+ [GitHub#38] [Enrico Rivarolaさんがパッチ提供]
57
+ * 一時ファイルをすぐに削除しない問題を修正。
58
+ [GitHub#40] [Enrico Rivarolaさんがパッチ提供]
59
+
60
+ ==== rabbit-slide
61
+
62
+ * SlideShareに公開するときにタグが反映されない問題を修正。
63
+
64
+ === 感謝
65
+
66
+ * Masafumi Yokoyamaさん
67
+ * Kazuhiro NISHIYAMAさん
68
+ * Bert Changさん
69
+ * Enrico Rivarolaさん
70
+ * Colin Deanさん
71
+ * YUKI Hiroshiさん
72
+
6
73
  == 2.1.2: 2014-03-08
7
74
 
8
75
  2.1.1のバグフィックスリリース。
@@ -1772,4 +1839,4 @@ Debianオフィシャルパッケージになりました![佐々木さん]
1772
1839
  === 他のニュース
1773
1840
 
1774
1841
  * きむらさんがMac OS Xのパッケージ(DarwinPorts用)を作ってくれました.
1775
-
1842
+ {% endraw %}
data/doc/ja/rd.rd CHANGED
@@ -1,8 +1,8 @@
1
1
  ---
2
2
  layout: ja
3
3
  title: RD
4
- apply_data: false
5
4
  ---
5
+ {% raw %}
6
6
  == RDとは何か
7
7
 
8
8
  RDとはRuby版のPODです。つまりRubyスクリプトファイルの中に埋め込む事を意図して
@@ -487,3 +487,4 @@ Reference内では"|"や"/"は特殊文字なのでこれらを使いたい時
487
487
  表示用のテキストが無い場合には代わりにLabelに((<Inline>))を使えます。
488
488
  ((<((*Label*))>))
489
489
  ((<((*Label*))>))
490
+ {% endraw %}
@@ -1,8 +1,8 @@
1
1
  ---
2
2
  layout: ja
3
3
  title: "サンプルスライド: Rabbit"
4
- apply_data: false
5
4
  ---
5
+ {% raw %}
6
6
  <<<
7
7
  // To run with it without system install.
8
8
  // % ruby -I./lib bin/rabbit -f sample/rabbit.hiki
@@ -405,3 +405,4 @@ EOA
405
405
  * キーボード重視
406
406
  ** UI・テキストベースのソース
407
407
  >>>
408
+ {% endraw %}
data/lib/rabbit/canvas.rb CHANGED
@@ -553,11 +553,7 @@ module Rabbit
553
553
 
554
554
  def stop_auto_redraw_timer
555
555
  if @auto_redraw_timer
556
- if GLib::Source.respond_to?(:remove)
557
- GLib::Source.remove(@auto_redraw_timer)
558
- else
559
- Gtk.timeout_remove(@auto_redraw_timer)
560
- end
556
+ GLib::Source.remove(@auto_redraw_timer)
561
557
  @auto_redraw_timer = nil
562
558
  end
563
559
  end
@@ -1,4 +1,4 @@
1
- # Copyright (C) 2004-2013 Kouhei Sutou <kou@cozmixng.org>
1
+ # Copyright (C) 2004-2014 Kouhei Sutou <kou@cozmixng.org>
2
2
  #
3
3
  # This program is free software; you can redistribute it and/or modify
4
4
  # it under the terms of the GNU General Public License as published by
@@ -85,6 +85,7 @@ module Rabbit
85
85
  options.source_type = :auto
86
86
  options.full_screen = false
87
87
  options.index_mode = false
88
+ options.initial_slide = 0
88
89
  options.geometry = nil
89
90
  options.width = 800
90
91
  options.height = 600
@@ -214,6 +215,12 @@ module Rabbit
214
215
  options.index_mode = bool
215
216
  end
216
217
 
218
+ parser.on("--initial-slide=N", Integer,
219
+ _("Show the Nth slide. (zero-based)"),
220
+ "(#{options.initial_slide})") do |n|
221
+ options.initial_slide = n
222
+ end
223
+
217
224
 
218
225
  parser.category _("Size")
219
226
 
@@ -855,6 +862,7 @@ module Rabbit
855
862
  end
856
863
  apply_theme_if_need(frame)
857
864
  parse(frame, source, !Utils.windows?)
865
+ canvas.move_to_if_can(@options.initial_slide)
858
866
  canvas.activate("ToggleIndexMode") if @options.index_mode
859
867
 
860
868
  front = make_front(canvas)
@@ -865,7 +873,6 @@ module Rabbit
865
873
  Gtk.main
866
874
 
867
875
  true
868
- false
869
876
  end
870
877
 
871
878
  def do_server
@@ -77,8 +77,9 @@ module Rabbit
77
77
  end
78
78
 
79
79
  def draw_elements(canvas, x, y, w, h, simulation)
80
+ @centering_adjusted_height = 0
81
+
80
82
  args = [x, y, w, h]
81
- adjust_height = 0
82
83
  if do_vertical_centering?
83
84
  adjust_height = ((h - height - @padding_bottom) / 2.0).ceil
84
85
  if y + adjust_height > 0
@@ -86,9 +87,10 @@ module Rabbit
86
87
  else
87
88
  adjust_height = 0
88
89
  end
90
+ @centering_adjusted_height = adjust_height
91
+ compile_elements(canvas, *args)
89
92
  end
90
- @centering_adjusted_height = adjust_height
91
- compile_elements(canvas, *args)
93
+
92
94
  base_x, base_w = x, w
93
95
  @elements.each do |element|
94
96
  x, y, w, h = element.draw(simulation)
@@ -34,6 +34,7 @@ module Rabbit
34
34
  compile(canvas, 0, 0, canvas.width, canvas.height)
35
35
  super(simulation)
36
36
  end
37
+ run_gc unless simulation
37
38
  end
38
39
  end
39
40
 
@@ -93,6 +94,16 @@ module Rabbit
93
94
  end
94
95
  procs
95
96
  end
97
+
98
+ private
99
+ def run_gc
100
+ lazy_gc_timout_msec = 1000
101
+ @compressed_gc_task_id ||= GLib::Timeout.add(lazy_gc_timout_msec) do
102
+ GC.start
103
+ @compressed_gc_task_id = nil
104
+ GLib::Source::REMOVE
105
+ end
106
+ end
96
107
  end
97
108
  end
98
109
  end
data/lib/rabbit/gtk.rb ADDED
@@ -0,0 +1,25 @@
1
+ # Copyright (C) 2014 Kouhei Sutou <kou@cozmixng.org>
2
+ #
3
+ # This program is free software; you can redistribute it and/or modify
4
+ # it under the terms of the GNU General Public License as published by
5
+ # the Free Software Foundation; either version 2 of the License, or
6
+ # (at your option) any later version.
7
+ #
8
+ # This program is distributed in the hope that it will be useful,
9
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
+ # GNU General Public License for more details.
12
+ #
13
+ # You should have received a copy of the GNU General Public License along
14
+ # with this program; if not, write to the Free Software Foundation, Inc.,
15
+ # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
16
+
17
+ # TODO: Upgrade to gtk3
18
+ require "gtk2"
19
+
20
+ module Gdk
21
+ class Event
22
+ STOP = true unless const_defined?(:STOP)
23
+ PROPAGATE = false unless const_defined?(:PROPAGATE)
24
+ end
25
+ end