@jupyterlab/terminal 4.6.2 → 4.7.0-alpha.1
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/widget.js +91 -31
- package/lib/widget.js.map +1 -1
- package/package.json +15 -16
- package/src/widget.ts +99 -34
- package/style/base.css +23 -0
package/lib/widget.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
// Copyright (c) Jupyter Development Team.
|
|
2
2
|
// Distributed under the terms of the Modified BSD License.
|
|
3
|
-
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
4
3
|
import { nullTranslator } from '@jupyterlab/translation';
|
|
5
4
|
import { PromiseDelegate } from '@lumino/coreutils';
|
|
6
5
|
import { Platform } from '@lumino/domutils';
|
|
@@ -315,6 +314,9 @@ export class Terminal extends Widget {
|
|
|
315
314
|
// Open the terminal if necessary.
|
|
316
315
|
if (!this._termOpened) {
|
|
317
316
|
this._term.open(this.node);
|
|
317
|
+
// Load the renderer addon after open so a failed activation leaves
|
|
318
|
+
// the DOM renderer in place.
|
|
319
|
+
Private.addRenderer(this._term);
|
|
318
320
|
(_a = this._term.element) === null || _a === void 0 ? void 0 : _a.classList.add(TERMINAL_BODY_CLASS);
|
|
319
321
|
(_b = this._term.textarea) === null || _b === void 0 ? void 0 : _b.setAttribute('aria-describedby', this._escapeInstructionsId);
|
|
320
322
|
(_d = (_c = this._term.element) === null || _c === void 0 ? void 0 : _c.querySelector('.xterm-viewport')) === null || _d === void 0 ? void 0 : _d.setAttribute('aria-describedby', this._escapeInstructionsId);
|
|
@@ -516,6 +518,37 @@ export class Terminal extends Widget {
|
|
|
516
518
|
if (viewportFocused && event.key === 'Tab' && xtermTextarea) {
|
|
517
519
|
xtermTextarea.tabIndex = -1;
|
|
518
520
|
}
|
|
521
|
+
// The viewport is not a native scroll container, so translate the
|
|
522
|
+
// scrolling keys into xterm.js scroll API calls.
|
|
523
|
+
if (viewportFocused) {
|
|
524
|
+
let handled = true;
|
|
525
|
+
switch (event.key) {
|
|
526
|
+
case 'ArrowUp':
|
|
527
|
+
this._term.scrollLines(-1);
|
|
528
|
+
break;
|
|
529
|
+
case 'ArrowDown':
|
|
530
|
+
this._term.scrollLines(1);
|
|
531
|
+
break;
|
|
532
|
+
case 'PageUp':
|
|
533
|
+
this._term.scrollPages(-1);
|
|
534
|
+
break;
|
|
535
|
+
case 'PageDown':
|
|
536
|
+
this._term.scrollPages(1);
|
|
537
|
+
break;
|
|
538
|
+
case 'Home':
|
|
539
|
+
this._term.scrollToTop();
|
|
540
|
+
break;
|
|
541
|
+
case 'End':
|
|
542
|
+
this._term.scrollToBottom();
|
|
543
|
+
break;
|
|
544
|
+
default:
|
|
545
|
+
handled = false;
|
|
546
|
+
}
|
|
547
|
+
if (handled) {
|
|
548
|
+
event.preventDefault();
|
|
549
|
+
event.stopPropagation();
|
|
550
|
+
}
|
|
551
|
+
}
|
|
519
552
|
}
|
|
520
553
|
_scheduleEscapeReset() {
|
|
521
554
|
this._clearEscapeResetTimer();
|
|
@@ -632,69 +665,96 @@ var Private;
|
|
|
632
665
|
* Utility functions for creating a Terminal widget
|
|
633
666
|
*/
|
|
634
667
|
(function (Private) {
|
|
635
|
-
let supportWebGL = false;
|
|
636
668
|
let Xterm_;
|
|
637
669
|
let FitAddon_;
|
|
638
670
|
let WeblinksAddon_;
|
|
639
671
|
let SearchAddon_;
|
|
640
|
-
let
|
|
672
|
+
let WebglAddon_;
|
|
673
|
+
let initPromise;
|
|
641
674
|
/**
|
|
642
|
-
* Detect if the browser supports
|
|
675
|
+
* Detect if the browser supports WebGL2 or not, which the xterm.js
|
|
676
|
+
* WebGL addon requires.
|
|
643
677
|
*
|
|
644
678
|
* Reference: https://developer.mozilla.org/en-US/docs/Web/API/WebGL_API/By_example/Detect_WebGL
|
|
645
679
|
*/
|
|
646
|
-
function
|
|
680
|
+
function hasWebGL2Context() {
|
|
647
681
|
// Create canvas element. The canvas is not added to the
|
|
648
682
|
// document itself, so it is never displayed in the
|
|
649
683
|
// browser window.
|
|
650
684
|
const canvas = document.createElement('canvas');
|
|
651
|
-
// Get
|
|
652
|
-
const gl = canvas.getContext('
|
|
685
|
+
// Get WebGL2RenderingContext from canvas element.
|
|
686
|
+
const gl = canvas.getContext('webgl2');
|
|
653
687
|
// Report the result.
|
|
654
688
|
try {
|
|
655
|
-
return gl instanceof
|
|
689
|
+
return gl instanceof WebGL2RenderingContext;
|
|
656
690
|
}
|
|
657
691
|
catch (error) {
|
|
658
692
|
return false;
|
|
659
693
|
}
|
|
660
694
|
}
|
|
695
|
+
/**
|
|
696
|
+
* Load the xterm.js modules, at most once.
|
|
697
|
+
*/
|
|
698
|
+
async function initialize() {
|
|
699
|
+
const [xterm_, fitAddon_, weblinksAddon_, searchAddon_] = await Promise.all([
|
|
700
|
+
import('@xterm/xterm'),
|
|
701
|
+
import('@xterm/addon-fit'),
|
|
702
|
+
import('@xterm/addon-web-links'),
|
|
703
|
+
import('@xterm/addon-search')
|
|
704
|
+
]);
|
|
705
|
+
Xterm_ = xterm_.Terminal;
|
|
706
|
+
FitAddon_ = fitAddon_.FitAddon;
|
|
707
|
+
WeblinksAddon_ = weblinksAddon_.WebLinksAddon;
|
|
708
|
+
SearchAddon_ = searchAddon_.SearchAddon;
|
|
709
|
+
if (hasWebGL2Context()) {
|
|
710
|
+
try {
|
|
711
|
+
const webglAddon_ = await import('@xterm/addon-webgl');
|
|
712
|
+
WebglAddon_ = webglAddon_.WebglAddon;
|
|
713
|
+
}
|
|
714
|
+
catch (error) {
|
|
715
|
+
console.warn('Failed to load the WebGL renderer, falling back to the DOM renderer.', error);
|
|
716
|
+
}
|
|
717
|
+
}
|
|
718
|
+
}
|
|
719
|
+
/**
|
|
720
|
+
* Attach the WebGL renderer to an opened terminal.
|
|
721
|
+
*
|
|
722
|
+
* The built-in DOM renderer is used when the WebGL addon is unavailable
|
|
723
|
+
* or fails to activate.
|
|
724
|
+
*/
|
|
661
725
|
function addRenderer(term) {
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
726
|
+
if (!WebglAddon_) {
|
|
727
|
+
return;
|
|
728
|
+
}
|
|
729
|
+
try {
|
|
730
|
+
const renderer = new WebglAddon_();
|
|
731
|
+
term.loadAddon(renderer);
|
|
732
|
+
renderer.onContextLoss(() => {
|
|
666
733
|
console.debug('WebGL context lost - reinitialize Xtermjs renderer.');
|
|
667
734
|
renderer.dispose();
|
|
668
735
|
// If the Webgl context is lost, reinitialize the addon
|
|
669
736
|
addRenderer(term);
|
|
670
737
|
});
|
|
671
738
|
}
|
|
739
|
+
catch (error) {
|
|
740
|
+
console.warn('Failed to activate the WebGL renderer, falling back to the DOM renderer.', error);
|
|
741
|
+
}
|
|
672
742
|
}
|
|
743
|
+
Private.addRenderer = addRenderer;
|
|
673
744
|
/**
|
|
674
745
|
* Create a xterm.js terminal asynchronously.
|
|
675
746
|
*/
|
|
676
747
|
async function createTerminal(options) {
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
? import('@xterm/addon-webgl')
|
|
685
|
-
: import('@xterm/addon-canvas'),
|
|
686
|
-
import('@xterm/addon-web-links'),
|
|
687
|
-
import('@xterm/addon-search')
|
|
688
|
-
]);
|
|
689
|
-
Xterm_ = xterm_.Terminal;
|
|
690
|
-
FitAddon_ = fitAddon_.FitAddon;
|
|
691
|
-
Renderer_ =
|
|
692
|
-
(_a = renderer_.WebglAddon) !== null && _a !== void 0 ? _a : renderer_.CanvasAddon;
|
|
693
|
-
WeblinksAddon_ = weblinksAddon_.WebLinksAddon;
|
|
694
|
-
SearchAddon_ = searchAddon_.SearchAddon;
|
|
748
|
+
if (!initPromise) {
|
|
749
|
+
initPromise = initialize();
|
|
750
|
+
// Allow a later terminal to retry if the modules failed to load, for
|
|
751
|
+
// example because of a transient network failure.
|
|
752
|
+
initPromise.catch(() => {
|
|
753
|
+
initPromise = undefined;
|
|
754
|
+
});
|
|
695
755
|
}
|
|
756
|
+
await initPromise;
|
|
696
757
|
const term = new Xterm_(options);
|
|
697
|
-
addRenderer(term);
|
|
698
758
|
const fitAddon = new FitAddon_();
|
|
699
759
|
term.loadAddon(fitAddon);
|
|
700
760
|
const searchAddon = new SearchAddon_();
|
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.
|
|
3
|
+
"version": "4.7.0-alpha.1",
|
|
4
4
|
"description": "JupyterLab - Terminal Emulator Widget",
|
|
5
5
|
"homepage": "https://github.com/jupyterlab/jupyterlab",
|
|
6
6
|
"bugs": {
|
|
@@ -41,24 +41,23 @@
|
|
|
41
41
|
"watch": "tsc -b --watch"
|
|
42
42
|
},
|
|
43
43
|
"dependencies": {
|
|
44
|
-
"@jupyterlab/apputils": "^4.
|
|
45
|
-
"@jupyterlab/services": "^7.
|
|
46
|
-
"@jupyterlab/translation": "^4.
|
|
47
|
-
"@lumino/coreutils": "^2.2.
|
|
48
|
-
"@lumino/domutils": "^2.0.
|
|
49
|
-
"@lumino/messaging": "^2.0.
|
|
50
|
-
"@lumino/signaling": "^2.1.
|
|
51
|
-
"@lumino/widgets": "^2.
|
|
52
|
-
"@xterm/addon-
|
|
53
|
-
"@xterm/addon-
|
|
54
|
-
"@xterm/addon-
|
|
55
|
-
"@xterm/addon-
|
|
56
|
-
"@xterm/
|
|
57
|
-
"@xterm/xterm": "~5.5.0",
|
|
44
|
+
"@jupyterlab/apputils": "^4.8.0-alpha.1",
|
|
45
|
+
"@jupyterlab/services": "^7.7.0-alpha.1",
|
|
46
|
+
"@jupyterlab/translation": "^4.7.0-alpha.1",
|
|
47
|
+
"@lumino/coreutils": "^2.2.3",
|
|
48
|
+
"@lumino/domutils": "^2.0.5",
|
|
49
|
+
"@lumino/messaging": "^2.0.5",
|
|
50
|
+
"@lumino/signaling": "^2.1.6",
|
|
51
|
+
"@lumino/widgets": "^2.9.0",
|
|
52
|
+
"@xterm/addon-fit": "~0.11.0",
|
|
53
|
+
"@xterm/addon-search": "~0.16.0",
|
|
54
|
+
"@xterm/addon-web-links": "~0.12.0",
|
|
55
|
+
"@xterm/addon-webgl": "~0.19.0",
|
|
56
|
+
"@xterm/xterm": "~6.0.0",
|
|
58
57
|
"color": "^5.0.0"
|
|
59
58
|
},
|
|
60
59
|
"devDependencies": {
|
|
61
|
-
"@jupyterlab/testing": "^4.
|
|
60
|
+
"@jupyterlab/testing": "^4.7.0-alpha.1",
|
|
62
61
|
"@types/jest": "^29.2.0",
|
|
63
62
|
"jest": "^29.2.0",
|
|
64
63
|
"jest-canvas-mock": "^2.5.2",
|
package/src/widget.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
// Copyright (c) Jupyter Development Team.
|
|
2
2
|
// Distributed under the terms of the Modified BSD License.
|
|
3
|
-
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
4
3
|
|
|
5
4
|
import type { Terminal as TerminalNS } from '@jupyterlab/services';
|
|
6
5
|
import type { ITranslator, TranslationBundle } from '@jupyterlab/translation';
|
|
@@ -17,7 +16,6 @@ import type {
|
|
|
17
16
|
ITerminalOptions,
|
|
18
17
|
Terminal as Xterm
|
|
19
18
|
} from '@xterm/xterm';
|
|
20
|
-
import type { CanvasAddon } from '@xterm/addon-canvas';
|
|
21
19
|
import type { FitAddon } from '@xterm/addon-fit';
|
|
22
20
|
import type { SearchAddon } from '@xterm/addon-search';
|
|
23
21
|
import type { WebLinksAddon } from '@xterm/addon-web-links';
|
|
@@ -377,6 +375,9 @@ export class Terminal extends Widget implements ITerminal.ITerminal {
|
|
|
377
375
|
// Open the terminal if necessary.
|
|
378
376
|
if (!this._termOpened) {
|
|
379
377
|
this._term.open(this.node);
|
|
378
|
+
// Load the renderer addon after open so a failed activation leaves
|
|
379
|
+
// the DOM renderer in place.
|
|
380
|
+
Private.addRenderer(this._term);
|
|
380
381
|
this._term.element?.classList.add(TERMINAL_BODY_CLASS);
|
|
381
382
|
this._term.textarea?.setAttribute(
|
|
382
383
|
'aria-describedby',
|
|
@@ -619,6 +620,38 @@ export class Terminal extends Widget implements ITerminal.ITerminal {
|
|
|
619
620
|
if (viewportFocused && event.key === 'Tab' && xtermTextarea) {
|
|
620
621
|
xtermTextarea.tabIndex = -1;
|
|
621
622
|
}
|
|
623
|
+
|
|
624
|
+
// The viewport is not a native scroll container, so translate the
|
|
625
|
+
// scrolling keys into xterm.js scroll API calls.
|
|
626
|
+
if (viewportFocused) {
|
|
627
|
+
let handled = true;
|
|
628
|
+
switch (event.key) {
|
|
629
|
+
case 'ArrowUp':
|
|
630
|
+
this._term.scrollLines(-1);
|
|
631
|
+
break;
|
|
632
|
+
case 'ArrowDown':
|
|
633
|
+
this._term.scrollLines(1);
|
|
634
|
+
break;
|
|
635
|
+
case 'PageUp':
|
|
636
|
+
this._term.scrollPages(-1);
|
|
637
|
+
break;
|
|
638
|
+
case 'PageDown':
|
|
639
|
+
this._term.scrollPages(1);
|
|
640
|
+
break;
|
|
641
|
+
case 'Home':
|
|
642
|
+
this._term.scrollToTop();
|
|
643
|
+
break;
|
|
644
|
+
case 'End':
|
|
645
|
+
this._term.scrollToBottom();
|
|
646
|
+
break;
|
|
647
|
+
default:
|
|
648
|
+
handled = false;
|
|
649
|
+
}
|
|
650
|
+
if (handled) {
|
|
651
|
+
event.preventDefault();
|
|
652
|
+
event.stopPropagation();
|
|
653
|
+
}
|
|
654
|
+
}
|
|
622
655
|
}
|
|
623
656
|
|
|
624
657
|
private _scheduleEscapeReset(): void {
|
|
@@ -763,46 +796,89 @@ namespace Private {
|
|
|
763
796
|
* Utility functions for creating a Terminal widget
|
|
764
797
|
*/
|
|
765
798
|
namespace Private {
|
|
766
|
-
let supportWebGL: boolean = false;
|
|
767
799
|
let Xterm_: typeof Xterm;
|
|
768
800
|
let FitAddon_: typeof FitAddon;
|
|
769
801
|
let WeblinksAddon_: typeof WebLinksAddon;
|
|
770
802
|
let SearchAddon_: typeof SearchAddon;
|
|
771
|
-
let
|
|
803
|
+
let WebglAddon_: typeof WebglAddon | undefined;
|
|
804
|
+
let initPromise: Promise<void> | undefined;
|
|
772
805
|
|
|
773
806
|
/**
|
|
774
|
-
* Detect if the browser supports
|
|
807
|
+
* Detect if the browser supports WebGL2 or not, which the xterm.js
|
|
808
|
+
* WebGL addon requires.
|
|
775
809
|
*
|
|
776
810
|
* Reference: https://developer.mozilla.org/en-US/docs/Web/API/WebGL_API/By_example/Detect_WebGL
|
|
777
811
|
*/
|
|
778
|
-
function
|
|
812
|
+
function hasWebGL2Context(): boolean {
|
|
779
813
|
// Create canvas element. The canvas is not added to the
|
|
780
814
|
// document itself, so it is never displayed in the
|
|
781
815
|
// browser window.
|
|
782
816
|
const canvas = document.createElement('canvas');
|
|
783
817
|
|
|
784
|
-
// Get
|
|
785
|
-
const gl =
|
|
786
|
-
canvas.getContext('webgl') || canvas.getContext('experimental-webgl');
|
|
818
|
+
// Get WebGL2RenderingContext from canvas element.
|
|
819
|
+
const gl = canvas.getContext('webgl2');
|
|
787
820
|
|
|
788
821
|
// Report the result.
|
|
789
822
|
try {
|
|
790
|
-
return gl instanceof
|
|
823
|
+
return gl instanceof WebGL2RenderingContext;
|
|
791
824
|
} catch (error) {
|
|
792
825
|
return false;
|
|
793
826
|
}
|
|
794
827
|
}
|
|
795
828
|
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
829
|
+
/**
|
|
830
|
+
* Load the xterm.js modules, at most once.
|
|
831
|
+
*/
|
|
832
|
+
async function initialize(): Promise<void> {
|
|
833
|
+
const [xterm_, fitAddon_, weblinksAddon_, searchAddon_] = await Promise.all(
|
|
834
|
+
[
|
|
835
|
+
import('@xterm/xterm'),
|
|
836
|
+
import('@xterm/addon-fit'),
|
|
837
|
+
import('@xterm/addon-web-links'),
|
|
838
|
+
import('@xterm/addon-search')
|
|
839
|
+
]
|
|
840
|
+
);
|
|
841
|
+
Xterm_ = xterm_.Terminal;
|
|
842
|
+
FitAddon_ = fitAddon_.FitAddon;
|
|
843
|
+
WeblinksAddon_ = weblinksAddon_.WebLinksAddon;
|
|
844
|
+
SearchAddon_ = searchAddon_.SearchAddon;
|
|
845
|
+
if (hasWebGL2Context()) {
|
|
846
|
+
try {
|
|
847
|
+
const webglAddon_ = await import('@xterm/addon-webgl');
|
|
848
|
+
WebglAddon_ = webglAddon_.WebglAddon;
|
|
849
|
+
} catch (error) {
|
|
850
|
+
console.warn(
|
|
851
|
+
'Failed to load the WebGL renderer, falling back to the DOM renderer.',
|
|
852
|
+
error
|
|
853
|
+
);
|
|
854
|
+
}
|
|
855
|
+
}
|
|
856
|
+
}
|
|
857
|
+
|
|
858
|
+
/**
|
|
859
|
+
* Attach the WebGL renderer to an opened terminal.
|
|
860
|
+
*
|
|
861
|
+
* The built-in DOM renderer is used when the WebGL addon is unavailable
|
|
862
|
+
* or fails to activate.
|
|
863
|
+
*/
|
|
864
|
+
export function addRenderer(term: Xterm): void {
|
|
865
|
+
if (!WebglAddon_) {
|
|
866
|
+
return;
|
|
867
|
+
}
|
|
868
|
+
try {
|
|
869
|
+
const renderer = new WebglAddon_();
|
|
870
|
+
term.loadAddon(renderer);
|
|
871
|
+
renderer.onContextLoss(() => {
|
|
801
872
|
console.debug('WebGL context lost - reinitialize Xtermjs renderer.');
|
|
802
873
|
renderer.dispose();
|
|
803
874
|
// If the Webgl context is lost, reinitialize the addon
|
|
804
875
|
addRenderer(term);
|
|
805
876
|
});
|
|
877
|
+
} catch (error) {
|
|
878
|
+
console.warn(
|
|
879
|
+
'Failed to activate the WebGL renderer, falling back to the DOM renderer.',
|
|
880
|
+
error
|
|
881
|
+
);
|
|
806
882
|
}
|
|
807
883
|
}
|
|
808
884
|
|
|
@@ -812,28 +888,17 @@ namespace Private {
|
|
|
812
888
|
export async function createTerminal(
|
|
813
889
|
options: ITerminalOptions & ITerminalInitOnlyOptions
|
|
814
890
|
): Promise<[Xterm, FitAddon, SearchAddon]> {
|
|
815
|
-
if (!
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
? import('@xterm/addon-webgl')
|
|
823
|
-
: import('@xterm/addon-canvas'),
|
|
824
|
-
import('@xterm/addon-web-links'),
|
|
825
|
-
import('@xterm/addon-search')
|
|
826
|
-
]);
|
|
827
|
-
Xterm_ = xterm_.Terminal;
|
|
828
|
-
FitAddon_ = fitAddon_.FitAddon;
|
|
829
|
-
Renderer_ =
|
|
830
|
-
(renderer_ as any).WebglAddon ?? (renderer_ as any).CanvasAddon;
|
|
831
|
-
WeblinksAddon_ = weblinksAddon_.WebLinksAddon;
|
|
832
|
-
SearchAddon_ = searchAddon_.SearchAddon;
|
|
891
|
+
if (!initPromise) {
|
|
892
|
+
initPromise = initialize();
|
|
893
|
+
// Allow a later terminal to retry if the modules failed to load, for
|
|
894
|
+
// example because of a transient network failure.
|
|
895
|
+
initPromise.catch(() => {
|
|
896
|
+
initPromise = undefined;
|
|
897
|
+
});
|
|
833
898
|
}
|
|
899
|
+
await initPromise;
|
|
834
900
|
|
|
835
901
|
const term = new Xterm_(options);
|
|
836
|
-
addRenderer(term);
|
|
837
902
|
const fitAddon = new FitAddon_();
|
|
838
903
|
term.loadAddon(fitAddon);
|
|
839
904
|
const searchAddon = new SearchAddon_();
|
package/style/base.css
CHANGED
|
@@ -19,6 +19,11 @@
|
|
|
19
19
|
outline-offset: calc(var(--jp-focus-outline-width) * -1);
|
|
20
20
|
}
|
|
21
21
|
|
|
22
|
+
/*
|
|
23
|
+
* These border rules only apply to the WebGL renderer; the DOM renderer has
|
|
24
|
+
* no `<canvas>`. Each border color matches the corresponding terminal
|
|
25
|
+
* background, so without a canvas only an invisible 1px spacer is missing.
|
|
26
|
+
*/
|
|
22
27
|
[data-term-theme='inherit'] .xterm .xterm-screen canvas {
|
|
23
28
|
border: var(--jp-border-width) solid var(--jp-layout-color0);
|
|
24
29
|
}
|
|
@@ -30,3 +35,21 @@
|
|
|
30
35
|
[data-term-theme='dark'] .xterm .xterm-screen canvas {
|
|
31
36
|
border: var(--jp-border-width) solid #000;
|
|
32
37
|
}
|
|
38
|
+
|
|
39
|
+
/*
|
|
40
|
+
* xterm's stylesheet paints `.xterm-viewport` black and the theme does not
|
|
41
|
+
* restyle it. The viewport spans the `.jp-Terminal-body` padding, so the
|
|
42
|
+
* black would show as a frame around the terminal; match it to the terminal
|
|
43
|
+
* theme instead.
|
|
44
|
+
*/
|
|
45
|
+
[data-term-theme='inherit'] .xterm .xterm-viewport {
|
|
46
|
+
background-color: var(--jp-layout-color0);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
[data-term-theme='light'] .xterm .xterm-viewport {
|
|
50
|
+
background-color: white;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
[data-term-theme='dark'] .xterm .xterm-viewport {
|
|
54
|
+
background-color: black;
|
|
55
|
+
}
|