BTW, Doing a web search on +Rope +Unicode, I found that Mozilla is developing a programming language called Rust which uses Ropes with packed UTF-8 strings. The internal documentation suggests heavy users of strings use ropes instead. Note: http://static.rust-lang.org/doc/0.5/std/rope.html FYI, -KenD