Merge branch 'master' into clusters

This commit is contained in:
Per Bothner
2023-06-27 13:31:23 -07:00
committed by GitHub
24 changed files with 467 additions and 98 deletions
+70
View File
@@ -107,6 +107,11 @@ declare module 'xterm-headless' {
*/
logLevel?: LogLevel;
/**
* A logger to use instead of `console`.
*/
logger?: ILogger | null;
/**
* Whether to treat option as the meta key.
*/
@@ -183,9 +188,34 @@ declare module 'xterm-headless' {
* - Reflow is disabled.
* - Lines are assumed to be wrapped if the last character of the line is
* not whitespace.
*
* When using conpty on Windows 11 version >= 21376, it is recommended to
* disable this because native text wrapping sequences are output correctly
* thanks to https://github.com/microsoft/terminal/issues/405
*
* @deprecated Use {@link windowsPty}. This value will be ignored if
* windowsPty is set.
*/
windowsMode?: boolean;
/**
* Compatibility information when the pty is known to be hosted on Windows.
* Setting this will turn on certain heuristics/workarounds depending on the
* values:
*
* - `if (!!windowsCompat)`
* - When increasing the rows in the terminal, the amount increased into
* the scrollback. This is done because ConPTY does not behave like
* expect scrollback to come back into the viewport, instead it makes
* empty rows at of the viewport. Not having this behavior can result in
* missing data as the rows get replaced.
* - `if !(backend === 'conpty' && buildNumber >= 21376)`
* - Reflow is disabled
* - Lines are assumed to be wrapped if the last character of the line is
* not whitespace.
*/
windowsPty?: IWindowsPty;
/**
* A string containing all characters that are considered word separated by the
* double click to select work logic.
@@ -265,6 +295,46 @@ declare module 'xterm-headless' {
extendedAnsi?: string[];
}
/**
* Pty information for Windows.
*/
export interface IWindowsPty {
/**
* What pty emulation backend is being used.
*/
backend?: 'conpty' | 'winpty';
/**
* The Windows build version (eg. 19045)
*/
buildNumber?: number;
}
/**
* A replacement logger for `console`.
*/
export interface ILogger {
/**
* Log a debug message, this will only be called if {@link ITerminalOptions.logLevel} is set to
* debug.
*/
debug(message: string, ...args: any[]): void;
/**
* Log a debug message, this will only be called if {@link ITerminalOptions.logLevel} is set to
* info or below.
*/
info(message: string, ...args: any[]): void;
/**
* Log a debug message, this will only be called if {@link ITerminalOptions.logLevel} is set to
* warn or below.
*/
warn(message: string, ...args: any[]): void;
/**
* Log a debug message, this will only be called if {@link ITerminalOptions.logLevel} is set to
* error or below.
*/
error(message: string | Error, ...args: any[]): void;
}
/**
* An object that can be disposed via a dispose function.
*/
+66
View File
@@ -152,6 +152,11 @@ declare module 'xterm' {
*/
logLevel?: LogLevel;
/**
* A logger to use instead of `console`.
*/
logger?: ILogger | null;
/**
* Whether to treat option as the meta key.
*/
@@ -238,9 +243,30 @@ declare module 'xterm' {
* When using conpty on Windows 11 version >= 21376, it is recommended to
* disable this because native text wrapping sequences are output correctly
* thanks to https://github.com/microsoft/terminal/issues/405
*
* @deprecated Use {@link windowsPty}. This value will be ignored if
* windowsPty is set.
*/
windowsMode?: boolean;
/**
* Compatibility information when the pty is known to be hosted on Windows.
* Setting this will turn on certain heuristics/workarounds depending on the
* values:
*
* - `if (backend !== undefined || buildNumber !== undefined)`
* - When increasing the rows in the terminal, the amount increased into
* the scrollback. This is done because ConPTY does not behave like
* expect scrollback to come back into the viewport, instead it makes
* empty rows at of the viewport. Not having this behavior can result in
* missing data as the rows get replaced.
* - `if !(backend === 'conpty' && buildNumber >= 21376)`
* - Reflow is disabled
* - Lines are assumed to be wrapped if the last character of the line is
* not whitespace.
*/
windowsPty?: IWindowsPty;
/**
* A string containing all characters that are considered word separated by the
* double click to select work logic.
@@ -330,6 +356,46 @@ declare module 'xterm' {
extendedAnsi?: string[];
}
/**
* Pty information for Windows.
*/
export interface IWindowsPty {
/**
* What pty emulation backend is being used.
*/
backend?: 'conpty' | 'winpty';
/**
* The Windows build version (eg. 19045)
*/
buildNumber?: number;
}
/**
* A replacement logger for `console`.
*/
export interface ILogger {
/**
* Log a debug message, this will only be called if {@link ITerminalOptions.logLevel} is set to
* debug.
*/
debug(message: string, ...args: any[]): void;
/**
* Log a debug message, this will only be called if {@link ITerminalOptions.logLevel} is set to
* info or below.
*/
info(message: string, ...args: any[]): void;
/**
* Log a debug message, this will only be called if {@link ITerminalOptions.logLevel} is set to
* warn or below.
*/
warn(message: string, ...args: any[]): void;
/**
* Log a debug message, this will only be called if {@link ITerminalOptions.logLevel} is set to
* error or below.
*/
error(message: string | Error, ...args: any[]): void;
}
/**
* An object that can be disposed via a dispose function.
*/