diff options
author | Robby Russell <robby@planetargon.com> | 2011-07-23 08:41:44 -0700 |
---|---|---|
committer | Robby Russell <robby@planetargon.com> | 2011-07-23 08:41:44 -0700 |
commit | 8a102b941f80050a82b26b1e8ac79ffa4cc3a855 (patch) | |
tree | e5ba8557676b72f5284e865bf4e1de5c85e7996b /plugins/cloudapp | |
parent | 3a56297ce8f597631202b6f532cbfb8daa5c537b (diff) | |
parent | 2a64d08889c8df8fe74228d05adfe82d0eb899ed (diff) | |
download | zsh-8a102b941f80050a82b26b1e8ac79ffa4cc3a855.tar.gz zsh-8a102b941f80050a82b26b1e8ac79ffa4cc3a855.tar.bz2 zsh-8a102b941f80050a82b26b1e8ac79ffa4cc3a855.zip |
Merge branch 'master' of github.com:robbyrussell/oh-my-zsh
Diffstat (limited to 'plugins/cloudapp')
-rw-r--r-- | plugins/cloudapp/cloudapp.plugin.zsh | 2 | ||||
-rwxr-xr-x | plugins/cloudapp/cloudapp.rb | 60 |
2 files changed, 62 insertions, 0 deletions
diff --git a/plugins/cloudapp/cloudapp.plugin.zsh b/plugins/cloudapp/cloudapp.plugin.zsh new file mode 100644 index 000000000..99252f690 --- /dev/null +++ b/plugins/cloudapp/cloudapp.plugin.zsh @@ -0,0 +1,2 @@ +#!/bin/zsh +alias cloudapp=$ZSH/plugins/cloudapp/cloudapp.rb diff --git a/plugins/cloudapp/cloudapp.rb b/plugins/cloudapp/cloudapp.rb new file mode 100755 index 000000000..a11cfdb32 --- /dev/null +++ b/plugins/cloudapp/cloudapp.rb @@ -0,0 +1,60 @@ +#!/usr/bin/env ruby +# +# cloudapp +# Zach Holman / @holman +# +# Uploads a file from the command line to CloudApp, drops it into your +# clipboard (on a Mac, at least). +# +# Example: +# +# cloudapp drunk-blake.png +# +# This requires Aaron Russell's cloudapp_api gem: +# +# gem install cloudapp_api +# +# Requires you set your CloudApp credentials in ~/.cloudapp as a simple file of: +# +# email +# password + +require 'rubygems' +begin + require 'cloudapp_api' +rescue LoadError + puts "You need to install cloudapp_api: gem install cloudapp_api" + exit!(1) +end + +config_file = "#{ENV['HOME']}/.cloudapp" +unless File.exist?(config_file) + puts "You need to type your email and password (one per line) into "+ + "`~/.cloudapp`" + exit!(1) +end + +email,password = File.read(config_file).split("\n") + +class HTTParty::Response + # Apparently HTTPOK.ok? IS NOT OKAY WTFFFFFFFFFFUUUUUUUUUUUUUU + # LETS MONKEY PATCH IT I FEEL OKAY ABOUT IT + def ok? ; true end +end + +if ARGV[0].nil? + puts "You need to specify a file to upload." + exit!(1) +end + +CloudApp.authenticate(email,password) +url = CloudApp::Item.create(:upload, {:file => ARGV[0]}).url + +# Say it for good measure. +puts "Uploaded to #{url}." + +# Get the embed link. +url = "#{url}/#{ARGV[0].split('/').last}" + +# Copy it to your (Mac's) clipboard. +`echo '#{url}' | tr -d "\n" | pbcopy` |