rabbit 2.1.2 → 2.1.3

Sign up to get free protection for your applications and to get access to all the features.
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