Interactive Simultaneous Editing of Multiple Text Regions

Robert C. Miller and Brad A. Myers

Robert C. Miller and Brad A. Myers. "Interactive Simultaneous Editing of Multiple Text Regions." USENIX 2001 Annual Technical Conference, Boston, MA, June 2001, pp 161-174.


Simultaneous editing is a new method for automating repetitive text editing. After describing a set of regions to edit (the records), the user can edit any one record and see equivalent edits applied simultaneously to all other records. The essence of simultaneous editing is generalizing the user's selection in one record to equivalent selections in the other records. We describe a generalization method that is fast (suitable for interactive use), domain-specific (capable of using high-level knowledge such as Java and HTML syntax), and under user control (generalizations can be corrected or overridden). Simultaneous editing is useful for source code editing, HTML editing, and scripting, as well as many other applications.

(a) (b)
Simultaneous editing on Java code. The records (highlighted lightly) are calls to the paint() function, which is being transformed into an object-oriented method. (a) User selects ``rectangle'', and the system generalizes the selection across all records. (b) User cuts the selection, pastes it before paint, and inserts a dot. The same operation affects every record.

Full Text

Rob Miller