lib/t/search.rb in t-1.6.0 vs lib/t/search.rb in t-1.7.0
- old
+ new
@@ -33,13 +33,13 @@
method_option "long", :aliases => "-l", :type => :boolean, :default => false, :desc => "Output in long format."
method_option "decode_urls", :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 |opts|
- opts[:include_entities] = 1 if options['decode_urls']
- client.search(query, opts).results
+ tweets = collect_with_count(count) do |count_opts|
+ count_opts[:include_entities] = 1 if options['decode_urls']
+ client.search(query, count_opts).results
end
tweets.reverse! if options['reverse']
require 'htmlentities'
if options['csv']
require 'csv'
@@ -167,41 +167,37 @@
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_urls", :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 "decode_urls", :aliases => "-d", :type => :boolean, :default => false, :desc => "Decodes t.co URLs into their original form."
+ method_option "since_id", :aliases => "-s", :type => :numeric, :desc => "Returns only the results with an ID greater than the specified ID."
def timeline(*args)
- opts = {:count => MAX_NUM_RESULTS}
query = args.pop
user = args.pop
+ opts = {:count => MAX_NUM_RESULTS}
opts[:include_entities] = 1 if options['decode_urls']
- exclude_opts = case options['exclude']
- when 'replies'
- {:exclude_replies => true}
- when 'retweets'
- {:include_rts => false}
- else
- {}
- end
+ opts[:exclude_replies] = true if options['exclude'] == 'replies'
+ opts[:include_rts] = false if options['exclude'] == 'retweets'
+ 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
tweets = collect_with_max_id do |max_id|
opts[:max_id] = max_id unless max_id.nil?
- client.user_timeline(user, opts.merge(exclude_opts))
+ client.user_timeline(user, opts)
end
else
tweets = collect_with_max_id do |max_id|
opts[:max_id] = max_id unless max_id.nil?
- client.home_timeline(opts.merge(exclude_opts))
+ client.home_timeline(opts)
end
end
tweets = tweets.select do |tweet|
/#{query}/i.match(tweet.full_text)
end