Ctrl-k cuts to the end of the line

This commit is contained in:
Corey Johnson & Nathan Sobo
2012-04-09 12:34:30 -06:00
parent 54396a7646
commit f3372f08de
5 changed files with 44 additions and 2 deletions

View File

@@ -136,9 +136,15 @@ class CompositeSeleciton
selectToEndOfWord: ->
@expandSelectionsForward (selection) => selection.selectToEndOfWord()
cutToEndOfLine: ->
maintainPasteboard = false
@mutateSelectedText (selection) ->
selection.cutToEndOfLine(maintainPasteboard)
maintainPasteboard = true
cut: ->
maintainPasteboard = false
for selection in @getSelections()
@mutateSelectedText (selection) ->
selection.cut(maintainPasteboard)
maintainPasteboard = true

View File

@@ -65,11 +65,12 @@ class Editor extends View
@on 'select-up', => @selectUp()
@on 'select-down', => @selectDown()
@on 'newline', => @insertText("\n")
@on 'tab', => @insertTab()
@on 'backspace', => @backspace()
@on 'backspace-to-beginning-of-word', => @backspaceToBeginningOfWord()
@on 'delete', => @delete()
@on 'delete-to-end-of-word', => @deleteToEndOfWord()
@on 'tab', => @insertTab()
@on 'cut-to-end-of-line', => @cutToEndOfLine()
@on 'cut', => @cutSelection()
@on 'copy', => @copySelection()
@on 'paste', => @paste()
@@ -401,6 +402,7 @@ class Editor extends View
backspaceToBeginningOfWord: -> @compositeSelection.backspaceToBeginningOfWord()
delete: -> @compositeSelection.delete()
deleteToEndOfWord: -> @compositeSelection.deleteToEndOfWord()
cutToEndOfLine: -> @compositeSelection.cutToEndOfLine()
setText: (text) -> @buffer.setText(text)
getText: -> @buffer.getText()

View File

@@ -11,3 +11,4 @@ window.keymap.bindKeys '.editor',
'ctrl-d': 'delete'
'alt-h': 'backspace-to-beginning-of-word'
'alt-d': 'delete-to-end-of-word'
'ctrl-k': 'cut-to-end-of-line'

View File

@@ -204,6 +204,10 @@ class Selection extends View
selectToEndOfWord: ->
@modifySelection => @cursor.moveToEndOfWord()
cutToEndOfLine: (maintainPasteboard) ->
@selectToEndOfLine() if @isEmpty()
@cut(maintainPasteboard)
cut: (maintainPasteboard=false) ->
@copy(maintainPasteboard)
@delete()