X-Git-Url: https://git.r.bdr.sh/rbdr/dotfiles/blobdiff_plain/24c7594d62d8d7fbbcdb64b11ce4adc5d8e6991a..068afff1da4859f222a31d91345f66d9fb3bc98d:/atom/packages/vim-mode/lib/scroll.coffee?ds=inline diff --git a/atom/packages/vim-mode/lib/scroll.coffee b/atom/packages/vim-mode/lib/scroll.coffee index 1bc1258..275f0f9 100644 --- a/atom/packages/vim-mode/lib/scroll.coffee +++ b/atom/packages/vim-mode/lib/scroll.coffee @@ -84,5 +84,27 @@ class ScrollCursorToBottom extends ScrollCursor moveToFirstNonBlank: -> @editor.moveToFirstCharacterOfLine() +class ScrollHorizontal + isComplete: -> true + isRecordable: -> false + constructor: (@editorElement) -> + @editor = @editorElement.getModel() + cursorPos = @editor.getCursorScreenPosition() + @pixel = @editorElement.pixelPositionForScreenPosition(cursorPos).left + @cursor = @editor.getLastCursor() + + putCursorOnScreen: -> + @editor.scrollToCursorPosition({center: false}) + +class ScrollCursorToLeft extends ScrollHorizontal + execute: -> + @editor.setScrollLeft(@pixel) + @putCursorOnScreen() + +class ScrollCursorToRight extends ScrollHorizontal + execute: -> + @editor.setScrollRight(@pixel) + @putCursorOnScreen() + module.exports = {ScrollDown, ScrollUp, ScrollCursorToTop, ScrollCursorToMiddle, - ScrollCursorToBottom} + ScrollCursorToBottom, ScrollCursorToLeft, ScrollCursorToRight}