提交 99de97fc 编写于 作者: D Daniel Imms 提交者: GitHub

Merge pull request #8868 from chrmarti/chrmarti/pasteol

Fixes #7346: Paste native EOL
......@@ -6,6 +6,7 @@
import DOM = require('vs/base/browser/dom');
import lifecycle = require('vs/base/common/lifecycle');
import nls = require('vs/nls');
import os = require('os');
import platform = require('vs/base/common/platform');
import xterm = require('xterm');
import {Dimension} from 'vs/base/browser/builder';
......@@ -15,6 +16,9 @@ import {ITerminalProcess, ITerminalService} from 'vs/workbench/parts/terminal/el
import {IWorkspaceContextService} from 'vs/platform/workspace/common/workspace';
export class TerminalInstance {
private static eolRegex = /\r?\n/g;
private isExiting: boolean = false;
private toDispose: lifecycle.IDisposable[];
......@@ -45,7 +49,7 @@ export class TerminalInstance {
this.xterm.on('data', (data) => {
this.terminalProcess.process.send({
event: 'input',
data: data
data: this.sanitizeInput(data)
});
return false;
});
......@@ -84,6 +88,10 @@ export class TerminalInstance {
this.parentDomElement.appendChild(this.wrapperElement);
}
private sanitizeInput(data: any) {
return typeof data === 'string' ? data.replace(TerminalInstance.eolRegex, os.EOL) : data;
}
public layout(dimension: Dimension): void {
if (!this.font || !this.font.charWidth || !this.font.charHeight) {
return;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册