- No technology required; just adopt a convention for disambiguating replies. Prefix your reply with the last word or few words of the line you're replying to, followed by a ">". I've been thinking about using iChat this way. For example:
Alice: Is your project going well?
Alice: And have you been getting enough sleep?
Bob: well?> Yeah, it's not bad. There's a lot left to do though.
Alice: That's good news.
Bob: sleep?> No, not nearly. I hope i get to catch up after the project is done.
- Add a feature to the chat client that numbers each of your outgoing lines in sequence. (The display of the numbers should be small and subtle.) Then you can establish a convention for using the numbers to refer to previous lines, as in the previous suggestion. This would also let you know when lines of text are dropped, which would be useful for unreliable connections (or to let you know how much you missed if you happen to go briefly offline).
- Add a feature to the chat client so that when you click on a previous line of the conversation, it's linked to your current line of typing with a thin arrow. When you hit Return to send the current line, the other side sees a little arrow pointing from the line you selected to the line you just typed.