* fix(addon-search): advance highlight scan by buffer match size _highlightAllMatches() stepped to the next find() using term.length and col + 1 when staying on the same row. Search results expose size in buffer columns (wide glyphs, wrapped matches), which select() and decorations already use. Advance with col + size and wrap row/col when crossing the terminal width so highlight-all does not skip, duplicate, or stop early on non-ASCII matches. Co-authored-by: Cursor <cursoragent@cursor.com> * test(addon-search): regression for highlight-all wide char advance by size Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com> * test(addon-search): move highlight-all regression to integration tests Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com> --------- Co-authored-by: Cursor <cursoragent@cursor.com> Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com>
@xterm/addon-search
An addon for xterm.js that enables searching the buffer. This addon requires xterm.js v4+.
Install
npm install --save @xterm/addon-search
Usage
import { Terminal } from '@xterm/xterm';
import { SearchAddon } from '@xterm/addon-search';
const terminal = new Terminal();
const searchAddon = new SearchAddon();
terminal.loadAddon(searchAddon);
searchAddon.findNext('foo');
See the full API for more advanced usage.