linsert — Insert elements into a list
linsert list index ?element element ...?
This command produces a new list from list by inserting all of the
element arguments just before the index'th element of
list. Each element argument will become a separate element of
the new list. If index is less than or equal to zero, then the new
elements are inserted at the beginning of the list, and if index is
greater or equal to the length of list, it is as if it was end.
As with string index, the index value supports both simple index
arithmetic and end-relative indexing.
Subject to the restrictions that indices must refer to locations inside the
list and that the elements will always be inserted in order, insertions
are done so that when index is start-relative, the first element
will be at that index in the resulting list, and when index is
end-relative, the last element will be at that index in the resulting
list.
Putting some values into a list, first indexing from the start and
then indexing from the end, and then chaining them together:
set oldList {the fox jumps over the dog}
set midList [linsert $oldList 1 quick]
set newList [linsert $midList end-1 lazy]
# The old lists still exist though...
set newerList [linsert [linsert $oldList end-1 quick] 1 lazy]
list, lappend, lassign, ledit, lindex, llength, lmap, lpop, lrange, lremove, lrepeat, lreplace, lreverse, lsearch, lseq, lset, lsort, string
element, insert, list
Copyright © 1993 The Regents of the University of California.
Copyright © 1994-1996 Sun Microsystems, Inc.
Copyright © 2001 Kevin B. Kenny <kennykb(at)acm.org>. All rights reserved.