Download Latest Version 5.5.0 source code.tar.gz (10.7 MB)
Email in envelope

Get an email when there's a new version of xterm.js

Home / 5.3.0
Name Modified Size InfoDownloads / Week
Parent folder
5.3.0 source code.tar.gz 2023-09-07 10.7 MB
5.3.0 source code.zip 2023-09-07 10.9 MB
README.md 2023-09-07 5.5 kB
Totals: 3 Items   21.5 MB 0

πŸš€ Features

  • The default DOM-based renderer is significantly faster now (#4605, [#4631], [#4651], [#4662], [#4681], [#4754]) via @jerch, @Tyriar, @PerBothner, @tisilent
  • The smooth scroll feature now affects scrollLines, scrollPages,scrollToLine, scrollToTop and scrollToBottom (#4482, [#4714]) via @tisilent, @Tyriar
  • minimumContrastRatio now applies 50% of the contrast ratio to dimmed text (#4672) via @Tyrira

πŸ“¦ API

  • There's a new trace log level (#4687, 4709) via @Tyriar ts const term = new Terminal({ logLevel: 'trace' });
  • New logger delegate option (#4563, [#4564]) via @Tyriar. This new API allows the embedder to define the logging behavior, instead of always using to console ts const term = new Terminal({ logger: { trace: (e, args) => console.log('trace: ', e, args), debug: (e, args) => console.log('debug: ', e, args), info: (e, args) => console.log('info: ', e, args), warn: (e, args) => console.log('warn: ', e, args), error: (e, args) => console.log('error: ', e, args) } });
  • New ignoreBracketedPasteMode option that allows explicitly disabling bracketed paste mode, regardless of whether the shell enables it or not (#4636) via @Tyriar ts const term = new Terminal({ ignoreBracketedPasteMode: true });
  • New cursorInactiveStyle option (#4657) via @tisilent ts const term = new Terminal({ cursorInactiveStyle: 'none' });

🐞 Bug fixes

  • Fix character size being affected by CSS transformations (#4366) via @arekouzounian
  • Fix mouse tracking behavior (#4583) via @jerch
  • Improve rendering of the DOM renderer's underline cursor (#4584) via @dlech
  • Fix issues in the accessibility tree (#4637) via @meganrogge
  • Fix reset and clear leaving viewport in a bad state (#4638) via @Tyriar
  • Fix API facade memory leaks (#4655) via @Tyriar
  • Fix memory leak in cursor blink state manager (#4659) via @SvanT
  • Fix inverse rendering when a transparent foreground is used (#4667) via @Dennnnny
  • Fix disposing of decorations (#4671) via @Tyriar
  • Render selection background consistently in the DOM renderer (#4673) via @Tyriar
  • Improve rendering of powerline circle line custom glyph (#4729) via @tisilent
  • Improve texture atlas utilization and fix glyph corruption when merging (#4732) via @Tyriar

πŸ“ Documentation and internal improvements

  • Improve safety of log service (#4565) via @Tyriar
  • Exploring use of CSSStyleSheet web API (#4611, ##4619, [#4678], [#4680]) via @SimonSiefke, @Tyriar
  • Update TypeScript to 5.1.6 (#4612) via @SimonSiefke
  • Mention discussions in CONTRIBUTING.md (#4617) via @Tyriar
  • Improve type safety of ColorIndex (#4618) via @Tyriar
  • Fix demo light theme cursor colors (#4626) via @Tyriar
  • Add nvmrc using node 16 (#4666) via @Tyriar
  • Restrict comments to 100 characters (#4668) via @Tyriar
  • Lint API xterm.d.ts file (#4669, [#4677]) via @Tyriar
  • General clean up (#4676, [#4683], [#4688], [#4689], [#4733]) via @Tyriar
  • Reduce repetition with internal terminal types and inherit docs from API (#4679) via @Tyriar
  • Improve lifecycle of WebLinksAddon.api, test all country tlds (#4691) via @Tyriar
  • Stub out all CSI api tests (#4692) via @Tyriar
  • Migrate to GitHub Actions and speed up CI (#4693, [#4697], [#4698], [#4699], [#4700], [#4710], [#4712], [#4715], [#4716], [#4734]) via @Tyriar
  • Fix spaces in bce demo (#4694) via @jerch
  • Add automatic resize to demo (#4695) via @PerBothner
  • Add no unused variables lint warning (#4718) via @Tyriar
  • Fix demo warnings (#4721, [#4722]) via @Tyriar
  • Adopt @ts-check in JS files (#4723, [#4724]) via @Tyriar
  • Warn on eslint rule @typescript-eslint/no-useless-constructor (#4725) via @Tyriar
  • Warn on eslint rule @typescript-eslint/no-confusing-void-expression (#4726) via @Tyriar
  • Start migration to @playwright/test as the integration test runner (#4735) via @Tyriar

πŸŽ‰ New real-world use cases

  • cloudtutor.io (#4570) via @naufalafif
  • Helix Editor Playground (#4585) via @tomgroenwoldt
  • Coder (#4595) via @matifali

πŸ“₯ Addons

xterm-addon-canvas

  • Add getRasterizedGlyph null and undefined check (#4596) via @lewis-sanchez
  • Fix various underlines by rendering them upwards (#4648, [#4664]) via @tisilent

xterm-addon-image

  • The images addon has been merged into the main repository (#4577, [#4727]) via @jerch

xterm-addon-ligatures

  • Enable the ligatures addon on Electron (#4387) via @LabhanshAgrawal

xterm-addon-serialize

  • Fallback to default ANSIcolors when running xterm-headless (#4348) via @silamon

xterm-addon-webgl

  • Render the cursor in the WebGL canvas (#4568) via @xzfc

🀝 Compatible addon versions

Addon Version
xterm-addon-attach 0.9.0
xterm-addon-canvas 0.5.0
xterm-addon-fit 0.8.0
xterm-addon-image 0.5.0
xterm-addon-ligatures 0.7.0
xterm-addon-search 0.13.0
xterm-addon-serialize 0.11.0
xterm-addon-unicode11 0.6.0
xterm-addon-web-links 0.9.0
xterm-addon-webgl 0.16.0

🌐 Website

Pull from https://github.com/xtermjs/xtermjs.org/pulls?q=is%3Apr+sort%3Aupdated-desc+is%3Aclosed

Source: README.md, updated 2023-09-07