Tag Archives: clipboard utility

Ruby Line Formatting

I wrote a little utility to turn something like this

this=that,
something_else="something else entirely"

Into the much easier to read

this           = that,
something_else = "something else entirely"

I use it in conjunction with my clipboard utility so I can just copy, run, paste. I mostly use this when I’m working with ColdFusion, so it also works for those pesky cfsets.

Usage: (After copying your target text to your clipboard)

ruby clipboard_format_set.rb

Download It!

PS: I’d love to set some of my scripts up as Eclipse shortcuts so I’ve been toying with the idea of writing an Eclipse plug-in to act as a proxy. I realize you can set up and run “External Tools”, but I have yet to see a way to bind a key. I’d like the plug-in to take care of the “pasting” to save me that extra ctrl-v. Maybe this would make a good New Years Project?

Ruby Clipboard Directory List Utility

I wrote this little script to copy the filenames of a directory into the clipboard a while back and forgot to post about it. I’ve been particularly surprised about how often it’s come in handy for this or that.

 require 'clipboard'

c = Clipboard.new

list = ''

if ARGV.size == 0
	path =  "."
else
	path = ARGV[0]
end

Dir.foreach(path) {
	|file|
	if(file.length > 2)
		list << file << "n"
	end
}

c.set_data list

To use it, simply call run the script with the directory you want copied to your clipboard as an argument!

Download the code!

Ruby Resize Utility

I wanted to demo an ad rotator the other day at work and I wanted to load up a bunch of images of various sizes to make it look legit. It would have taken forever to do it ad by ad, so I wrote a little ruby script to automatically resize all the images in a directory. Then I used my directory listing utility to copy the files into my clipboard. Pasted into the database from there!

(Requires GD2)

Usage:

 r = Resizer.new input_path, output_path, width, height
 r.crop_files

Download it!

Ruby Clipboard Utility

I have a few ruby scripts that I use to make life a little easier at work. Some of said scripts utilize the clipboard. My work machine is windows and my laptop runs Ubuntu. I’m able to use the same scripts on both computers but I have a few qualms with how I’m doing it.

Right now I’ve got classes for gnome and windows, a clipboard wrapper class to be used by my scripts and a basic (and poorly named) OS class I use to determine which class desktop class to use.

First off, the method I’m using to determine OS is…terrible. Currently I’m doing a string comparison in my OS class, but it doesn’t actually tell me which desktop application I’m actually running, so at the moment it’s just a dirty hack but I’m not sure of the preferred way to do it..

def is_linux
  return RUBY_PLATFORM == 'i486-linux'
end

Second, I’m uncomfortable with how I’m importing my desktop specific code in the main clipboard class. Is there a ruby-er way of doing this, or maybe just a smarter way anyone knows of?

class Clipboard
  def initialize
    os = OS.new
    if(os.is_linux)
      require 'clipboard/clipboard_gtk'
      clipboard = GTKClipboard.new
    else
      require 'clipboard/clipboard_win32'
      clipboard = WinClipboard.new
    end
    #other stuff
end

Any help would be greatly appreciated!

Download the code: Clipboard Utility

PS: I realize there’s quite a bit of other stuff I need to do to really get this usable, but you have to start somewhere!