Brent, I think the growTo: addition is good.
In using replaceFrom: position+1 to: position + n with: aCollection startingAt: 1, I think you're fixing the wrong thing - you're working around the real culprit, which is that Text>>replaceFrom:to:with: does copying, which is quite contrary to other implementations of the same selector.
Also, I don't understand the reasoning in removing the test Tim left there - (aCollection isMemberOf: String) not ifTrue: [^ super nextPutAll: aCollection].
Daniel
< Brought to you by the BugFixArchiveViewer and CommentNotePad >