rabbit 0.9.2 → 0.9.3
Sign up to get free protection for your applications and to get access to all the features.
- data/Gemfile +16 -0
- data/README +1 -0
- data/Rakefile +161 -53
- data/TODO +2 -0
- data/bin/rabbit +78 -34
- data/bin/rabbit-command +16 -3
- data/bin/rabbiter +74 -73
- data/bin/rabrick +17 -4
- data/bin/rabwii +77 -0
- data/data/rabbit/image/dark-gradation-images/background-gradation.png +0 -0
- data/data/rabbit/image/dark-gradation-images/dark-gradation-images.rb +2 -0
- data/data/rabbit/image/dark-gradation-images/property.rb +4 -0
- data/doc/_config.yml +2 -0
- data/doc/_layouts/en.html +37 -0
- data/doc/_layouts/ja.html +37 -0
- data/doc/_layouts/skeleton.html +91 -0
- data/doc/_plugins/converters/hiki.rb +27 -0
- data/doc/_plugins/converters/rd.rb +73 -0
- data/doc/_site/css/jquery-ui/themes/ui-lightness.css +573 -0
- data/doc/_site/css/rabbit.css +247 -0
- data/doc/_site/en/development.html +140 -0
- data/doc/_site/en/faq.html +117 -0
- data/doc/_site/en/hiki.html +420 -0
- data/doc/_site/en/how-to-make/hiki.html +113 -0
- data/doc/_site/en/how-to-make/index.html +135 -0
- data/doc/_site/en/how-to-make/pdf.html +111 -0
- data/doc/_site/en/how-to-make/rd.html +151 -0
- data/doc/_site/en/how-to-make/theme.html +249 -0
- data/doc/_site/en/index.html +343 -0
- data/doc/_site/en/install/homebrew.html +279 -0
- data/doc/_site/en/install/index.html +144 -0
- data/doc/_site/en/install/macports.html +158 -0
- data/doc/_site/en/install/windows.html +200 -0
- data/doc/_site/en/news.html +928 -0
- data/doc/_site/en/rd.html +555 -0
- data/doc/_site/en/sample/hiki/rabbit.html +380 -0
- data/doc/_site/en/sample/index.html +117 -0
- data/doc/_site/en/sample/rd/rabbit.html +572 -0
- data/doc/_site/en/slides.html +113 -0
- data/doc/_site/en/usage.html +445 -0
- data/doc/_site/en/users.html +127 -0
- data/doc/_site/favicon.ico +0 -0
- data/doc/_site/favicon.png +0 -0
- data/doc/_site/images/background-sample.svg +290 -0
- data/doc/_site/images/background.png +0 -0
- data/doc/_site/images/background.svg +131 -0
- data/doc/_site/images/hare-and-tortoise.png +0 -0
- data/doc/_site/images/hare-and-tortoise.svg +541 -0
- data/doc/_site/images/jp.png +0 -0
- data/{sample/momo/usako/usako_psd_100.png → doc/_site/images/lavie-icon.png} +0 -0
- data/doc/_site/images/lavie.png +0 -0
- data/doc/_site/images/screenshots/en/blue-circle-raw.png +0 -0
- data/doc/_site/images/screenshots/en/blue-circle.png +0 -0
- data/doc/_site/images/screenshots/en/clear-blue-raw.png +0 -0
- data/doc/_site/images/screenshots/en/clear-blue.png +0 -0
- data/doc/_site/images/screenshots/en/cozmixng-raw.png +0 -0
- data/doc/_site/images/screenshots/en/cozmixng.png +0 -0
- data/doc/_site/images/screenshots/en/dark-gradation-raw.png +0 -0
- data/doc/_site/images/screenshots/en/dark-gradation.png +0 -0
- data/doc/_site/images/screenshots/en/day-white-raw.png +0 -0
- data/doc/_site/images/screenshots/en/day-white.png +0 -0
- data/doc/_site/images/screenshots/en/debian-raw.png +0 -0
- data/doc/_site/images/screenshots/en/debian.png +0 -0
- data/doc/_site/images/screenshots/en/green-circle-raw.png +0 -0
- data/doc/_site/images/screenshots/en/green-circle.png +0 -0
- data/doc/_site/images/screenshots/en/night-black-raw.png +0 -0
- data/doc/_site/images/screenshots/en/night-black.png +0 -0
- data/doc/_site/images/screenshots/en/rabbit-raw.png +0 -0
- data/doc/_site/images/screenshots/en/rabbit.png +0 -0
- data/doc/_site/images/screenshots/en/ranguba-raw.png +0 -0
- data/doc/_site/images/screenshots/en/ranguba.png +0 -0
- data/doc/_site/images/screenshots/en/red-frame-raw.png +0 -0
- data/doc/_site/images/screenshots/en/red-frame.png +0 -0
- data/doc/_site/images/screenshots/en/ruby-gnome2-raw.png +0 -0
- data/doc/_site/images/screenshots/en/ruby-gnome2.png +0 -0
- data/doc/_site/images/screenshots/ja/blue-circle-raw.png +0 -0
- data/doc/_site/images/screenshots/ja/blue-circle.png +0 -0
- data/doc/_site/images/screenshots/ja/clear-blue-raw.png +0 -0
- data/doc/_site/images/screenshots/ja/clear-blue.png +0 -0
- data/doc/_site/images/screenshots/ja/cozmixng-raw.png +0 -0
- data/doc/_site/images/screenshots/ja/cozmixng.png +0 -0
- data/doc/_site/images/screenshots/ja/dark-gradation-raw.png +0 -0
- data/doc/_site/images/screenshots/ja/dark-gradation.png +0 -0
- data/doc/_site/images/screenshots/ja/day-white-raw.png +0 -0
- data/doc/_site/images/screenshots/ja/day-white.png +0 -0
- data/doc/_site/images/screenshots/ja/debian-raw.png +0 -0
- data/doc/_site/images/screenshots/ja/debian.png +0 -0
- data/doc/_site/images/screenshots/ja/green-circle-raw.png +0 -0
- data/doc/_site/images/screenshots/ja/green-circle.png +0 -0
- data/doc/_site/images/screenshots/ja/night-black-raw.png +0 -0
- data/doc/_site/images/screenshots/ja/night-black.png +0 -0
- data/doc/_site/images/screenshots/ja/rabbit-raw.png +0 -0
- data/doc/_site/images/screenshots/ja/rabbit.png +0 -0
- data/doc/_site/images/screenshots/ja/ranguba-raw.png +0 -0
- data/doc/_site/images/screenshots/ja/ranguba.png +0 -0
- data/doc/_site/images/screenshots/ja/red-frame-raw.png +0 -0
- data/doc/_site/images/screenshots/ja/red-frame.png +0 -0
- data/doc/_site/images/screenshots/ja/ruby-gnome2-raw.png +0 -0
- data/doc/_site/images/screenshots/ja/ruby-gnome2.png +0 -0
- data/doc/_site/images/us.png +0 -0
- data/doc/_site/index.html.en +122 -0
- data/doc/_site/index.html.ja +122 -0
- data/doc/_site/ja/about.html +120 -0
- data/doc/_site/ja/development.html +141 -0
- data/doc/_site/ja/faq.html +232 -0
- data/doc/_site/ja/hiki.html +416 -0
- data/doc/_site/ja/how-to-make/hiki.html +113 -0
- data/doc/_site/ja/how-to-make/index.html +135 -0
- data/doc/_site/ja/how-to-make/pdf.html +112 -0
- data/doc/_site/ja/how-to-make/rd.html +161 -0
- data/doc/_site/ja/how-to-make/theme.html +254 -0
- data/doc/_site/ja/index.html +351 -0
- data/doc/_site/ja/install/homebrew.html +279 -0
- data/doc/_site/ja/install/index.html +146 -0
- data/doc/_site/ja/install/macports.html +177 -0
- data/doc/_site/ja/install/windows.html +200 -0
- data/doc/_site/ja/news.html +926 -0
- data/doc/_site/ja/rd.html +565 -0
- data/doc/_site/ja/sample/hiki/rabbit.html +390 -0
- data/doc/_site/ja/sample/index.html +117 -0
- data/doc/_site/ja/sample/rd/rabbit.html +580 -0
- data/doc/_site/ja/slides.html +142 -0
- data/doc/_site/ja/usage.html +458 -0
- data/doc/_site/ja/users.html +331 -0
- data/doc/_site/javascripts/jquery-ui.js +11544 -0
- data/doc/_site/javascripts/jquery.js +7179 -0
- data/doc/_site/screenshot.en.rab +10 -0
- data/doc/_site/screenshot.ja.rab +10 -0
- data/doc/css/jquery-ui/themes/ui-lightness.css +573 -0
- data/doc/css/rabbit.css +247 -0
- data/doc/en/development.rd +50 -0
- data/doc/en/faq.rd +18 -0
- data/doc/en/hiki.hiki +325 -0
- data/doc/en/how-to-make/hiki.hiki +9 -0
- data/doc/en/how-to-make/index.rd +25 -0
- data/doc/en/how-to-make/pdf.rd +7 -0
- data/doc/en/how-to-make/rd.rd +66 -0
- data/doc/en/how-to-make/theme.rd +135 -0
- data/doc/en/index.rd +276 -0
- data/doc/en/install/homebrew.rd +196 -0
- data/doc/en/install/index.rd +63 -0
- data/doc/en/install/macports.rd +77 -0
- data/doc/en/install/windows.rd +103 -0
- data/{NEWS.en → doc/en/news.rd} +78 -3
- data/doc/en/rd.rd +481 -0
- data/doc/en/sample/hiki/rabbit.hiki +389 -0
- data/doc/en/sample/index.rd +11 -0
- data/doc/en/sample/rd/rabbit.rd +467 -0
- data/doc/en/slides.rd +7 -0
- data/doc/en/usage.rd +365 -0
- data/doc/en/users.rd +29 -0
- data/doc/favicon.ico +0 -0
- data/doc/favicon.png +0 -0
- data/doc/images/background-sample.svg +290 -0
- data/doc/images/background.png +0 -0
- data/doc/images/background.svg +131 -0
- data/doc/images/hare-and-tortoise.png +0 -0
- data/doc/images/hare-and-tortoise.svg +541 -0
- data/doc/images/jp.png +0 -0
- data/doc/images/lavie-icon.png +0 -0
- data/doc/images/lavie.png +0 -0
- data/doc/images/screenshots/en/blue-circle-raw.png +0 -0
- data/doc/images/screenshots/en/blue-circle.png +0 -0
- data/doc/images/screenshots/en/clear-blue-raw.png +0 -0
- data/doc/images/screenshots/en/clear-blue.png +0 -0
- data/doc/images/screenshots/en/cozmixng-raw.png +0 -0
- data/doc/images/screenshots/en/cozmixng.png +0 -0
- data/doc/images/screenshots/en/dark-gradation-raw.png +0 -0
- data/doc/images/screenshots/en/dark-gradation.png +0 -0
- data/doc/images/screenshots/en/day-white-raw.png +0 -0
- data/doc/images/screenshots/en/day-white.png +0 -0
- data/doc/images/screenshots/en/debian-raw.png +0 -0
- data/doc/images/screenshots/en/debian.png +0 -0
- data/doc/images/screenshots/en/green-circle-raw.png +0 -0
- data/doc/images/screenshots/en/green-circle.png +0 -0
- data/doc/images/screenshots/en/night-black-raw.png +0 -0
- data/doc/images/screenshots/en/night-black.png +0 -0
- data/doc/images/screenshots/en/rabbit-raw.png +0 -0
- data/doc/images/screenshots/en/rabbit.png +0 -0
- data/doc/images/screenshots/en/ranguba-raw.png +0 -0
- data/doc/images/screenshots/en/ranguba.png +0 -0
- data/doc/images/screenshots/en/red-frame-raw.png +0 -0
- data/doc/images/screenshots/en/red-frame.png +0 -0
- data/doc/images/screenshots/en/ruby-gnome2-raw.png +0 -0
- data/doc/images/screenshots/en/ruby-gnome2.png +0 -0
- data/doc/images/screenshots/ja/blue-circle-raw.png +0 -0
- data/doc/images/screenshots/ja/blue-circle.png +0 -0
- data/doc/images/screenshots/ja/clear-blue-raw.png +0 -0
- data/doc/images/screenshots/ja/clear-blue.png +0 -0
- data/doc/images/screenshots/ja/cozmixng-raw.png +0 -0
- data/doc/images/screenshots/ja/cozmixng.png +0 -0
- data/doc/images/screenshots/ja/dark-gradation-raw.png +0 -0
- data/doc/images/screenshots/ja/dark-gradation.png +0 -0
- data/doc/images/screenshots/ja/day-white-raw.png +0 -0
- data/doc/images/screenshots/ja/day-white.png +0 -0
- data/doc/images/screenshots/ja/debian-raw.png +0 -0
- data/doc/images/screenshots/ja/debian.png +0 -0
- data/doc/images/screenshots/ja/green-circle-raw.png +0 -0
- data/doc/images/screenshots/ja/green-circle.png +0 -0
- data/doc/images/screenshots/ja/night-black-raw.png +0 -0
- data/doc/images/screenshots/ja/night-black.png +0 -0
- data/doc/images/screenshots/ja/rabbit-raw.png +0 -0
- data/doc/images/screenshots/ja/rabbit.png +0 -0
- data/doc/images/screenshots/ja/ranguba-raw.png +0 -0
- data/doc/images/screenshots/ja/ranguba.png +0 -0
- data/doc/images/screenshots/ja/red-frame-raw.png +0 -0
- data/doc/images/screenshots/ja/red-frame.png +0 -0
- data/doc/images/screenshots/ja/ruby-gnome2-raw.png +0 -0
- data/doc/images/screenshots/ja/ruby-gnome2.png +0 -0
- data/doc/images/us.png +0 -0
- data/doc/index.html.en +48 -0
- data/doc/index.html.ja +48 -0
- data/doc/ja/about.rd +21 -0
- data/doc/ja/development.rd +49 -0
- data/doc/ja/faq.rd +177 -0
- data/doc/ja/hiki.hiki +319 -0
- data/doc/ja/how-to-make/hiki.hiki +9 -0
- data/doc/ja/how-to-make/index.rd +25 -0
- data/doc/ja/how-to-make/pdf.rd +8 -0
- data/doc/ja/how-to-make/rd.rd +83 -0
- data/doc/ja/how-to-make/theme.rd +142 -0
- data/doc/ja/index.rd +283 -0
- data/doc/ja/install/homebrew.rd +196 -0
- data/doc/ja/install/index.rd +65 -0
- data/doc/ja/install/macports.rd +105 -0
- data/doc/ja/install/windows.rd +100 -0
- data/{NEWS.ja → doc/ja/news.rd} +84 -3
- data/doc/ja/rd.rd +489 -0
- data/doc/ja/sample/hiki/rabbit.hiki +405 -0
- data/doc/ja/sample/index.rd +11 -0
- data/doc/ja/sample/rd/rabbit.rd +475 -0
- data/doc/ja/slides.rd +29 -0
- data/doc/ja/usage.rd +380 -0
- data/doc/ja/users.rd +173 -0
- data/doc/javascripts/jquery-ui.js +11544 -0
- data/doc/javascripts/jquery.js +7179 -0
- data/doc/screenshot.en.rab +10 -0
- data/doc/screenshot.ja.rab +10 -0
- data/lib/rabbit/action/toggle.rb +0 -14
- data/lib/rabbit/canvas.rb +42 -46
- data/lib/rabbit/console.rb +9 -1
- data/lib/rabbit/front.rb +1 -1
- data/lib/rabbit/keys.rb +0 -8
- data/lib/rabbit/logger/gui.rb +3 -5
- data/lib/rabbit/parser/pdf.rb +1 -1
- data/lib/rabbit/parser/wiki/output.rb +17 -1
- data/lib/rabbit/rabbit.rb +12 -1
- data/lib/rabbit/renderer/base.rb +0 -25
- data/lib/rabbit/renderer/display/clutter-embed.rb +5 -69
- data/lib/rabbit/renderer/display/drawing-area.rb +0 -2
- data/lib/rabbit/renderer/display/key-handler.rb +0 -8
- data/lib/rabbit/source/base.rb +4 -0
- data/lib/rabbit/theme/background-image-toolkit/background-image-toolkit.rb +4 -8
- data/lib/rabbit/theme/clutter-comment/clutter-comment.rb +76 -0
- data/lib/rabbit/theme/clutter-comment/property.rb +3 -0
- data/lib/rabbit/theme/color-circle/color-circle.rb +3 -0
- data/lib/rabbit/theme/dark-gradation/dark-gradation.rb +187 -0
- data/lib/rabbit/theme/dark-gradation/property.rb +3 -0
- data/lib/rabbit/theme/debian/debian.rb +125 -145
- data/lib/rabbit/theme/default/default.rb +6 -0
- data/lib/rabbit/theme/footer-comment/footer-comment.rb +46 -0
- data/lib/rabbit/theme/footer-comment/property.rb +3 -0
- data/lib/rabbit/theme/image/image.rb +3 -2
- data/lib/rabbit/theme/per-slide-background-color/property.rb +1 -1
- data/lib/rabbit/theme/slide-number/slide-number.rb +9 -3
- data/lib/rabbit/theme/stream-comment/property.rb +3 -0
- data/lib/rabbit/theme/stream-comment/stream-comment.rb +66 -0
- data/lib/rabbit/theme/tag/property.rb +1 -1
- data/lib/rabbit/theme/title-background-image/title-background-image.rb +6 -5
- data/lib/rabbit/theme/twitter-comment/property.rb +4 -0
- data/lib/rabbit/theme/twitter-comment/twitter-comment.rb +15 -0
- data/lib/rabbit/twitter.rb +216 -0
- data/lib/rabbit/utils.rb +26 -0
- data/misc/emacs/README.ja +1 -1
- data/misc/emacs/rabbit-mode.el +1 -1
- data/po/en/rabbit.po +429 -267
- data/po/fr/rabbit.po +440 -268
- data/po/ja/rabbit.po +455 -270
- data/po/rabbit.pot +2567 -0
- data/sample/rabbit-en.hiki +384 -0
- data/sample/rabbit-en.rd +1 -1
- data/sample/rabbit-implementation.rd +1 -1
- data/sample/rabbit.hiki +85 -13
- data/sample/rabbit.rd +1 -1
- data/sample/theme-bench-en.hiki +100 -0
- data/sample/theme-bench.hiki +101 -0
- metadata +413 -118
- data/README.en +0 -850
- data/README.ja +0 -885
- data/bin/rabbit.bat +0 -8
- data/data/locale/en/LC_MESSAGES/rabbit.mo +0 -0
- data/data/locale/fr/LC_MESSAGES/rabbit.mo +0 -0
- data/data/locale/ja/LC_MESSAGES/rabbit.mo +0 -0
- data/lib/rabbit/comment-canvas.rb +0 -21
- data/lib/rabbit/comment/log.rb +0 -74
- data/lib/rabbit/renderer/display/comment-drawing-area.rb +0 -175
- data/lib/rabbit/renderer/display/comment.rb +0 -194
- data/lib/rabbit/theme/comment/comment.rb +0 -5
- data/lib/rabbit/theme/comment/property.rb +0 -3
- data/lib/rt/rt2html-lib.rb +0 -157
- data/lib/rt/rtparser.rb +0 -226
- data/lib/rt/rtvisitor.rb +0 -68
- data/lib/rwiki/soap/common.rb +0 -5
- data/lib/rwiki/soap/driver.rb +0 -43
- data/lib/rwiki/soap/servant.rb +0 -78
- data/sample/asahina/alice.png +0 -0
- data/sample/asahina/yukiusa.png +0 -0
- data/sample/momo/banner/bn1.png +0 -0
- data/sample/momo/banner/bn2.png +0 -0
- data/sample/momo/banner/bn_psd.psd +0 -0
- data/sample/momo/banner/bn_psd2.psd +0 -0
- data/sample/momo/tailavi/tailavi-ruby.png +0 -0
- data/sample/momo/tailavi/tailavi-ruby.psd +0 -0
- data/sample/momo/tailavi/tailavi-taiyaki.png +0 -0
- data/sample/momo/tailavi/tailavi-taiyaki.psd +0 -0
- data/sample/momo/tailavi/tailavi-yokubari.png +0 -0
- data/sample/momo/tailavi/tailavi-yokubari.psd +0 -0
- data/sample/momo/tailavi/taiyaki.png +0 -0
- data/sample/momo/tailavi/taiyaki.psd +0 -0
- data/sample/momo/usako/blue_dot.png +0 -0
- data/sample/momo/usako/green_dot.png +0 -0
- data/sample/momo/usako/rabbit.png +0 -0
- data/sample/momo/usako/rabbit_mimi.png +0 -0
- data/sample/momo/usako/rabbit_mimi2.png +0 -0
- data/sample/momo/usako/red_dot.png +0 -0
- data/sample/momo/usako/ruby.png +0 -0
- data/sample/momo/usako/ruby_new.png +0 -0
- data/sample/momo/usako/usa1.png +0 -0
- data/sample/momo/usako/usa2.png +0 -0
- data/sample/momo/usako/usa3.png +0 -0
- data/sample/momo/usako/usako_psd.psd +0 -0
- data/sample/momo/usako/usako_psd_200.png +0 -0
- data/sample/rabbit-balloon.eps +0 -233
- data/sample/sode/kame-color.riff +0 -0
- data/sample/sode/kame.riff +0 -0
- data/sample/usatti/kame-taro.png +0 -0
- data/sample/usatti/rabbit-pink-logo.png +0 -0
- data/sample/usatti/rabbit-pink-logo2.png +0 -0
- data/sample/usatti/ruby-pink-circle-logo.png +0 -0
- data/sample/usatti/ruby-pink-circle.png +0 -0
- data/sample/usatti/ruby-pink-polygon-logo.png +0 -0
- data/sample/usatti/ruby-pink-polygon.png +0 -0
- data/sample/usatti/tanu-kitaro.png +0 -0
- data/sample/usatti/usa-taro.png +0 -0
- data/sample/usatti/yukidaru-taro.png +0 -0
data/Gemfile
ADDED
data/README
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
See doc/ or http://rabbit-shockers.org/.
|
data/Rakefile
CHANGED
@@ -2,73 +2,65 @@
|
|
2
2
|
|
3
3
|
require 'find'
|
4
4
|
require 'rubygems'
|
5
|
-
require '
|
5
|
+
require 'rubygems/package_task'
|
6
|
+
require 'jeweler'
|
6
7
|
|
7
8
|
base_dir = File.expand_path(File.dirname(__FILE__))
|
8
9
|
$LOAD_PATH.unshift(File.join(base_dir, 'lib'))
|
9
10
|
require 'rabbit/rabbit'
|
10
11
|
|
11
|
-
|
12
|
-
x.gsub(/\A#{Regexp.escape(base_dir + File::SEPARATOR)}/, '')
|
13
|
-
end
|
12
|
+
rsync_base_path = "rabbit@rabbit-shockers.org:public_html/"
|
14
13
|
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
if components.size == 1 and !File.directory?(target)
|
32
|
-
next unless base_dir_included_components.include?(components[0])
|
33
|
-
end
|
34
|
-
unless white_list_paths.include?(target)
|
35
|
-
Find.prune if (excluded_components - components) != excluded_components
|
36
|
-
next if /~\z/ =~ target
|
37
|
-
next if excluded_suffixes.include?(File.extname(target))
|
14
|
+
ENV["VERSION"] ||= Rabbit::VERSION
|
15
|
+
version = ENV["VERSION"].dup
|
16
|
+
spec = nil
|
17
|
+
Jeweler::Tasks.new do |_spec|
|
18
|
+
spec = _spec
|
19
|
+
spec.name = "rabbit"
|
20
|
+
spec.version = version.dup
|
21
|
+
spec.rubyforge_project = "rabbit"
|
22
|
+
spec.homepage = "http://rabbit-shockers.org/"
|
23
|
+
spec.authors = ["Kouhei Sutou"]
|
24
|
+
spec.email = ["kou@cozmixng.org"]
|
25
|
+
spec.summary = 'Rabbit is an RD-document-based presentation application.'
|
26
|
+
spec.description = spec.summary # FIXME
|
27
|
+
spec.license = "GPLv2+"
|
28
|
+
Bundler.load.dependencies_for(:default).each do |dependency|
|
29
|
+
spec.add_runtime_dependency(dependency.name, dependency.requirement.to_s)
|
38
30
|
end
|
39
|
-
|
31
|
+
|
32
|
+
spec.files = FileList["{lib,data,entities,bin,sample,misc,doc,po}/**/*",
|
33
|
+
"*.rb",
|
34
|
+
"Rakefile",
|
35
|
+
"COPYING",
|
36
|
+
"GPL",
|
37
|
+
"README",
|
38
|
+
"Gemfile"]
|
39
|
+
spec.test_files = FileList["test/**/*.rb"]
|
40
|
+
spec.executables -= ["rabbit.bat"]
|
40
41
|
end
|
41
42
|
|
42
|
-
|
43
|
-
|
43
|
+
Jeweler::RubygemsDotOrgTasks.new
|
44
|
+
|
45
|
+
def force_array(enumerable)
|
46
|
+
array = []
|
47
|
+
enumerable.each do |element|
|
48
|
+
array << element
|
49
|
+
end
|
50
|
+
array
|
44
51
|
end
|
45
|
-
|
46
|
-
|
52
|
+
|
53
|
+
def spec.files
|
54
|
+
@files = force_array(super)
|
47
55
|
end
|
48
56
|
|
49
|
-
|
50
|
-
|
51
|
-
self.version = Rabbit::VERSION
|
52
|
-
self.rubyforge_name = 'rabbit'
|
53
|
-
self.author = ['Kouhei Sutou']
|
54
|
-
self.email = ['kou@cozmixng.org']
|
55
|
-
self.summary = 'Rabbit is an RD-document-based presentation application.'
|
56
|
-
self.url = 'http://www.cozmixng.org/~rwiki/?cmd=view;name=Rabbit'
|
57
|
-
self.test_globs = ['test/test_*.rb']
|
58
|
-
self.changes = File.read('NEWS.en').split(/^== /)[1].gsub(/^==/, '').strip
|
59
|
-
self.extra_deps = [
|
60
|
-
['gtk2'],
|
61
|
-
['gdk_pixbuf2'],
|
62
|
-
['rsvg2'],
|
63
|
-
['poppler'],
|
64
|
-
['hikidoc'],
|
65
|
-
# ['gettext'],
|
66
|
-
]
|
67
|
-
self.description = self.summary # FIXME
|
68
|
-
self.need_tar = false
|
57
|
+
def spec.extra_rdoc_files
|
58
|
+
@extra_rdoc_files = force_array(super)
|
69
59
|
end
|
70
60
|
|
71
|
-
|
61
|
+
Gem::PackageTask.new(spec) do |package|
|
62
|
+
package.need_tar_gz = true
|
63
|
+
end
|
72
64
|
|
73
65
|
rule '.png' => ['.svg'] do |t|
|
74
66
|
sh("inkscape", "--export-png", t.name, t.source)
|
@@ -83,3 +75,119 @@ end
|
|
83
75
|
sh("inkscape", "--export-png", t.name, *t.prerequisites)
|
84
76
|
end
|
85
77
|
end
|
78
|
+
|
79
|
+
namespace :entity do
|
80
|
+
desc "Update entities"
|
81
|
+
task :update do
|
82
|
+
sh("entities/ent2rb.rb entities/*.ent")
|
83
|
+
end
|
84
|
+
end
|
85
|
+
|
86
|
+
namespace :html do
|
87
|
+
screenshots = []
|
88
|
+
|
89
|
+
languages = ["ja", "en"]
|
90
|
+
languages.each do |lang|
|
91
|
+
screenshots_dir = "doc/images/screenshots/#{lang}"
|
92
|
+
directory screenshots_dir
|
93
|
+
|
94
|
+
screenshot_rab = "doc/screenshot.#{lang}.rab"
|
95
|
+
|
96
|
+
screenshot_themes = ["blue-circle", "clear-blue", "cozmixng",
|
97
|
+
"dark-gradation", "day-white",
|
98
|
+
"debian", "green-circle", "night-black",
|
99
|
+
"rabbit", "ranguba", "red-frame", "ruby-gnome2"]
|
100
|
+
screenshot_themes.each do |theme|
|
101
|
+
screenshot_base_name = "#{screenshots_dir}/#{theme}"
|
102
|
+
screenshot_raw = "#{screenshot_base_name}-raw.png"
|
103
|
+
screenshot = "#{screenshot_base_name}.png"
|
104
|
+
screenshots << screenshot
|
105
|
+
|
106
|
+
file screenshot_raw => [screenshots_dir, screenshot_rab, __FILE__] do
|
107
|
+
ruby("-I", "lib", "bin/rabbit",
|
108
|
+
"--save-as-image",
|
109
|
+
"--theme", theme,
|
110
|
+
"--size", "200,150",
|
111
|
+
"--saved-image-base-name", screenshot_base_name,
|
112
|
+
screenshot_rab)
|
113
|
+
mv("#{screenshot_base_name}-0.png", screenshot_raw)
|
114
|
+
end
|
115
|
+
|
116
|
+
file screenshot => screenshot_raw do
|
117
|
+
true_value = 1
|
118
|
+
false_value = 0
|
119
|
+
run_mode = false_value
|
120
|
+
offset_x = 8
|
121
|
+
offset_y = 8
|
122
|
+
blur_radius = 15.0
|
123
|
+
black = "'(122 122 122)"
|
124
|
+
shadow_color = black
|
125
|
+
opacity = 80.0
|
126
|
+
allow_resizing = true_value
|
127
|
+
drop_shadow = <<-EOC
|
128
|
+
(let* ((image (car (gimp-file-load RUN-NONINTERACTIVE
|
129
|
+
"#{screenshot_raw}"
|
130
|
+
"#{screenshot_raw}")))
|
131
|
+
(picture-layer (car (gimp-image-get-active-drawable image))))
|
132
|
+
(script-fu-drop-shadow image picture-layer
|
133
|
+
#{offset_x} #{offset_y}
|
134
|
+
#{blur_radius} #{shadow_color}
|
135
|
+
#{opacity} #{allow_resizing})
|
136
|
+
(let ((layer (car (gimp-image-merge-visible-layers image CLIP-TO-IMAGE))))
|
137
|
+
(file-png-save-defaults RUN-NONINTERACTIVE image layer
|
138
|
+
"#{screenshot}"
|
139
|
+
"#{screenshot}"))
|
140
|
+
(gimp-image-delete image))
|
141
|
+
EOC
|
142
|
+
sh("gimp",
|
143
|
+
"-i",
|
144
|
+
"-b", drop_shadow,
|
145
|
+
"-b", "(gimp-quit TRUE)")
|
146
|
+
end
|
147
|
+
end
|
148
|
+
end
|
149
|
+
|
150
|
+
desc "generate HTML and needed files."
|
151
|
+
task :generate => screenshots do
|
152
|
+
Dir.chdir("doc") do
|
153
|
+
sh("ruby", "-S", "jekyll")
|
154
|
+
end
|
155
|
+
end
|
156
|
+
|
157
|
+
desc "publish HTML."
|
158
|
+
task :publish => :generate do
|
159
|
+
sh("rsync", "-avz", "--delete",
|
160
|
+
"--exclude", "*.svn",
|
161
|
+
"--exclude", "*-raw.png",
|
162
|
+
"--exclude", "*.svg",
|
163
|
+
"--exclude", "*.rab",
|
164
|
+
"--exclude", "/download/",
|
165
|
+
"doc/_site/",
|
166
|
+
rsync_base_path)
|
167
|
+
end
|
168
|
+
end
|
169
|
+
|
170
|
+
desc "Tag the current revision."
|
171
|
+
task :tag do
|
172
|
+
sh("git tag -a #{version} -m 'release #{version}!!!'")
|
173
|
+
end
|
174
|
+
|
175
|
+
namespace :package do
|
176
|
+
desc "Upload tar.gz."
|
177
|
+
task :upload => :package do
|
178
|
+
htaccess = ".htaccess"
|
179
|
+
rabbit_tar_gz = "rabbit.tar.gz"
|
180
|
+
current_rabbit_tar_gz = "rabbit-#{version}.tar.gz"
|
181
|
+
File.open(htaccess, "w") do |file|
|
182
|
+
file.puts("Options +Indexes +FollowSymlinks")
|
183
|
+
end
|
184
|
+
ln_s(current_rabbit_tar_gz, rabbit_tar_gz)
|
185
|
+
sh("rsync", "-avz",
|
186
|
+
htaccess,
|
187
|
+
rabbit_tar_gz,
|
188
|
+
"pkg/#{current_rabbit_tar_gz}",
|
189
|
+
"#{rsync_base_path}download/")
|
190
|
+
rm(rabbit_tar_gz)
|
191
|
+
rm(htaccess)
|
192
|
+
end
|
193
|
+
end
|
data/TODO
CHANGED
data/bin/rabbit
CHANGED
@@ -14,7 +14,7 @@ def parse_args(args=ARGV, logger=nil)
|
|
14
14
|
options.theme = "default"
|
15
15
|
options.theme_specified = false
|
16
16
|
options.base = nil
|
17
|
-
options.source_type =
|
17
|
+
options.source_type = :auto
|
18
18
|
options.full_screen = false
|
19
19
|
options.index_mode = false
|
20
20
|
options.geometry = nil
|
@@ -42,7 +42,7 @@ def parse_args(args=ARGV, logger=nil)
|
|
42
42
|
options.page_margin_top = nil
|
43
43
|
options.page_margin_bottom = nil
|
44
44
|
options.use_druby = true
|
45
|
-
options.druby_uri = "druby
|
45
|
+
options.druby_uri = "druby://127.0.0.1:10101"
|
46
46
|
options.output_druby_uri = false
|
47
47
|
options.use_soap = false
|
48
48
|
options.soap_host = "0.0.0.0"
|
@@ -51,10 +51,8 @@ def parse_args(args=ARGV, logger=nil)
|
|
51
51
|
options.xmlrpc_host = "0.0.0.0"
|
52
52
|
options.xmlrpc_port = 10104
|
53
53
|
options.server = false
|
54
|
-
options.default_public_level = "
|
54
|
+
options.default_public_level = "all"
|
55
55
|
options.public_level = nil
|
56
|
-
options.comment_source = nil
|
57
|
-
options.comment_encoding = nil
|
58
56
|
options.migemo_dictionary_search_path = [
|
59
57
|
File.join(Config::CONFIG["prefix"], "share"),
|
60
58
|
File.join("", "usr", "local", "share"),
|
@@ -73,9 +71,9 @@ def parse_args(args=ARGV, logger=nil)
|
|
73
71
|
|
74
72
|
opts.on("-I", "--include=PATH",
|
75
73
|
_("Add [PATH] to load path.")) do |path|
|
76
|
-
$LOAD_PATH.unshift(path)
|
74
|
+
$LOAD_PATH.unshift(File.expand_path(path))
|
77
75
|
end
|
78
|
-
|
76
|
+
|
79
77
|
opts.on("-t", "--theme=THEME",
|
80
78
|
_("Use [THEME] as theme."),
|
81
79
|
"(#{options.theme})") do |theme|
|
@@ -89,6 +87,7 @@ def parse_args(args=ARGV, logger=nil)
|
|
89
87
|
source_type_names = Rabbit::Source.types.collect do |x|
|
90
88
|
Rabbit::Console.get_last_name(x).downcase
|
91
89
|
end
|
90
|
+
source_type_names.unshift("auto")
|
92
91
|
source_type_descs = Rabbit::Source.types.collect do |x|
|
93
92
|
message = _("When select %s\nspecify %s\nas [SOURCE_INFOS].")
|
94
93
|
type = Rabbit::Console.get_last_name(x)
|
@@ -100,12 +99,15 @@ def parse_args(args=ARGV, logger=nil)
|
|
100
99
|
_("Specify source type as [TYPE]."),
|
101
100
|
_("Select from [%s].") % source_type_names.join(', '),
|
102
101
|
_("Note: case insensitive."),
|
103
|
-
"(
|
104
|
-
_("(ARGV: if no filename is given)"),
|
102
|
+
"(auto)",
|
105
103
|
" ",
|
106
104
|
*source_type_descs) do |source_type|
|
107
|
-
|
108
|
-
|
105
|
+
if source_type == "auto"
|
106
|
+
options.source_type = :auto
|
107
|
+
else
|
108
|
+
options.source_type = Rabbit::Source.types.find do |t|
|
109
|
+
Rabbit::Console.get_last_name(t).downcase == source_type.downcase
|
110
|
+
end
|
109
111
|
end
|
110
112
|
end
|
111
113
|
|
@@ -467,15 +469,15 @@ def parse_args(args=ARGV, logger=nil)
|
|
467
469
|
opts.category _("Comment")
|
468
470
|
|
469
471
|
opts.on("--comment-source=FILE",
|
472
|
+
_("Deprecated. Just ignored."),
|
470
473
|
_("Specify initial comment source."),
|
471
474
|
_("(default source)")) do |name|
|
472
|
-
options.comment_source = name
|
473
475
|
end
|
474
476
|
|
475
477
|
opts.on("--comment-encoding=ENCODING",
|
478
|
+
_("Deprecated. Just ignored."),
|
476
479
|
_("Specify comment source encoding."),
|
477
480
|
_("(auto)")) do |encoding|
|
478
|
-
options.comment_encoding = encoding
|
479
481
|
end
|
480
482
|
|
481
483
|
opts.category _("Migemo")
|
@@ -523,30 +525,68 @@ def parse_args(args=ARGV, logger=nil)
|
|
523
525
|
end
|
524
526
|
|
525
527
|
def make_canvas(options, logger, renderer)
|
526
|
-
|
527
|
-
|
528
|
-
|
529
|
-
|
530
|
-
|
528
|
+
Rabbit::Canvas.new(logger, renderer)
|
529
|
+
end
|
530
|
+
|
531
|
+
def add_source_dialog_filter(dialog, name, pattern)
|
532
|
+
filter = Gtk::FileFilter.new
|
533
|
+
filter.name = "#{name} (#{pattern})"
|
534
|
+
filter.add_pattern(pattern)
|
535
|
+
dialog.add_filter(filter)
|
536
|
+
end
|
537
|
+
|
538
|
+
def choose_source_file_by_dialog(options)
|
539
|
+
dialog = Gtk::FileChooserDialog.new(_("Choose a Rabbit source file"),
|
540
|
+
nil,
|
541
|
+
Gtk::FileChooser::ACTION_OPEN,
|
542
|
+
nil,
|
543
|
+
[Gtk::Stock::CANCEL,
|
544
|
+
Gtk::Dialog::RESPONSE_CANCEL],
|
545
|
+
[Gtk::Stock::OPEN,
|
546
|
+
Gtk::Dialog::RESPONSE_ACCEPT])
|
547
|
+
dialog.current_folder = options.base if options.base
|
548
|
+
add_source_dialog_filter(dialog, "Rabbit files", "*.rab")
|
549
|
+
add_source_dialog_filter(dialog, "RD files", "*.rd")
|
550
|
+
add_source_dialog_filter(dialog, "Hiki files", "*.hiki")
|
551
|
+
add_source_dialog_filter(dialog, "PDF files", "*.pdf")
|
552
|
+
add_source_dialog_filter(dialog, "All files", "*")
|
553
|
+
file_name = nil
|
554
|
+
if dialog.run == Gtk::Dialog::RESPONSE_ACCEPT
|
555
|
+
file_name = dialog.filename
|
556
|
+
dialog.destroy
|
557
|
+
end
|
558
|
+
file_name
|
531
559
|
end
|
532
560
|
|
533
561
|
def make_source(options, argv, logger)
|
534
|
-
if options.source_type ==
|
535
|
-
|
562
|
+
if options.source_type == :auto
|
563
|
+
if argv.empty?
|
564
|
+
if Rabbit::Utils.support_console_input?
|
565
|
+
options.source_type = Rabbit::Source::ARGF
|
566
|
+
else
|
567
|
+
file_name = choose_source_file_by_dialog(options)
|
568
|
+
exit if file_name.nil?
|
569
|
+
argv = [file_name]
|
570
|
+
options.source_type = Rabbit::Source::File
|
571
|
+
end
|
572
|
+
elsif argv.size == 1 and /\Ahttps?:\/\// =~ argv[0]
|
573
|
+
options.source_type = Rabbit::Source::URI
|
574
|
+
else
|
575
|
+
options.source_type = Rabbit::Source::File
|
576
|
+
end
|
536
577
|
end
|
537
578
|
if options.source_type == Rabbit::Source::ARGF
|
538
579
|
infos = [ARGF]
|
539
580
|
else
|
540
581
|
infos = argv
|
541
582
|
end
|
542
|
-
options.source_type.new(options.encoding, logger, *infos)
|
583
|
+
source = options.source_type.new(options.encoding, logger, *infos)
|
584
|
+
source.base = options.base if options.base
|
585
|
+
source
|
543
586
|
end
|
544
587
|
|
545
588
|
def make_front(canvas, options)
|
546
589
|
level = options.public_level
|
547
|
-
if options.source_type == Rabbit::Source::Memory or options.server
|
548
|
-
level ||= "all"
|
549
|
-
end
|
550
590
|
level ||= options.default_public_level
|
551
591
|
level = level.gsub(/-/, "_").upcase
|
552
592
|
canvas.front(Rabbit::Front::PublicLevel.const_get(level))
|
@@ -556,9 +596,7 @@ def apply_theme_if_need(target, options)
|
|
556
596
|
target.apply_theme(options.theme) if options.theme_specified
|
557
597
|
end
|
558
598
|
|
559
|
-
def parse(target,
|
560
|
-
source = make_source(options, ARGV, logger)
|
561
|
-
source.base = options.base if options.base
|
599
|
+
def parse(target, source, background=false)
|
562
600
|
if background
|
563
601
|
callback = Rabbit::Utils.process_pending_events_proc
|
564
602
|
else
|
@@ -664,13 +702,14 @@ def setup_xmlrpc(front, options, logger)
|
|
664
702
|
end
|
665
703
|
|
666
704
|
def do_print(options, logger)
|
705
|
+
source = make_source(options, ARGV, logger)
|
667
706
|
renderer = Rabbit::Renderer.printable_renderer(options.slides_per_page)
|
668
707
|
canvas = make_canvas(options, logger, renderer)
|
669
708
|
setup_paper_size(canvas, options)
|
670
709
|
setup_print_info(canvas, options)
|
671
710
|
setup_3d_info(canvas, options)
|
672
711
|
apply_theme_if_need(canvas, options)
|
673
|
-
parse(canvas,
|
712
|
+
parse(canvas, source)
|
674
713
|
canvas.print
|
675
714
|
canvas.quit
|
676
715
|
rescue Rabbit::NoPrintSupportError
|
@@ -681,6 +720,7 @@ def do_save_as_image(options, logger)
|
|
681
720
|
Rabbit::Renderer::Pixmap.init
|
682
721
|
Rabbit.gui_init
|
683
722
|
|
723
|
+
source = make_source(options, ARGV, logger)
|
684
724
|
canvas = make_canvas(options, logger, Rabbit::Renderer::Pixmap)
|
685
725
|
setup_size(canvas, options)
|
686
726
|
setup_image_info(canvas, options)
|
@@ -688,7 +728,7 @@ def do_save_as_image(options, logger)
|
|
688
728
|
setup_paper_size(canvas, options)
|
689
729
|
setup_3d_info(canvas, options)
|
690
730
|
apply_theme_if_need(canvas, options)
|
691
|
-
parse(canvas,
|
731
|
+
parse(canvas, source)
|
692
732
|
canvas.activate("ToggleIndexMode") if options.index_mode
|
693
733
|
canvas.save_as_image
|
694
734
|
canvas.quit
|
@@ -698,6 +738,7 @@ def do_display(options, logger)
|
|
698
738
|
Rabbit::Renderer::Display.init
|
699
739
|
Rabbit.gui_init
|
700
740
|
|
741
|
+
source = make_source(options, ARGV, logger)
|
701
742
|
canvas = make_canvas(options, logger, Rabbit::Renderer::Display)
|
702
743
|
frame = Rabbit::Frame.new(logger, canvas)
|
703
744
|
frame.geometry = options.geometry
|
@@ -714,7 +755,7 @@ def do_display(options, logger)
|
|
714
755
|
logger.info(_("Window ID: %d") % native_window.xid)
|
715
756
|
end
|
716
757
|
apply_theme_if_need(frame, options)
|
717
|
-
parse(frame,
|
758
|
+
parse(frame, source, !Rabbit::Utils.windows?)
|
718
759
|
canvas.activate("ToggleIndexMode") if options.index_mode
|
719
760
|
|
720
761
|
front = make_front(canvas, options)
|
@@ -727,10 +768,11 @@ end
|
|
727
768
|
|
728
769
|
def do_server(options, logger)
|
729
770
|
Rabbit.gui_init
|
730
|
-
|
771
|
+
|
731
772
|
# GLib::Log.cancel_handler
|
732
773
|
# GLib::Log.set_handler(nil, GLib::Log::LEVEL_ERROR)
|
733
|
-
|
774
|
+
|
775
|
+
source = make_source(options, ARGV, logger)
|
734
776
|
canvas = make_canvas(options, logger, Rabbit::Renderer::Pixmap)
|
735
777
|
setup_size(canvas, options)
|
736
778
|
setup_paper_size(canvas, options)
|
@@ -738,11 +780,11 @@ def do_server(options, logger)
|
|
738
780
|
setup_print_info(canvas, options)
|
739
781
|
setup_3d_info(canvas, options)
|
740
782
|
apply_theme_if_need(canvas, options)
|
741
|
-
parse(canvas,
|
783
|
+
parse(canvas, source)
|
742
784
|
|
743
785
|
soap_server_thread = nil
|
744
786
|
xmlrpc_server_thread = nil
|
745
|
-
|
787
|
+
|
746
788
|
front = make_front(canvas, options)
|
747
789
|
setup_druby(front, options, logger) if options.use_druby
|
748
790
|
if options.use_soap
|
@@ -780,6 +822,8 @@ def main
|
|
780
822
|
else
|
781
823
|
do_display(options, logger)
|
782
824
|
end
|
825
|
+
|
826
|
+
Rabbit.cleanup
|
783
827
|
end
|
784
828
|
|
785
829
|
main
|