如何使Ruby中的一个(方法|函数| IDK)与另一个做相同的事情?
退房 我基本上想做如何使Ruby中的一个(方法|函数| IDK)与另一个做相同的事情?,ruby,function,twitter,methods,alias,Ruby,Function,Twitter,Methods,Alias,退房 我基本上想做别名:rt:retweet,但那不起作用 command %r|^:retweet\s+(\d+)$|, :as => :retweet do |m| target = twitter.status(m[1]) if confirm("retweet 'RT @#{target["user"]["screen_name"]}: #{target["text"]}'") async_e { twitter.retweet(m[1]) } end end
别名:rt:retweet
,但那不起作用
command %r|^:retweet\s+(\d+)$|, :as => :retweet do |m|
target = twitter.status(m[1])
if confirm("retweet 'RT @#{target["user"]["screen_name"]}: #{target["text"]}'")
async_e { twitter.retweet(m[1]) }
end
end
command %r|^:retweet\s+(\d+)\s+(.*)$|, :as => :retweet do |m|
target = twitter.status(m[1])
text = "#{m[2]} #{config[:quotetweet] ? "QT" : "RT"} @#{target["user"] ["screen_name"]}: #{target["text"]} (#{target["id"]})"
if confirm("unofficial retweet '#{text}'")
async_e { twitter.update(text) }
end
end
我怎样才能使
:rt
与:retweet
做得一样,而不只是重新定义整个块,而是用:rt
代替:retweet
(我这样做是为了让它工作,但这不是一个好的解决方案,我知道必须有更好的方法)。这里定义了命令
方法:
如果查看主体,看起来应该忽略块以创建别名:
命令%r |^:retweet\s+(\d+)$|,:as=>:rt
您能详细说明一下吗<代码>命令%r |^:retweet\s+(\d+)$|,:as=>:rt无法修复任何问题。我不能做一些像command%r | ^:retweet\s+(\d+)\s+(.*)$,:as=>:retweet或:rt do | m |
或command%r | ^:retweet\s+(\d+)\s+(.*)$,:as=>:retweet |:rt do | m |
对不起,我根本不懂Ruby,我只是想让地震更有用。