pry-send_tweet.rb 0.9.0 → 0.10.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 00774a2bc4c154a5756a86bc02ebff9fab766e3eaf233768a30ed1d16fd38461
4
- data.tar.gz: 6291210c7ebffd391b09fba722215e9be5458c35a484ec25d73020d33f02167d
3
+ metadata.gz: 60dbebe89f0db1ac7023b9e2e30f9d06413b704a9f06bf46c989afd0d4f6c09f
4
+ data.tar.gz: 484501f241913b90d987ec10de8710d5d00e1940b19ad095a49c2dd164bcfe3b
5
5
  SHA512:
6
- metadata.gz: d19ee6a9687148a87ad5d0d4d2933e80dd30b5df9fd4e33d0be6e0acf3df0b46fce0a3ff67b4d75a65c9afb271a1cd24011d9b599060ee7d295bcf5826027da5
7
- data.tar.gz: 410db8e42963c8369abc505255fdbf5f294f81f5d16c1f04a60650cbe0ffd29bac29822f8c70042e6769952cce3f5e6e65fb8c5b1d2b0169566526d3775648f2
6
+ metadata.gz: 79c7445acdebf4fe759f7de18d814627bca324bb29ac3f8fa5b3fd6e010a288360fd86759ef24fabc3b43356732e375f0c2b1cf449c2c9746d147e98297db970
7
+ data.tar.gz: 6c0d1f74bfa20d83a5c82ac32d97f611220737d012f7a2bb86951a71c142a2f48ab12b211d3322c40d95d452d2b76cbef84bbb145f145703b260ea2ade2c5df5
data/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # CHANGELOG
2
2
 
3
+ ## master
4
+
5
+ * Avoid a negative argument error when following / unfollowing other user(s) by
6
+ bypassing tty-box for those operations.
7
+
8
+ * Improve the title that appears above tweets when using the `read-tweets`
9
+ command.
10
+
11
+ * Add support for `read-tweets -t https://twitter.com/username`.
12
+
13
+ * Add `--set-profile-location`, and `--set-profile-link-color=` to the
14
+ `on-twitter` command.
15
+
3
16
  ## v0.9.0
4
17
 
5
18
  * Render `Twitter::Tweet` and `Twitter::User` objects using `TTY::Box` - with the
data/README.md CHANGED
@@ -219,25 +219,35 @@ The `twitter-search` command can be used to search Twitter.
219
219
 
220
220
  ### <a id='profile-actions'>Profile actions</a>
221
221
 
222
- * Update profile bio:
222
+ * Set the name visible on your profile:
223
223
 
224
- # Your editor opens (`_pry_.editor`), write your bio then hit save & close.
225
- # Your bio will be updated after closing your editor.
224
+ [1] pry(main)> on-twitter --set-profile-name=<name>
225
+
226
+ * Set the profile bio / description visible on your profile:
227
+
228
+ # An editor opens (`_pry_.editor`), write your bio then hit save & close.
229
+ # Your profiles bio will be updated after closing the editor.
226
230
  [1] pry(main)> on-twitter --set-profile-bio
227
231
 
228
- * Update the name associated with your profile:
232
+ * Set the location visible on your profile:
233
+
234
+ # An editor opens (`_pry_.editor`), write your location then hit save &
235
+ # close. Your profiles location will be updated after closing the editor.
236
+ [1] pry(main)> on-twitter --set-profile-bio
229
237
 
230
- [1] pry(main)> on-twitter --set-profile-name=Robert
238
+ * Set the color (as a hex value) of links that appear on your profiles timeline:
231
239
 
232
- * Update the URL associated with your profile:
240
+ [1] pry(main)> on-twitter --set-profile-link-color=#CC0000
241
+
242
+ * Set the URL visible on your profile:
233
243
 
234
244
  [1] pry(main)> on-twitter --set-profile-url=https://github.com/you
235
245
 
236
- * Update profile image:
246
+ * Set profile image:
237
247
 
238
248
  [1] pry(main)> on-twitter --set-profile-image /path/to/image.jpg
239
249
 
240
- * Update profile banner image:
250
+ * Set the banner image visible on your profile:
241
251
 
242
252
  [1] pry(main)> on-twitter --set-profile-banner-image /path/to/image.jpg
243
253
 
@@ -34,30 +34,31 @@ class Pry::SendTweet::ReadTweets < Pry::SendTweet::BaseCommand
34
34
  private
35
35
 
36
36
  def show_replies(user:)
37
+ username = search_str_for_users(user).first
37
38
  render_tweets lambda {
38
- username = search_str_for_users(user).first
39
39
  twitter.user_timeline(username, timeline_options).select {|tweet|
40
40
  tweet.reply? &&
41
41
  tweet.in_reply_to_screen_name? &&
42
42
  tweet.in_reply_to_screen_name.downcase != username.downcase
43
43
  }
44
44
  },
45
- title: format("Replies sent by %{user}", user: bold("@#{user}"))
45
+ title: "#{'@'+user} replies"
46
46
  end
47
47
 
48
48
  def show_likes(user:)
49
49
  if user
50
50
  user = search_str_for_users(user).first
51
51
  render_tweets lambda { twitter.favorites(user, count: opts['count'] || Pry::SendTweet::DEFAULT_READ_SIZE)},
52
- title: "Tweets liked by #{bright_white('@'+user)}"
52
+ title: "#{'@'+user} likes"
53
53
  else
54
54
  render_tweets lambda { twitter.favorites(count: opts['count'] || Pry::SendTweet::DEFAULT_READ_SIZE) },
55
- title: "Liked tweets"
55
+ title: "Your likes"
56
56
  end
57
57
  end
58
58
 
59
59
  def show_tweets_from_timeline(user:)
60
60
  if user
61
+ user = search_str_for_users(user).first
61
62
  render_tweets lambda { twitter.user_timeline(user, timeline_options) },
62
63
  title: '@'+user
63
64
  else
@@ -68,7 +69,7 @@ class Pry::SendTweet::ReadTweets < Pry::SendTweet::BaseCommand
68
69
 
69
70
  def show_mentions
70
71
  render_tweets lambda { twitter.mentions(timeline_options) },
71
- title: "Tweets that #{bright_white('@mention')} #{bright_blue('you')}"
72
+ title: "@mentions"
72
73
  end
73
74
 
74
75
  def timeline_options
@@ -47,11 +47,14 @@ class Pry::SendTweet::TwitterAction < Pry::SendTweet::BaseCommand
47
47
  #
48
48
  # Profile management
49
49
  #
50
- o.on 'set-profile-name=', 'Set the name associated with your profile'
51
- o.on 'set-profile-bio', 'Set your profiles bio'
52
- o.on 'set-profile-url=', 'Set the URL associated with your profile'
53
- o.on 'set-profile-banner-image=', 'Set the banner image used by your profile'
54
- o.on 'set-profile-image=', 'Set your profile photo'
50
+ o.on 'set-profile-name=', 'Set the name visible on your profile'
51
+ o.on 'set-profile-bio', 'Set the description visible on your profile'
52
+ o.on 'set-profile-location', 'Set the location visible on your profile'
53
+ o.on 'set-profile-url=', 'Set the URL visible on your profile'
54
+ o.on 'set-profile-banner-image=', 'Set the banner image visible on your profile'
55
+ o.on 'set-profile-image=', 'Set profile photo'
56
+ o.on 'set-profile-link-color=', 'Set the color (as a hex value) of links that ' \
57
+ 'are visible on your profiles timeline '
55
58
  #
56
59
  # Suggestions
57
60
  #
@@ -81,6 +84,8 @@ class Pry::SendTweet::TwitterAction < Pry::SendTweet::BaseCommand
81
84
  when opts.present?('set-profile-name') then set_profile_name(opts['set-profile-name'])
82
85
  when opts.present?('set-profile-image') then set_profile_image(opts['set-profile-image'])
83
86
  when opts.present?('set-profile-url') then set_profile_url(opts['set-profile-url'])
87
+ when opts.present?('set-profile-location') then set_profile_location
88
+ when opts.present?('set-profile-link-color') then set_profile_link_color(opts['set-profile-link-color'])
84
89
  when opts.present?('set-profile-bio') then set_profile_bio
85
90
  when opts.present?('suggested-topics') then suggested_topics
86
91
  when opts.present?('suggested-users') then suggested_users(opts['suggested-users'])
@@ -2,13 +2,11 @@ module Pry::SendTweet::TwitterAction::FollowActions
2
2
  def follow_user(users)
3
3
  users = search_str_for_users(*users)
4
4
  follows = twitter.follow(users)
5
- if follows.empty?
6
- page_error "Are you already following #{join_usernames(users)} ..?"
5
+ if follows.size > 0
6
+ page_ok "followed #{join_usernames(follows.map(&:screen_name))}."
7
7
  else
8
- page numbered_list(bold("Followed"), follows) {|followed, index|
9
- render_user(followed)
10
- }
11
- end
8
+ page_error "are you already following #{join_usernames(users)} ..?"
9
+ end
12
10
  rescue Twitter::Error => e
13
11
  page_error(e)
14
12
  end
@@ -16,12 +14,10 @@ module Pry::SendTweet::TwitterAction::FollowActions
16
14
  def unfollow_user(users)
17
15
  users = search_str_for_users(*users)
18
16
  unfollows = twitter.unfollow(users)
19
- if unfollows.empty?
20
- page_error "Did you already unfollow #{join_usernames(users)} ..?"
17
+ if unfollows.size > 0
18
+ page_ok "unfollowed #{join_usernames(unfollows.map(&:screen_name))}."
21
19
  else
22
- page numbered_list(bold("Unfollowed"), unfollows) {|unfollowed, index|
23
- render_user(unfollowed)
24
- }
20
+ page_error "did you already unfollow #{join_usernames(users)} ..?"
25
21
  end
26
22
  rescue Twitter::Error => e
27
23
  page_error(e)
@@ -1,7 +1,7 @@
1
1
  module Pry::SendTweet::TwitterAction::ProfileActions
2
2
  def set_profile_url(url)
3
3
  if twitter.update_profile url: url
4
- page "Profile URL updated"
4
+ page_ok "URL updated"
5
5
  else
6
6
  raise Pry::CommandError, "Something went wrong"
7
7
  end
@@ -9,7 +9,7 @@ module Pry::SendTweet::TwitterAction::ProfileActions
9
9
 
10
10
  def set_profile_image(path)
11
11
  twitter.update_profile_image(path)
12
- page "Profile image updated"
12
+ page_ok "Profile image updated"
13
13
  rescue Twitter::Error => e
14
14
  page_error(e)
15
15
  end
@@ -17,26 +17,44 @@ module Pry::SendTweet::TwitterAction::ProfileActions
17
17
  def set_profile_banner_image(path)
18
18
  base64 = Base64.strict_encode64 File.binread(path)
19
19
  twitter.update_profile_banner(base64)
20
- page "Profile banner updated"
20
+ page_ok "Profile banner updated"
21
21
  rescue Twitter::Error => e
22
22
  page_error(e)
23
23
  end
24
24
 
25
25
  def set_profile_name(name)
26
26
  twitter.update_profile name: name
27
- page "Profile name updated"
27
+ page_ok "Name updated"
28
28
  rescue Twitter::Error => e
29
29
  page_error(e)
30
30
  end
31
31
 
32
32
  def set_profile_bio
33
- Tempfile.open('pry-send_tweet-set-bio') do |file|
33
+ Tempfile.open('pry-send_tweet-set-profile-bio') do |file|
34
34
  Pry::Editor.new(_pry_).invoke_editor(file.path, 0)
35
35
  file.rewind
36
36
  twitter.update_profile description: file.read
37
- page "Profile bio updated"
37
+ page_ok "Bio updated"
38
38
  end
39
39
  rescue Twitter::Error => e
40
40
  page_error(e)
41
41
  end
42
+
43
+ def set_profile_location
44
+ Tempfile.open('pry-send_tweet-set-profile-location') do |file|
45
+ Pry::Editor.new(_pry_).invoke_editor(file.path, 0)
46
+ file.rewind
47
+ twitter.update_profile location: file.read
48
+ page_ok "Location updated"
49
+ end
50
+ rescue Twitter::Error => e
51
+ page_error e
52
+ end
53
+
54
+ def set_profile_link_color(color)
55
+ twitter.update_profile profile_link_color: color
56
+ page_ok "Profile link color updated"
57
+ rescue Twitter::Error => e
58
+ page_error e
59
+ end
42
60
  end
@@ -1,5 +1,5 @@
1
1
  class Pry
2
2
  module SendTweet
3
- VERSION = '0.9.0'
3
+ VERSION = '0.10.0'
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pry-send_tweet.rb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.0
4
+ version: 0.10.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Robert Gleeson
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-01-12 00:00:00.000000000 Z
11
+ date: 2019-01-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: pry