file-tail 0.1.3 → 0.1.4

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/CHANGES CHANGED
@@ -1,3 +1,9 @@
1
+ 2007-02-08 * 0.1.4 * Renamed rewind method to backward, and wind method to
2
+ forward, because someone already had the good idea to name
3
+ a method IO#rewind, which was overwritten by the mixed in
4
+ File::Tail methods. The old methods are now deprecated and
5
+ will be removed in a new 0.2.x version of the library.
6
+ * Added a bit more of documentation.
1
7
  2005-08-20 * 0.1.3 * Applied LOAD_PATH patch by Daniel Berger, binary mode
2
8
  changes were already in the CVS. Seemed to be like cheating
3
9
  to me, though. ;)
data/README.en CHANGED
@@ -3,6 +3,10 @@ Installation
3
3
 
4
4
  Just type into the command line as root:
5
5
 
6
+ # rake install
7
+
8
+ or
9
+
6
10
  # ruby install.rb
7
11
 
8
12
  Documentation
@@ -10,6 +14,10 @@ Documentation
10
14
 
11
15
  To create the documentation of this module, type
12
16
 
17
+ $ rake doc
18
+
19
+ or
20
+
13
21
  $ ruby make_doc.rb
14
22
 
15
23
  and the API documentation is generated by your rdoc command.
@@ -26,5 +34,5 @@ Florian Frank <flori@ping.de>
26
34
  License
27
35
  =======
28
36
 
29
- GNU General Public License (GPL)
37
+ GNU General Public License (GPL), Version 2
30
38
 
data/Rakefile CHANGED
@@ -1,4 +1,4 @@
1
- # Rakefile for File::Tail -*- ruby -*-
1
+ # vim: set filetype=ruby et sw=2 ts=2:
2
2
 
3
3
  require 'rake/gempackagetask'
4
4
  require 'rbconfig'
@@ -7,20 +7,32 @@ include Config
7
7
 
8
8
  PKG_NAME = 'file-tail'
9
9
  PKG_VERSION = File.read('VERSION').chomp
10
- PKG_FILES = Dir.glob("**/*").delete_if { |item|
11
- item.include?("CVS") or item.include?("pkg")
12
- }
10
+ PKG_FILES = FileList["**/*"].exclude(/pkg|coverage|doc/)
13
11
 
14
12
  desc "Installing library"
15
13
  task :install do
16
- libdir = CONFIG["sitelibdir"]
17
- dest = File.join(libdir, 'file')
18
- install('lib/file/tail.rb', dest)
14
+ ruby 'install.rb'
15
+ end
16
+
17
+ desc "Creating documentation"
18
+ task :doc do
19
+ ruby 'make_doc.rb'
19
20
  end
20
21
 
21
22
  desc "Testing library"
22
23
  task :test do
23
- ruby %{-Ilib tests/test.rb}
24
+ ruby %{-Ilib tests/test_file-tail.rb}
25
+ end
26
+
27
+ desc "Testing library with rcov"
28
+ task :coverage do
29
+ system %{rcov -x '\\btests\/' -Ilib tests/test_file-tail.rb}
30
+ end
31
+
32
+ desc "Removing generated files"
33
+ task :clean do
34
+ rm_rf 'doc'
35
+ rm_rf 'coverage'
24
36
  end
25
37
 
26
38
  spec = Gem::Specification.new do |s|
@@ -30,7 +42,7 @@ spec = Gem::Specification.new do |s|
30
42
  s.name = 'file-tail'
31
43
  s.version = PKG_VERSION
32
44
  s.summary = "File::Tail for Ruby"
33
- s.description = ""
45
+ s.description = "Library to tail files in Ruby"
34
46
 
35
47
  #### Dependencies and requirements.
36
48
 
@@ -46,7 +58,7 @@ spec = Gem::Specification.new do |s|
46
58
  #### Load-time details: library and application (you will need one or both).
47
59
 
48
60
  s.require_path = 'lib' # Use these for libraries.
49
- s.autorequire = 'file/tail'
61
+ #s.autorequire = 'file/tail'
50
62
 
51
63
  #s.bindir = "bin" # Use these for applications.
52
64
  #s.executables = ["bla.rb"]
@@ -56,11 +68,10 @@ spec = Gem::Specification.new do |s|
56
68
 
57
69
  s.has_rdoc = true
58
70
  #s.extra_rdoc_files = rd.rdoc_files.reject { |fn| fn =~ /\.rb$/ }.to_a
59
- #s.rdoc_options <<
60
- # '--title' << 'Rake -- Ruby Make' <<
61
- # '--main' << 'README' <<
71
+ s.rdoc_options <<
72
+ '--title' << 'File::Tail' <<
62
73
  # '--line-numbers'
63
- s.test_files << 'tests/test.rb'
74
+ s.test_files << 'tests/test_file-tail.rb'
64
75
 
65
76
  #### Author and project details.
66
77
 
@@ -74,4 +85,5 @@ Rake::GemPackageTask.new(spec) do |pkg|
74
85
  pkg.need_tar = true
75
86
  pkg.package_files += PKG_FILES
76
87
  end
77
- # vim: set et sw=2 ts=2:
88
+
89
+ task :release => [ :clean, :package ]
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.3
1
+ 0.1.4
data/examples/pager.rb CHANGED
@@ -1,18 +1,19 @@
1
1
  #!/usr/bin/env ruby
2
+ # vim: set et sw=2 ts=2:
2
3
  # A poor man's pager... :)
3
4
 
4
5
  require 'file/tail'
5
6
 
6
7
  filename = ARGV.shift or fail "Usage: #$0 filename [height]"
7
- height = (ARGV.shift || 24).to_i - 1
8
+ height = (ARGV.shift || ENV['LINES'] || 23).to_i - 1
9
+ p height
8
10
 
9
11
  File::Tail::Logfile.open(filename, :break_if_eof => true) do |log|
10
- begin
11
- log.tail(height) { |line| puts line }
12
- print "Press return key to continue!" ; gets
13
- print " "
14
- redo
15
- rescue File::Tail::BreakException
16
- end
12
+ begin
13
+ log.tail(height) { |line| puts line }
14
+ print "Press return key to continue!" ; gets
15
+ print " "
16
+ redo
17
+ rescue File::Tail::BreakException
18
+ end
17
19
  end
18
- # vim: set noet sw=4 ts=4:
data/examples/tail.rb CHANGED
@@ -1,4 +1,5 @@
1
1
  #!/usr/bin/env ruby
2
+ # vim: set et sw=2 ts=2:
2
3
 
3
4
  require 'file/tail'
4
5
 
@@ -6,6 +7,5 @@ filename = ARGV.pop or fail "Usage: #$0 number filename"
6
7
  number = (ARGV.pop || 0).to_i.abs
7
8
 
8
9
  File::Tail::Logfile.open(filename) do |log|
9
- log.rewind(number).tail { |line| puts line }
10
+ log.backward(number).tail { |line| puts line }
10
11
  end
11
- # vim: set noet sw=4 ts=4:
data/lib/file/tail.rb CHANGED
@@ -1,45 +1,79 @@
1
+ #
2
+ # = File::Tail - Tailing files in Ruby
3
+ #
4
+ # == Description
5
+ #
6
+ # This is a small ruby library that allows it to "tail" files in Ruby,
7
+ # including following a file, that still is growing like the unix command 'tail
8
+ # -f' can.
9
+ #
10
+ # == Author
11
+ #
12
+ # Florian Frank mailto:flori@ping.de
13
+ #
14
+ # == License
15
+ #
16
+ # This is free software; you can redistribute it and/or modify it under
17
+ # the terms of the GNU General Public License Version 2 as published by
18
+ # the Free Software Foundation: http://www.gnu.org/copyleft/gpl.html
19
+ #
20
+ # == Download
21
+ #
22
+ # The latest version of <b>File::Tail</b> (file-tail) can be found at
23
+ #
24
+ # http://rubyforge.org/frs/?group_id=393
25
+ #
26
+ # Online Documentation should be located at
27
+ #
28
+ # http://file-tail.rubyforge.org
29
+ #
30
+ # == Usage
31
+ #
1
32
  # File::Tail is a module in the File class. A lightweight class interface for
2
33
  # logfiles can be seen under File::Tail::Logfile.
34
+ #
35
+ # Direct extension of File objects with File::Tail works like that:
36
+ # File.open(filename) do |log|
37
+ # log.extend(File::Tail)
38
+ # log.interval = 10
39
+ # log.backward(10)
40
+ # log.tail { |line| puts line }
41
+ # end
42
+ #
43
+ # It's also possible to mix File::Tail in your own File classes
44
+ # (see also File::Tail::Logfile):
45
+ # class MyFile < File
46
+ # include File::Tail
47
+ # end
48
+ # log = MyFile.new("myfile")
49
+ # log.interval = 10
50
+ # log.backward(10)
51
+ # log.tail { |line| print line }
52
+ #
53
+ # The forward/backward method returns self, so it's possible to chain
54
+ # methods together like that:
55
+ # log.backward(10).tail { |line| puts line }
56
+ #
3
57
  class File
4
-
5
58
  # The File::Tail module can be included in File objects and mixes in
6
- # the wind, rewind and tail methods.
7
- #
8
- # === Usage
9
- # Direct extension of File objects works like that:
10
- # File.open(filename) do |log|
11
- # log.extend(File::Tail)
12
- # log.interval = 10
13
- # log.rewind(10)
14
- # log.tail { |line| puts line }
15
- # end
16
- #
17
- # It's also possible to mix File::Tail in your own File classes
18
- # (see also File::Tail::Logfile):
19
- # class MyFile < File
20
- # include File::Tail
21
- # end
22
- # log = MyFile.new("myfile")
23
- # log.interval = 10
24
- # log.rewind(10)
25
- # log.tail { |line| print line }
26
- #
27
- # The wind/rewind method returns self, so it's possible to chain
28
- # methods together like that:
29
- # log.rewind(10).tail { |line| puts line }
59
+ # the forward, backward and tail methods.
30
60
  module Tail
31
-
32
61
  # This is an easy to use Logfile class that includes
33
62
  # the File::Tail module.
34
63
  #
35
64
  # === Usage
36
65
  # The unix command "tail -10f filename" can be emulated like that:
37
- # File::Tail::Logfile.open(filename, :rewind => 10) do |log|
66
+ # File::Tail::Logfile.open(filename, :backward => 10) do |log|
38
67
  # log.tail { |line| puts line }
39
68
  # end
40
69
  #
70
+ # Or a bit shorter:
71
+ # File::Tail::Logfile.tail(filename, :backward => 10) do |line|
72
+ # puts line
73
+ # end
74
+ #
41
75
  # To skip the first 10 lines of the file do that:
42
- # File::Tail::Logfile.open(filename, :wind => 10) do |log|
76
+ # File::Tail::Logfile.open(filename, :forward => 10) do |log|
43
77
  # log.tail { |line| puts line }
44
78
  # end
45
79
  #
@@ -48,31 +82,34 @@ class File
48
82
  # log.tail(10) { |line| puts line }
49
83
  # end
50
84
  class Logfile < File
51
-
52
85
  include File::Tail
53
86
 
54
87
  # This method creates an File::Tail::Logfile object and
55
88
  # yields to it if a block is given, otherwise it just
56
89
  # returns it. The opts hash takes an option like
57
- # <code>:rewind => 10</code> to rewind
58
- # <code>:wind => 10</code> to wind
59
- # the logfile for 10 lines at the start. The buffersize
60
- # for rewind can be set with the
61
- # <code>:bufsiz => 8192</code> option.
90
+ # * <code>:backward => 10</code> to go backwards
91
+ # * <code>:forward => 10</code> to go forwards
92
+ # in the logfile for 10 lines at the start. The buffersize
93
+ # for going backwards can be set with the
94
+ # * <code>:bufsiz => 8192</code> option.
62
95
  # Every attribute of File::Tail can be set with a
63
96
  # <code>:attributename => value</code> option.
64
- def Logfile.open(filename, opts = {}) # :yields: file
97
+ def self.open(filename, opts = {}) # :yields: file
65
98
  file = new filename
66
99
  opts.each do |o, v|
67
100
  writer = o.to_s + "="
68
101
  file.__send__(writer, v) if file.respond_to? writer
69
102
  end
70
- if opts[:rewind]
71
- (args = []) << opts[:rewind]
103
+ if opts.key?(:wind) or opts.key?(:rewind)
104
+ warn ":wind and :rewind options are deprecated, "\
105
+ "use :forward and :backward instead!"
106
+ end
107
+ if backward = opts[:backward] || opts[:rewind]
108
+ (args = []) << backward
72
109
  args << opt[:bufsiz] if opts[:bufsiz]
73
- file.rewind(*args)
74
- elsif opts[:wind]
75
- file.wind(opts[:wind])
110
+ file.backward(*args)
111
+ elsif forward = opts[:forward] || opts[:wind]
112
+ file.forward(forward)
76
113
  end
77
114
  if block_given?
78
115
  yield file
@@ -81,7 +118,16 @@ class File
81
118
  file
82
119
  end
83
120
  end
84
-
121
+
122
+ # Like open, but yields to every new line encountered in the logfile.
123
+ def self.tail(filename, opts = {})
124
+ if ([ :forward, :backward ] & opts.keys).empty?
125
+ opts[:backward] = 0
126
+ end
127
+ open(filename, opts) do |log|
128
+ log.tail { |line| yield line }
129
+ end
130
+ end
85
131
  end
86
132
 
87
133
  # This is the base class of all exceptions that are raised
@@ -106,7 +152,6 @@ class File
106
152
  # the tailed file, e. g., it was rotated away. The exception
107
153
  # is caught and an attempt to reopen it is made.
108
154
  class ReopenException < TailException
109
-
110
155
  attr_reader :mode
111
156
 
112
157
  # Creates an ReopenException object. The mode defaults to
@@ -118,7 +163,6 @@ class File
118
163
  super(self.class.name)
119
164
  @mode = mode
120
165
  end
121
-
122
166
  end
123
167
 
124
168
  # The maximum interval File::Tail sleeps, before it tries
@@ -160,9 +204,9 @@ class File
160
204
  # just returns if the end of the file is reached.
161
205
  attr_accessor :return_if_eof
162
206
 
163
- # Skip the first <code>n</code> lines of this file. The default is to
164
- # don't skip any lines at all and start at the beginning of this file.
165
- def wind(n = 0)
207
+ # Skip the first <code>n</code> lines of this file. The default is to don't
208
+ # skip any lines at all and start at the beginning of this file.
209
+ def forward(n = 0)
166
210
  seek(0, File::SEEK_SET)
167
211
  while n > 0 and not eof?
168
212
  readline
@@ -171,6 +215,12 @@ class File
171
215
  self
172
216
  end
173
217
 
218
+ # The wind method is deprecated, use forward instead.
219
+ def wind(*args)
220
+ warn "File::Tail#wind method is deprecated, use forward instead"
221
+ forward *args
222
+ end
223
+
174
224
  # Rewind the last <code>n</code> lines of this file, starting
175
225
  # from the end. The default is to start tailing directly from the
176
226
  # end of the file.
@@ -180,7 +230,7 @@ class File
180
230
  # the file backwards. It defaults to the block size of the
181
231
  # filesystem this file belongs to or 8192 bytes if this cannot
182
232
  # be determined.
183
- def rewind(n = 0, bufsiz = nil)
233
+ def backward(n = 0, bufsiz = nil)
184
234
  if n <= 0
185
235
  seek(0, File::SEEK_END)
186
236
  return self
@@ -332,7 +382,7 @@ class File
332
382
  @no_read = 0
333
383
  reopen(path)
334
384
  if mode == :bottom
335
- rewind
385
+ backward
336
386
  end
337
387
  rescue Errno::ESTALE
338
388
  rescue Errno::ENOENT
@@ -353,9 +403,17 @@ class File
353
403
  }
354
404
  $stderr.print h.inspect, "\n"
355
405
  end
356
-
357
406
  end
358
407
 
408
+ # The rewind method is deprecated and will be removed soon, use backward
409
+ # instead. At the moment rewind accidentially overwrites the IO#rewind
410
+ # method, after the removal of the ol rewind mixin method, this will be no
411
+ # longer the case.
412
+ def rewind(*args)
413
+ warn "File::Tail#rewind method is deprecated and will be removed soon, "\
414
+ "use backward instead"
415
+ backward *args
416
+ end
359
417
  end
360
418
 
361
419
  if $0 == __FILE__
@@ -369,7 +427,7 @@ if $0 == __FILE__
369
427
  log.reopen_deleted = true # is default
370
428
  log.reopen_suspicious = true # is default
371
429
  log.suspicious_interval = 20
372
- number >= 0 ? log.rewind(number, 8192) : log.wind(-number)
430
+ number >= 0 ? log.backward(number, 8192) : log.forward(-number)
373
431
  #loop do # grab 5 lines at a time and return
374
432
  # log.tail(5) { |line| puts line }
375
433
  # print "Got 5!\n"
@@ -377,4 +435,4 @@ if $0 == __FILE__
377
435
  log.tail { |line| puts line }
378
436
  end
379
437
  end
380
- # vim: set et sw=2 ts=2:
438
+ # vim: set et sw=2 ts=2:
@@ -14,7 +14,6 @@ require 'thread'
14
14
  Thread.abort_on_exception = true
15
15
 
16
16
  class TC_FileTail < Test::Unit::TestCase
17
-
18
17
  include File::Tail
19
18
 
20
19
  def setup
@@ -29,49 +28,49 @@ class TC_FileTail < Test::Unit::TestCase
29
28
  @in.suspicious_interval = 60
30
29
  end
31
30
 
32
- def test_wind
31
+ def test_forward
33
32
  [ 0, 1, 2, 10, 100 ].each do |lines|
34
- @in.wind(lines)
33
+ @in.forward(lines)
35
34
  assert_equal(100 - lines, count(@in))
36
35
  end
37
- @in.wind(101)
36
+ @in.forward(101)
38
37
  assert_equal(0, count(@in))
39
38
  end
40
39
 
41
- def test_rewind
40
+ def test_backward
42
41
  [ 0, 1, 2, 10, 100 ].each do |lines|
43
- @in.rewind(lines)
42
+ @in.backward(lines)
44
43
  assert_equal(lines, count(@in))
45
44
  end
46
- @in.rewind(101)
45
+ @in.backward(101)
47
46
  assert_equal(100, count(@in))
48
47
  end
49
48
 
50
49
  def test_tail_with_block_without_n
51
50
  timeout(10) do
52
51
  lines = []
53
- @in.rewind(1)
52
+ @in.backward(1)
54
53
  assert_raises(TimeoutError) do
55
54
  timeout(1) { @in.tail { |l| lines << l } }
56
55
  end
57
56
  assert_equal(1, lines.size)
58
57
  #
59
58
  lines = []
60
- @in.rewind(10)
59
+ @in.backward(10)
61
60
  assert_raises(TimeoutError) do
62
61
  timeout(1) { @in.tail { |l| lines << l } }
63
62
  end
64
63
  assert_equal(10, lines.size)
65
64
  #
66
65
  lines = []
67
- @in.rewind(100)
66
+ @in.backward(100)
68
67
  assert_raises(TimeoutError) do
69
68
  timeout(1) { @in.tail { |l| lines << l } }
70
69
  end
71
70
  assert_equal(100, lines.size)
72
71
  #
73
72
  lines = []
74
- @in.rewind(101)
73
+ @in.backward(101)
75
74
  assert_raises(TimeoutError) do
76
75
  timeout(1) { @in.tail { |l| lines << l } }
77
76
  end
@@ -80,24 +79,24 @@ class TC_FileTail < Test::Unit::TestCase
80
79
 
81
80
  def test_tail_with_block_with_n
82
81
  timeout(10) do
83
- @in.rewind(1)
82
+ @in.backward(1)
84
83
  lines = []
85
84
  timeout(1) { @in.tail(0) { |l| lines << l } }
86
85
  assert_equal(0, lines.size)
87
86
  #
88
- @in.rewind(1)
87
+ @in.backward(1)
89
88
  lines = []
90
89
  timeout(1) { @in.tail(1) { |l| lines << l } }
91
90
  assert_equal(1, lines.size)
92
91
  #
93
- @in.rewind(10)
92
+ @in.backward(10)
94
93
  lines = []
95
94
  timeout(1) { @in.tail(10) { |l| lines << l } }
96
95
  assert_equal(10, lines.size)
97
96
  #
98
- @in.rewind(100)
97
+ @in.backward(100)
99
98
  lines = []
100
- @in.rewind(1)
99
+ @in.backward(1)
101
100
  assert_raises(TimeoutError) do
102
101
  timeout(1) { @in.tail(2) { |l| lines << l } }
103
102
  end
@@ -108,24 +107,24 @@ class TC_FileTail < Test::Unit::TestCase
108
107
 
109
108
  def test_tail_without_block_with_n
110
109
  timeout(10) do
111
- @in.rewind(1)
110
+ @in.backward(1)
112
111
  lines = []
113
112
  timeout(1) { lines += @in.tail(0) }
114
113
  assert_equal(0, lines.size)
115
114
  #
116
- @in.rewind(1)
115
+ @in.backward(1)
117
116
  lines = []
118
117
  timeout(1) { lines += @in.tail(1) }
119
118
  assert_equal(1, lines.size)
120
119
  #
121
- @in.rewind(10)
120
+ @in.backward(10)
122
121
  lines = []
123
122
  timeout(1) { lines += @in.tail(10) }
124
123
  assert_equal(10, lines.size)
125
124
  #
126
- @in.rewind(100)
125
+ @in.backward(100)
127
126
  lines = []
128
- @in.rewind(1)
127
+ @in.backward(1)
129
128
  assert_raises(TimeoutError) do
130
129
  timeout(1) { lines += @in.tail(2) }
131
130
  end
@@ -134,7 +133,7 @@ class TC_FileTail < Test::Unit::TestCase
134
133
  end
135
134
 
136
135
  def test_tail_withappend
137
- @in.rewind
136
+ @in.backward
138
137
  lines = []
139
138
  threads = []
140
139
  threads << Thread.new do
@@ -149,7 +148,7 @@ class TC_FileTail < Test::Unit::TestCase
149
148
  end
150
149
 
151
150
  def test_tail_truncated
152
- @in.rewind
151
+ @in.backward
153
152
  lines = []
154
153
  threads = []
155
154
  threads << appender = Thread.new do
@@ -176,7 +175,7 @@ class TC_FileTail < Test::Unit::TestCase
176
175
 
177
176
  def test_tail_remove
178
177
  return if File::PATH_SEPARATOR == ';' # Grmpf! Windows...
179
- @in.rewind
178
+ @in.backward
180
179
  lines = []
181
180
  threads = []
182
181
  threads << appender = Thread.new do
@@ -222,6 +221,5 @@ class TC_FileTail < Test::Unit::TestCase
222
221
  (1..n).each { |x| file << "#{x} #{"A" * 70}\n" }
223
222
  file.flush
224
223
  end
225
-
226
224
  end
227
225
  # vim: set noet sw=2 ts=2:
metadata CHANGED
@@ -1,52 +1,61 @@
1
1
  --- !ruby/object:Gem::Specification
2
- rubygems_version: 0.8.10
2
+ rubygems_version: 0.8.11
3
3
  specification_version: 1
4
4
  name: file-tail
5
5
  version: !ruby/object:Gem::Version
6
- version: 0.1.3
7
- date: 2005-08-20
6
+ version: 0.1.4
7
+ date: 2007-02-08 00:00:00 +01:00
8
8
  summary: File::Tail for Ruby
9
9
  require_paths:
10
- - lib
10
+ - lib
11
11
  email: flori@ping.de
12
12
  homepage: http://file-tail.rubyforge.org
13
13
  rubyforge_project: file-tail
14
- description: ''
15
- autorequire: file/tail
14
+ description: Library to tail files in Ruby
15
+ autorequire:
16
16
  default_executable:
17
17
  bindir: bin
18
18
  has_rdoc: true
19
19
  required_ruby_version: !ruby/object:Gem::Version::Requirement
20
20
  requirements:
21
- -
22
- - ">"
23
- - !ruby/object:Gem::Version
24
- version: 0.0.0
21
+ - - ">"
22
+ - !ruby/object:Gem::Version
23
+ version: 0.0.0
25
24
  version:
26
25
  platform: ruby
26
+ signing_key:
27
+ cert_chain:
27
28
  authors:
28
- - Florian Frank
29
+ - Florian Frank
29
30
  files:
30
- - examples
31
- - examples/tail.rb
32
- - examples/pager.rb
33
- - install.rb
34
- - GPL
35
- - Rakefile
36
- - VERSION
37
- - tests
38
- - tests/test.rb
39
- - CHANGES
40
- - lib
41
- - lib/file
42
- - lib/file/tail.rb
43
- - make_doc.rb
44
- - README.en
45
- test_files:
46
- - tests/test.rb
47
- rdoc_options: []
31
+ - VERSION
32
+ - tests
33
+ - GPL
34
+ - README.en
35
+ - install.rb
36
+ - Rakefile
37
+ - examples
38
+ - lib
39
+ - CHANGES
40
+ - tests/test_file-tail.rb
41
+ - examples/pager.rb
42
+ - examples/tail.rb
43
+ - lib/file
44
+ - lib/file/tail.rb
45
+ test_files: &id001 []
46
+
47
+ rdoc_options:
48
+ - --title
49
+ - File::Tail
50
+ - *id001
51
+ - tests/test_file-tail.rb
48
52
  extra_rdoc_files: []
53
+
49
54
  executables: []
55
+
50
56
  extensions: []
57
+
51
58
  requirements: []
52
- dependencies: []
59
+
60
+ dependencies: []
61
+
data/make_doc.rb DELETED
@@ -1,6 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- $outdir = 'doc/'
4
- puts "Creating documentation in '#$outdir'."
5
- system "rdoc -o #$outdir lib/file/tail.rb"
6
- # vim: set et sw=2 ts=2: