Skip to content

Commit d4977c3

Browse files
Fixed Esc[J, Esc[0J and Esc[1J erasing escape sequences
1 parent 61f1293 commit d4977c3

2 files changed

Lines changed: 9 additions & 5 deletions

File tree

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
"printableName": "Cache Web Terminal",
66
"description": "Web-based terminal emulator for Caché administering.",
77
"author": "ZitRo",
8-
"version": "4.2.0",
8+
"version": "4.2.1",
99
"gaID": "UA-83005064-2",
1010
"releaseNumber": 26,
1111
"scripts": {

src/client/js/output/esc.js

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ let cursorHome,
1717
* "\n{![abc]+}" Regex-es can be mandatory, when the first character "!" is put (not a regex part).
1818
* Mandatory regex-es will block any output until the regex matches.
1919
*/
20-
export default {
20+
let esc = {
2121
"\u000C": () => {
2222
output.clear();
2323
},
@@ -173,14 +173,16 @@ export default {
173173
output.getCurrentLine().clear();
174174
},
175175
"\x1b[J": temp = () => {
176-
let y = output.getCursorY();
176+
let y = output.getCursorY() + 1;
177+
esc["\x1b[K"]();
177178
for (; y < output.HEIGHT + 1; y++) {
178179
output.getLineByCursorY(y).clear();
179180
}
180181
},
181182
"\x1b[0J": temp,
182183
"\x1b[1J": () => {
183-
let y = output.getCursorY();
184+
let y = output.getCursorY() - 1;
185+
esc["\x1b[1K"]();
184186
for (; y > 0; y--) {
185187
output.getLineByCursorY(y).clear();
186188
}
@@ -246,4 +248,6 @@ export default {
246248
output.setCursorYToLineIndex(nextIndex); // jump to new index
247249
output.setCursorX(1);
248250
}
249-
}
251+
};
252+
253+
export default esc;

0 commit comments

Comments
 (0)