tool/lib/output.rb: Make --color option like GNU coreutils

This commit is contained in:
Nobuyoshi Nakada 2023-08-22 18:11:00 +09:00
parent de4a1ca792
commit 129663c4a8
No known key found for this signature in database
GPG Key ID: 3582D74E1FEE4465

View File

@ -10,12 +10,17 @@ class Output
@vpath = VPath.new
end
COLOR_WHEN = {
'always' => true, 'auto' => nil, 'never' => false,
nil => true, false => false,
}
def def_options(opt)
opt.separator(" Output common options:")
opt.on('-o', '--output=PATH') {|v| @path = v}
opt.on('-t', '--timestamp[=PATH]') {|v| @timestamp = v || true}
opt.on('-c', '--[no-]if-change') {|v| @ifchange = v}
opt.on('--[no-]color') {|v| @color = v}
opt.on('--[no-]color=[WHEN]', COLOR_WHEN.keys) {|v| @color = COLOR_WHEN[v]}
opt.on('--[no-]create-only') {|v| @create_only = v}
opt.on('--[no-]overwrite') {|v| @overwrite = v}
@vpath.def_options(opt)