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/TextDocument.html

683 lines
35 KiB

<!doctype html>
<html class="default no-js">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>TextDocument | 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="../modules.html">VS Code API 中文文档</a>
</li>
<li>
<a href="TextDocument.html">TextDocument</a>
</li>
</ul>
<h1>Interface TextDocument</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>Represents a text document, such as a source file. Text documents have
<a href="TextLine.html">lines</a> and knowledge about an underlying resource like a file.</p>
</div>
</div>
</section>
<section class="tsd-panel tsd-hierarchy">
<h3>Hierarchy</h3>
<ul class="tsd-hierarchy">
<li>
<span class="target">TextDocument</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>Properties</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-property tsd-parent-kind-interface"><a href="TextDocument.html#uri" class="tsd-kind-icon">uri</a></li>
<li class="tsd-kind-property tsd-parent-kind-interface"><a href="TextDocument.html#fileName" class="tsd-kind-icon">file<wbr>Name</a></li>
<li class="tsd-kind-property tsd-parent-kind-interface"><a href="TextDocument.html#isUntitled" class="tsd-kind-icon">is<wbr>Untitled</a></li>
<li class="tsd-kind-property tsd-parent-kind-interface"><a href="TextDocument.html#languageId" class="tsd-kind-icon">language<wbr>Id</a></li>
<li class="tsd-kind-property tsd-parent-kind-interface"><a href="TextDocument.html#version" class="tsd-kind-icon">version</a></li>
<li class="tsd-kind-property tsd-parent-kind-interface"><a href="TextDocument.html#isDirty" class="tsd-kind-icon">is<wbr>Dirty</a></li>
<li class="tsd-kind-property tsd-parent-kind-interface"><a href="TextDocument.html#isClosed" class="tsd-kind-icon">is<wbr>Closed</a></li>
<li class="tsd-kind-property tsd-parent-kind-interface"><a href="TextDocument.html#eol" class="tsd-kind-icon">eol</a></li>
<li class="tsd-kind-property tsd-parent-kind-interface"><a href="TextDocument.html#lineCount" class="tsd-kind-icon">line<wbr>Count</a></li>
</ul>
</section>
<section class="tsd-index-section ">
<h3>Methods</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-method tsd-parent-kind-interface"><a href="TextDocument.html#save" class="tsd-kind-icon">save</a></li>
<li class="tsd-kind-method tsd-parent-kind-interface"><a href="TextDocument.html#lineAt" class="tsd-kind-icon">line<wbr>At</a></li>
<li class="tsd-kind-method tsd-parent-kind-interface"><a href="TextDocument.html#offsetAt" class="tsd-kind-icon">offset<wbr>At</a></li>
<li class="tsd-kind-method tsd-parent-kind-interface"><a href="TextDocument.html#positionAt" class="tsd-kind-icon">position<wbr>At</a></li>
<li class="tsd-kind-method tsd-parent-kind-interface"><a href="TextDocument.html#getText" class="tsd-kind-icon">get<wbr>Text</a></li>
<li class="tsd-kind-method tsd-parent-kind-interface"><a href="TextDocument.html#getWordRangeAtPosition" class="tsd-kind-icon">get<wbr>Word<wbr>Range<wbr>AtPosition</a></li>
<li class="tsd-kind-method tsd-parent-kind-interface"><a href="TextDocument.html#validateRange" class="tsd-kind-icon">validate<wbr>Range</a></li>
<li class="tsd-kind-method tsd-parent-kind-interface"><a href="TextDocument.html#validatePosition" class="tsd-kind-icon">validate<wbr>Position</a></li>
</ul>
</section>
</div>
</section>
</section>
<section class="tsd-panel-group tsd-member-group ">
<h2>Properties</h2>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
<a name="uri" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagReadonly">Readonly</span> uri</h3>
<div class="tsd-signature tsd-kind-icon">uri<span class="tsd-signature-symbol">:</span> <a href="../classes/Uri.html" class="tsd-signature-type" data-tsd-kind="Class">Uri</a></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/youngjuning/vscode-api-cn/blob/442effd/vscode.d.ts#L97">vscode.d.ts:97</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>The associated uri for this document.</p>
</div>
<p><em>Note</em> that most documents use the <code>file</code>-scheme, which means they are files on disk. However, <strong>not</strong> all documents are
saved on disk and therefore the <code>scheme</code> must be checked before trying to access the underlying file or siblings on disk.</p>
<dl class="tsd-comment-tags">
<dt>see</dt>
<dd><p><a href="FileSystemProvider.html">FileSystemProvider</a></p>
</dd>
<dt>see</dt>
<dd><p><a href="TextDocumentContentProvider.html">TextDocumentContentProvider</a></p>
</dd>
</dl>
</div>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
<a name="fileName" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagReadonly">Readonly</span> file<wbr>Name</h3>
<div class="tsd-signature tsd-kind-icon">file<wbr>Name<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/442effd/vscode.d.ts#L103">vscode.d.ts:103</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>The file system path of the associated resource. Shorthand
notation for <a href="TextDocument.html#uri">TextDocument.uri.fsPath</a>. Independent of the uri scheme.</p>
</div>
</div>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
<a name="isUntitled" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagReadonly">Readonly</span> is<wbr>Untitled</h3>
<div class="tsd-signature tsd-kind-icon">is<wbr>Untitled<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/442effd/vscode.d.ts#L110">vscode.d.ts:110</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Is this document representing an untitled file which has never been saved yet. <em>Note</em> that
this does not mean the document will be saved to disk, use <a href="../classes/Uri.html#scheme"><code>Uri.scheme</code></a>
to figure out where a document will be <a href="FileSystemProvider.html">saved</a>, e.g. <code>file</code>, <code>ftp</code> etc.</p>
</div>
</div>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
<a name="languageId" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagReadonly">Readonly</span> language<wbr>Id</h3>
<div class="tsd-signature tsd-kind-icon">language<wbr>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/442effd/vscode.d.ts#L115">vscode.d.ts:115</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>The identifier of the language associated with this document.</p>
</div>
</div>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
<a name="version" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagReadonly">Readonly</span> version</h3>
<div class="tsd-signature tsd-kind-icon">version<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/youngjuning/vscode-api-cn/blob/442effd/vscode.d.ts#L121">vscode.d.ts:121</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>The version number of this document (it will strictly increase after each
change, including undo/redo).</p>
</div>
</div>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
<a name="isDirty" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagReadonly">Readonly</span> is<wbr>Dirty</h3>
<div class="tsd-signature tsd-kind-icon">is<wbr>Dirty<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/442effd/vscode.d.ts#L126">vscode.d.ts:126</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p><code>true</code> if there are unpersisted changes.</p>
</div>
</div>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
<a name="isClosed" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagReadonly">Readonly</span> is<wbr>Closed</h3>
<div class="tsd-signature tsd-kind-icon">is<wbr>Closed<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/442effd/vscode.d.ts#L132">vscode.d.ts:132</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p><code>true</code> if the document has been closed. A closed document isn&#39;t synchronized anymore
and won&#39;t be re-used when the same resource is opened again.</p>
</div>
</div>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
<a name="eol" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagReadonly">Readonly</span> eol</h3>
<div class="tsd-signature tsd-kind-icon">eol<span class="tsd-signature-symbol">:</span> <a href="../enums/EndOfLine.html" class="tsd-signature-type" data-tsd-kind="Enumeration">EndOfLine</a></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/youngjuning/vscode-api-cn/blob/442effd/vscode.d.ts#L147">vscode.d.ts:147</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>The <a href="../enums/EndOfLine.html">end of line</a> sequence that is predominately
used in this document.</p>
</div>
</div>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
<a name="lineCount" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagReadonly">Readonly</span> line<wbr>Count</h3>
<div class="tsd-signature tsd-kind-icon">line<wbr>Count<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/youngjuning/vscode-api-cn/blob/442effd/vscode.d.ts#L152">vscode.d.ts:152</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>The number of lines in this document.</p>
</div>
</div>
</section>
</section>
<section class="tsd-panel-group tsd-member-group ">
<h2>Methods</h2>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
<a name="save" class="tsd-anchor"></a>
<h3>save</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
<li class="tsd-signature tsd-kind-icon">save<span class="tsd-signature-symbol">(</span><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">&lt;</span><span class="tsd-signature-type">boolean</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/442effd/vscode.d.ts#L141">vscode.d.ts:141</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Save the underlying file.</p>
</div>
</div>
<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">&lt;</span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">&gt;</span></h4>
<p>A promise that will resolve to true when the file
has been saved. If the file was not dirty or the save failed,
will return false.</p>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
<a name="lineAt" class="tsd-anchor"></a>
<h3>line<wbr>At</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
<li class="tsd-signature tsd-kind-icon">line<wbr>At<span class="tsd-signature-symbol">(</span>line<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="TextLine.html" class="tsd-signature-type" data-tsd-kind="Interface">TextLine</a></li>
<li class="tsd-signature tsd-kind-icon">line<wbr>At<span class="tsd-signature-symbol">(</span>position<span class="tsd-signature-symbol">: </span><a href="../classes/Position.html" class="tsd-signature-type" data-tsd-kind="Class">Position</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="TextLine.html" class="tsd-signature-type" data-tsd-kind="Interface">TextLine</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/442effd/vscode.d.ts#L162">vscode.d.ts:162</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Returns a text line denoted by the line number. Note
that the returned object is <em>not</em> live and changes to the
document are not reflected.</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>line: <span class="tsd-signature-type">number</span></h5>
<div class="tsd-comment tsd-typography">
<p>A line number in [0, lineCount).</p>
</div>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <a href="TextLine.html" class="tsd-signature-type" data-tsd-kind="Interface">TextLine</a></h4>
<p>A <a href="TextLine.html">line</a>.</p>
</li>
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/youngjuning/vscode-api-cn/blob/442effd/vscode.d.ts#L176">vscode.d.ts:176</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Returns a text line denoted by the position. Note
that the returned object is <em>not</em> live and changes to the
document are not reflected.</p>
</div>
<p>The position will be <a href="TextDocument.html#validatePosition">adjusted</a>.</p>
<dl class="tsd-comment-tags">
<dt>see</dt>
<dd><p><a href="TextDocument.html#lineAt">TextDocument.lineAt</a></p>
</dd>
</dl>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>position: <a href="../classes/Position.html" class="tsd-signature-type" data-tsd-kind="Class">Position</a></h5>
<div class="tsd-comment tsd-typography">
<p>A position.</p>
</div>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <a href="TextLine.html" class="tsd-signature-type" data-tsd-kind="Interface">TextLine</a></h4>
<p>A <a href="TextLine.html">line</a>.</p>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
<a name="offsetAt" class="tsd-anchor"></a>
<h3>offset<wbr>At</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
<li class="tsd-signature tsd-kind-icon">offset<wbr>At<span class="tsd-signature-symbol">(</span>position<span class="tsd-signature-symbol">: </span><a href="../classes/Position.html" class="tsd-signature-type" data-tsd-kind="Class">Position</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</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/442effd/vscode.d.ts#L186">vscode.d.ts:186</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Converts the position to a zero-based offset.</p>
</div>
<p>The position will be <a href="TextDocument.html#validatePosition">adjusted</a>.</p>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>position: <a href="../classes/Position.html" class="tsd-signature-type" data-tsd-kind="Class">Position</a></h5>
<div class="tsd-comment tsd-typography">
<p>A position.</p>
</div>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4>
<p>A valid zero-based offset.</p>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
<a name="positionAt" class="tsd-anchor"></a>
<h3>position<wbr>At</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
<li class="tsd-signature tsd-kind-icon">position<wbr>At<span class="tsd-signature-symbol">(</span>offset<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../classes/Position.html" class="tsd-signature-type" data-tsd-kind="Class">Position</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/442effd/vscode.d.ts#L194">vscode.d.ts:194</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Converts a zero-based offset to a position.</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>offset: <span class="tsd-signature-type">number</span></h5>
<div class="tsd-comment tsd-typography">
<p>A zero-based offset.</p>
</div>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <a href="../classes/Position.html" class="tsd-signature-type" data-tsd-kind="Class">Position</a></h4>
<p>A valid <a href="../classes/Position.html">Position</a>.</p>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
<a name="getText" class="tsd-anchor"></a>
<h3>get<wbr>Text</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
<li class="tsd-signature tsd-kind-icon">get<wbr>Text<span class="tsd-signature-symbol">(</span>range<span class="tsd-signature-symbol">?: </span><a href="../classes/Range.html" class="tsd-signature-type" data-tsd-kind="Class">Range</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</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/442effd/vscode.d.ts#L203">vscode.d.ts:203</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Get the text of this document. A substring can be retrieved by providing
a range. The range will be <a href="TextDocument.html#validateRange">adjusted</a>.</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5><span class="tsd-flag ts-flagOptional">Optional</span> range: <a href="../classes/Range.html" class="tsd-signature-type" data-tsd-kind="Class">Range</a></h5>
<div class="tsd-comment tsd-typography">
<p>Include only the text included by the range.</p>
</div>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4>
<p>The text inside the provided range or the entire text.</p>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
<a name="getWordRangeAtPosition" class="tsd-anchor"></a>
<h3>get<wbr>Word<wbr>Range<wbr>AtPosition</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
<li class="tsd-signature tsd-kind-icon">get<wbr>Word<wbr>Range<wbr>AtPosition<span class="tsd-signature-symbol">(</span>position<span class="tsd-signature-symbol">: </span><a href="../classes/Position.html" class="tsd-signature-type" data-tsd-kind="Class">Position</a>, regex<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">RegExp</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><a href="../classes/Range.html" class="tsd-signature-type" data-tsd-kind="Class">Range</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/442effd/vscode.d.ts#L223">vscode.d.ts:223</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Get a word-range at the given position. By default words are defined by
common separators, like space, -, _, etc. In addition, per language custom
[word definitions} can be defined. It
is also possible to provide a custom regular expression.</p>
</div>
<ul>
<li><em>Note 1:</em> A custom regular expression must not match the empty string and
if it does, it will be ignored.</li>
<li><em>Note 2:</em> A custom regular expression will fail to match multiline strings
and in the name of speed regular expressions should not match words with
spaces. Use <a href="TextLine.html#text"><code>TextLine.text</code></a> for more complex, non-wordy, scenarios.</li>
</ul>
<p>The position will be <a href="TextDocument.html#validatePosition">adjusted</a>.</p>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>position: <a href="../classes/Position.html" class="tsd-signature-type" data-tsd-kind="Class">Position</a></h5>
<div class="tsd-comment tsd-typography">
<p>A position.</p>
</div>
</li>
<li>
<h5><span class="tsd-flag ts-flagOptional">Optional</span> regex: <span class="tsd-signature-type">RegExp</span></h5>
<div class="tsd-comment tsd-typography">
<p>Optional regular expression that describes what a word is.</p>
</div>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><a href="../classes/Range.html" class="tsd-signature-type" data-tsd-kind="Class">Range</a></h4>
<p>A range spanning a word, or <code>undefined</code>.</p>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
<a name="validateRange" class="tsd-anchor"></a>
<h3>validate<wbr>Range</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
<li class="tsd-signature tsd-kind-icon">validate<wbr>Range<span class="tsd-signature-symbol">(</span>range<span class="tsd-signature-symbol">: </span><a href="../classes/Range.html" class="tsd-signature-type" data-tsd-kind="Class">Range</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../classes/Range.html" class="tsd-signature-type" data-tsd-kind="Class">Range</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/442effd/vscode.d.ts#L231">vscode.d.ts:231</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Ensure a range is completely contained in this document.</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>range: <a href="../classes/Range.html" class="tsd-signature-type" data-tsd-kind="Class">Range</a></h5>
<div class="tsd-comment tsd-typography">
<p>A range.</p>
</div>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <a href="../classes/Range.html" class="tsd-signature-type" data-tsd-kind="Class">Range</a></h4>
<p>The given range or a new, adjusted range.</p>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-interface">
<a name="validatePosition" class="tsd-anchor"></a>
<h3>validate<wbr>Position</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-interface">
<li class="tsd-signature tsd-kind-icon">validate<wbr>Position<span class="tsd-signature-symbol">(</span>position<span class="tsd-signature-symbol">: </span><a href="../classes/Position.html" class="tsd-signature-type" data-tsd-kind="Class">Position</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../classes/Position.html" class="tsd-signature-type" data-tsd-kind="Class">Position</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/442effd/vscode.d.ts#L239">vscode.d.ts:239</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Ensure a position is contained in the range of this document.</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>position: <a href="../classes/Position.html" class="tsd-signature-type" data-tsd-kind="Class">Position</a></h5>
<div class="tsd-comment tsd-typography">
<p>A position.</p>
</div>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <a href="../classes/Position.html" class="tsd-signature-type" data-tsd-kind="Class">Position</a></h4>
<p>The given position or a new, adjusted position.</p>
</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>
</ul>
</nav>
<nav class="tsd-navigation secondary menu-sticky">
<ul class="before-current">
</ul>
<ul class="current">
<li class="current tsd-kind-interface">
<a href="TextDocument.html" class="tsd-kind-icon">Text<wbr>Document</a>
<ul>
<li class=" tsd-kind-property tsd-parent-kind-interface">
<a href="TextDocument.html#uri" class="tsd-kind-icon">uri</a>
</li>
<li class=" tsd-kind-property tsd-parent-kind-interface">
<a href="TextDocument.html#fileName" class="tsd-kind-icon">file<wbr>Name</a>
</li>
<li class=" tsd-kind-property tsd-parent-kind-interface">
<a href="TextDocument.html#isUntitled" class="tsd-kind-icon">is<wbr>Untitled</a>
</li>
<li class=" tsd-kind-property tsd-parent-kind-interface">
<a href="TextDocument.html#languageId" class="tsd-kind-icon">language<wbr>Id</a>
</li>
<li class=" tsd-kind-property tsd-parent-kind-interface">
<a href="TextDocument.html#version" class="tsd-kind-icon">version</a>
</li>
<li class=" tsd-kind-property tsd-parent-kind-interface">
<a href="TextDocument.html#isDirty" class="tsd-kind-icon">is<wbr>Dirty</a>
</li>
<li class=" tsd-kind-property tsd-parent-kind-interface">
<a href="TextDocument.html#isClosed" class="tsd-kind-icon">is<wbr>Closed</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-interface">
<a href="TextDocument.html#save" class="tsd-kind-icon">save</a>
</li>
<li class=" tsd-kind-property tsd-parent-kind-interface">
<a href="TextDocument.html#eol" class="tsd-kind-icon">eol</a>
</li>
<li class=" tsd-kind-property tsd-parent-kind-interface">
<a href="TextDocument.html#lineCount" class="tsd-kind-icon">line<wbr>Count</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-interface">
<a href="TextDocument.html#lineAt" class="tsd-kind-icon">line<wbr>At</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-interface">
<a href="TextDocument.html#offsetAt" class="tsd-kind-icon">offset<wbr>At</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-interface">
<a href="TextDocument.html#positionAt" class="tsd-kind-icon">position<wbr>At</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-interface">
<a href="TextDocument.html#getText" class="tsd-kind-icon">get<wbr>Text</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-interface">
<a href="TextDocument.html#getWordRangeAtPosition" class="tsd-kind-icon">get<wbr>Word<wbr>Range<wbr>AtPosition</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-interface">
<a href="TextDocument.html#validateRange" class="tsd-kind-icon">validate<wbr>Range</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-interface">
<a href="TextDocument.html#validatePosition" class="tsd-kind-icon">validate<wbr>Position</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-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>