diff --git a/demo/index.html b/demo/index.html
index 764c844..c3721a2 100644
--- a/demo/index.html
+++ b/demo/index.html
@@ -17,10 +17,13 @@
Options
-
+
-
+
+
+
+
Size
diff --git a/demo/main.js b/demo/main.js
index 078b5c8..a5f8460 100644
--- a/demo/main.js
+++ b/demo/main.js
@@ -9,7 +9,8 @@ var term,
var terminalContainer = document.getElementById('terminal-container'),
optionElements = {
cursorBlink: document.querySelector('#option-cursor-blink'),
- scrollback: document.querySelector('#option-scrollback')
+ scrollback: document.querySelector('#option-scrollback'),
+ tabstopwidth: document.querySelector('#option-tabstopwidth')
},
colsElement = document.getElementById('cols'),
rowsElement = document.getElementById('rows');
@@ -32,7 +33,11 @@ optionElements.cursorBlink.addEventListener('change', function () {
term.setOption('cursorBlink', optionElements.cursorBlink.checked);
});
optionElements.scrollback.addEventListener('change', function () {
- terminal.setOption('scrollback', parseInt(optionElements.scrollback.value, 10));
+ term.setOption('scrollback', parseInt(optionElements.scrollback.value, 10));
+});
+optionElements.tabstopwidth.addEventListener('change', function () {
+ term.setOption('tabStopWidth', parseInt(optionElements.tabstopwidth.value));
+ term.setupStops();
});
createTerminal();
@@ -44,7 +49,8 @@ function createTerminal() {
}
term = new Terminal({
cursorBlink: optionElements.cursorBlink.checked,
- scrollback: parseInt(optionElements.scrollback.value, 10)
+ scrollback: parseInt(optionElements.scrollback.value, 10),
+ tabStopWidth: parseInt(optionElements.tabstopwidth.value)
});
term.on('resize', function (size) {
if (!pid) {
diff --git a/src/xterm.js b/src/xterm.js
index 7f50295..3c205ad 100644
--- a/src/xterm.js
+++ b/src/xterm.js
@@ -360,7 +360,8 @@ Terminal.defaults = {
screenKeys: false,
debug: false,
cancelEvents: false,
- disableStdin: false
+ disableStdin: false,
+ tabStopWidth: 8
// programFeatures: false,
// focusKeys: false,
};
@@ -2118,7 +2119,7 @@ Terminal.prototype.setupStops = function(i) {
i = 0;
}
- for (; i < this.cols; i += 8) {
+ for (; i < this.cols; i += this.getOption('tabStopWidth')) {
this.tabs[i] = true;
}
};