From 73b3e31b388c5eb014fb7e0d288b8def3ca74815 Mon Sep 17 00:00:00 2001 From: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Thu, 28 Jul 2022 04:37:42 -0700 Subject: [PATCH] Canvas readme --- addons/xterm-addon-canvas/README.md | 22 +++++++++++++++++++- addons/xterm-addon-canvas/src/CanvasAddon.ts | 11 ---------- addons/xterm-addon-webgl/README.md | 1 + 3 files changed, 22 insertions(+), 12 deletions(-) diff --git a/addons/xterm-addon-canvas/README.md b/addons/xterm-addon-canvas/README.md index deec04c6..ed65967d 100644 --- a/addons/xterm-addon-canvas/README.md +++ b/addons/xterm-addon-canvas/README.md @@ -1,3 +1,23 @@ ## xterm-addon-canvas -TODO: Doc +An addon for [xterm.js](https://github.com/xtermjs/xterm.js) that enables a canvas-based renderer using a 2d context to draw. This addon requires xterm.js v5+. + + +### Install + +```bash +npm install --save xterm-addon-canvas +``` + +### Usage + +```ts +import { Terminal } from 'xterm'; +import { CanvasAddon } from 'xterm-addon-canvas'; + +const terminal = new Terminal(); +terminal.open(element); +terminal.loadAddon(new CanvasAddon()); +``` + +See the full [API](https://github.com/xtermjs/xterm.js/blob/master/addons/xterm-addon-canvas/typings/xterm-addon-canvas.d.ts) for more advanced usage. diff --git a/addons/xterm-addon-canvas/src/CanvasAddon.ts b/addons/xterm-addon-canvas/src/CanvasAddon.ts index 81594ef0..8b8dcee6 100644 --- a/addons/xterm-addon-canvas/src/CanvasAddon.ts +++ b/addons/xterm-addon-canvas/src/CanvasAddon.ts @@ -12,8 +12,6 @@ import { ITerminalAddon, Terminal } from 'xterm'; export class CanvasAddon implements ITerminalAddon { private _terminal?: Terminal; private _renderer?: CanvasRenderer; - // private _onContextLoss = new EventEmitter(); - // public get onContextLoss(): IEvent { return this._onContextLoss.event; } public activate(terminal: Terminal): void { if (!terminal.element) { @@ -27,7 +25,6 @@ export class CanvasAddon implements ITerminalAddon { const screenElement: HTMLElement = (terminal as any)._core.screenElement; const linkifier = (terminal as any)._core.linkifier2; this._renderer = instantiationService.createInstance(CanvasRenderer, colors, screenElement, linkifier); - // this._renderer.onContextLoss(() => this._onContextLoss.fire()); renderService.setRenderer(this._renderer); renderService.onResize(bufferService.cols, bufferService.rows); } @@ -42,12 +39,4 @@ export class CanvasAddon implements ITerminalAddon { this._renderer?.dispose(); this._renderer = undefined; } - - // public get textureAtlas(): HTMLCanvasElement | undefined { - // return this._renderer?.textureAtlas; - // } - - // public clearTextureAtlas(): void { - // this._renderer?.clearCharAtlas(); - // } } diff --git a/addons/xterm-addon-webgl/README.md b/addons/xterm-addon-webgl/README.md index da63e743..2519fb7b 100644 --- a/addons/xterm-addon-webgl/README.md +++ b/addons/xterm-addon-webgl/README.md @@ -16,6 +16,7 @@ import { Terminal } from 'xterm'; import { WebglAddon } from 'xterm-addon-webgl'; const terminal = new Terminal(); +terminal.open(element); terminal.loadAddon(new WebglAddon()); ```