bin/fd in fd-0.3.1 vs bin/fd in fd-0.4.0
- old
+ new
@@ -7,36 +7,41 @@
arguments = OpenStruct.new
arguments.width = 10
options = OptionParser.new do |opts|
- opts.banner = "Usage: #{File.basename __FILE__} [options] file_names"
+ opts.banner = "Usage: #{File.basename __FILE__} [options] [file_names]"
opts.on('-w', '--width=WIDTH [Integer]', Integer, 'Display upto _width_ bytes per row, optional, default is 10') do |width|
arguments.width = width
end
opts.on('-h', '--help', 'Display using this help') do
puts opts
+ puts '', 'When no file names a given fd reads from STDIN.'
exit
end
opts.on('-v', '--version', 'Display version info and quit') do
puts "fd version: #{Fd.version}"
exit
end
end
begin
- ARGV.push('-h') if ARGV.empty?
+ ARGV.push('-h') if ARGV.empty? && ARGF.eof?
options.parse!
rescue OptionParser::InvalidArgument
puts "fd doesn't work, this way:"
options.parse %w[--help]
exit 1
end
file_dumper = Fd.new(arguments.width)
-ARGV.each do |fn|
- file_dumper.dump(fn)
+if ARGV.size.positive?
+ ARGV.each do |fn|
+ file_dumper.dump_file(fn)
+ end
+else
+ file_dumper.dump_stdin(STDIN.read)
end