To find the range of characters visible in the text widget, simply use the index function: set firstChar [$text index @0,0] set lastChar [$text index @65535,65535]