diff --git a/keymap/vim.js b/keymap/vim.js
index d8a2d60d416c52cd505f90a1fd16e25bc21695a8..8bf1fe5664877fc92290c63199958017b823a0e7 100644
--- a/keymap/vim.js
+++ b/keymap/vim.js
@@ -2034,7 +2034,8 @@
         vimGlobalState.registerController.pushText(
             args.registerName, 'delete', text,
             args.linewise, vim.visualBlock);
-        return clipCursorToContent(cm, finalHead);
+        var includeLineBreak = vim.insertMode
+        return clipCursorToContent(cm, finalHead, includeLineBreak);
       },
       indent: function(cm, args, ranges) {
         var vim = cm.state.vim;