         keydown('2')
         keydown('d')
 
-      it "deletes n lines, starting from the current", ->
-        expect(editor.getText()).toBe "12345\nQWERT"
-        expect(editor.getCursorScreenPosition()).toEqual [1, 0]
-
-      describe "with undo", ->
-        beforeEach ->
-          keydown('u')
-
-        it "undoes both lines", ->
-          expect(editor.getText()).toBe "12345\nabcde\nABCDE\nQWERT"
-
-    describe "when followed by an h", ->
-      it "deletes the previous letter on the current line", ->
-        editor.setText("abcd\n01234")
-        editor.setCursorScreenPosition([1, 1])
-
-        keydown('d')
-        keydown('h')
-
-        expect(editor.getText()).toBe "abcd\n1234"
-        expect(editor.getCursorScreenPosition()).toEqual [1, 0]
-
-        keydown('d')
-        keydown('h')
-
-        expect(editor.getText()).toBe "abcd\n1234"
-        expect(editor.getCursorScreenPosition()).toEqual [1, 0]
+        keydown('u')
+
+      it "undoes both lines", ->
+        expect(editor.getText()).toBe "12345\nabcde\nABCDE\nQWERT"
 
     describe "when followed by a w", ->
       it "deletes the next word until the end of the line", ->


      editor.getBuffer().setText("abc\n  012\n")
      editor.setCursorScreenPosition([1, 2])

    it "switches to insert and adds a newline above the current one", ->
      keydown('o')

      expect(editor.getText()).toBe "abc\n  012\n  \n"
      expect(editor).toHaveClass 'insert-mode'
      expect(editor.getCursorScreenPosition()).toEqual [2, 2]

        expect(editor.getText()).toBe 'four'
        expect(editor.getCursorScreenPosition()).toEqual [0, 0]

  describe "the D keybinding", ->
    beforeEach ->
      editor.getBuffer().setText("012\n")
      editor.setCursorScreenPosition([0, 1])
      keydown('D', shift: true)

    it "deletes the contents until the end of the line", ->
      expect(editor.getText()).toBe "0\n"

  describe "the c keybinding", ->
