small cleanup
This commit is contained in:
parent
aca8b9a73b
commit
961b6cecb6
1 changed files with 10 additions and 18 deletions
|
|
@ -1315,7 +1315,7 @@ var Editor = function(renderer, session) {
|
|||
/**
|
||||
* Editor.getNumberAt() -> Number
|
||||
*
|
||||
* Works like [[Editor.getTokenAt]], excepts it returns a number.
|
||||
* Works like [[Editor.getTokenAt]], except it returns a number.
|
||||
**/
|
||||
this.getNumberAt = function( row, column ) {
|
||||
var _numberRx = /[\-]?[0-9]+(?:\.[0-9]+)?/g
|
||||
|
|
@ -1346,20 +1346,16 @@ var Editor = function(renderer, session) {
|
|||
var row = this.selection.getCursor().row;
|
||||
var column = this.selection.getCursor().column;
|
||||
|
||||
//get the char before the cursor
|
||||
var charRange = new Range(0,0,0,0);
|
||||
charRange.start.row = row;
|
||||
charRange.end.row = row;
|
||||
charRange.start.column = column-1;
|
||||
charRange.end.column = column;
|
||||
// get the char before the cursor
|
||||
var charRange = new Range(row, column-1, row, column);
|
||||
|
||||
var c = this.session.getTextRange(charRange);
|
||||
//if the char is a digit
|
||||
if(!isNaN(parseFloat(c)) && isFinite(c)) {
|
||||
//get the whole number the digit is part of
|
||||
// if the char is a digit
|
||||
if (!isNaN(parseFloat(c)) && isFinite(c)) {
|
||||
// get the whole number the digit is part of
|
||||
var nr = this.getNumberAt(row, column);
|
||||
//if number found
|
||||
if(nr) {
|
||||
// if number found
|
||||
if (nr) {
|
||||
var fp = nr.value.indexOf(".") >= 0 ? nr.start + nr.value.indexOf(".") + 1 : nr.end;
|
||||
var decimals = nr.start + nr.value.length - fp;
|
||||
|
||||
|
|
@ -1378,18 +1374,14 @@ var Editor = function(renderer, session) {
|
|||
var nnr = t.toFixed(decimals);
|
||||
|
||||
//update number
|
||||
var replaceRange = new Range(0, 0, 0, 0);
|
||||
replaceRange.start.row = row;
|
||||
replaceRange.end.row = row;
|
||||
replaceRange.start.column = nr.start;
|
||||
replaceRange.end.column = nr.end;
|
||||
var replaceRange = new Range(row, nr.start, row, nr.end);
|
||||
this.session.replace(replaceRange, nnr);
|
||||
|
||||
//reposition the cursor
|
||||
this.moveCursorTo(row, Math.max(nr.start +1, column + nnr.length - nr.value.length));
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
/** related to: EditSession.remove
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue