diff --git a/lib/codemirror.js b/lib/codemirror.js
index d9d136a66c9023578bea2eca0802cba06ccc2bc9..6f1f9a46adac0394dbad878aa0b7fdab3d2713c2 100644
--- a/lib/codemirror.js
+++ b/lib/codemirror.js
@@ -1285,6 +1285,7 @@
 
       on(te, "compositionstart", function() {
         var start = cm.getCursor("from");
+        if (input.composing) input.composing.range.clear()
         input.composing = {
           start: start,
           range: cm.markText(start, cm.getCursor("to"), {className: "CodeMirror-composing"})