>>You always have to maintain two versions of the highlighter .... This shouldn't be necessary, the highlighter code works with any TokenStream - this should offer a suitable abstraction from the source of data (reanalysis or stored offsets). The only thing you would need to do would be to provide a TokenStream subclass that read offset info from the disk. (Not sure why TokenStream isn't an interface). Cheers Mark
--------------------------------- ALL-NEW Yahoo! Messenger - all new features - even more fun!