< :the previous in number
^ :the list in numerical order
> :the next in number
P :the previous (in thread)
N :the next artilce (have the same parent)
|<:the top of this thread
>|:the next thread
^ :the parent (reply-to)
_:the child (an article replying to this)
>:the elder article having the same parent
<:the youger article having the same parent
---:split window and show thread lists
| :split window (vertically) and show thread lists
~ :close the thread frame
.:the index
..:the index of indices
>>>>> "T" == Tim Bates <tim / bates.id.au> writes:
T> Is there an easy, Ruby-idiomatic way to sort this array by the 'score'
T> elements of each hash? eg so I get
Well, you can give it a block
pigeon% ri Array#sort
------------------------------------------------------------- Array#sort
arr.sort -> anArray
arr.sort {| a,b | block } -> anArray
------------------------------------------------------------------------
Returns a new array created by sorting arr. Comparisons for the
sort will be done using the <=> operator or using an optional code
block. The block implements a comparison between a and b, returning
-1, 0, or +1.
a = [ "d", "a", "e", "c", "b" ]
a.sort #=> ["a", "b", "c", "d", "e"]
a.sort {|x,y| y <=> x } #=> ["e", "d", "c", "b", "a"]
pigeon%
pigeon% ruby
a = [{'name'=>'Anna', 'score'=>11}, {'name'=>'Bryce', 'score'=>7},
{'name'=>'Chris', 'score'=>9}]
b = a.sort {|k,l| k['score'] <=> l['score']}
p b
^D
[{"score"=>7, "name"=>"Bryce"}, {"score"=>9, "name"=>"Chris"},
{"score"=>11, "name"=>"Anna"}]
pigeon%
Guy Decoux