milkode 0.5.2 → 0.5.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.
data/Rakefile CHANGED
@@ -27,13 +27,11 @@ Jeweler::Tasks.new do |gem|
27
27
  gem.add_runtime_dependency 'rack','>=1.3.4'
28
28
  gem.add_runtime_dependency 'sinatra', '>=1.2.6'
29
29
  gem.add_runtime_dependency 'launchy', '>=0.3.7'
30
- gem.add_runtime_dependency 'coderay', '=0.9.8'
30
+ gem.add_runtime_dependency 'coderay', '>=1.0.5'
31
31
  gem.add_runtime_dependency 'thin', '>=1.2.10'
32
32
  gem.add_runtime_dependency 'archive-zip', '>=0.4.0'
33
33
  gem.add_runtime_dependency 'haml', '>=3.1.2'
34
34
  gem.add_runtime_dependency 'sass', '>=3.1.3'
35
- gem.add_runtime_dependency 'nokogiri', '>=1.5.0'
36
- gem.add_runtime_dependency 'hpricot', '>=0.8.2'
37
35
 
38
36
  # and development dependencies are only needed for development (ie running rake tasks, tests, etc)
39
37
  # gem.add_development_dependency 'rspec', '> 1.2.3'
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.5.2
1
+ 0.5.3
@@ -120,6 +120,7 @@ EOF
120
120
  opts.on('-p', '--port PORT', 'use PORT (default: 9292)') {|v| options[:Port] = v }
121
121
  opts.on("-s", "--server SERVER", "serve using SERVER (default : thin)") {|s| options[:server] = s }
122
122
  opts.on('-n', '--no-browser', 'No launch browser.') {|v| options[:LaunchBrowser] = false }
123
+ opts.on('--customize', 'Create customize file.') {|v| options[:customize] = true }
123
124
 
124
125
  # --hostが'-h'を上書きするので、'-h'を再定義してあげる
125
126
  opts.on_tail("-h", "-?", "--help", "Show this message") do
@@ -14,10 +14,12 @@ $LOAD_PATH.unshift '../..'
14
14
  require 'milkode/cdweb/lib/database'
15
15
  require 'milkode/cdweb/lib/command'
16
16
  require 'milkode/cdweb/lib/mkurl'
17
+ require 'milkode/cdweb/lib/web_setting'
17
18
 
18
19
  set :haml, :format => :html5
19
20
 
20
21
  get '/' do
22
+ @setting = WebSetting.new
21
23
  @version = "0.5.0"
22
24
  @package_num = Database.instance.yaml_package_num
23
25
  @file_num = Database.instance.totalRecords
@@ -66,6 +68,7 @@ get '/home*' do |path|
66
68
  end
67
69
 
68
70
  get %r{/help} do
71
+ @setting = WebSetting.new
69
72
  haml :help
70
73
  end
71
74
 
@@ -75,6 +75,7 @@ module Milkode
75
75
  opts.on('-p', '--port PORT', 'use PORT (default: 9292)') {|v| options[:Port] = v }
76
76
  opts.on("-s", "--server SERVER", "serve using SERVER (default : thin)") {|s| options[:server] = s }
77
77
  opts.on('-n', '--no-browser', 'No launch browser.') {|v| options[:LaunchBrowser] = false }
78
+ opts.on('--customize', 'Create customize file.') {|v| options[:customize] = true }
78
79
 
79
80
  # --hostが'-h'を上書きするので、'-h'を再定義してあげる
80
81
  opts.on_tail("-h", "-?", "--help", "Show this message") do
@@ -89,16 +90,21 @@ module Milkode
89
90
  end
90
91
 
91
92
  def self.execute_with_options(stdout, options)
92
- # 使用するデータベースの位置設定
93
- Database.setup(File.expand_path(options[:DbDir]))
93
+ dbdir = File.expand_path(options[:DbDir])
94
+
95
+ unless options[:customize]
96
+ # 使用するデータベースの位置設定
97
+ Database.setup(dbdir)
94
98
 
95
- # サーバースクリプトのある場所へ移動
96
- FileUtils.cd(File.dirname(__FILE__))
99
+ # サーバースクリプトのある場所へ移動
100
+ FileUtils.cd(File.dirname(__FILE__))
97
101
 
98
- # Rackサーバー起動
99
- Rack::Server.start(options)
102
+ # Rackサーバー起動
103
+ Rack::Server.start(options)
104
+ else
105
+ create_customize_file(dbdir)
106
+ end
100
107
  end
101
-
102
108
 
103
109
  def self.select_dbdir
104
110
  if (Dbdir.dbdir?('.') || !Dbdir.dbdir?(Dbdir.default_dir))
@@ -107,5 +113,31 @@ module Milkode
107
113
  Dbdir.default_dir
108
114
  end
109
115
  end
116
+
117
+ def self.create_customize_file(dbdir)
118
+ fname = File.join(dbdir, "milkweb.yaml")
119
+
120
+ if File.exist? fname
121
+ puts "Already exist '#{fname}'"
122
+ else
123
+ puts <<EOF
124
+ Create '#{fname}'.
125
+ Please customize yaml parameter.
126
+ EOF
127
+
128
+ File.open(fname, "w") do |f|
129
+ f.write <<EOF
130
+ ---
131
+ :home_title : "Milkode"
132
+ :home_icon : "/images/MilkodeIcon135.png"
133
+
134
+ :header_title: "Milkode"
135
+ :header_icon : "/images/MilkodeIcon135.png"
136
+
137
+ :display_about_milkode: true
138
+ EOF
139
+ end
140
+ end
141
+ end
110
142
  end
111
143
  end
@@ -0,0 +1,174 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # @file
4
+ # @brief
5
+ # @author ongaeshi
6
+ # @date 2012/03/18
7
+
8
+ module CodeRay
9
+ module Encoders
10
+ class HTML2 < HTML
11
+ register_for :html2
12
+
13
+ def text_token text, kind
14
+ # p "#{kind}: #{text}"
15
+ super
16
+ end
17
+
18
+ # [ref] CodeRay::Encoders::HTML#finish (coderay-1.0.5/lib/coderay/encoders/html.rb:219)
19
+ def finish options
20
+ @out = ornament_line_attr(options)
21
+
22
+ unless @opened.empty?
23
+ warn '%d tokens still open: %p' % [@opened.size, @opened] if $CODERAY_DEBUG
24
+ @out << '</span>' while @opened.pop
25
+ @last_opened = nil
26
+ end
27
+
28
+ @out.extend Output
29
+ @out.css = @css
30
+ if options[:line_numbers]
31
+ # Numbering.number! @out, options[:line_numbers], options
32
+ HTML2::number! @out, options[:line_numbers], options
33
+ end
34
+ @out.wrap! options[:wrap]
35
+ @out.apply_title! options[:title]
36
+
37
+ if defined?(@real_out) && @real_out
38
+ @real_out << @out
39
+ @out = @real_out
40
+ end
41
+
42
+ @out
43
+ end
44
+
45
+ def ornament_line_attr(options)
46
+ # p options
47
+ line_number = options[:line_number_start]
48
+
49
+ lines = @out.split("\n")
50
+
51
+ lines.map{|l|
52
+ line_number += 1
53
+ "<span #{line_attr(line_number - 1, options[:highlight_lines])}>#{l}</span>"
54
+ }.join("\n") + "\n"
55
+ end
56
+
57
+ def line_attr(no, highlight_lines)
58
+ r = []
59
+ r << "id=\"n#{no}\""
60
+ r << "class=\"highlight-line\"" if highlight_lines.include?(no)
61
+ r.join(" ")
62
+ end
63
+
64
+ # [ref] CodeRay::Encoders::Numberling#number! (coderay-1.0.5/lib/coderay/encoders/numbering.rb:8)
65
+ def self.number! output, mode = :table, options = {}
66
+ return self unless mode
67
+
68
+ options = DEFAULT_OPTIONS.merge options
69
+
70
+ start = options[:line_number_start]
71
+ unless start.is_a? Integer
72
+ raise ArgumentError, "Invalid value %p for :line_number_start; Integer expected." % start
73
+ end
74
+
75
+ anchor_prefix = options[:line_number_anchors]
76
+ anchor_prefix = 'line' if anchor_prefix == true
77
+ anchor_prefix = anchor_prefix.to_s[/\w+/] if anchor_prefix
78
+
79
+ anchor_url = options[:line_number_anchor_url] || ""
80
+
81
+ anchoring =
82
+ if anchor_prefix
83
+ proc do |line|
84
+ line = line.to_s
85
+ anchor = anchor_prefix + line
86
+ "<a href=\"#{anchor_url}##{anchor}\" name=\"#{anchor}\">#{line}</a>"
87
+ end
88
+ else
89
+ proc { |line| line.to_s } # :to_s.to_proc in Ruby 1.8.7+
90
+ end
91
+
92
+ bold_every = options[:bold_every]
93
+ highlight_lines = options[:highlight_lines]
94
+ bolding =
95
+ if bold_every == false && highlight_lines == nil
96
+ anchoring
97
+ elsif highlight_lines.is_a? Enumerable
98
+ highlight_lines = highlight_lines.to_set
99
+ proc do |line|
100
+ if highlight_lines.include? line
101
+ "<strong class=\"highlighted\">#{anchoring[line]}</strong>" # highlighted line numbers in bold
102
+ else
103
+ anchoring[line]
104
+ end
105
+ end
106
+ elsif bold_every.is_a? Integer
107
+ raise ArgumentError, ":bolding can't be 0." if bold_every == 0
108
+ proc do |line|
109
+ if line % bold_every == 0
110
+ "<strong>#{anchoring[line]}</strong>" # every bold_every-th number in bold
111
+ else
112
+ anchoring[line]
113
+ end
114
+ end
115
+ else
116
+ raise ArgumentError, 'Invalid value %p for :bolding; false or Integer expected.' % bold_every
117
+ end
118
+
119
+ line_count = output.count("\n")
120
+ position_of_last_newline = output.rindex(RUBY_VERSION >= '1.9' ? /\n/ : ?\n)
121
+ if position_of_last_newline
122
+ after_last_newline = output[position_of_last_newline + 1 .. -1]
123
+ ends_with_newline = after_last_newline[/\A(?:<\/span>)*\z/]
124
+ line_count += 1 if not ends_with_newline
125
+ end
126
+
127
+ case mode
128
+ when :inline
129
+ max_width = (start + line_count).to_s.size
130
+ line_number = start
131
+ nesting = []
132
+ output.gsub!(/^.*$\n?/) do |line|
133
+ line.chomp!
134
+ open = nesting.join
135
+ line.scan(%r!<(/)?span[^>]*>?!) do |close,|
136
+ if close
137
+ nesting.pop
138
+ else
139
+ nesting << $&
140
+ end
141
+ end
142
+ close = '</span>' * nesting.size
143
+
144
+ line_number_text = bolding.call line_number
145
+ indent = ' ' * (max_width - line_number.to_s.size) # TODO: Optimize (10^x)
146
+ line_number += 1
147
+ "<span class=\"line-numbers\">#{indent}#{line_number_text}</span>#{open}#{line}#{close}\n"
148
+ end
149
+
150
+ when :table
151
+ line_numbers = (start ... start + line_count).map(&bolding).join("\n")
152
+ line_numbers << "\n"
153
+ line_numbers_table_template = Output::TABLE.apply('LINE_NUMBERS', line_numbers)
154
+
155
+ output.gsub!(/<\/div>\n/, '</div>')
156
+ output.wrap_in! line_numbers_table_template
157
+ output.wrapped_in = :div
158
+
159
+ when :list
160
+ raise NotImplementedError, 'The :list option is no longer available. Use :table.'
161
+
162
+ else
163
+ raise ArgumentError, 'Unknown value %p for mode: expected one of %p' %
164
+ [mode, [:table, :inline]]
165
+ end
166
+
167
+ output
168
+ end
169
+ end
170
+ end
171
+ end
172
+
173
+
174
+
@@ -9,7 +9,7 @@ require 'rubygems'
9
9
  require 'coderay'
10
10
  require 'coderay/helpers/file_type'
11
11
  require 'milkode/common/util'
12
- require 'milkode/cdweb/lib/my_nokogiri'
12
+ require 'milkode/cdweb/lib/coderay_html2'
13
13
 
14
14
  module Milkode
15
15
  class CodeRayWrapper
@@ -48,105 +48,39 @@ module Milkode
48
48
  end
49
49
 
50
50
  def to_html
51
- html = CodeRay.scan(@content, file_type).
52
- html(
53
- :wrap => nil,
54
- :line_numbers => :table,
55
- :css => :class,
56
- :highlight_lines => @highlight_lines,
57
- :line_number_start => @line_number_start
58
- )
59
-
60
- if (is_ornament?)
61
- html_doc = MyNokogiri::HTML(html)
62
- add_spanid(html_doc)
63
- else
64
- html
65
- end
66
- end
67
-
68
- def to_html_anchor
69
- html = CodeRay.scan(@content, file_type).
70
- html(
71
- :wrap => nil,
72
- :line_numbers => :table,
73
- :css => :class,
74
- :highlight_lines => @highlight_lines,
75
- :line_number_start => @line_number_start
76
- )
77
-
78
- if (is_ornament?)
79
- html_doc = MyNokogiri::HTML(html)
80
- anchor = create_anchorlink(html_doc.at_css("table.CodeRay td.code pre").inner_html)
81
- body = add_spanid(html_doc)
82
- anchor + body
83
- else
84
- html
85
- end
86
- end
87
-
88
- def add_spanid(html_doc)
89
- # preに<span id="行番号"> を付ける
90
- table = html_doc.at_css("table.CodeRay")
91
- pre = table.at_css("td.code pre")
92
- pre.inner_html = add_spanid_in(pre.inner_html)
93
-
94
- # 結果を文字列で返す
95
- table.to_html
51
+ CodeRay.scan(@content, file_type).
52
+ html2(
53
+ :wrap => nil,
54
+ :line_numbers => :table,
55
+ :css => :class,
56
+ :highlight_lines => @highlight_lines,
57
+ :line_number_start => @line_number_start,
58
+ :line_number_anchors => false
59
+ )
96
60
  end
97
61
 
98
- def add_spanid_in(html)
99
- lines = html.split("<tt>\n</tt>")
100
- line_number = @line_number_start
101
-
102
- lines.map {|l|
103
- line_number += 1
104
- "<span #{line_attr(line_number - 1)}>#{l}</span>"
105
- }.join("<tt>\n</tt>") + "<tt>\n</tt>"
62
+ def to_html_anchorlink(url)
63
+ CodeRay.scan(@content, file_type).
64
+ html2(
65
+ :wrap => nil,
66
+ :line_numbers => :table,
67
+ :css => :class,
68
+ :highlight_lines => @highlight_lines,
69
+ :line_number_start => @line_number_start,
70
+ :line_number_anchors => 'n',
71
+ :line_number_anchor_url => url
72
+ )
106
73
  end
107
74
 
108
75
  def file_type
109
76
  case File.extname(@filename)
110
77
  when ".el"
111
- :scheme
112
- else
78
+ # :scheme
113
79
  CodeRay::FileType.fetch @filename, :plaintext
114
- end
115
- end
116
-
117
- def line_attr(no)
118
- r = []
119
- r << "id=\"#{no}\""
120
- r << "class=\"highlight-line\"" if @highlight_lines.include?(no)
121
- r.join(" ")
122
- end
123
-
124
- ANCHOR_OFFSET = 3
125
-
126
- def create_anchorlink(str)
127
- if @highlight_lines
128
- lines = str.split("\n")
129
-
130
- codes = @highlight_lines.map {|no|
131
- " <tr><td class=\"line_numbers\">#{no}</td> <td class=\"code\"><pre><a href=\"##{[no - ANCHOR_OFFSET, 1].max}\">#{lines[no - 1]}</a></pre></td> </tr>"
132
- }.join("\n")
133
-
134
- <<EOF
135
- <span class="match-num">#{@highlight_lines.size} results</span>
136
- <table class="CodeRay anchor-table">
137
- #{codes}
138
- </table>
139
- <p>
140
- EOF
141
80
  else
142
- ""
81
+ CodeRay::FileType.fetch @filename, :plaintext
143
82
  end
144
83
  end
145
-
146
- def is_ornament?
147
- Util::larger_than_oneline(@content)
148
- end
149
-
150
84
  end
151
85
  end
152
86
 
@@ -14,6 +14,7 @@ require 'milkode/common/util'
14
14
 
15
15
  module Milkode
16
16
  def view(record, params, before)
17
+ @setting = WebSetting.new
17
18
  @title = record.shortpath
18
19
  @path = record.shortpath
19
20
 
@@ -22,7 +23,7 @@ module Milkode
22
23
  if (Util::larger_than_oneline(record.content) and q and !q.keywords.empty?)
23
24
  grep = Grep.new(record.content)
24
25
  match_lines = grep.match_lines_and(q.keywords)
25
- @record_content = CodeRayWrapper.new(record.content, record.shortpath, match_lines).to_html_anchor
26
+ @record_content = CodeRayWrapper.new(record.content, record.shortpath, match_lines).to_html
26
27
  else
27
28
  @record_content = CodeRayWrapper.new(record.content, record.shortpath).to_html
28
29
  end
@@ -32,6 +33,7 @@ module Milkode
32
33
  end
33
34
 
34
35
  def search(path, params, before)
36
+ @setting = WebSetting.new
35
37
  @path = path
36
38
  query = Query.new(params[:query])
37
39
  @title = "'#{query.query_string}' in #{path_title(path)}"
@@ -51,6 +53,7 @@ module Milkode
51
53
  end
52
54
 
53
55
  def filelist(path, params, before)
56
+ @setting = WebSetting.new
54
57
  @title = filelist_title(path)
55
58
  @path = path
56
59
  fileList = Database.instance.fileList(path)
@@ -23,16 +23,18 @@ module Milkode
23
23
  @@db_dir = db_dir
24
24
  end
25
25
 
26
+ def self.dbdir
27
+ @@db_dir || Dbdir.default_dir
28
+ end
29
+
26
30
  attr_reader :yaml
27
31
 
28
32
  def initialize
29
- db_dir = @@db_dir || Dbdir.default_dir
30
- open(db_dir)
31
- @yaml = YamlFileWrapper.load_if(db_dir)
33
+ open(Database.dbdir)
32
34
  end
33
35
 
34
36
  def yaml_reload
35
- @yaml = YamlFileWrapper.load_if(@@db_dir || Dbdir.default_dir)
37
+ # @yaml = YamlFileWrapper.load_if(@@db_dir || Dbdir.default_dir)
36
38
  end
37
39
 
38
40
  def open(db_dir)
@@ -106,7 +108,7 @@ module Milkode
106
108
 
107
109
  # yamlからパッケージの総数を得る
108
110
  def yaml_package_num
109
- @yaml.contents.size
111
+ yaml_load.contents.size
110
112
  end
111
113
 
112
114
  # @sample test/test_database.rb:43 TestDatabase#t_fileList
@@ -116,7 +118,7 @@ module Milkode
116
118
 
117
119
  # 'depth==0'の時はMilkodeYaml#contentsからファイルリストを生成して高速化
118
120
  if (base_depth == 0)
119
- return @yaml.contents.sort_by{|v| v.name}.map{|v| [v.name, false] }
121
+ return yaml_load.contents.sort_by{|v| v.name}.map{|v| [v.name, false] }
120
122
  end
121
123
 
122
124
  # shortpathにマッチするものだけに絞り込む
@@ -180,7 +182,7 @@ module Milkode
180
182
  def reopen_patch
181
183
  # 削除系のコマンドが上手く動作しないためのパッチ
182
184
  # 本質的な解決にはなっていないと思う
183
- open(@@db_dir || Dbdir.default_dir)
185
+ open(Database.dbdir)
184
186
  end
185
187
 
186
188
  def searchMain(patterns, packages, fpaths, suffixs, offset, limit)
@@ -288,7 +290,11 @@ module Milkode
288
290
  end
289
291
 
290
292
  def expand_packages(keyword)
291
- @yaml.match_all(keyword).map{|p| p.directory}
293
+ yaml_load.match_all(keyword).map{|p| p.directory}
294
+ end
295
+
296
+ def yaml_load
297
+ YamlFileWrapper.load_if(Database.dbdir)
292
298
  end
293
299
 
294
300
  # --- error ---
@@ -51,7 +51,26 @@ module Milkode
51
51
  end
52
52
 
53
53
  def html_contents
54
- @match_records.map {|match_record| result_match_record(match_record)}.join
54
+ match_groups = @match_records.reduce([]) do |g, m|
55
+ if (g.empty?)
56
+ g << [m]
57
+ else
58
+ prev = g[-1][-1]
59
+
60
+ if (m.match_line.index - prev.match_line.index <= NTH * 2 &&
61
+ m.record.shortpath == prev.record.shortpath)
62
+ g[-1] << m # グループの末尾に追加
63
+ g
64
+ else
65
+ g << [m] # 新規グループ
66
+ end
67
+ end
68
+
69
+ # 近接マッチ無効
70
+ # g << [m]
71
+ end
72
+
73
+ match_groups.map{|g|result_match_record(g)}.join
55
74
  end
56
75
 
57
76
  def html_pagination
@@ -129,21 +148,23 @@ EOF
129
148
  return false
130
149
  end
131
150
 
132
- def result_match_record(match_record)
133
- record = match_record.record
134
- match_line = match_record.match_line
151
+ def result_match_record(match_group)
152
+ record = match_group[0].record
135
153
 
136
- first_index = match_line.index - NTH
137
- last_index = match_line.index + NTH
154
+ first_index = match_group[0].match_line.index - NTH
155
+ last_index = match_group[-1].match_line.index + NTH
156
+ match_lines = match_group.map{|m| m.match_line}
138
157
 
139
- coderay = CodeRayWrapper.new(record.content, record.shortpath, [match_line])
158
+ coderay = CodeRayWrapper.new(record.content, record.shortpath, match_lines)
140
159
  coderay.col_limit(COL_LIMIT)
141
160
  coderay.set_range(first_index..last_index)
142
161
 
162
+ url = "/home/" + record_link(record)
163
+
143
164
  <<EOS
144
- <dt class='result-record'><a href='#{"/home/" + record_link(record) + "##{coderay.line_number_start}"}'>#{Util::relative_path record.shortpath, @path}</a></dt>
165
+ <dt class='result-record'><a href='#{url + "#n#{coderay.line_number_start}"}'>#{Util::relative_path record.shortpath, @path}</a></dt>
145
166
  <dd>
146
- #{coderay.to_html}
167
+ #{coderay.to_html_anchorlink(url)}
147
168
  </dd>
148
169
  EOS
149
170
  end
@@ -0,0 +1,55 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # @file
4
+ # @brief
5
+ # @author ongaeshi
6
+ # @date 2012/03/24
7
+
8
+ require 'milkode/cdweb/lib/database'
9
+ require 'yaml'
10
+
11
+ module Milkode
12
+ class WebSetting
13
+ DEFAULT_SETTING = {
14
+ :home_title => "Milkode",
15
+ :home_icon => "/images/MilkodeIcon135.png",
16
+
17
+ :header_title => "Milkode",
18
+ :header_icon => "/images/MilkodeIcon135.png",
19
+
20
+ :display_about_milkode => true
21
+ }
22
+
23
+ def self.hash_method(name)
24
+ define_method(name) do
25
+ @data[name]
26
+ end
27
+ end
28
+
29
+ def initialize
30
+ fname = File.join(Database.dbdir, "milkweb.yaml")
31
+ if FileTest.exist? fname
32
+ open(fname) do |f|
33
+ @data = YAML.load(f.read)
34
+ end
35
+ else
36
+ @data = DEFAULT_SETTING
37
+ end
38
+ end
39
+
40
+ hash_method :home_title
41
+ hash_method :home_icon
42
+
43
+ hash_method :header_title
44
+ hash_method :header_icon
45
+
46
+ def about_milkode
47
+ if (@data[:display_about_milkode])
48
+ ', <a href="http://milkode.ongaeshi.me">milkodeについて</a>'
49
+ else
50
+ ''
51
+ end
52
+ end
53
+ end
54
+ end
55
+
@@ -1,131 +1,120 @@
1
1
  .CodeRay {
2
- background-color: #f8f8f8;
2
+ background-color: hsl(0,0%,95%);
3
3
  border: 1px solid silver;
4
- font-family: 'Courier New', 'Terminal', monospace;
5
- color: #000;
4
+ color: black;
5
+ }
6
+ .CodeRay pre {
7
+ margin: 0px;
6
8
  }
7
- .CodeRay pre { margin: 0px }
8
-
9
- div.CodeRay { }
10
9
 
11
- span.CodeRay { white-space: pre; border: 0px; padding: 2px }
10
+ span.CodeRay { white-space: pre; border: 0px; padding: 2px; }
12
11
 
13
- table.CodeRay { border-collapse: collapse; width: 100%; padding: 2px }
14
- table.CodeRay td { padding: 2px 4px; vertical-align: top }
12
+ table.CodeRay { border-collapse: collapse; width: 100%; padding: 2px; }
13
+ table.CodeRay td { padding: 2px 4px; vertical-align: top; }
15
14
 
16
- .CodeRay .line_numbers, .CodeRay .no {
17
- background-color: #def;
15
+ .CodeRay .line-numbers {
16
+ background-color: hsl(180,65%,90%);
18
17
  color: gray;
19
18
  text-align: right;
19
+ -webkit-user-select: none;
20
+ -moz-user-select: none;
21
+ user-select: none;
22
+ }
23
+ .CodeRay .line-numbers a {
24
+ background-color: hsl(180,65%,90%) !important;
25
+ color: gray !important;
26
+ text-decoration: none !important;
20
27
  }
21
- .CodeRay .line_numbers tt { font-weight: bold }
22
- .CodeRay .line_numbers .highlighted { color: red }
28
+ .CodeRay .line-numbers a:target { color: blue !important; }
29
+ .CodeRay .line-numbers .highlighted { color: red !important; }
30
+ .CodeRay .line-numbers .highlighted a { color: red !important; }
31
+ .CodeRay span.line-numbers { padding: 0px 4px; }
23
32
  .CodeRay .line { display: block; float: left; width: 100%; }
24
- .CodeRay .no { padding: 0px 4px }
25
- .CodeRay .code { width: 100% }
26
-
27
- ol.CodeRay { font-size: 10pt }
28
- ol.CodeRay li { white-space: pre }
29
-
30
- .CodeRay .code pre { overflow: auto }
31
-
32
- .CodeRay .debug { color:white ! important; background:blue ! important; }
33
-
34
- .CodeRay .af { color:#00C }
35
- .CodeRay .an { color:#007 }
36
- .CodeRay .at { color:#f08 }
37
- .CodeRay .av { color:#700 }
38
- .CodeRay .aw { color:#C00 }
39
- .CodeRay .bi { color:#509; font-weight:bold }
40
- .CodeRay .c { color:#888; }
41
-
42
- .CodeRay .ch { color:#04D }
43
- .CodeRay .ch .k { color:#04D }
44
- .CodeRay .ch .dl { color:#039 }
45
-
46
- .CodeRay .cl { color:#B06; font-weight:bold }
47
- .CodeRay .cm { color:#A08; font-weight:bold }
48
- .CodeRay .co { color:#036; font-weight:bold }
49
- .CodeRay .cr { color:#0A0 }
50
- .CodeRay .cv { color:#369 }
51
- .CodeRay .de { color:#B0B; }
52
- .CodeRay .df { color:#099; font-weight:bold }
53
- .CodeRay .di { color:#088; font-weight:bold }
54
- .CodeRay .dl { color:black }
55
- .CodeRay .do { color:#970 }
56
- .CodeRay .dt { color:#34b }
57
- .CodeRay .ds { color:#D42; font-weight:bold }
58
- .CodeRay .e { color:#666; font-weight:bold }
59
- .CodeRay .en { color:#800; font-weight:bold }
60
- .CodeRay .er { color:#F00; background-color:#FAA }
61
- .CodeRay .ex { color:#C00; font-weight:bold }
62
- .CodeRay .fl { color:#60E; font-weight:bold }
63
- .CodeRay .fu { color:#06B; font-weight:bold }
64
- .CodeRay .gv { color:#d70; font-weight:bold }
65
- .CodeRay .hx { color:#058; font-weight:bold }
66
- .CodeRay .i { color:#00D; font-weight:bold }
67
- .CodeRay .ic { color:#B44; font-weight:bold }
68
-
69
- .CodeRay .il { background: #ddd; color: black }
70
- .CodeRay .il .il { background: #ccc }
71
- .CodeRay .il .il .il { background: #bbb }
72
- .CodeRay .il .idl { background: #ddd; font-weight: bold; color: #666 }
73
- .CodeRay .idl { background-color: #bbb; font-weight: bold; color: #666; }
74
-
75
- .CodeRay .im { color:#f00; }
76
- .CodeRay .in { color:#B2B; font-weight:bold }
77
- .CodeRay .iv { color:#33B }
78
- .CodeRay .la { color:#970; font-weight:bold }
79
- .CodeRay .lv { color:#963 }
80
- .CodeRay .oc { color:#40E; font-weight:bold }
81
- .CodeRay .of { color:#000; font-weight:bold }
82
- .CodeRay .op { }
83
- .CodeRay .pc { color:#038; font-weight:bold }
84
- .CodeRay .pd { color:#369; font-weight:bold }
85
- .CodeRay .pp { color:#579; }
86
- .CodeRay .ps { color:#00C; font-weight:bold }
87
- .CodeRay .pt { color:#074; font-weight:bold }
88
- .CodeRay .r, .kw { color:#080; font-weight:bold }
89
-
90
- .CodeRay .ke { color: #808; }
91
- .CodeRay .ke .dl { color: #606; }
92
- .CodeRay .ke .ch { color: #80f; }
93
- .CodeRay .vl { color: #088; }
94
-
95
- .CodeRay .rx { background-color:#fff0ff }
96
- .CodeRay .rx .k { color:#808 }
97
- .CodeRay .rx .dl { color:#404 }
98
- .CodeRay .rx .mod { color:#C2C }
99
- .CodeRay .rx .fu { color:#404; font-weight: bold }
100
-
101
- .CodeRay .s { background-color:#fff0f0; color: #D20; }
102
- .CodeRay .s .s { background-color:#ffe0e0 }
103
- .CodeRay .s .s .s { background-color:#ffd0d0 }
104
- .CodeRay .s .k { }
105
- .CodeRay .s .ch { color: #b0b; }
106
- .CodeRay .s .dl { color: #710; }
107
-
108
- .CodeRay .sh { background-color:#f0fff0; color:#2B2 }
109
- .CodeRay .sh .k { }
110
- .CodeRay .sh .dl { color:#161 }
111
-
112
- .CodeRay .sy { color:#A60 }
113
- .CodeRay .sy .k { color:#A60 }
114
- .CodeRay .sy .dl { color:#630 }
115
-
116
- .CodeRay .ta { color:#070 }
117
- .CodeRay .tf { color:#070; font-weight:bold }
118
- .CodeRay .ts { color:#D70; font-weight:bold }
119
- .CodeRay .ty { color:#339; font-weight:bold }
120
- .CodeRay .v { color:#036 }
121
- .CodeRay .xt { color:#444 }
122
-
123
- .CodeRay .ins { background: #afa; }
124
- .CodeRay .del { background: #faa; }
125
- .CodeRay .chg { color: #aaf; background: #007; }
33
+ .CodeRay .code { width: 100%; }
34
+
35
+ .CodeRay .debug { color: white !important; background: blue !important; }
36
+
37
+ .CodeRay .annotation { color:#007 }
38
+ .CodeRay .attribute-name { color:#b48 }
39
+ .CodeRay .attribute-value { color:#700 }
40
+ .CodeRay .binary { color:#509 }
41
+ .CodeRay .char .content { color:#D20 }
42
+ .CodeRay .char .delimiter { color:#710 }
43
+ .CodeRay .char { color:#D20 }
44
+ .CodeRay .class { color:#B06; font-weight:bold }
45
+ .CodeRay .class-variable { color:#369 }
46
+ .CodeRay .color { color:#0A0 }
47
+ .CodeRay .comment { color:#777 }
48
+ .CodeRay .comment .char { color:#444 }
49
+ .CodeRay .comment .delimiter { color:#444 }
50
+ .CodeRay .complex { color:#A08 }
51
+ .CodeRay .constant { color:#036; font-weight:bold }
52
+ .CodeRay .decorator { color:#B0B }
53
+ .CodeRay .definition { color:#099; font-weight:bold }
54
+ .CodeRay .delimiter { color:black }
55
+ .CodeRay .directive { color:#088; font-weight:bold }
56
+ .CodeRay .doc { color:#970 }
57
+ .CodeRay .doc-string { color:#D42; font-weight:bold }
58
+ .CodeRay .doctype { color:#34b }
59
+ .CodeRay .entity { color:#800; font-weight:bold }
60
+ .CodeRay .error { color:#F00; background-color:#FAA }
61
+ .CodeRay .escape { color:#666 }
62
+ .CodeRay .exception { color:#C00; font-weight:bold }
63
+ .CodeRay .float { color:#60E }
64
+ .CodeRay .function { color:#06B; font-weight:bold }
65
+ .CodeRay .global-variable { color:#d70 }
66
+ .CodeRay .hex { color:#02b }
67
+ .CodeRay .imaginary { color:#f00 }
68
+ .CodeRay .include { color:#B44; font-weight:bold }
69
+ .CodeRay .inline { background-color: hsla(0,0%,0%,0.07); color: black }
70
+ .CodeRay .inline-delimiter { font-weight: bold; color: #666 }
71
+ .CodeRay .instance-variable { color:#33B }
72
+ .CodeRay .integer { color:#00D }
73
+ .CodeRay .key .char { color: #60f }
74
+ .CodeRay .key .delimiter { color: #404 }
75
+ .CodeRay .key { color: #606 }
76
+ .CodeRay .keyword { color:#080; font-weight:bold }
77
+ .CodeRay .label { color:#970; font-weight:bold }
78
+ .CodeRay .local-variable { color:#963 }
79
+ .CodeRay .namespace { color:#707; font-weight:bold }
80
+ .CodeRay .octal { color:#40E }
81
+ .CodeRay .operator { }
82
+ .CodeRay .predefined { color:#369; font-weight:bold }
83
+ .CodeRay .predefined-constant { color:#069 }
84
+ .CodeRay .predefined-type { color:#0a5; font-weight:bold }
85
+ .CodeRay .preprocessor { color:#579 }
86
+ .CodeRay .pseudo-class { color:#00C; font-weight:bold }
87
+ .CodeRay .regexp .content { color:#808 }
88
+ .CodeRay .regexp .delimiter { color:#404 }
89
+ .CodeRay .regexp .modifier { color:#C2C }
90
+ .CodeRay .regexp { background-color:hsla(300,100%,50%,0.06); }
91
+ .CodeRay .reserved { color:#080; font-weight:bold }
92
+ .CodeRay .shell .content { color:#2B2 }
93
+ .CodeRay .shell .delimiter { color:#161 }
94
+ .CodeRay .shell { background-color:hsla(120,100%,50%,0.06); }
95
+ .CodeRay .string .char { color: #b0b }
96
+ .CodeRay .string .content { color: #D20 }
97
+ .CodeRay .string .delimiter { color: #710 }
98
+ .CodeRay .string .modifier { color: #E40 }
99
+ .CodeRay .string { background-color:hsla(0,100%,50%,0.05); }
100
+ .CodeRay .symbol .content { color:#A60 }
101
+ .CodeRay .symbol .delimiter { color:#630 }
102
+ .CodeRay .symbol { color:#A60 }
103
+ .CodeRay .tag { color:#070 }
104
+ .CodeRay .type { color:#339; font-weight:bold }
105
+ .CodeRay .value { color: #088; }
106
+ .CodeRay .variable { color:#037 }
107
+
108
+ .CodeRay .insert { background: hsla(120,100%,50%,0.12) }
109
+ .CodeRay .delete { background: hsla(0,100%,50%,0.12) }
110
+ .CodeRay .change { color: #bbf; background: #007; }
126
111
  .CodeRay .head { color: #f8f; background: #505 }
112
+ .CodeRay .head .filename { color: white; }
113
+
114
+ .CodeRay .delete .eyecatcher { background-color: hsla(0,100%,50%,0.2); border: 1px solid hsla(0,100%,45%,0.5); margin: -1px; border-bottom: none; border-top-left-radius: 5px; border-top-right-radius: 5px; }
115
+ .CodeRay .insert .eyecatcher { background-color: hsla(120,100%,50%,0.2); border: 1px solid hsla(120,100%,25%,0.5); margin: -1px; border-top: none; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; }
127
116
 
128
- .CodeRay .ins .ins { color: #080; font-weight:bold }
129
- .CodeRay .del .del { color: #800; font-weight:bold }
130
- .CodeRay .chg .chg { color: #66f; }
131
- .CodeRay .head .head { color: #f4f; }
117
+ .CodeRay .insert .insert { color: #0c0; background:transparent; font-weight:bold }
118
+ .CodeRay .delete .delete { color: #c00; background:transparent; font-weight:bold }
119
+ .CodeRay .change .change { color: #88f }
120
+ .CodeRay .head .head { color: #f4f }
@@ -1,5 +1,5 @@
1
1
  .header
2
2
  %h1
3
- <a href="/"><img src="/images/MilkodeIcon135.png" alt="milkode-icon-mini" border="0" height="75px"/></a>
4
- Milkode
3
+ <a href="/"><img src=#{@setting.header_icon} alt="milkode-icon-mini" border="0" height="75px"/></a>
4
+ #{@setting.header_title}
5
5
  = create_headmenu(@path, params, defined?(flistpath) ? flistpath : '')
@@ -2,8 +2,8 @@
2
2
 
3
3
  .header
4
4
  %h1
5
- <a href="/"><img src="/images/MilkodeIcon135.png" alt="milkode-icon-mini" border="0" height="75px"/></a>
6
- #{@title} - Milkode
5
+ <a href="/"><img src=#{@setting.header_icon} alt="milkode-icon-mini" border="0" height="75px"/></a>
6
+ #{@title} - #{@setting.header_title}
7
7
 
8
8
  .content
9
9
  .sample-code
@@ -1,6 +1,6 @@
1
1
  %div(align="center")
2
2
  .header_home
3
- %h1 <a href="/"><img src="/images/MilkodeIcon135.png" alt="milkode-icon" border="0" height="135px"/></a> Milkode <font class="version">#{@version}</font>
3
+ %h1 <a href="/"><img src=#{@setting.home_icon} alt="milkode-icon" border="0" height="135px"/></a> #{@setting.home_title} <font class="version">#{@version}</font>
4
4
 
5
5
  .content
6
6
  %form(method="post" action="/search")
@@ -12,7 +12,7 @@
12
12
  .footer_home
13
13
  <a href="/home">#{@package_num}</a>のパッケージ<br>
14
14
  <a href="/home?query=f:*">#{@file_num}</a>のファイル<br>
15
- <a href="/help">ヘルプ</a> ,
16
- <a href="http://milkode.ongaeshi.me">milkodeについて</a>
15
+ <a href="/help">ヘルプ</a>
16
+ = @setting.about_milkode
17
17
 
18
18
 
@@ -13,7 +13,7 @@
13
13
  全て
14
14
  %label
15
15
  = create_radio('package', params[:shead])
16
- パッケージ(おすすめ)
16
+ パッケージ(デフォルト)
17
17
  %label
18
18
  = create_radio('directory', params[:shead])
19
19
  ディレクトリ
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{milkode}
8
- s.version = "0.4.0"
8
+ s.version = "0.5.3"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["ongaeshi"]
12
- s.date = %q{2012-02-02}
12
+ s.date = %q{2012-03-24}
13
13
  s.description = %q{Line based local source code search engine & grep-command & web-app.}
14
14
  s.email = %q{ongaeshi0621@gmail.com}
15
15
  s.executables = ["gmilk", "milk"]
@@ -31,21 +31,24 @@ Gem::Specification.new do |s|
31
31
  "bin/milk",
32
32
  "lib/milkode/cdstk/cdstk.rb",
33
33
  "lib/milkode/cdstk/cdstk_command.rb",
34
- "lib/milkode/cdstk/cdstk_yaml.rb",
35
34
  "lib/milkode/cdstk/cli_cdstk.rb",
36
35
  "lib/milkode/cdstk/cli_cdstksub.rb",
36
+ "lib/milkode/cdstk/milkode_yaml.rb",
37
+ "lib/milkode/cdstk/package.rb",
38
+ "lib/milkode/cdstk/yaml_file_wrapper.rb",
37
39
  "lib/milkode/cdweb/app.rb",
38
40
  "lib/milkode/cdweb/cli_cdweb.rb",
39
41
  "lib/milkode/cdweb/config.ru",
42
+ "lib/milkode/cdweb/lib/coderay_html2.rb",
40
43
  "lib/milkode/cdweb/lib/coderay_wrapper.rb",
41
44
  "lib/milkode/cdweb/lib/command.rb",
42
45
  "lib/milkode/cdweb/lib/database.rb",
43
46
  "lib/milkode/cdweb/lib/grep.rb",
44
47
  "lib/milkode/cdweb/lib/mkurl.rb",
45
- "lib/milkode/cdweb/lib/my_nokogiri.rb",
46
48
  "lib/milkode/cdweb/lib/query.rb",
47
49
  "lib/milkode/cdweb/lib/search_contents.rb",
48
50
  "lib/milkode/cdweb/lib/search_files.rb",
51
+ "lib/milkode/cdweb/lib/web_setting.rb",
49
52
  "lib/milkode/cdweb/public/css/coderay-patch.css",
50
53
  "lib/milkode/cdweb/public/css/coderay.css",
51
54
  "lib/milkode/cdweb/public/css/milkode.css",
@@ -56,10 +59,12 @@ Gem::Specification.new do |s|
56
59
  "lib/milkode/cdweb/public/images/go-home-5.png",
57
60
  "lib/milkode/cdweb/public/js/milkode.js",
58
61
  "lib/milkode/cdweb/views/filelist.haml",
62
+ "lib/milkode/cdweb/views/header_menu.haml",
59
63
  "lib/milkode/cdweb/views/help.haml",
60
64
  "lib/milkode/cdweb/views/index.haml",
61
65
  "lib/milkode/cdweb/views/layout.haml",
62
66
  "lib/milkode/cdweb/views/search.haml",
67
+ "lib/milkode/cdweb/views/search_form.haml",
63
68
  "lib/milkode/cdweb/views/view.haml",
64
69
  "lib/milkode/common/archive-zip.rb",
65
70
  "lib/milkode/common/dbdir.rb",
@@ -67,6 +72,8 @@ Gem::Specification.new do |s|
67
72
  "lib/milkode/common/display_util.rb",
68
73
  "lib/milkode/common/grenfiletest.rb",
69
74
  "lib/milkode/common/grensnip.rb",
75
+ "lib/milkode/common/ignore_checker.rb",
76
+ "lib/milkode/common/ignore_setting.rb",
70
77
  "lib/milkode/common/platform.rb",
71
78
  "lib/milkode/common/string_snip.rb",
72
79
  "lib/milkode/common/util.rb",
@@ -74,11 +81,14 @@ Gem::Specification.new do |s|
74
81
  "lib/milkode/findgrep/result.rb",
75
82
  "lib/milkode/grep/cli_grep.rb",
76
83
  "milkode.gemspec",
84
+ "test/data/.gitignore",
77
85
  "test/data/a_project/cdstk.rb",
78
86
  "test/data/a_project/cdstk_yaml.rb",
79
87
  "test/data/abc.zip",
80
88
  "test/data/b_project/runner.rb",
81
89
  "test/data/b_project/test_dir.rb",
90
+ "test/data/no_auto_ignore/.gitignore",
91
+ "test/data/no_auto_ignore/a.txt",
82
92
  "test/data/nodir_abc.zip",
83
93
  "test/data/nodir_abc_xpi.xpi",
84
94
  "test/file_assert.rb",
@@ -89,7 +99,6 @@ Gem::Specification.new do |s|
89
99
  "test/test_bin_exec.rb",
90
100
  "test/test_cdstk.rb",
91
101
  "test/test_cdstk_command.rb",
92
- "test/test_cdstk_yaml.rb",
93
102
  "test/test_cli_cdstk.rb",
94
103
  "test/test_cli_grep.rb",
95
104
  "test/test_coderay_wrapper.rb",
@@ -99,10 +108,15 @@ Gem::Specification.new do |s|
99
108
  "test/test_dir.rb",
100
109
  "test/test_gren_util.rb",
101
110
  "test/test_helper.rb",
111
+ "test/test_ignore_checker.rb",
112
+ "test/test_ignore_setting.rb",
113
+ "test/test_milkode_yaml.rb",
102
114
  "test/test_mkurl.rb",
115
+ "test/test_package.rb",
103
116
  "test/test_query.rb",
104
117
  "test/test_string_snip.rb",
105
- "test/test_util.rb"
118
+ "test/test_util.rb",
119
+ "test/test_yaml_file_wrapper.rb"
106
120
  ]
107
121
  s.homepage = %q{http://github.com/ongaeshi/milkode}
108
122
  s.licenses = ["MIT"]
@@ -123,13 +137,11 @@ Gem::Specification.new do |s|
123
137
  s.add_runtime_dependency(%q<rack>, [">= 1.3.4"])
124
138
  s.add_runtime_dependency(%q<sinatra>, [">= 1.2.6"])
125
139
  s.add_runtime_dependency(%q<launchy>, [">= 0.3.7"])
126
- s.add_runtime_dependency(%q<coderay>, ["= 0.9.8"])
140
+ s.add_runtime_dependency(%q<coderay>, [">= 1.0.5"])
127
141
  s.add_runtime_dependency(%q<thin>, [">= 1.2.10"])
128
142
  s.add_runtime_dependency(%q<archive-zip>, [">= 0.4.0"])
129
143
  s.add_runtime_dependency(%q<haml>, [">= 3.1.2"])
130
144
  s.add_runtime_dependency(%q<sass>, [">= 3.1.3"])
131
- s.add_runtime_dependency(%q<nokogiri>, [">= 1.5.0"])
132
- s.add_runtime_dependency(%q<hpricot>, [">= 0.8.2"])
133
145
  else
134
146
  s.add_dependency(%q<bundler>, ["~> 1.0.0"])
135
147
  s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
@@ -139,13 +151,11 @@ Gem::Specification.new do |s|
139
151
  s.add_dependency(%q<rack>, [">= 1.3.4"])
140
152
  s.add_dependency(%q<sinatra>, [">= 1.2.6"])
141
153
  s.add_dependency(%q<launchy>, [">= 0.3.7"])
142
- s.add_dependency(%q<coderay>, ["= 0.9.8"])
154
+ s.add_dependency(%q<coderay>, [">= 1.0.5"])
143
155
  s.add_dependency(%q<thin>, [">= 1.2.10"])
144
156
  s.add_dependency(%q<archive-zip>, [">= 0.4.0"])
145
157
  s.add_dependency(%q<haml>, [">= 3.1.2"])
146
158
  s.add_dependency(%q<sass>, [">= 3.1.3"])
147
- s.add_dependency(%q<nokogiri>, [">= 1.5.0"])
148
- s.add_dependency(%q<hpricot>, [">= 0.8.2"])
149
159
  end
150
160
  else
151
161
  s.add_dependency(%q<bundler>, ["~> 1.0.0"])
@@ -156,13 +166,11 @@ Gem::Specification.new do |s|
156
166
  s.add_dependency(%q<rack>, [">= 1.3.4"])
157
167
  s.add_dependency(%q<sinatra>, [">= 1.2.6"])
158
168
  s.add_dependency(%q<launchy>, [">= 0.3.7"])
159
- s.add_dependency(%q<coderay>, ["= 0.9.8"])
169
+ s.add_dependency(%q<coderay>, [">= 1.0.5"])
160
170
  s.add_dependency(%q<thin>, [">= 1.2.10"])
161
171
  s.add_dependency(%q<archive-zip>, [">= 0.4.0"])
162
172
  s.add_dependency(%q<haml>, [">= 3.1.2"])
163
173
  s.add_dependency(%q<sass>, [">= 3.1.3"])
164
- s.add_dependency(%q<nokogiri>, [">= 1.5.0"])
165
- s.add_dependency(%q<hpricot>, [">= 0.8.2"])
166
174
  end
167
175
  end
168
176
 
@@ -15,9 +15,6 @@ module Milkode
15
15
  def test_basic
16
16
  CodeRayWrapper.new(JS_SHORT_CODE, "console-dir.js").to_html
17
17
  CodeRayWrapper.new(JS_CODE, "console-dir.js").to_html
18
-
19
- CodeRayWrapper.new(JS_SHORT_CODE, "console-dir.js").to_html_anchor
20
- CodeRayWrapper.new(JS_CODE, "console-dir.js").to_html_anchor
21
18
  end
22
19
  end
23
20
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: milkode
3
3
  version: !ruby/object:Gem::Version
4
- hash: 15
4
+ hash: 13
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 5
9
- - 2
10
- version: 0.5.2
9
+ - 3
10
+ version: 0.5.3
11
11
  platform: ruby
12
12
  authors:
13
13
  - ongaeshi
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2012-03-17 00:00:00 +09:00
18
+ date: 2012-03-24 00:00:00 +09:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -151,14 +151,14 @@ dependencies:
151
151
  version_requirements: &id009 !ruby/object:Gem::Requirement
152
152
  none: false
153
153
  requirements:
154
- - - "="
154
+ - - ">="
155
155
  - !ruby/object:Gem::Version
156
- hash: 43
156
+ hash: 29
157
157
  segments:
158
+ - 1
158
159
  - 0
159
- - 9
160
- - 8
161
- version: 0.9.8
160
+ - 5
161
+ version: 1.0.5
162
162
  requirement: *id009
163
163
  - !ruby/object:Gem::Dependency
164
164
  type: :runtime
@@ -224,38 +224,6 @@ dependencies:
224
224
  - 3
225
225
  version: 3.1.3
226
226
  requirement: *id013
227
- - !ruby/object:Gem::Dependency
228
- type: :runtime
229
- prerelease: false
230
- name: nokogiri
231
- version_requirements: &id014 !ruby/object:Gem::Requirement
232
- none: false
233
- requirements:
234
- - - ">="
235
- - !ruby/object:Gem::Version
236
- hash: 3
237
- segments:
238
- - 1
239
- - 5
240
- - 0
241
- version: 1.5.0
242
- requirement: *id014
243
- - !ruby/object:Gem::Dependency
244
- type: :runtime
245
- prerelease: false
246
- name: hpricot
247
- version_requirements: &id015 !ruby/object:Gem::Requirement
248
- none: false
249
- requirements:
250
- - - ">="
251
- - !ruby/object:Gem::Version
252
- hash: 59
253
- segments:
254
- - 0
255
- - 8
256
- - 2
257
- version: 0.8.2
258
- requirement: *id015
259
227
  description: Line based local source code search engine & grep-command & web-app.
260
228
  email: ongaeshi0621@gmail.com
261
229
  executables:
@@ -288,15 +256,16 @@ files:
288
256
  - lib/milkode/cdweb/app.rb
289
257
  - lib/milkode/cdweb/cli_cdweb.rb
290
258
  - lib/milkode/cdweb/config.ru
259
+ - lib/milkode/cdweb/lib/coderay_html2.rb
291
260
  - lib/milkode/cdweb/lib/coderay_wrapper.rb
292
261
  - lib/milkode/cdweb/lib/command.rb
293
262
  - lib/milkode/cdweb/lib/database.rb
294
263
  - lib/milkode/cdweb/lib/grep.rb
295
264
  - lib/milkode/cdweb/lib/mkurl.rb
296
- - lib/milkode/cdweb/lib/my_nokogiri.rb
297
265
  - lib/milkode/cdweb/lib/query.rb
298
266
  - lib/milkode/cdweb/lib/search_contents.rb
299
267
  - lib/milkode/cdweb/lib/search_files.rb
268
+ - lib/milkode/cdweb/lib/web_setting.rb
300
269
  - lib/milkode/cdweb/public/css/coderay-patch.css
301
270
  - lib/milkode/cdweb/public/css/coderay.css
302
271
  - lib/milkode/cdweb/public/css/milkode.css
@@ -1,34 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
- #
3
- # @file
4
- # @brief
5
- # @author ongaeshi
6
- # @date 2011/12/02
7
-
8
- require 'hpricot'
9
- require 'nokogiri'
10
- require 'milkode/common/util'
11
-
12
- module Hpricot
13
- class Elements
14
- alias_method :at_css, :search
15
- end
16
-
17
- module Traverse
18
- alias_method :at_css, :search
19
- end
20
- end
21
-
22
- module Milkode
23
- class MyNokogiri
24
- def self.HTML(html)
25
- if Util::ruby19?
26
- Nokogiri::HTML(html)
27
- else
28
- Hpricot(html)
29
- end
30
- end
31
- end
32
- end
33
-
34
-