Xterm.js 4.0 发布,前端终端组件

xterm 是一个使用 TypeScript 编写的前端终端组件,可以直接在浏览器中实现一个命令行终端应用。4.0 已经发布,主要如下:

  • 添加新的插件系统,包括 WebGL 渲染器插件的实验版本
  • 改进构建过程和缩小 npm 的可分配性
  • 使解析器更加兼容和可扩展
  • 启用 TypeScript 模式
  • 删除不使用的 API
  • 其他错误修复

新的插件系统

这个新系统允许将利用 xterm.js API 的其他功能封装到一个模块中,该模块可以在 xterm.js 的用户之间共享。API 与以前的版本相比有了改进,支持 TypeScript 和每个终端的生命周期管理。

export class Terminal implements IDisposable {
  /**
  * Loads an addon into this instance of xterm.js.
  * @param addon The addon to load.
  */
  loadAddon(addon: ITerminalAddon): void;
}

/**
* An addon that can provide additional functionality to the terminal.
*/
export interface ITerminalAddon extends IDisposable {
  /**
  * This is called when the addon is activated.
  */
  activate(terminal: Terminal): void;
}

创建一个插件就如为一个对象提供 Activate 和 Dispose 方法一样:

class ExampleAddon {
  private _terminal: Terminal | undefined;
  activate(terminal: Terminal): void {
    this._terminal = terminal;
    console.log('activated');
  }
  dispose(): void {
    console.log('disposed');
  }
}

使用如下:

const terminal = new Terminal();
terminal.loadAddon(new ExampleAddon());
// Logs 'activated'
terminal.dispose();
// Logs 'disposed'

该版本还有 API 的更新和错误修复,详情见发布说明:

https://github.com/xtermjs/xterm.js/releases/tag/4.0.0

猜你喜欢

转载自www.oschina.net/news/109816/xterm-js-4-0-released
今日推荐