github xtermjs/xterm.js 3.14.0

latest releases: 5.5.0, 5.4.0, 5.3.0...
4 years ago

📢 Our next release will be v4, read more here 👉 #2143.

Compatible new addon versions:

  • xterm-addon-fit@0.1.0-beta1

🚀 Features

📦 API

For the complete details on the new APIs, see the typings file. For APIs marked experimental we're hoping to stabilize them in v4 and want feedback from the community to make sure they are useful.

  • Support writing raw UTF-8 data directly, which may help avoid an unnecessary conversion to a relatively heavy JS string (#1904) via @jerch
    const data = new Uint8Array([102, 111, 111]);
    term.writeUtf8(data);
  • New experimental addon API (#2065, #2116) via @Tyriar
    // A simple example addon
    const addon = {
      activate: (term: Terminal) => {
        console.log('addon activated');
      },
      dispose: () => { }
    }
    term.loadAddon(addon);
  • New experimental buffer API (#2074) via @Tyriar. Consumers can finally query the textual state of the terminal.
    // Print the line that the cursor is on as text
    term.buffer.getLine(term.buffer.cursorY).translateToString(true);
  • New select and getSelectionPosition APIs (#2078) via @Tyriar
    term.select(5, 2, 10);
    console.log(term.getSelectionPosition());
    // {startColumn: 5, startRow: 2, endColumn: 15, endRow: 2}

🐞 Bug fixes

  • Add missing typings for windowsMode option (#2062) via @Tyriar
  • Improve spacing between characters in DOM renderer (#2067) via @starpit
  • Dispose of old data in the write buffer once it's been written if xterm.js hasn't caught up (#2120) via @jerch
  • Fix wrong colors printing for 256 color mode (#2125) via @jerch
  • Fix loss of data during a RIS (full reset) (#2127) via @jerch
  • Only update the accessibiltiy announcements during an animation frame (#2128) via @Tyriar
  • Fix a NPE in reflow (#2131) via @Tyriar
  • Ensure underline is rendered correctly in canvas renderer (#2134) via @Tyriar
  • Fix a font rendering issue where settings/colors wouldn't be picked up (#2140) via @Tyriar
  • webLinks addon

📝 Documentation and internal improvements

Don't miss a new xterm.js release

NewReleases is sending notifications on new releases.