module Thor::Actions

def copy_file(source, *args, &block)


copy_file "doc/README"

copy_file "README", "doc/README"

==== Examples

config:: give :verbose => false to not log the status.
destination:: the relative path to the destination root.
source:: the relative path to the source root.
==== Parameters

the destination is not given it's assumed to be equal to the source.
Copies the file from the relative source to the relative destination. If
def copy_file(source, *args, &block)
  config = args.last.is_a?(Hash) ? args.pop : {}
  destination = args.first || source
  source = File.expand_path(find_in_source_paths(source.to_s))
  create_file destination, nil, config do
    content = File.binread(source)
    content = block.call(content) if block
    content
  end
end