。明示的に指示されない限り、1.9.3は:verbose
を行うべきではありません。あなたは、例えば1.9.3 libにmkdir
の実装を見ることができますがあり
def mkdir(list, options = {})
fu_check_options options, OPT_TABLE['mkdir']
list = fu_list(list)
fu_output_message "mkdir #{options[:mode] ? ('-m %03o ' % options[:mode]) : ''}#{list.join ' '}" if options[:verbose]
return if options[:noop]
list.each do |dir|
fu_mkdir dir, options[:mode]
end
end
あなたは:verbose
オプションが明示的に供給されない限り、メッセージが生成されていないことがわかります。
しかし、すべてFileUtils
の方法で:verbose
を有効にするには、あなたのネームスペースにinclude FileUtils::Verbose
を簡単に入れることができます。これは、両方の1.8と1.9ルビーで動作します:
irb(main):001:0> RUBY_VERSION
=> "1.8.7"
irb(main):002:0> include FileUtils::Verbose
=> Object
irb(main):003:0> mkdir 'fooof'
mkdir fooof
=> ["fooof"]
ところで、それはレーキは、すでに1.9.3でこれを行うことかもしれないが、それはそれは1.8.6に1.9.3ではなく何ん理由を説明することになります。私はこれをチェックしなかったが、それは私が考えることができる唯一の説明だ。
Rakeには、Rake::FileUtilsExt
という独自のFileUtils拡張機能があります。このモジュールのフラグはverbose
です。これを有効にするには、単にこれをRakefileの先頭に追加してください:
Rake::FileUtilsExt.verbose(true)
本当に、冗長はRuby 1.9.3のRakefilesのデフォルトです。そして 'include FileUtils :: Verbose'は問題を解決しません。 https://github.com/morgant/tools-osx/pull/10#issuecomment-3457844 –
@David - 私の答えの下にある私の更新を見ます。 – Casper