You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
vscode-api-cn.js/interfaces/vscode.Pseudoterminal.html

543 lines
42 KiB

<!doctype html>
<html class="default no-js" lang="zh-CN">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Pseudoterminal | VS Code API 中文文档
</title>
<meta name="description"
content="VS Code API 是一系列你可以在 Visual Studio Code 扩展中调用的 JavaScript API这个站点列出了扩展开发者可以使用的所有 vscode api 中文文档,是 vscode 插件开发必备。">
<meta name="author" content="洛竹">
<meta name="copyright" content="洛竹">
<meta property="og:title" content="Vscode Api 中文文档" />
<meta property="og:type" content="docs">
<meta property="og:image" content="https://code.visualstudio.com/favicon.ico" />
<meta property="og:url" content="https://vscode-api-cn.js.org/index.html">
<meta property="og:site_name" content="Vscode Api 中文文档">
<meta property="article:tag" content="vscode api">
<meta property="article:tag" content="vscode api 中文文档">
<meta property="article:tag" content="vscode 插件">
<meta property="article:tag" content="vscode 插件开发">
<meta property="article:tag" content="vscode VS Code API 中文文档">
<meta property="article:tag" content="vscode Pseudoterminal">
<meta property="og:description"
content="VS Code API 是一系列你可以在 Visual Studio Code 扩展中调用的 JavaScript API这个站点列出了扩展开发者可以使用的所有 vscode api 中文文档,是 vscode 插件开发必备。">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="shortcut icon" href="https://code.visualstudio.com/favicon.ico" sizes="128x128">
<link rel='canonical' href='https://vscode-api-cn.js.org/interfaces/vscode.Pseudoterminal.html' />
<link rel="stylesheet" href="../ assets/css/main.css">
<script async src="../ assets/js/search.js" id="search-script"></script>
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-7962287588031867"
crossorigin="anonymous"></script>
<script type="text/javascript">
(function (c, l, a, r, i, t, y) {
c[a] = c[a] || function () { (c[a].q = c[a].q || []).push(arguments) };
t = l.createElement(r); t.async = 1; t.src = "https://www.clarity.ms/tag/" + i;
y = l.getElementsByTagName(r)[0]; y.parentNode.insertBefore(t, y);
})(window, document, "clarity", "script", "g1cbw4nxoq");
</script>
<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-T4TRRS1LB1"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag() { dataLayer.push(arguments); }
gtag('js', new Date());
gtag('config', 'G-T4TRRS1LB1');
</script>
<style>
.container-main {
padding-bottom: 50px;
}
</style>
</head>
<body>
<header>
<div class="tsd-page-toolbar">
<div class="container">
<div class="table-wrap">
<div class="table-cell" id="tsd-search" data-index="../assets/js/search.json" data-base="..">
<div class="field">
<label for="tsd-search-field" class="tsd-widget search no-caption">Search</label>
<input id="tsd-search-field" type="text" />
</div>
<ul class="results">
<li class="state loading">Preparing search index...</li>
<li class="state failure">The search index is not available</li>
</ul>
<a href="../index.html" class="title">VS Code API 中文文档</a>
</div>
<div class="table-cell" id="tsd-widgets">
<div id="tsd-filter">
<a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a>
<div class="tsd-filter-group">
<div class="tsd-select" id="tsd-filter-visibility">
<span class="tsd-select-label">All</span>
<ul class="tsd-select-list">
<li data-value="public">Public</li>
<li data-value="protected">Public/Protected</li>
<li data-value="private" class="selected">All</li>
</ul>
</div>
<input type="checkbox" id="tsd-filter-inherited" checked />
<label class="tsd-widget" for="tsd-filter-inherited">Inherited</label>
<input type="checkbox" id="tsd-filter-externals" checked />
<label class="tsd-widget" for="tsd-filter-externals">Externals</label>
</div>
</div>
<a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a>
</div>
</div>
</div>
</div>
<div class="tsd-page-title">
<div class="container">
<ul class="tsd-breadcrumb">
<li>
<a href="../modules.html">VS Code API 中文文档</a>
</li>
<li>
<a href="../modules/vscode.html">vscode</a>
</li>
<li>
<a href="vscode.Pseudoterminal.html">Pseudoterminal</a>
</li>
</ul>
<h1>Interface Pseudoterminal</h1>
</div>
</div>
</header>
<div class="container container-main">
<div class="row">
<div class="col-8 col-content">
<div class="tsd-panel tsd-typography">
<script async="async" data-cfasync="false"
src="//harassinganticipation.com/c4d7e606982b8dd763aa6f5591967680/invoke.js"></script>
<div id="container-c4d7e606982b8dd763aa6f5591967680"></div>
</div>
<section class="tsd-panel tsd-comment">
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Defines the interface of a terminal pty, enabling extensions to control a terminal.</p>
</div>
</div>
</section>
<section class="tsd-panel tsd-hierarchy">
<h3>层级</h3>
<ul class="tsd-hierarchy">
<li>
<span class="target">Pseudoterminal</span>
</li>
</ul>
</section>
<section class="tsd-panel-group tsd-index-group">
<h2>索引</h2>
<section class="tsd-panel tsd-index-panel">
<div class="tsd-index-content">
<section class="tsd-index-section ">
<h3>Properties4</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-property tsd-parent-kind-interface"><a href="vscode.Pseudoterminal.html#onDidWrite" class="tsd-kind-icon">on<wbr>Did<wbr>Write</a></li>
<li class="tsd-kind-property tsd-parent-kind-interface"><a href="vscode.Pseudoterminal.html#onDidOverrideDimensions" class="tsd-kind-icon">on<wbr>Did<wbr>Override<wbr>Dimensions</a></li>
<li class="tsd-kind-property tsd-parent-kind-interface"><a href="vscode.Pseudoterminal.html#onDidClose" class="tsd-kind-icon">on<wbr>Did<wbr>Close</a></li>
<li class="tsd-kind-property tsd-parent-kind-interface"><a href="vscode.Pseudoterminal.html#onDidChangeName" class="tsd-kind-icon">on<wbr>Did<wbr>Change<wbr>Name</a></li>
</ul>
</section>
<section class="tsd-index-section ">
<h3>Methods4</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-method tsd-parent-kind-interface"><a href="vscode.Pseudoterminal.html#open" class="tsd-kind-icon">open</a></li>
<li class="tsd-kind-method tsd-parent-kind-interface"><a href="vscode.Pseudoterminal.html#close" class="tsd-kind-icon">close</a></li>
<li class="tsd-kind-method tsd-parent-kind-interface"><a href="vscode.Pseudoterminal.html#handleInput" class="tsd-kind-icon">handle<wbr>Input</a></li>
<li class="tsd-kind-method tsd-parent-kind-interface"><a href="vscode.Pseudoterminal.html#setDimensions" class="tsd-kind-icon">set<wbr>Dimensions</a></li>
</ul>
</section>
</div>
</section>
</section>
<section class="tsd-panel-group tsd-member-group ">
<h2>Properties4</h2>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
<a name="onDidWrite" class="tsd-anchor"></a>
<h3>on<wbr>Did<wbr>Write</h3>
<div class="tsd-signature tsd-kind-icon">on<wbr>Did<wbr>Write<span class="tsd-signature-symbol">:</span> <a href="vscode.Event.html" class="tsd-signature-type" data-tsd-kind="Interface">Event</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">&gt;</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/youngjuning/vscode-api-cn/blob/e169b1a/vscode.d.ts#L9657">vscode.d.ts:9657</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>An event that when fired will write data to the terminal. Unlike
<a href="vscode.Terminal.html#sendText">Terminal.sendText</a> which sends text to the underlying child
pseudo-device (the child), this will write the text to parent pseudo-device (the
<em>terminal</em> itself).</p>
</div>
<p>Note writing <code>\n</code> will just move the cursor down 1 row, you need to write <code>\r</code> as well
to move the cursor to the left-most cell.</p>
<p><strong>Example:</strong> Write red text to the terminal</p>
<pre><code class="language-typescript"><span style="color: #0000FF">const</span><span style="color: #000000"> </span><span style="color: #0070C1">writeEmitter</span><span style="color: #000000"> = </span><span style="color: #0000FF">new</span><span style="color: #000000"> </span><span style="color: #001080">vscode</span><span style="color: #000000">.</span><span style="color: #795E26">EventEmitter</span><span style="color: #000000">&lt;</span><span style="color: #267F99">string</span><span style="color: #000000">&gt;();</span>
<span style="color: #0000FF">const</span><span style="color: #000000"> </span><span style="color: #0070C1">pty</span><span style="color: #000000">: </span><span style="color: #267F99">vscode</span><span style="color: #000000">.</span><span style="color: #267F99">Pseudoterminal</span><span style="color: #000000"> = {</span>
<span style="color: #000000"> </span><span style="color: #001080">onDidWrite:</span><span style="color: #000000"> </span><span style="color: #001080">writeEmitter</span><span style="color: #000000">.</span><span style="color: #001080">event</span><span style="color: #000000">,</span>
<span style="color: #000000"> </span><span style="color: #795E26">open</span><span style="color: #001080">:</span><span style="color: #000000"> () </span><span style="color: #0000FF">=&gt;</span><span style="color: #000000"> </span><span style="color: #001080">writeEmitter</span><span style="color: #000000">.</span><span style="color: #795E26">fire</span><span style="color: #000000">(</span><span style="color: #A31515">&#039;</span><span style="color: #EE0000">\x1b</span><span style="color: #A31515">[31mHello world</span><span style="color: #EE0000">\x1b</span><span style="color: #A31515">[0m&#039;</span><span style="color: #000000">),</span>
<span style="color: #000000"> </span><span style="color: #795E26">close</span><span style="color: #001080">:</span><span style="color: #000000"> () </span><span style="color: #0000FF">=&gt;</span><span style="color: #000000"> {}</span>
<span style="color: #000000">};</span>
<span style="color: #001080">vscode</span><span style="color: #000000">.</span><span style="color: #001080">window</span><span style="color: #000000">.</span><span style="color: #795E26">createTerminal</span><span style="color: #000000">({ </span><span style="color: #001080">name:</span><span style="color: #000000"> </span><span style="color: #A31515">&#039;My terminal&#039;</span><span style="color: #000000">, </span><span style="color: #001080">pty</span><span style="color: #000000"> });</span>
</code></pre>
<p><strong>Example:</strong> Move the cursor to the 10th row and 20th column and write an asterisk</p>
<pre><code class="language-typescript"><span style="color: #001080">writeEmitter</span><span style="color: #000000">.</span><span style="color: #795E26">fire</span><span style="color: #000000">(</span><span style="color: #A31515">&#039;</span><span style="color: #EE0000">\x1b</span><span style="color: #A31515">[10;20H*&#039;</span><span style="color: #000000">);</span>
</code></pre>
</div>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
<a name="onDidOverrideDimensions" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagOptional">Optional</span> on<wbr>Did<wbr>Override<wbr>Dimensions</h3>
<div class="tsd-signature tsd-kind-icon">on<wbr>Did<wbr>Override<wbr>Dimensions<span class="tsd-signature-symbol">:</span> <a href="vscode.Event.html" class="tsd-signature-type" data-tsd-kind="Interface">Event</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><a href="vscode.TerminalDimensions.html" class="tsd-signature-type" data-tsd-kind="Interface">TerminalDimensions</a><span class="tsd-signature-symbol">&gt;</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/youngjuning/vscode-api-cn/blob/e169b1a/vscode.d.ts#L9683">vscode.d.ts:9683</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>An event that when fired allows overriding the <a href="vscode.Pseudoterminal.html#setDimensions">dimensions</a> of the
terminal. Note that when set, the overridden dimensions will only take effect when they
are lower than the actual dimensions of the terminal (ie. there will never be a scroll
bar). Set to <code>undefined</code> for the terminal to go back to the regular dimensions (fit to
the size of the panel).</p>
</div>
<p><strong>Example:</strong> Override the dimensions of a terminal to 20 columns and 10 rows</p>
<pre><code class="language-typescript"><span style="color: #0000FF">const</span><span style="color: #000000"> </span><span style="color: #0070C1">dimensionsEmitter</span><span style="color: #000000"> = </span><span style="color: #0000FF">new</span><span style="color: #000000"> </span><span style="color: #001080">vscode</span><span style="color: #000000">.</span><span style="color: #795E26">EventEmitter</span><span style="color: #000000">&lt;</span><span style="color: #267F99">vscode</span><span style="color: #000000">.</span><span style="color: #267F99">TerminalDimensions</span><span style="color: #000000">&gt;();</span>
<span style="color: #0000FF">const</span><span style="color: #000000"> </span><span style="color: #0070C1">pty</span><span style="color: #000000">: </span><span style="color: #267F99">vscode</span><span style="color: #000000">.</span><span style="color: #267F99">Pseudoterminal</span><span style="color: #000000"> = {</span>
<span style="color: #000000"> </span><span style="color: #001080">onDidWrite:</span><span style="color: #000000"> </span><span style="color: #001080">writeEmitter</span><span style="color: #000000">.</span><span style="color: #001080">event</span><span style="color: #000000">,</span>
<span style="color: #000000"> </span><span style="color: #001080">onDidOverrideDimensions:</span><span style="color: #000000"> </span><span style="color: #001080">dimensionsEmitter</span><span style="color: #000000">.</span><span style="color: #001080">event</span><span style="color: #000000">,</span>
<span style="color: #000000"> </span><span style="color: #795E26">open</span><span style="color: #001080">:</span><span style="color: #000000"> () </span><span style="color: #0000FF">=&gt;</span><span style="color: #000000"> {</span>
<span style="color: #000000"> </span><span style="color: #001080">dimensionsEmitter</span><span style="color: #000000">.</span><span style="color: #795E26">fire</span><span style="color: #000000">({</span>
<span style="color: #000000"> </span><span style="color: #001080">columns:</span><span style="color: #000000"> </span><span style="color: #098658">20</span><span style="color: #000000">,</span>
<span style="color: #000000"> </span><span style="color: #001080">rows:</span><span style="color: #000000"> </span><span style="color: #098658">10</span>
<span style="color: #000000"> });</span>
<span style="color: #000000"> },</span>
<span style="color: #000000"> </span><span style="color: #795E26">close</span><span style="color: #001080">:</span><span style="color: #000000"> () </span><span style="color: #0000FF">=&gt;</span><span style="color: #000000"> {}</span>
<span style="color: #000000">};</span>
<span style="color: #001080">vscode</span><span style="color: #000000">.</span><span style="color: #001080">window</span><span style="color: #000000">.</span><span style="color: #795E26">createTerminal</span><span style="color: #000000">({ </span><span style="color: #001080">name:</span><span style="color: #000000"> </span><span style="color: #A31515">&#039;My terminal&#039;</span><span style="color: #000000">, </span><span style="color: #001080">pty</span><span style="color: #000000"> });</span>
</code></pre>
</div>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
<a name="onDidClose" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagOptional">Optional</span> on<wbr>Did<wbr>Close</h3>
<div class="tsd-signature tsd-kind-icon">on<wbr>Did<wbr>Close<span class="tsd-signature-symbol">:</span> <a href="vscode.Event.html" class="tsd-signature-type" data-tsd-kind="Interface">Event</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/youngjuning/vscode-api-cn/blob/e169b1a/vscode.d.ts#L9712">vscode.d.ts:9712</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>An event that when fired will signal that the pty is closed and dispose of the terminal.</p>
</div>
<p>A number can be used to provide an exit code for the terminal. Exit codes must be
positive and a non-zero exit codes signals failure which shows a notification for a
regular terminal and allows dependent tasks to proceed when used with the
<code>CustomExecution</code> API.</p>
<p><strong>Example:</strong> Exit the terminal when &quot;y&quot; is pressed, otherwise show a notification.</p>
<pre><code class="language-typescript"><span style="color: #0000FF">const</span><span style="color: #000000"> </span><span style="color: #0070C1">writeEmitter</span><span style="color: #000000"> = </span><span style="color: #0000FF">new</span><span style="color: #000000"> </span><span style="color: #001080">vscode</span><span style="color: #000000">.</span><span style="color: #795E26">EventEmitter</span><span style="color: #000000">&lt;</span><span style="color: #267F99">string</span><span style="color: #000000">&gt;();</span>
<span style="color: #0000FF">const</span><span style="color: #000000"> </span><span style="color: #0070C1">closeEmitter</span><span style="color: #000000"> = </span><span style="color: #0000FF">new</span><span style="color: #000000"> </span><span style="color: #001080">vscode</span><span style="color: #000000">.</span><span style="color: #795E26">EventEmitter</span><span style="color: #000000">&lt;</span><span style="color: #267F99">vscode</span><span style="color: #000000">.</span><span style="color: #267F99">TerminalDimensions</span><span style="color: #000000">&gt;();</span>
<span style="color: #0000FF">const</span><span style="color: #000000"> </span><span style="color: #0070C1">pty</span><span style="color: #000000">: </span><span style="color: #267F99">vscode</span><span style="color: #000000">.</span><span style="color: #267F99">Pseudoterminal</span><span style="color: #000000"> = {</span>
<span style="color: #000000"> </span><span style="color: #001080">onDidWrite:</span><span style="color: #000000"> </span><span style="color: #001080">writeEmitter</span><span style="color: #000000">.</span><span style="color: #001080">event</span><span style="color: #000000">,</span>
<span style="color: #000000"> </span><span style="color: #001080">onDidClose:</span><span style="color: #000000"> </span><span style="color: #001080">closeEmitter</span><span style="color: #000000">.</span><span style="color: #001080">event</span><span style="color: #000000">,</span>
<span style="color: #000000"> </span><span style="color: #795E26">open</span><span style="color: #001080">:</span><span style="color: #000000"> () </span><span style="color: #0000FF">=&gt;</span><span style="color: #000000"> </span><span style="color: #001080">writeEmitter</span><span style="color: #000000">.</span><span style="color: #795E26">fire</span><span style="color: #000000">(</span><span style="color: #A31515">&#039;Press y to exit successfully&#039;</span><span style="color: #000000">),</span>
<span style="color: #000000"> </span><span style="color: #795E26">close</span><span style="color: #001080">:</span><span style="color: #000000"> () </span><span style="color: #0000FF">=&gt;</span><span style="color: #000000"> {},</span>
<span style="color: #000000"> </span><span style="color: #795E26">handleInput</span><span style="color: #001080">:</span><span style="color: #000000"> </span><span style="color: #001080">data</span><span style="color: #000000"> </span><span style="color: #0000FF">=&gt;</span><span style="color: #000000"> {</span>
<span style="color: #000000"> </span><span style="color: #AF00DB">if</span><span style="color: #000000"> (</span><span style="color: #001080">data</span><span style="color: #000000"> !== </span><span style="color: #A31515">&#039;y&#039;</span><span style="color: #000000">) {</span>
<span style="color: #000000"> </span><span style="color: #001080">vscode</span><span style="color: #000000">.</span><span style="color: #001080">window</span><span style="color: #000000">.</span><span style="color: #795E26">showInformationMessage</span><span style="color: #000000">(</span><span style="color: #A31515">&#039;Something went wrong&#039;</span><span style="color: #000000">);</span>
<span style="color: #000000"> }</span>
<span style="color: #000000"> </span><span style="color: #001080">closeEmitter</span><span style="color: #000000">.</span><span style="color: #795E26">fire</span><span style="color: #000000">();</span>
<span style="color: #000000"> }</span>
<span style="color: #000000">};</span>
<span style="color: #001080">vscode</span><span style="color: #000000">.</span><span style="color: #001080">window</span><span style="color: #000000">.</span><span style="color: #795E26">createTerminal</span><span style="color: #000000">({ </span><span style="color: #001080">name:</span><span style="color: #000000"> </span><span style="color: #A31515">&#039;Exit example&#039;</span><span style="color: #000000">, </span><span style="color: #001080">pty</span><span style="color: #000000"> });</span>
</code></pre>
</div>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
<a name="onDidChangeName" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagOptional">Optional</span> on<wbr>Did<wbr>Change<wbr>Name</h3>
<div class="tsd-signature tsd-kind-icon">on<wbr>Did<wbr>Change<wbr>Name<span class="tsd-signature-symbol">:</span> <a href="vscode.Event.html" class="tsd-signature-type" data-tsd-kind="Interface">Event</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">&gt;</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/youngjuning/vscode-api-cn/blob/e169b1a/vscode.d.ts#L9730">vscode.d.ts:9730</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>An event that when fired allows changing the name of the terminal.</p>
</div>
<p><strong>Example:</strong> Change the terminal name to &quot;My new terminal&quot;.</p>
<pre><code class="language-typescript"><span style="color: #0000FF">const</span><span style="color: #000000"> </span><span style="color: #0070C1">writeEmitter</span><span style="color: #000000"> = </span><span style="color: #0000FF">new</span><span style="color: #000000"> </span><span style="color: #001080">vscode</span><span style="color: #000000">.</span><span style="color: #795E26">EventEmitter</span><span style="color: #000000">&lt;</span><span style="color: #267F99">string</span><span style="color: #000000">&gt;();</span>
<span style="color: #0000FF">const</span><span style="color: #000000"> </span><span style="color: #0070C1">changeNameEmitter</span><span style="color: #000000"> = </span><span style="color: #0000FF">new</span><span style="color: #000000"> </span><span style="color: #001080">vscode</span><span style="color: #000000">.</span><span style="color: #795E26">EventEmitter</span><span style="color: #000000">&lt;</span><span style="color: #267F99">string</span><span style="color: #000000">&gt;();</span>
<span style="color: #0000FF">const</span><span style="color: #000000"> </span><span style="color: #0070C1">pty</span><span style="color: #000000">: </span><span style="color: #267F99">vscode</span><span style="color: #000000">.</span><span style="color: #267F99">Pseudoterminal</span><span style="color: #000000"> = {</span>
<span style="color: #000000"> </span><span style="color: #001080">onDidWrite:</span><span style="color: #000000"> </span><span style="color: #001080">writeEmitter</span><span style="color: #000000">.</span><span style="color: #001080">event</span><span style="color: #000000">,</span>
<span style="color: #000000"> </span><span style="color: #001080">onDidChangeName:</span><span style="color: #000000"> </span><span style="color: #001080">changeNameEmitter</span><span style="color: #000000">.</span><span style="color: #001080">event</span><span style="color: #000000">,</span>
<span style="color: #000000"> </span><span style="color: #795E26">open</span><span style="color: #001080">:</span><span style="color: #000000"> () </span><span style="color: #0000FF">=&gt;</span><span style="color: #000000"> </span><span style="color: #001080">changeNameEmitter</span><span style="color: #000000">.</span><span style="color: #795E26">fire</span><span style="color: #000000">(</span><span style="color: #A31515">&#039;My new terminal&#039;</span><span style="color: #000000">),</span>
<span style="color: #000000"> </span><span style="color: #795E26">close</span><span style="color: #001080">:</span><span style="color: #000000"> () </span><span style="color: #0000FF">=&gt;</span><span style="color: #000000"> {}</span>
<span style="color: #000000">};</span>
<span style="color: #001080">vscode</span><span style="color: #000000">.</span><span style="color: #001080">window</span><span style="color: #000000">.</span><span style="color: #795E26">createTerminal</span><span style="color: #000000">({ </span><span style="color: #001080">name:</span><span style="color: #000000"> </span><span style="color: #A31515">&#039;My terminal&#039;</span><span style="color: #000000">, </span><span style="color: #001080">pty</span><span style="color: #000000"> });</span>
</code></pre>
</div>
</section>
</section>
<section class="tsd-panel-group tsd-member-group ">
<h2>Methods4</h2>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
<a name="open" class="tsd-anchor"></a>
<h3>open</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
<li class="tsd-signature tsd-kind-icon">open<span class="tsd-signature-symbol">(</span>initialDimensions<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><a href="vscode.TerminalDimensions.html" class="tsd-signature-type" data-tsd-kind="Interface">TerminalDimensions</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/youngjuning/vscode-api-cn/blob/e169b1a/vscode.d.ts#L9738">vscode.d.ts:9738</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Implement to handle when the pty is open and ready to start firing events.</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>initialDimensions: <span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><a href="vscode.TerminalDimensions.html" class="tsd-signature-type" data-tsd-kind="Interface">TerminalDimensions</a></h5>
<div class="tsd-comment tsd-typography">
<p>The dimensions of the terminal, this will be undefined if the
terminal panel has not been opened before this is called.</p>
</div>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
<a name="close" class="tsd-anchor"></a>
<h3>close</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
<li class="tsd-signature tsd-kind-icon">close<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/youngjuning/vscode-api-cn/blob/e169b1a/vscode.d.ts#L9743">vscode.d.ts:9743</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Implement to handle when the terminal is closed by an act of the user.</p>
</div>
</div>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
<a name="handleInput" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagOptional">Optional</span> handle<wbr>Input</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
<li class="tsd-signature tsd-kind-icon">handle<wbr>Input<span class="tsd-signature-symbol">(</span>data<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/youngjuning/vscode-api-cn/blob/e169b1a/vscode.d.ts#L9765">vscode.d.ts:9765</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Implement to handle incoming keystrokes in the terminal or when an extension calls
<a href="vscode.Terminal.html#sendText">Terminal.sendText</a>. <code>data</code> contains the keystrokes/text serialized into
their corresponding VT sequence representation.</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>data: <span class="tsd-signature-type">string</span></h5>
<div class="tsd-comment tsd-typography">
<p>The incoming data.</p>
<p><strong>Example:</strong> Echo input in the terminal. The sequence for enter (<code>\r</code>) is translated to
CRLF to go to a new line and move the cursor to the start of the line.</p>
<pre><code class="language-typescript"><span style="color: #0000FF">const</span><span style="color: #000000"> </span><span style="color: #0070C1">writeEmitter</span><span style="color: #000000"> = </span><span style="color: #0000FF">new</span><span style="color: #000000"> </span><span style="color: #001080">vscode</span><span style="color: #000000">.</span><span style="color: #795E26">EventEmitter</span><span style="color: #000000">&lt;</span><span style="color: #267F99">string</span><span style="color: #000000">&gt;();</span>
<span style="color: #0000FF">const</span><span style="color: #000000"> </span><span style="color: #0070C1">pty</span><span style="color: #000000">: </span><span style="color: #267F99">vscode</span><span style="color: #000000">.</span><span style="color: #267F99">Pseudoterminal</span><span style="color: #000000"> = {</span>
<span style="color: #000000"> </span><span style="color: #001080">onDidWrite:</span><span style="color: #000000"> </span><span style="color: #001080">writeEmitter</span><span style="color: #000000">.</span><span style="color: #001080">event</span><span style="color: #000000">,</span>
<span style="color: #000000"> </span><span style="color: #795E26">open</span><span style="color: #001080">:</span><span style="color: #000000"> () </span><span style="color: #0000FF">=&gt;</span><span style="color: #000000"> {},</span>
<span style="color: #000000"> </span><span style="color: #795E26">close</span><span style="color: #001080">:</span><span style="color: #000000"> () </span><span style="color: #0000FF">=&gt;</span><span style="color: #000000"> {},</span>
<span style="color: #000000"> </span><span style="color: #795E26">handleInput</span><span style="color: #001080">:</span><span style="color: #000000"> </span><span style="color: #001080">data</span><span style="color: #000000"> </span><span style="color: #0000FF">=&gt;</span><span style="color: #000000"> </span><span style="color: #001080">writeEmitter</span><span style="color: #000000">.</span><span style="color: #795E26">fire</span><span style="color: #000000">(</span><span style="color: #001080">data</span><span style="color: #000000"> === </span><span style="color: #A31515">&#039;</span><span style="color: #EE0000">\r</span><span style="color: #A31515">&#039;</span><span style="color: #000000"> ? </span><span style="color: #A31515">&#039;</span><span style="color: #EE0000">\r\n</span><span style="color: #A31515">&#039;</span><span style="color: #000000"> : </span><span style="color: #001080">data</span><span style="color: #000000">)</span>
<span style="color: #000000">};</span>
<span style="color: #001080">vscode</span><span style="color: #000000">.</span><span style="color: #001080">window</span><span style="color: #000000">.</span><span style="color: #795E26">createTerminal</span><span style="color: #000000">({ </span><span style="color: #001080">name:</span><span style="color: #000000"> </span><span style="color: #A31515">&#039;Local echo&#039;</span><span style="color: #000000">, </span><span style="color: #001080">pty</span><span style="color: #000000"> });</span>
</code></pre>
</div>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
<a name="setDimensions" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagOptional">Optional</span> set<wbr>Dimensions</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
<li class="tsd-signature tsd-kind-icon">set<wbr>Dimensions<span class="tsd-signature-symbol">(</span>dimensions<span class="tsd-signature-symbol">: </span><a href="vscode.TerminalDimensions.html" class="tsd-signature-type" data-tsd-kind="Interface">TerminalDimensions</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/youngjuning/vscode-api-cn/blob/e169b1a/vscode.d.ts#L9780">vscode.d.ts:9780</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Implement to handle when the number of rows and columns that fit into the terminal panel
changes, for example when font size changes or when the panel is resized. The initial
state of a terminal&#39;s dimensions should be treated as <code>undefined</code> until this is triggered
as the size of a terminal isn&#39;t known until it shows up in the user interface.</p>
</div>
<p>When dimensions are overridden by
<a href="vscode.Pseudoterminal.html#onDidOverrideDimensions">onDidOverrideDimensions</a>, <code>setDimensions</code> will
continue to be called with the regular panel dimensions, allowing the extension continue
to react dimension changes.</p>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>dimensions: <a href="vscode.TerminalDimensions.html" class="tsd-signature-type" data-tsd-kind="Interface">TerminalDimensions</a></h5>
<div class="tsd-comment tsd-typography">
<p>The new dimensions.</p>
</div>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
</li>
</ul>
</section>
</section>
</div>
<div class="col-4 col-menu menu-sticky-wrap menu-highlight">
<nav class="tsd-navigation primary">
<ul>
<li class=" ">
<a href="../modules.html">Exports</a>
</li>
<li class="current tsd-kind-namespace">
<a href="../modules/vscode.html">vscode</a>
<ul>
<li class=" tsd-kind-namespace tsd-parent-kind-namespace">
<a href="../modules/vscode.authentication.html">authentication</a>
</li>
<li class=" tsd-kind-namespace tsd-parent-kind-namespace">
<a href="../modules/vscode.commands.html">commands</a>
</li>
<li class=" tsd-kind-namespace tsd-parent-kind-namespace">
<a href="../modules/vscode.comments.html">comments</a>
</li>
<li class=" tsd-kind-namespace tsd-parent-kind-namespace">
<a href="../modules/vscode.debug.html">debug</a>
</li>
<li class=" tsd-kind-namespace tsd-parent-kind-namespace">
<a href="../modules/vscode.env.html">env</a>
</li>
<li class=" tsd-kind-namespace tsd-parent-kind-namespace">
<a href="../modules/vscode.extensions.html">extensions</a>
</li>
<li class=" tsd-kind-namespace tsd-parent-kind-namespace">
<a href="../modules/vscode.languages.html">languages</a>
</li>
<li class=" tsd-kind-namespace tsd-parent-kind-namespace">
<a href="../modules/vscode.notebooks.html">notebooks</a>
</li>
<li class=" tsd-kind-namespace tsd-parent-kind-namespace">
<a href="../modules/vscode.scm.html">scm</a>
</li>
<li class=" tsd-kind-namespace tsd-parent-kind-namespace">
<a href="../modules/vscode.tasks.html">tasks</a>
</li>
<li class=" tsd-kind-namespace tsd-parent-kind-namespace">
<a href="../modules/vscode.tests.html">tests</a>
</li>
<li class=" tsd-kind-namespace tsd-parent-kind-namespace">
<a href="../modules/vscode.window.html">window</a>
</li>
<li class=" tsd-kind-namespace tsd-parent-kind-namespace">
<a href="../modules/vscode.workspace.html">workspace</a>
</li>
</ul>
</li>
</ul>
</nav>
<nav class="tsd-navigation secondary menu-sticky">
<div style="width: 200px">
<script type="text/javascript" id="clstr_globe"
src="//clustrmaps.com/globe.js?d=cMnk-gSDNcAzNMMm67U8rWRaHnjUc0Xb0giSGndepK4"></script>
</div>
<ul class="before-current">
</ul>
<ul class="current">
<li class="current tsd-kind-interface tsd-parent-kind-namespace">
<a href="vscode.Pseudoterminal.html" class="tsd-kind-icon">Pseudoterminal</a>
<ul>
<li class=" tsd-kind-property tsd-parent-kind-interface">
<a href="vscode.Pseudoterminal.html#onDidWrite" class="tsd-kind-icon">on<wbr>Did<wbr>Write</a>
</li>
<li class=" tsd-kind-property tsd-parent-kind-interface">
<a href="vscode.Pseudoterminal.html#onDidOverrideDimensions" class="tsd-kind-icon">on<wbr>Did<wbr>Override<wbr>Dimensions</a>
</li>
<li class=" tsd-kind-property tsd-parent-kind-interface">
<a href="vscode.Pseudoterminal.html#onDidClose" class="tsd-kind-icon">on<wbr>Did<wbr>Close</a>
</li>
<li class=" tsd-kind-property tsd-parent-kind-interface">
<a href="vscode.Pseudoterminal.html#onDidChangeName" class="tsd-kind-icon">on<wbr>Did<wbr>Change<wbr>Name</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-interface">
<a href="vscode.Pseudoterminal.html#open" class="tsd-kind-icon">open</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-interface">
<a href="vscode.Pseudoterminal.html#close" class="tsd-kind-icon">close</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-interface">
<a href="vscode.Pseudoterminal.html#handleInput" class="tsd-kind-icon">handle<wbr>Input</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-interface">
<a href="vscode.Pseudoterminal.html#setDimensions" class="tsd-kind-icon">set<wbr>Dimensions</a>
</li>
</ul>
</li>
</ul>
<ul class="after-current">
</ul>
</nav>
</div>
</div>
</div>
<footer class="with-border-bottom">
<div class="container">
<h2>图例</h2>
<div class="tsd-legend-group">
<ul class="tsd-legend">
<li class="tsd-kind-property tsd-parent-kind-interface"><span class="tsd-kind-icon">Property</span></li>
<li class="tsd-kind-method tsd-parent-kind-interface"><span class="tsd-kind-icon">Method</span></li>
</ul>
</div>
</div>
</footer>
<div class="container tsd-generator">
<p>友链:<a href="https://jeasonstudio.gitbooks.io/vscode-cn-doc/content/" target="_blank">VS Code 中文文档</a> | <a href="https://code.visualstudio.com/docs" target="_blank">VS Code 官网文档</a> | <a href="https://marketplace.visualstudio.com/" target="_blank">VS Code 扩展市场</a></p>
<p>Generated by <a href="https://typedoc.org/" target="_blank">TypeDoc</a>. Maintained by <a href="https://youngjuning.js.org" target="_blank">洛竹</a></p>
</div>
<div class="overlay"></div>
<script src="../ assets/js/main.js"></script>
</body>
</html>