* Some minor tweaks. Nothing major right now
This commit is contained in:
parent
6bf5a8425c
commit
b759975742
|
@ -180,7 +180,7 @@ function MultiLineEditTextView2(options) {
|
||||||
return text;
|
return text;
|
||||||
};
|
};
|
||||||
|
|
||||||
this.getOutputText = function(startIndex, endIndex) {
|
this.getOutputText = function(startIndex, endIndex, includeEol) {
|
||||||
var lines;
|
var lines;
|
||||||
if(startIndex === endIndex) {
|
if(startIndex === endIndex) {
|
||||||
lines = [ self.textLines[startIndex] ];
|
lines = [ self.textLines[startIndex] ];
|
||||||
|
@ -196,7 +196,7 @@ function MultiLineEditTextView2(options) {
|
||||||
var re = new RegExp('\\t{' + (self.tabWidth - 1) + '}', 'g');
|
var re = new RegExp('\\t{' + (self.tabWidth - 1) + '}', 'g');
|
||||||
for(var i = 0; i < lines.length; ++i) {
|
for(var i = 0; i < lines.length; ++i) {
|
||||||
text += lines[i].text.replace(re, '\t');
|
text += lines[i].text.replace(re, '\t');
|
||||||
if(lines[i].eol) {
|
if(includeEol && lines[i].eol) {
|
||||||
text += '\n';
|
text += '\n';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -380,7 +380,7 @@ function MultiLineEditTextView2(options) {
|
||||||
self.cursorPos.col++;
|
self.cursorPos.col++;
|
||||||
|
|
||||||
var text = self.getText(index);
|
var text = self.getText(index);
|
||||||
var cursorOffset = 0;
|
var cursorOffset;
|
||||||
|
|
||||||
if(self.getText(index).length >= self.dimens.width) {
|
if(self.getText(index).length >= self.dimens.width) {
|
||||||
//
|
//
|
||||||
|
@ -391,11 +391,10 @@ function MultiLineEditTextView2(options) {
|
||||||
for(var i = text.length; 0 !== i; i--) {
|
for(var i = text.length; 0 !== i; i--) {
|
||||||
if(/\s/.test(text[i])) {
|
if(/\s/.test(text[i])) {
|
||||||
i++; // advance to actual character, if any
|
i++; // advance to actual character, if any
|
||||||
console.log(i);
|
|
||||||
if(self.cursorPos.col >= i && self.cursorPos.col <= text.length) {
|
if(self.cursorPos.col >= i && self.cursorPos.col <= text.length) {
|
||||||
i = self.cursorPos.col - i;
|
i = self.cursorPos.col - i;
|
||||||
cursorOffset = i - 1;
|
cursorOffset = i;
|
||||||
console.log(i)
|
console.log('cursorOffset=' + i)
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
@ -410,7 +409,7 @@ function MultiLineEditTextView2(options) {
|
||||||
var nextEolIndex = self.getNextEndOfLineIndex(index);
|
var nextEolIndex = self.getNextEndOfLineIndex(index);
|
||||||
var newLines = self.wordWrapSingleLine(self.getOutputText(index, nextEolIndex));
|
var newLines = self.wordWrapSingleLine(self.getOutputText(index, nextEolIndex));
|
||||||
|
|
||||||
console.log(self.getOutputText(index, nextEolIndex))
|
console.log('"' + self.getOutputText(index, nextEolIndex) + '"')
|
||||||
|
|
||||||
for(var i = 0; i < newLines.length; ++i) {
|
for(var i = 0; i < newLines.length; ++i) {
|
||||||
newLines[i] = { text : newLines[i] };
|
newLines[i] = { text : newLines[i] };
|
||||||
|
@ -429,14 +428,21 @@ function MultiLineEditTextView2(options) {
|
||||||
self.textLines,
|
self.textLines,
|
||||||
[ index, (nextEolIndex - index) + 1 ].concat(newLines));
|
[ index, (nextEolIndex - index) + 1 ].concat(newLines));
|
||||||
|
|
||||||
//console.log('----')
|
console.log('----')
|
||||||
//console.log(self.textLines)
|
console.log(self.textLines)
|
||||||
|
|
||||||
var absPos = self.getAbsolutePosition(self.cursorPos.row, self.cursorPos.col);
|
var absPos = self.getAbsolutePosition(self.cursorPos.row, self.cursorPos.col);
|
||||||
|
|
||||||
// redraw from current row to end of visible area
|
// redraw from current row to end of visible area
|
||||||
self.redrawRows(self.cursorPos.row, self.dimens.height);
|
self.redrawRows(self.cursorPos.row, self.dimens.height);
|
||||||
self.client.term.write(ansi.goto(absPos.row, absPos.col));
|
|
||||||
|
if(!_.isUndefined(cursorOffset)) {
|
||||||
|
self.cursorBeginOfNextLine();
|
||||||
|
self.cursorPos.col += cursorOffset;
|
||||||
|
self.client.term.write(ansi.right(cursorOffset));
|
||||||
|
} else {
|
||||||
|
self.client.term.write(ansi.goto(absPos.row, absPos.col));
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
//console.log('redraw col+\n' + self.getRenderText(index).slice(self.cursorPos.col - 1) )
|
//console.log('redraw col+\n' + self.getRenderText(index).slice(self.cursorPos.col - 1) )
|
||||||
//
|
//
|
||||||
|
@ -519,7 +525,7 @@ function MultiLineEditTextView2(options) {
|
||||||
} else {
|
} else {
|
||||||
self.cursorPos.col = 0;
|
self.cursorPos.col = 0;
|
||||||
}
|
}
|
||||||
console.log(self.getVisibleText())
|
console.log('"' + self.getVisibleText() + '"')
|
||||||
self.moveClientCusorToCursorPos();
|
self.moveClientCusorToCursorPos();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -673,7 +679,7 @@ MultiLineEditTextView2.prototype.setFocus = function(focused) {
|
||||||
MultiLineEditTextView2.prototype.setText = function(text) {
|
MultiLineEditTextView2.prototype.setText = function(text) {
|
||||||
this.textLines = [ ];
|
this.textLines = [ ];
|
||||||
//text = "Tab:\r\n\tA\tB\tC\tD\tE\tF\tG\r\n reeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeally long word!!!";
|
//text = "Tab:\r\n\tA\tB\tC\tD\tE\tF\tG\r\n reeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeally long word!!!";
|
||||||
text = require('fs').readFileSync('/home/bashby/Downloads/test_text.txt', { encoding : 'utf-8'});
|
text = require('fs').readFileSync('/home/nuskooler/Downloads/test_text.txt', { encoding : 'utf-8'});
|
||||||
|
|
||||||
this.insertText(text);//, 0, 0);
|
this.insertText(text);//, 0, 0);
|
||||||
this.cursorEndOfDocument();
|
this.cursorEndOfDocument();
|
||||||
|
|
|
@ -117,6 +117,9 @@ function getThemeArt(name, themeID, options, cb) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// set/override some options
|
// set/override some options
|
||||||
|
|
||||||
|
// :TODO: replace asAnsi stuff with something like retrieveAs = 'ansi' | 'pipe' | ...
|
||||||
|
// :TODO: Some of these options should only be set if not provided!
|
||||||
options.asAnsi = true;
|
options.asAnsi = true;
|
||||||
options.readSauce = true; // encoding/fonts/etc.
|
options.readSauce = true; // encoding/fonts/etc.
|
||||||
options.random = miscUtil.valueWithDefault(options.random, true);
|
options.random = miscUtil.valueWithDefault(options.random, true);
|
||||||
|
|
Loading…
Reference in New Issue