tefil 0.0.0 → 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGES ADDED
@@ -0,0 +1,13 @@
1
+ = vasputils changelog
2
+
3
+ == Master (for 0.0.2)
4
+
5
+ == Version 0.0.1
6
+ * Change indent character from tab to two spaces.
7
+ * Rename textfilter to linesub
8
+ * Add bin/lineescapezsh
9
+ * Add bin/formcolumn
10
+ * Add -g option to bin/linesub
11
+
12
+ == Version 0.0.0
13
+ * Initial release.
data/Gemfile CHANGED
@@ -7,7 +7,8 @@ source "http://rubygems.org"
7
7
  # Include everything needed to run rake, tests, features, etc.
8
8
  group :development do
9
9
  gem "rdoc", "~> 3.12"
10
- gem "bundler", "~> 1.1.3"
10
+ gem "bundler", "~> 1.2.2"
11
11
  gem "jeweler", "~> 1.8.3"
12
12
  gem "simplecov", ">= 0"
13
+ gem "psych", ">= 0"
13
14
  end
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.0
1
+ 0.0.1
data/bin/formcolumn ADDED
@@ -0,0 +1,48 @@
1
+ #! /usr/bin/env ruby
2
+ # coding: utf-8
3
+ #
4
+ # USAGE: formcolumn [options] files ...
5
+
6
+ INPUT_SEPARATOR = /\s+/
7
+
8
+
9
+ require "pp"
10
+ require "optparse"
11
+ require "rubygems"
12
+ require "tefil"
13
+
14
+ # option analysis
15
+ OPTIONS = {:separator => ' '}
16
+ op = OptionParser.new
17
+ op.on("-o" , "--overwrite" , "Overwrite."){ OPTIONS[:overwrite] = true}
18
+ op.on("-s char" , "--separator=char" , "Indicate separator."){|val| OPTIONS[:separator] = val}
19
+ op.parse!(ARGV)
20
+
21
+ module TextFilter
22
+ def self.process_stream(in_io, out_io)
23
+ rows = in_io.readlines.map { |line| line.strip.split(INPUT_SEPARATOR) }
24
+
25
+ #Obtain max length for each column.
26
+ max_lengths = []
27
+ rows.each do |row|
28
+ row.each_with_index do |item, index|
29
+ max_lengths[index] ||= 0
30
+ size = item.size
31
+ max_lengths[index] = size if max_lengths[index] < size
32
+ end
33
+ end
34
+
35
+ #Output
36
+ rows.each do |row|
37
+ new_items = []
38
+ row.each_with_index do |item, index|
39
+ new_items[index] = sprintf("%#{max_lengths[index]}s", item )
40
+ end
41
+ out_io.puts new_items.join(OPTIONS[:separator])
42
+ end
43
+ end
44
+ end
45
+
46
+ OPTIONS[:overwrite] ||= false
47
+
48
+ TextFilter.run(ARGV, OPTIONS[:overwrite])
data/bin/lineedit CHANGED
@@ -18,16 +18,16 @@ op.on("-o" , "--overwrite" , "Overwrite."){ OPTIONS[:overwrite] = true}
18
18
  op.parse!(ARGV)
19
19
 
20
20
  module TextFilter
21
- def self.process_stream(in_io, out_io)
22
- in_io.each do |line|
23
- if OPTIONS[:sort]
24
- out_io.puts line.chomp.split(//).sort.join('')
25
- end
26
- if OPTIONS[:random]
27
- out_io.puts line.chomp.split(//).sort_by{rand}.join('')
28
- end
29
- end
30
- end
21
+ def self.process_stream(in_io, out_io)
22
+ in_io.each do |line|
23
+ if OPTIONS[:sort]
24
+ out_io.puts line.chomp.split(//).sort.join('')
25
+ end
26
+ if OPTIONS[:random]
27
+ out_io.puts line.chomp.split(//).sort_by{rand}.join('')
28
+ end
29
+ end
30
+ end
31
31
  end
32
32
 
33
33
  OPTIONS[:overwrite] ||= false
@@ -1,13 +1,15 @@
1
1
  #! /usr/bin/env ruby
2
2
  # coding: utf-8
3
3
  #
4
- # USAGE: textfilter [options] str0 str1 files ...
4
+ # USAGE: lineescapezsh [options] files ...
5
5
 
6
6
  require "pp"
7
7
  require "optparse"
8
8
  require "rubygems"
9
9
  #gem "tefil"
10
10
  require "tefil.rb"
11
+ gem "builtinextension"
12
+ require "string_escape_zsh"
11
13
 
12
14
  ## option analysis
13
15
  OPTIONS = {}
@@ -15,20 +17,14 @@ op = OptionParser.new
15
17
  op.on("-o" , "--overwrite" , "Overwrite."){ OPTIONS[:overwrite] = true}
16
18
  op.parse!(ARGV)
17
19
 
18
- OLD_PATTERN = ARGV.shift
19
- NEW_STR = ARGV.shift
20
-
21
20
  module TextFilter
22
- def self.process_stream(in_io, out_io)
23
- in_io.each do |line|
24
- out_io.puts line.sub(OLD_PATTERN, NEW_STR)
25
- end
26
- end
21
+ def self.process_stream(in_io, out_io)
22
+ in_io.each do |line|
23
+ out_io.puts line.escape_zsh
24
+ end
25
+ end
27
26
  end
28
27
 
29
28
  OPTIONS[:overwrite] ||= false
30
29
 
31
-
32
- #pp OPTIONS[:overwrite]
33
- #TextFilter.run(ARGV, OPTIONS[:overwrite])
34
30
  TextFilter.run(ARGV, OPTIONS[:overwrite])
data/bin/linesub ADDED
@@ -0,0 +1,36 @@
1
+ #! /usr/bin/env ruby
2
+ # coding: utf-8
3
+ #
4
+ # USAGE: linesub [options] str0 str1 files ...
5
+
6
+ require "pp"
7
+ require "optparse"
8
+ require "rubygems"
9
+ #gem "tefil"
10
+ require "tefil.rb"
11
+
12
+ ## option analysis
13
+ OPTIONS = {}
14
+ op = OptionParser.new
15
+ op.on("-o" , "--overwrite" , "Overwrite."){ OPTIONS[:overwrite] = true}
16
+ op.on("-g" , "--global" , "Globally substitute."){ OPTIONS[:global] = true}
17
+ op.parse!(ARGV)
18
+
19
+ OLD_PATTERN = ARGV.shift
20
+ NEW_STR = ARGV.shift
21
+
22
+ module TextFilter
23
+ def self.process_stream(in_io, out_io)
24
+ in_io.each do |line|
25
+ if OPTIONS[:global]
26
+ out_io.puts line.gsub(OLD_PATTERN, NEW_STR)
27
+ else
28
+ out_io.puts line.sub(OLD_PATTERN, NEW_STR)
29
+ end
30
+ end
31
+ end
32
+ end
33
+
34
+ OPTIONS[:overwrite] ||= false
35
+
36
+ TextFilter.run(ARGV, OPTIONS[:overwrite])
data/lib/tefil.rb CHANGED
@@ -28,55 +28,55 @@ require "tempfile"
28
28
  #
29
29
  module TextFilter
30
30
 
31
- class NotRedefinedMethodError < Exception; end
32
- class TypeError < Exception; end
31
+ class NotRedefinedMethodError < Exception; end
32
+ class TypeError < Exception; end
33
33
 
34
- # 保持している入力ファイル対して、順に処理を実行する。
35
- # filenames.size が 0 ならば STDIN からの入力を待つことになる。
36
- #
37
- # STDIN からの入力だった場合、出力先は必ず STDOUT になる。
38
- # STDIN からの入力ではない、すなわちファイル入力であった場合、
39
- # - overwrite_flag が false ならば STDOUT に出力する。
40
- # - overwrite_flag が true ならば 個々のファイルに上書きする。
41
- #
42
- # Process of each file is defined in 'process_stream' method.
43
- #
44
- def self.run(filenames, overwrite_flag = false)
45
- #p self; exit
46
- if filenames.size == 0
47
- self.process_stream( $stdin, $stdout )
48
- else
49
- #p filenames
50
- filenames.each do |filename|
51
- if overwrite_flag
52
- tempfile = Tempfile.new("tefil", "/tmp")
53
- File.open(filename, "r") do |input_file|
54
- self.process_stream(input_file, tempfile)
55
- end
56
- tempfile.close
57
- tempfile.open
58
- File.open(filename, "w") do |output_file|
59
- tempfile.each { |line| output_file.puts(line) }
60
- end
61
- else
62
- File.open(filename, "r") do |input_file|
63
- self.process_stream(input_file, $stdout)
64
- end
65
- end
66
- end
67
- end
68
- end
34
+ # 保持している入力ファイル対して、順に処理を実行する。
35
+ # filenames.size が 0 ならば STDIN からの入力を待つことになる。
36
+ #
37
+ # STDIN からの入力だった場合、出力先は必ず STDOUT になる。
38
+ # STDIN からの入力ではない、すなわちファイル入力であった場合、
39
+ # - overwrite_flag が false ならば STDOUT に出力する。
40
+ # - overwrite_flag が true ならば 個々のファイルに上書きする。
41
+ #
42
+ # Process of each file is defined in 'process_stream' method.
43
+ #
44
+ def self.run(filenames, overwrite_flag = false)
45
+ #p self; exit
46
+ if filenames.size == 0
47
+ self.process_stream( $stdin, $stdout )
48
+ else
49
+ #p filenames
50
+ filenames.each do |filename|
51
+ if overwrite_flag
52
+ tempfile = Tempfile.new("tefil", "/tmp")
53
+ File.open(filename, "r") do |input_file|
54
+ self.process_stream(input_file, tempfile)
55
+ end
56
+ tempfile.close
57
+ tempfile.open
58
+ File.open(filename, "w") do |output_file|
59
+ tempfile.each { |line| output_file.puts(line) }
60
+ end
61
+ else
62
+ File.open(filename, "r") do |input_file|
63
+ self.process_stream(input_file, $stdout)
64
+ end
65
+ end
66
+ end
67
+ end
68
+ end
69
69
 
70
- private
70
+ private
71
71
 
72
- # Process a file.
73
- # An argument 'in_io' indicates an io (file handle) for input.
74
- # Another argument 'out_io' indicates an io (file handle) for output.
75
- # This method must be redefined in a subclass or be overridden.
76
- # If not redefined, raise an exception TextFilter::NotRedefinedMethodError.
77
- def self.process_stream(in_io, out_io)
78
- raise NotRedefinedMethodError
79
- end
72
+ # Process a file.
73
+ # An argument 'in_io' indicates an io (file handle) for input.
74
+ # Another argument 'out_io' indicates an io (file handle) for output.
75
+ # This method must be redefined in a subclass or be overridden.
76
+ # If not redefined, raise an exception TextFilter::NotRedefinedMethodError.
77
+ def self.process_stream(in_io, out_io)
78
+ raise NotRedefinedMethodError
79
+ end
80
80
 
81
81
  end
82
82
 
data/tefil.gemspec ADDED
@@ -0,0 +1,68 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE DIRECTLY
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = "tefil"
8
+ s.version = "0.0.1"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["ippei94da"]
12
+ s.date = "2013-03-05"
13
+ s.description = "This gem provides a framework of text filter.\n Tefil eneable to make text filter commands which have overwrite option easily.\n "
14
+ s.email = "ippei94da@gmail.com"
15
+ s.executables = ["formcolumn", "lineedit", "lineescapezsh", "linesub"]
16
+ s.extra_rdoc_files = [
17
+ "LICENSE.txt",
18
+ "README.rdoc"
19
+ ]
20
+ s.files = [
21
+ ".document",
22
+ "CHANGES",
23
+ "Gemfile",
24
+ "LICENSE.txt",
25
+ "README.rdoc",
26
+ "Rakefile",
27
+ "VERSION",
28
+ "bin/formcolumn",
29
+ "bin/lineedit",
30
+ "bin/lineescapezsh",
31
+ "bin/linesub",
32
+ "lib/tefil.rb",
33
+ "tefil.gemspec",
34
+ "test/formcolumn_space",
35
+ "test/helper.rb",
36
+ "test/test_tefil.rb"
37
+ ]
38
+ s.homepage = "http://github.com/ippei94da/tefil"
39
+ s.licenses = ["MIT"]
40
+ s.require_paths = ["lib"]
41
+ s.rubygems_version = "1.8.23"
42
+ s.summary = "Basic framework of text filter"
43
+
44
+ if s.respond_to? :specification_version then
45
+ s.specification_version = 3
46
+
47
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
48
+ s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
49
+ s.add_development_dependency(%q<bundler>, ["~> 1.2.2"])
50
+ s.add_development_dependency(%q<jeweler>, ["~> 1.8.3"])
51
+ s.add_development_dependency(%q<simplecov>, [">= 0"])
52
+ s.add_development_dependency(%q<psych>, [">= 0"])
53
+ else
54
+ s.add_dependency(%q<rdoc>, ["~> 3.12"])
55
+ s.add_dependency(%q<bundler>, ["~> 1.2.2"])
56
+ s.add_dependency(%q<jeweler>, ["~> 1.8.3"])
57
+ s.add_dependency(%q<simplecov>, [">= 0"])
58
+ s.add_dependency(%q<psych>, [">= 0"])
59
+ end
60
+ else
61
+ s.add_dependency(%q<rdoc>, ["~> 3.12"])
62
+ s.add_dependency(%q<bundler>, ["~> 1.2.2"])
63
+ s.add_dependency(%q<jeweler>, ["~> 1.8.3"])
64
+ s.add_dependency(%q<simplecov>, [">= 0"])
65
+ s.add_dependency(%q<psych>, [">= 0"])
66
+ end
67
+ end
68
+
@@ -0,0 +1,2 @@
1
+ a b c
2
+ A B CD
data/test/test_tefil.rb CHANGED
@@ -7,141 +7,141 @@ require "tempfile"
7
7
  require "fileutils"
8
8
 
9
9
  module TextFilter
10
- def self.process_stream(in_file, out_file)
11
- results = []
12
- in_file.each do |line|
13
- out_file.puts line.sub('a', 'A')
14
- end
15
- end
10
+ def self.process_stream(in_file, out_file)
11
+ results = []
12
+ in_file.each do |line|
13
+ out_file.puts line.sub('a', 'A')
14
+ end
15
+ end
16
16
  end
17
17
 
18
18
  class TestTefil < Test::Unit::TestCase
19
- TMP00 = "test/tmp00"
20
- TMP01 = "test/tmp01"
21
-
22
- def setup
23
- FileUtils.rm TMP00 if File.exist? TMP00
24
- FileUtils.rm TMP01 if File.exist? TMP01
25
- File.open(TMP00, "w") do |io|
26
- io.puts "abc"
27
- io.puts "def"
28
- end
29
- File.open(TMP01, "w") do |io|
30
- io.puts "abc"
31
- io.puts "def"
32
- io.puts "cab"
33
- end
34
- end
35
-
36
- def teardown
37
- FileUtils.rm TMP00 if File.exist? TMP00
38
- FileUtils.rm TMP01 if File.exist? TMP01
39
- end
40
-
41
- def test_self_run
42
- # Not found
43
- assert_raise(Errno::ENOENT){ TextFilter.run([""]) }
44
- assert_raise(Errno::ENOENT){ TextFilter.run([""], true) }
45
-
46
- # ファイル指定なしで標準入力
47
- $stdin = StringIO.new
48
- $stdin.puts "abc"
49
- $stdin.puts "def"
50
- $stdin.rewind
51
- # stdout
52
- $stdout = StringIO.new
53
- TextFilter.run([], false)
54
- $stdout.rewind
55
- t = $stdout.readlines
56
- assert_equal([ "Abc\n", "def\n" ], t)
57
- $stdout.close
58
-
59
- $stdin = StringIO.new
60
- $stdin.puts "abc"
61
- $stdin.puts "def"
62
- $stdin.rewind
63
- $stdout = StringIO.new
64
- TextFilter.run([], true)
65
- $stdout.rewind
66
- t = $stdout.readlines
67
- assert_equal([ "Abc\n", "def\n" ], t)
68
- $stdout.close
69
-
70
- # 単数のファイルを指定。
71
- # overwrite なし。
72
- setup
73
- $stdout = StringIO.new
74
- TextFilter.run([TMP00])
75
- $stdout.rewind
76
- tmp = $stdout.readlines
77
- assert_equal(["Abc\n", "def\n"], tmp)
78
- $stdout.close
79
- tmp = File.open(TMP00, "r").readlines
80
- assert_equal(["abc\n", "def\n"], tmp)
81
- tmp = File.open(TMP01, "r").readlines
82
- assert_equal(["abc\n", "def\n", "cab\n"], tmp)
83
-
84
- # overwrite あり
85
- setup
86
- $stdout = StringIO.new
87
- TextFilter.run([TMP00], true)
88
- $stdout.rewind
89
- tmp = $stdout.readlines
90
- assert_equal([], tmp)
91
- $stdout.close
92
- tmp = File.open(TMP00, "r").readlines
93
- assert_equal(["Abc\n", "def\n"], tmp)
94
- tmp = File.open(TMP01, "r").readlines
95
- assert_equal(["abc\n", "def\n", "cab\n"], tmp)
96
-
97
- # 複数のファイルを指定。
98
- # overwrite なし。
99
- setup
100
- $stdout = StringIO.new
101
- TextFilter.run([TMP00, TMP01])
102
- $stdout.rewind
103
- tmp = $stdout.readlines
104
- assert_equal(["Abc\n", "def\n", "Abc\n", "def\n", "cAb\n"], tmp)
105
- $stdout.close
106
- tmp = File.open(TMP00, "r").readlines
107
- assert_equal(["abc\n", "def\n"], tmp)
108
- tmp = File.open(TMP01, "r").readlines
109
- assert_equal(["abc\n", "def\n", "cab\n"], tmp)
110
-
111
- # overwrite あり。
112
- setup
113
- $stdout = StringIO.new
114
- TextFilter.run([TMP00, TMP01], true)
115
- $stdout.rewind
116
- stdout = $stdout.readlines
117
- assert_equal([], stdout)
118
- $stdout.close
119
- tmp = File.open(TMP00, "r").readlines
120
- assert_equal(["Abc\n", "def\n"], tmp)
121
- tmp = File.open(TMP01, "r").readlines
122
- assert_equal(["Abc\n", "def\n", "cAb\n"], tmp)
123
-
124
- # グローバル変数の標準出力、標準入力を元に戻す。
125
- $stdout = STDOUT
126
- $stdin = STDIN
127
- end
128
-
129
- def test_textfilter_command
130
- result = `echo "ab" | textfilter a A`
131
- assert_equal("Ab\n", result)
132
-
133
- setup
134
- result = `textfilter a A #{TMP00}`
135
- assert_equal("Abc\ndef\n", result)
136
- str = File.open(TMP00, "r").read
137
- assert_equal("abc\ndef\n", str)
138
-
139
- setup
140
- result = `textfilter -o a A #{TMP00}`
141
- assert_equal("", result)
142
- str = File.open(TMP00, "r").read
143
- assert_equal("Abc\ndef\n", str)
144
- end
19
+ TMP00 = "test/tmp00"
20
+ TMP01 = "test/tmp01"
21
+
22
+ def setup
23
+ FileUtils.rm TMP00 if File.exist? TMP00
24
+ FileUtils.rm TMP01 if File.exist? TMP01
25
+ File.open(TMP00, "w") do |io|
26
+ io.puts "abc"
27
+ io.puts "def"
28
+ end
29
+ File.open(TMP01, "w") do |io|
30
+ io.puts "abc"
31
+ io.puts "def"
32
+ io.puts "cab"
33
+ end
34
+ end
35
+
36
+ def teardown
37
+ FileUtils.rm TMP00 if File.exist? TMP00
38
+ FileUtils.rm TMP01 if File.exist? TMP01
39
+ end
40
+
41
+ def test_self_run
42
+ # Not found
43
+ assert_raise(Errno::ENOENT){ TextFilter.run([""]) }
44
+ assert_raise(Errno::ENOENT){ TextFilter.run([""], true) }
45
+
46
+ # ファイル指定なしで標準入力
47
+ $stdin = StringIO.new
48
+ $stdin.puts "abc"
49
+ $stdin.puts "def"
50
+ $stdin.rewind
51
+ # stdout
52
+ $stdout = StringIO.new
53
+ TextFilter.run([], false)
54
+ $stdout.rewind
55
+ t = $stdout.readlines
56
+ assert_equal([ "Abc\n", "def\n" ], t)
57
+ $stdout.close
58
+
59
+ $stdin = StringIO.new
60
+ $stdin.puts "abc"
61
+ $stdin.puts "def"
62
+ $stdin.rewind
63
+ $stdout = StringIO.new
64
+ TextFilter.run([], true)
65
+ $stdout.rewind
66
+ t = $stdout.readlines
67
+ assert_equal([ "Abc\n", "def\n" ], t)
68
+ $stdout.close
69
+
70
+ # 単数のファイルを指定。
71
+ # overwrite なし。
72
+ setup
73
+ $stdout = StringIO.new
74
+ TextFilter.run([TMP00])
75
+ $stdout.rewind
76
+ tmp = $stdout.readlines
77
+ assert_equal(["Abc\n", "def\n"], tmp)
78
+ $stdout.close
79
+ tmp = File.open(TMP00, "r").readlines
80
+ assert_equal(["abc\n", "def\n"], tmp)
81
+ tmp = File.open(TMP01, "r").readlines
82
+ assert_equal(["abc\n", "def\n", "cab\n"], tmp)
83
+
84
+ # overwrite あり
85
+ setup
86
+ $stdout = StringIO.new
87
+ TextFilter.run([TMP00], true)
88
+ $stdout.rewind
89
+ tmp = $stdout.readlines
90
+ assert_equal([], tmp)
91
+ $stdout.close
92
+ tmp = File.open(TMP00, "r").readlines
93
+ assert_equal(["Abc\n", "def\n"], tmp)
94
+ tmp = File.open(TMP01, "r").readlines
95
+ assert_equal(["abc\n", "def\n", "cab\n"], tmp)
96
+
97
+ # 複数のファイルを指定。
98
+ # overwrite なし。
99
+ setup
100
+ $stdout = StringIO.new
101
+ TextFilter.run([TMP00, TMP01])
102
+ $stdout.rewind
103
+ tmp = $stdout.readlines
104
+ assert_equal(["Abc\n", "def\n", "Abc\n", "def\n", "cAb\n"], tmp)
105
+ $stdout.close
106
+ tmp = File.open(TMP00, "r").readlines
107
+ assert_equal(["abc\n", "def\n"], tmp)
108
+ tmp = File.open(TMP01, "r").readlines
109
+ assert_equal(["abc\n", "def\n", "cab\n"], tmp)
110
+
111
+ # overwrite あり。
112
+ setup
113
+ $stdout = StringIO.new
114
+ TextFilter.run([TMP00, TMP01], true)
115
+ $stdout.rewind
116
+ stdout = $stdout.readlines
117
+ assert_equal([], stdout)
118
+ $stdout.close
119
+ tmp = File.open(TMP00, "r").readlines
120
+ assert_equal(["Abc\n", "def\n"], tmp)
121
+ tmp = File.open(TMP01, "r").readlines
122
+ assert_equal(["Abc\n", "def\n", "cAb\n"], tmp)
123
+
124
+ # グローバル変数の標準出力、標準入力を元に戻す。
125
+ $stdout = STDOUT
126
+ $stdin = STDIN
127
+ end
128
+
129
+ def test_textfilter_command
130
+ #result = `echo "ab" | textfilter a A`
131
+ #assert_equal("Ab\n", result)
132
+
133
+ #setup
134
+ #result = `textfilter a A #{TMP00}`
135
+ #assert_equal("Abc\ndef\n", result)
136
+ #str = File.open(TMP00, "r").read
137
+ #assert_equal("abc\ndef\n", str)
138
+
139
+ #setup
140
+ #result = `textfilter -o a A #{TMP00}`
141
+ #assert_equal("", result)
142
+ #str = File.open(TMP00, "r").read
143
+ #assert_equal("Abc\ndef\n", str)
144
+ end
145
145
 
146
146
  end
147
147
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tefil
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.0
4
+ version: 0.0.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-04-03 00:00:00.000000000 Z
12
+ date: 2013-03-05 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rdoc
@@ -34,7 +34,7 @@ dependencies:
34
34
  requirements:
35
35
  - - ~>
36
36
  - !ruby/object:Gem::Version
37
- version: 1.1.3
37
+ version: 1.2.2
38
38
  type: :development
39
39
  prerelease: false
40
40
  version_requirements: !ruby/object:Gem::Requirement
@@ -42,7 +42,7 @@ dependencies:
42
42
  requirements:
43
43
  - - ~>
44
44
  - !ruby/object:Gem::Version
45
- version: 1.1.3
45
+ version: 1.2.2
46
46
  - !ruby/object:Gem::Dependency
47
47
  name: jeweler
48
48
  requirement: !ruby/object:Gem::Requirement
@@ -75,26 +75,49 @@ dependencies:
75
75
  - - ! '>='
76
76
  - !ruby/object:Gem::Version
77
77
  version: '0'
78
+ - !ruby/object:Gem::Dependency
79
+ name: psych
80
+ requirement: !ruby/object:Gem::Requirement
81
+ none: false
82
+ requirements:
83
+ - - ! '>='
84
+ - !ruby/object:Gem::Version
85
+ version: '0'
86
+ type: :development
87
+ prerelease: false
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
78
94
  description: ! "This gem provides a framework of text filter.\n Tefil eneable to
79
95
  make text filter commands which have overwrite option easily.\n "
80
96
  email: ippei94da@gmail.com
81
97
  executables:
98
+ - formcolumn
82
99
  - lineedit
83
- - textfilter
100
+ - lineescapezsh
101
+ - linesub
84
102
  extensions: []
85
103
  extra_rdoc_files:
86
104
  - LICENSE.txt
87
105
  - README.rdoc
88
106
  files:
89
107
  - .document
108
+ - CHANGES
90
109
  - Gemfile
91
110
  - LICENSE.txt
92
111
  - README.rdoc
93
112
  - Rakefile
94
113
  - VERSION
114
+ - bin/formcolumn
95
115
  - bin/lineedit
96
- - bin/textfilter
116
+ - bin/lineescapezsh
117
+ - bin/linesub
97
118
  - lib/tefil.rb
119
+ - tefil.gemspec
120
+ - test/formcolumn_space
98
121
  - test/helper.rb
99
122
  - test/test_tefil.rb
100
123
  homepage: http://github.com/ippei94da/tefil
@@ -112,7 +135,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
112
135
  version: '0'
113
136
  segments:
114
137
  - 0
115
- hash: -1035133043
138
+ hash: -608691921
116
139
  required_rubygems_version: !ruby/object:Gem::Requirement
117
140
  none: false
118
141
  requirements:
@@ -121,7 +144,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
121
144
  version: '0'
122
145
  requirements: []
123
146
  rubyforge_project:
124
- rubygems_version: 1.8.21
147
+ rubygems_version: 1.8.23
125
148
  signing_key:
126
149
  specification_version: 3
127
150
  summary: Basic framework of text filter