提交 756e105e 编写于 作者: I isidor

fixes #97457

上级 5d37bb76
...@@ -87,7 +87,7 @@ export class Repl extends ViewPane implements IHistoryNavigationWidget { ...@@ -87,7 +87,7 @@ export class Repl extends ViewPane implements IHistoryNavigationWidget {
private replInputContainer!: HTMLElement; private replInputContainer!: HTMLElement;
private dimension!: dom.Dimension; private dimension!: dom.Dimension;
private replInputLineCount = 1; private replInputLineCount = 1;
private model!: ITextModel; private model: ITextModel | undefined;
private historyNavigationEnablement!: IContextKey<boolean>; private historyNavigationEnablement!: IContextKey<boolean>;
private scopedInstantiationService!: IInstantiationService; private scopedInstantiationService!: IInstantiationService;
private replElementsChangeListener: IDisposable | undefined; private replElementsChangeListener: IDisposable | undefined;
...@@ -271,7 +271,7 @@ export class Repl extends ViewPane implements IHistoryNavigationWidget { ...@@ -271,7 +271,7 @@ export class Repl extends ViewPane implements IHistoryNavigationWidget {
if (isCodeEditor(activeEditorControl)) { if (isCodeEditor(activeEditorControl)) {
this.modelChangeListener.dispose(); this.modelChangeListener.dispose();
this.modelChangeListener = activeEditorControl.onDidChangeModelLanguage(() => this.setMode()); this.modelChangeListener = activeEditorControl.onDidChangeModelLanguage(() => this.setMode());
if (activeEditorControl.hasModel()) { if (this.model && activeEditorControl.hasModel()) {
this.model.setMode(activeEditorControl.getModel().getLanguageIdentifier()); this.model.setMode(activeEditorControl.getModel().getLanguageIdentifier());
} }
} }
...@@ -397,16 +397,18 @@ export class Repl extends ViewPane implements IHistoryNavigationWidget { ...@@ -397,16 +397,18 @@ export class Repl extends ViewPane implements IHistoryNavigationWidget {
getVisibleContent(): string { getVisibleContent(): string {
let text = ''; let text = '';
const lineDelimiter = this.textResourcePropertiesService.getEOL(this.model.uri); if (this.model) {
const traverseAndAppend = (node: ITreeNode<IReplElement, FuzzyScore>) => { const lineDelimiter = this.textResourcePropertiesService.getEOL(this.model.uri);
node.children.forEach(child => { const traverseAndAppend = (node: ITreeNode<IReplElement, FuzzyScore>) => {
text += child.element.toString().trimRight() + lineDelimiter; node.children.forEach(child => {
if (!child.collapsed && child.children.length) { text += child.element.toString().trimRight() + lineDelimiter;
traverseAndAppend(child); if (!child.collapsed && child.children.length) {
} traverseAndAppend(child);
}); }
}; });
traverseAndAppend(this.tree.getNode()); };
traverseAndAppend(this.tree.getNode());
}
return removeAnsiEscapeCodes(text); return removeAnsiEscapeCodes(text);
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册