From 8e5ed709a50c4454b89a154eb751c7fad2b8d858 Mon Sep 17 00:00:00 2001 From: nightwing Date: Wed, 22 Aug 2012 18:48:33 +0400 Subject: [PATCH] end should toggle between trailing whitespace (like home) --- lib/ace/selection.js | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/lib/ace/selection.js b/lib/ace/selection.js index 8f6e3143..39de5281 100644 --- a/lib/ace/selection.js +++ b/lib/ace/selection.js @@ -525,8 +525,8 @@ var Selection = function(session) { // Determ the line var beforeCursor = this.session.getDisplayLine( - row, null, - firstColumnPosition.row, firstColumnPosition.column + row, null, firstColumnPosition.row, + firstColumnPosition.column ); var leadingSpace = beforeCursor.match(/^\s*/); @@ -550,12 +550,17 @@ var Selection = function(session) { **/ this.moveCursorLineEnd = function() { var lead = this.lead; - var lastRowColumnPosition = - this.session.getDocumentLastRowColumnPosition(lead.row, lead.column); - this.moveCursorTo( - lastRowColumnPosition.row, - lastRowColumnPosition.column - ); + var lineEnd = this.session.getDocumentLastRowColumnPosition(lead.row, lead.column); + if (this.lead.column == lineEnd.column) { + var line = this.session.getLine(lineEnd.row); + if (lineEnd.column == line.length) { + var textEnd = line.search(/\s+$/); + if (textEnd > 0) + lineEnd.column = textEnd; + } + } + + this.moveCursorTo(lineEnd.row, lineEnd.column); }; /**