diff --git a/src/atom/editor.coffee b/src/atom/editor.coffee index f9c7f352c..378de8835 100644 --- a/src/atom/editor.coffee +++ b/src/atom/editor.coffee @@ -80,6 +80,9 @@ class Editor extends Template deleteChar: -> @aceEditor.remove 'right' + selectLine: -> + @aceEditor.selection.selectLine() + deleteLine: -> @aceEditor.removeLines() diff --git a/src/atom/vim-mode-operators.coffee b/src/atom/vim-mode-operators.coffee index 50e114570..8f3c40be9 100644 --- a/src/atom/vim-mode-operators.coffee +++ b/src/atom/vim-mode-operators.coffee @@ -87,4 +87,9 @@ module.exports = column = nextLineMatch?.index or 0 { row, column } + SelectLine: class + isComplete: -> true + + select: (editor) -> + editor.selectLine() diff --git a/src/atom/vim-mode.coffee b/src/atom/vim-mode.coffee index 8d10267f7..d6bb895f9 100644 --- a/src/atom/vim-mode.coffee +++ b/src/atom/vim-mode.coffee @@ -71,10 +71,9 @@ class VimMode delete: () -> if @topOperator() instanceof op.Delete - @topOperator().complete = true - @processOpStack() + @pushOperator(new op.SelectLine) else - @pushOperator new op.Delete() + @pushOperator(new op.Delete) pushOperator: (op) -> @opStack.push(op)