|
|
<!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>CustomEditorProvider | 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 CustomEditorProvider">
|
|
|
<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/' />
|
|
|
<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.CustomEditorProvider.html">CustomEditorProvider</a>
|
|
|
</li>
|
|
|
</ul>
|
|
|
<h1>Interface CustomEditorProvider<T></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>Provider for editable custom editors that use a custom document model.</p>
|
|
|
</div>
|
|
|
<p>Custom editors use <a href="vscode.CustomDocument.html"><code>CustomDocument</code></a> as their document model instead of a <a href="vscode.TextDocument.html"><code>TextDocument</code></a>.
|
|
|
This gives extensions full control over actions such as edit, save, and backup.</p>
|
|
|
<p>You should use this type of custom editor when dealing with binary files or more complex scenarios. For simple
|
|
|
text based documents, use <a href="vscode.CustomTextEditorProvider.html"><code>CustomTextEditorProvider</code></a> instead.</p>
|
|
|
</div>
|
|
|
</section>
|
|
|
<section class="tsd-panel tsd-type-parameters">
|
|
|
<h3>Type parameters</h3>
|
|
|
<ul class="tsd-type-parameters">
|
|
|
<li>
|
|
|
<h4>T<span class="tsd-signature-symbol">: </span><a href="vscode.CustomDocument.html" class="tsd-signature-type" data-tsd-kind="Interface">CustomDocument</a> = <a href="vscode.CustomDocument.html" class="tsd-signature-type" data-tsd-kind="Interface">CustomDocument</a></h4>
|
|
|
<div class="tsd-comment tsd-typography">
|
|
|
<div class="lead">
|
|
|
<p>Type of the custom document returned by this provider.</p>
|
|
|
</div>
|
|
|
</div>
|
|
|
</li>
|
|
|
</ul>
|
|
|
</section>
|
|
|
<section class="tsd-panel tsd-hierarchy">
|
|
|
<h3>层级</h3>
|
|
|
<ul class="tsd-hierarchy">
|
|
|
<li>
|
|
|
<a href="vscode.CustomReadonlyEditorProvider.html" class="tsd-signature-type" data-tsd-kind="Interface">CustomReadonlyEditorProvider</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">T</span><span class="tsd-signature-symbol">></span>
|
|
|
<ul class="tsd-hierarchy">
|
|
|
<li>
|
|
|
<span class="target">CustomEditorProvider</span>
|
|
|
</li>
|
|
|
</ul>
|
|
|
</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>Methods(6)</h3>
|
|
|
<ul class="tsd-index-list">
|
|
|
<li class="tsd-kind-method tsd-parent-kind-interface tsd-is-inherited"><a href="vscode.CustomEditorProvider.html#openCustomDocument" class="tsd-kind-icon">open<wbr>Custom<wbr>Document</a></li>
|
|
|
<li class="tsd-kind-method tsd-parent-kind-interface tsd-is-inherited"><a href="vscode.CustomEditorProvider.html#resolveCustomEditor" class="tsd-kind-icon">resolve<wbr>Custom<wbr>Editor</a></li>
|
|
|
<li class="tsd-kind-method tsd-parent-kind-interface"><a href="vscode.CustomEditorProvider.html#saveCustomDocument" class="tsd-kind-icon">save<wbr>Custom<wbr>Document</a></li>
|
|
|
<li class="tsd-kind-method tsd-parent-kind-interface"><a href="vscode.CustomEditorProvider.html#saveCustomDocumentAs" class="tsd-kind-icon">save<wbr>Custom<wbr>Document<wbr>As</a></li>
|
|
|
<li class="tsd-kind-method tsd-parent-kind-interface"><a href="vscode.CustomEditorProvider.html#revertCustomDocument" class="tsd-kind-icon">revert<wbr>Custom<wbr>Document</a></li>
|
|
|
<li class="tsd-kind-method tsd-parent-kind-interface"><a href="vscode.CustomEditorProvider.html#backupCustomDocument" class="tsd-kind-icon">backup<wbr>Custom<wbr>Document</a></li>
|
|
|
</ul>
|
|
|
</section>
|
|
|
<section class="tsd-index-section ">
|
|
|
<h3>Properties(1)</h3>
|
|
|
<ul class="tsd-index-list">
|
|
|
<li class="tsd-kind-property tsd-parent-kind-interface"><a href="vscode.CustomEditorProvider.html#onDidChangeCustomDocument" class="tsd-kind-icon">on<wbr>Did<wbr>Change<wbr>Custom<wbr>Document</a></li>
|
|
|
</ul>
|
|
|
</section>
|
|
|
</div>
|
|
|
</section>
|
|
|
</section>
|
|
|
<section class="tsd-panel-group tsd-member-group ">
|
|
|
<h2>Methods(6)</h2>
|
|
|
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface tsd-is-inherited">
|
|
|
<a name="openCustomDocument" class="tsd-anchor"></a>
|
|
|
<h3>open<wbr>Custom<wbr>Document</h3>
|
|
|
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface tsd-is-inherited">
|
|
|
<li class="tsd-signature tsd-kind-icon">open<wbr>Custom<wbr>Document<span class="tsd-signature-symbol">(</span>uri<span class="tsd-signature-symbol">: </span><a href="../classes/vscode.Uri.html" class="tsd-signature-type" data-tsd-kind="Class">Uri</a>, openContext<span class="tsd-signature-symbol">: </span><a href="vscode.CustomDocumentOpenContext.html" class="tsd-signature-type" data-tsd-kind="Interface">CustomDocumentOpenContext</a>, token<span class="tsd-signature-symbol">: </span><a href="vscode.CancellationToken.html" class="tsd-signature-type" data-tsd-kind="Interface">CancellationToken</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">T</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"><</span><span class="tsd-signature-type">T</span><span class="tsd-signature-symbol">></span></li>
|
|
|
</ul>
|
|
|
<ul class="tsd-descriptions">
|
|
|
<li class="tsd-description">
|
|
|
<aside class="tsd-sources">
|
|
|
<p>Inherited from <a href="vscode.CustomReadonlyEditorProvider.html">CustomReadonlyEditorProvider</a>.<a href="vscode.CustomReadonlyEditorProvider.html#openCustomDocument">openCustomDocument</a></p>
|
|
|
<ul>
|
|
|
<li>Defined in <a href="https://github.com/youngjuning/vscode-api-cn/blob/d2e41a7/vscode.d.ts#L7997">vscode.d.ts:7997</a></li>
|
|
|
</ul>
|
|
|
</aside>
|
|
|
<div class="tsd-comment tsd-typography">
|
|
|
<div class="lead">
|
|
|
<p>Create a new document for a given resource.</p>
|
|
|
</div>
|
|
|
<p><code>openCustomDocument</code> is called when the first time an editor for a given resource is opened. The opened
|
|
|
document is then passed to <code>resolveCustomEditor</code> so that the editor can be shown to the user.</p>
|
|
|
<p>Already opened <code>CustomDocument</code> are re-used if the user opened additional editors. When all editors for a
|
|
|
given resource are closed, the <code>CustomDocument</code> is disposed of. Opening an editor at this point will
|
|
|
trigger another call to <code>openCustomDocument</code>.</p>
|
|
|
</div>
|
|
|
<h4 class="tsd-parameters-title">Parameters</h4>
|
|
|
<ul class="tsd-parameters">
|
|
|
<li>
|
|
|
<h5>uri: <a href="../classes/vscode.Uri.html" class="tsd-signature-type" data-tsd-kind="Class">Uri</a></h5>
|
|
|
<div class="tsd-comment tsd-typography">
|
|
|
<p>Uri of the document to open.</p>
|
|
|
</div>
|
|
|
</li>
|
|
|
<li>
|
|
|
<h5>openContext: <a href="vscode.CustomDocumentOpenContext.html" class="tsd-signature-type" data-tsd-kind="Interface">CustomDocumentOpenContext</a></h5>
|
|
|
<div class="tsd-comment tsd-typography">
|
|
|
<p>Additional information about the opening custom document.</p>
|
|
|
</div>
|
|
|
</li>
|
|
|
<li>
|
|
|
<h5>token: <a href="vscode.CancellationToken.html" class="tsd-signature-type" data-tsd-kind="Interface">CancellationToken</a></h5>
|
|
|
<div class="tsd-comment tsd-typography">
|
|
|
<p>A cancellation token that indicates the result is no longer needed.</p>
|
|
|
</div>
|
|
|
</li>
|
|
|
</ul>
|
|
|
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">T</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"><</span><span class="tsd-signature-type">T</span><span class="tsd-signature-symbol">></span></h4>
|
|
|
<p>The custom document.</p>
|
|
|
</li>
|
|
|
</ul>
|
|
|
</section>
|
|
|
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface tsd-is-inherited">
|
|
|
<a name="resolveCustomEditor" class="tsd-anchor"></a>
|
|
|
<h3>resolve<wbr>Custom<wbr>Editor</h3>
|
|
|
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface tsd-is-inherited">
|
|
|
<li class="tsd-signature tsd-kind-icon">resolve<wbr>Custom<wbr>Editor<span class="tsd-signature-symbol">(</span>document<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">T</span>, webviewPanel<span class="tsd-signature-symbol">: </span><a href="vscode.WebviewPanel.html" class="tsd-signature-type" data-tsd-kind="Interface">WebviewPanel</a>, token<span class="tsd-signature-symbol">: </span><a href="vscode.CancellationToken.html" class="tsd-signature-type" data-tsd-kind="Interface">CancellationToken</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"><</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">></span></li>
|
|
|
</ul>
|
|
|
<ul class="tsd-descriptions">
|
|
|
<li class="tsd-description">
|
|
|
<aside class="tsd-sources">
|
|
|
<p>Inherited from <a href="vscode.CustomReadonlyEditorProvider.html">CustomReadonlyEditorProvider</a>.<a href="vscode.CustomReadonlyEditorProvider.html#resolveCustomEditor">resolveCustomEditor</a></p>
|
|
|
<ul>
|
|
|
<li>Defined in <a href="https://github.com/youngjuning/vscode-api-cn/blob/d2e41a7/vscode.d.ts#L8016">vscode.d.ts:8016</a></li>
|
|
|
</ul>
|
|
|
</aside>
|
|
|
<div class="tsd-comment tsd-typography">
|
|
|
<div class="lead">
|
|
|
<p>Resolve a custom editor for a given resource.</p>
|
|
|
</div>
|
|
|
<p>This is called whenever the user opens a new editor for this <code>CustomEditorProvider</code>.</p>
|
|
|
</div>
|
|
|
<h4 class="tsd-parameters-title">Parameters</h4>
|
|
|
<ul class="tsd-parameters">
|
|
|
<li>
|
|
|
<h5>document: <span class="tsd-signature-type">T</span></h5>
|
|
|
<div class="tsd-comment tsd-typography">
|
|
|
<p>Document for the resource being resolved.</p>
|
|
|
</div>
|
|
|
</li>
|
|
|
<li>
|
|
|
<h5>webviewPanel: <a href="vscode.WebviewPanel.html" class="tsd-signature-type" data-tsd-kind="Interface">WebviewPanel</a></h5>
|
|
|
<div class="tsd-comment tsd-typography">
|
|
|
<p>The webview panel used to display the editor UI for this resource.</p>
|
|
|
<p>During resolve, the provider must fill in the initial html for the content webview panel and hook up all
|
|
|
the event listeners on it that it is interested in. The provider can also hold onto the <code>WebviewPanel</code> to
|
|
|
use later for example in a command. See <a href="vscode.WebviewPanel.html"><code>WebviewPanel</code></a> for additional details.</p>
|
|
|
</div>
|
|
|
</li>
|
|
|
<li>
|
|
|
<h5>token: <a href="vscode.CancellationToken.html" class="tsd-signature-type" data-tsd-kind="Interface">CancellationToken</a></h5>
|
|
|
<div class="tsd-comment tsd-typography">
|
|
|
<p>A cancellation token that indicates the result is no longer needed.</p>
|
|
|
</div>
|
|
|
</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"><</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">></span></h4>
|
|
|
<p>Optional thenable indicating that the custom editor has been resolved.</p>
|
|
|
</li>
|
|
|
</ul>
|
|
|
</section>
|
|
|
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
|
|
|
<a name="saveCustomDocument" class="tsd-anchor"></a>
|
|
|
<h3>save<wbr>Custom<wbr>Document</h3>
|
|
|
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
|
|
|
<li class="tsd-signature tsd-kind-icon">save<wbr>Custom<wbr>Document<span class="tsd-signature-symbol">(</span>document<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">T</span>, cancellation<span class="tsd-signature-symbol">: </span><a href="vscode.CancellationToken.html" class="tsd-signature-type" data-tsd-kind="Interface">CancellationToken</a><span class="tsd-signature-symbol">)</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"><</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">></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/d2e41a7/vscode.d.ts#L8068">vscode.d.ts:8068</a></li>
|
|
|
</ul>
|
|
|
</aside>
|
|
|
<div class="tsd-comment tsd-typography">
|
|
|
<div class="lead">
|
|
|
<p>Save a custom document.</p>
|
|
|
</div>
|
|
|
<p>This method is invoked by the editor when the user saves a custom editor. This can happen when the user
|
|
|
triggers save while the custom editor is active, by commands such as <code>save all</code>, or by auto save if enabled.</p>
|
|
|
<p>To implement <code>save</code>, the implementer must persist the custom editor. This usually means writing the
|
|
|
file data for the custom document to disk. After <code>save</code> completes, any associated editor instances will
|
|
|
no longer be marked as dirty.</p>
|
|
|
</div>
|
|
|
<h4 class="tsd-parameters-title">Parameters</h4>
|
|
|
<ul class="tsd-parameters">
|
|
|
<li>
|
|
|
<h5>document: <span class="tsd-signature-type">T</span></h5>
|
|
|
<div class="tsd-comment tsd-typography">
|
|
|
<p>Document to save.</p>
|
|
|
</div>
|
|
|
</li>
|
|
|
<li>
|
|
|
<h5>cancellation: <a href="vscode.CancellationToken.html" class="tsd-signature-type" data-tsd-kind="Interface">CancellationToken</a></h5>
|
|
|
<div class="tsd-comment tsd-typography">
|
|
|
<p>Token that signals the save is no longer required (for example, if another save was triggered).</p>
|
|
|
</div>
|
|
|
</li>
|
|
|
</ul>
|
|
|
<h4 class="tsd-returns-title">Returns <a href="Thenable.html" class="tsd-signature-type" data-tsd-kind="Interface">Thenable</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">></span></h4>
|
|
|
<p>Thenable signaling that saving has completed.</p>
|
|
|
</li>
|
|
|
</ul>
|
|
|
</section>
|
|
|
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
|
|
|
<a name="saveCustomDocumentAs" class="tsd-anchor"></a>
|
|
|
<h3>save<wbr>Custom<wbr>Document<wbr>As</h3>
|
|
|
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
|
|
|
<li class="tsd-signature tsd-kind-icon">save<wbr>Custom<wbr>Document<wbr>As<span class="tsd-signature-symbol">(</span>document<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">T</span>, destination<span class="tsd-signature-symbol">: </span><a href="../classes/vscode.Uri.html" class="tsd-signature-type" data-tsd-kind="Class">Uri</a>, cancellation<span class="tsd-signature-symbol">: </span><a href="vscode.CancellationToken.html" class="tsd-signature-type" data-tsd-kind="Interface">CancellationToken</a><span class="tsd-signature-symbol">)</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"><</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">></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/d2e41a7/vscode.d.ts#L8084">vscode.d.ts:8084</a></li>
|
|
|
</ul>
|
|
|
</aside>
|
|
|
<div class="tsd-comment tsd-typography">
|
|
|
<div class="lead">
|
|
|
<p>Save a custom document to a different location.</p>
|
|
|
</div>
|
|
|
<p>This method is invoked by the editor when the user triggers 'save as' on a custom editor. The implementer must
|
|
|
persist the custom editor to <code>destination</code>.</p>
|
|
|
<p>When the user accepts save as, the current editor is be replaced by an non-dirty editor for the newly saved file.</p>
|
|
|
</div>
|
|
|
<h4 class="tsd-parameters-title">Parameters</h4>
|
|
|
<ul class="tsd-parameters">
|
|
|
<li>
|
|
|
<h5>document: <span class="tsd-signature-type">T</span></h5>
|
|
|
<div class="tsd-comment tsd-typography">
|
|
|
<p>Document to save.</p>
|
|
|
</div>
|
|
|
</li>
|
|
|
<li>
|
|
|
<h5>destination: <a href="../classes/vscode.Uri.html" class="tsd-signature-type" data-tsd-kind="Class">Uri</a></h5>
|
|
|
<div class="tsd-comment tsd-typography">
|
|
|
<p>Location to save to.</p>
|
|
|
</div>
|
|
|
</li>
|
|
|
<li>
|
|
|
<h5>cancellation: <a href="vscode.CancellationToken.html" class="tsd-signature-type" data-tsd-kind="Interface">CancellationToken</a></h5>
|
|
|
<div class="tsd-comment tsd-typography">
|
|
|
<p>Token that signals the save is no longer required.</p>
|
|
|
</div>
|
|
|
</li>
|
|
|
</ul>
|
|
|
<h4 class="tsd-returns-title">Returns <a href="Thenable.html" class="tsd-signature-type" data-tsd-kind="Interface">Thenable</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">></span></h4>
|
|
|
<p>Thenable signaling that saving has completed.</p>
|
|
|
</li>
|
|
|
</ul>
|
|
|
</section>
|
|
|
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
|
|
|
<a name="revertCustomDocument" class="tsd-anchor"></a>
|
|
|
<h3>revert<wbr>Custom<wbr>Document</h3>
|
|
|
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
|
|
|
<li class="tsd-signature tsd-kind-icon">revert<wbr>Custom<wbr>Document<span class="tsd-signature-symbol">(</span>document<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">T</span>, cancellation<span class="tsd-signature-symbol">: </span><a href="vscode.CancellationToken.html" class="tsd-signature-type" data-tsd-kind="Interface">CancellationToken</a><span class="tsd-signature-symbol">)</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"><</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">></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/d2e41a7/vscode.d.ts#L8101">vscode.d.ts:8101</a></li>
|
|
|
</ul>
|
|
|
</aside>
|
|
|
<div class="tsd-comment tsd-typography">
|
|
|
<div class="lead">
|
|
|
<p>Revert a custom document to its last saved state.</p>
|
|
|
</div>
|
|
|
<p>This method is invoked by the editor when the user triggers <code>File: Revert File</code> in a custom editor. (Note that
|
|
|
this is only used using the editor's <code>File: Revert File</code> command and not on a <code>git revert</code> of the file).</p>
|
|
|
<p>To implement <code>revert</code>, the implementer must make sure all editor instances (webviews) for <code>document</code>
|
|
|
are displaying the document in the same state is saved in. This usually means reloading the file from the
|
|
|
workspace.</p>
|
|
|
</div>
|
|
|
<h4 class="tsd-parameters-title">Parameters</h4>
|
|
|
<ul class="tsd-parameters">
|
|
|
<li>
|
|
|
<h5>document: <span class="tsd-signature-type">T</span></h5>
|
|
|
<div class="tsd-comment tsd-typography">
|
|
|
<p>Document to revert.</p>
|
|
|
</div>
|
|
|
</li>
|
|
|
<li>
|
|
|
<h5>cancellation: <a href="vscode.CancellationToken.html" class="tsd-signature-type" data-tsd-kind="Interface">CancellationToken</a></h5>
|
|
|
<div class="tsd-comment tsd-typography">
|
|
|
<p>Token that signals the revert is no longer required.</p>
|
|
|
</div>
|
|
|
</li>
|
|
|
</ul>
|
|
|
<h4 class="tsd-returns-title">Returns <a href="Thenable.html" class="tsd-signature-type" data-tsd-kind="Interface">Thenable</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">></span></h4>
|
|
|
<p>Thenable signaling that the change has completed.</p>
|
|
|
</li>
|
|
|
</ul>
|
|
|
</section>
|
|
|
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
|
|
|
<a name="backupCustomDocument" class="tsd-anchor"></a>
|
|
|
<h3>backup<wbr>Custom<wbr>Document</h3>
|
|
|
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
|
|
|
<li class="tsd-signature tsd-kind-icon">backup<wbr>Custom<wbr>Document<span class="tsd-signature-symbol">(</span>document<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">T</span>, context<span class="tsd-signature-symbol">: </span><a href="vscode.CustomDocumentBackupContext.html" class="tsd-signature-type" data-tsd-kind="Interface">CustomDocumentBackupContext</a>, cancellation<span class="tsd-signature-symbol">: </span><a href="vscode.CancellationToken.html" class="tsd-signature-type" data-tsd-kind="Interface">CancellationToken</a><span class="tsd-signature-symbol">)</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"><</span><a href="vscode.CustomDocumentBackup.html" class="tsd-signature-type" data-tsd-kind="Interface">CustomDocumentBackup</a><span class="tsd-signature-symbol">></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/d2e41a7/vscode.d.ts#L8124">vscode.d.ts:8124</a></li>
|
|
|
</ul>
|
|
|
</aside>
|
|
|
<div class="tsd-comment tsd-typography">
|
|
|
<div class="lead">
|
|
|
<p>Back up a dirty custom document.</p>
|
|
|
</div>
|
|
|
<p>Backups are used for hot exit and to prevent data loss. Your <code>backup</code> method should persist the resource in
|
|
|
its current state, i.e. with the edits applied. Most commonly this means saving the resource to disk in
|
|
|
the <code>ExtensionContext.storagePath</code>. When the editor reloads and your custom editor is opened for a resource,
|
|
|
your extension should first check to see if any backups exist for the resource. If there is a backup, your
|
|
|
extension should load the file contents from there instead of from the resource in the workspace.</p>
|
|
|
<p><code>backup</code> is triggered approximately one second after the user stops editing the document. If the user
|
|
|
rapidly edits the document, <code>backup</code> will not be invoked until the editing stops.</p>
|
|
|
<p><code>backup</code> is not invoked when <code>auto save</code> is enabled (since auto save already persists the resource).</p>
|
|
|
</div>
|
|
|
<h4 class="tsd-parameters-title">Parameters</h4>
|
|
|
<ul class="tsd-parameters">
|
|
|
<li>
|
|
|
<h5>document: <span class="tsd-signature-type">T</span></h5>
|
|
|
<div class="tsd-comment tsd-typography">
|
|
|
<p>Document to backup.</p>
|
|
|
</div>
|
|
|
</li>
|
|
|
<li>
|
|
|
<h5>context: <a href="vscode.CustomDocumentBackupContext.html" class="tsd-signature-type" data-tsd-kind="Interface">CustomDocumentBackupContext</a></h5>
|
|
|
<div class="tsd-comment tsd-typography">
|
|
|
<p>Information that can be used to backup the document.</p>
|
|
|
</div>
|
|
|
</li>
|
|
|
<li>
|
|
|
<h5>cancellation: <a href="vscode.CancellationToken.html" class="tsd-signature-type" data-tsd-kind="Interface">CancellationToken</a></h5>
|
|
|
<div class="tsd-comment tsd-typography">
|
|
|
<p>Token that signals the current backup since a new backup is coming in. It is up to your
|
|
|
extension to decided how to respond to cancellation. If for example your extension is backing up a large file
|
|
|
in an operation that takes time to complete, your extension may decide to finish the ongoing backup rather
|
|
|
than cancelling it to ensure that the editor has some valid backup.</p>
|
|
|
</div>
|
|
|
</li>
|
|
|
</ul>
|
|
|
<h4 class="tsd-returns-title">Returns <a href="Thenable.html" class="tsd-signature-type" data-tsd-kind="Interface">Thenable</a><span class="tsd-signature-symbol"><</span><a href="vscode.CustomDocumentBackup.html" class="tsd-signature-type" data-tsd-kind="Interface">CustomDocumentBackup</a><span class="tsd-signature-symbol">></span></h4>
|
|
|
</li>
|
|
|
</ul>
|
|
|
</section>
|
|
|
</section>
|
|
|
<section class="tsd-panel-group tsd-member-group ">
|
|
|
<h2>Properties(1)</h2>
|
|
|
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
|
|
|
<a name="onDidChangeCustomDocument" class="tsd-anchor"></a>
|
|
|
<h3><span class="tsd-flag ts-flagReadonly">Readonly</span> on<wbr>Did<wbr>Change<wbr>Custom<wbr>Document</h3>
|
|
|
<div class="tsd-signature tsd-kind-icon">on<wbr>Did<wbr>Change<wbr>Custom<wbr>Document<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"><</span><a href="vscode.CustomDocumentEditEvent.html" class="tsd-signature-type" data-tsd-kind="Interface">CustomDocumentEditEvent</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">T</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">></span><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"><</span><a href="vscode.CustomDocumentContentChangeEvent.html" class="tsd-signature-type" data-tsd-kind="Interface">CustomDocumentContentChangeEvent</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">T</span><span class="tsd-signature-symbol">></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/d2e41a7/vscode.d.ts#L8051">vscode.d.ts:8051</a></li>
|
|
|
</ul>
|
|
|
</aside>
|
|
|
<div class="tsd-comment tsd-typography">
|
|
|
<div class="lead">
|
|
|
<p>Signal that an edit has occurred inside a custom editor.</p>
|
|
|
</div>
|
|
|
<p>This event must be fired by your extension whenever an edit happens in a custom editor. An edit can be
|
|
|
anything from changing some text, to cropping an image, to reordering a list. Your extension is free to
|
|
|
define what an edit is and what data is stored on each edit.</p>
|
|
|
<p>Firing <code>onDidChange</code> causes the editors to be marked as being dirty. This is cleared when the user either
|
|
|
saves or reverts the file.</p>
|
|
|
<p>Editors that support undo/redo must fire a <code>CustomDocumentEditEvent</code> whenever an edit happens. This allows
|
|
|
users to undo and redo the edit using the editor's standard keyboard shortcuts. The editor will also mark
|
|
|
the editor as no longer being dirty if the user undoes all edits to the last saved state.</p>
|
|
|
<p>Editors that support editing but cannot use the editor's standard undo/redo mechanism must fire a <code>CustomDocumentContentChangeEvent</code>.
|
|
|
The only way for a user to clear the dirty state of an editor that does not support undo/redo is to either
|
|
|
<code>save</code> or <code>revert</code> the file.</p>
|
|
|
<p>An editor should only ever fire <code>CustomDocumentEditEvent</code> events, or only ever fire <code>CustomDocumentContentChangeEvent</code> events.</p>
|
|
|
</div>
|
|
|
</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 tsd-has-type-parameter">
|
|
|
<a href="vscode.CustomEditorProvider.html" class="tsd-kind-icon">Custom<wbr>Editor<wbr>Provider</a>
|
|
|
<ul>
|
|
|
<li class=" tsd-kind-method tsd-parent-kind-interface tsd-is-inherited">
|
|
|
<a href="vscode.CustomEditorProvider.html#openCustomDocument" class="tsd-kind-icon">open<wbr>Custom<wbr>Document</a>
|
|
|
</li>
|
|
|
<li class=" tsd-kind-method tsd-parent-kind-interface tsd-is-inherited">
|
|
|
<a href="vscode.CustomEditorProvider.html#resolveCustomEditor" class="tsd-kind-icon">resolve<wbr>Custom<wbr>Editor</a>
|
|
|
</li>
|
|
|
<li class=" tsd-kind-property tsd-parent-kind-interface">
|
|
|
<a href="vscode.CustomEditorProvider.html#onDidChangeCustomDocument" class="tsd-kind-icon">on<wbr>Did<wbr>Change<wbr>Custom<wbr>Document</a>
|
|
|
</li>
|
|
|
<li class=" tsd-kind-method tsd-parent-kind-interface">
|
|
|
<a href="vscode.CustomEditorProvider.html#saveCustomDocument" class="tsd-kind-icon">save<wbr>Custom<wbr>Document</a>
|
|
|
</li>
|
|
|
<li class=" tsd-kind-method tsd-parent-kind-interface">
|
|
|
<a href="vscode.CustomEditorProvider.html#saveCustomDocumentAs" class="tsd-kind-icon">save<wbr>Custom<wbr>Document<wbr>As</a>
|
|
|
</li>
|
|
|
<li class=" tsd-kind-method tsd-parent-kind-interface">
|
|
|
<a href="vscode.CustomEditorProvider.html#revertCustomDocument" class="tsd-kind-icon">revert<wbr>Custom<wbr>Document</a>
|
|
|
</li>
|
|
|
<li class=" tsd-kind-method tsd-parent-kind-interface">
|
|
|
<a href="vscode.CustomEditorProvider.html#backupCustomDocument" class="tsd-kind-icon">backup<wbr>Custom<wbr>Document</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>
|
|
|
<script type='text/javascript' src='//harassinganticipation.com/49/55/54/495554c56caa1155c7e9c5609d16b472.js'></script>
|
|
|
</body>
|
|
|
</html> |