I've started work on a highlighting extension in Firefox which allows one to save the highlighted text. Running into a wall with highlighting across elements. Highlighting within the same element is already functional, but it seems no one has actually gotten cross-element highlighting right. And the funny thing is, it all seems so trivial from the user's point of view…

Anyway, the links that have proved useful in learning about the DOM Range api and Mozilla's nsISelection:
http://www.xulplanet.com/references/xpcomref/
Everything can be a link…
http://www.mail-archive.com/mozilla-editor@mozilla.org/msg01437.html
http://www.webmasterworld.com/forum91/1170.htm
http://markpasc.org/weblog/2002/07/15/mozilla_editor_links_for_my_reference
and various extensions which perform highlighting from a cursor selection.