$VERBOSE=nil def indent s, n = 2 ws = ' ' * n s.gsub %r/^/, ws end template = IO::read 'README.tmpl' samples = '' prompt = '~ > ' libs = Dir['lib/*'].map{|lib| " -r #{ lib } "}.join Dir['sample/*'].sort.each do |sample| samples << "\n" << " <========< #{ sample } >========>" << "\n\n" cmd = "cat #{ sample }" samples << indent(prompt + cmd, 2) << "\n\n" samples << indent(`#{ cmd }`, 4) << "\n" cmd = "ruby -r ./emsg.rb -r ./libgen.rb -r ./lib/autorequire.rb #{ sample }" samples << indent(prompt + cmd, 2) << "\n\n" #cmd = "ruby -r ./emsg.rb -I ./lib #{ libs } #{ sample }" cmd = "ruby -r ./emsg.rb -r ./libgen.rb -r ./lib/autorequire.rb #{ sample }" samples << indent(`#{ cmd } 2>&1`, 4) << "\n" end #samples.gsub! %r/^/, ' ' readme = template.gsub %r/^[\ ]*@samples\s*$/, samples print readme