クリップボードを操作する
require "win32/clipboard" include Win32 str = Clipboard.data # クリップボードからデータを取得 str.upcase! Clipboard.set_data( str) # クリップボードに転送 p str # クリップボードのデータを消去 Clipboard.empty
win32/clipboardはhttp://rubyforge.org/projects/win32utilsで入手可能.
gemsって何?フォルダの中を覗いていたら,ここにもclipboard.rbが入っている.もしかしてわざわざ入れなくてもよかったのか…
クリップボードの中身を加工して,またクリップボードに書き戻す.
def untabify(str) tab_size = 2 a = str.split(/(\t)/) a.inject(s='') {|x,y| x << ((y=="\t")? " "*(tab_size-x.size%tab_size): y) } end require "win32/clipboard" include Win32 a = Clipboard.data.split("\n").map {|x| untabify(x)} Clipboard.set_data( a.join("\n") )