Sha256: f28f9f4f6cec4d7b17d12fbbd7d0bc6a76806b5c3958e9cdd3d600ef1f3fa885

Contents?: true

Size: 1.01 KB

Versions: 1

Compression:

Stored size: 1.01 KB

Contents

# frozen-string-literal: true
# bioshogi convert -f ki2 ../../../experiment/katomomo.kif

if $0 == __FILE__
  require "../cli"
end

module Bioshogi
  class Cli
    desc "convert", "一括棋譜フォーマット変換"
    option :format,     type: :string, aliases: "-f", default: "kif"
    option :output_dir, type: :string, aliases: "-o", default: "output"
    def convert(*files)
      files.each do |in_file|
        in_file = Pathname(in_file).expand_path
        info = Parser.file_parse(in_file)
        str = info.public_send("to_#{options[:format]}")
        if options[:output_dir].blank?
          puts str
        else
          dir = Pathname(options[:output_dir]).expand_path
          out_file = dir.join(in_file.basename.sub_ext([".", options[:format]].join))
          FileUtils.mkdir_p(dir)
          out_file.write(str)
          puts "#{in_file} => #{out_file}"
        end
      end
    end
  end
end

if $0 == __FILE__
  Bioshogi::Cli.start(["convert", "-f", "ki2", "../../../experiment/katomomo.kif"])
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
bioshogi-0.0.3 lib/bioshogi/cli/convert.rb