Increment duplicates is just one of many, many utilities that pairs well with multiple carets.
Formatting is another.
Boilerplate code, for example today I had to implemented code like this:
impl Into<Node> for ProcessNode {
fn into(self) -> Node {
Node {some_boilerplate(self)}
}
}
I had 6 node types. Using multiple cursors I:
* Implemented it once
* Duplicated it 5x
* Copied the names of the types I needed to impl for
* Attached a cursor to each impl
* Used ctrl + left/ right to word-jump, and past in the appropriate area
Now it's not like this saved me more than a minute or two, but this sort of thing is extremely common in my experience, across languages.