myrurema 0.0.2 → 0.0.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 (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