       set text: "", cursor: [0, 0]
       keystroke 'i'
       editor.insertText(initialText)
-      ensure ["escape", 'gg'], text: initialText, cursor: [0, 0]
+      ensure "escape g g", text: initialText, cursor: [0, 0]
 
     describe "repeat insertion count times", ->
-      it "[case-i]", -> ensureInsertionCount '3i', insert: '=', text: "===*\n*\n", cursor: [0, 2]
-      it "[case-o]", -> ensureInsertionCount '3o', insert: '=', text: "*\n=\n=\n=\n*\n", cursor: [3, 0]
-      it "[case-O]", -> ensureInsertionCount '3O', insert: '=', text: "=\n=\n=\n*\n*\n", cursor: [2, 0]
+      it "[case-i]", -> ensureInsertionCount '3 i', insert: '=', text: "===*\n*\n", cursor: [0, 2]
+      it "[case-o]", -> ensureInsertionCount '3 o', insert: '=', text: "*\n=\n=\n=\n*\n", cursor: [3, 0]
+      it "[case-O]", -> ensureInsertionCount '3 O', insert: '=', text: "=\n=\n=\n*\n*\n", cursor: [2, 0]
 
       describe "children of Change operation won't repeate insertion count times", ->
         beforeEach ->
           set text: "", cursor: [0, 0]
           keystroke 'i'
           editor.insertText('*')
-          ensure ["escape", 'gg'], text: '*', cursor: [0, 0]
-
-        it "[case-c]", -> ensureInsertionCount '3cw', insert: '=', text: "=", cursor: [0, 0]
-        it "[case-C]", -> ensureInsertionCount '3C', insert: '=', text: "=", cursor: [0, 0]
-        it "[case-s]", -> ensureInsertionCount '3s', insert: '=', text: "=", cursor: [0, 0]
-        it "[case-S]", -> ensureInsertionCount '3S', insert: '=', text: "=", cursor: [0, 0]
+          ensure 'escape g g', text: '*', cursor: [0, 0]
+
+        it "[case-c]", -> ensureInsertionCount '3 c w', insert: '=', text: "=", cursor: [0, 0]
+        it "[case-C]", -> ensureInsertionCount '3 C', insert: '=', text: "=", cursor: [0, 0]
+        it "[case-s]", -> ensureInsertionCount '3 s', insert: '=', text: "=", cursor: [0, 0]
+        it "[case-S]", -> ensureInsertionCount '3 S', insert: '=', text: "=", cursor: [0, 0]


    it "is undoable", ->
      set cursor: [0, 0]
      keystroke '3s'
      editor.insertText 'ab'
      ensure 'escape', text: 'ab345'
      ensure 'u', text: '012345', selectedText: ''

    describe "in visual mode", ->
      beforeEach ->
        keystroke 'vls'

      it "deletes the selected characters and enters insert mode", ->
        ensure

      describe "on the beginning of the second line", ->
        it "deletes all the text on the line", ->
          set cursor: [1, 0]
          ensure 'c 2 G escape', text: '12345\n\nABCDE'

      describe "on the middle of the second line", ->
        it "deletes all the text on the line", ->
          set cursor: [1, 2]
          ensure 'c 2 G escape', text: '12345\n\nABCDE'

  describe "the C keybinding", ->
    beforeEach ->
