Milk+ea

Weblog Is My Hobby.

コマンドプロンプトから黄金比計算

Rakefileを使います。 gem install rakeと、ここではgem install win32-clipboardが必要です。

# coding: utf-8
require 'rake'
require 'win32/clipboard'

namespace :calc do
  desc '黄金比を計算'
  task :gold, 'sm0lg', 'size'
  task :gold do |t, args|
    RATIO = 1.618
    type = args.sm0lg if %w(sm lg).index(args.sm0lg)
    size = args.size.to_f

    exit 1 if type.nil?
    if type == 'sm'
      result = (size / RATIO).round
    elsif type == 'lg'
      result = (size * RATIO).round
    end

    p result
    Win32::Clipboard.set_data(result.to_s)
  end

  desc '白銀比を計算'
  task :silver, 'sm0lg', 'size'
  task :silver do |t, args|
    RATIO = 1.414

    type = args.sm0lg if %w(sm lg).index(args.sm0lg)
    size = args.size.to_f

    exit 1 if type.nil?
    if type == 'sm'
      result = (size / RATIO).round
    elsif type == 'lg'
      result = (size * RATIO).round
    end

    p result
    Win32::Clipboard.set_data(result.to_s)
  end
end

共通箇所をまとめたいけどやり方が分からない...

こんな使い方と結果に。(結果はクリップボードに入る)

C:\>rake calc:gold[sm,330]
204

C:\>rake calc:gold[lg,330]
534
20131127045401  
Rakeを
 マスターしたいんだ。