myrurema 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. data/README.mkd +14 -0
  2. data/VERSION +1 -1
  3. data/bin/rurema +17 -5
  4. metadata +4 -4
data/README.mkd CHANGED
@@ -55,6 +55,20 @@ ruremaコマンドにメソッド名やクラス名を与えると、リファ
55
55
 
56
56
  $ rurema Array#index
57
57
 
58
+ ### ローカルWebサーバの起動
59
+
60
+ bitclustには、Webサーバを起動してブラウザからリファレンスを
61
+ 閲覧できるようにする機能があります。
62
+
63
+ --serverオプションを指定すると、ローカルにWebサーバが起動します。
64
+ --browserオプションを指定すると、同時にブラウザでリファレンスのURLを開きます。
65
+
66
+ $ rurema --server --browser
67
+
68
+ デフォルトではRuby 1.8.7ならポート10187を使います。ポートを変更するには--portオプションを指定します。
69
+
70
+ $ rurema --server --port=9999 --browser
71
+
58
72
  ### データベースの更新
59
73
 
60
74
  Rubyリファレンス刷新計画では、最新のRubyに完全対応したリファレンスを目指し、
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.2
1
+ 0.0.3
data/bin/rurema CHANGED
@@ -1,6 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
  require 'optparse'
3
3
  require 'pathname'
4
+ require 'shellwords'
4
5
 
5
6
  class Pathname; alias / +; end
6
7
 
@@ -8,6 +9,7 @@ class Options
8
9
  def initialize(argv)
9
10
  @command = nil
10
11
  @open_browser = false
12
+ @port = nil
11
13
  @dry_run = false
12
14
  @ruremadir = Pathname("~/.rurema").expand_path
13
15
  @rubyver = RUBY_VERSION
@@ -27,6 +29,10 @@ class Options
27
29
  @command = :server
28
30
  }
29
31
 
32
+ o.on("--port=N",
33
+ "port number of the web browser (only meaningful with --server)"){|n|
34
+ @port = n.to_i
35
+ }
30
36
  o.on("--browser",
31
37
  "open web browser (only meaningful with --server)"){
32
38
  @open_browser = true
@@ -59,7 +65,7 @@ class Options
59
65
  @num = @num.to_i if @num
60
66
  end
61
67
  attr_reader :dry_run, :ruremadir, :rubyver, :open_browser
62
- attr_reader :command, :query, :num
68
+ attr_reader :command, :query, :num, :port
63
69
 
64
70
  def usage
65
71
  puts @optionparser
@@ -102,7 +108,7 @@ class MyRurema
102
108
  should_have_db(ver)
103
109
 
104
110
  sh "#{bitclust_path/'bin/refe.rb'}" +
105
- " #{query} -d #{db_path(ver)}", :silent => true
111
+ " #{Shellwords.escape query} -d #{db_path(ver)}", :silent => true
106
112
  end
107
113
 
108
114
  def search_num(query, num, ver)
@@ -120,22 +126,28 @@ class MyRurema
120
126
  end
121
127
 
122
128
  def server
129
+ port = @opt.port || default_port(@opt.rubyver)
123
130
  th = Thread.new{
124
131
  sh "#{bitclust_path/'standalone.rb'}" +
125
- " --baseurl=http://localhost:9292" +
126
- " --port=9292" +
132
+ " --baseurl=http://localhost:#{port}" +
133
+ " --port=#{port}" +
127
134
  " --database=#{db_path(@opt.rubyver)}" +
128
135
  " --debug"
129
136
  }
130
137
  if @opt.open_browser
138
+ sleep 1 # wait for the server to start
131
139
  cmd = (/mswin/ =~ RUBY_PLATFORM) ? "start" : "open"
132
- sh "#{cmd} http://localhost:9292/view/"
140
+ sh "#{cmd} http://localhost:#{port}/view/"
133
141
  end
134
142
  th.join
135
143
  end
136
144
 
137
145
  private
138
146
 
147
+ def default_port(ver)
148
+ "10" + ver.scan(/\d/).join
149
+ end
150
+
139
151
  def init_db(ver)
140
152
  sh "#{bitclust_path/'bin/bitclust.rb'}" +
141
153
  " -d #{db_path(ver)} init version=#{ver} encoding=euc-jp"
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: myrurema
3
3
  version: !ruby/object:Gem::Version
4
- hash: 27
4
+ hash: 25
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
- - 2
10
- version: 0.0.2
9
+ - 3
10
+ version: 0.0.3
11
11
  platform: ruby
12
12
  authors:
13
13
  - Yutaka HARA
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2010-07-02 00:00:00 +09:00
18
+ date: 2010-08-01 00:00:00 +09:00
19
19
  default_executable: rurema
20
20
  dependencies: []
21
21