lib/t/search.rb in t-2.0.1 vs lib/t/search.rb in t-2.0.2
- old
+ new
@@ -21,15 +21,15 @@
def initialize(*)
@rcfile = T::RCFile.instance
super
end
- desc "all QUERY", "Returns the #{DEFAULT_NUM_RESULTS} most recent Tweets that match the specified query."
- method_option "csv", :aliases => "-c", :type => :boolean, :default => false, :desc => "Output in CSV format."
- method_option "long", :aliases => "-l", :type => :boolean, :default => false, :desc => "Output in long format."
- method_option "decode_uris", :aliases => "-d", :type => :boolean, :default => false, :desc => "Decodes t.co URLs into their original form."
- method_option "number", :aliases => "-n", :type => :numeric, :default => DEFAULT_NUM_RESULTS
+ desc 'all QUERY', "Returns the #{DEFAULT_NUM_RESULTS} most recent Tweets that match the specified query."
+ method_option 'csv', :aliases => '-c', :type => :boolean, :default => false, :desc => 'Output in CSV format.'
+ method_option 'long', :aliases => '-l', :type => :boolean, :default => false, :desc => 'Output in long format.'
+ method_option 'decode_uris', :aliases => '-d', :type => :boolean, :default => false, :desc => 'Decodes t.co URLs into their original form.'
+ method_option 'number', :aliases => '-n', :type => :numeric, :default => DEFAULT_NUM_RESULTS
def all(query)
count = options['number'] || DEFAULT_NUM_RESULTS
tweets = collect_with_count(count) do |count_opts|
count_opts[:include_entities] = 1 if options['decode_uris']
client.search(query, count_opts).to_a
@@ -44,37 +44,33 @@
end
elsif options['long']
array = tweets.map do |tweet|
[tweet.id, ls_formatted_time(tweet), "@#{tweet.user.screen_name}", decode_full_text(tweet, options['decode_uris']).gsub(/\n+/, ' ')]
end
- format = options['format'] || TWEET_HEADINGS.size.times.map{"%s"}
+ format = options['format'] || TWEET_HEADINGS.size.times.map { '%s' }
print_table_with_headings(array, TWEET_HEADINGS, format)
else
say unless tweets.empty?
tweets.each do |tweet|
print_message(tweet.user.screen_name, decode_full_text(tweet, options['decode_uris']))
end
end
end
- desc "favorites [USER] QUERY", "Returns Tweets you've favorited that match the specified query."
- method_option "csv", :aliases => "-c", :type => :boolean, :default => false, :desc => "Output in CSV format."
- method_option "id", :aliases => "-i", :type => :boolean, :default => false, :desc => "Specify user via ID instead of screen name."
- method_option "decode_uris", :aliases => "-d", :type => :boolean, :default => false, :desc => "Decodes t.co URLs into their original form."
- method_option "long", :aliases => "-l", :type => :boolean, :default => false, :desc => "Output in long format."
+ desc 'favorites [USER] QUERY', "Returns Tweets you've favorited that match the specified query."
+ method_option 'csv', :aliases => '-c', :type => :boolean, :default => false, :desc => 'Output in CSV format.'
+ method_option 'id', :aliases => '-i', :type => :boolean, :default => false, :desc => 'Specify user via ID instead of screen name.'
+ method_option 'decode_uris', :aliases => '-d', :type => :boolean, :default => false, :desc => 'Decodes t.co URLs into their original form.'
+ method_option 'long', :aliases => '-l', :type => :boolean, :default => false, :desc => 'Output in long format.'
def favorites(*args)
opts = {:count => MAX_NUM_RESULTS}
query = args.pop
user = args.pop
opts[:include_entities] = 1 if options['decode_uris']
if user
require 't/core_ext/string'
- user = if options['id']
- user.to_i
- else
- user.strip_ats
- end
+ user = options['id'] ? user.to_i : user.strip_ats
tweets = collect_with_max_id do |max_id|
opts[:max_id] = max_id unless max_id.nil?
client.favorites(user, opts)
end
else
@@ -88,15 +84,15 @@
end
print_tweets(tweets)
end
map %w(faves) => :favorites
- desc "list [USER/]LIST QUERY", "Returns Tweets on a list that match specified query."
- method_option "csv", :aliases => "-c", :type => :boolean, :default => false, :desc => "Output in CSV format."
- method_option "id", :aliases => "-i", :type => :boolean, :default => false, :desc => "Specify user via ID instead of screen name."
- method_option "long", :aliases => "-l", :type => :boolean, :default => false, :desc => "Output in long format."
- method_option "decode_uris", :aliases => "-d", :type => :boolean, :default => false, :desc => "Decodes t.co URLs into their original form."
+ desc 'list [USER/]LIST QUERY', 'Returns Tweets on a list that match the specified query.'
+ method_option 'csv', :aliases => '-c', :type => :boolean, :default => false, :desc => 'Output in CSV format.'
+ method_option 'id', :aliases => '-i', :type => :boolean, :default => false, :desc => 'Specify user via ID instead of screen name.'
+ method_option 'long', :aliases => '-l', :type => :boolean, :default => false, :desc => 'Output in long format.'
+ method_option 'decode_uris', :aliases => '-d', :type => :boolean, :default => false, :desc => 'Decodes t.co URLs into their original form.'
def list(list, query)
owner, list = extract_owner(list, options)
opts = {:count => MAX_NUM_RESULTS}
opts[:include_entities] = 1 if options['decode_uris']
tweets = collect_with_max_id do |max_id|
@@ -107,14 +103,14 @@
/#{query}/i.match(tweet.full_text)
end
print_tweets(tweets)
end
- desc "mentions QUERY", "Returns Tweets mentioning you that match the specified query."
- method_option "csv", :aliases => "-c", :type => :boolean, :default => false, :desc => "Output in CSV format."
- method_option "long", :aliases => "-l", :type => :boolean, :default => false, :desc => "Output in long format."
- method_option "decode_uris", :aliases => "-d", :type => :boolean, :default => false, :desc => "Decodes t.co URLs into their original form."
+ desc 'mentions QUERY', 'Returns Tweets mentioning you that match the specified query.'
+ method_option 'csv', :aliases => '-c', :type => :boolean, :default => false, :desc => 'Output in CSV format.'
+ method_option 'long', :aliases => '-l', :type => :boolean, :default => false, :desc => 'Output in long format.'
+ method_option 'decode_uris', :aliases => '-d', :type => :boolean, :default => false, :desc => 'Decodes t.co URLs into their original form.'
def mentions(query)
opts = {:count => MAX_NUM_RESULTS}
opts[:include_entities] = 1 if options['decode_uris']
tweets = collect_with_max_id do |max_id|
opts[:max_id] = max_id unless max_id.nil?
@@ -125,27 +121,23 @@
end
print_tweets(tweets)
end
map %w(replies) => :mentions
- desc "retweets [USER] QUERY", "Returns Tweets you've retweeted that match the specified query."
- method_option "csv", :aliases => "-c", :type => :boolean, :default => false, :desc => "Output in CSV format."
- method_option "id", :aliases => "-i", :type => :boolean, :default => false, :desc => "Specify user via ID instead of screen name."
- method_option "long", :aliases => "-l", :type => :boolean, :default => false, :desc => "Output in long format."
- method_option "decode_uris", :aliases => "-d", :type => :boolean, :default => false, :desc => "Decodes t.co URLs into their original form."
+ desc 'retweets [USER] QUERY', "Returns Tweets you've retweeted that match the specified query."
+ method_option 'csv', :aliases => '-c', :type => :boolean, :default => false, :desc => 'Output in CSV format.'
+ method_option 'id', :aliases => '-i', :type => :boolean, :default => false, :desc => 'Specify user via ID instead of screen name.'
+ method_option 'long', :aliases => '-l', :type => :boolean, :default => false, :desc => 'Output in long format.'
+ method_option 'decode_uris', :aliases => '-d', :type => :boolean, :default => false, :desc => 'Decodes t.co URLs into their original form.'
def retweets(*args)
opts = {:count => MAX_NUM_RESULTS}
query = args.pop
user = args.pop
opts[:include_entities] = 1 if options['decode_uris']
if user
require 't/core_ext/string'
- user = if options['id']
- user.to_i
- else
- user.strip_ats
- end
+ user = options['id'] ? user.to_i : user.strip_ats
tweets = collect_with_max_id do |max_id|
opts[:max_id] = max_id unless max_id.nil?
client.retweeted_by_user(user, opts)
end
else
@@ -159,18 +151,18 @@
end
print_tweets(tweets)
end
map %w(rts) => :retweets
- desc "timeline [USER] QUERY", "Returns Tweets in your timeline that match the specified query."
- method_option "csv", :aliases => "-c", :type => :boolean, :default => false, :desc => "Output in CSV format."
- method_option "decode_uris", :aliases => "-d", :type => :boolean, :default => false, :desc => "Decodes t.co URLs into their original form."
- method_option "exclude", :aliases => "-e", :type => :string, :enum => %w(replies retweets), :desc => "Exclude certain types of Tweets from the results.", :banner => "TYPE"
- method_option "id", :aliases => "-i", :type => :boolean, :default => false, :desc => "Specify user via ID instead of screen name."
- method_option "long", :aliases => "-l", :type => :boolean, :default => false, :desc => "Output in long format."
- method_option "max_id", :aliases => "-m", :type => :numeric, :desc => "Returns only the results with an ID less than the specified ID."
- method_option "since_id", :aliases => "-s", :type => :numeric, :desc => "Returns only the results with an ID greater than the specified ID."
+ desc 'timeline [USER] QUERY', 'Returns Tweets in your timeline that match the specified query.'
+ method_option 'csv', :aliases => '-c', :type => :boolean, :default => false, :desc => 'Output in CSV format.'
+ method_option 'decode_uris', :aliases => '-d', :type => :boolean, :default => false, :desc => 'Decodes t.co URLs into their original form.'
+ method_option 'exclude', :aliases => '-e', :type => :string, :enum => %w(replies retweets), :desc => 'Exclude certain types of Tweets from the results.', :banner => 'TYPE'
+ method_option 'id', :aliases => '-i', :type => :boolean, :default => false, :desc => 'Specify user via ID instead of screen name.'
+ method_option 'long', :aliases => '-l', :type => :boolean, :default => false, :desc => 'Output in long format.'
+ method_option 'max_id', :aliases => '-m', :type => :numeric, :desc => 'Returns only the results with an ID less than the specified ID.'
+ method_option 'since_id', :aliases => '-s', :type => :numeric, :desc => 'Returns only the results with an ID greater than the specified ID.'
def timeline(*args)
query = args.pop
user = args.pop
opts = {:count => MAX_NUM_RESULTS}
opts[:include_entities] = 1 if options['decode_uris']
@@ -178,15 +170,11 @@
opts[:include_rts] = false if options['exclude'] == 'retweets'
opts[:max_id] = options['max_id'] if options['max_id']
opts[:since_id] = options['since_id'] if options['since_id']
if user
require 't/core_ext/string'
- user = if options['id']
- user.to_i
- else
- user.strip_ats
- end
+ user = options['id'] ? user.to_i : user.strip_ats
tweets = collect_with_max_id do |max_id|
opts[:max_id] = max_id unless max_id.nil?
client.user_timeline(user, opts)
end
else
@@ -200,20 +188,19 @@
end
print_tweets(tweets)
end
map %w(tl) => :timeline
- desc "users QUERY", "Returns users that match the specified query."
- method_option "csv", :aliases => "-c", :type => :boolean, :default => false, :desc => "Output in CSV format."
- method_option "long", :aliases => "-l", :type => :boolean, :default => false, :desc => "Output in long format."
- method_option "reverse", :aliases => "-r", :type => :boolean, :default => false, :desc => "Reverse the order of the sort."
- method_option "sort", :aliases => "-s", :type => :string, :enum => %w(favorites followers friends listed screen_name since tweets tweeted), :default => "screen_name", :desc => "Specify the order of the results.", :banner => "ORDER"
- method_option "unsorted", :aliases => "-u", :type => :boolean, :default => false, :desc => "Output is not sorted."
+ desc 'users QUERY', 'Returns users that match the specified query.'
+ method_option 'csv', :aliases => '-c', :type => :boolean, :default => false, :desc => 'Output in CSV format.'
+ method_option 'long', :aliases => '-l', :type => :boolean, :default => false, :desc => 'Output in long format.'
+ method_option 'reverse', :aliases => '-r', :type => :boolean, :default => false, :desc => 'Reverse the order of the sort.'
+ method_option 'sort', :aliases => '-s', :type => :string, :enum => %w(favorites followers friends listed screen_name since tweets tweeted), :default => 'screen_name', :desc => 'Specify the order of the results.', :banner => 'ORDER'
+ method_option 'unsorted', :aliases => '-u', :type => :boolean, :default => false, :desc => 'Output is not sorted.'
def users(query)
users = collect_with_page do |page|
client.user_search(query, :page => page)
end
print_users(users)
end
-
end
end