From e454c170f81a39dd2cea9ab93a40f2b4d234de5a Mon Sep 17 00:00:00 2001 From: sawka Date: Fri, 19 Aug 2022 15:54:38 -0700 Subject: [PATCH] don't report parse errors to console (lots of invalid terminal output). e.g. cat'ing a binary file will produce thousands of errors, but that's just how it is. --- src/term.ts | 5 +++++ src/types.ts | 1 + 2 files changed, 6 insertions(+) diff --git a/src/term.ts b/src/term.ts index eec90731..ea2f784d 100644 --- a/src/term.ts +++ b/src/term.ts @@ -47,6 +47,7 @@ class TermWrap { dataUpdates : DataUpdate[] = []; loadError : mobx.IObservableValue = mobx.observable.box(false); winSize : WindowSize; + numParseErrors : number = 0; constructor(elem : Element, sessionId : string, cmdId : string, usedRows : number, termOpts : TermOptsType, winSize : WindowSize, keyHandler : (event : any) => void) { this.sessionId = sessionId; @@ -68,6 +69,10 @@ class TermWrap { cols = maxCols; } this.terminal = new Terminal({rows: termOpts.rows, cols: maxCols, fontSize: 14, theme: {foreground: "#d3d7cf"}}); + this.terminal._core._inputHandler._parser.setErrorHandler((state) => { + this.numParseErrors++; + return state; + }); this.terminal.open(elem); if (keyHandler != null) { this.terminal.onKey(keyHandler); diff --git a/src/types.ts b/src/types.ts index 8015ea0c..30d276fb 100644 --- a/src/types.ts +++ b/src/types.ts @@ -145,6 +145,7 @@ type TermOptsType = { rows : number, cols : number, flexrows? : boolean, + maxptysize? : number, }; type CmdStartPacketType = {