On 03 Jun 2005, at 20:09, Jim Ault wrote:
Greetings, jack
snip
on sortFldSource
put fld "source" into tSource --lines to sort
sort lines of tSource numeric by numberConvert(each)
put tSource into fld "destination" --output for your review
end sortFldSource
function numberConvert pStrToConvert
if pStrToConvert is "" then
return ""
else
set itemdel to "."
if the last char of pStrToConvert is "-" then
put the last char of pStrToConvert into tSign
delete the last char of pStrToConvert
end if
put item 1 of pStrToConvert into tIntPart
put item 2 of pStrToConvert into tDecPart1
if the number of items in pStrToConvert > 2 then
put item 3 of pStrToConvert into tDecPart2
else
put "" into tDecPart2
end if
put tSign & tIntPart & "." & tDecPart1 & tDecPart2 into tReply
return tReply
end if
end numberConvert
Thanks to jeanne a. e. devoto for this (each) form of the "sort
lines of"
command.
Jim Ault
Las Vegas
On 6/3/05 9:45 AM, "[EMAIL PROTECTED]" <[EMAIL PROTECTED]> wrote:
Hi Jim,
I don't know on your computer but on my mac this handler gives the
following result for Jack's list:
10.101-
11.151-
4.101-
5.101.1-
20.101-
11.101.1-
10.501-
10.401-
10.351-
10.301.1-
10.201-
9.351-
9.101.1-
8.301-
8.101-
7.501.1-
7.401-
7.251-
7.201.1-
7.151.1-
7.101-
6.401.1-
6.301-
6.201.1-
6.101.1-
5.701-
5.651-
5.501-
5.451-
5.401-
5.351.1-
5.301-
5.201-
5.151-
4.991-
3.101-
2.301-
2.101-
1.101-
To make it more universal (no matter leading or trailing - and +) one
could change it to:
on mouseUp
get field 1
put numsort(it,"ascending") into fld 2
end mouseUp
function numSort pList,pDirection
set the itemdelimiter to "."
repeat for each line i in pList
put i into x
if char -1 of word 1 of i is in "-+" then put char -1 of word 1
of i & char 1 to -2 of word 1 of i into x
if the num of items in x > 2 then put item 1 to 2 of x & item 3
of x into x
put i into numArray[x]
end repeat
put the keys of numArray into y
if pDirection = "ascending" then sort lines of y numeric ascending
else sort lines of y numeric descending
repeat for each line i in y
put numArray[i] & cr after tList
end repeat
return tList
end numSort
Greetings,
Wouter
_______________________________________________
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution