I don't understand this branch, and it shows very weird behavior. It think it's better to keep things simple, and only handle a delete of an empty literal, when the cursor is inside the raw string. For instance, this scenario breaks down now:

```Scala
""""""^
```
I start deleting:
* the first delete behaves normally (one less `"` char)
* the second one deletes one more `"` **and** moves the cursor one more to the left, inside the (broken) string. I can't continue deleting without seeing weird effects.

The second unexpected behavior is to remove the closing triple-quote when I am deleting the *opening* triple quote. Both originate in this branch, and I think it's better to be predictable than too smart and stay in the way of the programmer.