cloudapp 0.0.6 → 0.0.7

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile.lock CHANGED
@@ -1,20 +1,18 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- cloudapp (0.0.6)
4
+ cloudapp (0.0.7)
5
5
  addressable
6
6
  faraday (~> 0.8.0.rc2)
7
7
  formatador
8
+ gli
8
9
  leadlight
9
- main
10
10
  typhoeus
11
11
 
12
12
  GEM
13
13
  remote: http://rubygems.org/
14
14
  specs:
15
15
  addressable (2.2.6)
16
- arrayfields (4.7.4)
17
- chronic (0.6.7)
18
16
  crack (0.3.1)
19
17
  diff-lcs (1.1.3)
20
18
  fail-fast (1.0.0)
@@ -22,8 +20,10 @@ GEM
22
20
  multipart-post (~> 1.1)
23
21
  fattr (2.2.1)
24
22
  formatador (0.2.1)
23
+ gli (1.4.0)
25
24
  hookr (1.1.1)
26
25
  fail-fast (= 1.0.0)
26
+ hpricot (0.8.6)
27
27
  leadlight (0.0.3)
28
28
  addressable
29
29
  faraday
@@ -33,16 +33,16 @@ GEM
33
33
  mime-types
34
34
  multi_json
35
35
  link_header (0.0.5)
36
- main (4.8.1)
37
- arrayfields (~> 4.7.4)
38
- chronic (~> 0.6.2)
39
- fattr (~> 2.2.0)
40
- map (~> 5.1.0)
41
- map (5.1.0)
42
36
  mime-types (1.17.2)
43
37
  multi_json (1.0.4)
44
38
  multipart-post (1.1.4)
39
+ mustache (0.99.4)
45
40
  rake (0.9.2.2)
41
+ rdiscount (1.6.8)
42
+ ronn (0.7.3)
43
+ hpricot (>= 0.8.2)
44
+ mustache (>= 0.7.0)
45
+ rdiscount (>= 1.5.8)
46
46
  rspec (2.8.0)
47
47
  rspec-core (~> 2.8.0)
48
48
  rspec-expectations (~> 2.8.0)
@@ -64,6 +64,7 @@ PLATFORMS
64
64
  DEPENDENCIES
65
65
  cloudapp!
66
66
  rake
67
+ ronn
67
68
  rspec
68
69
  vcr (~> 2.0.0.rc1)
69
70
  webmock
data/README.md CHANGED
@@ -16,9 +16,12 @@ _Usage from Ruby is still a work in progress._
16
16
  Experience all the pleasures of sharing with CloudApp now in your terminal. The
17
17
  goal of `cloudapp` is to be simple and Unix-friendly.
18
18
 
19
- ### Installation
19
+ ### Quick Start
20
20
 
21
- Installation is done via RubyGems: `gem install cloudapp`
21
+ gem install cloudapp
22
+ cloudapp --email=EMAIL --password=PASSWORD initconfig
23
+ cloudapp list
24
+ cloudapp bookmark http://douglasadams.com
22
25
 
23
26
  ### Usage
24
27
 
@@ -31,6 +34,7 @@ Installation is done via RubyGems: `gem install cloudapp`
31
34
  Some baseic features that should be added:
32
35
 
33
36
  - Share several files: `cloudapp upload *.png`
37
+ - Create several bookmarks: `cloudapp bookmark http://douglasadams.com http://zombo.com`
34
38
 
35
39
  A little more flare would be swell.
36
40
 
@@ -51,14 +55,17 @@ drops? Bonus points for a light weight daemon that kept everything in sync.
51
55
  There's bound to be a better way to express some of these commands, but you get
52
56
  the picture.
53
57
 
54
- ### Authentication
58
+ ### Security Considerations
55
59
 
56
60
  As of right now, `cloudapp` makes use of
57
- [`main`'s built-in configuration handling][main-config] to store your CloudApp
58
- credentials **in plain text** at `~/.cloudapp/config.yml`. This file will be
59
- created and opened in your `$EDITOR` the first time it's needed.
61
+ [`gli`'s built-in configuration handling][gli-config] to store your CloudApp
62
+ credentials **in plain text** at `~/.cloudapp.rc`. You'll be prompted to run the
63
+ following command if the global `--email` and `--password` options aren't
64
+ provided:
60
65
 
61
- [main-config]: https://github.com/ahoward/main/blob/master/README.erb#L220-232
66
+ cloudapp --email=EMAIL --password=PASSWORD initconfig
67
+
68
+ [gli-config]: https://github.com/davetron5000/gli/wiki/Config
62
69
 
63
70
  ### Harness the Power
64
71
 
@@ -66,15 +73,13 @@ Sure you could copy the new drop's link by piping the output to `pbcopy`, but
66
73
  that's a lot of extra key presses. Instead, try setting this super secret
67
74
  Cloud.app preference:
68
75
 
69
- ```bash
70
- defaults write com.linebreak.CloudAppMacOSX CLUploadShouldCopyExternallyUploadedItems -bool YES
71
- ```
76
+ defaults write com.linebreak.CloudAppMacOSX CLUploadShouldCopyExternallyUploadedItems -bool YES
72
77
 
73
78
  Now after restarting Cloud.app, the link to every new drop shared with your
74
79
  account--even using a tool other than the Mac app--will be copied to your Mac's
75
80
  clipboard. If you're using the [stand-alone version][stand-alone] of Cloud.app
76
81
  and not [the Mac App Store version][mas], use the domain
77
- `com.linebreak.CloudAppMacOSXSparkle`.
82
+ `com.linebreak.CloudAppMacOSXSparkle` instead.
78
83
 
79
84
  [stand-alone]: http://getcloudapp.com/download
80
85
  [mas]: http://itunes.apple.com/us/app/cloud/id417602904?mt=12&ls=1
data/bin/cloudapp CHANGED
@@ -1,94 +1,111 @@
1
1
  #!/usr/bin/env ruby
2
+ $: << File.expand_path(File.dirname(File.realpath(__FILE__)) + '/../lib')
2
3
 
4
+ require 'rubygems'
5
+ require 'gli'
3
6
  require 'formatador'
4
- require 'main'
7
+ require 'pathname'
5
8
 
6
- # Explicitly require yaml because ruby 1.9.2 (and greater?) define YAML which
7
- # causes main to not require it.
8
- require 'yaml'
9
-
10
- require 'cloudapp/identity'
9
+ require 'cloudapp'
11
10
  require 'cloudapp/drop_service'
11
+ require 'cloudapp/identity'
12
12
 
13
- Main do
14
- def identity
15
- CloudApp::Identity.from_config config
16
- end
17
13
 
18
- def service
19
- CloudApp::DropService.as_identity(identity).tap do |service|
20
- service.logger.level = Logger::WARN
21
- end
14
+ def service(global_options)
15
+ identity = CloudApp::Identity.from_config global_options
16
+ CloudApp::DropService.as_identity(identity).tap do |service|
17
+ service.logger.level = Logger::WARN
22
18
  end
19
+ end
23
20
 
24
- config email: 'arthur@dent.com', password: 'towel'
21
+ def check_for_credentials(global_options)
22
+ return unless global_options[:email].nil? and global_options[:password].nil?
25
23
 
26
- def run
27
- puts 'TODO: show help here'
28
- end
24
+ exit_now! [
25
+ 'CloudApp credentials missing. Save them to ~/.cloudapp.rc using:',
26
+ ' cloudapp --email=EMAIL --password=PASSWORD initconfig' ].join("\n"),
27
+ 1
28
+ end
29
29
 
30
- # Bookmark a link: `cloudapp bookmark http://getcloudapp.com`
31
- mode :bookmark do
32
- argument('url') { cast :uri }
33
30
 
34
- def url
35
- params[:url].value
36
- end
31
+ include GLI
37
32
 
38
- def run
39
- Formatador.display "Bookmarking #{ url }..."
33
+ program_desc 'All the pleasures of CloudApp now at your terminal'
34
+ version CloudApp::VERSION
35
+ config_file '.cloudapp.rc'
40
36
 
41
- response = service.create url: url
42
- Formatador.display_line response.fetch 'url'
43
- end
44
- end
37
+ desc 'CloudApp account email'
38
+ arg_name 'email'
39
+ flag :email
45
40
 
46
- # Upload a file: `cloudapp upload screenshot.png`
47
- mode :upload do
48
- argument('file') { cast :pathname }
41
+ desc 'CloudApp account password'
42
+ arg_name 'password'
43
+ flag :password
49
44
 
50
- def file
51
- params[:file].value
52
- end
45
+ # c.desc 'Format of the output (default: pretty for TTY, csv otherwise)'
46
+ # c.arg_name 'csv|pretty'
47
+ # c.flag [:f, :format]
53
48
 
54
- def run
55
- Formatador.display "Uploading #{ file }..."
49
+ desc 'Create a bookmark to each URL'
50
+ arg_name '[url...]'
51
+ command [:bookmark, :shorten] do |c|
52
+ c.action do |global_options, options, urls|
53
+ check_for_credentials global_options
56
54
 
57
- response = service.create path: file
58
- Formatador.display_line response.fetch 'url'
59
- end
55
+ url = URI.parse urls.first
56
+
57
+ Formatador.display "Bookmarking #{ url }..."
58
+ response = service(global_options).create url: url
59
+ Formatador.display_line response.fetch 'url'
60
60
  end
61
+ end
61
62
 
62
- # List newest drops: `cloudapp list [--count=5]`
63
- mode :list do
64
- option 'count', 'n' do
65
- argument :optional
66
- cast :integer
67
- default 20
68
- end
63
+ desc 'Upload each file'
64
+ arg_name '[file...]'
65
+ command :upload do |c|
66
+ c.action do |global_options, options, files|
67
+ check_for_credentials global_options
68
+
69
+ file = Pathname.new files.first
70
+
71
+ Formatador.display "Uploading #{ file }..."
72
+ response = service(global_options).create path: file
73
+ Formatador.display_line response.fetch 'url'
74
+ end
75
+ end
76
+
77
+ desc 'List your latest drops'
78
+ command [:list, :ls] do |c|
79
+
80
+ c.desc 'Number of drops to display'
81
+ c.arg_name 'count'
82
+ c.default_value '20'
83
+ c.flag :n, :count
69
84
 
70
- def run
71
- count = params[:count].value
72
- drops = service.drops count
85
+ c.action do |global_options, options, args|
86
+ check_for_credentials global_options
73
87
 
74
- name_width = drops.map {|drop| drop['name'].to_s.size }.max
75
- views_width = [ 5, drops.map {|drop| drop['view_counter'].to_s.size }.max ].max
76
- link_width = drops.map {|drop| drop['url'].size }.max
88
+ count = options[:count].to_i
89
+ drops = service(global_options).drops count
77
90
 
78
- header = [ "[bold]#{ 'Name' .ljust(name_width) }[/]",
79
- "[bold]#{ 'Link' .ljust(link_width) }[/]",
80
- "[bold]#{ 'Views'.center(views_width) }[/]" ].join(' ')
81
- Formatador.display_line header
91
+ name_width = drops.map {|drop| drop['name'].to_s.size }.max
92
+ views_width = [ 5, drops.map {|drop| drop['view_counter'].to_s.size }.max ].max
93
+ link_width = drops.map {|drop| drop['url'].size }.max
82
94
 
83
- lines = drops.map do |drop|
84
- [ drop['name'].to_s.ljust(name_width),
85
- drop['url'],
86
- drop['view_counter'].to_s.center(views_width)
87
- ].join ' '
88
- end
95
+ header = [ "[bold]#{ 'Name' .ljust(name_width) }[/]",
96
+ "[bold]#{ 'Link' .ljust(link_width) }[/]",
97
+ "[bold]#{ 'Views'.center(views_width) }[/]" ].join(' ')
98
+ Formatador.display_line header
89
99
 
90
- Formatador.display_lines lines
100
+ lines = drops.map do |drop|
101
+ [ drop['name'].to_s.ljust(name_width),
102
+ drop['url'],
103
+ drop['view_counter'].to_s.center(views_width)
104
+ ].join ' '
91
105
  end
92
- end
93
106
 
107
+ Formatador.display_lines lines
108
+ end
94
109
  end
110
+
111
+ exit GLI.run(ARGV)
data/cloudapp.gemspec CHANGED
@@ -13,8 +13,8 @@ Gem::Specification.new do |s|
13
13
  ## If your rubyforge_project name is different, then edit it and comment out
14
14
  ## the sub! line in the Rakefile
15
15
  s.name = 'cloudapp'
16
- s.version = '0.0.6'
17
- s.date = '2012-02-06'
16
+ s.version = '0.0.7'
17
+ s.date = '2012-02-07'
18
18
  s.rubyforge_project = 'cloudapp'
19
19
 
20
20
  ## Make sure your summary is short. The description may be as long
@@ -46,13 +46,14 @@ Gem::Specification.new do |s|
46
46
  s.add_dependency 'addressable'
47
47
  s.add_dependency 'faraday', '~> 0.8.0.rc2'
48
48
  s.add_dependency 'formatador'
49
+ s.add_dependency 'gli'
49
50
  s.add_dependency 'leadlight'
50
- s.add_dependency 'main'
51
51
  s.add_dependency 'typhoeus'
52
52
 
53
53
  ## List your development dependencies here. Development dependencies are
54
54
  ## those that are only needed during development
55
55
  s.add_development_dependency 'rake'
56
+ s.add_development_dependency 'ronn'
56
57
  s.add_development_dependency 'rspec'
57
58
  s.add_development_dependency 'vcr', '~> 2.0.0.rc1'
58
59
  s.add_development_dependency 'webmock'
@@ -73,6 +74,9 @@ Gem::Specification.new do |s|
73
74
  lib/cloudapp/digestable_typhoeus.rb
74
75
  lib/cloudapp/drop_service.rb
75
76
  lib/cloudapp/identity.rb
77
+ man/cloudapp.1
78
+ man/cloudapp.1.html
79
+ man/cloudapp.1.ronn
76
80
  spec/cassettes/CloudApp_DropService/_create/creates_a_bookmark.yml
77
81
  spec/cassettes/CloudApp_DropService/_create/creates_a_bookmark_with_a_name.yml
78
82
  spec/cassettes/CloudApp_DropService/_create/creates_a_file.yml
data/lib/cloudapp.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module CloudApp
2
- VERSION = '0.0.6'
2
+ VERSION = '0.0.7'
3
3
  end
data/man/cloudapp.1 ADDED
@@ -0,0 +1,103 @@
1
+ .\" generated with Ronn/v0.7.3
2
+ .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
+ .
4
+ .TH "CLOUDAPP" "1" "February 2012" "" ""
5
+ .
6
+ .SH "NAME"
7
+ \fBcloudapp\fR \- All the pleasures of CloudApp now at your terminal
8
+ .
9
+ .SH "SYNOPSIS"
10
+ .
11
+ .nf
12
+
13
+ cloudapp [\-\-email=<email>] [\-\-password=<password>] <command> [<args>]
14
+ .
15
+ .fi
16
+ .
17
+ .SH "DESCRIPTION"
18
+ \fBcloudapp\fR is a simple, Unix\-friendly tool for CloudApp meant to augment the Mac and Web apps\. Sometimes it\'s more convenient to share without leaving the terminal and other times it\'s the only tool available\.
19
+ .
20
+ .SH "OPTIONS"
21
+ .
22
+ .TP
23
+ \fB\-\-email=<email>\fR
24
+ CloudApp account email address
25
+ .
26
+ .TP
27
+ \fB\-\-password=<password>\fR
28
+ CloudApp account password
29
+ .
30
+ .SH "EXAMPLES"
31
+ List the latest 20 drops:
32
+ .
33
+ .IP "" 4
34
+ .
35
+ .nf
36
+
37
+ $ cloudapp list
38
+ Name Link Views
39
+ favicon\.ico http://cl\.ly/0P2\.\.\. 2
40
+ The Hitchhiker\'s Guide http://cl\.ly/3I2\.\.\. 3
41
+ CloudApp 1\.5 Released http://cl\.ly/0s1\.\.\. 3
42
+ Cover\.jpeg http://cl\.ly/1x2\.\.\. 0
43
+ Chapter 1\.md http://cl\.ly/3U3\.\.\. 6
44
+ CloudApp http://cl\.ly/2O2\.\.\. 2
45
+ \.\.\.
46
+ .
47
+ .fi
48
+ .
49
+ .IP "" 0
50
+ .
51
+ .P
52
+ List the latest 5 drops:
53
+ .
54
+ .IP "" 4
55
+ .
56
+ .nf
57
+
58
+ cloudapp list \-\-count=5
59
+ $ cloudapp list \-\-count=5
60
+ Name Link Views
61
+ favicon\.ico http://cl\.ly/0P2\.\.\. 2
62
+ The Hitchhiker\'s Guide http://cl\.ly/3I2\.\.\. 3
63
+ CloudApp 1\.5 Released http://cl\.ly/0s1\.\.\. 3
64
+ Cover\.jpeg http://cl\.ly/1x2\.\.\. 0
65
+ Chapter 1\.md http://cl\.ly/3U3\.\.\. 6
66
+ .
67
+ .fi
68
+ .
69
+ .IP "" 0
70
+ .
71
+ .P
72
+ Share a new bookmark to "http://douglasadams\.com":
73
+ .
74
+ .IP "" 4
75
+ .
76
+ .nf
77
+
78
+ $ cloudapp bookmark http://douglasadams\.com
79
+ Bookmarking http://douglasadams\.com\.\.\. http://cl\.ly/1y0j403g3D0c0X1G0R3m
80
+ .
81
+ .fi
82
+ .
83
+ .IP "" 0
84
+ .
85
+ .P
86
+ Share the file "screenshot\.png":
87
+ .
88
+ .IP "" 4
89
+ .
90
+ .nf
91
+
92
+ $ cloudapp upload screenshot\.png
93
+ Uploading screenshot\.png\.\.\. http://cl\.ly/040u2o3X1w0z1z3n2T04
94
+ .
95
+ .fi
96
+ .
97
+ .IP "" 0
98
+ .
99
+ .SH "SECURITY CONSIDERATIONS"
100
+ As of right now, \fBcloudapp\fR makes use of \fBgli\fR\'s built\-in configuration handling \fIhttps://github\.com/davetron5000/gli/wiki/Config\fR to store your CloudApp credentials \fBin plain text\fR at \fB~/\.cloudapp\.rc\fR\.
101
+ .
102
+ .SH "LICENSE"
103
+ \fBcloudapp\fR is distributed under the MIT license \fIhttps://github\.com/cloudapp/cloudapp/blob/master/MIT\-LICENSE\fR\.
@@ -0,0 +1,159 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta http-equiv='content-type' value='text/html;charset=utf8'>
5
+ <meta name='generator' value='Ronn/v0.7.3 (http://github.com/rtomayko/ronn/tree/0.7.3)'>
6
+ <title>cloudapp(1) - All the pleasures of CloudApp now at your terminal</title>
7
+ <style type='text/css' media='all'>
8
+ /* style: man */
9
+ body#manpage {margin:0}
10
+ .mp {max-width:100ex;padding:0 9ex 1ex 4ex}
11
+ .mp p,.mp pre,.mp ul,.mp ol,.mp dl {margin:0 0 20px 0}
12
+ .mp h2 {margin:10px 0 0 0}
13
+ .mp > p,.mp > pre,.mp > ul,.mp > ol,.mp > dl {margin-left:8ex}
14
+ .mp h3 {margin:0 0 0 4ex}
15
+ .mp dt {margin:0;clear:left}
16
+ .mp dt.flush {float:left;width:8ex}
17
+ .mp dd {margin:0 0 0 9ex}
18
+ .mp h1,.mp h2,.mp h3,.mp h4 {clear:left}
19
+ .mp pre {margin-bottom:20px}
20
+ .mp pre+h2,.mp pre+h3 {margin-top:22px}
21
+ .mp h2+pre,.mp h3+pre {margin-top:5px}
22
+ .mp img {display:block;margin:auto}
23
+ .mp h1.man-title {display:none}
24
+ .mp,.mp code,.mp pre,.mp tt,.mp kbd,.mp samp,.mp h3,.mp h4 {font-family:monospace;font-size:14px;line-height:1.42857142857143}
25
+ .mp h2 {font-size:16px;line-height:1.25}
26
+ .mp h1 {font-size:20px;line-height:2}
27
+ .mp {text-align:justify;background:#fff}
28
+ .mp,.mp code,.mp pre,.mp pre code,.mp tt,.mp kbd,.mp samp {color:#131211}
29
+ .mp h1,.mp h2,.mp h3,.mp h4 {color:#030201}
30
+ .mp u {text-decoration:underline}
31
+ .mp code,.mp strong,.mp b {font-weight:bold;color:#131211}
32
+ .mp em,.mp var {font-style:italic;color:#232221;text-decoration:none}
33
+ .mp a,.mp a:link,.mp a:hover,.mp a code,.mp a pre,.mp a tt,.mp a kbd,.mp a samp {color:#0000ff}
34
+ .mp b.man-ref {font-weight:normal;color:#434241}
35
+ .mp pre {padding:0 4ex}
36
+ .mp pre code {font-weight:normal;color:#434241}
37
+ .mp h2+pre,h3+pre {padding-left:0}
38
+ ol.man-decor,ol.man-decor li {margin:3px 0 10px 0;padding:0;float:left;width:33%;list-style-type:none;text-transform:uppercase;color:#999;letter-spacing:1px}
39
+ ol.man-decor {width:100%}
40
+ ol.man-decor li.tl {text-align:left}
41
+ ol.man-decor li.tc {text-align:center;letter-spacing:4px}
42
+ ol.man-decor li.tr {text-align:right;float:right}
43
+ </style>
44
+ <style type='text/css' media='all'>
45
+ /* style: toc */
46
+ .man-navigation {display:block !important;position:fixed;top:0;left:113ex;height:100%;width:100%;padding:48px 0 0 0;border-left:1px solid #dbdbdb;background:#eee}
47
+ .man-navigation a,.man-navigation a:hover,.man-navigation a:link,.man-navigation a:visited {display:block;margin:0;padding:5px 2px 5px 30px;color:#999;text-decoration:none}
48
+ .man-navigation a:hover {color:#111;text-decoration:underline}
49
+ </style>
50
+ </head>
51
+ <!--
52
+ The following styles are deprecated and will be removed at some point:
53
+ div#man, div#man ol.man, div#man ol.head, div#man ol.man.
54
+
55
+ The .man-page, .man-decor, .man-head, .man-foot, .man-title, and
56
+ .man-navigation should be used instead.
57
+ -->
58
+ <body id='manpage'>
59
+ <div class='mp' id='man'>
60
+
61
+ <div class='man-navigation' style='display:none'>
62
+ <a href="#NAME">NAME</a>
63
+ <a href="#SYNOPSIS">SYNOPSIS</a>
64
+ <a href="#DESCRIPTION">DESCRIPTION</a>
65
+ <a href="#OPTIONS">OPTIONS</a>
66
+ <a href="#EXAMPLES">EXAMPLES</a>
67
+ <a href="#SECURITY-CONSIDERATIONS">SECURITY CONSIDERATIONS</a>
68
+ <a href="#LICENSE">LICENSE</a>
69
+ </div>
70
+
71
+ <ol class='man-decor man-head man head'>
72
+ <li class='tl'>cloudapp(1)</li>
73
+ <li class='tc'></li>
74
+ <li class='tr'>cloudapp(1)</li>
75
+ </ol>
76
+
77
+ <h2 id="NAME">NAME</h2>
78
+ <p class="man-name">
79
+ <code>cloudapp</code> - <span class="man-whatis">All the pleasures of CloudApp now at your terminal</span>
80
+ </p>
81
+
82
+ <h2 id="SYNOPSIS">SYNOPSIS</h2>
83
+
84
+ <pre><code>cloudapp [--email=&lt;email>] [--password=&lt;password>] &lt;command> [&lt;args>]
85
+ </code></pre>
86
+
87
+ <h2 id="DESCRIPTION">DESCRIPTION</h2>
88
+
89
+ <p><code>cloudapp</code> is a simple, Unix-friendly tool for CloudApp meant to augment the Mac
90
+ and Web apps. Sometimes it's more convenient to share without leaving the
91
+ terminal and other times it's the only tool available.</p>
92
+
93
+ <h2 id="OPTIONS">OPTIONS</h2>
94
+
95
+ <dl>
96
+ <dt><code>--email=&lt;email></code></dt><dd><p>CloudApp account email address</p></dd>
97
+ <dt><code>--password=&lt;password></code></dt><dd><p>CloudApp account password</p></dd>
98
+ </dl>
99
+
100
+
101
+ <h2 id="EXAMPLES">EXAMPLES</h2>
102
+
103
+ <p>List the latest 20 drops:</p>
104
+
105
+ <pre><code>$ cloudapp list
106
+ Name Link Views
107
+ favicon.ico http://cl.ly/0P2... 2
108
+ The Hitchhiker's Guide http://cl.ly/3I2... 3
109
+ CloudApp 1.5 Released http://cl.ly/0s1... 3
110
+ Cover.jpeg http://cl.ly/1x2... 0
111
+ Chapter 1.md http://cl.ly/3U3... 6
112
+ CloudApp http://cl.ly/2O2... 2
113
+ ...
114
+ </code></pre>
115
+
116
+ <p>List the latest 5 drops:</p>
117
+
118
+ <pre><code>cloudapp list --count=5
119
+ $ cloudapp list --count=5
120
+ Name Link Views
121
+ favicon.ico http://cl.ly/0P2... 2
122
+ The Hitchhiker's Guide http://cl.ly/3I2... 3
123
+ CloudApp 1.5 Released http://cl.ly/0s1... 3
124
+ Cover.jpeg http://cl.ly/1x2... 0
125
+ Chapter 1.md http://cl.ly/3U3... 6
126
+ </code></pre>
127
+
128
+ <p>Share a new bookmark to "http://douglasadams.com":</p>
129
+
130
+ <pre><code>$ cloudapp bookmark http://douglasadams.com
131
+ Bookmarking http://douglasadams.com... http://cl.ly/1y0j403g3D0c0X1G0R3m
132
+ </code></pre>
133
+
134
+ <p>Share the file "screenshot.png":</p>
135
+
136
+ <pre><code>$ cloudapp upload screenshot.png
137
+ Uploading screenshot.png... http://cl.ly/040u2o3X1w0z1z3n2T04
138
+ </code></pre>
139
+
140
+ <h2 id="SECURITY-CONSIDERATIONS">SECURITY CONSIDERATIONS</h2>
141
+
142
+ <p>As of right now, <code>cloudapp</code> makes use of
143
+ <a href="https://github.com/davetron5000/gli/wiki/Config"><code>gli</code>'s built-in configuration handling</a> to store your CloudApp
144
+ credentials <strong>in plain text</strong> at <code>~/.cloudapp.rc</code>.</p>
145
+
146
+ <h2 id="LICENSE">LICENSE</h2>
147
+
148
+ <p><code>cloudapp</code> is distributed under the <a href="https://github.com/cloudapp/cloudapp/blob/master/MIT-LICENSE">MIT license</a>.</p>
149
+
150
+
151
+ <ol class='man-decor man-foot man foot'>
152
+ <li class='tl'></li>
153
+ <li class='tc'>February 2012</li>
154
+ <li class='tr'>cloudapp(1)</li>
155
+ </ol>
156
+
157
+ </div>
158
+ </body>
159
+ </html>
@@ -0,0 +1,71 @@
1
+ cloudapp(1) -- All the pleasures of CloudApp now at your terminal
2
+ =================================================================
3
+
4
+ ## SYNOPSIS
5
+
6
+ cloudapp [--email=<email>] [--password=<password>] <command> [<args>]
7
+
8
+ ## DESCRIPTION
9
+
10
+ `cloudapp` is a simple, Unix-friendly tool for CloudApp meant to augment the Mac
11
+ and Web apps. Sometimes it's more convenient to share without leaving the
12
+ terminal and other times it's the only tool available.
13
+
14
+ ## OPTIONS
15
+
16
+ * `--email=<email>`:
17
+ CloudApp account email address
18
+
19
+ * `--password=<password>`:
20
+ CloudApp account password
21
+
22
+ ## EXAMPLES
23
+
24
+ List the latest 20 drops:
25
+
26
+ $ cloudapp list
27
+ Name Link Views
28
+ favicon.ico http://cl.ly/0P2... 2
29
+ The Hitchhiker's Guide http://cl.ly/3I2... 3
30
+ CloudApp 1.5 Released http://cl.ly/0s1... 3
31
+ Cover.jpeg http://cl.ly/1x2... 0
32
+ Chapter 1.md http://cl.ly/3U3... 6
33
+ CloudApp http://cl.ly/2O2... 2
34
+ ...
35
+
36
+ List the latest 5 drops:
37
+
38
+ cloudapp list --count=5
39
+ $ cloudapp list --count=5
40
+ Name Link Views
41
+ favicon.ico http://cl.ly/0P2... 2
42
+ The Hitchhiker's Guide http://cl.ly/3I2... 3
43
+ CloudApp 1.5 Released http://cl.ly/0s1... 3
44
+ Cover.jpeg http://cl.ly/1x2... 0
45
+ Chapter 1.md http://cl.ly/3U3... 6
46
+
47
+ Share a new bookmark to "http://douglasadams.com":
48
+
49
+ $ cloudapp bookmark http://douglasadams.com
50
+ Bookmarking http://douglasadams.com... http://cl.ly/1y0j403g3D0c0X1G0R3m
51
+
52
+ Share the file "screenshot.png":
53
+
54
+ $ cloudapp upload screenshot.png
55
+ Uploading screenshot.png... http://cl.ly/040u2o3X1w0z1z3n2T04
56
+
57
+
58
+ ## SECURITY CONSIDERATIONS
59
+
60
+ As of right now, `cloudapp` makes use of
61
+ [`gli`'s built-in configuration handling][gli-config] to store your CloudApp
62
+ credentials **in plain text** at `~/.cloudapp.rc`.
63
+
64
+ [gli-config]: https://github.com/davetron5000/gli/wiki/Config
65
+
66
+
67
+ ## LICENSE
68
+
69
+ `cloudapp` is distributed under the [MIT license][mit-license].
70
+
71
+ [mit-license]: https://github.com/cloudapp/cloudapp/blob/master/MIT-LICENSE
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cloudapp
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.0.7
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-02-06 00:00:00.000000000 Z
12
+ date: 2012-02-07 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: addressable
16
- requirement: &70198765957800 !ruby/object:Gem::Requirement
16
+ requirement: &70126099885240 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70198765957800
24
+ version_requirements: *70126099885240
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: faraday
27
- requirement: &70198765956240 !ruby/object:Gem::Requirement
27
+ requirement: &70126099884660 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: 0.8.0.rc2
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *70198765956240
35
+ version_requirements: *70126099884660
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: formatador
38
- requirement: &70198765954800 !ruby/object:Gem::Requirement
38
+ requirement: &70126099884240 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0'
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *70198765954800
46
+ version_requirements: *70126099884240
47
47
  - !ruby/object:Gem::Dependency
48
- name: leadlight
49
- requirement: &70198765953100 !ruby/object:Gem::Requirement
48
+ name: gli
49
+ requirement: &70126099883780 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: '0'
55
55
  type: :runtime
56
56
  prerelease: false
57
- version_requirements: *70198765953100
57
+ version_requirements: *70126099883780
58
58
  - !ruby/object:Gem::Dependency
59
- name: main
60
- requirement: &70198765952100 !ruby/object:Gem::Requirement
59
+ name: leadlight
60
+ requirement: &70126099883360 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ! '>='
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: '0'
66
66
  type: :runtime
67
67
  prerelease: false
68
- version_requirements: *70198765952100
68
+ version_requirements: *70126099883360
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: typhoeus
71
- requirement: &70198765950700 !ruby/object:Gem::Requirement
71
+ requirement: &70126099882940 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ! '>='
@@ -76,10 +76,21 @@ dependencies:
76
76
  version: '0'
77
77
  type: :runtime
78
78
  prerelease: false
79
- version_requirements: *70198765950700
79
+ version_requirements: *70126099882940
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: rake
82
- requirement: &70198765949360 !ruby/object:Gem::Requirement
82
+ requirement: &70126099882520 !ruby/object:Gem::Requirement
83
+ none: false
84
+ requirements:
85
+ - - ! '>='
86
+ - !ruby/object:Gem::Version
87
+ version: '0'
88
+ type: :development
89
+ prerelease: false
90
+ version_requirements: *70126099882520
91
+ - !ruby/object:Gem::Dependency
92
+ name: ronn
93
+ requirement: &70126099882080 !ruby/object:Gem::Requirement
83
94
  none: false
84
95
  requirements:
85
96
  - - ! '>='
@@ -87,10 +98,10 @@ dependencies:
87
98
  version: '0'
88
99
  type: :development
89
100
  prerelease: false
90
- version_requirements: *70198765949360
101
+ version_requirements: *70126099882080
91
102
  - !ruby/object:Gem::Dependency
92
103
  name: rspec
93
- requirement: &70198765948420 !ruby/object:Gem::Requirement
104
+ requirement: &70126099881620 !ruby/object:Gem::Requirement
94
105
  none: false
95
106
  requirements:
96
107
  - - ! '>='
@@ -98,10 +109,10 @@ dependencies:
98
109
  version: '0'
99
110
  type: :development
100
111
  prerelease: false
101
- version_requirements: *70198765948420
112
+ version_requirements: *70126099881620
102
113
  - !ruby/object:Gem::Dependency
103
114
  name: vcr
104
- requirement: &70198765946860 !ruby/object:Gem::Requirement
115
+ requirement: &70126099881100 !ruby/object:Gem::Requirement
105
116
  none: false
106
117
  requirements:
107
118
  - - ~>
@@ -109,10 +120,10 @@ dependencies:
109
120
  version: 2.0.0.rc1
110
121
  type: :development
111
122
  prerelease: false
112
- version_requirements: *70198765946860
123
+ version_requirements: *70126099881100
113
124
  - !ruby/object:Gem::Dependency
114
125
  name: webmock
115
- requirement: &70198765945220 !ruby/object:Gem::Requirement
126
+ requirement: &70126099880420 !ruby/object:Gem::Requirement
116
127
  none: false
117
128
  requirements:
118
129
  - - ! '>='
@@ -120,7 +131,7 @@ dependencies:
120
131
  version: '0'
121
132
  type: :development
122
133
  prerelease: false
123
- version_requirements: *70198765945220
134
+ version_requirements: *70126099880420
124
135
  description: Experience all the pleasures of sharing with CloudApp now in your terminal.
125
136
  email: larry@marburger.cc
126
137
  executables:
@@ -141,6 +152,9 @@ files:
141
152
  - lib/cloudapp/digestable_typhoeus.rb
142
153
  - lib/cloudapp/drop_service.rb
143
154
  - lib/cloudapp/identity.rb
155
+ - man/cloudapp.1
156
+ - man/cloudapp.1.html
157
+ - man/cloudapp.1.ronn
144
158
  - spec/cassettes/CloudApp_DropService/_create/creates_a_bookmark.yml
145
159
  - spec/cassettes/CloudApp_DropService/_create/creates_a_bookmark_with_a_name.yml
146
160
  - spec/cassettes/CloudApp_DropService/_create/creates_a_file.yml