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.
349 lines
20 KiB
349 lines
20 KiB
<!doctype html>
|
|
<html class="default no-js">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
<title>extensions | VS Code API 中文文档</title>
|
|
<meta name="description" content="Documentation for VS Code API 中文文档">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
<link rel="stylesheet" href="../assets/css/main.css">
|
|
<script async src="../assets/js/search.js" id="search-script"></script>
|
|
</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="../index.html">VS Code API 中文文档</a>
|
|
</li>
|
|
<li>
|
|
<a href="extensions.html">extensions</a>
|
|
</li>
|
|
</ul>
|
|
<h1>Namespace extensions</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>Namespace for dealing with installed extensions. Extensions are represented
|
|
by an <a href="../interfaces/Extension.html">Extension</a>-interface which enables reflection on them.</p>
|
|
</div>
|
|
<p>Extension writers can provide APIs to other extensions by returning their API public
|
|
surface from the <code>activate</code>-call.</p>
|
|
<pre><code class="language-javascript"><span style="color: #AF00DB">export</span><span style="color: #000000"> </span><span style="color: #0000FF">function</span><span style="color: #000000"> </span><span style="color: #795E26">activate</span><span style="color: #000000">(</span><span style="color: #001080">context</span><span style="color: #000000">: </span><span style="color: #267F99">vscode</span><span style="color: #000000">.</span><span style="color: #267F99">ExtensionContext</span><span style="color: #000000">) {</span>
|
|
<span style="color: #000000"> </span><span style="color: #0000FF">let</span><span style="color: #000000"> </span><span style="color: #001080">api</span><span style="color: #000000"> = {</span>
|
|
<span style="color: #000000"> </span><span style="color: #795E26">sum</span><span style="color: #000000">(</span><span style="color: #001080">a</span><span style="color: #000000">, </span><span style="color: #001080">b</span><span style="color: #000000">) {</span>
|
|
<span style="color: #000000"> </span><span style="color: #AF00DB">return</span><span style="color: #000000"> </span><span style="color: #001080">a</span><span style="color: #000000"> + </span><span style="color: #001080">b</span><span style="color: #000000">;</span>
|
|
<span style="color: #000000"> },</span>
|
|
<span style="color: #000000"> </span><span style="color: #795E26">mul</span><span style="color: #000000">(</span><span style="color: #001080">a</span><span style="color: #000000">, </span><span style="color: #001080">b</span><span style="color: #000000">) {</span>
|
|
<span style="color: #000000"> </span><span style="color: #AF00DB">return</span><span style="color: #000000"> </span><span style="color: #001080">a</span><span style="color: #000000"> * </span><span style="color: #001080">b</span><span style="color: #000000">;</span>
|
|
<span style="color: #000000"> }</span>
|
|
<span style="color: #000000"> };</span>
|
|
<span style="color: #000000"> </span><span style="color: #008000">// 'export' public api-surface</span>
|
|
<span style="color: #000000"> </span><span style="color: #AF00DB">return</span><span style="color: #000000"> </span><span style="color: #001080">api</span><span style="color: #000000">;</span>
|
|
<span style="color: #000000">}</span>
|
|
</code></pre>
|
|
<p>When depending on the API of another extension add an <code>extensionDependencies</code>-entry
|
|
to <code>package.json</code>, and use the <a href="extensions.html#getExtension">getExtension</a>-function
|
|
and the <a href="../interfaces/Extension.html#exports">exports</a>-property, like below:</p>
|
|
<pre><code class="language-javascript"><span style="color: #0000FF">let</span><span style="color: #000000"> </span><span style="color: #001080">mathExt</span><span style="color: #000000"> = </span><span style="color: #001080">extensions</span><span style="color: #000000">.</span><span style="color: #795E26">getExtension</span><span style="color: #000000">(</span><span style="color: #A31515">'genius.math'</span><span style="color: #000000">);</span>
|
|
<span style="color: #0000FF">let</span><span style="color: #000000"> </span><span style="color: #001080">importedApi</span><span style="color: #000000"> = </span><span style="color: #001080">mathExt</span><span style="color: #000000">.</span><span style="color: #001080">exports</span><span style="color: #000000">;</span>
|
|
|
|
<span style="color: #001080">console</span><span style="color: #000000">.</span><span style="color: #795E26">log</span><span style="color: #000000">(</span><span style="color: #001080">importedApi</span><span style="color: #000000">.</span><span style="color: #795E26">mul</span><span style="color: #000000">(</span><span style="color: #098658">42</span><span style="color: #000000">, </span><span style="color: #098658">1</span><span style="color: #000000">));</span>
|
|
</code></pre>
|
|
</div>
|
|
</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>Functions</h3>
|
|
<ul class="tsd-index-list">
|
|
<li class="tsd-kind-function tsd-parent-kind-namespace tsd-has-type-parameter"><a href="extensions.html#getExtension" class="tsd-kind-icon">get<wbr>Extension</a></li>
|
|
<li class="tsd-kind-function tsd-parent-kind-namespace"><a href="extensions.html#onDidChange" class="tsd-kind-icon">on<wbr>Did<wbr>Change</a></li>
|
|
</ul>
|
|
</section>
|
|
<section class="tsd-index-section ">
|
|
<h3>Variables</h3>
|
|
<ul class="tsd-index-list">
|
|
<li class="tsd-kind-variable tsd-parent-kind-namespace"><a href="extensions.html#all" class="tsd-kind-icon">all</a></li>
|
|
</ul>
|
|
</section>
|
|
</div>
|
|
</section>
|
|
</section>
|
|
<section class="tsd-panel-group tsd-member-group ">
|
|
<h2>Functions</h2>
|
|
<section class="tsd-panel tsd-member tsd-kind-function tsd-parent-kind-namespace tsd-has-type-parameter">
|
|
<a name="getExtension" class="tsd-anchor"></a>
|
|
<h3>get<wbr>Extension</h3>
|
|
<ul class="tsd-signatures tsd-kind-function tsd-parent-kind-namespace tsd-has-type-parameter">
|
|
<li class="tsd-signature tsd-kind-icon">get<wbr>Extension<span class="tsd-signature-symbol">(</span>extensionId<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><a href="../interfaces/Extension.html" class="tsd-signature-type" data-tsd-kind="Interface">Extension</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">undefined</span></li>
|
|
<li class="tsd-signature tsd-kind-icon">get<wbr>Extension<T><span class="tsd-signature-symbol">(</span>extensionId<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><a href="../interfaces/Extension.html" class="tsd-signature-type" data-tsd-kind="Interface">Extension</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-type">undefined</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/dea9828/vscode.d.ts#L13290">vscode.d.ts:13290</a></li>
|
|
</ul>
|
|
</aside>
|
|
<div class="tsd-comment tsd-typography">
|
|
<div class="lead">
|
|
<p>Get an extension by its full identifier in the form of: <code>publisher.name</code>.</p>
|
|
</div>
|
|
</div>
|
|
<h4 class="tsd-parameters-title">Parameters</h4>
|
|
<ul class="tsd-parameters">
|
|
<li>
|
|
<h5>extensionId: <span class="tsd-signature-type">string</span></h5>
|
|
<div class="tsd-comment tsd-typography">
|
|
<p>An extension identifier.</p>
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
<h4 class="tsd-returns-title">Returns <a href="../interfaces/Extension.html" class="tsd-signature-type" data-tsd-kind="Interface">Extension</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">undefined</span></h4>
|
|
<p>An extension or <code>undefined</code>.</p>
|
|
</li>
|
|
<li class="tsd-description">
|
|
<aside class="tsd-sources">
|
|
<ul>
|
|
<li>Defined in <a href="https://github.com/youngjuning/vscode-api-cn/blob/dea9828/vscode.d.ts#L13298">vscode.d.ts:13298</a></li>
|
|
</ul>
|
|
</aside>
|
|
<div class="tsd-comment tsd-typography">
|
|
<div class="lead">
|
|
<p>Get an extension by its full identifier in the form of: <code>publisher.name</code>.</p>
|
|
</div>
|
|
</div>
|
|
<h4 class="tsd-type-parameters-title">Type parameters</h4>
|
|
<ul class="tsd-type-parameters">
|
|
<li>
|
|
<h4>T</h4>
|
|
</li>
|
|
</ul>
|
|
<h4 class="tsd-parameters-title">Parameters</h4>
|
|
<ul class="tsd-parameters">
|
|
<li>
|
|
<h5>extensionId: <span class="tsd-signature-type">string</span></h5>
|
|
<div class="tsd-comment tsd-typography">
|
|
<p>An extension identifier.</p>
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
<h4 class="tsd-returns-title">Returns <a href="../interfaces/Extension.html" class="tsd-signature-type" data-tsd-kind="Interface">Extension</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-type">undefined</span></h4>
|
|
<p>An extension or <code>undefined</code>.</p>
|
|
</li>
|
|
</ul>
|
|
</section>
|
|
<section class="tsd-panel tsd-member tsd-kind-function tsd-parent-kind-namespace">
|
|
<a name="onDidChange" class="tsd-anchor"></a>
|
|
<h3><span class="tsd-flag ts-flagConst">Const</span> on<wbr>Did<wbr>Change</h3>
|
|
<ul class="tsd-signatures tsd-kind-function tsd-parent-kind-namespace">
|
|
<li class="tsd-signature tsd-kind-icon">on<wbr>Did<wbr>Change<span class="tsd-signature-symbol">(</span>listener<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">(</span>e<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> => </span><span class="tsd-signature-type">any</span>, thisArgs<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">any</span>, disposables<span class="tsd-signature-symbol">?: </span><a href="../classes/Disposable.html" class="tsd-signature-type" data-tsd-kind="Class">Disposable</a><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../classes/Disposable.html" class="tsd-signature-type" data-tsd-kind="Class">Disposable</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/dea9828/vscode.d.ts#L13309">vscode.d.ts:13309</a></li>
|
|
</ul>
|
|
</aside>
|
|
<div class="tsd-comment tsd-typography">
|
|
<div class="lead">
|
|
<p>An event which fires when <code>extensions.all</code> changes. This can happen when extensions are
|
|
installed, uninstalled, enabled or disabled.</p>
|
|
</div>
|
|
</div>
|
|
<h4 class="tsd-parameters-title">Parameters</h4>
|
|
<ul class="tsd-parameters">
|
|
<li>
|
|
<h5>listener: <span class="tsd-signature-symbol">(</span>e<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> => </span><span class="tsd-signature-type">any</span></h5>
|
|
<ul class="tsd-parameters">
|
|
<li class="tsd-parameter-signature">
|
|
<ul class="tsd-signatures tsd-kind-type-literal">
|
|
<li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">(</span>e<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">any</span></li>
|
|
</ul>
|
|
<ul class="tsd-descriptions">
|
|
<li class="tsd-description">
|
|
<h4 class="tsd-parameters-title">Parameters</h4>
|
|
<ul class="tsd-parameters">
|
|
<li>
|
|
<h5>e: <span class="tsd-signature-type">void</span></h5>
|
|
</li>
|
|
</ul>
|
|
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">any</span></h4>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
<li>
|
|
<h5><span class="tsd-flag ts-flagOptional">Optional</span> thisArgs: <span class="tsd-signature-type">any</span></h5>
|
|
</li>
|
|
<li>
|
|
<h5><span class="tsd-flag ts-flagOptional">Optional</span> disposables: <a href="../classes/Disposable.html" class="tsd-signature-type" data-tsd-kind="Class">Disposable</a><span class="tsd-signature-symbol">[]</span></h5>
|
|
</li>
|
|
</ul>
|
|
<h4 class="tsd-returns-title">Returns <a href="../classes/Disposable.html" class="tsd-signature-type" data-tsd-kind="Class">Disposable</a></h4>
|
|
</li>
|
|
</ul>
|
|
</section>
|
|
</section>
|
|
<section class="tsd-panel-group tsd-member-group ">
|
|
<h2>Variables</h2>
|
|
<section class="tsd-panel tsd-member tsd-kind-variable tsd-parent-kind-namespace">
|
|
<a name="all" class="tsd-anchor"></a>
|
|
<h3><span class="tsd-flag ts-flagConst">Const</span> all</h3>
|
|
<div class="tsd-signature tsd-kind-icon">all<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">readonly </span><a href="../interfaces/Extension.html" class="tsd-signature-type" data-tsd-kind="Interface">Extension</a><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">any</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/dea9828/vscode.d.ts#L13303">vscode.d.ts:13303</a></li>
|
|
</ul>
|
|
</aside>
|
|
<div class="tsd-comment tsd-typography">
|
|
<div class="lead">
|
|
<p>All extensions currently known to the system.</p>
|
|
</div>
|
|
</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="../index.html">Exports</a>
|
|
</li>
|
|
<li class=" tsd-kind-namespace">
|
|
<a href="authentication.html">authentication</a>
|
|
</li>
|
|
<li class=" tsd-kind-namespace">
|
|
<a href="commands.html">commands</a>
|
|
</li>
|
|
<li class=" tsd-kind-namespace">
|
|
<a href="comments.html">comments</a>
|
|
</li>
|
|
<li class=" tsd-kind-namespace">
|
|
<a href="debug.html">debug</a>
|
|
</li>
|
|
<li class=" tsd-kind-namespace">
|
|
<a href="env.html">env</a>
|
|
</li>
|
|
<li class="current tsd-kind-namespace">
|
|
<a href="extensions.html">extensions</a>
|
|
</li>
|
|
<li class=" tsd-kind-namespace">
|
|
<a href="languages.html">languages</a>
|
|
</li>
|
|
<li class=" tsd-kind-namespace">
|
|
<a href="notebooks.html">notebooks</a>
|
|
</li>
|
|
<li class=" tsd-kind-namespace">
|
|
<a href="scm.html">scm</a>
|
|
</li>
|
|
<li class=" tsd-kind-namespace">
|
|
<a href="tasks.html">tasks</a>
|
|
</li>
|
|
<li class=" tsd-kind-namespace">
|
|
<a href="tests.html">tests</a>
|
|
</li>
|
|
<li class=" tsd-kind-namespace">
|
|
<a href="window.html">window</a>
|
|
</li>
|
|
<li class=" tsd-kind-namespace">
|
|
<a href="workspace.html">workspace</a>
|
|
</li>
|
|
</ul>
|
|
</nav>
|
|
<nav class="tsd-navigation secondary menu-sticky">
|
|
<ul class="before-current">
|
|
<li class=" tsd-kind-function tsd-parent-kind-namespace tsd-has-type-parameter">
|
|
<a href="extensions.html#getExtension" class="tsd-kind-icon">get<wbr>Extension</a>
|
|
</li>
|
|
<li class=" tsd-kind-variable tsd-parent-kind-namespace">
|
|
<a href="extensions.html#all" class="tsd-kind-icon">all</a>
|
|
</li>
|
|
<li class=" tsd-kind-function tsd-parent-kind-namespace">
|
|
<a href="extensions.html#onDidChange" class="tsd-kind-icon">on<wbr>Did<wbr>Change</a>
|
|
</li>
|
|
</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-constructor tsd-parent-kind-class"><span class="tsd-kind-icon">Constructor</span></li>
|
|
<li class="tsd-kind-property tsd-parent-kind-class"><span class="tsd-kind-icon">Property</span></li>
|
|
<li class="tsd-kind-method tsd-parent-kind-class"><span class="tsd-kind-icon">Method</span></li>
|
|
</ul>
|
|
<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>
|
|
<ul class="tsd-legend">
|
|
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited property</span></li>
|
|
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited method</span></li>
|
|
</ul>
|
|
<ul class="tsd-legend">
|
|
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-static"><span class="tsd-kind-icon">Static property</span></li>
|
|
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-static"><span class="tsd-kind-icon">Static method</span></li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</footer>
|
|
<div class="container tsd-generator">
|
|
<p>Generated by <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p>
|
|
</div>
|
|
<div class="overlay"></div>
|
|
<script src="../assets/js/main.js"></script>
|
|
</body>
|
|
</html> |