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.NotebookController.html

596 lines
35 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<!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>NotebookController | 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="og:description" content="VS Code API 是一系列你可以在 Visual Studio Code 扩展中调用的 JavaScript API这个站点列出了扩展开发者可以使用的所有 vscode api 中文文档,是 vscode 插件开发必备。">
<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 NotebookController">
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover">
<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.NotebookController.html' />
<link rel="stylesheet" href="../assets/css/main.css">
<script async src="../assets/js/search.js" id="search-script"></script>
<meta name="baidu-site-verification" content="codeva-3X25ouCcqY" />
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-7962287588031867" crossorigin="anonymous"></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.NotebookController.html">NotebookController</a>
</li>
</ul>
<h1>Interface NotebookController</h1>
</div>
</div>
</header>
<div class="container container-main">
<div class="row">
<div class="col-8 col-content">
<section class="tsd-panel tsd-comment">
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>A notebook controller represents an entity that can execute notebook cells. This is often referred to as a kernel.</p>
</div>
<p>There can be multiple controllers and the editor will let users choose which controller to use for a certain notebook. The
<a href="vscode.NotebookController.html#notebookType"><code>notebookType</code></a>-property defines for what kind of notebooks a controller is for and
the <a href="vscode.NotebookController.html#updateNotebookAffinity"><code>updateNotebookAffinity</code></a>-function allows controllers to set a preference
for specific notebook documents. When a controller has been selected its
<a href="vscode.NotebookController.html#onDidChangeSelectedNotebooks">onDidChangeSelectedNotebooks</a>-event fires.</p>
<p>When a cell is being run the editor will invoke the <a href="vscode.NotebookController.html#executeHandler"><code>executeHandler</code></a> and a controller
is expected to create and finalize a <a href="vscode.NotebookCellExecution.html">notebook cell execution</a>. However, controllers are also free
to create executions by themselves.</p>
</div>
</section>
<section class="tsd-panel tsd-hierarchy">
<h3>层级</h3>
<ul class="tsd-hierarchy">
<li>
<span class="target">NotebookController</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>Properties8</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-property tsd-parent-kind-interface"><a href="vscode.NotebookController.html#id" class="tsd-kind-icon">id</a></li>
<li class="tsd-kind-property tsd-parent-kind-interface"><a href="vscode.NotebookController.html#notebookType" class="tsd-kind-icon">notebook<wbr>Type</a></li>
<li class="tsd-kind-property tsd-parent-kind-interface"><a href="vscode.NotebookController.html#supportedLanguages" class="tsd-kind-icon">supported<wbr>Languages</a></li>
<li class="tsd-kind-property tsd-parent-kind-interface"><a href="vscode.NotebookController.html#label" class="tsd-kind-icon">label</a></li>
<li class="tsd-kind-property tsd-parent-kind-interface"><a href="vscode.NotebookController.html#description" class="tsd-kind-icon">description</a></li>
<li class="tsd-kind-property tsd-parent-kind-interface"><a href="vscode.NotebookController.html#detail" class="tsd-kind-icon">detail</a></li>
<li class="tsd-kind-property tsd-parent-kind-interface"><a href="vscode.NotebookController.html#supportsExecutionOrder" class="tsd-kind-icon">supports<wbr>Execution<wbr>Order</a></li>
<li class="tsd-kind-property tsd-parent-kind-interface"><a href="vscode.NotebookController.html#onDidChangeSelectedNotebooks" class="tsd-kind-icon">on<wbr>Did<wbr>Change<wbr>Selected<wbr>Notebooks</a></li>
</ul>
</section>
<section class="tsd-index-section ">
<h3>Methods5</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-method tsd-parent-kind-interface"><a href="vscode.NotebookController.html#createNotebookCellExecution" class="tsd-kind-icon">create<wbr>Notebook<wbr>Cell<wbr>Execution</a></li>
<li class="tsd-kind-method tsd-parent-kind-interface"><a href="vscode.NotebookController.html#executeHandler" class="tsd-kind-icon">execute<wbr>Handler</a></li>
<li class="tsd-kind-method tsd-parent-kind-interface"><a href="vscode.NotebookController.html#interruptHandler" class="tsd-kind-icon">interrupt<wbr>Handler</a></li>
<li class="tsd-kind-method tsd-parent-kind-interface"><a href="vscode.NotebookController.html#updateNotebookAffinity" class="tsd-kind-icon">update<wbr>Notebook<wbr>Affinity</a></li>
<li class="tsd-kind-method tsd-parent-kind-interface"><a href="vscode.NotebookController.html#dispose" class="tsd-kind-icon">dispose</a></li>
</ul>
</section>
</div>
</section>
</section>
<section class="tsd-panel-group tsd-member-group ">
<h2>Properties8</h2>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
<a name="id" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagReadonly">Readonly</span> id</h3>
<div class="tsd-signature tsd-kind-icon">id<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/youngjuning/vscode-api-cn/blob/4c83209/vscode.d.ts#L12103">vscode.d.ts:12103</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>The identifier of this notebook controller.</p>
</div>
<p><em>Note</em> that controllers are remembered by their identifier and that extensions should use
stable identifiers across sessions.</p>
</div>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
<a name="notebookType" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagReadonly">Readonly</span> notebook<wbr>Type</h3>
<div class="tsd-signature tsd-kind-icon">notebook<wbr>Type<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/youngjuning/vscode-api-cn/blob/4c83209/vscode.d.ts#L12108">vscode.d.ts:12108</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>The notebook type this controller is for.</p>
</div>
</div>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
<a name="supportedLanguages" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagOptional">Optional</span> supported<wbr>Languages</h3>
<div class="tsd-signature tsd-kind-icon">supported<wbr>Languages<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/youngjuning/vscode-api-cn/blob/4c83209/vscode.d.ts#L12125">vscode.d.ts:12125</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>An array of language identifiers that are supported by this
controller. Any language identifier from <a href="../modules/vscode.languages.html#getLanguages"><code>getLanguages</code></a>
is possible. When falsy all languages are supported.</p>
</div>
<p>Samples:</p>
<pre><code class="language-js"><span style="color: #008000">// support JavaScript and TypeScript</span>
<span style="color: #001080">myController</span><span style="color: #000000">.</span><span style="color: #001080">supportedLanguages</span><span style="color: #000000"> = [</span><span style="color: #A31515">&#039;javascript&#039;</span><span style="color: #000000">, </span><span style="color: #A31515">&#039;typescript&#039;</span><span style="color: #000000">]</span>
<span style="color: #008000">// support all languages</span>
<span style="color: #001080">myController</span><span style="color: #000000">.</span><span style="color: #001080">supportedLanguages</span><span style="color: #000000"> = </span><span style="color: #0000FF">undefined</span><span style="color: #000000">; </span><span style="color: #008000">// falsy</span>
<span style="color: #001080">myController</span><span style="color: #000000">.</span><span style="color: #001080">supportedLanguages</span><span style="color: #000000"> = []; </span><span style="color: #008000">// falsy</span>
</code></pre>
</div>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
<a name="label" class="tsd-anchor"></a>
<h3>label</h3>
<div class="tsd-signature tsd-kind-icon">label<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/youngjuning/vscode-api-cn/blob/4c83209/vscode.d.ts#L12130">vscode.d.ts:12130</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>The human-readable label of this notebook controller.</p>
</div>
</div>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
<a name="description" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagOptional">Optional</span> description</h3>
<div class="tsd-signature tsd-kind-icon">description<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/youngjuning/vscode-api-cn/blob/4c83209/vscode.d.ts#L12135">vscode.d.ts:12135</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>The human-readable description which is rendered less prominent.</p>
</div>
</div>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
<a name="detail" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagOptional">Optional</span> detail</h3>
<div class="tsd-signature tsd-kind-icon">detail<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/youngjuning/vscode-api-cn/blob/4c83209/vscode.d.ts#L12140">vscode.d.ts:12140</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>The human-readable detail which is rendered less prominent.</p>
</div>
</div>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
<a name="supportsExecutionOrder" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagOptional">Optional</span> supports<wbr>Execution<wbr>Order</h3>
<div class="tsd-signature tsd-kind-icon">supports<wbr>Execution<wbr>Order<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/youngjuning/vscode-api-cn/blob/4c83209/vscode.d.ts#L12146">vscode.d.ts:12146</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Whether this controller supports execution order so that the
editor can render placeholders for them.</p>
</div>
</div>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
<a name="onDidChangeSelectedNotebooks" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagReadonly">Readonly</span> on<wbr>Did<wbr>Change<wbr>Selected<wbr>Notebooks</h3>
<div class="tsd-signature tsd-kind-icon">on<wbr>Did<wbr>Change<wbr>Selected<wbr>Notebooks<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-symbol">{ </span>notebook<span class="tsd-signature-symbol">: </span><a href="vscode.NotebookDocument.html" class="tsd-signature-type" data-tsd-kind="Interface">NotebookDocument</a><span class="tsd-signature-symbol">; </span>selected<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> }</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/4c83209/vscode.d.ts#L12193">vscode.d.ts:12193</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>An event that fires whenever a controller has been selected or un-selected for a notebook document.</p>
</div>
<p>There can be multiple controllers for a notebook and in that case a controllers needs to be <em>selected</em>. This is a user gesture
and happens either explicitly or implicitly when interacting with a notebook for which a controller was <em>suggested</em>. When possible,
the editor <em>suggests</em> a controller that is most likely to be <em>selected</em>.</p>
<p><em>Note</em> that controller selection is persisted (by the controllers <a href="vscode.NotebookController.html#id">id</a>) and restored as soon as a
controller is re-created or as a notebook is <a href="../modules/vscode.workspace.html#onDidOpenNotebookDocument">opened</a>.</p>
</div>
</section>
</section>
<section class="tsd-panel-group tsd-member-group ">
<h2>Methods5</h2>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
<a name="createNotebookCellExecution" class="tsd-anchor"></a>
<h3>create<wbr>Notebook<wbr>Cell<wbr>Execution</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
<li class="tsd-signature tsd-kind-icon">create<wbr>Notebook<wbr>Cell<wbr>Execution<span class="tsd-signature-symbol">(</span>cell<span class="tsd-signature-symbol">: </span><a href="vscode.NotebookCell.html" class="tsd-signature-type" data-tsd-kind="Interface">NotebookCell</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="vscode.NotebookCellExecution.html" class="tsd-signature-type" data-tsd-kind="Interface">NotebookCellExecution</a></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/4c83209/vscode.d.ts#L12161">vscode.d.ts:12161</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Create a cell execution task.</p>
</div>
<p><em>Note</em> that there can only be one execution per cell at a time and that an error is thrown if
a cell execution is created while another is still active.</p>
<p>This should be used in response to the <a href="vscode.NotebookController.html#executeHandler">execution handler</a>
being called or when cell execution has been started else, e.g when a cell was already
executing or when cell execution was triggered from another source.</p>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>cell: <a href="vscode.NotebookCell.html" class="tsd-signature-type" data-tsd-kind="Interface">NotebookCell</a></h5>
<div class="tsd-comment tsd-typography">
<p>The notebook cell for which to create the execution.</p>
</div>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <a href="vscode.NotebookCellExecution.html" class="tsd-signature-type" data-tsd-kind="Interface">NotebookCellExecution</a></h4>
<p>A notebook cell execution.</p>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
<a name="executeHandler" class="tsd-anchor"></a>
<h3>execute<wbr>Handler</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
<li class="tsd-signature tsd-kind-icon">execute<wbr>Handler<span class="tsd-signature-symbol">(</span>cells<span class="tsd-signature-symbol">: </span><a href="vscode.NotebookCell.html" class="tsd-signature-type" data-tsd-kind="Interface">NotebookCell</a><span class="tsd-signature-symbol">[]</span>, notebook<span class="tsd-signature-symbol">: </span><a href="vscode.NotebookDocument.html" class="tsd-signature-type" data-tsd-kind="Interface">NotebookDocument</a>, controller<span class="tsd-signature-symbol">: </span><a href="vscode.NotebookController.html" class="tsd-signature-type" data-tsd-kind="Interface">NotebookController</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol"> | </span><a href="Thenable.html" class="tsd-signature-type" data-tsd-kind="Interface">Thenable</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</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/4c83209/vscode.d.ts#L12167">vscode.d.ts:12167</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>The execute handler is invoked when the run gestures in the UI are selected, e.g Run Cell, Run All,
Run Selection etc. The execute handler is responsible for creating and managing <a href="vscode.NotebookCellExecution.html">execution</a>-objects.</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>cells: <a href="vscode.NotebookCell.html" class="tsd-signature-type" data-tsd-kind="Interface">NotebookCell</a><span class="tsd-signature-symbol">[]</span></h5>
</li>
<li>
<h5>notebook: <a href="vscode.NotebookDocument.html" class="tsd-signature-type" data-tsd-kind="Interface">NotebookDocument</a></h5>
</li>
<li>
<h5>controller: <a href="vscode.NotebookController.html" class="tsd-signature-type" data-tsd-kind="Interface">NotebookController</a></h5>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span><span class="tsd-signature-symbol"> | </span><a href="Thenable.html" class="tsd-signature-type" data-tsd-kind="Interface">Thenable</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
<a name="interruptHandler" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagOptional">Optional</span> interrupt<wbr>Handler</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
<li class="tsd-signature tsd-kind-icon">interrupt<wbr>Handler<span class="tsd-signature-symbol">(</span>notebook<span class="tsd-signature-symbol">: </span><a href="vscode.NotebookDocument.html" class="tsd-signature-type" data-tsd-kind="Interface">NotebookDocument</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol"> | </span><a href="Thenable.html" class="tsd-signature-type" data-tsd-kind="Interface">Thenable</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</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/4c83209/vscode.d.ts#L12181">vscode.d.ts:12181</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Optional interrupt handler.</p>
</div>
<p>By default cell execution is canceled via <a href="vscode.NotebookCellExecution.html#token">tokens</a>. Cancellation
tokens require that a controller can keep track of its execution so that it can cancel a specific execution at a later
point. Not all scenarios allow for that, eg. REPL-style controllers often work by interrupting whatever is currently
running. For those cases the interrupt handler exists - it can be thought of as the equivalent of <code>SIGINT</code>
or <code>Control+C</code> in terminals.</p>
<p><em>Note</em> that supporting <a href="vscode.NotebookCellExecution.html#token">cancellation tokens</a> is preferred and that interrupt handlers should
only be used when tokens cannot be supported.</p>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>notebook: <a href="vscode.NotebookDocument.html" class="tsd-signature-type" data-tsd-kind="Interface">NotebookDocument</a></h5>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span><span class="tsd-signature-symbol"> | </span><a href="Thenable.html" class="tsd-signature-type" data-tsd-kind="Interface">Thenable</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">&gt;</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
<a name="updateNotebookAffinity" class="tsd-anchor"></a>
<h3>update<wbr>Notebook<wbr>Affinity</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
<li class="tsd-signature tsd-kind-icon">update<wbr>Notebook<wbr>Affinity<span class="tsd-signature-symbol">(</span>notebook<span class="tsd-signature-symbol">: </span><a href="vscode.NotebookDocument.html" class="tsd-signature-type" data-tsd-kind="Interface">NotebookDocument</a>, affinity<span class="tsd-signature-symbol">: </span><a href="../enums/vscode.NotebookControllerAffinity.html" class="tsd-signature-type" data-tsd-kind="Enumeration">NotebookControllerAffinity</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/4c83209/vscode.d.ts#L12202">vscode.d.ts:12202</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>A controller can set affinities for specific notebook documents. This allows a controller
to be presented more prominent for some notebooks.</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>notebook: <a href="vscode.NotebookDocument.html" class="tsd-signature-type" data-tsd-kind="Interface">NotebookDocument</a></h5>
<div class="tsd-comment tsd-typography">
<p>The notebook for which a priority is set.</p>
</div>
</li>
<li>
<h5>affinity: <a href="../enums/vscode.NotebookControllerAffinity.html" class="tsd-signature-type" data-tsd-kind="Enumeration">NotebookControllerAffinity</a></h5>
<div class="tsd-comment tsd-typography">
<p>A controller affinity</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="dispose" class="tsd-anchor"></a>
<h3>dispose</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
<li class="tsd-signature tsd-kind-icon">dispose<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/4c83209/vscode.d.ts#L12207">vscode.d.ts:12207</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Dispose and free associated resources.</p>
</div>
</div>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
</li>
</ul>
</section>
</section>
<div class="tsd-panel tsd-typography">
<ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-7962287588031867" data-ad-slot="2140558196" data-ad-format="auto" data-full-width-responsive="true"></ins><script>(adsbygoogle = window.adsbygoogle || []).push({});</script>
</div>
</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">
<ul class="before-current">
</ul>
<ul class="current">
<li class="current tsd-kind-interface tsd-parent-kind-namespace">
<a href="vscode.NotebookController.html" class="tsd-kind-icon">Notebook<wbr>Controller</a>
<ul>
<li class=" tsd-kind-property tsd-parent-kind-interface">
<a href="vscode.NotebookController.html#id" class="tsd-kind-icon">id</a>
</li>
<li class=" tsd-kind-property tsd-parent-kind-interface">
<a href="vscode.NotebookController.html#notebookType" class="tsd-kind-icon">notebook<wbr>Type</a>
</li>
<li class=" tsd-kind-property tsd-parent-kind-interface">
<a href="vscode.NotebookController.html#supportedLanguages" class="tsd-kind-icon">supported<wbr>Languages</a>
</li>
<li class=" tsd-kind-property tsd-parent-kind-interface">
<a href="vscode.NotebookController.html#label" class="tsd-kind-icon">label</a>
</li>
<li class=" tsd-kind-property tsd-parent-kind-interface">
<a href="vscode.NotebookController.html#description" class="tsd-kind-icon">description</a>
</li>
<li class=" tsd-kind-property tsd-parent-kind-interface">
<a href="vscode.NotebookController.html#detail" class="tsd-kind-icon">detail</a>
</li>
<li class=" tsd-kind-property tsd-parent-kind-interface">
<a href="vscode.NotebookController.html#supportsExecutionOrder" class="tsd-kind-icon">supports<wbr>Execution<wbr>Order</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-interface">
<a href="vscode.NotebookController.html#createNotebookCellExecution" class="tsd-kind-icon">create<wbr>Notebook<wbr>Cell<wbr>Execution</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-interface">
<a href="vscode.NotebookController.html#executeHandler" class="tsd-kind-icon">execute<wbr>Handler</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-interface">
<a href="vscode.NotebookController.html#interruptHandler" class="tsd-kind-icon">interrupt<wbr>Handler</a>
</li>
<li class=" tsd-kind-property tsd-parent-kind-interface">
<a href="vscode.NotebookController.html#onDidChangeSelectedNotebooks" class="tsd-kind-icon">on<wbr>Did<wbr>Change<wbr>Selected<wbr>Notebooks</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-interface">
<a href="vscode.NotebookController.html#updateNotebookAffinity" class="tsd-kind-icon">update<wbr>Notebook<wbr>Affinity</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-interface">
<a href="vscode.NotebookController.html#dispose" class="tsd-kind-icon">dispose</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>