diff options
Diffstat (limited to 'doc/lsort.n')
-rw-r--r-- | doc/lsort.n | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/doc/lsort.n b/doc/lsort.n new file mode 100644 index 0000000..828cad8 --- /dev/null +++ b/doc/lsort.n @@ -0,0 +1,85 @@ +'\" +'\" Copyright (c) 1993 The Regents of the University of California. +'\" Copyright (c) 1994-1996 Sun Microsystems, Inc. +'\" +'\" See the file "license.terms" for information on usage and redistribution +'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. +'\" +'\" SCCS: @(#) lsort.n 1.10 97/08/22 18:50:53 +'\" +.so man.macros +.TH lsort n 8.0 Tcl "Tcl Built-In Commands" +.BS +'\" Note: do not modify the .SH NAME line immediately below! +.SH NAME +lsort \- Sort the elements of a list +.SH SYNOPSIS +\fBlsort \fR?\fIoptions\fR? \fIlist\fR +.BE + +.SH DESCRIPTION +.PP +This command sorts the elements of \fIlist\fR, returning a new +list in sorted order. By default ASCII sorting is used with +the result returned in increasing order. +However, any of the +following options may be specified before \fIlist\fR to +control the sorting process (unique abbreviations are accepted): +.TP 20 +\fB\-ascii\fR +Use string comparison with ASCII collation order. This is +the default. +.VS 8.0 br +.TP 20 +\fB\-dictionary\fR +Use dictionary-style comparison. This is the same as \fB\-ascii\fR +except (a) case is ignored except as a tie-breaker and (b) if two +strings contain embedded numbers, the numbers compare as integers, +not characters. For example, in \fB\-dictionary\fR mode, \fBbigBoy\fR +sorts between \fBbigbang\fR and \fBbigboy\fR, and \fBx10y\fR +sorts between \fBx9y\fR and \fBx11y\fR. +.VE +.TP 20 +\fB\-integer\fR +Convert list elements to integers and use integer comparison. +.TP 20 +\fB\-real\fR +Convert list elements to floating-point values and use floating +comparison. +.TP 20 +\fB\-command\0\fIcommand\fR +Use \fIcommand\fR as a comparison command. +To compare two elements, evaluate a Tcl script consisting of +\fIcommand\fR with the two elements appended as additional +arguments. The script should return an integer less than, +equal to, or greater than zero if the first element is to +be considered less than, equal to, or greater than the second, +respectively. +.TP 20 +\fB\-increasing\fR +Sort the list in increasing order (``smallest'' items first). +This is the default. +.TP 20 +\fB\-decreasing\fR +Sort the list in decreasing order (``largest'' items first). +.VS 8.0 br +.TP 20 +\fB\-index\0\fIindex\fR +If this option is specified, each of the elements of \fIlist\fR must +itself be a proper Tcl sublist. Instead of sorting based on whole sublists, +\fBlsort\fR will extract the \fIindex\fR'th element from each sublist +and sort based on the given element. The keyword \fBend\fP is allowed +for the \fIindex\fP to sort on the last sublist element. For example, +.RS +.CS +lsort -integer -index 1 {{First 24} {Second 18} {Third 30}} +.CE +returns \fB{Second 18} {First 24} {Third 30}\fR. +This option is much more efficient than using \fB\-command\fR +to achieve the same effect. +.RE +.VE + + +.SH KEYWORDS +element, list, order, sort |