@jupyterlab/terminal 4.5.0-alpha.2 → 4.5.0-alpha.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/tokens.d.ts +7 -0
- package/lib/tokens.js.map +1 -1
- package/lib/widget.d.ts +19 -0
- package/lib/widget.js +69 -26
- package/lib/widget.js.map +1 -1
- package/package.json +9 -6
- package/src/tokens.ts +8 -0
- package/src/widget.ts +83 -33
package/lib/tokens.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { IWidgetTracker, MainAreaWidget } from '@jupyterlab/apputils';
|
|
2
2
|
import { Terminal } from '@jupyterlab/services';
|
|
3
3
|
import { Token } from '@lumino/coreutils';
|
|
4
|
+
import { ISignal } from '@lumino/signaling';
|
|
4
5
|
import { Widget } from '@lumino/widgets';
|
|
5
6
|
/**
|
|
6
7
|
* A class that tracks editor widgets.
|
|
@@ -45,6 +46,11 @@ export declare namespace ITerminal {
|
|
|
45
46
|
* Get selected text from terminal.
|
|
46
47
|
*/
|
|
47
48
|
getSelection(): string | null;
|
|
49
|
+
/**
|
|
50
|
+
* A signal emitted when the terminal theme changes, this includes the when the lab theme
|
|
51
|
+
* changes if the terminal theme is 'inherit'.
|
|
52
|
+
*/
|
|
53
|
+
themeChanged: ISignal<this, void>;
|
|
48
54
|
}
|
|
49
55
|
/**
|
|
50
56
|
* Options for the terminal widget.
|
|
@@ -124,5 +130,6 @@ export declare namespace ITerminal {
|
|
|
124
130
|
cursorAccent: string;
|
|
125
131
|
selectionBackground: string;
|
|
126
132
|
selectionInactiveBackground: string;
|
|
133
|
+
activeMatchBackground: string;
|
|
127
134
|
}
|
|
128
135
|
}
|
package/lib/tokens.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tokens.js","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,2DAA2D;AAI3D,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"tokens.js","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,2DAA2D;AAI3D,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAU1C;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,KAAK,CACvC,uCAAuC,EACvC;;8BAE4B,CAC7B,CAAC;AAEF;;;GAGG;AACH,MAAM,KAAW,SAAS,CAwJzB;AAxJD,WAAiB,SAAS;IAoHxB;;OAEG;IACU,wBAAc,GAAa;QACtC,KAAK,EAAE,SAAS;QAChB,UAAU,EAAE,gDAAgD;QAC5D,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE,GAAG;QACf,UAAU,EAAE,IAAI;QAChB,eAAe,EAAE,KAAK;QACtB,WAAW,EAAE,IAAI;QACjB,WAAW,EAAE,IAAI;QACjB,cAAc,EAAE,EAAE;QAClB,gBAAgB,EAAE,KAAK,EAAE,kEAAkE;QAC3F,cAAc,EAAE,IAAI;QACpB,OAAO,EAAE,IAAI;QACb,eAAe,EAAE,KAAK;KACvB,CAAC;AAmBJ,CAAC,EAxJgB,SAAS,KAAT,SAAS,QAwJzB"}
|
package/lib/widget.d.ts
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { Terminal as TerminalNS } from '@jupyterlab/services';
|
|
2
2
|
import { ITranslator } from '@jupyterlab/translation';
|
|
3
3
|
import { Message } from '@lumino/messaging';
|
|
4
|
+
import { ISignal } from '@lumino/signaling';
|
|
4
5
|
import { Widget } from '@lumino/widgets';
|
|
6
|
+
import type { SearchAddon } from '@xterm/addon-search';
|
|
5
7
|
import { ITerminal } from '.';
|
|
6
8
|
/**
|
|
7
9
|
* A widget which manages a terminal session.
|
|
@@ -65,6 +67,21 @@ export declare class Terminal extends Widget implements ITerminal.ITerminal {
|
|
|
65
67
|
* Subclasses may reimplement this method as needed.
|
|
66
68
|
*/
|
|
67
69
|
processMessage(msg: Message): void;
|
|
70
|
+
/**
|
|
71
|
+
* Return xtermjs SearchAddon.
|
|
72
|
+
* Public as needed by TerminalSearchProvider
|
|
73
|
+
*/
|
|
74
|
+
get searchAddon(): SearchAddon;
|
|
75
|
+
/**
|
|
76
|
+
* Return terminal theme.
|
|
77
|
+
* Public as needed by TerminalSearchProvider
|
|
78
|
+
*/
|
|
79
|
+
getXTermTheme(): ITerminal.IThemeObject;
|
|
80
|
+
/**
|
|
81
|
+
* A signal emitted when the terminal theme changes, this includes the when the lab theme
|
|
82
|
+
* changes if the terminal theme is 'inherit'.
|
|
83
|
+
*/
|
|
84
|
+
get themeChanged(): ISignal<this, void>;
|
|
68
85
|
/**
|
|
69
86
|
* Set the size of the terminal when attached if dirty.
|
|
70
87
|
*/
|
|
@@ -108,6 +125,7 @@ export declare class Terminal extends Widget implements ITerminal.ITerminal {
|
|
|
108
125
|
private _setSessionSize;
|
|
109
126
|
private _setThemeAttribute;
|
|
110
127
|
private _fitAddon;
|
|
128
|
+
private _searchAddon;
|
|
111
129
|
private _needsResize;
|
|
112
130
|
private _offsetWidth;
|
|
113
131
|
private _offsetHeight;
|
|
@@ -117,4 +135,5 @@ export declare class Terminal extends Widget implements ITerminal.ITerminal {
|
|
|
117
135
|
private _term;
|
|
118
136
|
private _termOpened;
|
|
119
137
|
private _trans;
|
|
138
|
+
private _themeChanged;
|
|
120
139
|
}
|
package/lib/widget.js
CHANGED
|
@@ -4,7 +4,9 @@ import { nullTranslator } from '@jupyterlab/translation';
|
|
|
4
4
|
import { PromiseDelegate } from '@lumino/coreutils';
|
|
5
5
|
import { Platform } from '@lumino/domutils';
|
|
6
6
|
import { MessageLoop } from '@lumino/messaging';
|
|
7
|
+
import { Signal } from '@lumino/signaling';
|
|
7
8
|
import { Widget } from '@lumino/widgets';
|
|
9
|
+
import Color from 'color';
|
|
8
10
|
import { ITerminal } from '.';
|
|
9
11
|
/**
|
|
10
12
|
* The class name added to a terminal widget.
|
|
@@ -35,6 +37,7 @@ export class Terminal extends Widget {
|
|
|
35
37
|
this._isReady = false;
|
|
36
38
|
this._ready = new PromiseDelegate();
|
|
37
39
|
this._termOpened = false;
|
|
40
|
+
this._themeChanged = new Signal(this);
|
|
38
41
|
translator = translator || nullTranslator;
|
|
39
42
|
this._trans = translator.load('jupyterlab');
|
|
40
43
|
this.session = session;
|
|
@@ -43,6 +46,7 @@ export class Terminal extends Widget {
|
|
|
43
46
|
const { theme, ...other } = this._options;
|
|
44
47
|
const xtermOptions = {
|
|
45
48
|
theme: Private.getXTermTheme(theme),
|
|
49
|
+
allowProposedApi: true, // To support xtermjs SearchAddon coloring.
|
|
46
50
|
...other
|
|
47
51
|
};
|
|
48
52
|
this.addClass(TERMINAL_CLASS);
|
|
@@ -68,9 +72,10 @@ export class Terminal extends Widget {
|
|
|
68
72
|
}, this);
|
|
69
73
|
// Create the xterm.
|
|
70
74
|
Private.createTerminal(xtermOptions)
|
|
71
|
-
.then(([term, fitAddon]) => {
|
|
75
|
+
.then(([term, fitAddon, searchAddon]) => {
|
|
72
76
|
this._term = term;
|
|
73
77
|
this._fitAddon = fitAddon;
|
|
78
|
+
this._searchAddon = searchAddon;
|
|
74
79
|
this._initializeTerm();
|
|
75
80
|
this.id = `jp-Terminal-${Private.id++}`;
|
|
76
81
|
this.title.label = this._trans.__('Terminal');
|
|
@@ -136,6 +141,7 @@ export class Terminal extends Widget {
|
|
|
136
141
|
...Private.getXTermTheme(value)
|
|
137
142
|
};
|
|
138
143
|
this._setThemeAttribute(value);
|
|
144
|
+
this._themeChanged.emit();
|
|
139
145
|
break;
|
|
140
146
|
case 'macOptionIsMeta':
|
|
141
147
|
this._term.options.macOptionIsMeta = value;
|
|
@@ -219,6 +225,28 @@ export class Terminal extends Widget {
|
|
|
219
225
|
break;
|
|
220
226
|
}
|
|
221
227
|
}
|
|
228
|
+
/**
|
|
229
|
+
* Return xtermjs SearchAddon.
|
|
230
|
+
* Public as needed by TerminalSearchProvider
|
|
231
|
+
*/
|
|
232
|
+
get searchAddon() {
|
|
233
|
+
return this._searchAddon;
|
|
234
|
+
}
|
|
235
|
+
/**
|
|
236
|
+
* Return terminal theme.
|
|
237
|
+
* Public as needed by TerminalSearchProvider
|
|
238
|
+
*/
|
|
239
|
+
getXTermTheme() {
|
|
240
|
+
const { theme } = this._options;
|
|
241
|
+
return Private.getXTermTheme(theme);
|
|
242
|
+
}
|
|
243
|
+
/**
|
|
244
|
+
* A signal emitted when the terminal theme changes, this includes the when the lab theme
|
|
245
|
+
* changes if the terminal theme is 'inherit'.
|
|
246
|
+
*/
|
|
247
|
+
get themeChanged() {
|
|
248
|
+
return this._themeChanged;
|
|
249
|
+
}
|
|
222
250
|
/**
|
|
223
251
|
* Set the size of the terminal when attached if dirty.
|
|
224
252
|
*/
|
|
@@ -397,7 +425,8 @@ var Private;
|
|
|
397
425
|
cursor: '#616161', // md-grey-700
|
|
398
426
|
cursorAccent: '#F5F5F5', // md-grey-100
|
|
399
427
|
selectionBackground: 'rgba(97, 97, 97, 0.3)', // md-grey-700
|
|
400
|
-
selectionInactiveBackground: 'rgba(189, 189, 189, 0.3)' // md-grey-400
|
|
428
|
+
selectionInactiveBackground: 'rgba(189, 189, 189, 0.3)', // md-grey-400
|
|
429
|
+
activeMatchBackground: '#ffee58' // md-yellow-400
|
|
401
430
|
};
|
|
402
431
|
/**
|
|
403
432
|
* The dark terminal theme.
|
|
@@ -408,31 +437,40 @@ var Private;
|
|
|
408
437
|
cursor: '#fff',
|
|
409
438
|
cursorAccent: '#000',
|
|
410
439
|
selectionBackground: 'rgba(255, 255, 255, 0.3)',
|
|
411
|
-
selectionInactiveBackground: 'rgba(238, 238, 238, 0.3)' // md-grey-200
|
|
440
|
+
selectionInactiveBackground: 'rgba(238, 238, 238, 0.3)', // md-grey-200
|
|
441
|
+
activeMatchBackground: '#F57F17' // md-yellow-900
|
|
412
442
|
};
|
|
413
443
|
/**
|
|
414
444
|
* The current theme.
|
|
415
445
|
*/
|
|
416
|
-
Private.inheritTheme = () =>
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
.
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
.trim(),
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
446
|
+
Private.inheritTheme = () => {
|
|
447
|
+
const bodyStyle = getComputedStyle(document.body);
|
|
448
|
+
const background = bodyStyle.getPropertyValue('--jp-layout-color0').trim();
|
|
449
|
+
let activeMatchBackground = '#ffee58'; // md-yellow-400 for light mode background
|
|
450
|
+
try {
|
|
451
|
+
if (Color(background).isDark()) {
|
|
452
|
+
activeMatchBackground = '#F57F17'; // md-yellow-900 for dark mode background
|
|
453
|
+
}
|
|
454
|
+
}
|
|
455
|
+
catch (e) {
|
|
456
|
+
// Use the light mode default.
|
|
457
|
+
}
|
|
458
|
+
return {
|
|
459
|
+
foreground: bodyStyle.getPropertyValue('--jp-ui-font-color0').trim(),
|
|
460
|
+
background,
|
|
461
|
+
cursor: bodyStyle.getPropertyValue('--jp-ui-font-color1').trim(),
|
|
462
|
+
cursorAccent: bodyStyle
|
|
463
|
+
.getPropertyValue('--jp-ui-inverse-font-color0')
|
|
464
|
+
.trim(),
|
|
465
|
+
selectionBackground: bodyStyle
|
|
466
|
+
.getPropertyValue('--jp-layout-color3')
|
|
467
|
+
.trim(),
|
|
468
|
+
selectionInactiveBackground: bodyStyle
|
|
469
|
+
.getPropertyValue('--jp-layout-color2')
|
|
470
|
+
.trim(),
|
|
471
|
+
activeMatchBackground
|
|
472
|
+
};
|
|
473
|
+
};
|
|
436
474
|
function getXTermTheme(theme) {
|
|
437
475
|
switch (theme) {
|
|
438
476
|
case 'light':
|
|
@@ -454,6 +492,7 @@ var Private;
|
|
|
454
492
|
let Xterm_;
|
|
455
493
|
let FitAddon_;
|
|
456
494
|
let WeblinksAddon_;
|
|
495
|
+
let SearchAddon_;
|
|
457
496
|
let Renderer_;
|
|
458
497
|
/**
|
|
459
498
|
* Detect if the browser supports WebGL or not.
|
|
@@ -494,26 +533,30 @@ var Private;
|
|
|
494
533
|
var _a;
|
|
495
534
|
if (!Xterm_) {
|
|
496
535
|
supportWebGL = hasWebGLContext();
|
|
497
|
-
const [xterm_, fitAddon_, renderer_, weblinksAddon_] = await Promise.all([
|
|
536
|
+
const [xterm_, fitAddon_, renderer_, weblinksAddon_, searchAddon_] = await Promise.all([
|
|
498
537
|
import('@xterm/xterm'),
|
|
499
538
|
import('@xterm/addon-fit'),
|
|
500
539
|
supportWebGL
|
|
501
540
|
? import('@xterm/addon-webgl')
|
|
502
541
|
: import('@xterm/addon-canvas'),
|
|
503
|
-
import('@xterm/addon-web-links')
|
|
542
|
+
import('@xterm/addon-web-links'),
|
|
543
|
+
import('@xterm/addon-search')
|
|
504
544
|
]);
|
|
505
545
|
Xterm_ = xterm_.Terminal;
|
|
506
546
|
FitAddon_ = fitAddon_.FitAddon;
|
|
507
547
|
Renderer_ =
|
|
508
548
|
(_a = renderer_.WebglAddon) !== null && _a !== void 0 ? _a : renderer_.CanvasAddon;
|
|
509
549
|
WeblinksAddon_ = weblinksAddon_.WebLinksAddon;
|
|
550
|
+
SearchAddon_ = searchAddon_.SearchAddon;
|
|
510
551
|
}
|
|
511
552
|
const term = new Xterm_(options);
|
|
512
553
|
addRenderer(term);
|
|
513
554
|
const fitAddon = new FitAddon_();
|
|
514
555
|
term.loadAddon(fitAddon);
|
|
556
|
+
const searchAddon = new SearchAddon_();
|
|
515
557
|
term.loadAddon(new WeblinksAddon_());
|
|
516
|
-
|
|
558
|
+
term.loadAddon(searchAddon);
|
|
559
|
+
return [term, fitAddon, searchAddon];
|
|
517
560
|
}
|
|
518
561
|
Private.createTerminal = createTerminal;
|
|
519
562
|
})(Private || (Private = {}));
|
package/lib/widget.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"widget.js","sourceRoot":"","sources":["../src/widget.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"widget.js","sourceRoot":"","sources":["../src/widget.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jupyterlab/terminal",
|
|
3
|
-
"version": "4.5.0-alpha.
|
|
3
|
+
"version": "4.5.0-alpha.4",
|
|
4
4
|
"description": "JupyterLab - Terminal Emulator Widget",
|
|
5
5
|
"homepage": "https://github.com/jupyterlab/jupyterlab",
|
|
6
6
|
"bugs": {
|
|
@@ -41,21 +41,24 @@
|
|
|
41
41
|
"watch": "tsc -b --watch"
|
|
42
42
|
},
|
|
43
43
|
"dependencies": {
|
|
44
|
-
"@jupyterlab/apputils": "^4.6.0-alpha.
|
|
45
|
-
"@jupyterlab/services": "^7.5.0-alpha.
|
|
46
|
-
"@jupyterlab/translation": "^4.5.0-alpha.
|
|
44
|
+
"@jupyterlab/apputils": "^4.6.0-alpha.4",
|
|
45
|
+
"@jupyterlab/services": "^7.5.0-alpha.4",
|
|
46
|
+
"@jupyterlab/translation": "^4.5.0-alpha.4",
|
|
47
47
|
"@lumino/coreutils": "^2.2.1",
|
|
48
48
|
"@lumino/domutils": "^2.0.3",
|
|
49
49
|
"@lumino/messaging": "^2.0.3",
|
|
50
|
+
"@lumino/signaling": "^2.1.4",
|
|
50
51
|
"@lumino/widgets": "^2.7.1",
|
|
51
52
|
"@xterm/addon-canvas": "~0.7.0",
|
|
52
53
|
"@xterm/addon-fit": "~0.10.0",
|
|
54
|
+
"@xterm/addon-search": "~0.15.0",
|
|
53
55
|
"@xterm/addon-web-links": "~0.11.0",
|
|
54
56
|
"@xterm/addon-webgl": "~0.18.0",
|
|
55
|
-
"@xterm/xterm": "~5.5.0"
|
|
57
|
+
"@xterm/xterm": "~5.5.0",
|
|
58
|
+
"color": "^5.0.0"
|
|
56
59
|
},
|
|
57
60
|
"devDependencies": {
|
|
58
|
-
"@jupyterlab/testing": "^4.5.0-alpha.
|
|
61
|
+
"@jupyterlab/testing": "^4.5.0-alpha.4",
|
|
59
62
|
"@types/jest": "^29.2.0",
|
|
60
63
|
"jest": "^29.2.0",
|
|
61
64
|
"jest-canvas-mock": "^2.5.2",
|
package/src/tokens.ts
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
import { IWidgetTracker, MainAreaWidget } from '@jupyterlab/apputils';
|
|
5
5
|
import { Terminal } from '@jupyterlab/services';
|
|
6
6
|
import { Token } from '@lumino/coreutils';
|
|
7
|
+
import { ISignal } from '@lumino/signaling';
|
|
7
8
|
import { Widget } from '@lumino/widgets';
|
|
8
9
|
|
|
9
10
|
/**
|
|
@@ -62,6 +63,12 @@ export namespace ITerminal {
|
|
|
62
63
|
* Get selected text from terminal.
|
|
63
64
|
*/
|
|
64
65
|
getSelection(): string | null;
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* A signal emitted when the terminal theme changes, this includes the when the lab theme
|
|
69
|
+
* changes if the terminal theme is 'inherit'.
|
|
70
|
+
*/
|
|
71
|
+
themeChanged: ISignal<this, void>;
|
|
65
72
|
}
|
|
66
73
|
/**
|
|
67
74
|
* Options for the terminal widget.
|
|
@@ -170,5 +177,6 @@ export namespace ITerminal {
|
|
|
170
177
|
cursorAccent: string;
|
|
171
178
|
selectionBackground: string;
|
|
172
179
|
selectionInactiveBackground: string;
|
|
180
|
+
activeMatchBackground: string;
|
|
173
181
|
}
|
|
174
182
|
}
|
package/src/widget.ts
CHANGED
|
@@ -10,6 +10,7 @@ import {
|
|
|
10
10
|
import { PromiseDelegate } from '@lumino/coreutils';
|
|
11
11
|
import { Platform } from '@lumino/domutils';
|
|
12
12
|
import { Message, MessageLoop } from '@lumino/messaging';
|
|
13
|
+
import { ISignal, Signal } from '@lumino/signaling';
|
|
13
14
|
import { Widget } from '@lumino/widgets';
|
|
14
15
|
import type {
|
|
15
16
|
ITerminalInitOnlyOptions,
|
|
@@ -18,8 +19,10 @@ import type {
|
|
|
18
19
|
} from '@xterm/xterm';
|
|
19
20
|
import type { CanvasAddon } from '@xterm/addon-canvas';
|
|
20
21
|
import type { FitAddon } from '@xterm/addon-fit';
|
|
22
|
+
import type { SearchAddon } from '@xterm/addon-search';
|
|
21
23
|
import type { WebLinksAddon } from '@xterm/addon-web-links';
|
|
22
24
|
import type { WebglAddon } from '@xterm/addon-webgl';
|
|
25
|
+
import Color from 'color';
|
|
23
26
|
import { ITerminal } from '.';
|
|
24
27
|
|
|
25
28
|
/**
|
|
@@ -61,6 +64,7 @@ export class Terminal extends Widget implements ITerminal.ITerminal {
|
|
|
61
64
|
const { theme, ...other } = this._options;
|
|
62
65
|
const xtermOptions = {
|
|
63
66
|
theme: Private.getXTermTheme(theme),
|
|
67
|
+
allowProposedApi: true, // To support xtermjs SearchAddon coloring.
|
|
64
68
|
...other
|
|
65
69
|
};
|
|
66
70
|
|
|
@@ -93,9 +97,10 @@ export class Terminal extends Widget implements ITerminal.ITerminal {
|
|
|
93
97
|
|
|
94
98
|
// Create the xterm.
|
|
95
99
|
Private.createTerminal(xtermOptions)
|
|
96
|
-
.then(([term, fitAddon]) => {
|
|
100
|
+
.then(([term, fitAddon, searchAddon]) => {
|
|
97
101
|
this._term = term;
|
|
98
102
|
this._fitAddon = fitAddon;
|
|
103
|
+
this._searchAddon = searchAddon;
|
|
99
104
|
this._initializeTerm();
|
|
100
105
|
|
|
101
106
|
this.id = `jp-Terminal-${Private.id++}`;
|
|
@@ -183,6 +188,7 @@ export class Terminal extends Widget implements ITerminal.ITerminal {
|
|
|
183
188
|
...Private.getXTermTheme(value as ITerminal.Theme)
|
|
184
189
|
};
|
|
185
190
|
this._setThemeAttribute(value as ITerminal.Theme);
|
|
191
|
+
this._themeChanged.emit();
|
|
186
192
|
break;
|
|
187
193
|
case 'macOptionIsMeta':
|
|
188
194
|
this._term.options.macOptionIsMeta = value as boolean | undefined;
|
|
@@ -274,6 +280,31 @@ export class Terminal extends Widget implements ITerminal.ITerminal {
|
|
|
274
280
|
}
|
|
275
281
|
}
|
|
276
282
|
|
|
283
|
+
/**
|
|
284
|
+
* Return xtermjs SearchAddon.
|
|
285
|
+
* Public as needed by TerminalSearchProvider
|
|
286
|
+
*/
|
|
287
|
+
get searchAddon(): SearchAddon {
|
|
288
|
+
return this._searchAddon;
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
/**
|
|
292
|
+
* Return terminal theme.
|
|
293
|
+
* Public as needed by TerminalSearchProvider
|
|
294
|
+
*/
|
|
295
|
+
getXTermTheme(): ITerminal.IThemeObject {
|
|
296
|
+
const { theme } = this._options;
|
|
297
|
+
return Private.getXTermTheme(theme);
|
|
298
|
+
}
|
|
299
|
+
|
|
300
|
+
/**
|
|
301
|
+
* A signal emitted when the terminal theme changes, this includes the when the lab theme
|
|
302
|
+
* changes if the terminal theme is 'inherit'.
|
|
303
|
+
*/
|
|
304
|
+
get themeChanged(): ISignal<this, void> {
|
|
305
|
+
return this._themeChanged;
|
|
306
|
+
}
|
|
307
|
+
|
|
277
308
|
/**
|
|
278
309
|
* Set the size of the terminal when attached if dirty.
|
|
279
310
|
*/
|
|
@@ -464,6 +495,7 @@ export class Terminal extends Widget implements ITerminal.ITerminal {
|
|
|
464
495
|
}
|
|
465
496
|
|
|
466
497
|
private _fitAddon: FitAddon;
|
|
498
|
+
private _searchAddon: SearchAddon;
|
|
467
499
|
private _needsResize = true;
|
|
468
500
|
private _offsetWidth = -1;
|
|
469
501
|
private _offsetHeight = -1;
|
|
@@ -473,6 +505,7 @@ export class Terminal extends Widget implements ITerminal.ITerminal {
|
|
|
473
505
|
private _term: Xterm;
|
|
474
506
|
private _termOpened = false;
|
|
475
507
|
private _trans: TranslationBundle;
|
|
508
|
+
private _themeChanged = new Signal<this, void>(this);
|
|
476
509
|
}
|
|
477
510
|
|
|
478
511
|
/**
|
|
@@ -493,7 +526,8 @@ namespace Private {
|
|
|
493
526
|
cursor: '#616161', // md-grey-700
|
|
494
527
|
cursorAccent: '#F5F5F5', // md-grey-100
|
|
495
528
|
selectionBackground: 'rgba(97, 97, 97, 0.3)', // md-grey-700
|
|
496
|
-
selectionInactiveBackground: 'rgba(189, 189, 189, 0.3)' // md-grey-400
|
|
529
|
+
selectionInactiveBackground: 'rgba(189, 189, 189, 0.3)', // md-grey-400
|
|
530
|
+
activeMatchBackground: '#ffee58' // md-yellow-400
|
|
497
531
|
};
|
|
498
532
|
|
|
499
533
|
/**
|
|
@@ -505,32 +539,42 @@ namespace Private {
|
|
|
505
539
|
cursor: '#fff',
|
|
506
540
|
cursorAccent: '#000',
|
|
507
541
|
selectionBackground: 'rgba(255, 255, 255, 0.3)',
|
|
508
|
-
selectionInactiveBackground: 'rgba(238, 238, 238, 0.3)' // md-grey-200
|
|
542
|
+
selectionInactiveBackground: 'rgba(238, 238, 238, 0.3)', // md-grey-200
|
|
543
|
+
activeMatchBackground: '#F57F17' // md-yellow-900
|
|
509
544
|
};
|
|
510
545
|
|
|
511
546
|
/**
|
|
512
547
|
* The current theme.
|
|
513
548
|
*/
|
|
514
|
-
export const inheritTheme = (): ITerminal.IThemeObject =>
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
background
|
|
519
|
-
|
|
520
|
-
.
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
.getPropertyValue('--jp-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
549
|
+
export const inheritTheme = (): ITerminal.IThemeObject => {
|
|
550
|
+
const bodyStyle = getComputedStyle(document.body);
|
|
551
|
+
const background = bodyStyle.getPropertyValue('--jp-layout-color0').trim();
|
|
552
|
+
|
|
553
|
+
let activeMatchBackground = '#ffee58'; // md-yellow-400 for light mode background
|
|
554
|
+
try {
|
|
555
|
+
if (Color(background).isDark()) {
|
|
556
|
+
activeMatchBackground = '#F57F17'; // md-yellow-900 for dark mode background
|
|
557
|
+
}
|
|
558
|
+
} catch (e) {
|
|
559
|
+
// Use the light mode default.
|
|
560
|
+
}
|
|
561
|
+
|
|
562
|
+
return {
|
|
563
|
+
foreground: bodyStyle.getPropertyValue('--jp-ui-font-color0').trim(),
|
|
564
|
+
background,
|
|
565
|
+
cursor: bodyStyle.getPropertyValue('--jp-ui-font-color1').trim(),
|
|
566
|
+
cursorAccent: bodyStyle
|
|
567
|
+
.getPropertyValue('--jp-ui-inverse-font-color0')
|
|
568
|
+
.trim(),
|
|
569
|
+
selectionBackground: bodyStyle
|
|
570
|
+
.getPropertyValue('--jp-layout-color3')
|
|
571
|
+
.trim(),
|
|
572
|
+
selectionInactiveBackground: bodyStyle
|
|
573
|
+
.getPropertyValue('--jp-layout-color2')
|
|
574
|
+
.trim(),
|
|
575
|
+
activeMatchBackground
|
|
576
|
+
};
|
|
577
|
+
};
|
|
534
578
|
|
|
535
579
|
export function getXTermTheme(
|
|
536
580
|
theme: ITerminal.Theme
|
|
@@ -555,6 +599,7 @@ namespace Private {
|
|
|
555
599
|
let Xterm_: typeof Xterm;
|
|
556
600
|
let FitAddon_: typeof FitAddon;
|
|
557
601
|
let WeblinksAddon_: typeof WebLinksAddon;
|
|
602
|
+
let SearchAddon_: typeof SearchAddon;
|
|
558
603
|
let Renderer_: typeof CanvasAddon | typeof WebglAddon;
|
|
559
604
|
|
|
560
605
|
/**
|
|
@@ -598,29 +643,34 @@ namespace Private {
|
|
|
598
643
|
*/
|
|
599
644
|
export async function createTerminal(
|
|
600
645
|
options: ITerminalOptions & ITerminalInitOnlyOptions
|
|
601
|
-
): Promise<[Xterm, FitAddon]> {
|
|
646
|
+
): Promise<[Xterm, FitAddon, SearchAddon]> {
|
|
602
647
|
if (!Xterm_) {
|
|
603
648
|
supportWebGL = hasWebGLContext();
|
|
604
|
-
const [xterm_, fitAddon_, renderer_, weblinksAddon_] =
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
649
|
+
const [xterm_, fitAddon_, renderer_, weblinksAddon_, searchAddon_] =
|
|
650
|
+
await Promise.all([
|
|
651
|
+
import('@xterm/xterm'),
|
|
652
|
+
import('@xterm/addon-fit'),
|
|
653
|
+
supportWebGL
|
|
654
|
+
? import('@xterm/addon-webgl')
|
|
655
|
+
: import('@xterm/addon-canvas'),
|
|
656
|
+
import('@xterm/addon-web-links'),
|
|
657
|
+
import('@xterm/addon-search')
|
|
658
|
+
]);
|
|
612
659
|
Xterm_ = xterm_.Terminal;
|
|
613
660
|
FitAddon_ = fitAddon_.FitAddon;
|
|
614
661
|
Renderer_ =
|
|
615
662
|
(renderer_ as any).WebglAddon ?? (renderer_ as any).CanvasAddon;
|
|
616
663
|
WeblinksAddon_ = weblinksAddon_.WebLinksAddon;
|
|
664
|
+
SearchAddon_ = searchAddon_.SearchAddon;
|
|
617
665
|
}
|
|
618
666
|
|
|
619
667
|
const term = new Xterm_(options);
|
|
620
668
|
addRenderer(term);
|
|
621
669
|
const fitAddon = new FitAddon_();
|
|
622
670
|
term.loadAddon(fitAddon);
|
|
671
|
+
const searchAddon = new SearchAddon_();
|
|
623
672
|
term.loadAddon(new WeblinksAddon_());
|
|
624
|
-
|
|
673
|
+
term.loadAddon(searchAddon);
|
|
674
|
+
return [term, fitAddon, searchAddon];
|
|
625
675
|
}
|
|
626
676
|
}
|