[ruby] windowsのクリップボードの内容をいじる

ふと仕事中に規則性のある文字列を作る必要が出てきたので作ってみた。
linuxならuim-rubyscim-rubyを使えばいいんだけどwindowsの場合は無いので。

今回はwin32Utilsをgemからインストールしてきてirb + win32/clipboardで作ってみた。
基本的なwin32/clipboardの使いかたはこんな感じになっています。

require 'win32/clipboard'
include Win32

Clipboard.data = str

でClipboardにstrを挿入。

Clipboardの内容を呼び出したいときには

Clipboard.data

Clipboardを空にするには

Clipboard.empty

いちいちClipboardと打つのが面倒臭いので次のようなclip.rbを作ってirbからrequireして使うようにした。

require 'win32/clipboard'
include Win32

def get(str)
  Clipboard.data = str
end

def put
  Clipboard.data
end

def erase
  Clipboard.empty
end

これで規則性がある文字列をrubyで生成してそれを貼り付けするだけでOK.
結構便利。win32Utilsはるびまの記事http://jp.rubyist.net/magazine/?0005-RLR
がいいですよ。