milkode 0.6.1 → 0.6.2
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/VERSION +1 -1
- data/lib/milkode/findgrep/findgrep.rb +20 -8
- data/milkode.gemspec +3 -2
- data/test/test_findgrep.rb +42 -0
- metadata +5 -4
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.6.
|
1
|
+
0.6.2
|
@@ -479,25 +479,37 @@ EOF
|
|
479
479
|
private :searchData
|
480
480
|
|
481
481
|
def file2data(file)
|
482
|
+
FindGrep::file2lines(file, @option.kcode)
|
483
|
+
end
|
484
|
+
private :file2data
|
485
|
+
|
486
|
+
def self.file2lines(file, kcode)
|
482
487
|
data = file.read
|
483
488
|
|
484
489
|
unless Milkode::Util::ruby19?
|
485
|
-
if (
|
490
|
+
if (kcode != Kconv::NOCONV)
|
486
491
|
file_kcode = Kconv::guess(data)
|
487
492
|
|
488
|
-
if (file_kcode !=
|
489
|
-
#
|
490
|
-
data = data.kconv(
|
493
|
+
if (file_kcode != kcode)
|
494
|
+
# puts "encode!! #{fpath} : #{kcode} <- #{file_kcode}"
|
495
|
+
data = data.kconv(kcode, file_kcode)
|
491
496
|
end
|
492
497
|
end
|
493
498
|
else
|
494
|
-
|
499
|
+
# @memo ファイルエンコーディングに相違が起きている可能性があるため対策
|
500
|
+
# 本当はファイルを開く時にエンコーディングを指定するのが正しい
|
501
|
+
|
502
|
+
# 方法1 : 強制的にバイナリ化
|
503
|
+
# data.force_encoding("Binary")
|
504
|
+
# data = data.kconv(kcode)
|
505
|
+
|
506
|
+
# 方法2 : 入力エンコーディングを強制的に指定
|
507
|
+
data = data.kconv(kcode, Kconv::guess(data))
|
495
508
|
end
|
496
509
|
|
497
|
-
data = data.split(
|
510
|
+
data = data.split($/)
|
498
511
|
end
|
499
|
-
|
500
|
-
|
512
|
+
|
501
513
|
def match?(line)
|
502
514
|
match_datas = []
|
503
515
|
@patternRegexps.each {|v| match_datas << v.match(line)}
|
data/milkode.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{milkode}
|
8
|
-
s.version = "0.6.
|
8
|
+
s.version = "0.6.2"
|
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-04-
|
12
|
+
s.date = %q{2012-04-17}
|
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"]
|
@@ -107,6 +107,7 @@ Gem::Specification.new do |s|
|
|
107
107
|
"test/test_database.rb",
|
108
108
|
"test/test_dbdir.rb",
|
109
109
|
"test/test_dir.rb",
|
110
|
+
"test/test_findgrep.rb",
|
110
111
|
"test/test_gren_util.rb",
|
111
112
|
"test/test_helper.rb",
|
112
113
|
"test/test_ignore_checker.rb",
|
@@ -0,0 +1,42 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
#
|
3
|
+
# @file
|
4
|
+
# @brief
|
5
|
+
# @author ongaeshi
|
6
|
+
# @date 2012/04/15
|
7
|
+
|
8
|
+
require 'test_helper'
|
9
|
+
require 'file_assert'
|
10
|
+
require 'milkode/findgrep/findgrep'
|
11
|
+
|
12
|
+
module FindGrep
|
13
|
+
class TestFindGrep < Test::Unit::TestCase
|
14
|
+
def test_basic
|
15
|
+
|
16
|
+
# 外部エンコーディング
|
17
|
+
# p Encoding.default_external
|
18
|
+
# p $stdout.external_encoding
|
19
|
+
# 内部エンコーディング
|
20
|
+
# p Encoding.default_internal
|
21
|
+
# p $stdout.internal_encoding
|
22
|
+
|
23
|
+
# Kconv::NOCONV
|
24
|
+
# Kconv::SJIS
|
25
|
+
# Kconv::UTF8
|
26
|
+
|
27
|
+
Dir.chdir(File.join(File.dirname(__FILE__))) do
|
28
|
+
File.open('data/.gitignore') do |f|
|
29
|
+
assert_equal '#*.swp', FindGrep::file2lines(f, Kconv::UTF8)[-1]
|
30
|
+
end
|
31
|
+
|
32
|
+
File.open('data/a_project/cdstk.rb') do |f|
|
33
|
+
# assert_equal 'end', FindGrep::file2lines(f, Kconv::UTF8)[-1]
|
34
|
+
assert_equal 'end', FindGrep::file2lines(f, Kconv::SJIS)[-1]
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
|
42
|
+
|
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:
|
4
|
+
hash: 3
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 6
|
9
|
-
-
|
10
|
-
version: 0.6.
|
9
|
+
- 2
|
10
|
+
version: 0.6.2
|
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-04-
|
18
|
+
date: 2012-04-17 00:00:00 +09:00
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|
@@ -324,6 +324,7 @@ files:
|
|
324
324
|
- test/test_database.rb
|
325
325
|
- test/test_dbdir.rb
|
326
326
|
- test/test_dir.rb
|
327
|
+
- test/test_findgrep.rb
|
327
328
|
- test/test_gren_util.rb
|
328
329
|
- test/test_helper.rb
|
329
330
|
- test/test_ignore_checker.rb
|