Created
March 13, 2025 02:33
-
-
Save aparente/d2ccb445bb845601f4f78724e0f08640 to your computer and use it in GitHub Desktop.
llms.txt generated for Obsidian documentation using https://llmstxt.firecrawl.dev
This file has been truncated, but you can view the full file.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # https://docs.obsidian.md llms-full.txt | |
| ## Obsidian Developer Docs | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # Home | |
| ```yaml is-loaded | |
| cssclasses: hide-title | |
| ``` | |
| # Obsidian Developer Docs | |
| Welcome to the official Obsidian Developer Documentation, where you can learn how to build plugins and themes for [Obsidian](https://obsidian.md/). For tips on how to use Obsidian, visit [the official Help site](https://help.obsidian.md/). | |
| ## Plugins | |
| Build plugins to extend the existing functionality in Obsidian using TypeScript. | |
| - [Build your first plugin](https://docs.obsidian.md/Plugins/Getting+started/Build+a+plugin) | |
| - [Submit your plugin](https://docs.obsidian.md/Plugins/Releasing/Submit+your+plugin) | |
| ## Themes | |
| Design beautiful themes and snippets for Obsidian using CSS. | |
| - [Build your first theme](https://docs.obsidian.md/Themes/App+themes/Build+a+theme) | |
| - [Submit your theme](https://docs.obsidian.md/Themes/App+themes/Submit+your+theme) | |
| - [CSS variables](https://docs.obsidian.md/Reference/CSS+variables/CSS+variables) | |
| ## Join the developer community | |
| If you get stuck, or if you're looking for feedback, [join the community](https://obsidian.md/community). | |
| - `#plugin-dev` and `#theme-dev` channels on Discord. | |
| - [Developers & API](https://forum.obsidian.md/c/developers-api/14) and [Share & showcase](https://forum.obsidian.md/c/share-showcase/9) on the forum. | |
| ## Contributing | |
| If you see any errors or room for improvement on this site, or want to submit a PR, feel free to open an issue on [our GitHub repository](https://github.com/obsidianmd/obsidian-developer-docs). | |
| Additional details are available on our [readme](https://github.com/obsidianmd/obsidian-developer-docs#readme). | |
| Thank you in advance for contributing! | |
| Links to this page | |
| [Optimizing plugin load time](https://docs.obsidian.md/Plugins/Guides/Optimizing+plugin+load+time) | |
| Home | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| Obsidian Developer Docs | |
| Plugins | |
| Themes | |
| Join the developer community | |
| Contributing | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Obsidian Vault Management | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Getting started | |
| Guides | |
| User interface | |
| Editor | |
| Releasing | |
| [Events](https://docs.obsidian.md/Plugins/Events) | |
| [Vault](https://docs.obsidian.md/Plugins/Vault) | |
| Themes | |
| Reference | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # Vault | |
| Each collection of notes in Obsidian is known as a Vault. A Vault consists of a folder, and any sub-folders within it. | |
| While your plugin can access the file system like any other Node.js application, the [Vault](https://docs.obsidian.md/Reference/TypeScript+API/Vault) module aims to make it easier to work with files and folders within a Vault. | |
| The following example recursively prints the paths of all Markdown files in a Vault: | |
| ```ts is-loaded | |
| const files = this.app.vault.getMarkdownFiles() | |
| for (let i = 0; i < files.length; i++) { | |
| console.log(files[i].path); | |
| } | |
| ``` | |
| Tip | |
| If you want to list _all_ files, and not just Markdown documents, use [getFiles()](https://docs.obsidian.md/Reference/TypeScript+API/Vault/getFiles) instead. | |
| ## Read files | |
| There are two methods for reading the content of a file: [read()](https://docs.obsidian.md/Reference/TypeScript+API/Vault/read) and [cachedRead()](https://docs.obsidian.md/Reference/TypeScript+API/Vault/cachedRead). | |
| - If you only want to display the content to the user, then use `cachedRead()` to avoid reading the file from disk multiple times. | |
| - If you want to read the content, change it, and then write it back to disk, then use `read()` to avoid potentially overwriting the file with a stale copy. | |
| Info | |
| The only difference between `cachedRead()` and `read()` is when the file was modified outside of Obsidian just before the plugin reads it. As soon as the file system notifies Obsidian that the file has changed from the outside, `cachedRead()` behaves _exactly_ like `read()`. Similarly, if you save the file within Obsidian, the read cache is flushed as well. | |
| The following example reads the content of all Markdown files in the Vault and returns the average document size: | |
| ```ts is-loaded | |
| import { Notice, Plugin } from 'obsidian'; | |
| export default class ExamplePlugin extends Plugin { | |
| async onload() { | |
| this.addRibbonIcon('info', 'Calculate average file length', async () => { | |
| const fileLength = await this.averageFileLength(); | |
| new Notice(`The average file length is ${fileLength} characters.`); | |
| }); | |
| } | |
| async averageFileLength(): Promise<number> { | |
| const { vault } = this.app; | |
| const fileContents: string[] = await Promise.all( | |
| vault.getMarkdownFiles().map((file) => vault.cachedRead(file)) | |
| ); | |
| let totalLength = 0; | |
| fileContents.forEach((content) => { | |
| totalLength += content.length; | |
| }); | |
| return totalLength / fileContents.length; | |
| } | |
| } | |
| ``` | |
| ## Modify files | |
| To write text content to an existing file, use [Vault.modify()](https://docs.obsidian.md/Reference/TypeScript+API/Vault/modify). | |
| ```ts is-loaded | |
| function writeCurrentDate(vault: Vault, file: TFile): Promise<void> { | |
| return vault.modify(file, `Today is ${new Intl.DateTimeFormat().format(new Date())}.`); | |
| } | |
| ``` | |
| If you want to modify a file based on its current content, use [Vault.process()](https://docs.obsidian.md/Reference/TypeScript+API/Vault/process) instead. The second argument is a callback that provides the current file content and returns the modified content. | |
| ```ts is-loaded | |
| // emojify replaces all occurrences of :) with 🙂. | |
| function emojify(vault: Vault, file: TFile): Promise<string> { | |
| return vault.process(file, (data) => { | |
| return data.replace(':)', '🙂'); | |
| }) | |
| } | |
| ``` | |
| `Vault.process()` is an abstraction on top of [Vault.read()](https://docs.obsidian.md/Reference/TypeScript+API/Vault/read) and [Vault.modify()](https://docs.obsidian.md/Reference/TypeScript+API/Vault/modify) that guarantees that the file doesn't change between reading the current content and writing the updated content. Always prefer `Vault.process()` over `Vault.read()`/ `Vault.modify()` to avoid unintentional loss of data. | |
| ### Asynchronous modifications | |
| [Vault.process()](https://docs.obsidian.md/Reference/TypeScript+API/Vault/process) only supports synchronous modifications. If you need to modify a file asynchronously: | |
| 1. Read the file using [Vault.cachedRead()](https://docs.obsidian.md/Reference/TypeScript+API/Vault/cachedRead). | |
| 2. Perform the async operations. | |
| 3. Update the file using [Vault.process()](https://docs.obsidian.md/Reference/TypeScript+API/Vault/process). | |
| Remember to check that the `data` in the `process()` callback is the same as the data returned by `cachedRead()`. If they aren't the same, that means that the file was changed by a different process, and you may want to ask the user for confirmation, or try again. | |
| ## Delete files | |
| There are two methods to delete a file, [delete()](https://docs.obsidian.md/Reference/TypeScript+API/Vault/delete), and [trash()](https://docs.obsidian.md/Reference/TypeScript+API/Vault/trash). Which one you should use depends on if you want to allow the user to change their mind. | |
| - `delete()` removes the file without a trace. | |
| - `trash()` moves the file to the trash bin. | |
| When you use `trash()`, you have the option to move the file to the system's trash bin, or to a local `.trash` folder at the root of the user's Vault. | |
| ## Is it a file or folder? | |
| Some operations return or accept a [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) object, which can be either a file or a folder. Always check the concrete type of a `TAbstractFile` before you use it. | |
| ```ts is-loaded | |
| const folderOrFile = this.app.vault.getAbstractFileByPath('folderOrFile'); | |
| if (folderOrFile instanceof TFile) { | |
| console.log('It\'s a file!'); | |
| } else if (folderOrFile instanceof TFolder) { | |
| console.log('It\'s a folder!'); | |
| } | |
| ``` | |
| Vault | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| Read files | |
| Modify files | |
| Asynchronous modifications | |
| Delete files | |
| Is it a file or folder? | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Plugin Self-Critique Checklist | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # Obsidian October O\_O 2024 plugin self-critique checklist | |
| ```yaml is-loaded | |
| description: A checklist for plugin developers to self-critique their plugins. | |
| permalink: oo24/plugin | |
| ``` | |
| ## [Add this checklist to your Obsidian](obsidian://new?name=Obsidian%20October%202024%20plugin%20self-critique%20checklist&content=%23%23%20Releasing%20%26%20naming%0A%0A-%20%5B%20%5D%20Remove%20placeholder%20names%20such%20as%20%60MyPlugin%60%20and%20%60SampleSettingTab%60.%0A-%20%5B%20%5D%20Don%27t%20include%20the%20word%20%22Obsidian%22%20in%20your%20name%20unless%20it%20absolutely%20makes%20sense.%20Most%20of%20the%20time%20it%27s%20redundant.%0A-%20%5B%20%5D%20Don%27t%20include%20your%20plugin%20name%20in%20command%20names.%20Obsidian%20adds%20this%20for%20you.%0A-%20%5B%20%5D%20Don%27t%20prefix%20commands%20with%20your%20plugin%20ID.%20Obsidian%20adds%20this%20for%20you.%0A-%20%5B%20%5D%20Don%27t%20include%20%60main.js%60%20in%20your%20repo.%20Only%20include%20it%20in%20your%20releases.%0A-%20%5B%20%5D%20If%20you%20haven%27t%2C%20consider%20add%20a%20%60fundingUrl%60%20so%20that%20users%20of%20your%20plugin%20can%20show%20some%20support.%20%5BLearn%20more%5D%28https%3A%2F%2Fdocs.obsidian.md%2FReference%2FManifest%23fundingUrl%29.%0A%0A%23%23%20Compatibility%0A%0A-%20%5B%20%5D%20Don%27t%20provide%20default%20hotkeys%20for%20commands.%20%5BLearn%20more%5D%28https%3A%2F%2Fdocs.obsidian.md%2FPlugins%2FReleasing%2FPlugin%2Bguidelines%23Avoid%2Bsetting%2Ba%2Bdefault%2Bhotkey%2Bfor%2Bcommands%29.%0A-%20%5B%20%5D%20Don%27t%20override%20core%20styling.%20If%20needed%2C%20add%20your%20own%20class%20and%20make%20the%20styling%20only%20apply%20to%20your%20class.%0A-%20%5B%20%5D%20Do%20scan%20your%20code%20for%20deprecated%20methods%20%28they%20usually%20show%20up%20as%20strikeout%20text%20in%20IDEs%29.%0A-%20%5B%20%5D%20Don%27t%20assign%20styles%20via%20JavaScript%20or%20in%20HTML.%20%5BLearn%20more%5D%28https%3A%2F%2Fdocs.obsidian.md%2FPlugins%2FReleasing%2FPlugin%2Bguidelines%23No%2Bhardcoded%2Bstyling%29.%0A-%20%5B%20%5D%20Don%27t%20access%20the%20hardcoded%20%60.obsidian%60%20folder%20if%20you%20need%20to%20access%20the%20configuration%20directory.%20The%20location%20could%20be%20customized%2C%20so%20please%20use%20%60Vault.configDir%60%20instead.%0A%0A%23%23%20Mobile%20support%0A%0APlease%20only%20complete%20this%20section%20if%20you%20have%20%60isDesktopOnly%60%20set%20to%20false%20in%20your%20manifest.%0A%0A-%20%5B%20%5D%20Don%27t%20use%20node.js%20modules%20such%20as%20%60fs%60%2C%20%60path%60%2C%20and%20%60electron%60.%0A-%20%5B%20%5D%20Don%27t%20use%20regex%20lookbehinds%20if%20you%20want%20to%20support%20iOS%20versions%20lower%20than%2016.4%20%28ignore%20this%20if%20you%20don%27t%20use%20regex%20in%20your%20plugin%29.%20%5BLearn%20more%5D%28https%3A%2F%2Fdocs.obsidian.md%2FPlugins%2FGetting%2Bstarted%2FMobile%2Bdevelopment%23Lookbehind%2Bin%2Bregular%2Bexpressions%29.%0A-%20%5B%20%5D%20Don%27t%20use%20the%20%60FileSystemAdapter%60%20class.%0A-%20%5B%20%5D%20Don%27t%20use%20%60process.platform%60%2C%20use%20Obsidian%27s%20%60Platform%60%20instead.%20%5BLink%20to%20API%5D%28https%3A%2F%2Fdocs.obsidian.md%2FReference%2FTypeScript%2BAPI%2FPlatform%29.%0A-%20%5B%20%5D%20Don%27t%20use%20%60fetch%60%20or%20%60axios.get%60%2C%20use%20Obsidian%27s%20%60requestUrl%60%20instead.%20%5BLink%20to%20API%5D%28https%3A%2F%2Fdocs.obsidian.md%2FReference%2FTypeScript%2BAPI%2FrequestUrl%29.%0A%0A%23%23%20Coding%20style%0A%0A-%20%5B%20%5D%20Don%27t%20use%20%60var%60.%20Use%20%60let%60%20or%20%60const%60%20instead.%20%5BLearn%20more%5D%28https%3A%2F%2Fjavascript.plainenglish.io%2F4-reasons-why-var-is-considered-obsolete-in-modern-javascript-a30296b5f08f%29.%0A-%20%5B%20%5D%20Don%27t%20use%20the%20global%20%60app%60%20instance.%20Use%20%60this.app%60%20provided%20to%20your%20plugin%20instance%20instead.%20%5BLearn%20more%5D%28https%3A%2F%2Fdocs.obsidian.md%2FPlugins%2FReleasing%2FPlugin%2Bguidelines%23Avoid%2520using%2520global%2520app%2520instance%29.%0A-%20%5B%20%5D%20Do%20break%20up%20your%20%60main.ts%60%20into%20smaller%20files%20or%20even%20folders%20if%20it%20gets%20big%20to%20make%20code%20easier%20to%20find.%0A-%20%5B%20%5D%20Do%20use%20%60async%60%20and%20%60await%60%20when%20you%20can%20for%20readability%2C%20instead%20of%20using%20%60Promise%60.%20%5BLearn%20more%5D%28https%3A%2F%2Fdocs.obsidian.md%2FPlugins%2FReleasing%2FPlugin%2Bguidelines%23Prefer%2Basync%252Fawait%2Bover%2BPromise%29.%0A-%20%5B%20%5D%20Don%27t%20use%20global%20variables.%20Try%20to%20keep%20variables%20either%20in%20the%20scope%20of%20classes%20or%20functions.%20%5BLearn%20more%5D%28http%3A%2F%2Fwiki.c2.com%2F%3FGlobalVariablesAreBad%29.%0A-%20%5B%20%5D%20Do%20test%20with%20%60instanceof%60%20before%20casting%20into%20other%20types%20such%20as%20%60TFile%60%2C%20%60TFolder%60%2C%20or%20%60FileSystemAdapter%60%2C%20%0A-%20%5B%20%5D%20Don%27t%20use%20use%20%60as%20any%60%20and%20use%20proper%20typing%20instead.%0A%0A%0A%23%23%20API%20usage%0A%0A-%20%5B%20%5D%20Don%27t%20use%20%60Vault.modify%60.%20If%20you%20want%20to%20edit%20the%20active%20file%2C%20prefer%20using%20the%20%60Editor%60%20interface.%20If%20you%20want%20to%20edit%20it%20in%20the%20background%2C%20use%20%60Vault.process%60.%0A-%20%5B%20%5D%20Don%27t%20manually%20read%20and%20write%20frontmatter.%20Instead%2C%20use%20%60FileManager.processFrontMatter%60.%20%5BLearn%20more%5D%28https%3A%2F%2Fdocs.obsidian.md%2FPlugins%2FReleasing%2FPlugin%2Bguidelines%23Prefer%2B%2560FileManager.processFrontMatter%2560%2Bto%2Bmodify%2Bfrontmatter%2Bof%2Ba%2Bnote%29.%0A-%20%5B%20%5D%20Don%27t%20use%20%60vault.delete%60%20to%20delete%20files.%20Use%20%60trashFile%60%20instead%20to%20make%20sure%20the%20file%20is%20deleted%20according%20to%20the%20users%20preferences.%20%5BLearn%20more%5D%28https%3A%2F%2Fdocs.obsidian.md%2FReference%2FTypeScript%2BAPI%2FFileManager%2FtrashFile%29.%0A-%20%5B%20%5D%20Don%27t%20use%20the%20%60Adapter%60%20API%20whenever%20possible.%20Use%20%60Vault%60%20API%20instead.%20%5BLearn%20more%5D%28https%3A%2F%2Fdocs.obsidian.md%2FPlugins%2FReleasing%2FPlugin%2Bguidelines%23Prefer%2Bthe%2BVault%2BAPI%2Bover%2Bthe%2BAdapter%2BAPI%29.%0A-%20%5B%20%5D%20Don%27t%20manage%20reading%20and%20write%20plugin%20data%20yourself.%20Use%20%60Plugin.loadData%28%29%60%20and%20%60Plugin.saveData%28%29%60%20instead.%0A-%20%5B%20%5D%20Do%20use%20%60normalizePath%28%29%60%20if%20you%20take%20user%20defined%20paths.%20%5BLearn%20more%5D%28https%3A%2F%2Fdocs.obsidian.md%2FReference%2FTypeScript%2BAPI%2FnormalizePath%29.%0A%0A%0A%23%23%20Performance%0A%0A-%20%5B%20%5D%20Do%20optimize%20your%20plugin%27s%20load%20time.%20%5BDetailed%20guide%5D%28https%3A%2F%2Fdocs.obsidian.md%2FPlugins%2FGuides%2FOptimizing%2Bplugin%2Bload%2Btime%29.%0A-%20%5B%20%5D%20Don%27t%20iterate%20all%20files%20to%20find%20a%20file%20or%20folder%20by%20its%20path.%20%5BLearn%20more%5D%28https%3A%2F%2Fdocs.obsidian.md%2FPlugins%2FReleasing%2FPlugin%2Bguidelines%23Avoid%2Biterating%2Ball%2Bfiles%2Bto%2Bfind%2Ba%2Bfile%2Bby%2Bits%2Bpath%29.%0A-%20%5B%20%5D%20If%20you%20want%20your%20plugins%20to%20be%20compatible%20with%20Obsidian%201.7.2%2B%20%28currently%20in%20early%20access%29%2C%20update%20your%20plugin%20to%20work%20with%20%60DeferredViews%60.%20%5BDetailed%20guide%5D%28https%3A%2F%2Fdocs.obsidian.md%2FPlugins%2FGuides%2FUnderstanding%2Bdeferred%2Bviews%29.%0A-%20%5B%20%5D%20If%20you%27re%20using%20%60moment%60%2C%20make%20sure%20you%27re%20doing%20%60import%20%7B%20moment%7D%20from%20%27obsidian%27%60%20so%20that%20you%20don%27t%20import%20another%20copy.%0A-%20%5B%20%5D%20Do%20minimize%20your%20%60main.js%60%20for%20releasing.%0A-%20%5B%20%5D%20Do%20your%20initial%20UI%20setup%20on%20%60workspace.onLayoutReady%28%29%60%20instead%20of%20in%20the%20constructor%20or%20%60onload%28%29%60%20function.%20%5BLearn%20more%5D%28https%3A%2F%2Fdocs.obsidian.md%2FPlugins%2FGuides%2FOptimizing%2Bplugin%2Bload%2Btime%23If%2Byou%2Bhave%2Bcode%2Bthat%2Byou%2Bwant%2Bto%2Brun%2Bat%2Bstartup%252C%2Bwhere%2Bshould%2Bit%2Bgo%253F%29.%0A%0A%23%23%20User%20interface%0A%0A-%20%5B%20%5D%20Don%27t%20use%20setting%20headings%20unless%20you%20have%20more%20than%20one%20section.%20%5BLearn%20more%5D%28https%3A%2F%2Fdocs.obsidian.md%2FPlugins%2FReleasing%2FPlugin%2Bguidelines%23Only%2Buse%2Bheadings%2Bunder%2Bsettings%2Bif%2Byou%2Bhave%2Bmore%2Bthan%2Bone%2Bsection%29.%0A-%20%5B%20%5D%20Don%27t%20include%20the%20word%20%22setting%22%20or%20%22option%22%20in%20setting%20headings.%20%5BLearn%20more%5D%28https%3A%2F%2Fdocs.obsidian.md%2FPlugins%2FReleasing%2FPlugin%2Bguidelines%23Avoid%2B%2522settings%2522%2Bin%2Bsettings%2Bheadings%29.%0A-%20%5B%20%5D%20Do%20use%20sentence%20case%20in%20all%20text%20in%20UI%20elements%20to%20be%20consistent%20with%20rest%20of%20Obsidian%20UI.%20%5BLearn%20more%5D%28https%3A%2F%2Fen.wiktionary.org%2Fwiki%2Fsentence_case%29.%0A-%20%5B%20%5D%20Don%27t%20use%20%60%3Ch1%3E%60%20or%20%60%3Ch2%3E%60%20for%20setting%20header.%20Use%20Obsidian%20API%20instead.%20%5BLearn%20more%5D%28https%3A%2F%2Fdocs.obsidian.md%2FPlugins%2FReleasing%2FPlugin%2Bguidelines%23Use%2B%2560setHeading%2560%2Binstead%2Bof%2Ba%2B%2560%253Ch1%253E%2560%252C%2B%2560%253Ch2%253E%2560%29.%0A-%20%5B%20%5D%20Don%27t%20do%20%60console.log%60%20unless%20they%20are%20absolutely%20necessarily.%20Remove%20testing%20console%20logs%20that%20are%20not%20needed%20for%20production.) | |
| ## Releasing & naming | |
| - [ ] Remove placeholder names such as `MyPlugin` and `SampleSettingTab`. | |
| - [ ] Don't include the word "Obsidian" in your name unless it absolutely makes sense. Most of the time it's redundant. | |
| - [ ] Don't include your plugin name in command names. Obsidian adds this for you. | |
| - [ ] Don't prefix commands with your plugin ID. Obsidian adds this for you. | |
| - [ ] Don't include `main.js` in your repo. Only include it in your releases. | |
| - [ ] If you haven't, consider add a `fundingUrl` so that users of your plugin can show some support. [Learn more](https://docs.obsidian.md/Reference/Manifest#fundingUrl). | |
| ## Compatibility | |
| - [ ] Don't provide default hotkeys for commands. [Learn more](https://docs.obsidian.md/Plugins/Releasing/Plugin+guidelines#Avoid+setting+a+default+hotkey+for+commands). | |
| - [ ] Don't override core styling. If needed, add your own class and make the styling only apply to your class. | |
| - [ ] Do scan your code for deprecated methods (they usually show up as strikeout text in IDEs). | |
| - [ ] Don't assign styles via JavaScript or in HTML. [Learn more](https://docs.obsidian.md/Plugins/Releasing/Plugin+guidelines#No+hardcoded+styling). | |
| - [ ] Don't access the hardcoded `.obsidian` folder if you need to access the configuration directory. The location could be customized, so please use `Vault.configDir` instead. | |
| ## Mobile support | |
| Please only complete this section if you have `isDesktopOnly` set to false in your manifest. | |
| - [ ] Don't use node.js modules such as `fs`, `path`, and `electron`. | |
| - [ ] Don't use regex lookbehinds if you want to support iOS versions lower than 16.4 (ignore this if you don't use regex in your plugin). [Learn more](https://docs.obsidian.md/Plugins/Getting+started/Mobile+development#Lookbehind+in+regular+expressions). | |
| - [ ] Don't use the `FileSystemAdapter` class. | |
| - [ ] Don't use `process.platform`, use Obsidian's `Platform` instead. [Link to API](https://docs.obsidian.md/Reference/TypeScript+API/Platform). | |
| - [ ] Don't use `fetch` or `axios.get`, use Obsidian's `requestUrl` instead. [Link to API](https://docs.obsidian.md/Reference/TypeScript+API/requestUrl). | |
| ## Coding style | |
| - [ ] Don't use `var`. Use `let` or `const` instead. [Learn more](https://javascript.plainenglish.io/4-reasons-why-var-is-considered-obsolete-in-modern-javascript-a30296b5f08f). | |
| - [ ] Don't use the global `app` instance. Use `this.app` provided to your plugin instance instead. [Learn more](https://docs.obsidian.md/Plugins/Releasing/Plugin+guidelines#Avoid%20using%20global%20app%20instance). | |
| - [ ] Do break up your `main.ts` into smaller files or even folders if it gets big to make code easier to find. | |
| - [ ] Do use `async` and `await` when you can for readability, instead of using `Promise`. [Learn more](https://docs.obsidian.md/Plugins/Releasing/Plugin+guidelines#Prefer+async%2Fawait+over+Promise). | |
| - [ ] Don't use global variables. Try to keep variables either in the scope of classes or functions. [Learn more](http://wiki.c2.com/?GlobalVariablesAreBad). | |
| - [ ] Do test with `instanceof` before casting into other types such as `TFile`, `TFolder`, or `FileSystemAdapter`, | |
| - [ ] Don't use use `as any` and use proper typing instead. | |
| ## API usage | |
| - [ ] Don't use `Vault.modify`. If you want to edit the active file, prefer using the `Editor` interface. If you want to edit it in the background, use `Vault.process`. | |
| - [ ] Don't manually read and write frontmatter. Instead, use `FileManager.processFrontMatter`. [Learn more](https://docs.obsidian.md/Plugins/Releasing/Plugin+guidelines#Prefer+%60FileManager.processFrontMatter%60+to+modify+frontmatter+of+a+note). | |
| - [ ] Don't use `vault.delete` to delete files. Use `trashFile` instead to make sure the file is deleted according to the users preferences. [Learn more](https://docs.obsidian.md/Reference/TypeScript+API/FileManager/trashFile). | |
| - [ ] Don't use the `Adapter` API whenever possible. Use `Vault` API instead. [Learn more](https://docs.obsidian.md/Plugins/Releasing/Plugin+guidelines#Prefer+the+Vault+API+over+the+Adapter+API). | |
| - [ ] Don't manage reading and write plugin data yourself. Use `Plugin.loadData()` and `Plugin.saveData()` instead. | |
| - [ ] Do use `normalizePath()` if you take user defined paths. [Learn more](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath). | |
| ## Performance | |
| - [ ] Do optimize your plugin's load time. [Detailed guide](https://docs.obsidian.md/Plugins/Guides/Optimizing+plugin+load+time). | |
| - [ ] Don't iterate all files to find a file or folder by its path. [Learn more](https://docs.obsidian.md/Plugins/Releasing/Plugin+guidelines#Avoid+iterating+all+files+to+find+a+file+by+its+path). | |
| - [ ] If you want your plugins to be compatible with Obsidian 1.7.2+ (currently in early access), update your plugin to work with `DeferredViews`. [Detailed guide](https://docs.obsidian.md/Plugins/Guides/Understanding+deferred+views). | |
| - [ ] If you're using `moment`, make sure you're doing `import { moment} from 'obsidian'` so that you don't import another copy. | |
| - [ ] Do minimize your `main.js` for releasing. | |
| - [ ] Do your initial UI setup on `workspace.onLayoutReady()` instead of in the constructor or `onload()` function. [Learn more](https://docs.obsidian.md/Plugins/Guides/Optimizing+plugin+load+time#If+you+have+code+that+you+want+to+run+at+startup%2C+where+should+it+go%3F). | |
| ## User interface | |
| - [ ] Don't use setting headings unless you have more than one section. [Learn more](https://docs.obsidian.md/Plugins/Releasing/Plugin+guidelines#Only+use+headings+under+settings+if+you+have+more+than+one+section). | |
| - [ ] Don't include the word "setting" or "option" in setting headings. [Learn more](https://docs.obsidian.md/Plugins/Releasing/Plugin+guidelines#Avoid+%22settings%22+in+settings+headings). | |
| - [ ] Do use sentence case in all text in UI elements to be consistent with rest of Obsidian UI. [Learn more](https://en.wiktionary.org/wiki/sentence_case). | |
| - [ ] Don't use `<h1>` or `<h2>` for setting header. Use Obsidian API instead. [Learn more](https://docs.obsidian.md/Plugins/Releasing/Plugin+guidelines#Use+%60setHeading%60+instead+of+a+%60%3Ch1%3E%60%2C+%60%3Ch2%3E%60). | |
| - [ ] Don't do `console.log` unless they are absolutely necessarily. Remove testing console logs that are not needed for production. | |
| Obsidian October O\_O 2024 plugin self-critique checklist | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| Add this checklist to your Obsidian | |
| Releasing & naming | |
| Compatibility | |
| Mobile support | |
| Coding style | |
| API usage | |
| Performance | |
| User interface | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Obsidian Developer Policies | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # Developer policies | |
| Our goal for community plugins and themes is to make it easy for users to safely modify and expand the capabilities of Obsidian, while prioritizing private and offline usage of the app. | |
| All community plugins and themes added to the Obsidian directory must respect the following policies. Every plugin and theme is individually vetted before being included in the directory. Plugins and themes that don't follow these policies will be removed from the directory. | |
| These policies only apply to plugins listed in the official Obsidian directory. These policies do not apply to plugins installed outside of the Obsidian directory, but they are nonetheless good practices to follow. | |
| ## Policies | |
| ### Not allowed | |
| Plugins and themes must not: | |
| - Obfuscate code to hide its purpose. | |
| - Insert dynamic ads that are loaded over the internet. | |
| - Insert static ads outside a plugin’s own interface. | |
| - Include client-side telemetry. | |
| - Include a mechanism that updates the plugin. | |
| - Themes may not load assets from the network. To bundle an asset, see [this guide](https://docs.obsidian.md/Themes/App+themes/Embed+fonts+and+images+in+your+theme). | |
| ### Disclosures | |
| The following are only allowed if clearly indicated in your README: | |
| - Payment is required for full access. | |
| - An account is required for full access. | |
| - Network use. Clearly explain which remote services are used and why they're needed. | |
| - Accessing files outside of Obsidian vaults. Clearly explain why this is needed. | |
| - Static ads such as banners and pop-up messages within the plugin's own interface. | |
| - Server-side telemetry. Link to a privacy policy that explains how the data is handled must be included. | |
| - Close sourced code. This will be handled on a case by case basis. | |
| ### Copyright and licensing | |
| All community plugins and themes must follow these requirements: | |
| - Include a [LICENSE file](https://docs.github.com/en/communities/setting-up-your-project-for-healthy-contributions/adding-a-license-to-a-repository) and clearly indicate the license of your plugin or theme. | |
| - Comply with the original licenses of any code your plugin or theme makes use of, including attribution in the README if required. | |
| - Respect Obsidian's trademark policy. Don't use the "Obsidian" trademark in a way that could confuse users into thinking your plugin or theme is a first-party creation. | |
| ## Reporting violations | |
| If you encounter a plugin or theme that violates the policies above, please let the developer know by opening a GitHub issue in their repository. Kindly check existing issues to see if it’s already reported. | |
| If the developer doesn’t respond after 7 days, [contact the Obsidian team](https://help.obsidian.md/Help+and+support#Report+a+security+issue). For serious violations, you can contact our team immediately. | |
| ## Removing plugins and themes | |
| In case of a policy violation, we may attempt to contact the developer and provide a reasonable timeframe for them to resolve the problem. | |
| If the problem isn't resolved by then, we'll remove plugins or themes from our directory. | |
| We may immediately remove a plugin or theme if: | |
| - The plugin or theme appears to be malicious. | |
| - The developer is uncooperative. | |
| - This is a repeated violation. | |
| In addition, we may also remove plugins or themes that have become unmaintained or severely broken. | |
| Links to this page | |
| [Embed fonts and images in your theme](https://docs.obsidian.md/Themes/App+themes/Embed+fonts+and+images+in+your+theme) | |
| [Plugin guidelines](https://docs.obsidian.md/Plugins/Releasing/Plugin+guidelines) | |
| [Submission requirements for plugins](https://docs.obsidian.md/Plugins/Releasing/Submission+requirements+for+plugins) | |
| [Theme guidelines](https://docs.obsidian.md/Themes/App+themes/Theme+guidelines) | |
| Developer policies | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| Policies | |
| Not allowed | |
| Disclosures | |
| Copyright and licensing | |
| Reporting violations | |
| Removing plugins and themes | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Vault Maintenance Checklist | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # Obsidian October O\_O 2024 vault self-critique checklist | |
| ```yaml is-loaded | |
| description: A checklist for vault maintenance and discovery. | |
| permalink: oo24/vault | |
| ``` | |
| ## [Add this checklist to your Obsidian](obsidian://new?name=Obsidian%20October%20O_O%202024%20vault%20self-critique%20checklist&content=%3E%20%5B%21INFO%5D%20Reminder%0A%3E%20Although%20we%20proposed%20some%20ways%20below%20to%20maintain%20and%20improvement%20your%20vault%2C%20likely%20the%20user%20of%20your%20vault%20is%20you%20and%20only%20you.%20This%20is%20different%20from%20plugins%20and%20themes%20where%20we%20can%20make%20relatively%20more%20objective%20suggestions.%0A%3E%20%0A%3E%20So%20feel%20free%20to%20remove%20anything%20from%20the%20checklist%20that%20doesn%27t%20make%20sense%20to%20you%20and%20add%20your%20own%20items.%0A%0A%23%23%20Vault%20maintenance%0A%0A-%20%5B%20%5D%20How%20well%20is%20your%20vault%20doing%20what%20it%27s%20supposed%20to%20do%3F%20%28What%20is%20the%20purpose%20of%20your%20vault%2Fnotes%3F%20What%20measures%20might%20you%20use%20to%20judge%20how%20well%20it%27s%20working%3F%29%20%5B%5E1%5D%0A-%20%5B%20%5D%20How%20quickly%20can%20you%20find%20notes%20you%20used%20one%20week%20ago%3F%0A-%20%5B%20%5D%20If%20your%20cat%20intentionally%20deleted%20all%20of%20your%20files%2C%20how%20recent%20is%20your%20backup%3F%0A-%20%5B%20%5D%20Do%20you%20need%20to%20document%20anything%20about%20your%20workflows%3F%20It%20can%20be%20surprisingly%20helpful%20to%20write%20out%20how%20you%20work%20and%20create%20checklists%20for%20important%20but%20uncommon%20tasks.%0A%0A%23%23%20Vault%20maintenance%20checklist%0A%0A-%20%5B%20%5D%20Delete%20unused%20attachments%0A-%20%5B%20%5D%20Delete%20or%20refactor%20notes%20that%20are%20not%20linked%20or%20tagged%20or%20in%20a%20folder%20%28%22orphan%22%20notes%29%0A-%20%5B%20%5D%20Delete%20unused%20tags%0A-%20%5B%20%5D%20Delete%20empty%20folders%0A-%20%5B%20%5D%20Process%20items%20in%20inbox%20notes%2Ffolders%2Ftags%0A-%20%5B%20%5D%20Make%20templates%20for%20frequently-used%20snippets%20or%20note%20types%0A-%20%5B%20%5D%20Remove%20unused%20plugins%0A-%20%5B%20%5D%20Remove%20unused%20themes%0A-%20%5B%20%5D%20Remove%20unused%20snippets%0A-%20%5B%20%5D%20Add%20properties%20missing%20from%20notes%0A-%20%5B%20%5D%20Convert%20tags%20to%20properties%20where%20appropriate%0A-%20%5B%20%5D%20Fix%20up%20broken%20links%0A-%20%5B%20%5D%20Browse%20through%20the%20plugin%20gallery%20for%20new%20ideas%0A%0A%23%23%20Vault%20rediscovery%20ideas%0A%0A-%20%5B%20%5D%20Open%20both%20Backlinks%20and%20Outgoing%20Links%20to%20see%20if%20there%20are%20any%20unlinked%20mentions%20that%20make%20sense%0A-%20%5B%20%5D%20Sort%20the%20files%20in%20Files%20Explorer%20by%20%22Modified%20time%20%28old%20to%20new%29%22%2C%20take%20a%20look%20at%20the%20top%20files%20and%20see%20how%20they%20can%20be%20made%20better.%0A-%20%5B%20%5D%20Enable%20the%20Random%20Note%20core%20plugin%20and%20randomly%20visit%20some%20notes%20for%20surprises.%0A%0A%0A%5B%5E1%5D%3A%20Remember%20that%20%22joy%22%20is%20a%20valid%20measure%21%20) | |
| Reminder | |
| Although we proposed some ways below to maintain and improvement your vault, likely the user of your vault is you and only you. This is different from plugins and themes where we can make relatively more objective suggestions. | |
| So feel free to remove anything from the checklist that doesn't make sense to you and add your own items. | |
| ## Vault maintenance | |
| - [ ] How well is your vault doing what it's supposed to do? (What is the purpose of your vault/notes? What measures might you use to judge how well it's working?) [\[1\]](https://docs.obsidian.md/oo24/vault#fn-1-5d89742f997e51bb) | |
| - [ ] How quickly can you find notes you used one week ago? | |
| - [ ] If your cat intentionally deleted all of your files, how recent is your backup? | |
| - [ ] Do you need to document anything about your workflows? It can be surprisingly helpful to write out how you work and create checklists for important but uncommon tasks. | |
| ## Vault maintenance checklist | |
| - [ ] Delete unused attachments | |
| - [ ] Delete or refactor notes that are not linked or tagged or in a folder ("orphan" notes) | |
| - [ ] Delete unused tags | |
| - [ ] Delete empty folders | |
| - [ ] Process items in inbox notes/folders/tags | |
| - [ ] Make templates for frequently-used snippets or note types | |
| - [ ] Remove unused plugins | |
| - [ ] Remove unused themes | |
| - [ ] Remove unused snippets | |
| - [ ] Add properties missing from notes | |
| - [ ] Convert tags to properties where appropriate | |
| - [ ] Fix up broken links | |
| - [ ] Browse through the plugin gallery for new ideas | |
| ## Vault rediscovery ideas | |
| - [ ] Open both Backlinks and Outgoing Links to see if there are any unlinked mentions that make sense | |
| - [ ] Sort the files in Files Explorer by "Modified time (old to new)", take a look at the top files and see how they can be made better. | |
| - [ ] Enable the Random Note core plugin and randomly visit some notes for surprises. | |
| * * * | |
| 1. Remember that "joy" is a valid measure! [↩︎](https://docs.obsidian.md/oo24/vault#fnref-1-5d89742f997e51bb) | |
| Obsidian October O\_O 2024 vault self-critique checklist | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| Add this checklist to your Obsidian | |
| Vault maintenance | |
| Vault maintenance checklist | |
| Vault rediscovery ideas | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Theme Developer Checklist | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # Obsidian October O\_O 2024 theme self-critique checklist | |
| ```yaml is-loaded | |
| description: A checklist for theme developers to self-critique their themes. | |
| permalink: oo24/theme | |
| ``` | |
| ## [Add this checklist to your Obsidian](obsidian://new?name=Obsidian%20October%20O_O%202024%20theme%20self-critique%20checklist&content=%23%23%20Compatibility%0A%0A-%20%5B%20%5D%20Do%20use%20CSS%20variables%20whenever%20you%20can.%20%5BLearn%20more%5D%28https%3A%2F%2Fdocs.obsidian.md%2FReference%2FCSS%2Bvariables%2FCSS%2Bvariables%29.%0A-%20%5B%20%5D%20Don%27t%20use%20%60%21important%60.%0A-%20%5B%20%5D%20Don%27t%20change%20vertical%20margins%20in%20classes%20used%20in%20live%20preview%20editor%2C%20use%20padding%20instead.%0A-%20%5B%20%5D%20If%20you%27re%20using%20recent%20experimental%20CSS%20features%2C%20mention%20the%20minimal%20installer%20version%20required%20in%20the%20README.%0A%0A%23%23%20Performance%0A%0A-%20%5B%20%5D%20Don%27t%20use%20%60%3Ahas%28%29%60%20unless%20absolutely%20necessary.%20It%20causes%20performance%20issues%20especially%20in%20Canvas.%0A-%20%5B%20%5D%20Don%27t%20link%20to%20assets%20such%20as%20fonts%20and%20images.%20Keep%20them%20local.%20%5BLearn%20more%5D%28https%3A%2F%2Fdocs.obsidian.md%2FThemes%2FApp%2Bthemes%2FTheme%2Bguidelines%23Keep%2Bassets%2Blocal%29.%0A%0A%0A%23%23%20Releasing%0A%0A-%20%5B%20%5D%20Don%27t%20include%20the%20word%20%22Obsidian%22%20in%20your%20name%20unless%20it%20absolutely%20makes%20sense.%20Most%20of%20the%20time%20it%27s%20redundant.%0A-%20%5B%20%5D%20Do%20check%20your%20screenshot%20files%20are%20up-to-date.%20These%20screenshots%20are%20shown%20as%20thumbnails%20in%20the%20theme%20directory.%0A-%20%5B%20%5D%20Do%20check%20your%20README%20to%20make%20sure%20it%27s%20up-to-date.%20This%20is%20the%20what%20all%20potential%20users%20see%20when%20they%20check%20out%20your%20theme%20in%20the%20theme%20directory.%0A-%20%5B%20%5D%20Do%20keep%20your%20screenshot%20small%20so%20it%20loads%20fast%20in%20the%20directory.%20We%20recommend%20the%20dimension%20of%20512%20x%20288%20pixels.%0A-%20%5B%20%5D%20Do%20make%20sure%20you%20have%20a%20license%20in%20place%20so%20others%20know%20how%20to%20use%20your%20theme%20and%20its%20source%20code.) | |
| ## Compatibility | |
| - [ ] Do use CSS variables whenever you can. [Learn more](https://docs.obsidian.md/Reference/CSS+variables/CSS+variables). | |
| - [ ] Don't use `!important`. | |
| - [ ] Don't change vertical margins in classes used in live preview editor, use padding instead. | |
| - [ ] If you're using recent experimental CSS features, mention the minimal installer version required in the README. | |
| ## Performance | |
| - [ ] Don't use `:has()` unless absolutely necessary. It causes performance issues especially in Canvas. | |
| - [ ] Don't link to assets such as fonts and images. Keep them local. [Learn more](https://docs.obsidian.md/Themes/App+themes/Theme+guidelines#Keep+assets+local). | |
| ## Releasing | |
| - [ ] Don't include the word "Obsidian" in your name unless it absolutely makes sense. Most of the time it's redundant. | |
| - [ ] Do check your screenshot files are up-to-date. These screenshots are shown as thumbnails in the theme directory. | |
| - [ ] Do check your README to make sure it's up-to-date. This is the what all potential users see when they check out your theme in the theme directory. | |
| - [ ] Do keep your screenshot small so it loads fast in the directory. We recommend the dimension of 512 x 288 pixels. | |
| - [ ] Do make sure you have a license in place so others know how to use your theme and its source code. | |
| Obsidian October O\_O 2024 theme self-critique checklist | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| Add this checklist to your Obsidian | |
| Compatibility | |
| Performance | |
| Releasing | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Obsidian Events Guide | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Getting started | |
| Guides | |
| User interface | |
| Editor | |
| Releasing | |
| [Events](https://docs.obsidian.md/Plugins/Events) | |
| [Vault](https://docs.obsidian.md/Plugins/Vault) | |
| Themes | |
| Reference | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # Events | |
| Many of the interfaces in the Obsidian lets you subscribe to events throughout the application, for example when the user makes changes to a file. | |
| Any registered event handlers need to be detached whenever the plugin unloads. The safest way to make sure this happens is to use the [registerEvent()](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerEvent) method. | |
| ```ts is-loaded | |
| import { Plugin } from 'obsidian'; | |
| export default class ExamplePlugin extends Plugin { | |
| async onload() { | |
| this.registerEvent(this.app.vault.on('create', () => { | |
| console.log('a new file has entered the arena') | |
| })); | |
| } | |
| } | |
| ``` | |
| ## Timing events | |
| If you want to repeatedly call a function with a fixed delay, use the [`window.setInterval()`](https://developer.mozilla.org/en-US/docs/Web/API/setInterval) function with the [registerInterval()](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerInterval) method. | |
| The following example displays the current time in the status bar, updated every second: | |
| ```ts is-loaded | |
| import { moment, Plugin } from 'obsidian'; | |
| export default class ExamplePlugin extends Plugin { | |
| statusBar: HTMLElement; | |
| async onload() { | |
| this.statusBar = this.addStatusBarItem(); | |
| this.updateStatusBar(); | |
| this.registerInterval( | |
| window.setInterval(() => this.updateStatusBar(), 1000) | |
| ); | |
| } | |
| updateStatusBar() { | |
| this.statusBar.setText(moment().format('H:mm:ss')); | |
| } | |
| } | |
| ``` | |
| Date and time | |
| [Moment](https://momentjs.com/) is a popular JavaScript library for working with dates and time. Obsidian uses Moment internally, so you don't need to install it yourself. You can import it from the Obsidian API instead: | |
| ```ts is-loaded | |
| import { moment } from 'obsidian'; | |
| ``` | |
| Links to this page | |
| [Context menus](https://docs.obsidian.md/Plugins/User+interface/Context+menus) | |
| Events | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| Timing events | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Obsidian Plugin Versions | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # Versions | |
| ```yaml is-loaded | |
| cssclasses: reference | |
| ``` | |
| Every new version of Obsidian may introduce new capabilities for plugins. Unfortunately, using a recently introduced plugin capability in your plugin may break installations for users that haven't yet updated to the latest version of Obsidian. To avoid this, `versions.json` lets you control the plugin version based on the version of the user's Obsidian app. | |
| `versions.json` contains a JSON object, where the key is the plugin version, and the value is the corresponding `minAppVersion`. | |
| If a user attempts to install a plugin where the Obsidian app version is lower than the `minAppVersion` in [Manifest](https://docs.obsidian.md/Reference/Manifest), then Obsidian looks for a `versions.json` file at the root of the plugin repository. | |
| In the following example, the user has Obsidian 1.1.0 installed, but the plugin `minAppVersion` is 1.2.0. | |
| **manifest.json**: | |
| ```json is-loaded | |
| { | |
| // ... | |
| "version": "1.0.0", | |
| "minAppVersion": "1.2.0" | |
| } | |
| ``` | |
| If the user runs version 1.1.0 of the Obsidian app, Obsidian then consults the `versions.json` to determine whether a fallback is available. | |
| **versions.json**: | |
| ```json is-loaded | |
| { | |
| "0.1.0": "1.0.0", | |
| "0.12.0": "1.1.0", | |
| } | |
| ``` | |
| In this case, the most recent plugin version for 1.1.0 is 0.12.0. | |
| Important | |
| You don't need to list every plugin relese in the `versions.json`. You only need to update `versions.json` if you change the `minAppVersion` for your plugin. | |
| Versions | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Obsidian Manifest Schema | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # Manifest | |
| ```yaml is-loaded | |
| cssclasses: reference | |
| ``` | |
| This page describes the schema for the manifest, `manifest.json`. | |
| ## Properties | |
| The following properties are available for both plugins and themes. | |
| | Property | Type | Required | Description | | |
| | --- | --- | --- | --- | | |
| | `author` | `string` | **Yes** | The author's name. | | |
| | `minAppVersion` | `string` | **Yes** | The minimum required Obsidian version. | | |
| | `name` | `string` | **Yes** | The display name. | | |
| | `version` | `string` | **Yes** | The version, using [Semantic Versioning](https://semver.org/). | | |
| | `authorUrl` | `string` | No | A URL to the author's website. | | |
| | `fundingUrl` | `string` or [`object`](https://docs.obsidian.md/Reference/Manifest#fundingurl) | No | A URL or multiple URLs to where the users can support your project financially. | | |
| ## Plugin-specific properties | |
| The following properties are only available to plugins. | |
| | Property | Type | Required | Description | | |
| | --- | --- | --- | --- | | |
| | `description` | `string` | **Yes** | A description of your plugin. | | |
| | `id` | `string` | **Yes** | The ID of your plugin. | | |
| | `isDesktopOnly` | `boolean` | **Yes** | Whether your plugin uses NodeJS or Electron APIs. | | |
| Note | |
| For local development, the `id` should match the plugin's folder name; otherwise some methods, such as `onExternalSettingsChange`, won't be called. | |
| ## fundingUrl | |
| `fundingUrl` can either be a string with a single URL, or an object with multiple URLs. | |
| **Single URL**: | |
| ```json is-loaded | |
| { | |
| "fundingUrl": "https://buymeacoffee.com" | |
| } | |
| ``` | |
| **Multiple URLs**: | |
| ```json is-loaded | |
| { | |
| "fundingUrl": { | |
| "Buy Me a Coffee": "https://buymeacoffee.com", | |
| "GitHub Sponsor": "https://github.com/sponsors", | |
| "Patreon": "https://www.patreon.com/" | |
| } | |
| } | |
| ``` | |
| Links to this page | |
| [Mobile development](https://docs.obsidian.md/Plugins/Getting+started/Mobile+development) | |
| [Submission requirements for plugins](https://docs.obsidian.md/Plugins/Releasing/Submission+requirements+for+plugins) | |
| [Submit your plugin](https://docs.obsidian.md/Plugins/Releasing/Submit+your+plugin) | |
| [Submit your theme](https://docs.obsidian.md/Themes/App+themes/Submit+your+theme) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| Manifest | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| Properties | |
| Plugin-specific properties | |
| fundingUrl | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Editor Decorations Guide | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Getting started | |
| Guides | |
| User interface | |
| Editor | |
| [Editor](https://docs.obsidian.md/Plugins/Editor/Editor) | |
| [Markdown post processing](https://docs.obsidian.md/Plugins/Editor/Markdown+post+processing) | |
| [Editor extensions](https://docs.obsidian.md/Plugins/Editor/Editor+extensions) | |
| [Decorations](https://docs.obsidian.md/Plugins/Editor/Decorations) | |
| [State fields](https://docs.obsidian.md/Plugins/Editor/State+fields) | |
| [State management](https://docs.obsidian.md/Plugins/Editor/State+management) | |
| [View plugins](https://docs.obsidian.md/Plugins/Editor/View+plugins) | |
| [Viewport](https://docs.obsidian.md/Plugins/Editor/Viewport) | |
| [Communicating with editor extensions](https://docs.obsidian.md/Plugins/Editor/Communicating+with+editor+extensions) | |
| Releasing | |
| [Events](https://docs.obsidian.md/Plugins/Events) | |
| [Vault](https://docs.obsidian.md/Plugins/Vault) | |
| Themes | |
| Reference | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # Decorations | |
| Decorations let you control how to draw or style content in [editor extensions](https://docs.obsidian.md/Plugins/Editor/Editor+extensions). If you intend to change the look and feel by adding, replacing, or styling elements in the editor, you most likely need to use decorations. | |
| By the end of this page, you'll be able to: | |
| - Understand how to use decorations to change the editor appearance. | |
| - Understand the difference between providing decoration using state fields and view plugins. | |
| Note | |
| This page aims to distill the official CodeMirror 6 documentation for Obsidian plugin developers. For more detailed information on state fields, refer to [Decorating the Document](https://codemirror.net/docs/guide/#decorating-the-document). | |
| ## Prerequisites | |
| - Basic understanding of [State fields](https://docs.obsidian.md/Plugins/Editor/State+fields). | |
| - Basic understanding of [View plugins](https://docs.obsidian.md/Plugins/Editor/View+plugins). | |
| ## Overview | |
| Without decorations, the document would render as plain text. Not very interesting at all. Using decorations, you can change how to display the document, for example by highlighting text or adding custom HTML elements. | |
| You can use the following types of decorations: | |
| - [Mark decorations](https://codemirror.net/docs/ref/#view.Decoration%5Emark) style existing elements. | |
| - [Widget decorations](https://codemirror.net/docs/ref/#view.Decoration%5Ewidget) insert elements in the document. | |
| - [Replace decorations](https://codemirror.net/docs/ref/#view.Decoration%5Ereplace) hide or replace part of the document with another element. | |
| - [Line decorations](https://codemirror.net/docs/ref/#view.Decoration%5Eline) add styling to the lines, rather than the document itself. | |
| To use decorations, you need to create them inside an editor extension and have the extension _provide_ them to the editor. You can provide decorations to the editor in two ways, either _directly_ using [state fields](https://docs.obsidian.md/Plugins/Editor/State+fields) or _indirectly_ using [view plugins](https://docs.obsidian.md/Plugins/Editor/View+plugins). | |
| ## Should I use a view plugin or a state field? | |
| Both view plugins and state fields can provide decorations to the editor, but they have some differences. | |
| - Use a view plugin if you can determine the decoration based on what's inside the [Viewport](https://docs.obsidian.md/Plugins/Editor/Viewport). | |
| - Use a state field if you need to manage decorations outside of the viewport. | |
| - Use a state field if you want to make changes that could change the content of the viewport, for example by adding line breaks. | |
| If you can implement your extension using either approach, then the view plugin generally results in better performance. For example, imagine that you want to implement an editor extension that checks the spelling of a document. | |
| One way would be to pass the entire document to an external spell checker which then returns a list of spelling errors. In this case, you'd need to map each error to a decoration and use a state field to manage decorations regardless of what's in the viewport at the moment. | |
| Another way would be to only spellcheck what's visible in the viewport. The extension would need to continuously run a spell check as the user scrolls through the document, but you'd be able to spell check documents with millions of lines of text. | |
|  | |
| ## Providing decorations | |
| Imagine that you want to build an editor extension that replaces the bullet list item with an emoji. You can accomplish this with either a view plugin or a state field, with some differences. In this section, you'll see how to implement it with both types of extensions. | |
| Both implementations share the same core logic: | |
| 1. Use [syntaxTree](https://codemirror.net/docs/ref/#language.syntaxTree) to find list items. | |
| 2. For every list item, replace leading hyphens, `-`, with a _widget_. | |
| ### Widgets | |
| Widgets are custom HTML elements that you can add to the editor. You can either insert a widget at a specific position in the document, or replace a piece of content with a widget. | |
| The following example defines a widget that returns an HTML element, `<span>👉</span>`. You'll use this widget later on. | |
| ```ts is-loaded | |
| import { EditorView, WidgetType } from '@codemirror/view'; | |
| export class EmojiWidget extends WidgetType { | |
| toDOM(view: EditorView): HTMLElement { | |
| const div = document.createElement('span'); | |
| div.innerText = '👉'; | |
| return div; | |
| } | |
| } | |
| ``` | |
| To replace a range of content in your document with the emoji widget, use the [replace decoration](https://codemirror.net/docs/ref/#view.Decoration%5Ereplace). | |
| ```ts is-loaded | |
| const decoration = Decoration.replace({ | |
| widget: new EmojiWidget() | |
| }); | |
| ``` | |
| ### State fields | |
| To provide decorations from a state field: | |
| 1. [Define a state field](https://docs.obsidian.md/Plugins/Editor/State+fields#Defining%20a%20state%20field) with a `DecorationSet` type. | |
| 2. Add the `provide` property to the state field. | |
| ```ts is-loaded | |
| provide(field: StateField<DecorationSet>): Extension { | |
| return EditorView.decorations.from(field); | |
| }, | |
| ``` | |
| ```ts is-loaded | |
| import { syntaxTree } from '@codemirror/language'; | |
| import { | |
| Extension, | |
| RangeSetBuilder, | |
| StateField, | |
| Transaction, | |
| } from '@codemirror/state'; | |
| import { | |
| Decoration, | |
| DecorationSet, | |
| EditorView, | |
| WidgetType, | |
| } from '@codemirror/view'; | |
| import { EmojiWidget } from 'emoji'; | |
| export const emojiListField = StateField.define<DecorationSet>({ | |
| create(state): DecorationSet { | |
| return Decoration.none; | |
| }, | |
| update(oldState: DecorationSet, transaction: Transaction): DecorationSet { | |
| const builder = new RangeSetBuilder<Decoration>(); | |
| syntaxTree(transaction.state).iterate({ | |
| enter(node) { | |
| if (node.type.name.startsWith('list')) { | |
| // Position of the '-' or the '*'. | |
| const listCharFrom = node.from - 2; | |
| builder.add( | |
| listCharFrom, | |
| listCharFrom + 1, | |
| Decoration.replace({ | |
| widget: new EmojiWidget(), | |
| }) | |
| ); | |
| } | |
| }, | |
| }); | |
| return builder.finish(); | |
| }, | |
| provide(field: StateField<DecorationSet>): Extension { | |
| return EditorView.decorations.from(field); | |
| }, | |
| }); | |
| ``` | |
| ### View plugins | |
| To manage your decorations using a view plugin: | |
| 1. [Create a view plugin](https://docs.obsidian.md/Plugins/Editor/View+plugins#Creating%20a%20view%20plugin). | |
| 2. Add a `DecorationSet` member property to your plugin. | |
| 3. Initialize the decorations in the `constructor()`. | |
| 4. Rebuild decorations in `update()`. | |
| Not all updates are reasons to rebuild your decorations. The following example only rebuilds decorations whenever the underlying document or the viewport changes. | |
| ```ts is-loaded | |
| import { syntaxTree } from '@codemirror/language'; | |
| import { RangeSetBuilder } from '@codemirror/state'; | |
| import { | |
| Decoration, | |
| DecorationSet, | |
| EditorView, | |
| PluginSpec, | |
| PluginValue, | |
| ViewPlugin, | |
| ViewUpdate, | |
| WidgetType, | |
| } from '@codemirror/view'; | |
| import { EmojiWidget } from 'emoji'; | |
| class EmojiListPlugin implements PluginValue { | |
| decorations: DecorationSet; | |
| constructor(view: EditorView) { | |
| this.decorations = this.buildDecorations(view); | |
| } | |
| update(update: ViewUpdate) { | |
| if (update.docChanged || update.viewportChanged) { | |
| this.decorations = this.buildDecorations(update.view); | |
| } | |
| } | |
| destroy() {} | |
| buildDecorations(view: EditorView): DecorationSet { | |
| const builder = new RangeSetBuilder<Decoration>(); | |
| for (let { from, to } of view.visibleRanges) { | |
| syntaxTree(view.state).iterate({ | |
| from, | |
| to, | |
| enter(node) { | |
| if (node.type.name.startsWith('list')) { | |
| // Position of the '-' or the '*'. | |
| const listCharFrom = node.from - 2; | |
| builder.add( | |
| listCharFrom, | |
| listCharFrom + 1, | |
| Decoration.replace({ | |
| widget: new EmojiWidget(), | |
| }) | |
| ); | |
| } | |
| }, | |
| }); | |
| } | |
| return builder.finish(); | |
| } | |
| } | |
| const pluginSpec: PluginSpec<EmojiListPlugin> = { | |
| decorations: (value: EmojiListPlugin) => value.decorations, | |
| }; | |
| export const emojiListPlugin = ViewPlugin.fromClass( | |
| EmojiListPlugin, | |
| pluginSpec | |
| ); | |
| ``` | |
| `buildDecorations()` is a helper method that builds a complete set of decorations based on the editor view. | |
| Notice the second argument to the `ViewPlugin.fromClass()` function. The `decorations` property in the `PluginSpec` specifies how the view plugin provides the decorations to the editor. | |
| Since the view plugin knows what's visible to the user, you can use `view.visibleRanges` to limit what parts of the syntax tree to visit. | |
| Links to this page | |
| [State fields](https://docs.obsidian.md/Plugins/Editor/State+fields) | |
| [View plugins](https://docs.obsidian.md/Plugins/Editor/View+plugins) | |
| Decorations | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| Prerequisites | |
| Overview | |
| Should I use a view plugin or a state field? | |
| Providing decorations | |
| Widgets | |
| State fields | |
| View plugins | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Obsidian Editor Guide | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Getting started | |
| Guides | |
| User interface | |
| Editor | |
| [Editor](https://docs.obsidian.md/Plugins/Editor/Editor) | |
| [Markdown post processing](https://docs.obsidian.md/Plugins/Editor/Markdown+post+processing) | |
| [Editor extensions](https://docs.obsidian.md/Plugins/Editor/Editor+extensions) | |
| [Decorations](https://docs.obsidian.md/Plugins/Editor/Decorations) | |
| [State fields](https://docs.obsidian.md/Plugins/Editor/State+fields) | |
| [State management](https://docs.obsidian.md/Plugins/Editor/State+management) | |
| [View plugins](https://docs.obsidian.md/Plugins/Editor/View+plugins) | |
| [Viewport](https://docs.obsidian.md/Plugins/Editor/Viewport) | |
| [Communicating with editor extensions](https://docs.obsidian.md/Plugins/Editor/Communicating+with+editor+extensions) | |
| Releasing | |
| [Events](https://docs.obsidian.md/Plugins/Events) | |
| [Vault](https://docs.obsidian.md/Plugins/Vault) | |
| Themes | |
| Reference | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # Editor | |
| The [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) class exposes operations for reading and manipulating an active Markdown document in edit mode. | |
| If you want to access the editor in a command, use the [editorCallback](https://docs.obsidian.md/Plugins/User+interface/Commands#Editor%20commands). | |
| If you want to use the editor elsewhere, you can access it from the active view: | |
| ```ts is-loaded | |
| const view = this.app.workspace.getActiveViewOfType(MarkdownView); | |
| // Make sure the user is editing a Markdown file. | |
| if (view) { | |
| const cursor = view.editor.getCursor(); | |
| // ... | |
| } | |
| ``` | |
| Note | |
| Obsidian uses [CodeMirror](https://codemirror.net/) (CM) as the underlying text editor, and exposes the CodeMirror editor as part of the API. `Editor` serves as an abstraction to bridge features between CM6 and CM5 (legacy editor, only available on desktop). By using `Editor` instead of directly accessing the CodeMirror instance, you ensure that your plugin works on both platforms. | |
| ## Insert text at cursor position | |
| The [replaceRange()](https://docs.obsidian.md/Reference/TypeScript+API/Editor/replaceRange) method replaces the text between two cursor positions. If you only give it one position, it inserts the new text between that position and the next. | |
| The following command inserts today's date at the cursor position: | |
| ```ts is-loaded | |
| import { Editor, moment, Plugin } from 'obsidian'; | |
| export default class ExamplePlugin extends Plugin { | |
| async onload() { | |
| this.addCommand({ | |
| id: 'insert-todays-date', | |
| name: 'Insert today\'s date', | |
| editorCallback: (editor: Editor) => { | |
| editor.replaceRange( | |
| moment().format('YYYY-MM-DD'), | |
| editor.getCursor() | |
| ); | |
| }, | |
| }); | |
| } | |
| } | |
| ``` | |
|  | |
| ## Replace current selection | |
| If you want to modify the selected text, use [replaceSelection()](https://docs.obsidian.md/Reference/TypeScript+API/Editor/replaceSelection) to replace the current selection with a new text. | |
| The following command reads the current selection and converts it to uppercase: | |
| ```ts is-loaded | |
| import { Editor, Plugin } from 'obsidian'; | |
| export default class ExamplePlugin extends Plugin { | |
| async onload() { | |
| this.addCommand({ | |
| id: 'convert-to-uppercase', | |
| name: 'Convert to uppercase', | |
| editorCallback: (editor: Editor) => { | |
| const selection = editor.getSelection(); | |
| editor.replaceSelection(selection.toUpperCase()); | |
| }, | |
| }); | |
| } | |
| } | |
| ``` | |
|  | |
| Links to this page | |
| [About user interface](https://docs.obsidian.md/Plugins/User+interface/About+user+interface) | |
| [on('editor-change')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('editor-change')) | |
| [on('editor-drop')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('editor-drop')) | |
| [on('editor-menu')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('editor-menu')) | |
| [on('editor-paste')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('editor-paste')) | |
| [Plugin guidelines](https://docs.obsidian.md/Plugins/Releasing/Plugin+guidelines) | |
| Editor | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| Insert text at cursor position | |
| Replace current selection | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Obsidian Editor Viewport | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Getting started | |
| Guides | |
| User interface | |
| Editor | |
| [Editor](https://docs.obsidian.md/Plugins/Editor/Editor) | |
| [Markdown post processing](https://docs.obsidian.md/Plugins/Editor/Markdown+post+processing) | |
| [Editor extensions](https://docs.obsidian.md/Plugins/Editor/Editor+extensions) | |
| [Decorations](https://docs.obsidian.md/Plugins/Editor/Decorations) | |
| [State fields](https://docs.obsidian.md/Plugins/Editor/State+fields) | |
| [State management](https://docs.obsidian.md/Plugins/Editor/State+management) | |
| [View plugins](https://docs.obsidian.md/Plugins/Editor/View+plugins) | |
| [Viewport](https://docs.obsidian.md/Plugins/Editor/Viewport) | |
| [Communicating with editor extensions](https://docs.obsidian.md/Plugins/Editor/Communicating+with+editor+extensions) | |
| Releasing | |
| [Events](https://docs.obsidian.md/Plugins/Events) | |
| [Vault](https://docs.obsidian.md/Plugins/Vault) | |
| Themes | |
| Reference | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # Viewport | |
| The Obsidian editor supports [huge documents](https://codemirror.net/examples/million/) with millions of lines. One of the reasons why this is possible, is because the editor only renders what's visible (and a little bit more). | |
| Imagine that you want to edit a document that is too big to fit on your monitor. The Obsidian editor creates a "window" that moves across the document, only rendering the content within the window (and ignoring what's outside). This window is known as the editor's _viewport_. | |
|  | |
| Whenever the user scrolls through the document, or when the document itself changes, the viewport becomes out-of-date and needs to be recomputed. | |
| If you want to build an editor extension that depends on the viewport, refer to [View plugins](https://docs.obsidian.md/Plugins/Editor/View+plugins). | |
| Note | |
| This page aims to distill the official CodeMirror 6 documentation for Obsidian plugin developers. For more information on state management, refer to [Viewport](https://codemirror.net/docs/guide/#viewport). | |
| Links to this page | |
| [Decorations](https://docs.obsidian.md/Plugins/Editor/Decorations) | |
| [View plugins](https://docs.obsidian.md/Plugins/Editor/View+plugins) | |
| Viewport | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Obsidian Plugin Guidelines | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Getting started | |
| Guides | |
| User interface | |
| Editor | |
| Releasing | |
| [Release your plugin with GitHub Actions](https://docs.obsidian.md/Plugins/Releasing/Release+your+plugin+with+GitHub+Actions) | |
| [Submit your plugin](https://docs.obsidian.md/Plugins/Releasing/Submit+your+plugin) | |
| [Submission requirements for plugins](https://docs.obsidian.md/Plugins/Releasing/Submission+requirements+for+plugins) | |
| [Plugin guidelines](https://docs.obsidian.md/Plugins/Releasing/Plugin+guidelines) | |
| [Beta-testing plugins](https://docs.obsidian.md/Plugins/Releasing/Beta-testing+plugins) | |
| [Events](https://docs.obsidian.md/Plugins/Events) | |
| [Vault](https://docs.obsidian.md/Plugins/Vault) | |
| Themes | |
| Reference | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # Plugin guidelines | |
| This page lists common review comments plugin authors get when submitting their plugin. | |
| While the guidelines on this page are recommendations, depending on their severity, we may still require you to address any violations. | |
| Policies for plugin developers | |
| Make sure that you've read our [Developer policies](https://docs.obsidian.md/Developer+policies) as well as the [Submission requirements for plugins](https://docs.obsidian.md/Plugins/Releasing/Submission+requirements+for+plugins). | |
| ## General | |
| ### Avoid using global app instance | |
| Avoid using the global app object, `app` (or `window.app`). Instead, use the reference provided by your plugin instance, `this.app`. | |
| The global app object is intended for debugging purposes and might be removed in the future. | |
| ### Avoid unnecessary logging to console | |
| Please avoid unnecessary logging. | |
| In it's default configuration, the developer console should only show error messages, debug messages should not be shown. | |
| ### Consider organizing your code base using folders | |
| If your plugin uses more than one `.ts` file, consider organizing them into folders to make it easier to review and maintain. | |
| ### Rename placeholder class names | |
| The sample plugin contains placeholder names for common classes, such as `MyPlugin`, `MyPluginSettings`, and `SampleSettingTab`. Rename these to reflect the name of your plugin. | |
| ## Mobile | |
| ### Node and Electron APIs | |
| The Node.js API, and the Electron API aren't available on mobile devices. Any calls to these libraries made by your plugin or it's dependencies can cause your plugin to crash. | |
| ### Lookbehind in regular expressions | |
| Lookbehind in regular expressions is only supported on iOS 16.4 and above, and some iPhone and iPad users may still use earlier versions. To implement a fallback for iOS users, either refer to [Platform-specific features](https://docs.obsidian.md/Plugins/Getting+started/Mobile+development#Platform-specific%20features), or use a JavaScript library to detect specific browser versions. | |
| Refer to [Can I Use](https://caniuse.com/js-regexp-lookbehind) for more information and exact version statistics. Look for "Safari on iOS". | |
| ## UI text | |
| This section lists guidelines for formatting text in the user interface, such as settings, commands, and buttons. | |
| The example below from **Settings → Appearance** demonstrates the guidelines for text in the user interface. | |
|  | |
| 1. [General settings are at the top and don't have a heading](https://docs.obsidian.md/Plugins/Releasing/Plugin+guidelines#Only%20use%20headings%20under%20settings%20if%20you%20have%20more%20than%20one%20section.). | |
| 2. [Section headings don't have "settings" in the heading text](https://docs.obsidian.md/Plugins/Releasing/Plugin+guidelines#Avoid%20%22settings%22%20in%20settings%20headings). | |
| 3. [Use Sentence case in UI](https://docs.obsidian.md/Plugins/Releasing/Plugin+guidelines#Use%20Sentence%20case%20in%20UI). | |
| For more information on writing and formatting text for Obsidian, refer to our [Style guide](https://help.obsidian.md/Contributing+to+Obsidian/Style+guide). | |
| ### Only use headings under settings if you have more than one section. | |
| Avoid adding a top-level heading in the settings tab, such as "General", "Settings", or the name of your plugin. | |
| If you have more than one section under settings, and one contains general settings, keep them at the top without adding a heading. | |
| For example, look at the settings under **Settings → Appearance**. | |
| ### Avoid "settings" in settings headings | |
| In the settings tab, you can add headings to organize settings. Avoid including the word "settings" to these headings. Since everything in under the settings tab is settings, repeating it for every heading becomes redundant. | |
| - Prefer "Advanced" over "Advanced settings". | |
| - Prefer "Templates" over "Settings for templates". | |
| ### Use sentence case in UI | |
| Any text in UI elements should be using [Sentence case](https://en.wiktionary.org/wiki/sentence_case) instead of [Title Case](https://en.wikipedia.org/wiki/Title_case), where only the first word in a sentence, and proper nouns, should be capitalized. | |
| - Prefer "Template folder location" over "Template Folder Location". | |
| - Prefer "Create new note" over "Create New Note". | |
| ### Use `setHeading` instead of a `<h1>`, `<h2>` | |
| Using the heading elements from HTML will result in inconsistent styling between different plugins. | |
| Instead you should prefer the following: | |
| ```ts is-loaded | |
| new Setting(containerEl).setName('your heading title').setHeading(); | |
| ``` | |
| ## Security | |
| ### Avoid `innerHTML`, `outerHTML` and `insertAdjacentHTML` | |
| Building DOM elements from user-defined input, using `innerHTML`, `outerHTML` and `insertAdjacentHTML` can pose a security risk. | |
| The following example builds a DOM element using a string that contains user input, `${name}`. `name` can contain other DOM elements, such as `<script>alert()</script>`, and can allow a potential attacker to execute arbitrary code on the user's computer. | |
| ```ts is-loaded | |
| function showName(name: string) { | |
| let containerElement = document.querySelector('.my-container'); | |
| // DON'T DO THIS | |
| containerElement.innerHTML = `<div class="my-class"><b>Your name is: </b>${name}</div>`; | |
| } | |
| ``` | |
| Instead, use the DOM API or the Obsidian helper functions, such as `createEl()`, `createDiv()` and `createSpan()` to build the DOM element programmatically. For more information, refer to [HTML elements](https://docs.obsidian.md/Plugins/User+interface/HTML+elements). | |
| To cleanup a HTML elements contents use `el.empty();` | |
| ## Resource management | |
| ### Clean up resources when plugin unloads | |
| Any resources created by the plugin, such as event listeners, must be destroyed or released when the plugin unloads. | |
| When possible, use methods like [registerEvent()](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerEvent) or [addCommand()](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/addCommand) to automatically clean up resources when the plugin unloads. | |
| ```ts is-loaded | |
| export default class MyPlugin extends Plugin { | |
| onload() { | |
| this.registerEvent(this.app.vault.on('create', this.onCreate)); | |
| } | |
| onCreate: (file: TAbstractFile) => { | |
| // ... | |
| } | |
| } | |
| ``` | |
| Note | |
| You don't need to clean up resources that are guaranteed to be removed when your plugin unloads. For example, if you register a `mouseenter` listener on a DOM element, the event listener will be garbage-collected when the element goes out of scope. | |
| ### Don't detach leaves in `onunload` | |
| When the user updates your plugin, any open leaves will be reinitialized at their original position, regardless of where the user had moved them. | |
| ## Commands | |
| ### Avoid setting a default hotkey for commands | |
| Setting a default hotkey may lead to conflicts between plugins and may override hotkeys that the user has already configured. | |
| It's also difficult to choose a default hotkey that is available on all operating systems. | |
| ### Use the appropriate callback type for commands | |
| When you add a command in your plugin, use the appropriate callback type. | |
| - Use `callback` if the command runs unconditionally. | |
| - Use `checkCallback` if the command only runs under certain conditions. | |
| If the command requires an open and active Markdown editor, use `editorCallback`, or the corresponding `editorCheckCallback`. | |
| ## Workspace | |
| ### Avoid accessing `workspace.activeLeaf` directly | |
| If you want to access the active view, use [getActiveViewOfType()](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getActiveViewOfType) instead: | |
| ```ts is-loaded | |
| const view = this.app.workspace.getActiveViewOfType(MarkdownView); | |
| // getActiveViewOfType will return null if the active view is null, or if it's not a MarkdownView. | |
| if (view) { | |
| // ... | |
| } | |
| ``` | |
| If you want to access the editor in the active note, use `activeEditor` instead: | |
| ```ts is-loaded | |
| const editor = this.app.workspace.activeEditor?.editor; | |
| if (editor) { | |
| // ... | |
| } | |
| ``` | |
| ### Avoid managing references to custom views | |
| Managing references to custom view can cause memory leaks or unintended consequences. | |
| **Don't** do this: | |
| ```ts is-loaded | |
| this.registerViewType(MY_VIEW_TYPE, () => this.view = new MyCustomView()); | |
| ``` | |
| Do this instead: | |
| ```ts is-loaded | |
| this.registerViewType(MY_VIEW_TYPE, () => new MyCustomView()); | |
| ``` | |
| To access the view from your plugin, use `Workspace.getActiveLeavesOfType()`: | |
| ```ts is-loaded | |
| for (let leaf of app.workspace.getActiveLeavesOfType(MY_VIEW_TYPE)) { | |
| let view = leaf.view; | |
| if (view instanceof MyCustomView) { | |
| // ... | |
| } | |
| } | |
| ``` | |
| ## Vault | |
| ### Prefer the Editor API instead of `Vault.modify` to the active file | |
| If you want to edit an active note, use the [Editor](https://docs.obsidian.md/Plugins/Editor/Editor) interface instead of [Vault.modify()](https://docs.obsidian.md/Reference/TypeScript+API/Vault/modify). | |
| Editor maintains information about the active note, such as cursor position, selection, and folded content. When you use [Vault.modify()](https://docs.obsidian.md/Reference/TypeScript+API/Vault/modify) to edit the note, all that information is lost, which leads to a poor experience for the user. | |
| Editor is also more efficient when making small changes to parts of the note. | |
| ### Prefer `Vault.process` instead of `Vault.modify` to modify a file in the background | |
| If you want to edit a note that is not currently opened, use the [Vault.process](https://docs.obsidian.md/Reference/TypeScript+API/Vault/process) function instead of [Vault.modify](https://docs.obsidian.md/Reference/TypeScript+API/Vault/modify). | |
| The `process` function modifies the file atomically, which means that your plugin won't run into conflicts with other plugins modifying the same file. | |
| ### Prefer `FileManager.processFrontMatter` to modify frontmatter of a note | |
| Instead of extracting the frontmatter of a note, parsing and modifying the YAML manually you should use the [FileManager.processFrontMatter](https://docs.obsidian.md/Reference/TypeScript+API/FileManager/processFrontMatter) function. | |
| `processFrontMatter` runs atomically, so modifying the file will not conflict with other plugins editing the same file. | |
| It will also ensure a consistent layout of the YAML produced. | |
| ### Prefer the Vault API over the Adapter API | |
| Obsidian exposes two APIs for file operations: the Vault API ( `app.vault`) and the Adapter API ( `app.vault.adapter`). | |
| While the file operations in the Adapter API are often more familiar to many developers, the Vault API has two main advantages over the adapter. | |
| - **Performance:** The Vault API has a caching layer that can speed up file reads when the file is already known to Obsidian. | |
| - **Safety:** The Vault API performs file operations serially to avoid any race conditions, for example when reading a file that is being written to at the same time. | |
| ### Avoid iterating all files to find a file by its path | |
| This is inefficient, especially for large vaults. Use [Vault.getFileByPath](https://docs.obsidian.md/Reference/TypeScript+API/Vault/getFileByPath), [Vault.getFolderByPath](https://docs.obsidian.md/Reference/TypeScript+API/Vault/getFolderByPath) or [Vault.getAbstractFileByPath](https://docs.obsidian.md/Reference/TypeScript+API/Vault/getAbstractFileByPath) instead. | |
| **Don't** do this: | |
| ```ts is-loaded | |
| this.app.vault.getFiles().find(file => file.path === filePath); | |
| ``` | |
| Do this instead: | |
| ```ts is-loaded | |
| const filePath = 'folder/file.md'; | |
| // if you want to get a file | |
| const file = this.app.vault.getFileByPath(filePath); | |
| ``` | |
| ```ts is-loaded | |
| const folderPath = 'folder'; | |
| // or if you want to get a folder | |
| const folder = this.app.vault.getFolderByPath(folderPath); | |
| ``` | |
| If you aren't sure if the path provided is for a folder or a file, use: | |
| ```ts is-loaded | |
| const abstractFile = this.app.vault.getAbstractFileByPath(filePath); | |
| if (file instanceof TFile) { | |
| // it's a file | |
| } | |
| if (file instanceof TFolder) { | |
| // it's a folder | |
| } | |
| ``` | |
| ### Use `normalizePath()` to clean up user-defined paths | |
| Use [normalizePath()](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath) whenever you accept user-defined paths to files or folders in the vault, or when you construct your own paths in the plugin code. | |
| `normalizePath()` takes a path and scrubs it to be safe for the file system and for cross-platform use. This function: | |
| - Cleans up the use of forward and backward slashes, such as replacing 1 or more of `\` or `/` with a single `/`. | |
| - Removes leading and trailing forward and backward slashes. | |
| - Replaces any non-breaking spaces, `\u00A0`, with a regular space. | |
| - Runs the path through [String.prototype.normalize](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/normalize). | |
| ```ts is-loaded | |
| import { normalizePath } from 'obsidian'; | |
| const pathToPlugin = normalizePath('//my-folder\file'); | |
| // pathToPlugin contains "my-folder/file" not "//my-folder\" | |
| ``` | |
| ## Editor | |
| ### Change or reconfigure editor extensions | |
| If you want to change or reconfigure an [editor extension](https://docs.obsidian.md/Plugins/Editor/Editor+extensions) after you've registered using [registerEditorExtension()](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/registerEditorExtension), use [updateOptions()](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/updateOptions) to update all editors. | |
| ```ts is-loaded | |
| class MyPlugin extends Plugin { | |
| private editorExtension: Extension[] = []; | |
| onload() { | |
| //... | |
| this.registerEditorExtension(this.editorExtension); | |
| } | |
| updateEditorExtension() { | |
| // Empty the array while keeping the same reference | |
| // (Don't create a new array here) | |
| this.editorExtension.length = 0; | |
| // Create new editor extension | |
| let myNewExtension = this.createEditorExtension(); | |
| // Add it to the array | |
| this.editorExtension.push(myNewExtension); | |
| // Flush the changes to all editors | |
| this.app.workspace.updateOptions(); | |
| } | |
| } | |
| ``` | |
| ## Styling | |
| ### No hardcoded styling | |
| **Don't** do this: | |
| ```ts is-loaded | |
| const el = containerEl.createDiv(); | |
| el.style.color = 'white'; | |
| el.style.backgroundColor = 'red'; | |
| ``` | |
| To make it easy for users to modify the styling of your plugin you should use CSS classes, as hardcoding the styling in the plugin code makes it impossible to modify with themes and snippets. | |
| **Do** this instead: | |
| ```ts is-loaded | |
| const el = containerEl.createDiv({cls: 'warning-container'}); | |
| ``` | |
| In the plugins CSS add the following: | |
| ```css is-loaded | |
| .warning-container { | |
| color: var(--text-normal); | |
| background-color: var(--background-modifier-error); | |
| } | |
| ``` | |
| To make the styling of your plugin consistent with Obsidian and other plugins you should use the [CSS variables](https://docs.obsidian.md/Reference/CSS+variables/CSS+variables) provided by Obsidian. | |
| If there is no variable available that fits in your case, you can create your own. | |
| ## TypeScript | |
| ### Prefer `const` and `let` over `var` | |
| For more information, refer to [4 Reasons Why var is Considered Obsolete in Modern JavaScript](https://javascript.plainenglish.io/4-reasons-why-var-is-considered-obsolete-in-modern-javascript-a30296b5f08f). | |
| ### Prefer async/await over Promise | |
| Recent versions of JavaScript and TypeScript support the `async` and `await` keywords to run code asynchronously, which allow for more readable code than using Promises. | |
| **Don't** do this: | |
| ```ts is-loaded | |
| function test(): Promise<string | null> { | |
| return requestUrl('https://example.com') | |
| .then(res => res.text | |
| .catch(e => { | |
| console.log(e); | |
| return null; | |
| }); | |
| } | |
| ``` | |
| Do this instead: | |
| ```ts is-loaded | |
| async function AsyncTest(): Promise<string | null> { | |
| try { | |
| let res = await requestUrl('https://example.com'); | |
| let text = await r.text; | |
| return text; | |
| } | |
| catch (e) { | |
| console.log(e); | |
| return null; | |
| } | |
| } | |
| ``` | |
| Plugin guidelines | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| General | |
| Avoid using global app instance | |
| Avoid unnecessary logging to console | |
| Consider organizing your code base using folders | |
| Rename placeholder class names | |
| Mobile | |
| UI text | |
| Only use headings under settings if you have more than one section. | |
| Avoid "settings" in settings headings | |
| Use sentence case in UI | |
| Use setHeading instead of a <h1>, <h2> | |
| Security | |
| Avoid innerHTML, outerHTML and insertAdjacentHTML | |
| Resource management | |
| Clean up resources when plugin unloads | |
| Don't detach leaves in onunload | |
| Commands | |
| Avoid setting a default hotkey for commands | |
| Use the appropriate callback type for commands | |
| Workspace | |
| Avoid accessing workspace.activeLeaf directly | |
| Avoid managing references to custom views | |
| Vault | |
| Prefer the Editor API instead of Vault.modify to the active file | |
| Prefer Vault.process instead of Vault.modify to modify a file in the background | |
| Prefer FileManager.processFrontMatter to modify frontmatter of a note | |
| Prefer the Vault API over the Adapter API | |
| Avoid iterating all files to find a file by its path | |
| Use normalizePath() to clean up user-defined paths | |
| Editor | |
| Change or reconfigure editor extensions | |
| Styling | |
| No hardcoded styling | |
| TypeScript | |
| Prefer const and let over var | |
| Prefer async/await over Promise | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Obsidian Plugin Settings | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Getting started | |
| Guides | |
| User interface | |
| [About user interface](https://docs.obsidian.md/Plugins/User+interface/About+user+interface) | |
| [Commands](https://docs.obsidian.md/Plugins/User+interface/Commands) | |
| [Context menus](https://docs.obsidian.md/Plugins/User+interface/Context+menus) | |
| [HTML elements](https://docs.obsidian.md/Plugins/User+interface/HTML+elements) | |
| [Icons](https://docs.obsidian.md/Plugins/User+interface/Icons) | |
| [Modals](https://docs.obsidian.md/Plugins/User+interface/Modals) | |
| [Ribbon actions](https://docs.obsidian.md/Plugins/User+interface/Ribbon+actions) | |
| [Right-to-left](https://docs.obsidian.md/Plugins/User+interface/Right-to-left) | |
| [Settings](https://docs.obsidian.md/Plugins/User+interface/Settings) | |
| [Status bar](https://docs.obsidian.md/Plugins/User+interface/Status+bar) | |
| [Views](https://docs.obsidian.md/Plugins/User+interface/Views) | |
| [Workspace](https://docs.obsidian.md/Plugins/User+interface/Workspace) | |
| Editor | |
| Releasing | |
| [Events](https://docs.obsidian.md/Plugins/Events) | |
| [Vault](https://docs.obsidian.md/Plugins/Vault) | |
| Themes | |
| Reference | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # Settings | |
| If you want users to be able to configure parts of your plugin themselves, you can expose them as _settings_. | |
| In this guide, you'll learn how to create a settings page like this 👇 | |
|  | |
| The main reason to add settings to a plugin is to store configuration that persists even after the user quits Obsidian. The following example demonstrates how to save and load settings from disk: | |
| ```ts is-loaded | |
| import { Plugin } from 'obsidian'; | |
| import { ExampleSettingTab } from './settings'; | |
| interface ExamplePluginSettings { | |
| dateFormat: string; | |
| } | |
| const DEFAULT_SETTINGS: Partial<ExamplePluginSettings> = { | |
| dateFormat: 'YYYY-MM-DD', | |
| }; | |
| export default class ExamplePlugin extends Plugin { | |
| settings: ExamplePluginSettings; | |
| async onload() { | |
| await this.loadSettings(); | |
| this.addSettingTab(new ExampleSettingTab(this.app, this)); | |
| } | |
| async loadSettings() { | |
| this.settings = Object.assign({}, DEFAULT_SETTINGS, await this.loadData()); | |
| } | |
| async saveSettings() { | |
| await this.saveData(this.settings); | |
| } | |
| } | |
| ``` | |
| Nested properties in settings | |
| `Object.assign()` copies the references to any nested property (shallow copy). If your settings object contains nested properties, you need to copy each nested property recursively (deep copy). Otherwise, any changes to a nested property will apply to all objects that were copied using `Object.assign()`. | |
| There's a lot going on here 🤯, so let's look closer at each part. | |
| ## Create a settings definition | |
| First, you need to create a definition, `ExamplePluginSettings`, for what settings you want the user to be able to configure. While the plugin is enabled, you can access the settings from the `settings` member variable. | |
| ```ts is-loaded | |
| interface ExamplePluginSettings { | |
| dateFormat: string; | |
| } | |
| export default class ExamplePlugin extends Plugin { | |
| settings: ExamplePluginSettings; | |
| // ... | |
| } | |
| ``` | |
| ## Save and load the settings object | |
| [loadData()](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/loadData) and [saveData()](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/saveData) provide an easy way to store and retrieve data from disk. The example also introduces two helper methods that makes it easier to use `loadData()` and `saveData()` from other parts of the plugin. | |
| ```ts is-loaded | |
| export default class ExamplePlugin extends Plugin { | |
| // ... | |
| async loadSettings() { | |
| this.settings = Object.assign({}, DEFAULT_SETTINGS, await this.loadData()); | |
| } | |
| async saveSettings() { | |
| await this.saveData(this.settings); | |
| } | |
| } | |
| ``` | |
| Finally, make sure to load the settings when the plugin loads: | |
| ```ts is-loaded | |
| async onload() { | |
| await this.loadSettings(); | |
| // ... | |
| } | |
| ``` | |
| ## Provide default values | |
| When the user enables the plugin for the first time, none of the settings have been configured yet. The preceding example provides default values for any missing settings. | |
| To understand how this work, let's look at the following code: | |
| ```ts is-loaded | |
| Object.assign({}, DEFAULT_SETTINGS, await this.loadData()) | |
| ``` | |
| `Object.assign()` is a JavaScript function that copies all properties from one object to another. Any properties that are returned by `loadData()` override the properties in `DEFAULT_SETTINGS`. | |
| ```ts is-loaded | |
| const DEFAULT_SETTINGS: Partial<ExamplePluginSettings> = { | |
| dateFormat: 'YYYY-MM-DD', | |
| }; | |
| ``` | |
| Tip | |
| `Partial<Type>` is a TypeScript utility that returns a type with all properties of `Type` set to optional. It enables type checking while letting you only define the properties you want to provide defaults for. | |
| ## Register a settings tab | |
| The plugin can now save and load plugin configuration, but the user doesn't yet have any way of changing any of the settings. By adding a settings tab you can provide an easy-to-use interface for the user to update their plugin settings: | |
| ```ts is-loaded | |
| this.addSettingTab(new ExampleSettingTab(this.app, this)); | |
| ``` | |
| Here, the `ExampleSettingTab` is a class that extends [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab): | |
| ```ts is-loaded | |
| import ExamplePlugin from './main'; | |
| import { App, PluginSettingTab, Setting } from 'obsidian'; | |
| export class ExampleSettingTab extends PluginSettingTab { | |
| plugin: ExamplePlugin; | |
| constructor(app: App, plugin: ExamplePlugin) { | |
| super(app, plugin); | |
| this.plugin = plugin; | |
| } | |
| display(): void { | |
| let { containerEl } = this; | |
| containerEl.empty(); | |
| new Setting(containerEl) | |
| .setName('Date format') | |
| .setDesc('Default date format') | |
| .addText((text) => | |
| text | |
| .setPlaceholder('MMMM dd, yyyy') | |
| .setValue(this.plugin.settings.dateFormat) | |
| .onChange(async (value) => { | |
| this.plugin.settings.dateFormat = value; | |
| await this.plugin.saveSettings(); | |
| }) | |
| ); | |
| } | |
| } | |
| ``` | |
| `display()` is where you build the content for the settings tab. For more information, refer to [HTML elements](https://docs.obsidian.md/Plugins/User+interface/HTML+elements). | |
| `new Setting(containerEl)` appends a setting to the container element. This example uses a text field using `addText()`, but there are several other setting types available. | |
| Update the settings object whenever the value of the text field changes, and then save it to disk: | |
| ```ts is-loaded | |
| .onChange(async (value) => { | |
| this.plugin.settings.dateFormat = value; | |
| await this.plugin.saveSettings(); | |
| }) | |
| ``` | |
| Nice work! 💪 Your users will thank you for giving them a way to customize how they interact with your plugin. Before heading to the next guide, experiment with what you've learned by adding another setting. | |
| Links to this page | |
| [HTML elements](https://docs.obsidian.md/Plugins/User+interface/HTML+elements) | |
| Settings | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| Create a settings definition | |
| Save and load the settings object | |
| Provide default values | |
| Register a settings tab | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Obsidian Commands Guide | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Getting started | |
| Guides | |
| User interface | |
| [About user interface](https://docs.obsidian.md/Plugins/User+interface/About+user+interface) | |
| [Commands](https://docs.obsidian.md/Plugins/User+interface/Commands) | |
| [Context menus](https://docs.obsidian.md/Plugins/User+interface/Context+menus) | |
| [HTML elements](https://docs.obsidian.md/Plugins/User+interface/HTML+elements) | |
| [Icons](https://docs.obsidian.md/Plugins/User+interface/Icons) | |
| [Modals](https://docs.obsidian.md/Plugins/User+interface/Modals) | |
| [Ribbon actions](https://docs.obsidian.md/Plugins/User+interface/Ribbon+actions) | |
| [Right-to-left](https://docs.obsidian.md/Plugins/User+interface/Right-to-left) | |
| [Settings](https://docs.obsidian.md/Plugins/User+interface/Settings) | |
| [Status bar](https://docs.obsidian.md/Plugins/User+interface/Status+bar) | |
| [Views](https://docs.obsidian.md/Plugins/User+interface/Views) | |
| [Workspace](https://docs.obsidian.md/Plugins/User+interface/Workspace) | |
| Editor | |
| Releasing | |
| [Events](https://docs.obsidian.md/Plugins/Events) | |
| [Vault](https://docs.obsidian.md/Plugins/Vault) | |
| Themes | |
| Reference | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # Commands | |
| Commands are actions that the user can perform from the [Command Palette](https://help.obsidian.md/Plugins/Command+palette) or by using a hot key. | |
|  | |
| To register a new command for your plugin, call the [addCommand()](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/addCommand) method inside the `onload()` method: | |
| ```ts is-loaded | |
| import { Plugin } from 'obsidian'; | |
| export default class ExamplePlugin extends Plugin { | |
| async onload() { | |
| this.addCommand({ | |
| id: 'print-greeting-to-console', | |
| name: 'Print greeting to console', | |
| callback: () => { | |
| console.log('Hey, you!'); | |
| }, | |
| }); | |
| } | |
| } | |
| ``` | |
| ## Conditional commands | |
| If your command is only able to run under certain conditions, then consider using [checkCallback()](https://docs.obsidian.md/Reference/TypeScript+API/Command/checkCallback) instead. | |
| The `checkCallback` runs twice. First, to perform a preliminary check to determine whether the command can run. Second, to perform the action. | |
| Since time may pass between the two runs, you need to perform the check during both calls. | |
| To determine whether the callback should perform a preliminary check or an action, a `checking` argument is passed to the callback. | |
| - If `checking` is set to `true`, perform a preliminary check. | |
| - If `checking` is set to `false`, perform an action. | |
| The command in the following example depends on a required value. In both runs, the callback checks that the value is present but only performs the action if `checking` is `false`. | |
| ```ts is-loaded | |
| this.addCommand({ | |
| id: 'example-command', | |
| name: 'Example command', | |
| // highlight-next-line | |
| checkCallback: (checking: boolean) => { | |
| const value = getRequiredValue(); | |
| if (value) { | |
| if (!checking) { | |
| doCommand(value); | |
| } | |
| return true | |
| } | |
| return false; | |
| }, | |
| }); | |
| ``` | |
| ## Editor commands | |
| If your command needs access to the editor, you can also use the [editorCallback()](https://docs.obsidian.md/Reference/TypeScript+API/Command/editorCallback), which provides the active editor and its view as arguments. | |
| ```ts is-loaded | |
| this.addCommand({ | |
| id: 'example-command', | |
| name: 'Example command', | |
| editorCallback: (editor: Editor, view: MarkdownView) => { | |
| const sel = editor.getSelection() | |
| console.log(`You have selected: ${sel}`); | |
| }, | |
| } | |
| ``` | |
| Note | |
| Editor commands only appear in the Command Palette when there's an active editor available. | |
| If the editor callback can only run given under certain conditions, consider using the [editorCheckCallback()](https://docs.obsidian.md/Reference/TypeScript+API/Command/editorCheckCallback) instead. For more information, refer to [Conditional commands](https://docs.obsidian.md/Plugins/User+interface/Commands#Conditional%20commands). | |
| ```ts is-loaded | |
| this.addCommand({ | |
| id: 'example-command', | |
| name: 'Example command', | |
| editorCheckCallback: (checking: boolean, editor: Editor, view: MarkdownView) => { | |
| const value = getRequiredValue(); | |
| if (value) { | |
| if (!checking) { | |
| doCommand(value); | |
| } | |
| return true | |
| } | |
| return false; | |
| }, | |
| }); | |
| ``` | |
| ## Hot keys | |
| The user can run commands using a keyboard shortcut, or _hot key_. While they can configure this themselves, you can also provide a default hot key. | |
| Warning | |
| Avoid setting default hot keys for plugins that you intend for others to use. Hot keys are highly likely to conflict with those defined by other plugins or by the user themselves. | |
| In this example, the user can run the command by pressing and holding Ctrl (or Cmd on Mac) and Shift together, and then pressing the letter `a` on their keyboard. | |
| ```ts is-loaded | |
| this.addCommand({ | |
| id: 'example-command', | |
| name: 'Example command', | |
| hotkeys: [{ modifiers: ['Mod', 'Shift'], key: 'a' }], | |
| callback: () => { | |
| console.log('Hey, you!'); | |
| }, | |
| }); | |
| ``` | |
| Note | |
| The Mod key is a special modifier key that becomes Ctrl on Windows and Linux, and Cmd on macOS. | |
| Links to this page | |
| [Communicating with editor extensions](https://docs.obsidian.md/Plugins/Editor/Communicating+with+editor+extensions) | |
| [Editor](https://docs.obsidian.md/Plugins/Editor/Editor) | |
| [Ribbon actions](https://docs.obsidian.md/Plugins/User+interface/Ribbon+actions) | |
| Commands | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| Conditional commands | |
| Editor commands | |
| Hot keys | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Obsidian Workspace API | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| AbstractInputSuggest | |
| AbstractTextComponent | |
| App | |
| BaseComponent | |
| BlockCache | |
| BlockSubpathResult | |
| ButtonComponent | |
| CachedMetadata | |
| CacheItem | |
| CapacitorAdapter | |
| CloseableComponent | |
| ColorComponent | |
| Command | |
| Component | |
| DataAdapter | |
| DataWriteOptions | |
| Debouncer | |
| DropdownComponent | |
| Editor | |
| EditorChange | |
| EditorPosition | |
| EditorRange | |
| EditorRangeOrCaret | |
| EditorScrollInfo | |
| EditorSelection | |
| EditorSelectionOrCaret | |
| EditorSuggest | |
| EditorSuggestContext | |
| EditorSuggestTriggerInfo | |
| EditorTransaction | |
| Events | |
| ExtraButtonComponent | |
| FileManager | |
| FileStats | |
| FileSystemAdapter | |
| FileView | |
| FootnoteCache | |
| FootnoteRefCache | |
| FootnoteSubpathResult | |
| FrontMatterInfo | |
| FrontmatterLinkCache | |
| FuzzyMatch | |
| FuzzySuggestModal | |
| HeadingCache | |
| HeadingSubpathResult | |
| Hotkey | |
| HoverLinkSource | |
| HoverParent | |
| HoverPopover | |
| HSL | |
| Instruction | |
| ISuggestOwner | |
| ItemView | |
| Keymap | |
| KeymapContext | |
| KeymapEventHandler | |
| KeymapInfo | |
| ListedFiles | |
| ListItemCache | |
| LivePreviewStateType | |
| Loc | |
| MarkdownEditView | |
| MarkdownFileInfo | |
| MarkdownPostProcessor | |
| MarkdownPostProcessorContext | |
| MarkdownPreviewRenderer | |
| MarkdownPreviewView | |
| MarkdownRenderChild | |
| MarkdownRenderer | |
| MarkdownSectionInformation | |
| MarkdownSubView | |
| MarkdownView | |
| Menu | |
| MenuItem | |
| MenuPositionDef | |
| MetadataCache | |
| Modal | |
| MomentFormatComponent | |
| Notice | |
| ObsidianProtocolData | |
| OpenViewState | |
| Plugin | |
| PluginManifest | |
| PluginSettingTab | |
| Point | |
| PopoverSuggest | |
| Pos | |
| ProgressBarComponent | |
| Reference | |
| ReferenceLinkCache | |
| RequestUrlParam | |
| RequestUrlResponse | |
| RequestUrlResponsePromise | |
| RGB | |
| Scope | |
| SearchComponent | |
| SearchResult | |
| SearchResultContainer | |
| SectionCache | |
| Setting | |
| SettingTab | |
| SliderComponent | |
| Stat | |
| SubpathResult | |
| SuggestModal | |
| TAbstractFile | |
| TagCache | |
| Tasks | |
| TextAreaComponent | |
| TextComponent | |
| TextFileView | |
| TFile | |
| TFolder | |
| ToggleComponent | |
| TooltipOptions | |
| ValueComponent | |
| Vault | |
| View | |
| ViewState | |
| ViewStateResult | |
| Workspace | |
| WorkspaceContainer | |
| WorkspaceFloating | |
| WorkspaceItem | |
| WorkspaceLeaf | |
| WorkspaceMobileDrawer | |
| WorkspaceRoot | |
| WorkspaceSidedock | |
| WorkspaceSplit | |
| WorkspaceTabs | |
| WorkspaceWindow | |
| WorkspaceWindowInitData | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) | |
| [addIcon](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) | |
| [apiVersion](https://docs.obsidian.md/Reference/TypeScript+API/apiVersion) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [arrayBufferToBase64](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToBase64) | |
| [arrayBufferToHex](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToHex) | |
| [base64ToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/base64ToArrayBuffer) | |
| [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent) | |
| [BlockCache](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) | |
| [BlockSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/BlockSubpathResult) | |
| [ButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ButtonComponent) | |
| [CachedMetadata](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| [CacheItem](https://docs.obsidian.md/Reference/TypeScript+API/CacheItem) | |
| [CapacitorAdapter](https://docs.obsidian.md/Reference/TypeScript+API/CapacitorAdapter) | |
| [CloseableComponent](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| [ColorComponent](https://docs.obsidian.md/Reference/TypeScript+API/ColorComponent) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| [Constructor](https://docs.obsidian.md/Reference/TypeScript+API/Constructor) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [DataWriteOptions](https://docs.obsidian.md/Reference/TypeScript+API/DataWriteOptions) | |
| [debounce](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| [Debouncer](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) | |
| [displayTooltip](https://docs.obsidian.md/Reference/TypeScript+API/displayTooltip) | |
| [DropdownComponent](https://docs.obsidian.md/Reference/TypeScript+API/DropdownComponent) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| [EditorChange](https://docs.obsidian.md/Reference/TypeScript+API/EditorChange) | |
| [EditorCommandName](https://docs.obsidian.md/Reference/TypeScript+API/EditorCommandName) | |
| [editorEditorField](https://docs.obsidian.md/Reference/TypeScript+API/editorEditorField) | |
| [editorInfoField](https://docs.obsidian.md/Reference/TypeScript+API/editorInfoField) | |
| [editorLivePreviewField](https://docs.obsidian.md/Reference/TypeScript+API/editorLivePreviewField) | |
| [EditorPosition](https://docs.obsidian.md/Reference/TypeScript+API/EditorPosition) | |
| [EditorRange](https://docs.obsidian.md/Reference/TypeScript+API/EditorRange) | |
| [EditorRangeOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorRangeOrCaret) | |
| [EditorScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorScrollInfo) | |
| [EditorSelection](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelection) | |
| [EditorSelectionOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelectionOrCaret) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [EditorSuggestTriggerInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestTriggerInfo) | |
| [EditorTransaction](https://docs.obsidian.md/Reference/TypeScript+API/EditorTransaction) | |
| [editorViewField](https://docs.obsidian.md/Reference/TypeScript+API/editorViewField) | |
| [EmbedCache](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) | |
| [EventRef](https://docs.obsidian.md/Reference/TypeScript+API/EventRef) | |
| [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| [ExtraButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ExtraButtonComponent) | |
| [FileManager](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | |
| [FileStats](https://docs.obsidian.md/Reference/TypeScript+API/FileStats) | |
| [FileSystemAdapter](https://docs.obsidian.md/Reference/TypeScript+API/FileSystemAdapter) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [finishRenderMath](https://docs.obsidian.md/Reference/TypeScript+API/finishRenderMath) | |
| [FootnoteCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) | |
| [FootnoteRefCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) | |
| [FootnoteSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteSubpathResult) | |
| [FrontMatterCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | |
| [FrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterInfo) | |
| [FrontmatterLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) | |
| [FuzzyMatch](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getBlobArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/getBlobArrayBuffer) | |
| [getFrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/getFrontMatterInfo) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/getIcon) | |
| [getIconIds](https://docs.obsidian.md/Reference/TypeScript+API/getIconIds) | |
| [getLanguage](https://docs.obsidian.md/Reference/TypeScript+API/getLanguage) | |
| [getLinkpath](https://docs.obsidian.md/Reference/TypeScript+API/getLinkpath) | |
| [HeadingCache](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) | |
| [HeadingSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/HeadingSubpathResult) | |
| [HexString](https://docs.obsidian.md/Reference/TypeScript+API/HexString) | |
| [hexToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/hexToArrayBuffer) | |
| [Hotkey](https://docs.obsidian.md/Reference/TypeScript+API/Hotkey) | |
| [HoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/HoverLinkSource) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [HSL](https://docs.obsidian.md/Reference/TypeScript+API/HSL) | |
| [htmlToMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/htmlToMarkdown) | |
| [IconName](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Instruction](https://docs.obsidian.md/Reference/TypeScript+API/Instruction) | |
| [ISuggestOwner](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [iterateRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateRefs) | |
| [Keymap](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | |
| [KeymapContext](https://docs.obsidian.md/Reference/TypeScript+API/KeymapContext) | |
| [KeymapEventHandler](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventHandler) | |
| [KeymapEventListener](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventListener) | |
| [KeymapInfo](https://docs.obsidian.md/Reference/TypeScript+API/KeymapInfo) | |
| [LinkCache](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) | |
| [ListedFiles](https://docs.obsidian.md/Reference/TypeScript+API/ListedFiles) | |
| [ListItemCache](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) | |
| [livePreviewState](https://docs.obsidian.md/Reference/TypeScript+API/livePreviewState) | |
| [LivePreviewStateType](https://docs.obsidian.md/Reference/TypeScript+API/LivePreviewStateType) | |
| [loadMathJax](https://docs.obsidian.md/Reference/TypeScript+API/loadMathJax) | |
| [loadMermaid](https://docs.obsidian.md/Reference/TypeScript+API/loadMermaid) | |
| [loadPdfJs](https://docs.obsidian.md/Reference/TypeScript+API/loadPdfJs) | |
| [loadPrism](https://docs.obsidian.md/Reference/TypeScript+API/loadPrism) | |
| [Loc](https://docs.obsidian.md/Reference/TypeScript+API/Loc) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessor) | |
| [MarkdownPostProcessorContext](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext) | |
| [MarkdownPreviewEvents](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents) | |
| [MarkdownPreviewRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewRenderer) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownSectionInformation](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSectionInformation) | |
| [MarkdownSubView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSubView) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [MarkdownViewModeType](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownViewModeType) | |
| [Menu](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| [MenuItem](https://docs.obsidian.md/Reference/TypeScript+API/MenuItem) | |
| [MenuPositionDef](https://docs.obsidian.md/Reference/TypeScript+API/MenuPositionDef) | |
| [MenuSeparator](https://docs.obsidian.md/Reference/TypeScript+API/MenuSeparator) | |
| [MetadataCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | |
| [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| [Modifier](https://docs.obsidian.md/Reference/TypeScript+API/Modifier) | |
| [moment](https://docs.obsidian.md/Reference/TypeScript+API/moment) | |
| [MomentFormatComponent](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent) | |
| [normalizePath](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath) | |
| [Notice](https://docs.obsidian.md/Reference/TypeScript+API/Notice) | |
| [ObsidianProtocolData](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolData) | |
| [ObsidianProtocolHandler](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolHandler) | |
| [OpenViewState](https://docs.obsidian.md/Reference/TypeScript+API/OpenViewState) | |
| [PaneType](https://docs.obsidian.md/Reference/TypeScript+API/PaneType) | |
| [parseFrontMatterAliases](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterAliases) | |
| [parseFrontMatterEntry](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterEntry) | |
| [parseFrontMatterStringArray](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterStringArray) | |
| [parseFrontMatterTags](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterTags) | |
| [parseLinktext](https://docs.obsidian.md/Reference/TypeScript+API/parseLinktext) | |
| [parseYaml](https://docs.obsidian.md/Reference/TypeScript+API/parseYaml) | |
| [Platform](https://docs.obsidian.md/Reference/TypeScript+API/Platform) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [PluginManifest](https://docs.obsidian.md/Reference/TypeScript+API/PluginManifest) | |
| [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab) | |
| [Point](https://docs.obsidian.md/Reference/TypeScript+API/Point) | |
| [PopoverState](https://docs.obsidian.md/Reference/TypeScript+API/PopoverState) | |
| [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) | |
| [Pos](https://docs.obsidian.md/Reference/TypeScript+API/Pos) | |
| [prepareFuzzySearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareFuzzySearch) | |
| [prepareSimpleSearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareSimpleSearch) | |
| [ProgressBarComponent](https://docs.obsidian.md/Reference/TypeScript+API/ProgressBarComponent) | |
| [Reference](https://docs.obsidian.md/Reference/TypeScript+API/Reference) | |
| [ReferenceCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceCache) | |
| [ReferenceLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceLinkCache) | |
| [removeIcon](https://docs.obsidian.md/Reference/TypeScript+API/removeIcon) | |
| [renderMatches](https://docs.obsidian.md/Reference/TypeScript+API/renderMatches) | |
| [renderMath](https://docs.obsidian.md/Reference/TypeScript+API/renderMath) | |
| [renderResults](https://docs.obsidian.md/Reference/TypeScript+API/renderResults) | |
| [request](https://docs.obsidian.md/Reference/TypeScript+API/request) | |
| [requestUrl](https://docs.obsidian.md/Reference/TypeScript+API/requestUrl) | |
| [RequestUrlParam](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlParam) | |
| [RequestUrlResponse](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponse) | |
| [RequestUrlResponsePromise](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponsePromise) | |
| [requireApiVersion](https://docs.obsidian.md/Reference/TypeScript+API/requireApiVersion) | |
| [resolveSubpath](https://docs.obsidian.md/Reference/TypeScript+API/resolveSubpath) | |
| [RGB](https://docs.obsidian.md/Reference/TypeScript+API/RGB) | |
| [sanitizeHTMLToDom](https://docs.obsidian.md/Reference/TypeScript+API/sanitizeHTMLToDom) | |
| [Scope](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | |
| [SearchComponent](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent) | |
| [SearchMatches](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatches) | |
| [SearchMatchPart](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatchPart) | |
| [SearchResult](https://docs.obsidian.md/Reference/TypeScript+API/SearchResult) | |
| [SearchResultContainer](https://docs.obsidian.md/Reference/TypeScript+API/SearchResultContainer) | |
| [SectionCache](https://docs.obsidian.md/Reference/TypeScript+API/SectionCache) | |
| [setIcon](https://docs.obsidian.md/Reference/TypeScript+API/setIcon) | |
| [Setting](https://docs.obsidian.md/Reference/TypeScript+API/Setting) | |
| [SettingTab](https://docs.obsidian.md/Reference/TypeScript+API/SettingTab) | |
| [setTooltip](https://docs.obsidian.md/Reference/TypeScript+API/setTooltip) | |
| [Side](https://docs.obsidian.md/Reference/TypeScript+API/Side) | |
| [SliderComponent](https://docs.obsidian.md/Reference/TypeScript+API/SliderComponent) | |
| [sortSearchResults](https://docs.obsidian.md/Reference/TypeScript+API/sortSearchResults) | |
| [SplitDirection](https://docs.obsidian.md/Reference/TypeScript+API/SplitDirection) | |
| [Stat](https://docs.obsidian.md/Reference/TypeScript+API/Stat) | |
| [stringifyYaml](https://docs.obsidian.md/Reference/TypeScript+API/stringifyYaml) | |
| [stripHeading](https://docs.obsidian.md/Reference/TypeScript+API/stripHeading) | |
| [stripHeadingForLink](https://docs.obsidian.md/Reference/TypeScript+API/stripHeadingForLink) | |
| [SubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/SubpathResult) | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) | |
| [TagCache](https://docs.obsidian.md/Reference/TypeScript+API/TagCache) | |
| [Tasks](https://docs.obsidian.md/Reference/TypeScript+API/Tasks) | |
| [TextAreaComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextAreaComponent) | |
| [TextComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [TFile](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | |
| [TFolder](https://docs.obsidian.md/Reference/TypeScript+API/TFolder) | |
| [ToggleComponent](https://docs.obsidian.md/Reference/TypeScript+API/ToggleComponent) | |
| [TooltipOptions](https://docs.obsidian.md/Reference/TypeScript+API/TooltipOptions) | |
| [TooltipPlacement](https://docs.obsidian.md/Reference/TypeScript+API/TooltipPlacement) | |
| [UserEvent](https://docs.obsidian.md/Reference/TypeScript+API/UserEvent) | |
| [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent) | |
| [Vault](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [ViewState](https://docs.obsidian.md/Reference/TypeScript+API/ViewState) | |
| [ViewStateResult](https://docs.obsidian.md/Reference/TypeScript+API/ViewStateResult) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| [WorkspaceContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| [WorkspaceFloating](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceFloating) | |
| [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| [WorkspaceMobileDrawer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | |
| [WorkspaceParent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | |
| [WorkspaceRibbon](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | |
| [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | |
| [WorkspaceSidedock](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) | |
| [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) | |
| [WorkspaceTabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) | |
| [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow) | |
| [WorkspaceWindowInitData](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindowInitData) | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # Workspace | |
| ```yaml is-loaded | |
| aliases: "Workspace" | |
| cssclasses: hide-title | |
| ``` | |
| [`Workspace`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| ## Workspace class | |
| **Signature:** | |
| ```typescript is-loaded | |
| export class Workspace extends Events | |
| ``` | |
| **Extends:** [`Events`](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| ## Properties | |
| | Property | Modifiers | Type | Description | | |
| | --- | --- | --- | --- | | |
| | [`activeEditor`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/activeEditor) | | [`MarkdownFileInfo`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) ` | null` | A component managing the current editor. This can be null if the active view has no editor. | | |
| | [`activeLeaf`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/activeLeaf) | | [`WorkspaceLeaf`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) ` | null` | Indicates the currently focused leaf, if one exists.<br>Please avoid using `activeLeaf` directly, especially without checking whether `activeLeaf` is null. | | |
| | [`containerEl`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/containerEl) | | `HTMLElement` | | | |
| | [`layoutReady`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/layoutReady) | | `boolean` | If the layout of the app has been successfully initialized. To react to the layout becoming ready, use [Workspace.onLayoutReady()](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/onLayoutReady) | | |
| | [`leftRibbon`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/leftRibbon) | | [`WorkspaceRibbon`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | | | |
| | [`leftSplit`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/leftSplit) | | [`WorkspaceSidedock`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) ` | ` [`WorkspaceMobileDrawer`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | | | |
| | [`requestSaveLayout`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/requestSaveLayout) | | [`Debouncer`](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) `<[], ` `Promise` `<void>>` | Save the state of the current workspace layout. | | |
| | [`rightRibbon`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/rightRibbon) | | [`WorkspaceRibbon`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | | | |
| | [`rightSplit`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/rightSplit) | | [`WorkspaceSidedock`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) ` | ` [`WorkspaceMobileDrawer`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | | | |
| | [`rootSplit`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/rootSplit) | | [`WorkspaceRoot`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | | | |
| ## Methods | |
| | Method | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`changeLayout(workspace)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/changeLayout) | | | | |
| | [`createLeafBySplit(leaf, direction, before)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/createLeafBySplit) | | | | |
| | [`createLeafInParent(parent, index)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/createLeafInParent) | | | | |
| | [`detachLeavesOfType(viewType)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/detachLeavesOfType) | | Remove all leaves of the given type. | | |
| | [`duplicateLeaf(leaf, direction)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/duplicateLeaf) | | | | |
| | [`duplicateLeaf(leaf, leafType, direction)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/duplicateLeaf_1) | | | | |
| | [`ensureSideLeaf(type, side, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/ensureSideLeaf) | | Get side leaf or create one if one does not exist. | | |
| | [`getActiveFile()`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getActiveFile) | | Returns the file for the current view if it's a `FileView`. Otherwise, it will return the most recently active file. | | |
| | [`getActiveViewOfType(type)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getActiveViewOfType) | | Get the currently active view of a given type. | | |
| | [`getGroupLeaves(group)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getGroupLeaves) | | Get all leaves that belong to a group | | |
| | [`getLastOpenFiles()`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getLastOpenFiles) | | Get the filenames of the 10 most recently opened files. | | |
| | [`getLayout()`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getLayout) | | | | |
| | [`getLeaf(newLeaf, direction)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getLeaf('split')) | | Creates a new leaf in a leaf adjacent to the currently active leaf. If direction is `'vertical'`, the leaf will appear to the right. If direction is `'horizontal'`, the leaf will appear below the current leaf. | | |
| | [`getLeaf(newLeaf)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getLeaf_1) | | If newLeaf is false (or not set) then an existing leaf which can be navigated is returned, or a new leaf will be created if there was no leaf available.<br>If newLeaf is `'tab'` or `true` then a new leaf will be created in the preferred location within the root split and returned.<br>If newLeaf is `'split'` then a new leaf will be created adjacent to the currently active leaf.<br>If newLeaf is `'window'` then a popout window will be created with a new leaf inside. | | |
| | [`getLeafById(id)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getLeafById) | | Retrieve a leaf by its id. | | |
| | [`getLeavesOfType(viewType)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getLeavesOfType) | | Get all leaves of a given type. | | |
| | [`getLeftLeaf(split)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getLeftLeaf) | | Create a new leaf inside the left sidebar. | | |
| | [`getMostRecentLeaf(root)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getMostRecentLeaf) | | Get the most recently active leaf in a given workspace root. Useful for interacting with the leaf in the root split while a sidebar leaf might be active. | | |
| | [`getRightLeaf(split)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getRightLeaf) | | Create a new leaf inside the right sidebar. | | |
| | [`getUnpinnedLeaf()`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getUnpinnedLeaf) | | | | |
| | [`iterateAllLeaves(callback)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/iterateAllLeaves) | | Iterate through all leaves, including main area leaves, floating leaves, and sidebar leaves. | | |
| | [`iterateRootLeaves(callback)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/iterateRootLeaves) | | Iterate through all leaves in the main area of the workspace. | | |
| | [`moveLeafToPopout(leaf, data)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/moveLeafToPopout) | | Migrates this leaf to a new popout window. Only works on the desktop app. | | |
| | [`off(name, callback)`](https://docs.obsidian.md/Reference/TypeScript+API/Events/off) | | (Inherited from [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events)) | | |
| | [`offref(ref)`](https://docs.obsidian.md/Reference/TypeScript+API/Events/offref) | | (Inherited from [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events)) | | |
| | [`on(name: 'quick-preview', callback, ctx)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('quick-preview')) | | Triggered when the active Markdown file is modified. React to file changes before they are saved to disk. | | |
| | [`on(name: 'files-menu', callback, ctx)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('files-menu')) | | Triggered when the user opens the context menu with multiple files selected in the File Explorer. | | |
| | [`on(name: 'url-menu', callback, ctx)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('url-menu')) | | Triggered when the user opens the context menu on an external URL. | | |
| | [`on(name: 'editor-menu', callback, ctx)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('editor-menu')) | | Triggered when the user opens the context menu on an editor. | | |
| | [`on(name: 'editor-change', callback, ctx)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('editor-change')) | | Triggered when changes to an editor has been applied, either programmatically or from a user event. | | |
| | [`on(name: 'editor-paste', callback, ctx)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('editor-paste')) | | Triggered when the editor receives a paste event. Check for `evt.defaultPrevented` before attempting to handle this event, and return if it has been already handled. Use `evt.preventDefault()` to indicate that you've handled the event. | | |
| | [`on(name: 'editor-drop', callback, ctx)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('editor-drop')) | | Triggered when the editor receives a drop event. Check for `evt.defaultPrevented` before attempting to handle this event, and return if it has been already handled. Use `evt.preventDefault()` to indicate that you've handled the event. | | |
| | [`on(name: 'quit', callback, ctx)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('quit')) | | Triggered when the app is about to quit. Not guaranteed to actually run. Perform some best effort cleanup here. | | |
| | [`on(name: 'resize', callback, ctx)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('resize')) | | Triggered when a `WorkspaceItem` is resized or the workspace layout has changed. | | |
| | [`on(name: 'active-leaf-change', callback, ctx)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('active-leaf-change')) | | Triggered when the active leaf changes. | | |
| | [`on(name: 'file-open', callback, ctx)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('file-open')) | | Triggered when the active file changes. The file could be in a new leaf, an existing leaf, or an embed. | | |
| | [`on(name: 'layout-change', callback, ctx)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('layout-change')) | | | | |
| | [`on(name: 'window-open', callback, ctx)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('window-open')) | | Triggered when a new popout window is created. | | |
| | [`on(name: 'window-close', callback, ctx)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('window-close')) | | Triggered when a popout window is closed. | | |
| | [`on(name: 'css-change', callback, ctx)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('css-change')) | | Triggered when the CSS of the app has changed. | | |
| | [`on(name: 'file-menu', callback, ctx)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('file-menu')) | | Triggered when the user opens the context menu on a file. | | |
| | [`onLayoutReady(callback)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/onLayoutReady) | | Runs the callback function right away if layout is already ready, or push it to a queue to be called later when layout is ready. | | |
| | [`openLinkText(linktext, sourcePath, newLeaf, openViewState)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/openLinkText) | | | | |
| | [`openPopoutLeaf(data)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/openPopoutLeaf) | | Open a new popout window with a single new leaf and return that leaf. Only works on the desktop app. | | |
| | [`revealLeaf(leaf)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/revealLeaf) | | Bring a given leaf to the foreground. If the leaf is in a sidebar, the sidebar will be uncollapsed. `await` this function to ensure your view has been fully loaded and is not deferred. | | |
| | [`setActiveLeaf(leaf, params)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/setActiveLeaf) | | Sets the active leaf | | |
| | [`setActiveLeaf(leaf, pushHistory, focus)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/setActiveLeaf_1) | | | | |
| | [`splitActiveLeaf(direction)`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/splitActiveLeaf) | | | | |
| | [`trigger(name, data)`](https://docs.obsidian.md/Reference/TypeScript+API/Events/trigger) | | (Inherited from [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events)) | | |
| | [`tryTrigger(evt, args)`](https://docs.obsidian.md/Reference/TypeScript+API/Events/tryTrigger) | | (Inherited from [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events)) | | |
| | [`updateOptions()`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/updateOptions) | | Calling this function will update/reconfigure the options of all Markdown views. It is fairly expensive, so it should not be called frequently. | | |
| Links to this page | |
| [activeEditor](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/activeEditor) | |
| [activeLeaf](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/activeLeaf) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [changeLayout](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/changeLayout) | |
| [containerEl](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/containerEl) | |
| [createLeafBySplit](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/createLeafBySplit) | |
| [createLeafInParent](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/createLeafInParent) | |
| [detachLeavesOfType](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/detachLeavesOfType) | |
| [duplicateLeaf](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/duplicateLeaf) | |
| [duplicateLeaf\_1](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/duplicateLeaf_1) | |
| [ensureSideLeaf](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/ensureSideLeaf) | |
| [getActiveFile](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getActiveFile) | |
| [getActiveViewOfType](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getActiveViewOfType) | |
| [getGroupLeaves](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getGroupLeaves) | |
| [getLastOpenFiles](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getLastOpenFiles) | |
| [getLayout](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getLayout) | |
| [getLeaf\_1](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getLeaf_1) | |
| [getLeaf('split')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getLeaf('split')) | |
| [getLeafById](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getLeafById) | |
| [getLeavesOfType](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getLeavesOfType) | |
| [getLeftLeaf](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getLeftLeaf) | |
| [getMostRecentLeaf](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getMostRecentLeaf) | |
| [getRightLeaf](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getRightLeaf) | |
| [getUnpinnedLeaf](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getUnpinnedLeaf) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [iterateAllLeaves](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/iterateAllLeaves) | |
| [iterateRootLeaves](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/iterateRootLeaves) | |
| [layoutReady](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/layoutReady) | |
| [leftRibbon](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/leftRibbon) | |
| [leftSplit](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/leftSplit) | |
| [moveLeafToPopout](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/moveLeafToPopout) | |
| [on('active-leaf-change')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('active-leaf-change')) | |
| [on('css-change')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('css-change')) | |
| [on('editor-change')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('editor-change')) | |
| [on('editor-drop')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('editor-drop')) | |
| [on('editor-menu')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('editor-menu')) | |
| [on('editor-paste')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('editor-paste')) | |
| [on('file-menu')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('file-menu')) | |
| [on('file-open')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('file-open')) | |
| [on('files-menu')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('files-menu')) | |
| [on('layout-change')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('layout-change')) | |
| [on('quick-preview')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('quick-preview')) | |
| [on('quit')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('quit')) | |
| [on('resize')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('resize')) | |
| [on('url-menu')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('url-menu')) | |
| [on('window-close')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('window-close')) | |
| [on('window-open')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('window-open')) | |
| [onLayoutReady](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/onLayoutReady) | |
| [openLinkText](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/openLinkText) | |
| [openPopoutLeaf](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/openPopoutLeaf) | |
| [requestSaveLayout](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/requestSaveLayout) | |
| [revealLeaf](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/revealLeaf) | |
| [rightRibbon](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/rightRibbon) | |
| [rightSplit](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/rightSplit) | |
| [rootSplit](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/rootSplit) | |
| [setActiveLeaf](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/setActiveLeaf) | |
| [setActiveLeaf\_1](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/setActiveLeaf_1) | |
| [splitActiveLeaf](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/splitActiveLeaf) | |
| [updateOptions](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/updateOptions) | |
| [Workspace](https://docs.obsidian.md/Plugins/User+interface/Workspace) | |
| Workspace | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| Workspace class | |
| Properties | |
| Methods | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## State Fields Overview | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Getting started | |
| Guides | |
| User interface | |
| Editor | |
| [Editor](https://docs.obsidian.md/Plugins/Editor/Editor) | |
| [Markdown post processing](https://docs.obsidian.md/Plugins/Editor/Markdown+post+processing) | |
| [Editor extensions](https://docs.obsidian.md/Plugins/Editor/Editor+extensions) | |
| [Decorations](https://docs.obsidian.md/Plugins/Editor/Decorations) | |
| [State fields](https://docs.obsidian.md/Plugins/Editor/State+fields) | |
| [State management](https://docs.obsidian.md/Plugins/Editor/State+management) | |
| [View plugins](https://docs.obsidian.md/Plugins/Editor/View+plugins) | |
| [Viewport](https://docs.obsidian.md/Plugins/Editor/Viewport) | |
| [Communicating with editor extensions](https://docs.obsidian.md/Plugins/Editor/Communicating+with+editor+extensions) | |
| Releasing | |
| [Events](https://docs.obsidian.md/Plugins/Events) | |
| [Vault](https://docs.obsidian.md/Plugins/Vault) | |
| Themes | |
| Reference | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # State fields | |
| A state field is an [editor extension](https://docs.obsidian.md/Plugins/Editor/Editor+extensions) that lets you manage custom editor state. This page walks you through building a state field by implementing a calculator extension. | |
| The calculator should be able to add and subtract a number from the current state, and to reset the state when you want to start over. | |
| By the end of this page, you'll understand the basic concepts of building a state field. | |
| Note | |
| This page aims to distill the official CodeMirror 6 documentation for Obsidian plugin developers. For more detailed information on state fields, refer to [State Fields](https://codemirror.net/docs/guide/#state-fields). | |
| ## Prerequisites | |
| - Basic understanding of [State management](https://docs.obsidian.md/Plugins/Editor/State+management). | |
| ## Defining state effects | |
| State effects describe the state change you'd like to make. You may think of them as methods on a class. | |
| In the calculator example, you'd define a state effect for each of the calculator operations: | |
| ```ts is-loaded | |
| const addEffect = StateEffect.define<number>(); | |
| const subtractEffect = StateEffect.define<number>(); | |
| const resetEffect = StateEffect.define(); | |
| ``` | |
| The type between the angle brackets, `<>`, defines the input type for the effect. For example, the number you want to add or subtract. The reset effect doesn't need any input, so you can leave it out. | |
| ## Defining a state field | |
| Contrary to what one might think, state fields don't actually _store_ state. They _manage_ it. State fields take the current state, applies any state effects, and returns the new state. | |
| The state field contains the calculator logic to apply the mathematical operations depending on the effects in a transaction. Since a transaction can contain multiple effects, for example two additions, the state field needs to apply them all one after another. | |
| ```ts is-loaded | |
| export const calculatorField = StateField.define<number>({ | |
| create(state: EditorState): number { | |
| return 0; | |
| }, | |
| update(oldState: number, transaction: Transaction): number { | |
| let newState = oldState; | |
| for (let effect of transaction.effects) { | |
| if (effect.is(addEffect)) { | |
| newState += effect.value; | |
| } else if (effect.is(subtractEffect)) { | |
| newState -= effect.value; | |
| } else if (effect.is(resetEffect)) { | |
| newState = 0; | |
| } | |
| } | |
| return newState; | |
| }, | |
| }); | |
| ``` | |
| - `create` returns the value the calculator starts with. | |
| - `update` contains the logic for applying the effects. | |
| - `effect.is()` lets you check the type of the effect before you apply it. | |
| ## Dispatching state effects | |
| To apply a state effect to a state field, you need to dispatch it to the editor view as part of a transaction. | |
| ```ts is-loaded | |
| view.dispatch({ | |
| effects: [addEffect.of(num)], | |
| }); | |
| ``` | |
| You can even define a set of helper functions that provide a more familiar API: | |
| ```ts is-loaded | |
| export function add(view: EditorView, num: number) { | |
| view.dispatch({ | |
| effects: [addEffect.of(num)], | |
| }); | |
| } | |
| export function subtract(view: EditorView, num: number) { | |
| view.dispatch({ | |
| effects: [subtractEffect.of(num)], | |
| }); | |
| } | |
| export function reset(view: EditorView) { | |
| view.dispatch({ | |
| effects: [resetEffect.of(null)], | |
| }); | |
| } | |
| ``` | |
| ## Next steps | |
| Provide [Decorations](https://docs.obsidian.md/Plugins/Editor/Decorations) from your state fields to change how to display the document. | |
| Links to this page | |
| [Communicating with editor extensions](https://docs.obsidian.md/Plugins/Editor/Communicating+with+editor+extensions) | |
| [Decorations](https://docs.obsidian.md/Plugins/Editor/Decorations) | |
| [Editor extensions](https://docs.obsidian.md/Plugins/Editor/Editor+extensions) | |
| [State management](https://docs.obsidian.md/Plugins/Editor/State+management) | |
| [View plugins](https://docs.obsidian.md/Plugins/Editor/View+plugins) | |
| State fields | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| Prerequisites | |
| Defining state effects | |
| Defining a state field | |
| Dispatching state effects | |
| Next steps | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## TextFileView Class | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| AbstractInputSuggest | |
| AbstractTextComponent | |
| App | |
| BaseComponent | |
| BlockCache | |
| BlockSubpathResult | |
| ButtonComponent | |
| CachedMetadata | |
| CacheItem | |
| CapacitorAdapter | |
| CloseableComponent | |
| ColorComponent | |
| Command | |
| Component | |
| DataAdapter | |
| DataWriteOptions | |
| Debouncer | |
| DropdownComponent | |
| Editor | |
| EditorChange | |
| EditorPosition | |
| EditorRange | |
| EditorRangeOrCaret | |
| EditorScrollInfo | |
| EditorSelection | |
| EditorSelectionOrCaret | |
| EditorSuggest | |
| EditorSuggestContext | |
| EditorSuggestTriggerInfo | |
| EditorTransaction | |
| Events | |
| ExtraButtonComponent | |
| FileManager | |
| FileStats | |
| FileSystemAdapter | |
| FileView | |
| FootnoteCache | |
| FootnoteRefCache | |
| FootnoteSubpathResult | |
| FrontMatterInfo | |
| FrontmatterLinkCache | |
| FuzzyMatch | |
| FuzzySuggestModal | |
| HeadingCache | |
| HeadingSubpathResult | |
| Hotkey | |
| HoverLinkSource | |
| HoverParent | |
| HoverPopover | |
| HSL | |
| Instruction | |
| ISuggestOwner | |
| ItemView | |
| Keymap | |
| KeymapContext | |
| KeymapEventHandler | |
| KeymapInfo | |
| ListedFiles | |
| ListItemCache | |
| LivePreviewStateType | |
| Loc | |
| MarkdownEditView | |
| MarkdownFileInfo | |
| MarkdownPostProcessor | |
| MarkdownPostProcessorContext | |
| MarkdownPreviewRenderer | |
| MarkdownPreviewView | |
| MarkdownRenderChild | |
| MarkdownRenderer | |
| MarkdownSectionInformation | |
| MarkdownSubView | |
| MarkdownView | |
| Menu | |
| MenuItem | |
| MenuPositionDef | |
| MetadataCache | |
| Modal | |
| MomentFormatComponent | |
| Notice | |
| ObsidianProtocolData | |
| OpenViewState | |
| Plugin | |
| PluginManifest | |
| PluginSettingTab | |
| Point | |
| PopoverSuggest | |
| Pos | |
| ProgressBarComponent | |
| Reference | |
| ReferenceLinkCache | |
| RequestUrlParam | |
| RequestUrlResponse | |
| RequestUrlResponsePromise | |
| RGB | |
| Scope | |
| SearchComponent | |
| SearchResult | |
| SearchResultContainer | |
| SectionCache | |
| Setting | |
| SettingTab | |
| SliderComponent | |
| Stat | |
| SubpathResult | |
| SuggestModal | |
| TAbstractFile | |
| TagCache | |
| Tasks | |
| TextAreaComponent | |
| TextComponent | |
| TextFileView | |
| TFile | |
| TFolder | |
| ToggleComponent | |
| TooltipOptions | |
| ValueComponent | |
| Vault | |
| View | |
| ViewState | |
| ViewStateResult | |
| Workspace | |
| WorkspaceContainer | |
| WorkspaceFloating | |
| WorkspaceItem | |
| WorkspaceLeaf | |
| WorkspaceMobileDrawer | |
| WorkspaceRoot | |
| WorkspaceSidedock | |
| WorkspaceSplit | |
| WorkspaceTabs | |
| WorkspaceWindow | |
| WorkspaceWindowInitData | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) | |
| [addIcon](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) | |
| [apiVersion](https://docs.obsidian.md/Reference/TypeScript+API/apiVersion) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [arrayBufferToBase64](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToBase64) | |
| [arrayBufferToHex](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToHex) | |
| [base64ToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/base64ToArrayBuffer) | |
| [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent) | |
| [BlockCache](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) | |
| [BlockSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/BlockSubpathResult) | |
| [ButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ButtonComponent) | |
| [CachedMetadata](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| [CacheItem](https://docs.obsidian.md/Reference/TypeScript+API/CacheItem) | |
| [CapacitorAdapter](https://docs.obsidian.md/Reference/TypeScript+API/CapacitorAdapter) | |
| [CloseableComponent](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| [ColorComponent](https://docs.obsidian.md/Reference/TypeScript+API/ColorComponent) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| [Constructor](https://docs.obsidian.md/Reference/TypeScript+API/Constructor) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [DataWriteOptions](https://docs.obsidian.md/Reference/TypeScript+API/DataWriteOptions) | |
| [debounce](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| [Debouncer](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) | |
| [displayTooltip](https://docs.obsidian.md/Reference/TypeScript+API/displayTooltip) | |
| [DropdownComponent](https://docs.obsidian.md/Reference/TypeScript+API/DropdownComponent) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| [EditorChange](https://docs.obsidian.md/Reference/TypeScript+API/EditorChange) | |
| [EditorCommandName](https://docs.obsidian.md/Reference/TypeScript+API/EditorCommandName) | |
| [editorEditorField](https://docs.obsidian.md/Reference/TypeScript+API/editorEditorField) | |
| [editorInfoField](https://docs.obsidian.md/Reference/TypeScript+API/editorInfoField) | |
| [editorLivePreviewField](https://docs.obsidian.md/Reference/TypeScript+API/editorLivePreviewField) | |
| [EditorPosition](https://docs.obsidian.md/Reference/TypeScript+API/EditorPosition) | |
| [EditorRange](https://docs.obsidian.md/Reference/TypeScript+API/EditorRange) | |
| [EditorRangeOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorRangeOrCaret) | |
| [EditorScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorScrollInfo) | |
| [EditorSelection](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelection) | |
| [EditorSelectionOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelectionOrCaret) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [EditorSuggestTriggerInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestTriggerInfo) | |
| [EditorTransaction](https://docs.obsidian.md/Reference/TypeScript+API/EditorTransaction) | |
| [editorViewField](https://docs.obsidian.md/Reference/TypeScript+API/editorViewField) | |
| [EmbedCache](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) | |
| [EventRef](https://docs.obsidian.md/Reference/TypeScript+API/EventRef) | |
| [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| [ExtraButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ExtraButtonComponent) | |
| [FileManager](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | |
| [FileStats](https://docs.obsidian.md/Reference/TypeScript+API/FileStats) | |
| [FileSystemAdapter](https://docs.obsidian.md/Reference/TypeScript+API/FileSystemAdapter) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [finishRenderMath](https://docs.obsidian.md/Reference/TypeScript+API/finishRenderMath) | |
| [FootnoteCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) | |
| [FootnoteRefCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) | |
| [FootnoteSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteSubpathResult) | |
| [FrontMatterCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | |
| [FrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterInfo) | |
| [FrontmatterLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) | |
| [FuzzyMatch](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getBlobArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/getBlobArrayBuffer) | |
| [getFrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/getFrontMatterInfo) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/getIcon) | |
| [getIconIds](https://docs.obsidian.md/Reference/TypeScript+API/getIconIds) | |
| [getLanguage](https://docs.obsidian.md/Reference/TypeScript+API/getLanguage) | |
| [getLinkpath](https://docs.obsidian.md/Reference/TypeScript+API/getLinkpath) | |
| [HeadingCache](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) | |
| [HeadingSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/HeadingSubpathResult) | |
| [HexString](https://docs.obsidian.md/Reference/TypeScript+API/HexString) | |
| [hexToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/hexToArrayBuffer) | |
| [Hotkey](https://docs.obsidian.md/Reference/TypeScript+API/Hotkey) | |
| [HoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/HoverLinkSource) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [HSL](https://docs.obsidian.md/Reference/TypeScript+API/HSL) | |
| [htmlToMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/htmlToMarkdown) | |
| [IconName](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Instruction](https://docs.obsidian.md/Reference/TypeScript+API/Instruction) | |
| [ISuggestOwner](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [iterateRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateRefs) | |
| [Keymap](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | |
| [KeymapContext](https://docs.obsidian.md/Reference/TypeScript+API/KeymapContext) | |
| [KeymapEventHandler](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventHandler) | |
| [KeymapEventListener](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventListener) | |
| [KeymapInfo](https://docs.obsidian.md/Reference/TypeScript+API/KeymapInfo) | |
| [LinkCache](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) | |
| [ListedFiles](https://docs.obsidian.md/Reference/TypeScript+API/ListedFiles) | |
| [ListItemCache](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) | |
| [livePreviewState](https://docs.obsidian.md/Reference/TypeScript+API/livePreviewState) | |
| [LivePreviewStateType](https://docs.obsidian.md/Reference/TypeScript+API/LivePreviewStateType) | |
| [loadMathJax](https://docs.obsidian.md/Reference/TypeScript+API/loadMathJax) | |
| [loadMermaid](https://docs.obsidian.md/Reference/TypeScript+API/loadMermaid) | |
| [loadPdfJs](https://docs.obsidian.md/Reference/TypeScript+API/loadPdfJs) | |
| [loadPrism](https://docs.obsidian.md/Reference/TypeScript+API/loadPrism) | |
| [Loc](https://docs.obsidian.md/Reference/TypeScript+API/Loc) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessor) | |
| [MarkdownPostProcessorContext](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext) | |
| [MarkdownPreviewEvents](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents) | |
| [MarkdownPreviewRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewRenderer) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownSectionInformation](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSectionInformation) | |
| [MarkdownSubView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSubView) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [MarkdownViewModeType](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownViewModeType) | |
| [Menu](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| [MenuItem](https://docs.obsidian.md/Reference/TypeScript+API/MenuItem) | |
| [MenuPositionDef](https://docs.obsidian.md/Reference/TypeScript+API/MenuPositionDef) | |
| [MenuSeparator](https://docs.obsidian.md/Reference/TypeScript+API/MenuSeparator) | |
| [MetadataCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | |
| [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| [Modifier](https://docs.obsidian.md/Reference/TypeScript+API/Modifier) | |
| [moment](https://docs.obsidian.md/Reference/TypeScript+API/moment) | |
| [MomentFormatComponent](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent) | |
| [normalizePath](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath) | |
| [Notice](https://docs.obsidian.md/Reference/TypeScript+API/Notice) | |
| [ObsidianProtocolData](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolData) | |
| [ObsidianProtocolHandler](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolHandler) | |
| [OpenViewState](https://docs.obsidian.md/Reference/TypeScript+API/OpenViewState) | |
| [PaneType](https://docs.obsidian.md/Reference/TypeScript+API/PaneType) | |
| [parseFrontMatterAliases](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterAliases) | |
| [parseFrontMatterEntry](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterEntry) | |
| [parseFrontMatterStringArray](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterStringArray) | |
| [parseFrontMatterTags](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterTags) | |
| [parseLinktext](https://docs.obsidian.md/Reference/TypeScript+API/parseLinktext) | |
| [parseYaml](https://docs.obsidian.md/Reference/TypeScript+API/parseYaml) | |
| [Platform](https://docs.obsidian.md/Reference/TypeScript+API/Platform) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [PluginManifest](https://docs.obsidian.md/Reference/TypeScript+API/PluginManifest) | |
| [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab) | |
| [Point](https://docs.obsidian.md/Reference/TypeScript+API/Point) | |
| [PopoverState](https://docs.obsidian.md/Reference/TypeScript+API/PopoverState) | |
| [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) | |
| [Pos](https://docs.obsidian.md/Reference/TypeScript+API/Pos) | |
| [prepareFuzzySearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareFuzzySearch) | |
| [prepareSimpleSearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareSimpleSearch) | |
| [ProgressBarComponent](https://docs.obsidian.md/Reference/TypeScript+API/ProgressBarComponent) | |
| [Reference](https://docs.obsidian.md/Reference/TypeScript+API/Reference) | |
| [ReferenceCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceCache) | |
| [ReferenceLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceLinkCache) | |
| [removeIcon](https://docs.obsidian.md/Reference/TypeScript+API/removeIcon) | |
| [renderMatches](https://docs.obsidian.md/Reference/TypeScript+API/renderMatches) | |
| [renderMath](https://docs.obsidian.md/Reference/TypeScript+API/renderMath) | |
| [renderResults](https://docs.obsidian.md/Reference/TypeScript+API/renderResults) | |
| [request](https://docs.obsidian.md/Reference/TypeScript+API/request) | |
| [requestUrl](https://docs.obsidian.md/Reference/TypeScript+API/requestUrl) | |
| [RequestUrlParam](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlParam) | |
| [RequestUrlResponse](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponse) | |
| [RequestUrlResponsePromise](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponsePromise) | |
| [requireApiVersion](https://docs.obsidian.md/Reference/TypeScript+API/requireApiVersion) | |
| [resolveSubpath](https://docs.obsidian.md/Reference/TypeScript+API/resolveSubpath) | |
| [RGB](https://docs.obsidian.md/Reference/TypeScript+API/RGB) | |
| [sanitizeHTMLToDom](https://docs.obsidian.md/Reference/TypeScript+API/sanitizeHTMLToDom) | |
| [Scope](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | |
| [SearchComponent](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent) | |
| [SearchMatches](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatches) | |
| [SearchMatchPart](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatchPart) | |
| [SearchResult](https://docs.obsidian.md/Reference/TypeScript+API/SearchResult) | |
| [SearchResultContainer](https://docs.obsidian.md/Reference/TypeScript+API/SearchResultContainer) | |
| [SectionCache](https://docs.obsidian.md/Reference/TypeScript+API/SectionCache) | |
| [setIcon](https://docs.obsidian.md/Reference/TypeScript+API/setIcon) | |
| [Setting](https://docs.obsidian.md/Reference/TypeScript+API/Setting) | |
| [SettingTab](https://docs.obsidian.md/Reference/TypeScript+API/SettingTab) | |
| [setTooltip](https://docs.obsidian.md/Reference/TypeScript+API/setTooltip) | |
| [Side](https://docs.obsidian.md/Reference/TypeScript+API/Side) | |
| [SliderComponent](https://docs.obsidian.md/Reference/TypeScript+API/SliderComponent) | |
| [sortSearchResults](https://docs.obsidian.md/Reference/TypeScript+API/sortSearchResults) | |
| [SplitDirection](https://docs.obsidian.md/Reference/TypeScript+API/SplitDirection) | |
| [Stat](https://docs.obsidian.md/Reference/TypeScript+API/Stat) | |
| [stringifyYaml](https://docs.obsidian.md/Reference/TypeScript+API/stringifyYaml) | |
| [stripHeading](https://docs.obsidian.md/Reference/TypeScript+API/stripHeading) | |
| [stripHeadingForLink](https://docs.obsidian.md/Reference/TypeScript+API/stripHeadingForLink) | |
| [SubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/SubpathResult) | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) | |
| [TagCache](https://docs.obsidian.md/Reference/TypeScript+API/TagCache) | |
| [Tasks](https://docs.obsidian.md/Reference/TypeScript+API/Tasks) | |
| [TextAreaComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextAreaComponent) | |
| [TextComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [TFile](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | |
| [TFolder](https://docs.obsidian.md/Reference/TypeScript+API/TFolder) | |
| [ToggleComponent](https://docs.obsidian.md/Reference/TypeScript+API/ToggleComponent) | |
| [TooltipOptions](https://docs.obsidian.md/Reference/TypeScript+API/TooltipOptions) | |
| [TooltipPlacement](https://docs.obsidian.md/Reference/TypeScript+API/TooltipPlacement) | |
| [UserEvent](https://docs.obsidian.md/Reference/TypeScript+API/UserEvent) | |
| [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent) | |
| [Vault](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [ViewState](https://docs.obsidian.md/Reference/TypeScript+API/ViewState) | |
| [ViewStateResult](https://docs.obsidian.md/Reference/TypeScript+API/ViewStateResult) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| [WorkspaceContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| [WorkspaceFloating](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceFloating) | |
| [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| [WorkspaceMobileDrawer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | |
| [WorkspaceParent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | |
| [WorkspaceRibbon](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | |
| [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | |
| [WorkspaceSidedock](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) | |
| [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) | |
| [WorkspaceTabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) | |
| [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow) | |
| [WorkspaceWindowInitData](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindowInitData) | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # TextFileView | |
| ```yaml is-loaded | |
| aliases: "TextFileView" | |
| cssclasses: hide-title | |
| ``` | |
| [`TextFileView`](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| ## TextFileView class | |
| This class implements a plaintext-based editable file view, which can be loaded and saved given an editor. | |
| Note that by default, this view only saves when it's closing. To implement auto-save, your editor should call `this.requestSave()` when the content is changed. | |
| **Signature:** | |
| ```typescript is-loaded | |
| export abstract class TextFileView extends EditableFileView | |
| ``` | |
| **Extends:** [`EditableFileView`](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| ## Constructors | |
| | Constructor | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`(constructor)(leaf)`](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView/(constructor)) | | Constructs a new instance of the `TextFileView` class | | |
| ## Properties | |
| | Property | Modifiers | Type | Description | | |
| | --- | --- | --- | --- | | |
| | [`allowNoFile`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/allowNoFile) | | `boolean` | (Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| | [`app`](https://docs.obsidian.md/Reference/TypeScript+API/View/app) | | [`App`](https://docs.obsidian.md/Reference/TypeScript+API/App) | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`containerEl`](https://docs.obsidian.md/Reference/TypeScript+API/View/containerEl) | | `HTMLElement` | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`contentEl`](https://docs.obsidian.md/Reference/TypeScript+API/ItemView/contentEl) | | `HTMLElement` | (Inherited from [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView)) | | |
| | [`data`](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView/data) | | `string` | In memory data | | |
| | [`file`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/file) | | [`TFile`](https://docs.obsidian.md/Reference/TypeScript+API/TFile) ` | null` | (Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| | [`icon`](https://docs.obsidian.md/Reference/TypeScript+API/View/icon) | | [`IconName`](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`leaf`](https://docs.obsidian.md/Reference/TypeScript+API/View/leaf) | | [`WorkspaceLeaf`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`navigation`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/navigation) | | `boolean` | File views can be navigated by default. <br>(Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| | [`requestSave`](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView/requestSave) | | `() => void` | Debounced save in 2 seconds from now | | |
| | [`scope`](https://docs.obsidian.md/Reference/TypeScript+API/View/scope) | | [`Scope`](https://docs.obsidian.md/Reference/TypeScript+API/Scope) ` | null` | Assign an optional scope to your view to register hotkeys for when the view is in focus.<br>(Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| ## Methods | |
| | Method | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`addAction(icon, title, callback)`](https://docs.obsidian.md/Reference/TypeScript+API/ItemView/addAction) | | (Inherited from [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView)) | | |
| | [`addChild(component)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/addChild) | | Adds a child component, loading it if this component is loaded<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`canAcceptExtension(extension)`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/canAcceptExtension) | | (Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| | [`clear()`](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView/clear) | `abstract` | Clear the editor. This is usually called when we're about to open a completely different file, so it's best to clear any editor states like undo-redo history, and any caches/indexes associated with the previous file contents. | | |
| | [`getDisplayText()`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/getDisplayText) | | (Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| | [`getEphemeralState()`](https://docs.obsidian.md/Reference/TypeScript+API/View/getEphemeralState) | | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`getIcon()`](https://docs.obsidian.md/Reference/TypeScript+API/View/getIcon) | | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`getState()`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/getState) | | (Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| | [`getViewData()`](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView/getViewData) | `abstract` | Gets the data from the editor. This will be called to save the editor contents to the file. | | |
| | [`getViewType()`](https://docs.obsidian.md/Reference/TypeScript+API/View/getViewType) | `abstract` | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`load()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/load) | | Load this component and its children<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`onClose()`](https://docs.obsidian.md/Reference/TypeScript+API/View/onClose) | `protected` | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`onload()`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/onload) | | (Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| | [`onLoadFile(file)`](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView/onLoadFile) | | | | |
| | [`onOpen()`](https://docs.obsidian.md/Reference/TypeScript+API/View/onOpen) | `protected` | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`onPaneMenu(menu, source)`](https://docs.obsidian.md/Reference/TypeScript+API/View/onPaneMenu) | | Populates the pane menu.<br>(Replaces the previously removed `onHeaderMenu` and `onMoreOptionsMenu`)<br>(Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`onRename(file)`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/onRename) | | (Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| | [`onResize()`](https://docs.obsidian.md/Reference/TypeScript+API/View/onResize) | | Called when the size of this view is changed.<br>(Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`onunload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/onunload) | | Override this to unload your component<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`onUnloadFile(file)`](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView/onUnloadFile) | | | | |
| | [`register(cb)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/register) | | Registers a callback to be called when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent_1) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent_2) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerEvent(eventRef)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerEvent) | | Registers an event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerInterval(id)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerInterval) | | Registers an interval (from setInterval) to be cancelled when unloading Use instead of to avoid TypeScript confusing between NodeJS vs Browser API<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`removeChild(component)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/removeChild) | | Removes a child component, unloading it<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`save(clear)`](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView/save) | | | | |
| | [`setEphemeralState(state)`](https://docs.obsidian.md/Reference/TypeScript+API/View/setEphemeralState) | | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`setState(state, result)`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/setState) | | (Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| | [`setViewData(data, clear)`](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView/setViewData) | `abstract` | Set the data to the editor. This is used to load the file contents.<br>If clear is set, then it means we're opening a completely different file. In that case, you should call clear(), or implement a slightly more efficient clearing mechanism given the new data to be set. | | |
| | [`unload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/unload) | | Unload this component and its children<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| Links to this page | |
| [(constructor)](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView/(constructor)) | |
| [clear](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView/clear) | |
| [data](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView/data) | |
| [getViewData](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView/getViewData) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [onLoadFile](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView/onLoadFile) | |
| [onUnloadFile](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView/onUnloadFile) | |
| [requestSave](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView/requestSave) | |
| [save](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView/save) | |
| [setViewData](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView/setViewData) | |
| TextFileView | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| TextFileView class | |
| Constructors | |
| Properties | |
| Methods | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## MarkdownView Class Overview | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| AbstractInputSuggest | |
| AbstractTextComponent | |
| App | |
| BaseComponent | |
| BlockCache | |
| BlockSubpathResult | |
| ButtonComponent | |
| CachedMetadata | |
| CacheItem | |
| CapacitorAdapter | |
| CloseableComponent | |
| ColorComponent | |
| Command | |
| Component | |
| DataAdapter | |
| DataWriteOptions | |
| Debouncer | |
| DropdownComponent | |
| Editor | |
| EditorChange | |
| EditorPosition | |
| EditorRange | |
| EditorRangeOrCaret | |
| EditorScrollInfo | |
| EditorSelection | |
| EditorSelectionOrCaret | |
| EditorSuggest | |
| EditorSuggestContext | |
| EditorSuggestTriggerInfo | |
| EditorTransaction | |
| Events | |
| ExtraButtonComponent | |
| FileManager | |
| FileStats | |
| FileSystemAdapter | |
| FileView | |
| FootnoteCache | |
| FootnoteRefCache | |
| FootnoteSubpathResult | |
| FrontMatterInfo | |
| FrontmatterLinkCache | |
| FuzzyMatch | |
| FuzzySuggestModal | |
| HeadingCache | |
| HeadingSubpathResult | |
| Hotkey | |
| HoverLinkSource | |
| HoverParent | |
| HoverPopover | |
| HSL | |
| Instruction | |
| ISuggestOwner | |
| ItemView | |
| Keymap | |
| KeymapContext | |
| KeymapEventHandler | |
| KeymapInfo | |
| ListedFiles | |
| ListItemCache | |
| LivePreviewStateType | |
| Loc | |
| MarkdownEditView | |
| MarkdownFileInfo | |
| MarkdownPostProcessor | |
| MarkdownPostProcessorContext | |
| MarkdownPreviewRenderer | |
| MarkdownPreviewView | |
| MarkdownRenderChild | |
| MarkdownRenderer | |
| MarkdownSectionInformation | |
| MarkdownSubView | |
| MarkdownView | |
| Menu | |
| MenuItem | |
| MenuPositionDef | |
| MetadataCache | |
| Modal | |
| MomentFormatComponent | |
| Notice | |
| ObsidianProtocolData | |
| OpenViewState | |
| Plugin | |
| PluginManifest | |
| PluginSettingTab | |
| Point | |
| PopoverSuggest | |
| Pos | |
| ProgressBarComponent | |
| Reference | |
| ReferenceLinkCache | |
| RequestUrlParam | |
| RequestUrlResponse | |
| RequestUrlResponsePromise | |
| RGB | |
| Scope | |
| SearchComponent | |
| SearchResult | |
| SearchResultContainer | |
| SectionCache | |
| Setting | |
| SettingTab | |
| SliderComponent | |
| Stat | |
| SubpathResult | |
| SuggestModal | |
| TAbstractFile | |
| TagCache | |
| Tasks | |
| TextAreaComponent | |
| TextComponent | |
| TextFileView | |
| TFile | |
| TFolder | |
| ToggleComponent | |
| TooltipOptions | |
| ValueComponent | |
| Vault | |
| View | |
| ViewState | |
| ViewStateResult | |
| Workspace | |
| WorkspaceContainer | |
| WorkspaceFloating | |
| WorkspaceItem | |
| WorkspaceLeaf | |
| WorkspaceMobileDrawer | |
| WorkspaceRoot | |
| WorkspaceSidedock | |
| WorkspaceSplit | |
| WorkspaceTabs | |
| WorkspaceWindow | |
| WorkspaceWindowInitData | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) | |
| [addIcon](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) | |
| [apiVersion](https://docs.obsidian.md/Reference/TypeScript+API/apiVersion) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [arrayBufferToBase64](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToBase64) | |
| [arrayBufferToHex](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToHex) | |
| [base64ToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/base64ToArrayBuffer) | |
| [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent) | |
| [BlockCache](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) | |
| [BlockSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/BlockSubpathResult) | |
| [ButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ButtonComponent) | |
| [CachedMetadata](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| [CacheItem](https://docs.obsidian.md/Reference/TypeScript+API/CacheItem) | |
| [CapacitorAdapter](https://docs.obsidian.md/Reference/TypeScript+API/CapacitorAdapter) | |
| [CloseableComponent](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| [ColorComponent](https://docs.obsidian.md/Reference/TypeScript+API/ColorComponent) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| [Constructor](https://docs.obsidian.md/Reference/TypeScript+API/Constructor) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [DataWriteOptions](https://docs.obsidian.md/Reference/TypeScript+API/DataWriteOptions) | |
| [debounce](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| [Debouncer](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) | |
| [displayTooltip](https://docs.obsidian.md/Reference/TypeScript+API/displayTooltip) | |
| [DropdownComponent](https://docs.obsidian.md/Reference/TypeScript+API/DropdownComponent) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| [EditorChange](https://docs.obsidian.md/Reference/TypeScript+API/EditorChange) | |
| [EditorCommandName](https://docs.obsidian.md/Reference/TypeScript+API/EditorCommandName) | |
| [editorEditorField](https://docs.obsidian.md/Reference/TypeScript+API/editorEditorField) | |
| [editorInfoField](https://docs.obsidian.md/Reference/TypeScript+API/editorInfoField) | |
| [editorLivePreviewField](https://docs.obsidian.md/Reference/TypeScript+API/editorLivePreviewField) | |
| [EditorPosition](https://docs.obsidian.md/Reference/TypeScript+API/EditorPosition) | |
| [EditorRange](https://docs.obsidian.md/Reference/TypeScript+API/EditorRange) | |
| [EditorRangeOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorRangeOrCaret) | |
| [EditorScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorScrollInfo) | |
| [EditorSelection](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelection) | |
| [EditorSelectionOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelectionOrCaret) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [EditorSuggestTriggerInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestTriggerInfo) | |
| [EditorTransaction](https://docs.obsidian.md/Reference/TypeScript+API/EditorTransaction) | |
| [editorViewField](https://docs.obsidian.md/Reference/TypeScript+API/editorViewField) | |
| [EmbedCache](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) | |
| [EventRef](https://docs.obsidian.md/Reference/TypeScript+API/EventRef) | |
| [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| [ExtraButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ExtraButtonComponent) | |
| [FileManager](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | |
| [FileStats](https://docs.obsidian.md/Reference/TypeScript+API/FileStats) | |
| [FileSystemAdapter](https://docs.obsidian.md/Reference/TypeScript+API/FileSystemAdapter) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [finishRenderMath](https://docs.obsidian.md/Reference/TypeScript+API/finishRenderMath) | |
| [FootnoteCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) | |
| [FootnoteRefCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) | |
| [FootnoteSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteSubpathResult) | |
| [FrontMatterCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | |
| [FrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterInfo) | |
| [FrontmatterLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) | |
| [FuzzyMatch](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getBlobArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/getBlobArrayBuffer) | |
| [getFrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/getFrontMatterInfo) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/getIcon) | |
| [getIconIds](https://docs.obsidian.md/Reference/TypeScript+API/getIconIds) | |
| [getLanguage](https://docs.obsidian.md/Reference/TypeScript+API/getLanguage) | |
| [getLinkpath](https://docs.obsidian.md/Reference/TypeScript+API/getLinkpath) | |
| [HeadingCache](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) | |
| [HeadingSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/HeadingSubpathResult) | |
| [HexString](https://docs.obsidian.md/Reference/TypeScript+API/HexString) | |
| [hexToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/hexToArrayBuffer) | |
| [Hotkey](https://docs.obsidian.md/Reference/TypeScript+API/Hotkey) | |
| [HoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/HoverLinkSource) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [HSL](https://docs.obsidian.md/Reference/TypeScript+API/HSL) | |
| [htmlToMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/htmlToMarkdown) | |
| [IconName](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Instruction](https://docs.obsidian.md/Reference/TypeScript+API/Instruction) | |
| [ISuggestOwner](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [iterateRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateRefs) | |
| [Keymap](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | |
| [KeymapContext](https://docs.obsidian.md/Reference/TypeScript+API/KeymapContext) | |
| [KeymapEventHandler](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventHandler) | |
| [KeymapEventListener](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventListener) | |
| [KeymapInfo](https://docs.obsidian.md/Reference/TypeScript+API/KeymapInfo) | |
| [LinkCache](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) | |
| [ListedFiles](https://docs.obsidian.md/Reference/TypeScript+API/ListedFiles) | |
| [ListItemCache](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) | |
| [livePreviewState](https://docs.obsidian.md/Reference/TypeScript+API/livePreviewState) | |
| [LivePreviewStateType](https://docs.obsidian.md/Reference/TypeScript+API/LivePreviewStateType) | |
| [loadMathJax](https://docs.obsidian.md/Reference/TypeScript+API/loadMathJax) | |
| [loadMermaid](https://docs.obsidian.md/Reference/TypeScript+API/loadMermaid) | |
| [loadPdfJs](https://docs.obsidian.md/Reference/TypeScript+API/loadPdfJs) | |
| [loadPrism](https://docs.obsidian.md/Reference/TypeScript+API/loadPrism) | |
| [Loc](https://docs.obsidian.md/Reference/TypeScript+API/Loc) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessor) | |
| [MarkdownPostProcessorContext](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext) | |
| [MarkdownPreviewEvents](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents) | |
| [MarkdownPreviewRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewRenderer) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownSectionInformation](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSectionInformation) | |
| [MarkdownSubView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSubView) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [MarkdownViewModeType](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownViewModeType) | |
| [Menu](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| [MenuItem](https://docs.obsidian.md/Reference/TypeScript+API/MenuItem) | |
| [MenuPositionDef](https://docs.obsidian.md/Reference/TypeScript+API/MenuPositionDef) | |
| [MenuSeparator](https://docs.obsidian.md/Reference/TypeScript+API/MenuSeparator) | |
| [MetadataCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | |
| [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| [Modifier](https://docs.obsidian.md/Reference/TypeScript+API/Modifier) | |
| [moment](https://docs.obsidian.md/Reference/TypeScript+API/moment) | |
| [MomentFormatComponent](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent) | |
| [normalizePath](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath) | |
| [Notice](https://docs.obsidian.md/Reference/TypeScript+API/Notice) | |
| [ObsidianProtocolData](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolData) | |
| [ObsidianProtocolHandler](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolHandler) | |
| [OpenViewState](https://docs.obsidian.md/Reference/TypeScript+API/OpenViewState) | |
| [PaneType](https://docs.obsidian.md/Reference/TypeScript+API/PaneType) | |
| [parseFrontMatterAliases](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterAliases) | |
| [parseFrontMatterEntry](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterEntry) | |
| [parseFrontMatterStringArray](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterStringArray) | |
| [parseFrontMatterTags](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterTags) | |
| [parseLinktext](https://docs.obsidian.md/Reference/TypeScript+API/parseLinktext) | |
| [parseYaml](https://docs.obsidian.md/Reference/TypeScript+API/parseYaml) | |
| [Platform](https://docs.obsidian.md/Reference/TypeScript+API/Platform) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [PluginManifest](https://docs.obsidian.md/Reference/TypeScript+API/PluginManifest) | |
| [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab) | |
| [Point](https://docs.obsidian.md/Reference/TypeScript+API/Point) | |
| [PopoverState](https://docs.obsidian.md/Reference/TypeScript+API/PopoverState) | |
| [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) | |
| [Pos](https://docs.obsidian.md/Reference/TypeScript+API/Pos) | |
| [prepareFuzzySearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareFuzzySearch) | |
| [prepareSimpleSearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareSimpleSearch) | |
| [ProgressBarComponent](https://docs.obsidian.md/Reference/TypeScript+API/ProgressBarComponent) | |
| [Reference](https://docs.obsidian.md/Reference/TypeScript+API/Reference) | |
| [ReferenceCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceCache) | |
| [ReferenceLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceLinkCache) | |
| [removeIcon](https://docs.obsidian.md/Reference/TypeScript+API/removeIcon) | |
| [renderMatches](https://docs.obsidian.md/Reference/TypeScript+API/renderMatches) | |
| [renderMath](https://docs.obsidian.md/Reference/TypeScript+API/renderMath) | |
| [renderResults](https://docs.obsidian.md/Reference/TypeScript+API/renderResults) | |
| [request](https://docs.obsidian.md/Reference/TypeScript+API/request) | |
| [requestUrl](https://docs.obsidian.md/Reference/TypeScript+API/requestUrl) | |
| [RequestUrlParam](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlParam) | |
| [RequestUrlResponse](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponse) | |
| [RequestUrlResponsePromise](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponsePromise) | |
| [requireApiVersion](https://docs.obsidian.md/Reference/TypeScript+API/requireApiVersion) | |
| [resolveSubpath](https://docs.obsidian.md/Reference/TypeScript+API/resolveSubpath) | |
| [RGB](https://docs.obsidian.md/Reference/TypeScript+API/RGB) | |
| [sanitizeHTMLToDom](https://docs.obsidian.md/Reference/TypeScript+API/sanitizeHTMLToDom) | |
| [Scope](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | |
| [SearchComponent](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent) | |
| [SearchMatches](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatches) | |
| [SearchMatchPart](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatchPart) | |
| [SearchResult](https://docs.obsidian.md/Reference/TypeScript+API/SearchResult) | |
| [SearchResultContainer](https://docs.obsidian.md/Reference/TypeScript+API/SearchResultContainer) | |
| [SectionCache](https://docs.obsidian.md/Reference/TypeScript+API/SectionCache) | |
| [setIcon](https://docs.obsidian.md/Reference/TypeScript+API/setIcon) | |
| [Setting](https://docs.obsidian.md/Reference/TypeScript+API/Setting) | |
| [SettingTab](https://docs.obsidian.md/Reference/TypeScript+API/SettingTab) | |
| [setTooltip](https://docs.obsidian.md/Reference/TypeScript+API/setTooltip) | |
| [Side](https://docs.obsidian.md/Reference/TypeScript+API/Side) | |
| [SliderComponent](https://docs.obsidian.md/Reference/TypeScript+API/SliderComponent) | |
| [sortSearchResults](https://docs.obsidian.md/Reference/TypeScript+API/sortSearchResults) | |
| [SplitDirection](https://docs.obsidian.md/Reference/TypeScript+API/SplitDirection) | |
| [Stat](https://docs.obsidian.md/Reference/TypeScript+API/Stat) | |
| [stringifyYaml](https://docs.obsidian.md/Reference/TypeScript+API/stringifyYaml) | |
| [stripHeading](https://docs.obsidian.md/Reference/TypeScript+API/stripHeading) | |
| [stripHeadingForLink](https://docs.obsidian.md/Reference/TypeScript+API/stripHeadingForLink) | |
| [SubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/SubpathResult) | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) | |
| [TagCache](https://docs.obsidian.md/Reference/TypeScript+API/TagCache) | |
| [Tasks](https://docs.obsidian.md/Reference/TypeScript+API/Tasks) | |
| [TextAreaComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextAreaComponent) | |
| [TextComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [TFile](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | |
| [TFolder](https://docs.obsidian.md/Reference/TypeScript+API/TFolder) | |
| [ToggleComponent](https://docs.obsidian.md/Reference/TypeScript+API/ToggleComponent) | |
| [TooltipOptions](https://docs.obsidian.md/Reference/TypeScript+API/TooltipOptions) | |
| [TooltipPlacement](https://docs.obsidian.md/Reference/TypeScript+API/TooltipPlacement) | |
| [UserEvent](https://docs.obsidian.md/Reference/TypeScript+API/UserEvent) | |
| [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent) | |
| [Vault](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [ViewState](https://docs.obsidian.md/Reference/TypeScript+API/ViewState) | |
| [ViewStateResult](https://docs.obsidian.md/Reference/TypeScript+API/ViewStateResult) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| [WorkspaceContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| [WorkspaceFloating](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceFloating) | |
| [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| [WorkspaceMobileDrawer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | |
| [WorkspaceParent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | |
| [WorkspaceRibbon](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | |
| [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | |
| [WorkspaceSidedock](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) | |
| [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) | |
| [WorkspaceTabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) | |
| [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow) | |
| [WorkspaceWindowInitData](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindowInitData) | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # MarkdownView | |
| ```yaml is-loaded | |
| aliases: "MarkdownView" | |
| cssclasses: hide-title | |
| ``` | |
| [`MarkdownView`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| ## MarkdownView class | |
| **Signature:** | |
| ```typescript is-loaded | |
| export class MarkdownView extends TextFileView implements MarkdownFileInfo | |
| ``` | |
| **Extends:** [`TextFileView`](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| **Implements:** [`MarkdownFileInfo`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| ## Constructors | |
| | Constructor | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`(constructor)(leaf)`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView/(constructor)) | | Constructs a new instance of the `MarkdownView` class | | |
| ## Properties | |
| | Property | Modifiers | Type | Description | | |
| | --- | --- | --- | --- | | |
| | [`allowNoFile`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/allowNoFile) | | `boolean` | (Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| | [`app`](https://docs.obsidian.md/Reference/TypeScript+API/View/app) | | [`App`](https://docs.obsidian.md/Reference/TypeScript+API/App) | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`containerEl`](https://docs.obsidian.md/Reference/TypeScript+API/View/containerEl) | | `HTMLElement` | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`contentEl`](https://docs.obsidian.md/Reference/TypeScript+API/ItemView/contentEl) | | `HTMLElement` | (Inherited from [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView)) | | |
| | [`currentMode`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView/currentMode) | | [`MarkdownSubView`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSubView) | | | |
| | [`data`](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView/data) | | `string` | In memory data<br>(Inherited from [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView)) | | |
| | [`editor`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView/editor) | | [`Editor`](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | | | |
| | [`file`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/file) | | [`TFile`](https://docs.obsidian.md/Reference/TypeScript+API/TFile) ` | null` | (Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| | [`hoverPopover`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView/hoverPopover) | | [`HoverPopover`](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) ` | null` | | | |
| | [`icon`](https://docs.obsidian.md/Reference/TypeScript+API/View/icon) | | [`IconName`](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`leaf`](https://docs.obsidian.md/Reference/TypeScript+API/View/leaf) | | [`WorkspaceLeaf`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`navigation`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/navigation) | | `boolean` | File views can be navigated by default. <br>(Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| | [`previewMode`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView/previewMode) | | [`MarkdownPreviewView`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | | | |
| | [`requestSave`](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView/requestSave) | | `() => void` | Debounced save in 2 seconds from now<br>(Inherited from [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView)) | | |
| | [`scope`](https://docs.obsidian.md/Reference/TypeScript+API/View/scope) | | [`Scope`](https://docs.obsidian.md/Reference/TypeScript+API/Scope) ` | null` | Assign an optional scope to your view to register hotkeys for when the view is in focus.<br>(Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| ## Methods | |
| | Method | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`addAction(icon, title, callback)`](https://docs.obsidian.md/Reference/TypeScript+API/ItemView/addAction) | | (Inherited from [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView)) | | |
| | [`addChild(component)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/addChild) | | Adds a child component, loading it if this component is loaded<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`canAcceptExtension(extension)`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/canAcceptExtension) | | (Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| | [`clear()`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView/clear) | | | | |
| | [`getDisplayText()`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/getDisplayText) | | (Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| | [`getEphemeralState()`](https://docs.obsidian.md/Reference/TypeScript+API/View/getEphemeralState) | | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`getIcon()`](https://docs.obsidian.md/Reference/TypeScript+API/View/getIcon) | | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`getMode()`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView/getMode) | | | | |
| | [`getState()`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/getState) | | (Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| | [`getViewData()`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView/getViewData) | | | | |
| | [`getViewType()`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView/getViewType) | | | | |
| | [`load()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/load) | | Load this component and its children<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`onClose()`](https://docs.obsidian.md/Reference/TypeScript+API/View/onClose) | `protected` | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`onload()`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/onload) | | (Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| | [`onLoadFile(file)`](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView/onLoadFile) | | (Inherited from [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView)) | | |
| | [`onOpen()`](https://docs.obsidian.md/Reference/TypeScript+API/View/onOpen) | `protected` | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`onPaneMenu(menu, source)`](https://docs.obsidian.md/Reference/TypeScript+API/View/onPaneMenu) | | Populates the pane menu.<br>(Replaces the previously removed `onHeaderMenu` and `onMoreOptionsMenu`)<br>(Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`onRename(file)`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/onRename) | | (Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| | [`onResize()`](https://docs.obsidian.md/Reference/TypeScript+API/View/onResize) | | Called when the size of this view is changed.<br>(Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`onunload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/onunload) | | Override this to unload your component<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`onUnloadFile(file)`](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView/onUnloadFile) | | (Inherited from [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView)) | | |
| | [`register(cb)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/register) | | Registers a callback to be called when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent_1) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent_2) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerEvent(eventRef)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerEvent) | | Registers an event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerInterval(id)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerInterval) | | Registers an interval (from setInterval) to be cancelled when unloading Use instead of to avoid TypeScript confusing between NodeJS vs Browser API<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`removeChild(component)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/removeChild) | | Removes a child component, unloading it<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`save(clear)`](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView/save) | | (Inherited from [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView)) | | |
| | [`setEphemeralState(state)`](https://docs.obsidian.md/Reference/TypeScript+API/View/setEphemeralState) | | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`setState(state, result)`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/setState) | | (Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| | [`setViewData(data, clear)`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView/setViewData) | | | | |
| | [`showSearch(replace)`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView/showSearch) | | | | |
| | [`unload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/unload) | | Unload this component and its children<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| Links to this page | |
| [(constructor)](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView/(constructor)) | |
| [(constructor)](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView/(constructor)) | |
| [clear](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView/clear) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Communicating with editor extensions](https://docs.obsidian.md/Plugins/Editor/Communicating+with+editor+extensions) | |
| [currentMode](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView/currentMode) | |
| [editor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView/editor) | |
| [getMode](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView/getMode) | |
| [getViewData](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView/getViewData) | |
| [getViewType](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView/getViewType) | |
| [hoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView/hoverPopover) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [on('editor-change')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('editor-change')) | |
| [on('editor-drop')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('editor-drop')) | |
| [on('editor-menu')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('editor-menu')) | |
| [on('editor-paste')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('editor-paste')) | |
| [previewMode](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView/previewMode) | |
| [setViewData](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView/setViewData) | |
| [showSearch](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView/showSearch) | |
| MarkdownView | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| MarkdownView class | |
| Constructors | |
| Properties | |
| Methods | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Obsidian Custom Views | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Getting started | |
| Guides | |
| User interface | |
| [About user interface](https://docs.obsidian.md/Plugins/User+interface/About+user+interface) | |
| [Commands](https://docs.obsidian.md/Plugins/User+interface/Commands) | |
| [Context menus](https://docs.obsidian.md/Plugins/User+interface/Context+menus) | |
| [HTML elements](https://docs.obsidian.md/Plugins/User+interface/HTML+elements) | |
| [Icons](https://docs.obsidian.md/Plugins/User+interface/Icons) | |
| [Modals](https://docs.obsidian.md/Plugins/User+interface/Modals) | |
| [Ribbon actions](https://docs.obsidian.md/Plugins/User+interface/Ribbon+actions) | |
| [Right-to-left](https://docs.obsidian.md/Plugins/User+interface/Right-to-left) | |
| [Settings](https://docs.obsidian.md/Plugins/User+interface/Settings) | |
| [Status bar](https://docs.obsidian.md/Plugins/User+interface/Status+bar) | |
| [Views](https://docs.obsidian.md/Plugins/User+interface/Views) | |
| [Workspace](https://docs.obsidian.md/Plugins/User+interface/Workspace) | |
| Editor | |
| Releasing | |
| [Events](https://docs.obsidian.md/Plugins/Events) | |
| [Vault](https://docs.obsidian.md/Plugins/Vault) | |
| Themes | |
| Reference | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # Views | |
| Views determine how Obsidian displays content. The file explorer, graph view, and the Markdown view are all examples of views, but you can also create your own custom views that display content in a way that makes sense for your plugin. | |
| To create a custom view, create a class that extends the [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) interface: | |
| ```ts is-loaded | |
| import { ItemView, WorkspaceLeaf } from 'obsidian'; | |
| export const VIEW_TYPE_EXAMPLE = 'example-view'; | |
| export class ExampleView extends ItemView { | |
| constructor(leaf: WorkspaceLeaf) { | |
| super(leaf); | |
| } | |
| getViewType() { | |
| return VIEW_TYPE_EXAMPLE; | |
| } | |
| getDisplayText() { | |
| return 'Example view'; | |
| } | |
| async onOpen() { | |
| const container = this.containerEl.children[1]; | |
| container.empty(); | |
| container.createEl('h4', { text: 'Example view' }); | |
| } | |
| async onClose() { | |
| // Nothing to clean up. | |
| } | |
| } | |
| ``` | |
| Note | |
| For more information on how to use the `createEl()` method, refer to [HTML elements](https://docs.obsidian.md/Plugins/User+interface/HTML+elements). | |
| Each view is uniquely identified by a text string and several operations require that you specify the view you'd like to use. Extracting it to a constant, `VIEW_TYPE_EXAMPLE`, is a good idea—as you will see later in this guide. | |
| - `getViewType()` returns a unique identifier for the view. | |
| - `getDisplayText()` returns a human-friendly name for the view. | |
| - `onOpen()` is called when the view is opened within a new leaf and is responsible for building the content of your view. | |
| - `onClose()` is called when the view should close and is responsible for cleaning up any resources used by the view. | |
| Custom views need to be registered when the plugin is enabled, and cleaned up when the plugin is disabled: | |
| ```ts is-loaded | |
| import { Plugin, WorkspaceLeaf } from 'obsidian'; | |
| import { ExampleView, VIEW_TYPE_EXAMPLE } from './view'; | |
| export default class ExamplePlugin extends Plugin { | |
| async onload() { | |
| this.registerView( | |
| VIEW_TYPE_EXAMPLE, | |
| (leaf) => new ExampleView(leaf) | |
| ); | |
| this.addRibbonIcon('dice', 'Activate view', () => { | |
| this.activateView(); | |
| }); | |
| } | |
| async onunload() { | |
| } | |
| async activateView() { | |
| const { workspace } = this.app; | |
| let leaf: WorkspaceLeaf | null = null; | |
| const leaves = workspace.getLeavesOfType(VIEW_TYPE_EXAMPLE); | |
| if (leaves.length > 0) { | |
| // A leaf with our view already exists, use that | |
| leaf = leaves[0]; | |
| } else { | |
| // Our view could not be found in the workspace, create a new leaf | |
| // in the right sidebar for it | |
| leaf = workspace.getRightLeaf(false); | |
| await leaf.setViewState({ type: VIEW_TYPE_EXAMPLE, active: true }); | |
| } | |
| // "Reveal" the leaf in case it is in a collapsed sidebar | |
| workspace.revealLeaf(leaf); | |
| } | |
| } | |
| ``` | |
| The second argument to [registerView()](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/registerView) is a factory function that returns an instance of the view you want to register. | |
| Warning | |
| Never manage references to views in your plugin. Obsidian may call the view factory function multiple times. Avoid side effects in your view, and use `getLeavesOfType()` whenever you need to access your view instances. | |
| ```ts is-loaded | |
| this.app.workspace.getLeavesOfType(VIEW_TYPE_EXAMPLE).forEach((leaf) => { | |
| if (leaf.view instanceof ExampleView) { | |
| // Access your view instance. | |
| } | |
| }); | |
| ``` | |
| Links to this page | |
| [About user interface](https://docs.obsidian.md/Plugins/User+interface/About+user+interface) | |
| [Use React in your plugin](https://docs.obsidian.md/Plugins/Getting+started/Use+React+in+your+plugin) | |
| [Use Svelte in your plugin](https://docs.obsidian.md/Plugins/Getting+started/Use+Svelte+in+your+plugin) | |
| [Workspace](https://docs.obsidian.md/Plugins/User+interface/Workspace) | |
| Views | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## WorkspaceLeaf Class Overview | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| AbstractInputSuggest | |
| AbstractTextComponent | |
| App | |
| BaseComponent | |
| BlockCache | |
| BlockSubpathResult | |
| ButtonComponent | |
| CachedMetadata | |
| CacheItem | |
| CapacitorAdapter | |
| CloseableComponent | |
| ColorComponent | |
| Command | |
| Component | |
| DataAdapter | |
| DataWriteOptions | |
| Debouncer | |
| DropdownComponent | |
| Editor | |
| EditorChange | |
| EditorPosition | |
| EditorRange | |
| EditorRangeOrCaret | |
| EditorScrollInfo | |
| EditorSelection | |
| EditorSelectionOrCaret | |
| EditorSuggest | |
| EditorSuggestContext | |
| EditorSuggestTriggerInfo | |
| EditorTransaction | |
| Events | |
| ExtraButtonComponent | |
| FileManager | |
| FileStats | |
| FileSystemAdapter | |
| FileView | |
| FootnoteCache | |
| FootnoteRefCache | |
| FootnoteSubpathResult | |
| FrontMatterInfo | |
| FrontmatterLinkCache | |
| FuzzyMatch | |
| FuzzySuggestModal | |
| HeadingCache | |
| HeadingSubpathResult | |
| Hotkey | |
| HoverLinkSource | |
| HoverParent | |
| HoverPopover | |
| HSL | |
| Instruction | |
| ISuggestOwner | |
| ItemView | |
| Keymap | |
| KeymapContext | |
| KeymapEventHandler | |
| KeymapInfo | |
| ListedFiles | |
| ListItemCache | |
| LivePreviewStateType | |
| Loc | |
| MarkdownEditView | |
| MarkdownFileInfo | |
| MarkdownPostProcessor | |
| MarkdownPostProcessorContext | |
| MarkdownPreviewRenderer | |
| MarkdownPreviewView | |
| MarkdownRenderChild | |
| MarkdownRenderer | |
| MarkdownSectionInformation | |
| MarkdownSubView | |
| MarkdownView | |
| Menu | |
| MenuItem | |
| MenuPositionDef | |
| MetadataCache | |
| Modal | |
| MomentFormatComponent | |
| Notice | |
| ObsidianProtocolData | |
| OpenViewState | |
| Plugin | |
| PluginManifest | |
| PluginSettingTab | |
| Point | |
| PopoverSuggest | |
| Pos | |
| ProgressBarComponent | |
| Reference | |
| ReferenceLinkCache | |
| RequestUrlParam | |
| RequestUrlResponse | |
| RequestUrlResponsePromise | |
| RGB | |
| Scope | |
| SearchComponent | |
| SearchResult | |
| SearchResultContainer | |
| SectionCache | |
| Setting | |
| SettingTab | |
| SliderComponent | |
| Stat | |
| SubpathResult | |
| SuggestModal | |
| TAbstractFile | |
| TagCache | |
| Tasks | |
| TextAreaComponent | |
| TextComponent | |
| TextFileView | |
| TFile | |
| TFolder | |
| ToggleComponent | |
| TooltipOptions | |
| ValueComponent | |
| Vault | |
| View | |
| ViewState | |
| ViewStateResult | |
| Workspace | |
| WorkspaceContainer | |
| WorkspaceFloating | |
| WorkspaceItem | |
| WorkspaceLeaf | |
| WorkspaceMobileDrawer | |
| WorkspaceRoot | |
| WorkspaceSidedock | |
| WorkspaceSplit | |
| WorkspaceTabs | |
| WorkspaceWindow | |
| WorkspaceWindowInitData | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) | |
| [addIcon](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) | |
| [apiVersion](https://docs.obsidian.md/Reference/TypeScript+API/apiVersion) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [arrayBufferToBase64](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToBase64) | |
| [arrayBufferToHex](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToHex) | |
| [base64ToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/base64ToArrayBuffer) | |
| [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent) | |
| [BlockCache](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) | |
| [BlockSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/BlockSubpathResult) | |
| [ButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ButtonComponent) | |
| [CachedMetadata](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| [CacheItem](https://docs.obsidian.md/Reference/TypeScript+API/CacheItem) | |
| [CapacitorAdapter](https://docs.obsidian.md/Reference/TypeScript+API/CapacitorAdapter) | |
| [CloseableComponent](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| [ColorComponent](https://docs.obsidian.md/Reference/TypeScript+API/ColorComponent) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| [Constructor](https://docs.obsidian.md/Reference/TypeScript+API/Constructor) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [DataWriteOptions](https://docs.obsidian.md/Reference/TypeScript+API/DataWriteOptions) | |
| [debounce](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| [Debouncer](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) | |
| [displayTooltip](https://docs.obsidian.md/Reference/TypeScript+API/displayTooltip) | |
| [DropdownComponent](https://docs.obsidian.md/Reference/TypeScript+API/DropdownComponent) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| [EditorChange](https://docs.obsidian.md/Reference/TypeScript+API/EditorChange) | |
| [EditorCommandName](https://docs.obsidian.md/Reference/TypeScript+API/EditorCommandName) | |
| [editorEditorField](https://docs.obsidian.md/Reference/TypeScript+API/editorEditorField) | |
| [editorInfoField](https://docs.obsidian.md/Reference/TypeScript+API/editorInfoField) | |
| [editorLivePreviewField](https://docs.obsidian.md/Reference/TypeScript+API/editorLivePreviewField) | |
| [EditorPosition](https://docs.obsidian.md/Reference/TypeScript+API/EditorPosition) | |
| [EditorRange](https://docs.obsidian.md/Reference/TypeScript+API/EditorRange) | |
| [EditorRangeOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorRangeOrCaret) | |
| [EditorScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorScrollInfo) | |
| [EditorSelection](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelection) | |
| [EditorSelectionOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelectionOrCaret) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [EditorSuggestTriggerInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestTriggerInfo) | |
| [EditorTransaction](https://docs.obsidian.md/Reference/TypeScript+API/EditorTransaction) | |
| [editorViewField](https://docs.obsidian.md/Reference/TypeScript+API/editorViewField) | |
| [EmbedCache](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) | |
| [EventRef](https://docs.obsidian.md/Reference/TypeScript+API/EventRef) | |
| [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| [ExtraButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ExtraButtonComponent) | |
| [FileManager](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | |
| [FileStats](https://docs.obsidian.md/Reference/TypeScript+API/FileStats) | |
| [FileSystemAdapter](https://docs.obsidian.md/Reference/TypeScript+API/FileSystemAdapter) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [finishRenderMath](https://docs.obsidian.md/Reference/TypeScript+API/finishRenderMath) | |
| [FootnoteCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) | |
| [FootnoteRefCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) | |
| [FootnoteSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteSubpathResult) | |
| [FrontMatterCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | |
| [FrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterInfo) | |
| [FrontmatterLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) | |
| [FuzzyMatch](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getBlobArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/getBlobArrayBuffer) | |
| [getFrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/getFrontMatterInfo) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/getIcon) | |
| [getIconIds](https://docs.obsidian.md/Reference/TypeScript+API/getIconIds) | |
| [getLanguage](https://docs.obsidian.md/Reference/TypeScript+API/getLanguage) | |
| [getLinkpath](https://docs.obsidian.md/Reference/TypeScript+API/getLinkpath) | |
| [HeadingCache](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) | |
| [HeadingSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/HeadingSubpathResult) | |
| [HexString](https://docs.obsidian.md/Reference/TypeScript+API/HexString) | |
| [hexToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/hexToArrayBuffer) | |
| [Hotkey](https://docs.obsidian.md/Reference/TypeScript+API/Hotkey) | |
| [HoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/HoverLinkSource) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [HSL](https://docs.obsidian.md/Reference/TypeScript+API/HSL) | |
| [htmlToMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/htmlToMarkdown) | |
| [IconName](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Instruction](https://docs.obsidian.md/Reference/TypeScript+API/Instruction) | |
| [ISuggestOwner](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [iterateRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateRefs) | |
| [Keymap](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | |
| [KeymapContext](https://docs.obsidian.md/Reference/TypeScript+API/KeymapContext) | |
| [KeymapEventHandler](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventHandler) | |
| [KeymapEventListener](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventListener) | |
| [KeymapInfo](https://docs.obsidian.md/Reference/TypeScript+API/KeymapInfo) | |
| [LinkCache](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) | |
| [ListedFiles](https://docs.obsidian.md/Reference/TypeScript+API/ListedFiles) | |
| [ListItemCache](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) | |
| [livePreviewState](https://docs.obsidian.md/Reference/TypeScript+API/livePreviewState) | |
| [LivePreviewStateType](https://docs.obsidian.md/Reference/TypeScript+API/LivePreviewStateType) | |
| [loadMathJax](https://docs.obsidian.md/Reference/TypeScript+API/loadMathJax) | |
| [loadMermaid](https://docs.obsidian.md/Reference/TypeScript+API/loadMermaid) | |
| [loadPdfJs](https://docs.obsidian.md/Reference/TypeScript+API/loadPdfJs) | |
| [loadPrism](https://docs.obsidian.md/Reference/TypeScript+API/loadPrism) | |
| [Loc](https://docs.obsidian.md/Reference/TypeScript+API/Loc) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessor) | |
| [MarkdownPostProcessorContext](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext) | |
| [MarkdownPreviewEvents](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents) | |
| [MarkdownPreviewRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewRenderer) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownSectionInformation](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSectionInformation) | |
| [MarkdownSubView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSubView) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [MarkdownViewModeType](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownViewModeType) | |
| [Menu](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| [MenuItem](https://docs.obsidian.md/Reference/TypeScript+API/MenuItem) | |
| [MenuPositionDef](https://docs.obsidian.md/Reference/TypeScript+API/MenuPositionDef) | |
| [MenuSeparator](https://docs.obsidian.md/Reference/TypeScript+API/MenuSeparator) | |
| [MetadataCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | |
| [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| [Modifier](https://docs.obsidian.md/Reference/TypeScript+API/Modifier) | |
| [moment](https://docs.obsidian.md/Reference/TypeScript+API/moment) | |
| [MomentFormatComponent](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent) | |
| [normalizePath](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath) | |
| [Notice](https://docs.obsidian.md/Reference/TypeScript+API/Notice) | |
| [ObsidianProtocolData](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolData) | |
| [ObsidianProtocolHandler](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolHandler) | |
| [OpenViewState](https://docs.obsidian.md/Reference/TypeScript+API/OpenViewState) | |
| [PaneType](https://docs.obsidian.md/Reference/TypeScript+API/PaneType) | |
| [parseFrontMatterAliases](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterAliases) | |
| [parseFrontMatterEntry](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterEntry) | |
| [parseFrontMatterStringArray](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterStringArray) | |
| [parseFrontMatterTags](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterTags) | |
| [parseLinktext](https://docs.obsidian.md/Reference/TypeScript+API/parseLinktext) | |
| [parseYaml](https://docs.obsidian.md/Reference/TypeScript+API/parseYaml) | |
| [Platform](https://docs.obsidian.md/Reference/TypeScript+API/Platform) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [PluginManifest](https://docs.obsidian.md/Reference/TypeScript+API/PluginManifest) | |
| [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab) | |
| [Point](https://docs.obsidian.md/Reference/TypeScript+API/Point) | |
| [PopoverState](https://docs.obsidian.md/Reference/TypeScript+API/PopoverState) | |
| [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) | |
| [Pos](https://docs.obsidian.md/Reference/TypeScript+API/Pos) | |
| [prepareFuzzySearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareFuzzySearch) | |
| [prepareSimpleSearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareSimpleSearch) | |
| [ProgressBarComponent](https://docs.obsidian.md/Reference/TypeScript+API/ProgressBarComponent) | |
| [Reference](https://docs.obsidian.md/Reference/TypeScript+API/Reference) | |
| [ReferenceCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceCache) | |
| [ReferenceLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceLinkCache) | |
| [removeIcon](https://docs.obsidian.md/Reference/TypeScript+API/removeIcon) | |
| [renderMatches](https://docs.obsidian.md/Reference/TypeScript+API/renderMatches) | |
| [renderMath](https://docs.obsidian.md/Reference/TypeScript+API/renderMath) | |
| [renderResults](https://docs.obsidian.md/Reference/TypeScript+API/renderResults) | |
| [request](https://docs.obsidian.md/Reference/TypeScript+API/request) | |
| [requestUrl](https://docs.obsidian.md/Reference/TypeScript+API/requestUrl) | |
| [RequestUrlParam](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlParam) | |
| [RequestUrlResponse](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponse) | |
| [RequestUrlResponsePromise](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponsePromise) | |
| [requireApiVersion](https://docs.obsidian.md/Reference/TypeScript+API/requireApiVersion) | |
| [resolveSubpath](https://docs.obsidian.md/Reference/TypeScript+API/resolveSubpath) | |
| [RGB](https://docs.obsidian.md/Reference/TypeScript+API/RGB) | |
| [sanitizeHTMLToDom](https://docs.obsidian.md/Reference/TypeScript+API/sanitizeHTMLToDom) | |
| [Scope](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | |
| [SearchComponent](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent) | |
| [SearchMatches](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatches) | |
| [SearchMatchPart](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatchPart) | |
| [SearchResult](https://docs.obsidian.md/Reference/TypeScript+API/SearchResult) | |
| [SearchResultContainer](https://docs.obsidian.md/Reference/TypeScript+API/SearchResultContainer) | |
| [SectionCache](https://docs.obsidian.md/Reference/TypeScript+API/SectionCache) | |
| [setIcon](https://docs.obsidian.md/Reference/TypeScript+API/setIcon) | |
| [Setting](https://docs.obsidian.md/Reference/TypeScript+API/Setting) | |
| [SettingTab](https://docs.obsidian.md/Reference/TypeScript+API/SettingTab) | |
| [setTooltip](https://docs.obsidian.md/Reference/TypeScript+API/setTooltip) | |
| [Side](https://docs.obsidian.md/Reference/TypeScript+API/Side) | |
| [SliderComponent](https://docs.obsidian.md/Reference/TypeScript+API/SliderComponent) | |
| [sortSearchResults](https://docs.obsidian.md/Reference/TypeScript+API/sortSearchResults) | |
| [SplitDirection](https://docs.obsidian.md/Reference/TypeScript+API/SplitDirection) | |
| [Stat](https://docs.obsidian.md/Reference/TypeScript+API/Stat) | |
| [stringifyYaml](https://docs.obsidian.md/Reference/TypeScript+API/stringifyYaml) | |
| [stripHeading](https://docs.obsidian.md/Reference/TypeScript+API/stripHeading) | |
| [stripHeadingForLink](https://docs.obsidian.md/Reference/TypeScript+API/stripHeadingForLink) | |
| [SubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/SubpathResult) | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) | |
| [TagCache](https://docs.obsidian.md/Reference/TypeScript+API/TagCache) | |
| [Tasks](https://docs.obsidian.md/Reference/TypeScript+API/Tasks) | |
| [TextAreaComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextAreaComponent) | |
| [TextComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [TFile](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | |
| [TFolder](https://docs.obsidian.md/Reference/TypeScript+API/TFolder) | |
| [ToggleComponent](https://docs.obsidian.md/Reference/TypeScript+API/ToggleComponent) | |
| [TooltipOptions](https://docs.obsidian.md/Reference/TypeScript+API/TooltipOptions) | |
| [TooltipPlacement](https://docs.obsidian.md/Reference/TypeScript+API/TooltipPlacement) | |
| [UserEvent](https://docs.obsidian.md/Reference/TypeScript+API/UserEvent) | |
| [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent) | |
| [Vault](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [ViewState](https://docs.obsidian.md/Reference/TypeScript+API/ViewState) | |
| [ViewStateResult](https://docs.obsidian.md/Reference/TypeScript+API/ViewStateResult) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| [WorkspaceContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| [WorkspaceFloating](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceFloating) | |
| [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| [WorkspaceMobileDrawer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | |
| [WorkspaceParent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | |
| [WorkspaceRibbon](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | |
| [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | |
| [WorkspaceSidedock](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) | |
| [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) | |
| [WorkspaceTabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) | |
| [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow) | |
| [WorkspaceWindowInitData](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindowInitData) | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # WorkspaceLeaf | |
| ```yaml is-loaded | |
| aliases: "WorkspaceLeaf" | |
| cssclasses: hide-title | |
| ``` | |
| [`WorkspaceLeaf`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| ## WorkspaceLeaf class | |
| **Signature:** | |
| ```typescript is-loaded | |
| export class WorkspaceLeaf extends WorkspaceItem | |
| ``` | |
| **Extends:** [`WorkspaceItem`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| ## Properties | |
| | Property | Modifiers | Type | Description | | |
| | --- | --- | --- | --- | | |
| | [`isDeferred`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/isDeferred) | `readonly` | `boolean` | Returns true if this leaf is currently deferred because it is in the background. A deferred leaf will have a DeferredView as its view, instead of the View that it should normally have for its type (like MarkdownView for the `markdown` type). 1.7.2 | | |
| | [`parent`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/parent) | | [`WorkspaceTabs`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) ` | ` [`WorkspaceMobileDrawer`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | The direct parent of the leaf.<br>On desktop, a leaf is always a child of a `WorkspaceTabs` component. On mobile, a leaf might be a child of a `WorkspaceMobileDrawer`. Perform an `instanceof` check before making an assumption about the `parent`. | | |
| | [`view`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/view) | | [`View`](https://docs.obsidian.md/Reference/TypeScript+API/View) | The view associated with this leaf. Do not attempt to cast this to your custom `View` without first checking `instanceof`. | | |
| ## Methods | |
| | Method | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`detach()`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/detach) | | | | |
| | [`getContainer()`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem/getContainer) | | Get the root container parent item, which can be one of: - [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) \- [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow)<br>(Inherited from [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem)) | | |
| | [`getDisplayText()`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/getDisplayText) | | | | |
| | [`getEphemeralState()`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/getEphemeralState) | | | | |
| | [`getIcon()`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/getIcon) | | | | |
| | [`getRoot()`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem/getRoot) | | (Inherited from [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem)) | | |
| | [`getViewState()`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/getViewState) | | | | |
| | [`loadIfDeferred()`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/loadIfDeferred) | | If this view is currently deferred, load it and await that it has fully loaded. 1.7.2 | | |
| | [`off(name, callback)`](https://docs.obsidian.md/Reference/TypeScript+API/Events/off) | | (Inherited from [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events)) | | |
| | [`offref(ref)`](https://docs.obsidian.md/Reference/TypeScript+API/Events/offref) | | (Inherited from [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events)) | | |
| | [`on(name: 'pinned-change', callback, ctx)`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/on('pinned-change')) | | | | |
| | [`on(name: 'group-change', callback, ctx)`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/on('group-change')) | | | | |
| | [`onResize()`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/onResize) | | | | |
| | [`open(view)`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/open) | | | | |
| | [`openFile(file, openState)`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/openFile) | | Open a file in this leaf. | | |
| | [`setEphemeralState(state)`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/setEphemeralState) | | | | |
| | [`setGroup(group)`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/setGroup) | | | | |
| | [`setGroupMember(other)`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/setGroupMember) | | | | |
| | [`setPinned(pinned)`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/setPinned) | | | | |
| | [`setViewState(viewState, eState)`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/setViewState) | | | | |
| | [`togglePinned()`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/togglePinned) | | | | |
| | [`trigger(name, data)`](https://docs.obsidian.md/Reference/TypeScript+API/Events/trigger) | | (Inherited from [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events)) | | |
| | [`tryTrigger(evt, args)`](https://docs.obsidian.md/Reference/TypeScript+API/Events/tryTrigger) | | (Inherited from [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events)) | | |
| Links to this page | |
| [(constructor)](https://docs.obsidian.md/Reference/TypeScript+API/View/(constructor)) | |
| [(constructor)](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView/(constructor)) | |
| [(constructor)](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView/(constructor)) | |
| [(constructor)](https://docs.obsidian.md/Reference/TypeScript+API/ItemView/(constructor)) | |
| [(constructor)](https://docs.obsidian.md/Reference/TypeScript+API/FileView/(constructor)) | |
| [createLeafBySplit](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/createLeafBySplit) | |
| [createLeafInParent](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/createLeafInParent) | |
| [detach](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/detach) | |
| [duplicateLeaf](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/duplicateLeaf) | |
| [duplicateLeaf\_1](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/duplicateLeaf_1) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [ensureSideLeaf](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/ensureSideLeaf) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [getDisplayText](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/getDisplayText) | |
| [getEphemeralState](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/getEphemeralState) | |
| [getGroupLeaves](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getGroupLeaves) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/getIcon) | |
| [getLeaf\_1](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getLeaf_1) | |
| [getLeaf('split')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getLeaf('split')) | |
| [getLeafById](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getLeafById) | |
| [getLeavesOfType](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getLeavesOfType) | |
| [getLeftLeaf](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getLeftLeaf) | |
| [getMostRecentLeaf](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getMostRecentLeaf) | |
| [getRightLeaf](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getRightLeaf) | |
| [getUnpinnedLeaf](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getUnpinnedLeaf) | |
| [getViewState](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/getViewState) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [isDeferred](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/isDeferred) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateAllLeaves](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/iterateAllLeaves) | |
| [iterateRootLeaves](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/iterateRootLeaves) | |
| [loadIfDeferred](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/loadIfDeferred) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [moveLeafToPopout](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/moveLeafToPopout) | |
| [on('active-leaf-change')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('active-leaf-change')) | |
| [on('file-menu')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('file-menu')) | |
| [on('files-menu')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('files-menu')) | |
| [on('group-change')](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/on('group-change')) | |
| [on('pinned-change')](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/on('pinned-change')) | |
| [onResize](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/onResize) | |
| [open](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/open) | |
| [openFile](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/openFile) | |
| [openPopoutLeaf](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/openPopoutLeaf) | |
| [OpenViewState](https://docs.obsidian.md/Reference/TypeScript+API/OpenViewState) | |
| [parent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/parent) | |
| [revealLeaf](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/revealLeaf) | |
| [setActiveLeaf](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/setActiveLeaf) | |
| [setActiveLeaf\_1](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/setActiveLeaf_1) | |
| [setEphemeralState](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/setEphemeralState) | |
| [setGroup](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/setGroup) | |
| [setGroupMember](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/setGroupMember) | |
| [setPinned](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/setPinned) | |
| [setViewState](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/setViewState) | |
| [splitActiveLeaf](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/splitActiveLeaf) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [togglePinned](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/togglePinned) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [view](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/view) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [ViewState](https://docs.obsidian.md/Reference/TypeScript+API/ViewState) | |
| [Workspace](https://docs.obsidian.md/Plugins/User+interface/Workspace) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| WorkspaceLeaf | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| WorkspaceLeaf class | |
| Properties | |
| Methods | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Obsidian TypeScript View | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| AbstractInputSuggest | |
| AbstractTextComponent | |
| App | |
| BaseComponent | |
| BlockCache | |
| BlockSubpathResult | |
| ButtonComponent | |
| CachedMetadata | |
| CacheItem | |
| CapacitorAdapter | |
| CloseableComponent | |
| ColorComponent | |
| Command | |
| Component | |
| DataAdapter | |
| DataWriteOptions | |
| Debouncer | |
| DropdownComponent | |
| Editor | |
| EditorChange | |
| EditorPosition | |
| EditorRange | |
| EditorRangeOrCaret | |
| EditorScrollInfo | |
| EditorSelection | |
| EditorSelectionOrCaret | |
| EditorSuggest | |
| EditorSuggestContext | |
| EditorSuggestTriggerInfo | |
| EditorTransaction | |
| Events | |
| ExtraButtonComponent | |
| FileManager | |
| FileStats | |
| FileSystemAdapter | |
| FileView | |
| FootnoteCache | |
| FootnoteRefCache | |
| FootnoteSubpathResult | |
| FrontMatterInfo | |
| FrontmatterLinkCache | |
| FuzzyMatch | |
| FuzzySuggestModal | |
| HeadingCache | |
| HeadingSubpathResult | |
| Hotkey | |
| HoverLinkSource | |
| HoverParent | |
| HoverPopover | |
| HSL | |
| Instruction | |
| ISuggestOwner | |
| ItemView | |
| Keymap | |
| KeymapContext | |
| KeymapEventHandler | |
| KeymapInfo | |
| ListedFiles | |
| ListItemCache | |
| LivePreviewStateType | |
| Loc | |
| MarkdownEditView | |
| MarkdownFileInfo | |
| MarkdownPostProcessor | |
| MarkdownPostProcessorContext | |
| MarkdownPreviewRenderer | |
| MarkdownPreviewView | |
| MarkdownRenderChild | |
| MarkdownRenderer | |
| MarkdownSectionInformation | |
| MarkdownSubView | |
| MarkdownView | |
| Menu | |
| MenuItem | |
| MenuPositionDef | |
| MetadataCache | |
| Modal | |
| MomentFormatComponent | |
| Notice | |
| ObsidianProtocolData | |
| OpenViewState | |
| Plugin | |
| PluginManifest | |
| PluginSettingTab | |
| Point | |
| PopoverSuggest | |
| Pos | |
| ProgressBarComponent | |
| Reference | |
| ReferenceLinkCache | |
| RequestUrlParam | |
| RequestUrlResponse | |
| RequestUrlResponsePromise | |
| RGB | |
| Scope | |
| SearchComponent | |
| SearchResult | |
| SearchResultContainer | |
| SectionCache | |
| Setting | |
| SettingTab | |
| SliderComponent | |
| Stat | |
| SubpathResult | |
| SuggestModal | |
| TAbstractFile | |
| TagCache | |
| Tasks | |
| TextAreaComponent | |
| TextComponent | |
| TextFileView | |
| TFile | |
| TFolder | |
| ToggleComponent | |
| TooltipOptions | |
| ValueComponent | |
| Vault | |
| View | |
| ViewState | |
| ViewStateResult | |
| Workspace | |
| WorkspaceContainer | |
| WorkspaceFloating | |
| WorkspaceItem | |
| WorkspaceLeaf | |
| WorkspaceMobileDrawer | |
| WorkspaceRoot | |
| WorkspaceSidedock | |
| WorkspaceSplit | |
| WorkspaceTabs | |
| WorkspaceWindow | |
| WorkspaceWindowInitData | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) | |
| [addIcon](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) | |
| [apiVersion](https://docs.obsidian.md/Reference/TypeScript+API/apiVersion) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [arrayBufferToBase64](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToBase64) | |
| [arrayBufferToHex](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToHex) | |
| [base64ToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/base64ToArrayBuffer) | |
| [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent) | |
| [BlockCache](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) | |
| [BlockSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/BlockSubpathResult) | |
| [ButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ButtonComponent) | |
| [CachedMetadata](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| [CacheItem](https://docs.obsidian.md/Reference/TypeScript+API/CacheItem) | |
| [CapacitorAdapter](https://docs.obsidian.md/Reference/TypeScript+API/CapacitorAdapter) | |
| [CloseableComponent](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| [ColorComponent](https://docs.obsidian.md/Reference/TypeScript+API/ColorComponent) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| [Constructor](https://docs.obsidian.md/Reference/TypeScript+API/Constructor) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [DataWriteOptions](https://docs.obsidian.md/Reference/TypeScript+API/DataWriteOptions) | |
| [debounce](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| [Debouncer](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) | |
| [displayTooltip](https://docs.obsidian.md/Reference/TypeScript+API/displayTooltip) | |
| [DropdownComponent](https://docs.obsidian.md/Reference/TypeScript+API/DropdownComponent) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| [EditorChange](https://docs.obsidian.md/Reference/TypeScript+API/EditorChange) | |
| [EditorCommandName](https://docs.obsidian.md/Reference/TypeScript+API/EditorCommandName) | |
| [editorEditorField](https://docs.obsidian.md/Reference/TypeScript+API/editorEditorField) | |
| [editorInfoField](https://docs.obsidian.md/Reference/TypeScript+API/editorInfoField) | |
| [editorLivePreviewField](https://docs.obsidian.md/Reference/TypeScript+API/editorLivePreviewField) | |
| [EditorPosition](https://docs.obsidian.md/Reference/TypeScript+API/EditorPosition) | |
| [EditorRange](https://docs.obsidian.md/Reference/TypeScript+API/EditorRange) | |
| [EditorRangeOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorRangeOrCaret) | |
| [EditorScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorScrollInfo) | |
| [EditorSelection](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelection) | |
| [EditorSelectionOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelectionOrCaret) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [EditorSuggestTriggerInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestTriggerInfo) | |
| [EditorTransaction](https://docs.obsidian.md/Reference/TypeScript+API/EditorTransaction) | |
| [editorViewField](https://docs.obsidian.md/Reference/TypeScript+API/editorViewField) | |
| [EmbedCache](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) | |
| [EventRef](https://docs.obsidian.md/Reference/TypeScript+API/EventRef) | |
| [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| [ExtraButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ExtraButtonComponent) | |
| [FileManager](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | |
| [FileStats](https://docs.obsidian.md/Reference/TypeScript+API/FileStats) | |
| [FileSystemAdapter](https://docs.obsidian.md/Reference/TypeScript+API/FileSystemAdapter) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [finishRenderMath](https://docs.obsidian.md/Reference/TypeScript+API/finishRenderMath) | |
| [FootnoteCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) | |
| [FootnoteRefCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) | |
| [FootnoteSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteSubpathResult) | |
| [FrontMatterCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | |
| [FrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterInfo) | |
| [FrontmatterLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) | |
| [FuzzyMatch](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getBlobArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/getBlobArrayBuffer) | |
| [getFrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/getFrontMatterInfo) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/getIcon) | |
| [getIconIds](https://docs.obsidian.md/Reference/TypeScript+API/getIconIds) | |
| [getLanguage](https://docs.obsidian.md/Reference/TypeScript+API/getLanguage) | |
| [getLinkpath](https://docs.obsidian.md/Reference/TypeScript+API/getLinkpath) | |
| [HeadingCache](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) | |
| [HeadingSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/HeadingSubpathResult) | |
| [HexString](https://docs.obsidian.md/Reference/TypeScript+API/HexString) | |
| [hexToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/hexToArrayBuffer) | |
| [Hotkey](https://docs.obsidian.md/Reference/TypeScript+API/Hotkey) | |
| [HoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/HoverLinkSource) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [HSL](https://docs.obsidian.md/Reference/TypeScript+API/HSL) | |
| [htmlToMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/htmlToMarkdown) | |
| [IconName](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Instruction](https://docs.obsidian.md/Reference/TypeScript+API/Instruction) | |
| [ISuggestOwner](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [iterateRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateRefs) | |
| [Keymap](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | |
| [KeymapContext](https://docs.obsidian.md/Reference/TypeScript+API/KeymapContext) | |
| [KeymapEventHandler](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventHandler) | |
| [KeymapEventListener](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventListener) | |
| [KeymapInfo](https://docs.obsidian.md/Reference/TypeScript+API/KeymapInfo) | |
| [LinkCache](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) | |
| [ListedFiles](https://docs.obsidian.md/Reference/TypeScript+API/ListedFiles) | |
| [ListItemCache](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) | |
| [livePreviewState](https://docs.obsidian.md/Reference/TypeScript+API/livePreviewState) | |
| [LivePreviewStateType](https://docs.obsidian.md/Reference/TypeScript+API/LivePreviewStateType) | |
| [loadMathJax](https://docs.obsidian.md/Reference/TypeScript+API/loadMathJax) | |
| [loadMermaid](https://docs.obsidian.md/Reference/TypeScript+API/loadMermaid) | |
| [loadPdfJs](https://docs.obsidian.md/Reference/TypeScript+API/loadPdfJs) | |
| [loadPrism](https://docs.obsidian.md/Reference/TypeScript+API/loadPrism) | |
| [Loc](https://docs.obsidian.md/Reference/TypeScript+API/Loc) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessor) | |
| [MarkdownPostProcessorContext](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext) | |
| [MarkdownPreviewEvents](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents) | |
| [MarkdownPreviewRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewRenderer) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownSectionInformation](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSectionInformation) | |
| [MarkdownSubView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSubView) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [MarkdownViewModeType](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownViewModeType) | |
| [Menu](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| [MenuItem](https://docs.obsidian.md/Reference/TypeScript+API/MenuItem) | |
| [MenuPositionDef](https://docs.obsidian.md/Reference/TypeScript+API/MenuPositionDef) | |
| [MenuSeparator](https://docs.obsidian.md/Reference/TypeScript+API/MenuSeparator) | |
| [MetadataCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | |
| [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| [Modifier](https://docs.obsidian.md/Reference/TypeScript+API/Modifier) | |
| [moment](https://docs.obsidian.md/Reference/TypeScript+API/moment) | |
| [MomentFormatComponent](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent) | |
| [normalizePath](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath) | |
| [Notice](https://docs.obsidian.md/Reference/TypeScript+API/Notice) | |
| [ObsidianProtocolData](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolData) | |
| [ObsidianProtocolHandler](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolHandler) | |
| [OpenViewState](https://docs.obsidian.md/Reference/TypeScript+API/OpenViewState) | |
| [PaneType](https://docs.obsidian.md/Reference/TypeScript+API/PaneType) | |
| [parseFrontMatterAliases](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterAliases) | |
| [parseFrontMatterEntry](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterEntry) | |
| [parseFrontMatterStringArray](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterStringArray) | |
| [parseFrontMatterTags](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterTags) | |
| [parseLinktext](https://docs.obsidian.md/Reference/TypeScript+API/parseLinktext) | |
| [parseYaml](https://docs.obsidian.md/Reference/TypeScript+API/parseYaml) | |
| [Platform](https://docs.obsidian.md/Reference/TypeScript+API/Platform) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [PluginManifest](https://docs.obsidian.md/Reference/TypeScript+API/PluginManifest) | |
| [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab) | |
| [Point](https://docs.obsidian.md/Reference/TypeScript+API/Point) | |
| [PopoverState](https://docs.obsidian.md/Reference/TypeScript+API/PopoverState) | |
| [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) | |
| [Pos](https://docs.obsidian.md/Reference/TypeScript+API/Pos) | |
| [prepareFuzzySearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareFuzzySearch) | |
| [prepareSimpleSearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareSimpleSearch) | |
| [ProgressBarComponent](https://docs.obsidian.md/Reference/TypeScript+API/ProgressBarComponent) | |
| [Reference](https://docs.obsidian.md/Reference/TypeScript+API/Reference) | |
| [ReferenceCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceCache) | |
| [ReferenceLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceLinkCache) | |
| [removeIcon](https://docs.obsidian.md/Reference/TypeScript+API/removeIcon) | |
| [renderMatches](https://docs.obsidian.md/Reference/TypeScript+API/renderMatches) | |
| [renderMath](https://docs.obsidian.md/Reference/TypeScript+API/renderMath) | |
| [renderResults](https://docs.obsidian.md/Reference/TypeScript+API/renderResults) | |
| [request](https://docs.obsidian.md/Reference/TypeScript+API/request) | |
| [requestUrl](https://docs.obsidian.md/Reference/TypeScript+API/requestUrl) | |
| [RequestUrlParam](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlParam) | |
| [RequestUrlResponse](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponse) | |
| [RequestUrlResponsePromise](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponsePromise) | |
| [requireApiVersion](https://docs.obsidian.md/Reference/TypeScript+API/requireApiVersion) | |
| [resolveSubpath](https://docs.obsidian.md/Reference/TypeScript+API/resolveSubpath) | |
| [RGB](https://docs.obsidian.md/Reference/TypeScript+API/RGB) | |
| [sanitizeHTMLToDom](https://docs.obsidian.md/Reference/TypeScript+API/sanitizeHTMLToDom) | |
| [Scope](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | |
| [SearchComponent](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent) | |
| [SearchMatches](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatches) | |
| [SearchMatchPart](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatchPart) | |
| [SearchResult](https://docs.obsidian.md/Reference/TypeScript+API/SearchResult) | |
| [SearchResultContainer](https://docs.obsidian.md/Reference/TypeScript+API/SearchResultContainer) | |
| [SectionCache](https://docs.obsidian.md/Reference/TypeScript+API/SectionCache) | |
| [setIcon](https://docs.obsidian.md/Reference/TypeScript+API/setIcon) | |
| [Setting](https://docs.obsidian.md/Reference/TypeScript+API/Setting) | |
| [SettingTab](https://docs.obsidian.md/Reference/TypeScript+API/SettingTab) | |
| [setTooltip](https://docs.obsidian.md/Reference/TypeScript+API/setTooltip) | |
| [Side](https://docs.obsidian.md/Reference/TypeScript+API/Side) | |
| [SliderComponent](https://docs.obsidian.md/Reference/TypeScript+API/SliderComponent) | |
| [sortSearchResults](https://docs.obsidian.md/Reference/TypeScript+API/sortSearchResults) | |
| [SplitDirection](https://docs.obsidian.md/Reference/TypeScript+API/SplitDirection) | |
| [Stat](https://docs.obsidian.md/Reference/TypeScript+API/Stat) | |
| [stringifyYaml](https://docs.obsidian.md/Reference/TypeScript+API/stringifyYaml) | |
| [stripHeading](https://docs.obsidian.md/Reference/TypeScript+API/stripHeading) | |
| [stripHeadingForLink](https://docs.obsidian.md/Reference/TypeScript+API/stripHeadingForLink) | |
| [SubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/SubpathResult) | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) | |
| [TagCache](https://docs.obsidian.md/Reference/TypeScript+API/TagCache) | |
| [Tasks](https://docs.obsidian.md/Reference/TypeScript+API/Tasks) | |
| [TextAreaComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextAreaComponent) | |
| [TextComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [TFile](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | |
| [TFolder](https://docs.obsidian.md/Reference/TypeScript+API/TFolder) | |
| [ToggleComponent](https://docs.obsidian.md/Reference/TypeScript+API/ToggleComponent) | |
| [TooltipOptions](https://docs.obsidian.md/Reference/TypeScript+API/TooltipOptions) | |
| [TooltipPlacement](https://docs.obsidian.md/Reference/TypeScript+API/TooltipPlacement) | |
| [UserEvent](https://docs.obsidian.md/Reference/TypeScript+API/UserEvent) | |
| [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent) | |
| [Vault](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [ViewState](https://docs.obsidian.md/Reference/TypeScript+API/ViewState) | |
| [ViewStateResult](https://docs.obsidian.md/Reference/TypeScript+API/ViewStateResult) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| [WorkspaceContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| [WorkspaceFloating](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceFloating) | |
| [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| [WorkspaceMobileDrawer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | |
| [WorkspaceParent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | |
| [WorkspaceRibbon](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | |
| [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | |
| [WorkspaceSidedock](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) | |
| [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) | |
| [WorkspaceTabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) | |
| [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow) | |
| [WorkspaceWindowInitData](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindowInitData) | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # View | |
| ```yaml is-loaded | |
| aliases: "View" | |
| cssclasses: hide-title | |
| ``` | |
| [`View`](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| ## View class | |
| **Signature:** | |
| ```typescript is-loaded | |
| export abstract class View extends Component | |
| ``` | |
| **Extends:** [`Component`](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| ## Constructors | |
| | Constructor | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`(constructor)(leaf)`](https://docs.obsidian.md/Reference/TypeScript+API/View/(constructor)) | | Constructs a new instance of the `View` class | | |
| ## Properties | |
| | Property | Modifiers | Type | Description | | |
| | --- | --- | --- | --- | | |
| | [`app`](https://docs.obsidian.md/Reference/TypeScript+API/View/app) | | [`App`](https://docs.obsidian.md/Reference/TypeScript+API/App) | | | |
| | [`containerEl`](https://docs.obsidian.md/Reference/TypeScript+API/View/containerEl) | | `HTMLElement` | | | |
| | [`icon`](https://docs.obsidian.md/Reference/TypeScript+API/View/icon) | | [`IconName`](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | | | |
| | [`leaf`](https://docs.obsidian.md/Reference/TypeScript+API/View/leaf) | | [`WorkspaceLeaf`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | | | |
| | [`navigation`](https://docs.obsidian.md/Reference/TypeScript+API/View/navigation) | | `boolean` | Whether or not the view is intended for navigation. If your view is a static view that is not intended to be navigated away, set this to false. (For example: File explorer, calendar, etc.) If your view opens a file or can be otherwise navigated, set this to true. (For example: Markdown editor view, Kanban view, PDF view, etc.) | | |
| | [`scope`](https://docs.obsidian.md/Reference/TypeScript+API/View/scope) | | [`Scope`](https://docs.obsidian.md/Reference/TypeScript+API/Scope) ` | null` | Assign an optional scope to your view to register hotkeys for when the view is in focus. | | |
| ## Methods | |
| | Method | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`addChild(component)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/addChild) | | Adds a child component, loading it if this component is loaded<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`getDisplayText()`](https://docs.obsidian.md/Reference/TypeScript+API/View/getDisplayText) | `abstract` | | | |
| | [`getEphemeralState()`](https://docs.obsidian.md/Reference/TypeScript+API/View/getEphemeralState) | | | | |
| | [`getIcon()`](https://docs.obsidian.md/Reference/TypeScript+API/View/getIcon) | | | | |
| | [`getState()`](https://docs.obsidian.md/Reference/TypeScript+API/View/getState) | | | | |
| | [`getViewType()`](https://docs.obsidian.md/Reference/TypeScript+API/View/getViewType) | `abstract` | | | |
| | [`load()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/load) | | Load this component and its children<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`onClose()`](https://docs.obsidian.md/Reference/TypeScript+API/View/onClose) | `protected` | | | |
| | [`onload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/onload) | | Override this to load your component<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`onOpen()`](https://docs.obsidian.md/Reference/TypeScript+API/View/onOpen) | `protected` | | | |
| | [`onPaneMenu(menu, source)`](https://docs.obsidian.md/Reference/TypeScript+API/View/onPaneMenu) | | Populates the pane menu.<br>(Replaces the previously removed `onHeaderMenu` and `onMoreOptionsMenu`) | | |
| | [`onResize()`](https://docs.obsidian.md/Reference/TypeScript+API/View/onResize) | | Called when the size of this view is changed. | | |
| | [`onunload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/onunload) | | Override this to unload your component<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`register(cb)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/register) | | Registers a callback to be called when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent_1) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent_2) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerEvent(eventRef)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerEvent) | | Registers an event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerInterval(id)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerInterval) | | Registers an interval (from setInterval) to be cancelled when unloading Use instead of to avoid TypeScript confusing between NodeJS vs Browser API<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`removeChild(component)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/removeChild) | | Removes a child component, unloading it<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`setEphemeralState(state)`](https://docs.obsidian.md/Reference/TypeScript+API/View/setEphemeralState) | | | | |
| | [`setState(state, result)`](https://docs.obsidian.md/Reference/TypeScript+API/View/setState) | | | | |
| | [`unload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/unload) | | Unload this component and its children<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| Links to this page | |
| [(constructor)](https://docs.obsidian.md/Reference/TypeScript+API/View/(constructor)) | |
| [app](https://docs.obsidian.md/Reference/TypeScript+API/View/app) | |
| [containerEl](https://docs.obsidian.md/Reference/TypeScript+API/View/containerEl) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [getDisplayText](https://docs.obsidian.md/Reference/TypeScript+API/View/getDisplayText) | |
| [getEphemeralState](https://docs.obsidian.md/Reference/TypeScript+API/View/getEphemeralState) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/View/getIcon) | |
| [getState](https://docs.obsidian.md/Reference/TypeScript+API/View/getState) | |
| [getViewType](https://docs.obsidian.md/Reference/TypeScript+API/View/getViewType) | |
| [icon](https://docs.obsidian.md/Reference/TypeScript+API/View/icon) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [leaf](https://docs.obsidian.md/Reference/TypeScript+API/View/leaf) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [navigation](https://docs.obsidian.md/Reference/TypeScript+API/View/navigation) | |
| [onClose](https://docs.obsidian.md/Reference/TypeScript+API/View/onClose) | |
| [onOpen](https://docs.obsidian.md/Reference/TypeScript+API/View/onOpen) | |
| [onPaneMenu](https://docs.obsidian.md/Reference/TypeScript+API/View/onPaneMenu) | |
| [onResize](https://docs.obsidian.md/Reference/TypeScript+API/View/onResize) | |
| [scope](https://docs.obsidian.md/Reference/TypeScript+API/View/scope) | |
| [setEphemeralState](https://docs.obsidian.md/Reference/TypeScript+API/View/setEphemeralState) | |
| [setState](https://docs.obsidian.md/Reference/TypeScript+API/View/setState) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| View | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| View class | |
| Constructors | |
| Properties | |
| Methods | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Obsidian Plugin Icons | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Getting started | |
| Guides | |
| User interface | |
| [About user interface](https://docs.obsidian.md/Plugins/User+interface/About+user+interface) | |
| [Commands](https://docs.obsidian.md/Plugins/User+interface/Commands) | |
| [Context menus](https://docs.obsidian.md/Plugins/User+interface/Context+menus) | |
| [HTML elements](https://docs.obsidian.md/Plugins/User+interface/HTML+elements) | |
| [Icons](https://docs.obsidian.md/Plugins/User+interface/Icons) | |
| [Modals](https://docs.obsidian.md/Plugins/User+interface/Modals) | |
| [Ribbon actions](https://docs.obsidian.md/Plugins/User+interface/Ribbon+actions) | |
| [Right-to-left](https://docs.obsidian.md/Plugins/User+interface/Right-to-left) | |
| [Settings](https://docs.obsidian.md/Plugins/User+interface/Settings) | |
| [Status bar](https://docs.obsidian.md/Plugins/User+interface/Status+bar) | |
| [Views](https://docs.obsidian.md/Plugins/User+interface/Views) | |
| [Workspace](https://docs.obsidian.md/Plugins/User+interface/Workspace) | |
| Editor | |
| Releasing | |
| [Events](https://docs.obsidian.md/Plugins/Events) | |
| [Vault](https://docs.obsidian.md/Plugins/Vault) | |
| Themes | |
| Reference | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # Icons | |
| Several of the UI components in the Obsidian API lets you configure an accompanying icon. You can choose from one of the built-in icons, or you can add your own. | |
| ## Browse available icons | |
| Browse to [lucide.dev](https://lucide.dev/) to see all available icons and their corresponding names. | |
| **Please note:** Only icons up to v0.446.0 are supported at this time. | |
| ## Use icons | |
| If you'd like to use icons in your custom interfaces, use the [setIcon()](https://docs.obsidian.md/Reference/TypeScript+API/setIcon) utility function to add an icon to an [HTML element](https://docs.obsidian.md/Plugins/User+interface/HTML+elements). The following example adds icon to the status bar: | |
| ```ts is-loaded | |
| import { Plugin, setIcon } from 'obsidian'; | |
| export default class ExamplePlugin extends Plugin { | |
| async onload() { | |
| const item = this.addStatusBarItem(); | |
| setIcon(item, 'info'); | |
| } | |
| } | |
| ``` | |
| To change the size of the icon, set the `--icon-size` [CSS variable](https://docs.obsidian.md/Reference/CSS+variables/Foundations/Icons) on the element containing the icon using preset sizes: | |
| ```css is-loaded | |
| div { | |
| --icon-size: var(--icon-size-m); | |
| } | |
| ``` | |
| ## Add your own icon | |
| To add a custom icon for your plugin, use the [addIcon()](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) utility: | |
| ```ts is-loaded | |
| import { addIcon, Plugin } from 'obsidian'; | |
| export default class ExamplePlugin extends Plugin { | |
| async onload() { | |
| addIcon('circle', `<circle cx="50" cy="50" r="50" fill="currentColor" />`); | |
| this.addRibbonIcon('circle', 'Click me', () => { | |
| console.log('Hello, you!'); | |
| }); | |
| } | |
| } | |
| ``` | |
| `addIcon` takes two arguments: | |
| 1. A name to uniquely identify your icon. | |
| 2. The SVG content for the icon, without the surrounding `<svg>` tag. | |
| Note that your icon needs to fit within a `0 0 100 100` view box to be drawn properly. | |
| After the call to `addIcon`, you can use the icon just like any of the built-in icons. | |
| ### Icon design guidelines | |
| For compatibility and cohesiveness with the Obsidian interface, your icons should [follow Lucide’s guidelines](https://lucide.dev/guide/design/icon-design-guide): | |
| - Icons must be designed on a 24 by 24 pixels canvas | |
| - Icons must have at least 1 pixel padding within the canvas | |
| - Icons must have a stroke width of 2 pixels | |
| - Icons must use round joins | |
| - Icons must use round caps | |
| - Icons must use centered strokes | |
| - Shapes (such as rectangles) in icons must have border radius of 2 pixels | |
| - Distinct elements must have 2 pixels of spacing between each other | |
| Lucide also [provides templates and guides](https://github.com/lucide-icons/lucide/blob/main/CONTRIBUTING.md) for vector editors such as Illustrator, Figma, and Inkscape. | |
| Links to this page | |
| [Context menus](https://docs.obsidian.md/Plugins/User+interface/Context+menus) | |
| [Ribbon actions](https://docs.obsidian.md/Plugins/User+interface/Ribbon+actions) | |
| Icons | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| Browse available icons | |
| Use icons | |
| Add your own icon | |
| Icon design guidelines | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Obsidian ItemView Class | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| AbstractInputSuggest | |
| AbstractTextComponent | |
| App | |
| BaseComponent | |
| BlockCache | |
| BlockSubpathResult | |
| ButtonComponent | |
| CachedMetadata | |
| CacheItem | |
| CapacitorAdapter | |
| CloseableComponent | |
| ColorComponent | |
| Command | |
| Component | |
| DataAdapter | |
| DataWriteOptions | |
| Debouncer | |
| DropdownComponent | |
| Editor | |
| EditorChange | |
| EditorPosition | |
| EditorRange | |
| EditorRangeOrCaret | |
| EditorScrollInfo | |
| EditorSelection | |
| EditorSelectionOrCaret | |
| EditorSuggest | |
| EditorSuggestContext | |
| EditorSuggestTriggerInfo | |
| EditorTransaction | |
| Events | |
| ExtraButtonComponent | |
| FileManager | |
| FileStats | |
| FileSystemAdapter | |
| FileView | |
| FootnoteCache | |
| FootnoteRefCache | |
| FootnoteSubpathResult | |
| FrontMatterInfo | |
| FrontmatterLinkCache | |
| FuzzyMatch | |
| FuzzySuggestModal | |
| HeadingCache | |
| HeadingSubpathResult | |
| Hotkey | |
| HoverLinkSource | |
| HoverParent | |
| HoverPopover | |
| HSL | |
| Instruction | |
| ISuggestOwner | |
| ItemView | |
| Keymap | |
| KeymapContext | |
| KeymapEventHandler | |
| KeymapInfo | |
| ListedFiles | |
| ListItemCache | |
| LivePreviewStateType | |
| Loc | |
| MarkdownEditView | |
| MarkdownFileInfo | |
| MarkdownPostProcessor | |
| MarkdownPostProcessorContext | |
| MarkdownPreviewRenderer | |
| MarkdownPreviewView | |
| MarkdownRenderChild | |
| MarkdownRenderer | |
| MarkdownSectionInformation | |
| MarkdownSubView | |
| MarkdownView | |
| Menu | |
| MenuItem | |
| MenuPositionDef | |
| MetadataCache | |
| Modal | |
| MomentFormatComponent | |
| Notice | |
| ObsidianProtocolData | |
| OpenViewState | |
| Plugin | |
| PluginManifest | |
| PluginSettingTab | |
| Point | |
| PopoverSuggest | |
| Pos | |
| ProgressBarComponent | |
| Reference | |
| ReferenceLinkCache | |
| RequestUrlParam | |
| RequestUrlResponse | |
| RequestUrlResponsePromise | |
| RGB | |
| Scope | |
| SearchComponent | |
| SearchResult | |
| SearchResultContainer | |
| SectionCache | |
| Setting | |
| SettingTab | |
| SliderComponent | |
| Stat | |
| SubpathResult | |
| SuggestModal | |
| TAbstractFile | |
| TagCache | |
| Tasks | |
| TextAreaComponent | |
| TextComponent | |
| TextFileView | |
| TFile | |
| TFolder | |
| ToggleComponent | |
| TooltipOptions | |
| ValueComponent | |
| Vault | |
| View | |
| ViewState | |
| ViewStateResult | |
| Workspace | |
| WorkspaceContainer | |
| WorkspaceFloating | |
| WorkspaceItem | |
| WorkspaceLeaf | |
| WorkspaceMobileDrawer | |
| WorkspaceRoot | |
| WorkspaceSidedock | |
| WorkspaceSplit | |
| WorkspaceTabs | |
| WorkspaceWindow | |
| WorkspaceWindowInitData | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) | |
| [addIcon](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) | |
| [apiVersion](https://docs.obsidian.md/Reference/TypeScript+API/apiVersion) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [arrayBufferToBase64](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToBase64) | |
| [arrayBufferToHex](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToHex) | |
| [base64ToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/base64ToArrayBuffer) | |
| [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent) | |
| [BlockCache](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) | |
| [BlockSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/BlockSubpathResult) | |
| [ButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ButtonComponent) | |
| [CachedMetadata](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| [CacheItem](https://docs.obsidian.md/Reference/TypeScript+API/CacheItem) | |
| [CapacitorAdapter](https://docs.obsidian.md/Reference/TypeScript+API/CapacitorAdapter) | |
| [CloseableComponent](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| [ColorComponent](https://docs.obsidian.md/Reference/TypeScript+API/ColorComponent) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| [Constructor](https://docs.obsidian.md/Reference/TypeScript+API/Constructor) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [DataWriteOptions](https://docs.obsidian.md/Reference/TypeScript+API/DataWriteOptions) | |
| [debounce](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| [Debouncer](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) | |
| [displayTooltip](https://docs.obsidian.md/Reference/TypeScript+API/displayTooltip) | |
| [DropdownComponent](https://docs.obsidian.md/Reference/TypeScript+API/DropdownComponent) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| [EditorChange](https://docs.obsidian.md/Reference/TypeScript+API/EditorChange) | |
| [EditorCommandName](https://docs.obsidian.md/Reference/TypeScript+API/EditorCommandName) | |
| [editorEditorField](https://docs.obsidian.md/Reference/TypeScript+API/editorEditorField) | |
| [editorInfoField](https://docs.obsidian.md/Reference/TypeScript+API/editorInfoField) | |
| [editorLivePreviewField](https://docs.obsidian.md/Reference/TypeScript+API/editorLivePreviewField) | |
| [EditorPosition](https://docs.obsidian.md/Reference/TypeScript+API/EditorPosition) | |
| [EditorRange](https://docs.obsidian.md/Reference/TypeScript+API/EditorRange) | |
| [EditorRangeOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorRangeOrCaret) | |
| [EditorScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorScrollInfo) | |
| [EditorSelection](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelection) | |
| [EditorSelectionOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelectionOrCaret) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [EditorSuggestTriggerInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestTriggerInfo) | |
| [EditorTransaction](https://docs.obsidian.md/Reference/TypeScript+API/EditorTransaction) | |
| [editorViewField](https://docs.obsidian.md/Reference/TypeScript+API/editorViewField) | |
| [EmbedCache](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) | |
| [EventRef](https://docs.obsidian.md/Reference/TypeScript+API/EventRef) | |
| [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| [ExtraButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ExtraButtonComponent) | |
| [FileManager](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | |
| [FileStats](https://docs.obsidian.md/Reference/TypeScript+API/FileStats) | |
| [FileSystemAdapter](https://docs.obsidian.md/Reference/TypeScript+API/FileSystemAdapter) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [finishRenderMath](https://docs.obsidian.md/Reference/TypeScript+API/finishRenderMath) | |
| [FootnoteCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) | |
| [FootnoteRefCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) | |
| [FootnoteSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteSubpathResult) | |
| [FrontMatterCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | |
| [FrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterInfo) | |
| [FrontmatterLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) | |
| [FuzzyMatch](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getBlobArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/getBlobArrayBuffer) | |
| [getFrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/getFrontMatterInfo) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/getIcon) | |
| [getIconIds](https://docs.obsidian.md/Reference/TypeScript+API/getIconIds) | |
| [getLanguage](https://docs.obsidian.md/Reference/TypeScript+API/getLanguage) | |
| [getLinkpath](https://docs.obsidian.md/Reference/TypeScript+API/getLinkpath) | |
| [HeadingCache](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) | |
| [HeadingSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/HeadingSubpathResult) | |
| [HexString](https://docs.obsidian.md/Reference/TypeScript+API/HexString) | |
| [hexToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/hexToArrayBuffer) | |
| [Hotkey](https://docs.obsidian.md/Reference/TypeScript+API/Hotkey) | |
| [HoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/HoverLinkSource) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [HSL](https://docs.obsidian.md/Reference/TypeScript+API/HSL) | |
| [htmlToMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/htmlToMarkdown) | |
| [IconName](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Instruction](https://docs.obsidian.md/Reference/TypeScript+API/Instruction) | |
| [ISuggestOwner](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [iterateRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateRefs) | |
| [Keymap](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | |
| [KeymapContext](https://docs.obsidian.md/Reference/TypeScript+API/KeymapContext) | |
| [KeymapEventHandler](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventHandler) | |
| [KeymapEventListener](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventListener) | |
| [KeymapInfo](https://docs.obsidian.md/Reference/TypeScript+API/KeymapInfo) | |
| [LinkCache](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) | |
| [ListedFiles](https://docs.obsidian.md/Reference/TypeScript+API/ListedFiles) | |
| [ListItemCache](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) | |
| [livePreviewState](https://docs.obsidian.md/Reference/TypeScript+API/livePreviewState) | |
| [LivePreviewStateType](https://docs.obsidian.md/Reference/TypeScript+API/LivePreviewStateType) | |
| [loadMathJax](https://docs.obsidian.md/Reference/TypeScript+API/loadMathJax) | |
| [loadMermaid](https://docs.obsidian.md/Reference/TypeScript+API/loadMermaid) | |
| [loadPdfJs](https://docs.obsidian.md/Reference/TypeScript+API/loadPdfJs) | |
| [loadPrism](https://docs.obsidian.md/Reference/TypeScript+API/loadPrism) | |
| [Loc](https://docs.obsidian.md/Reference/TypeScript+API/Loc) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessor) | |
| [MarkdownPostProcessorContext](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext) | |
| [MarkdownPreviewEvents](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents) | |
| [MarkdownPreviewRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewRenderer) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownSectionInformation](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSectionInformation) | |
| [MarkdownSubView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSubView) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [MarkdownViewModeType](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownViewModeType) | |
| [Menu](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| [MenuItem](https://docs.obsidian.md/Reference/TypeScript+API/MenuItem) | |
| [MenuPositionDef](https://docs.obsidian.md/Reference/TypeScript+API/MenuPositionDef) | |
| [MenuSeparator](https://docs.obsidian.md/Reference/TypeScript+API/MenuSeparator) | |
| [MetadataCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | |
| [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| [Modifier](https://docs.obsidian.md/Reference/TypeScript+API/Modifier) | |
| [moment](https://docs.obsidian.md/Reference/TypeScript+API/moment) | |
| [MomentFormatComponent](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent) | |
| [normalizePath](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath) | |
| [Notice](https://docs.obsidian.md/Reference/TypeScript+API/Notice) | |
| [ObsidianProtocolData](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolData) | |
| [ObsidianProtocolHandler](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolHandler) | |
| [OpenViewState](https://docs.obsidian.md/Reference/TypeScript+API/OpenViewState) | |
| [PaneType](https://docs.obsidian.md/Reference/TypeScript+API/PaneType) | |
| [parseFrontMatterAliases](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterAliases) | |
| [parseFrontMatterEntry](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterEntry) | |
| [parseFrontMatterStringArray](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterStringArray) | |
| [parseFrontMatterTags](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterTags) | |
| [parseLinktext](https://docs.obsidian.md/Reference/TypeScript+API/parseLinktext) | |
| [parseYaml](https://docs.obsidian.md/Reference/TypeScript+API/parseYaml) | |
| [Platform](https://docs.obsidian.md/Reference/TypeScript+API/Platform) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [PluginManifest](https://docs.obsidian.md/Reference/TypeScript+API/PluginManifest) | |
| [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab) | |
| [Point](https://docs.obsidian.md/Reference/TypeScript+API/Point) | |
| [PopoverState](https://docs.obsidian.md/Reference/TypeScript+API/PopoverState) | |
| [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) | |
| [Pos](https://docs.obsidian.md/Reference/TypeScript+API/Pos) | |
| [prepareFuzzySearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareFuzzySearch) | |
| [prepareSimpleSearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareSimpleSearch) | |
| [ProgressBarComponent](https://docs.obsidian.md/Reference/TypeScript+API/ProgressBarComponent) | |
| [Reference](https://docs.obsidian.md/Reference/TypeScript+API/Reference) | |
| [ReferenceCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceCache) | |
| [ReferenceLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceLinkCache) | |
| [removeIcon](https://docs.obsidian.md/Reference/TypeScript+API/removeIcon) | |
| [renderMatches](https://docs.obsidian.md/Reference/TypeScript+API/renderMatches) | |
| [renderMath](https://docs.obsidian.md/Reference/TypeScript+API/renderMath) | |
| [renderResults](https://docs.obsidian.md/Reference/TypeScript+API/renderResults) | |
| [request](https://docs.obsidian.md/Reference/TypeScript+API/request) | |
| [requestUrl](https://docs.obsidian.md/Reference/TypeScript+API/requestUrl) | |
| [RequestUrlParam](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlParam) | |
| [RequestUrlResponse](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponse) | |
| [RequestUrlResponsePromise](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponsePromise) | |
| [requireApiVersion](https://docs.obsidian.md/Reference/TypeScript+API/requireApiVersion) | |
| [resolveSubpath](https://docs.obsidian.md/Reference/TypeScript+API/resolveSubpath) | |
| [RGB](https://docs.obsidian.md/Reference/TypeScript+API/RGB) | |
| [sanitizeHTMLToDom](https://docs.obsidian.md/Reference/TypeScript+API/sanitizeHTMLToDom) | |
| [Scope](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | |
| [SearchComponent](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent) | |
| [SearchMatches](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatches) | |
| [SearchMatchPart](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatchPart) | |
| [SearchResult](https://docs.obsidian.md/Reference/TypeScript+API/SearchResult) | |
| [SearchResultContainer](https://docs.obsidian.md/Reference/TypeScript+API/SearchResultContainer) | |
| [SectionCache](https://docs.obsidian.md/Reference/TypeScript+API/SectionCache) | |
| [setIcon](https://docs.obsidian.md/Reference/TypeScript+API/setIcon) | |
| [Setting](https://docs.obsidian.md/Reference/TypeScript+API/Setting) | |
| [SettingTab](https://docs.obsidian.md/Reference/TypeScript+API/SettingTab) | |
| [setTooltip](https://docs.obsidian.md/Reference/TypeScript+API/setTooltip) | |
| [Side](https://docs.obsidian.md/Reference/TypeScript+API/Side) | |
| [SliderComponent](https://docs.obsidian.md/Reference/TypeScript+API/SliderComponent) | |
| [sortSearchResults](https://docs.obsidian.md/Reference/TypeScript+API/sortSearchResults) | |
| [SplitDirection](https://docs.obsidian.md/Reference/TypeScript+API/SplitDirection) | |
| [Stat](https://docs.obsidian.md/Reference/TypeScript+API/Stat) | |
| [stringifyYaml](https://docs.obsidian.md/Reference/TypeScript+API/stringifyYaml) | |
| [stripHeading](https://docs.obsidian.md/Reference/TypeScript+API/stripHeading) | |
| [stripHeadingForLink](https://docs.obsidian.md/Reference/TypeScript+API/stripHeadingForLink) | |
| [SubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/SubpathResult) | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) | |
| [TagCache](https://docs.obsidian.md/Reference/TypeScript+API/TagCache) | |
| [Tasks](https://docs.obsidian.md/Reference/TypeScript+API/Tasks) | |
| [TextAreaComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextAreaComponent) | |
| [TextComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [TFile](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | |
| [TFolder](https://docs.obsidian.md/Reference/TypeScript+API/TFolder) | |
| [ToggleComponent](https://docs.obsidian.md/Reference/TypeScript+API/ToggleComponent) | |
| [TooltipOptions](https://docs.obsidian.md/Reference/TypeScript+API/TooltipOptions) | |
| [TooltipPlacement](https://docs.obsidian.md/Reference/TypeScript+API/TooltipPlacement) | |
| [UserEvent](https://docs.obsidian.md/Reference/TypeScript+API/UserEvent) | |
| [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent) | |
| [Vault](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [ViewState](https://docs.obsidian.md/Reference/TypeScript+API/ViewState) | |
| [ViewStateResult](https://docs.obsidian.md/Reference/TypeScript+API/ViewStateResult) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| [WorkspaceContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| [WorkspaceFloating](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceFloating) | |
| [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| [WorkspaceMobileDrawer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | |
| [WorkspaceParent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | |
| [WorkspaceRibbon](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | |
| [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | |
| [WorkspaceSidedock](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) | |
| [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) | |
| [WorkspaceTabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) | |
| [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow) | |
| [WorkspaceWindowInitData](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindowInitData) | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # ItemView | |
| ```yaml is-loaded | |
| aliases: "ItemView" | |
| cssclasses: hide-title | |
| ``` | |
| [`ItemView`](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| ## ItemView class | |
| **Signature:** | |
| ```typescript is-loaded | |
| export abstract class ItemView extends View | |
| ``` | |
| **Extends:** [`View`](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| ## Constructors | |
| | Constructor | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`(constructor)(leaf)`](https://docs.obsidian.md/Reference/TypeScript+API/ItemView/(constructor)) | | Constructs a new instance of the `ItemView` class | | |
| ## Properties | |
| | Property | Modifiers | Type | Description | | |
| | --- | --- | --- | --- | | |
| | [`app`](https://docs.obsidian.md/Reference/TypeScript+API/View/app) | | [`App`](https://docs.obsidian.md/Reference/TypeScript+API/App) | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`containerEl`](https://docs.obsidian.md/Reference/TypeScript+API/View/containerEl) | | `HTMLElement` | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`contentEl`](https://docs.obsidian.md/Reference/TypeScript+API/ItemView/contentEl) | | `HTMLElement` | | | |
| | [`icon`](https://docs.obsidian.md/Reference/TypeScript+API/View/icon) | | [`IconName`](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`leaf`](https://docs.obsidian.md/Reference/TypeScript+API/View/leaf) | | [`WorkspaceLeaf`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`navigation`](https://docs.obsidian.md/Reference/TypeScript+API/View/navigation) | | `boolean` | Whether or not the view is intended for navigation. If your view is a static view that is not intended to be navigated away, set this to false. (For example: File explorer, calendar, etc.) If your view opens a file or can be otherwise navigated, set this to true. (For example: Markdown editor view, Kanban view, PDF view, etc.)<br>(Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`scope`](https://docs.obsidian.md/Reference/TypeScript+API/View/scope) | | [`Scope`](https://docs.obsidian.md/Reference/TypeScript+API/Scope) ` | null` | Assign an optional scope to your view to register hotkeys for when the view is in focus.<br>(Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| ## Methods | |
| | Method | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`addAction(icon, title, callback)`](https://docs.obsidian.md/Reference/TypeScript+API/ItemView/addAction) | | | | |
| | [`addChild(component)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/addChild) | | Adds a child component, loading it if this component is loaded<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`getDisplayText()`](https://docs.obsidian.md/Reference/TypeScript+API/View/getDisplayText) | `abstract` | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`getEphemeralState()`](https://docs.obsidian.md/Reference/TypeScript+API/View/getEphemeralState) | | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`getIcon()`](https://docs.obsidian.md/Reference/TypeScript+API/View/getIcon) | | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`getState()`](https://docs.obsidian.md/Reference/TypeScript+API/View/getState) | | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`getViewType()`](https://docs.obsidian.md/Reference/TypeScript+API/View/getViewType) | `abstract` | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`load()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/load) | | Load this component and its children<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`onClose()`](https://docs.obsidian.md/Reference/TypeScript+API/View/onClose) | `protected` | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`onload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/onload) | | Override this to load your component<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`onOpen()`](https://docs.obsidian.md/Reference/TypeScript+API/View/onOpen) | `protected` | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`onPaneMenu(menu, source)`](https://docs.obsidian.md/Reference/TypeScript+API/View/onPaneMenu) | | Populates the pane menu.<br>(Replaces the previously removed `onHeaderMenu` and `onMoreOptionsMenu`)<br>(Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`onResize()`](https://docs.obsidian.md/Reference/TypeScript+API/View/onResize) | | Called when the size of this view is changed.<br>(Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`onunload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/onunload) | | Override this to unload your component<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`register(cb)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/register) | | Registers a callback to be called when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent_1) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent_2) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerEvent(eventRef)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerEvent) | | Registers an event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerInterval(id)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerInterval) | | Registers an interval (from setInterval) to be cancelled when unloading Use instead of to avoid TypeScript confusing between NodeJS vs Browser API<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`removeChild(component)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/removeChild) | | Removes a child component, unloading it<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`setEphemeralState(state)`](https://docs.obsidian.md/Reference/TypeScript+API/View/setEphemeralState) | | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`setState(state, result)`](https://docs.obsidian.md/Reference/TypeScript+API/View/setState) | | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`unload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/unload) | | Unload this component and its children<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| Links to this page | |
| [(constructor)](https://docs.obsidian.md/Reference/TypeScript+API/ItemView/(constructor)) | |
| [addAction](https://docs.obsidian.md/Reference/TypeScript+API/ItemView/addAction) | |
| [contentEl](https://docs.obsidian.md/Reference/TypeScript+API/ItemView/contentEl) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [Use Svelte in your plugin](https://docs.obsidian.md/Plugins/Getting+started/Use+Svelte+in+your+plugin) | |
| [Views](https://docs.obsidian.md/Plugins/User+interface/Views) | |
| ItemView | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| ItemView class | |
| Constructors | |
| Properties | |
| Methods | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## EditableFileView Class | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| AbstractInputSuggest | |
| AbstractTextComponent | |
| App | |
| BaseComponent | |
| BlockCache | |
| BlockSubpathResult | |
| ButtonComponent | |
| CachedMetadata | |
| CacheItem | |
| CapacitorAdapter | |
| CloseableComponent | |
| ColorComponent | |
| Command | |
| Component | |
| DataAdapter | |
| DataWriteOptions | |
| Debouncer | |
| DropdownComponent | |
| Editor | |
| EditorChange | |
| EditorPosition | |
| EditorRange | |
| EditorRangeOrCaret | |
| EditorScrollInfo | |
| EditorSelection | |
| EditorSelectionOrCaret | |
| EditorSuggest | |
| EditorSuggestContext | |
| EditorSuggestTriggerInfo | |
| EditorTransaction | |
| Events | |
| ExtraButtonComponent | |
| FileManager | |
| FileStats | |
| FileSystemAdapter | |
| FileView | |
| FootnoteCache | |
| FootnoteRefCache | |
| FootnoteSubpathResult | |
| FrontMatterInfo | |
| FrontmatterLinkCache | |
| FuzzyMatch | |
| FuzzySuggestModal | |
| HeadingCache | |
| HeadingSubpathResult | |
| Hotkey | |
| HoverLinkSource | |
| HoverParent | |
| HoverPopover | |
| HSL | |
| Instruction | |
| ISuggestOwner | |
| ItemView | |
| Keymap | |
| KeymapContext | |
| KeymapEventHandler | |
| KeymapInfo | |
| ListedFiles | |
| ListItemCache | |
| LivePreviewStateType | |
| Loc | |
| MarkdownEditView | |
| MarkdownFileInfo | |
| MarkdownPostProcessor | |
| MarkdownPostProcessorContext | |
| MarkdownPreviewRenderer | |
| MarkdownPreviewView | |
| MarkdownRenderChild | |
| MarkdownRenderer | |
| MarkdownSectionInformation | |
| MarkdownSubView | |
| MarkdownView | |
| Menu | |
| MenuItem | |
| MenuPositionDef | |
| MetadataCache | |
| Modal | |
| MomentFormatComponent | |
| Notice | |
| ObsidianProtocolData | |
| OpenViewState | |
| Plugin | |
| PluginManifest | |
| PluginSettingTab | |
| Point | |
| PopoverSuggest | |
| Pos | |
| ProgressBarComponent | |
| Reference | |
| ReferenceLinkCache | |
| RequestUrlParam | |
| RequestUrlResponse | |
| RequestUrlResponsePromise | |
| RGB | |
| Scope | |
| SearchComponent | |
| SearchResult | |
| SearchResultContainer | |
| SectionCache | |
| Setting | |
| SettingTab | |
| SliderComponent | |
| Stat | |
| SubpathResult | |
| SuggestModal | |
| TAbstractFile | |
| TagCache | |
| Tasks | |
| TextAreaComponent | |
| TextComponent | |
| TextFileView | |
| TFile | |
| TFolder | |
| ToggleComponent | |
| TooltipOptions | |
| ValueComponent | |
| Vault | |
| View | |
| ViewState | |
| ViewStateResult | |
| Workspace | |
| WorkspaceContainer | |
| WorkspaceFloating | |
| WorkspaceItem | |
| WorkspaceLeaf | |
| WorkspaceMobileDrawer | |
| WorkspaceRoot | |
| WorkspaceSidedock | |
| WorkspaceSplit | |
| WorkspaceTabs | |
| WorkspaceWindow | |
| WorkspaceWindowInitData | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) | |
| [addIcon](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) | |
| [apiVersion](https://docs.obsidian.md/Reference/TypeScript+API/apiVersion) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [arrayBufferToBase64](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToBase64) | |
| [arrayBufferToHex](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToHex) | |
| [base64ToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/base64ToArrayBuffer) | |
| [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent) | |
| [BlockCache](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) | |
| [BlockSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/BlockSubpathResult) | |
| [ButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ButtonComponent) | |
| [CachedMetadata](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| [CacheItem](https://docs.obsidian.md/Reference/TypeScript+API/CacheItem) | |
| [CapacitorAdapter](https://docs.obsidian.md/Reference/TypeScript+API/CapacitorAdapter) | |
| [CloseableComponent](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| [ColorComponent](https://docs.obsidian.md/Reference/TypeScript+API/ColorComponent) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| [Constructor](https://docs.obsidian.md/Reference/TypeScript+API/Constructor) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [DataWriteOptions](https://docs.obsidian.md/Reference/TypeScript+API/DataWriteOptions) | |
| [debounce](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| [Debouncer](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) | |
| [displayTooltip](https://docs.obsidian.md/Reference/TypeScript+API/displayTooltip) | |
| [DropdownComponent](https://docs.obsidian.md/Reference/TypeScript+API/DropdownComponent) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| [EditorChange](https://docs.obsidian.md/Reference/TypeScript+API/EditorChange) | |
| [EditorCommandName](https://docs.obsidian.md/Reference/TypeScript+API/EditorCommandName) | |
| [editorEditorField](https://docs.obsidian.md/Reference/TypeScript+API/editorEditorField) | |
| [editorInfoField](https://docs.obsidian.md/Reference/TypeScript+API/editorInfoField) | |
| [editorLivePreviewField](https://docs.obsidian.md/Reference/TypeScript+API/editorLivePreviewField) | |
| [EditorPosition](https://docs.obsidian.md/Reference/TypeScript+API/EditorPosition) | |
| [EditorRange](https://docs.obsidian.md/Reference/TypeScript+API/EditorRange) | |
| [EditorRangeOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorRangeOrCaret) | |
| [EditorScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorScrollInfo) | |
| [EditorSelection](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelection) | |
| [EditorSelectionOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelectionOrCaret) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [EditorSuggestTriggerInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestTriggerInfo) | |
| [EditorTransaction](https://docs.obsidian.md/Reference/TypeScript+API/EditorTransaction) | |
| [editorViewField](https://docs.obsidian.md/Reference/TypeScript+API/editorViewField) | |
| [EmbedCache](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) | |
| [EventRef](https://docs.obsidian.md/Reference/TypeScript+API/EventRef) | |
| [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| [ExtraButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ExtraButtonComponent) | |
| [FileManager](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | |
| [FileStats](https://docs.obsidian.md/Reference/TypeScript+API/FileStats) | |
| [FileSystemAdapter](https://docs.obsidian.md/Reference/TypeScript+API/FileSystemAdapter) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [finishRenderMath](https://docs.obsidian.md/Reference/TypeScript+API/finishRenderMath) | |
| [FootnoteCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) | |
| [FootnoteRefCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) | |
| [FootnoteSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteSubpathResult) | |
| [FrontMatterCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | |
| [FrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterInfo) | |
| [FrontmatterLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) | |
| [FuzzyMatch](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getBlobArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/getBlobArrayBuffer) | |
| [getFrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/getFrontMatterInfo) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/getIcon) | |
| [getIconIds](https://docs.obsidian.md/Reference/TypeScript+API/getIconIds) | |
| [getLanguage](https://docs.obsidian.md/Reference/TypeScript+API/getLanguage) | |
| [getLinkpath](https://docs.obsidian.md/Reference/TypeScript+API/getLinkpath) | |
| [HeadingCache](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) | |
| [HeadingSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/HeadingSubpathResult) | |
| [HexString](https://docs.obsidian.md/Reference/TypeScript+API/HexString) | |
| [hexToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/hexToArrayBuffer) | |
| [Hotkey](https://docs.obsidian.md/Reference/TypeScript+API/Hotkey) | |
| [HoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/HoverLinkSource) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [HSL](https://docs.obsidian.md/Reference/TypeScript+API/HSL) | |
| [htmlToMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/htmlToMarkdown) | |
| [IconName](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Instruction](https://docs.obsidian.md/Reference/TypeScript+API/Instruction) | |
| [ISuggestOwner](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [iterateRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateRefs) | |
| [Keymap](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | |
| [KeymapContext](https://docs.obsidian.md/Reference/TypeScript+API/KeymapContext) | |
| [KeymapEventHandler](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventHandler) | |
| [KeymapEventListener](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventListener) | |
| [KeymapInfo](https://docs.obsidian.md/Reference/TypeScript+API/KeymapInfo) | |
| [LinkCache](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) | |
| [ListedFiles](https://docs.obsidian.md/Reference/TypeScript+API/ListedFiles) | |
| [ListItemCache](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) | |
| [livePreviewState](https://docs.obsidian.md/Reference/TypeScript+API/livePreviewState) | |
| [LivePreviewStateType](https://docs.obsidian.md/Reference/TypeScript+API/LivePreviewStateType) | |
| [loadMathJax](https://docs.obsidian.md/Reference/TypeScript+API/loadMathJax) | |
| [loadMermaid](https://docs.obsidian.md/Reference/TypeScript+API/loadMermaid) | |
| [loadPdfJs](https://docs.obsidian.md/Reference/TypeScript+API/loadPdfJs) | |
| [loadPrism](https://docs.obsidian.md/Reference/TypeScript+API/loadPrism) | |
| [Loc](https://docs.obsidian.md/Reference/TypeScript+API/Loc) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessor) | |
| [MarkdownPostProcessorContext](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext) | |
| [MarkdownPreviewEvents](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents) | |
| [MarkdownPreviewRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewRenderer) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownSectionInformation](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSectionInformation) | |
| [MarkdownSubView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSubView) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [MarkdownViewModeType](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownViewModeType) | |
| [Menu](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| [MenuItem](https://docs.obsidian.md/Reference/TypeScript+API/MenuItem) | |
| [MenuPositionDef](https://docs.obsidian.md/Reference/TypeScript+API/MenuPositionDef) | |
| [MenuSeparator](https://docs.obsidian.md/Reference/TypeScript+API/MenuSeparator) | |
| [MetadataCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | |
| [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| [Modifier](https://docs.obsidian.md/Reference/TypeScript+API/Modifier) | |
| [moment](https://docs.obsidian.md/Reference/TypeScript+API/moment) | |
| [MomentFormatComponent](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent) | |
| [normalizePath](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath) | |
| [Notice](https://docs.obsidian.md/Reference/TypeScript+API/Notice) | |
| [ObsidianProtocolData](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolData) | |
| [ObsidianProtocolHandler](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolHandler) | |
| [OpenViewState](https://docs.obsidian.md/Reference/TypeScript+API/OpenViewState) | |
| [PaneType](https://docs.obsidian.md/Reference/TypeScript+API/PaneType) | |
| [parseFrontMatterAliases](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterAliases) | |
| [parseFrontMatterEntry](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterEntry) | |
| [parseFrontMatterStringArray](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterStringArray) | |
| [parseFrontMatterTags](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterTags) | |
| [parseLinktext](https://docs.obsidian.md/Reference/TypeScript+API/parseLinktext) | |
| [parseYaml](https://docs.obsidian.md/Reference/TypeScript+API/parseYaml) | |
| [Platform](https://docs.obsidian.md/Reference/TypeScript+API/Platform) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [PluginManifest](https://docs.obsidian.md/Reference/TypeScript+API/PluginManifest) | |
| [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab) | |
| [Point](https://docs.obsidian.md/Reference/TypeScript+API/Point) | |
| [PopoverState](https://docs.obsidian.md/Reference/TypeScript+API/PopoverState) | |
| [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) | |
| [Pos](https://docs.obsidian.md/Reference/TypeScript+API/Pos) | |
| [prepareFuzzySearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareFuzzySearch) | |
| [prepareSimpleSearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareSimpleSearch) | |
| [ProgressBarComponent](https://docs.obsidian.md/Reference/TypeScript+API/ProgressBarComponent) | |
| [Reference](https://docs.obsidian.md/Reference/TypeScript+API/Reference) | |
| [ReferenceCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceCache) | |
| [ReferenceLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceLinkCache) | |
| [removeIcon](https://docs.obsidian.md/Reference/TypeScript+API/removeIcon) | |
| [renderMatches](https://docs.obsidian.md/Reference/TypeScript+API/renderMatches) | |
| [renderMath](https://docs.obsidian.md/Reference/TypeScript+API/renderMath) | |
| [renderResults](https://docs.obsidian.md/Reference/TypeScript+API/renderResults) | |
| [request](https://docs.obsidian.md/Reference/TypeScript+API/request) | |
| [requestUrl](https://docs.obsidian.md/Reference/TypeScript+API/requestUrl) | |
| [RequestUrlParam](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlParam) | |
| [RequestUrlResponse](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponse) | |
| [RequestUrlResponsePromise](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponsePromise) | |
| [requireApiVersion](https://docs.obsidian.md/Reference/TypeScript+API/requireApiVersion) | |
| [resolveSubpath](https://docs.obsidian.md/Reference/TypeScript+API/resolveSubpath) | |
| [RGB](https://docs.obsidian.md/Reference/TypeScript+API/RGB) | |
| [sanitizeHTMLToDom](https://docs.obsidian.md/Reference/TypeScript+API/sanitizeHTMLToDom) | |
| [Scope](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | |
| [SearchComponent](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent) | |
| [SearchMatches](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatches) | |
| [SearchMatchPart](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatchPart) | |
| [SearchResult](https://docs.obsidian.md/Reference/TypeScript+API/SearchResult) | |
| [SearchResultContainer](https://docs.obsidian.md/Reference/TypeScript+API/SearchResultContainer) | |
| [SectionCache](https://docs.obsidian.md/Reference/TypeScript+API/SectionCache) | |
| [setIcon](https://docs.obsidian.md/Reference/TypeScript+API/setIcon) | |
| [Setting](https://docs.obsidian.md/Reference/TypeScript+API/Setting) | |
| [SettingTab](https://docs.obsidian.md/Reference/TypeScript+API/SettingTab) | |
| [setTooltip](https://docs.obsidian.md/Reference/TypeScript+API/setTooltip) | |
| [Side](https://docs.obsidian.md/Reference/TypeScript+API/Side) | |
| [SliderComponent](https://docs.obsidian.md/Reference/TypeScript+API/SliderComponent) | |
| [sortSearchResults](https://docs.obsidian.md/Reference/TypeScript+API/sortSearchResults) | |
| [SplitDirection](https://docs.obsidian.md/Reference/TypeScript+API/SplitDirection) | |
| [Stat](https://docs.obsidian.md/Reference/TypeScript+API/Stat) | |
| [stringifyYaml](https://docs.obsidian.md/Reference/TypeScript+API/stringifyYaml) | |
| [stripHeading](https://docs.obsidian.md/Reference/TypeScript+API/stripHeading) | |
| [stripHeadingForLink](https://docs.obsidian.md/Reference/TypeScript+API/stripHeadingForLink) | |
| [SubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/SubpathResult) | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) | |
| [TagCache](https://docs.obsidian.md/Reference/TypeScript+API/TagCache) | |
| [Tasks](https://docs.obsidian.md/Reference/TypeScript+API/Tasks) | |
| [TextAreaComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextAreaComponent) | |
| [TextComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [TFile](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | |
| [TFolder](https://docs.obsidian.md/Reference/TypeScript+API/TFolder) | |
| [ToggleComponent](https://docs.obsidian.md/Reference/TypeScript+API/ToggleComponent) | |
| [TooltipOptions](https://docs.obsidian.md/Reference/TypeScript+API/TooltipOptions) | |
| [TooltipPlacement](https://docs.obsidian.md/Reference/TypeScript+API/TooltipPlacement) | |
| [UserEvent](https://docs.obsidian.md/Reference/TypeScript+API/UserEvent) | |
| [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent) | |
| [Vault](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [ViewState](https://docs.obsidian.md/Reference/TypeScript+API/ViewState) | |
| [ViewStateResult](https://docs.obsidian.md/Reference/TypeScript+API/ViewStateResult) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| [WorkspaceContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| [WorkspaceFloating](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceFloating) | |
| [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| [WorkspaceMobileDrawer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | |
| [WorkspaceParent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | |
| [WorkspaceRibbon](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | |
| [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | |
| [WorkspaceSidedock](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) | |
| [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) | |
| [WorkspaceTabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) | |
| [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow) | |
| [WorkspaceWindowInitData](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindowInitData) | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # EditableFileView | |
| ```yaml is-loaded | |
| aliases: "EditableFileView" | |
| cssclasses: hide-title | |
| ``` | |
| [`EditableFileView`](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| ## EditableFileView class | |
| **Signature:** | |
| ```typescript is-loaded | |
| export abstract class EditableFileView extends FileView | |
| ``` | |
| **Extends:** [`FileView`](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| ## Constructors | |
| | Constructor | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`(constructor)(leaf)`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/(constructor)) | | Constructs a new instance of the `FileView` class<br>(Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| ## Properties | |
| | Property | Modifiers | Type | Description | | |
| | --- | --- | --- | --- | | |
| | [`allowNoFile`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/allowNoFile) | | `boolean` | (Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| | [`app`](https://docs.obsidian.md/Reference/TypeScript+API/View/app) | | [`App`](https://docs.obsidian.md/Reference/TypeScript+API/App) | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`containerEl`](https://docs.obsidian.md/Reference/TypeScript+API/View/containerEl) | | `HTMLElement` | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`contentEl`](https://docs.obsidian.md/Reference/TypeScript+API/ItemView/contentEl) | | `HTMLElement` | (Inherited from [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView)) | | |
| | [`file`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/file) | | [`TFile`](https://docs.obsidian.md/Reference/TypeScript+API/TFile) ` | null` | (Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| | [`icon`](https://docs.obsidian.md/Reference/TypeScript+API/View/icon) | | [`IconName`](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`leaf`](https://docs.obsidian.md/Reference/TypeScript+API/View/leaf) | | [`WorkspaceLeaf`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`navigation`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/navigation) | | `boolean` | File views can be navigated by default. <br>(Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| | [`scope`](https://docs.obsidian.md/Reference/TypeScript+API/View/scope) | | [`Scope`](https://docs.obsidian.md/Reference/TypeScript+API/Scope) ` | null` | Assign an optional scope to your view to register hotkeys for when the view is in focus.<br>(Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| ## Methods | |
| | Method | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`addAction(icon, title, callback)`](https://docs.obsidian.md/Reference/TypeScript+API/ItemView/addAction) | | (Inherited from [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView)) | | |
| | [`addChild(component)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/addChild) | | Adds a child component, loading it if this component is loaded<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`canAcceptExtension(extension)`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/canAcceptExtension) | | (Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| | [`getDisplayText()`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/getDisplayText) | | (Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| | [`getEphemeralState()`](https://docs.obsidian.md/Reference/TypeScript+API/View/getEphemeralState) | | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`getIcon()`](https://docs.obsidian.md/Reference/TypeScript+API/View/getIcon) | | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`getState()`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/getState) | | (Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| | [`getViewType()`](https://docs.obsidian.md/Reference/TypeScript+API/View/getViewType) | `abstract` | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`load()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/load) | | Load this component and its children<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`onClose()`](https://docs.obsidian.md/Reference/TypeScript+API/View/onClose) | `protected` | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`onload()`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/onload) | | (Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| | [`onLoadFile(file)`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/onLoadFile) | | (Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| | [`onOpen()`](https://docs.obsidian.md/Reference/TypeScript+API/View/onOpen) | `protected` | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`onPaneMenu(menu, source)`](https://docs.obsidian.md/Reference/TypeScript+API/View/onPaneMenu) | | Populates the pane menu.<br>(Replaces the previously removed `onHeaderMenu` and `onMoreOptionsMenu`)<br>(Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`onRename(file)`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/onRename) | | (Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| | [`onResize()`](https://docs.obsidian.md/Reference/TypeScript+API/View/onResize) | | Called when the size of this view is changed.<br>(Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`onunload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/onunload) | | Override this to unload your component<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`onUnloadFile(file)`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/onUnloadFile) | | (Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| | [`register(cb)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/register) | | Registers a callback to be called when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent_1) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent_2) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerEvent(eventRef)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerEvent) | | Registers an event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerInterval(id)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerInterval) | | Registers an interval (from setInterval) to be cancelled when unloading Use instead of to avoid TypeScript confusing between NodeJS vs Browser API<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`removeChild(component)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/removeChild) | | Removes a child component, unloading it<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`setEphemeralState(state)`](https://docs.obsidian.md/Reference/TypeScript+API/View/setEphemeralState) | | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`setState(state, result)`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/setState) | | (Inherited from [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView)) | | |
| | [`unload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/unload) | | Unload this component and its children<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| Links to this page | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| EditableFileView | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| EditableFileView class | |
| Constructors | |
| Properties | |
| Methods | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## MarkdownRenderer Class | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| AbstractInputSuggest | |
| AbstractTextComponent | |
| App | |
| BaseComponent | |
| BlockCache | |
| BlockSubpathResult | |
| ButtonComponent | |
| CachedMetadata | |
| CacheItem | |
| CapacitorAdapter | |
| CloseableComponent | |
| ColorComponent | |
| Command | |
| Component | |
| DataAdapter | |
| DataWriteOptions | |
| Debouncer | |
| DropdownComponent | |
| Editor | |
| EditorChange | |
| EditorPosition | |
| EditorRange | |
| EditorRangeOrCaret | |
| EditorScrollInfo | |
| EditorSelection | |
| EditorSelectionOrCaret | |
| EditorSuggest | |
| EditorSuggestContext | |
| EditorSuggestTriggerInfo | |
| EditorTransaction | |
| Events | |
| ExtraButtonComponent | |
| FileManager | |
| FileStats | |
| FileSystemAdapter | |
| FileView | |
| FootnoteCache | |
| FootnoteRefCache | |
| FootnoteSubpathResult | |
| FrontMatterInfo | |
| FrontmatterLinkCache | |
| FuzzyMatch | |
| FuzzySuggestModal | |
| HeadingCache | |
| HeadingSubpathResult | |
| Hotkey | |
| HoverLinkSource | |
| HoverParent | |
| HoverPopover | |
| HSL | |
| Instruction | |
| ISuggestOwner | |
| ItemView | |
| Keymap | |
| KeymapContext | |
| KeymapEventHandler | |
| KeymapInfo | |
| ListedFiles | |
| ListItemCache | |
| LivePreviewStateType | |
| Loc | |
| MarkdownEditView | |
| MarkdownFileInfo | |
| MarkdownPostProcessor | |
| MarkdownPostProcessorContext | |
| MarkdownPreviewRenderer | |
| MarkdownPreviewView | |
| MarkdownRenderChild | |
| MarkdownRenderer | |
| MarkdownSectionInformation | |
| MarkdownSubView | |
| MarkdownView | |
| Menu | |
| MenuItem | |
| MenuPositionDef | |
| MetadataCache | |
| Modal | |
| MomentFormatComponent | |
| Notice | |
| ObsidianProtocolData | |
| OpenViewState | |
| Plugin | |
| PluginManifest | |
| PluginSettingTab | |
| Point | |
| PopoverSuggest | |
| Pos | |
| ProgressBarComponent | |
| Reference | |
| ReferenceLinkCache | |
| RequestUrlParam | |
| RequestUrlResponse | |
| RequestUrlResponsePromise | |
| RGB | |
| Scope | |
| SearchComponent | |
| SearchResult | |
| SearchResultContainer | |
| SectionCache | |
| Setting | |
| SettingTab | |
| SliderComponent | |
| Stat | |
| SubpathResult | |
| SuggestModal | |
| TAbstractFile | |
| TagCache | |
| Tasks | |
| TextAreaComponent | |
| TextComponent | |
| TextFileView | |
| TFile | |
| TFolder | |
| ToggleComponent | |
| TooltipOptions | |
| ValueComponent | |
| Vault | |
| View | |
| ViewState | |
| ViewStateResult | |
| Workspace | |
| WorkspaceContainer | |
| WorkspaceFloating | |
| WorkspaceItem | |
| WorkspaceLeaf | |
| WorkspaceMobileDrawer | |
| WorkspaceRoot | |
| WorkspaceSidedock | |
| WorkspaceSplit | |
| WorkspaceTabs | |
| WorkspaceWindow | |
| WorkspaceWindowInitData | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) | |
| [addIcon](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) | |
| [apiVersion](https://docs.obsidian.md/Reference/TypeScript+API/apiVersion) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [arrayBufferToBase64](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToBase64) | |
| [arrayBufferToHex](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToHex) | |
| [base64ToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/base64ToArrayBuffer) | |
| [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent) | |
| [BlockCache](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) | |
| [BlockSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/BlockSubpathResult) | |
| [ButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ButtonComponent) | |
| [CachedMetadata](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| [CacheItem](https://docs.obsidian.md/Reference/TypeScript+API/CacheItem) | |
| [CapacitorAdapter](https://docs.obsidian.md/Reference/TypeScript+API/CapacitorAdapter) | |
| [CloseableComponent](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| [ColorComponent](https://docs.obsidian.md/Reference/TypeScript+API/ColorComponent) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| [Constructor](https://docs.obsidian.md/Reference/TypeScript+API/Constructor) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [DataWriteOptions](https://docs.obsidian.md/Reference/TypeScript+API/DataWriteOptions) | |
| [debounce](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| [Debouncer](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) | |
| [displayTooltip](https://docs.obsidian.md/Reference/TypeScript+API/displayTooltip) | |
| [DropdownComponent](https://docs.obsidian.md/Reference/TypeScript+API/DropdownComponent) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| [EditorChange](https://docs.obsidian.md/Reference/TypeScript+API/EditorChange) | |
| [EditorCommandName](https://docs.obsidian.md/Reference/TypeScript+API/EditorCommandName) | |
| [editorEditorField](https://docs.obsidian.md/Reference/TypeScript+API/editorEditorField) | |
| [editorInfoField](https://docs.obsidian.md/Reference/TypeScript+API/editorInfoField) | |
| [editorLivePreviewField](https://docs.obsidian.md/Reference/TypeScript+API/editorLivePreviewField) | |
| [EditorPosition](https://docs.obsidian.md/Reference/TypeScript+API/EditorPosition) | |
| [EditorRange](https://docs.obsidian.md/Reference/TypeScript+API/EditorRange) | |
| [EditorRangeOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorRangeOrCaret) | |
| [EditorScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorScrollInfo) | |
| [EditorSelection](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelection) | |
| [EditorSelectionOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelectionOrCaret) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [EditorSuggestTriggerInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestTriggerInfo) | |
| [EditorTransaction](https://docs.obsidian.md/Reference/TypeScript+API/EditorTransaction) | |
| [editorViewField](https://docs.obsidian.md/Reference/TypeScript+API/editorViewField) | |
| [EmbedCache](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) | |
| [EventRef](https://docs.obsidian.md/Reference/TypeScript+API/EventRef) | |
| [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| [ExtraButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ExtraButtonComponent) | |
| [FileManager](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | |
| [FileStats](https://docs.obsidian.md/Reference/TypeScript+API/FileStats) | |
| [FileSystemAdapter](https://docs.obsidian.md/Reference/TypeScript+API/FileSystemAdapter) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [finishRenderMath](https://docs.obsidian.md/Reference/TypeScript+API/finishRenderMath) | |
| [FootnoteCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) | |
| [FootnoteRefCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) | |
| [FootnoteSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteSubpathResult) | |
| [FrontMatterCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | |
| [FrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterInfo) | |
| [FrontmatterLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) | |
| [FuzzyMatch](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getBlobArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/getBlobArrayBuffer) | |
| [getFrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/getFrontMatterInfo) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/getIcon) | |
| [getIconIds](https://docs.obsidian.md/Reference/TypeScript+API/getIconIds) | |
| [getLanguage](https://docs.obsidian.md/Reference/TypeScript+API/getLanguage) | |
| [getLinkpath](https://docs.obsidian.md/Reference/TypeScript+API/getLinkpath) | |
| [HeadingCache](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) | |
| [HeadingSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/HeadingSubpathResult) | |
| [HexString](https://docs.obsidian.md/Reference/TypeScript+API/HexString) | |
| [hexToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/hexToArrayBuffer) | |
| [Hotkey](https://docs.obsidian.md/Reference/TypeScript+API/Hotkey) | |
| [HoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/HoverLinkSource) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [HSL](https://docs.obsidian.md/Reference/TypeScript+API/HSL) | |
| [htmlToMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/htmlToMarkdown) | |
| [IconName](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Instruction](https://docs.obsidian.md/Reference/TypeScript+API/Instruction) | |
| [ISuggestOwner](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [iterateRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateRefs) | |
| [Keymap](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | |
| [KeymapContext](https://docs.obsidian.md/Reference/TypeScript+API/KeymapContext) | |
| [KeymapEventHandler](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventHandler) | |
| [KeymapEventListener](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventListener) | |
| [KeymapInfo](https://docs.obsidian.md/Reference/TypeScript+API/KeymapInfo) | |
| [LinkCache](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) | |
| [ListedFiles](https://docs.obsidian.md/Reference/TypeScript+API/ListedFiles) | |
| [ListItemCache](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) | |
| [livePreviewState](https://docs.obsidian.md/Reference/TypeScript+API/livePreviewState) | |
| [LivePreviewStateType](https://docs.obsidian.md/Reference/TypeScript+API/LivePreviewStateType) | |
| [loadMathJax](https://docs.obsidian.md/Reference/TypeScript+API/loadMathJax) | |
| [loadMermaid](https://docs.obsidian.md/Reference/TypeScript+API/loadMermaid) | |
| [loadPdfJs](https://docs.obsidian.md/Reference/TypeScript+API/loadPdfJs) | |
| [loadPrism](https://docs.obsidian.md/Reference/TypeScript+API/loadPrism) | |
| [Loc](https://docs.obsidian.md/Reference/TypeScript+API/Loc) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessor) | |
| [MarkdownPostProcessorContext](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext) | |
| [MarkdownPreviewEvents](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents) | |
| [MarkdownPreviewRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewRenderer) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownSectionInformation](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSectionInformation) | |
| [MarkdownSubView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSubView) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [MarkdownViewModeType](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownViewModeType) | |
| [Menu](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| [MenuItem](https://docs.obsidian.md/Reference/TypeScript+API/MenuItem) | |
| [MenuPositionDef](https://docs.obsidian.md/Reference/TypeScript+API/MenuPositionDef) | |
| [MenuSeparator](https://docs.obsidian.md/Reference/TypeScript+API/MenuSeparator) | |
| [MetadataCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | |
| [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| [Modifier](https://docs.obsidian.md/Reference/TypeScript+API/Modifier) | |
| [moment](https://docs.obsidian.md/Reference/TypeScript+API/moment) | |
| [MomentFormatComponent](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent) | |
| [normalizePath](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath) | |
| [Notice](https://docs.obsidian.md/Reference/TypeScript+API/Notice) | |
| [ObsidianProtocolData](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolData) | |
| [ObsidianProtocolHandler](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolHandler) | |
| [OpenViewState](https://docs.obsidian.md/Reference/TypeScript+API/OpenViewState) | |
| [PaneType](https://docs.obsidian.md/Reference/TypeScript+API/PaneType) | |
| [parseFrontMatterAliases](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterAliases) | |
| [parseFrontMatterEntry](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterEntry) | |
| [parseFrontMatterStringArray](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterStringArray) | |
| [parseFrontMatterTags](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterTags) | |
| [parseLinktext](https://docs.obsidian.md/Reference/TypeScript+API/parseLinktext) | |
| [parseYaml](https://docs.obsidian.md/Reference/TypeScript+API/parseYaml) | |
| [Platform](https://docs.obsidian.md/Reference/TypeScript+API/Platform) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [PluginManifest](https://docs.obsidian.md/Reference/TypeScript+API/PluginManifest) | |
| [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab) | |
| [Point](https://docs.obsidian.md/Reference/TypeScript+API/Point) | |
| [PopoverState](https://docs.obsidian.md/Reference/TypeScript+API/PopoverState) | |
| [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) | |
| [Pos](https://docs.obsidian.md/Reference/TypeScript+API/Pos) | |
| [prepareFuzzySearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareFuzzySearch) | |
| [prepareSimpleSearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareSimpleSearch) | |
| [ProgressBarComponent](https://docs.obsidian.md/Reference/TypeScript+API/ProgressBarComponent) | |
| [Reference](https://docs.obsidian.md/Reference/TypeScript+API/Reference) | |
| [ReferenceCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceCache) | |
| [ReferenceLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceLinkCache) | |
| [removeIcon](https://docs.obsidian.md/Reference/TypeScript+API/removeIcon) | |
| [renderMatches](https://docs.obsidian.md/Reference/TypeScript+API/renderMatches) | |
| [renderMath](https://docs.obsidian.md/Reference/TypeScript+API/renderMath) | |
| [renderResults](https://docs.obsidian.md/Reference/TypeScript+API/renderResults) | |
| [request](https://docs.obsidian.md/Reference/TypeScript+API/request) | |
| [requestUrl](https://docs.obsidian.md/Reference/TypeScript+API/requestUrl) | |
| [RequestUrlParam](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlParam) | |
| [RequestUrlResponse](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponse) | |
| [RequestUrlResponsePromise](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponsePromise) | |
| [requireApiVersion](https://docs.obsidian.md/Reference/TypeScript+API/requireApiVersion) | |
| [resolveSubpath](https://docs.obsidian.md/Reference/TypeScript+API/resolveSubpath) | |
| [RGB](https://docs.obsidian.md/Reference/TypeScript+API/RGB) | |
| [sanitizeHTMLToDom](https://docs.obsidian.md/Reference/TypeScript+API/sanitizeHTMLToDom) | |
| [Scope](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | |
| [SearchComponent](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent) | |
| [SearchMatches](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatches) | |
| [SearchMatchPart](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatchPart) | |
| [SearchResult](https://docs.obsidian.md/Reference/TypeScript+API/SearchResult) | |
| [SearchResultContainer](https://docs.obsidian.md/Reference/TypeScript+API/SearchResultContainer) | |
| [SectionCache](https://docs.obsidian.md/Reference/TypeScript+API/SectionCache) | |
| [setIcon](https://docs.obsidian.md/Reference/TypeScript+API/setIcon) | |
| [Setting](https://docs.obsidian.md/Reference/TypeScript+API/Setting) | |
| [SettingTab](https://docs.obsidian.md/Reference/TypeScript+API/SettingTab) | |
| [setTooltip](https://docs.obsidian.md/Reference/TypeScript+API/setTooltip) | |
| [Side](https://docs.obsidian.md/Reference/TypeScript+API/Side) | |
| [SliderComponent](https://docs.obsidian.md/Reference/TypeScript+API/SliderComponent) | |
| [sortSearchResults](https://docs.obsidian.md/Reference/TypeScript+API/sortSearchResults) | |
| [SplitDirection](https://docs.obsidian.md/Reference/TypeScript+API/SplitDirection) | |
| [Stat](https://docs.obsidian.md/Reference/TypeScript+API/Stat) | |
| [stringifyYaml](https://docs.obsidian.md/Reference/TypeScript+API/stringifyYaml) | |
| [stripHeading](https://docs.obsidian.md/Reference/TypeScript+API/stripHeading) | |
| [stripHeadingForLink](https://docs.obsidian.md/Reference/TypeScript+API/stripHeadingForLink) | |
| [SubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/SubpathResult) | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) | |
| [TagCache](https://docs.obsidian.md/Reference/TypeScript+API/TagCache) | |
| [Tasks](https://docs.obsidian.md/Reference/TypeScript+API/Tasks) | |
| [TextAreaComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextAreaComponent) | |
| [TextComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [TFile](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | |
| [TFolder](https://docs.obsidian.md/Reference/TypeScript+API/TFolder) | |
| [ToggleComponent](https://docs.obsidian.md/Reference/TypeScript+API/ToggleComponent) | |
| [TooltipOptions](https://docs.obsidian.md/Reference/TypeScript+API/TooltipOptions) | |
| [TooltipPlacement](https://docs.obsidian.md/Reference/TypeScript+API/TooltipPlacement) | |
| [UserEvent](https://docs.obsidian.md/Reference/TypeScript+API/UserEvent) | |
| [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent) | |
| [Vault](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [ViewState](https://docs.obsidian.md/Reference/TypeScript+API/ViewState) | |
| [ViewStateResult](https://docs.obsidian.md/Reference/TypeScript+API/ViewStateResult) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| [WorkspaceContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| [WorkspaceFloating](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceFloating) | |
| [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| [WorkspaceMobileDrawer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | |
| [WorkspaceParent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | |
| [WorkspaceRibbon](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | |
| [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | |
| [WorkspaceSidedock](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) | |
| [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) | |
| [WorkspaceTabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) | |
| [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow) | |
| [WorkspaceWindowInitData](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindowInitData) | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # MarkdownRenderer | |
| ```yaml is-loaded | |
| aliases: "MarkdownRenderer" | |
| cssclasses: hide-title | |
| ``` | |
| [`MarkdownRenderer`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| ## MarkdownRenderer class | |
| **Signature:** | |
| ```typescript is-loaded | |
| export abstract class MarkdownRenderer extends MarkdownRenderChild implements MarkdownPreviewEvents, HoverParent | |
| ``` | |
| **Extends:** [`MarkdownRenderChild`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| **Implements:** [`MarkdownPreviewEvents`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents), [`HoverParent`](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| ## Constructors | |
| | Constructor | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`(constructor)(containerEl)`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild/(constructor)) | | Constructs a new instance of the `MarkdownRenderChild` class<br>(Inherited from [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild)) | | |
| ## Properties | |
| | Property | Modifiers | Type | Description | | |
| | --- | --- | --- | --- | | |
| | [`app`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer/app) | | [`App`](https://docs.obsidian.md/Reference/TypeScript+API/App) | | | |
| | [`containerEl`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild/containerEl) | | `HTMLElement` | (Inherited from [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild)) | | |
| | [`file`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer/file) | `abstract`<br>`readonly` | [`TFile`](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | | | |
| | [`hoverPopover`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer/hoverPopover) | | [`HoverPopover`](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | | | |
| ## Methods | |
| | Method | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`addChild(component)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/addChild) | | Adds a child component, loading it if this component is loaded<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`load()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/load) | | Load this component and its children<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`onload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/onload) | | Override this to load your component<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`onunload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/onunload) | | Override this to unload your component<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`register(cb)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/register) | | Registers a callback to be called when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent_1) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent_2) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerEvent(eventRef)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerEvent) | | Registers an event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerInterval(id)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerInterval) | | Registers an interval (from setInterval) to be cancelled when unloading Use instead of to avoid TypeScript confusing between NodeJS vs Browser API<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`removeChild(component)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/removeChild) | | Removes a child component, unloading it<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`render(app, markdown, el, sourcePath, component)`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer/render) | `static` | Renders Markdown string to an HTML element. | | |
| | [`renderMarkdown(markdown, el, sourcePath, component)`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer/renderMarkdown) | `static` | Renders Markdown string to an HTML element. | | |
| | [`unload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/unload) | | Unload this component and its children<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| Links to this page | |
| [app](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer/app) | |
| [file](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer/file) | |
| [hoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer/hoverPopover) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [render](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer/render) | |
| [renderMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer/renderMarkdown) | |
| MarkdownRenderer | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| MarkdownRenderer class | |
| Constructors | |
| Properties | |
| Methods | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Obsidian FileView Class | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| AbstractInputSuggest | |
| AbstractTextComponent | |
| App | |
| BaseComponent | |
| BlockCache | |
| BlockSubpathResult | |
| ButtonComponent | |
| CachedMetadata | |
| CacheItem | |
| CapacitorAdapter | |
| CloseableComponent | |
| ColorComponent | |
| Command | |
| Component | |
| DataAdapter | |
| DataWriteOptions | |
| Debouncer | |
| DropdownComponent | |
| Editor | |
| EditorChange | |
| EditorPosition | |
| EditorRange | |
| EditorRangeOrCaret | |
| EditorScrollInfo | |
| EditorSelection | |
| EditorSelectionOrCaret | |
| EditorSuggest | |
| EditorSuggestContext | |
| EditorSuggestTriggerInfo | |
| EditorTransaction | |
| Events | |
| ExtraButtonComponent | |
| FileManager | |
| FileStats | |
| FileSystemAdapter | |
| FileView | |
| FootnoteCache | |
| FootnoteRefCache | |
| FootnoteSubpathResult | |
| FrontMatterInfo | |
| FrontmatterLinkCache | |
| FuzzyMatch | |
| FuzzySuggestModal | |
| HeadingCache | |
| HeadingSubpathResult | |
| Hotkey | |
| HoverLinkSource | |
| HoverParent | |
| HoverPopover | |
| HSL | |
| Instruction | |
| ISuggestOwner | |
| ItemView | |
| Keymap | |
| KeymapContext | |
| KeymapEventHandler | |
| KeymapInfo | |
| ListedFiles | |
| ListItemCache | |
| LivePreviewStateType | |
| Loc | |
| MarkdownEditView | |
| MarkdownFileInfo | |
| MarkdownPostProcessor | |
| MarkdownPostProcessorContext | |
| MarkdownPreviewRenderer | |
| MarkdownPreviewView | |
| MarkdownRenderChild | |
| MarkdownRenderer | |
| MarkdownSectionInformation | |
| MarkdownSubView | |
| MarkdownView | |
| Menu | |
| MenuItem | |
| MenuPositionDef | |
| MetadataCache | |
| Modal | |
| MomentFormatComponent | |
| Notice | |
| ObsidianProtocolData | |
| OpenViewState | |
| Plugin | |
| PluginManifest | |
| PluginSettingTab | |
| Point | |
| PopoverSuggest | |
| Pos | |
| ProgressBarComponent | |
| Reference | |
| ReferenceLinkCache | |
| RequestUrlParam | |
| RequestUrlResponse | |
| RequestUrlResponsePromise | |
| RGB | |
| Scope | |
| SearchComponent | |
| SearchResult | |
| SearchResultContainer | |
| SectionCache | |
| Setting | |
| SettingTab | |
| SliderComponent | |
| Stat | |
| SubpathResult | |
| SuggestModal | |
| TAbstractFile | |
| TagCache | |
| Tasks | |
| TextAreaComponent | |
| TextComponent | |
| TextFileView | |
| TFile | |
| TFolder | |
| ToggleComponent | |
| TooltipOptions | |
| ValueComponent | |
| Vault | |
| View | |
| ViewState | |
| ViewStateResult | |
| Workspace | |
| WorkspaceContainer | |
| WorkspaceFloating | |
| WorkspaceItem | |
| WorkspaceLeaf | |
| WorkspaceMobileDrawer | |
| WorkspaceRoot | |
| WorkspaceSidedock | |
| WorkspaceSplit | |
| WorkspaceTabs | |
| WorkspaceWindow | |
| WorkspaceWindowInitData | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) | |
| [addIcon](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) | |
| [apiVersion](https://docs.obsidian.md/Reference/TypeScript+API/apiVersion) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [arrayBufferToBase64](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToBase64) | |
| [arrayBufferToHex](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToHex) | |
| [base64ToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/base64ToArrayBuffer) | |
| [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent) | |
| [BlockCache](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) | |
| [BlockSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/BlockSubpathResult) | |
| [ButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ButtonComponent) | |
| [CachedMetadata](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| [CacheItem](https://docs.obsidian.md/Reference/TypeScript+API/CacheItem) | |
| [CapacitorAdapter](https://docs.obsidian.md/Reference/TypeScript+API/CapacitorAdapter) | |
| [CloseableComponent](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| [ColorComponent](https://docs.obsidian.md/Reference/TypeScript+API/ColorComponent) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| [Constructor](https://docs.obsidian.md/Reference/TypeScript+API/Constructor) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [DataWriteOptions](https://docs.obsidian.md/Reference/TypeScript+API/DataWriteOptions) | |
| [debounce](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| [Debouncer](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) | |
| [displayTooltip](https://docs.obsidian.md/Reference/TypeScript+API/displayTooltip) | |
| [DropdownComponent](https://docs.obsidian.md/Reference/TypeScript+API/DropdownComponent) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| [EditorChange](https://docs.obsidian.md/Reference/TypeScript+API/EditorChange) | |
| [EditorCommandName](https://docs.obsidian.md/Reference/TypeScript+API/EditorCommandName) | |
| [editorEditorField](https://docs.obsidian.md/Reference/TypeScript+API/editorEditorField) | |
| [editorInfoField](https://docs.obsidian.md/Reference/TypeScript+API/editorInfoField) | |
| [editorLivePreviewField](https://docs.obsidian.md/Reference/TypeScript+API/editorLivePreviewField) | |
| [EditorPosition](https://docs.obsidian.md/Reference/TypeScript+API/EditorPosition) | |
| [EditorRange](https://docs.obsidian.md/Reference/TypeScript+API/EditorRange) | |
| [EditorRangeOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorRangeOrCaret) | |
| [EditorScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorScrollInfo) | |
| [EditorSelection](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelection) | |
| [EditorSelectionOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelectionOrCaret) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [EditorSuggestTriggerInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestTriggerInfo) | |
| [EditorTransaction](https://docs.obsidian.md/Reference/TypeScript+API/EditorTransaction) | |
| [editorViewField](https://docs.obsidian.md/Reference/TypeScript+API/editorViewField) | |
| [EmbedCache](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) | |
| [EventRef](https://docs.obsidian.md/Reference/TypeScript+API/EventRef) | |
| [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| [ExtraButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ExtraButtonComponent) | |
| [FileManager](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | |
| [FileStats](https://docs.obsidian.md/Reference/TypeScript+API/FileStats) | |
| [FileSystemAdapter](https://docs.obsidian.md/Reference/TypeScript+API/FileSystemAdapter) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [finishRenderMath](https://docs.obsidian.md/Reference/TypeScript+API/finishRenderMath) | |
| [FootnoteCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) | |
| [FootnoteRefCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) | |
| [FootnoteSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteSubpathResult) | |
| [FrontMatterCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | |
| [FrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterInfo) | |
| [FrontmatterLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) | |
| [FuzzyMatch](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getBlobArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/getBlobArrayBuffer) | |
| [getFrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/getFrontMatterInfo) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/getIcon) | |
| [getIconIds](https://docs.obsidian.md/Reference/TypeScript+API/getIconIds) | |
| [getLanguage](https://docs.obsidian.md/Reference/TypeScript+API/getLanguage) | |
| [getLinkpath](https://docs.obsidian.md/Reference/TypeScript+API/getLinkpath) | |
| [HeadingCache](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) | |
| [HeadingSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/HeadingSubpathResult) | |
| [HexString](https://docs.obsidian.md/Reference/TypeScript+API/HexString) | |
| [hexToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/hexToArrayBuffer) | |
| [Hotkey](https://docs.obsidian.md/Reference/TypeScript+API/Hotkey) | |
| [HoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/HoverLinkSource) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [HSL](https://docs.obsidian.md/Reference/TypeScript+API/HSL) | |
| [htmlToMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/htmlToMarkdown) | |
| [IconName](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Instruction](https://docs.obsidian.md/Reference/TypeScript+API/Instruction) | |
| [ISuggestOwner](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [iterateRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateRefs) | |
| [Keymap](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | |
| [KeymapContext](https://docs.obsidian.md/Reference/TypeScript+API/KeymapContext) | |
| [KeymapEventHandler](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventHandler) | |
| [KeymapEventListener](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventListener) | |
| [KeymapInfo](https://docs.obsidian.md/Reference/TypeScript+API/KeymapInfo) | |
| [LinkCache](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) | |
| [ListedFiles](https://docs.obsidian.md/Reference/TypeScript+API/ListedFiles) | |
| [ListItemCache](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) | |
| [livePreviewState](https://docs.obsidian.md/Reference/TypeScript+API/livePreviewState) | |
| [LivePreviewStateType](https://docs.obsidian.md/Reference/TypeScript+API/LivePreviewStateType) | |
| [loadMathJax](https://docs.obsidian.md/Reference/TypeScript+API/loadMathJax) | |
| [loadMermaid](https://docs.obsidian.md/Reference/TypeScript+API/loadMermaid) | |
| [loadPdfJs](https://docs.obsidian.md/Reference/TypeScript+API/loadPdfJs) | |
| [loadPrism](https://docs.obsidian.md/Reference/TypeScript+API/loadPrism) | |
| [Loc](https://docs.obsidian.md/Reference/TypeScript+API/Loc) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessor) | |
| [MarkdownPostProcessorContext](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext) | |
| [MarkdownPreviewEvents](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents) | |
| [MarkdownPreviewRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewRenderer) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownSectionInformation](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSectionInformation) | |
| [MarkdownSubView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSubView) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [MarkdownViewModeType](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownViewModeType) | |
| [Menu](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| [MenuItem](https://docs.obsidian.md/Reference/TypeScript+API/MenuItem) | |
| [MenuPositionDef](https://docs.obsidian.md/Reference/TypeScript+API/MenuPositionDef) | |
| [MenuSeparator](https://docs.obsidian.md/Reference/TypeScript+API/MenuSeparator) | |
| [MetadataCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | |
| [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| [Modifier](https://docs.obsidian.md/Reference/TypeScript+API/Modifier) | |
| [moment](https://docs.obsidian.md/Reference/TypeScript+API/moment) | |
| [MomentFormatComponent](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent) | |
| [normalizePath](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath) | |
| [Notice](https://docs.obsidian.md/Reference/TypeScript+API/Notice) | |
| [ObsidianProtocolData](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolData) | |
| [ObsidianProtocolHandler](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolHandler) | |
| [OpenViewState](https://docs.obsidian.md/Reference/TypeScript+API/OpenViewState) | |
| [PaneType](https://docs.obsidian.md/Reference/TypeScript+API/PaneType) | |
| [parseFrontMatterAliases](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterAliases) | |
| [parseFrontMatterEntry](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterEntry) | |
| [parseFrontMatterStringArray](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterStringArray) | |
| [parseFrontMatterTags](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterTags) | |
| [parseLinktext](https://docs.obsidian.md/Reference/TypeScript+API/parseLinktext) | |
| [parseYaml](https://docs.obsidian.md/Reference/TypeScript+API/parseYaml) | |
| [Platform](https://docs.obsidian.md/Reference/TypeScript+API/Platform) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [PluginManifest](https://docs.obsidian.md/Reference/TypeScript+API/PluginManifest) | |
| [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab) | |
| [Point](https://docs.obsidian.md/Reference/TypeScript+API/Point) | |
| [PopoverState](https://docs.obsidian.md/Reference/TypeScript+API/PopoverState) | |
| [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) | |
| [Pos](https://docs.obsidian.md/Reference/TypeScript+API/Pos) | |
| [prepareFuzzySearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareFuzzySearch) | |
| [prepareSimpleSearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareSimpleSearch) | |
| [ProgressBarComponent](https://docs.obsidian.md/Reference/TypeScript+API/ProgressBarComponent) | |
| [Reference](https://docs.obsidian.md/Reference/TypeScript+API/Reference) | |
| [ReferenceCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceCache) | |
| [ReferenceLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceLinkCache) | |
| [removeIcon](https://docs.obsidian.md/Reference/TypeScript+API/removeIcon) | |
| [renderMatches](https://docs.obsidian.md/Reference/TypeScript+API/renderMatches) | |
| [renderMath](https://docs.obsidian.md/Reference/TypeScript+API/renderMath) | |
| [renderResults](https://docs.obsidian.md/Reference/TypeScript+API/renderResults) | |
| [request](https://docs.obsidian.md/Reference/TypeScript+API/request) | |
| [requestUrl](https://docs.obsidian.md/Reference/TypeScript+API/requestUrl) | |
| [RequestUrlParam](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlParam) | |
| [RequestUrlResponse](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponse) | |
| [RequestUrlResponsePromise](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponsePromise) | |
| [requireApiVersion](https://docs.obsidian.md/Reference/TypeScript+API/requireApiVersion) | |
| [resolveSubpath](https://docs.obsidian.md/Reference/TypeScript+API/resolveSubpath) | |
| [RGB](https://docs.obsidian.md/Reference/TypeScript+API/RGB) | |
| [sanitizeHTMLToDom](https://docs.obsidian.md/Reference/TypeScript+API/sanitizeHTMLToDom) | |
| [Scope](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | |
| [SearchComponent](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent) | |
| [SearchMatches](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatches) | |
| [SearchMatchPart](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatchPart) | |
| [SearchResult](https://docs.obsidian.md/Reference/TypeScript+API/SearchResult) | |
| [SearchResultContainer](https://docs.obsidian.md/Reference/TypeScript+API/SearchResultContainer) | |
| [SectionCache](https://docs.obsidian.md/Reference/TypeScript+API/SectionCache) | |
| [setIcon](https://docs.obsidian.md/Reference/TypeScript+API/setIcon) | |
| [Setting](https://docs.obsidian.md/Reference/TypeScript+API/Setting) | |
| [SettingTab](https://docs.obsidian.md/Reference/TypeScript+API/SettingTab) | |
| [setTooltip](https://docs.obsidian.md/Reference/TypeScript+API/setTooltip) | |
| [Side](https://docs.obsidian.md/Reference/TypeScript+API/Side) | |
| [SliderComponent](https://docs.obsidian.md/Reference/TypeScript+API/SliderComponent) | |
| [sortSearchResults](https://docs.obsidian.md/Reference/TypeScript+API/sortSearchResults) | |
| [SplitDirection](https://docs.obsidian.md/Reference/TypeScript+API/SplitDirection) | |
| [Stat](https://docs.obsidian.md/Reference/TypeScript+API/Stat) | |
| [stringifyYaml](https://docs.obsidian.md/Reference/TypeScript+API/stringifyYaml) | |
| [stripHeading](https://docs.obsidian.md/Reference/TypeScript+API/stripHeading) | |
| [stripHeadingForLink](https://docs.obsidian.md/Reference/TypeScript+API/stripHeadingForLink) | |
| [SubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/SubpathResult) | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) | |
| [TagCache](https://docs.obsidian.md/Reference/TypeScript+API/TagCache) | |
| [Tasks](https://docs.obsidian.md/Reference/TypeScript+API/Tasks) | |
| [TextAreaComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextAreaComponent) | |
| [TextComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [TFile](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | |
| [TFolder](https://docs.obsidian.md/Reference/TypeScript+API/TFolder) | |
| [ToggleComponent](https://docs.obsidian.md/Reference/TypeScript+API/ToggleComponent) | |
| [TooltipOptions](https://docs.obsidian.md/Reference/TypeScript+API/TooltipOptions) | |
| [TooltipPlacement](https://docs.obsidian.md/Reference/TypeScript+API/TooltipPlacement) | |
| [UserEvent](https://docs.obsidian.md/Reference/TypeScript+API/UserEvent) | |
| [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent) | |
| [Vault](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [ViewState](https://docs.obsidian.md/Reference/TypeScript+API/ViewState) | |
| [ViewStateResult](https://docs.obsidian.md/Reference/TypeScript+API/ViewStateResult) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| [WorkspaceContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| [WorkspaceFloating](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceFloating) | |
| [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| [WorkspaceMobileDrawer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | |
| [WorkspaceParent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | |
| [WorkspaceRibbon](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | |
| [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | |
| [WorkspaceSidedock](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) | |
| [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) | |
| [WorkspaceTabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) | |
| [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow) | |
| [WorkspaceWindowInitData](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindowInitData) | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # FileView | |
| ```yaml is-loaded | |
| aliases: "FileView" | |
| cssclasses: hide-title | |
| ``` | |
| [`FileView`](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| ## FileView class | |
| **Signature:** | |
| ```typescript is-loaded | |
| export abstract class FileView extends ItemView | |
| ``` | |
| **Extends:** [`ItemView`](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| ## Constructors | |
| | Constructor | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`(constructor)(leaf)`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/(constructor)) | | Constructs a new instance of the `FileView` class | | |
| ## Properties | |
| | Property | Modifiers | Type | Description | | |
| | --- | --- | --- | --- | | |
| | [`allowNoFile`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/allowNoFile) | | `boolean` | | | |
| | [`app`](https://docs.obsidian.md/Reference/TypeScript+API/View/app) | | [`App`](https://docs.obsidian.md/Reference/TypeScript+API/App) | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`containerEl`](https://docs.obsidian.md/Reference/TypeScript+API/View/containerEl) | | `HTMLElement` | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`contentEl`](https://docs.obsidian.md/Reference/TypeScript+API/ItemView/contentEl) | | `HTMLElement` | (Inherited from [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView)) | | |
| | [`file`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/file) | | [`TFile`](https://docs.obsidian.md/Reference/TypeScript+API/TFile) ` | null` | | | |
| | [`icon`](https://docs.obsidian.md/Reference/TypeScript+API/View/icon) | | [`IconName`](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`leaf`](https://docs.obsidian.md/Reference/TypeScript+API/View/leaf) | | [`WorkspaceLeaf`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`navigation`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/navigation) | | `boolean` | File views can be navigated by default. | | |
| | [`scope`](https://docs.obsidian.md/Reference/TypeScript+API/View/scope) | | [`Scope`](https://docs.obsidian.md/Reference/TypeScript+API/Scope) ` | null` | Assign an optional scope to your view to register hotkeys for when the view is in focus.<br>(Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| ## Methods | |
| | Method | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`addAction(icon, title, callback)`](https://docs.obsidian.md/Reference/TypeScript+API/ItemView/addAction) | | (Inherited from [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView)) | | |
| | [`addChild(component)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/addChild) | | Adds a child component, loading it if this component is loaded<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`canAcceptExtension(extension)`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/canAcceptExtension) | | | | |
| | [`getDisplayText()`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/getDisplayText) | | | | |
| | [`getEphemeralState()`](https://docs.obsidian.md/Reference/TypeScript+API/View/getEphemeralState) | | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`getIcon()`](https://docs.obsidian.md/Reference/TypeScript+API/View/getIcon) | | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`getState()`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/getState) | | | | |
| | [`getViewType()`](https://docs.obsidian.md/Reference/TypeScript+API/View/getViewType) | `abstract` | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`load()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/load) | | Load this component and its children<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`onClose()`](https://docs.obsidian.md/Reference/TypeScript+API/View/onClose) | `protected` | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`onload()`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/onload) | | | | |
| | [`onLoadFile(file)`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/onLoadFile) | | | | |
| | [`onOpen()`](https://docs.obsidian.md/Reference/TypeScript+API/View/onOpen) | `protected` | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`onPaneMenu(menu, source)`](https://docs.obsidian.md/Reference/TypeScript+API/View/onPaneMenu) | | Populates the pane menu.<br>(Replaces the previously removed `onHeaderMenu` and `onMoreOptionsMenu`)<br>(Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`onRename(file)`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/onRename) | | | | |
| | [`onResize()`](https://docs.obsidian.md/Reference/TypeScript+API/View/onResize) | | Called when the size of this view is changed.<br>(Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`onunload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/onunload) | | Override this to unload your component<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`onUnloadFile(file)`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/onUnloadFile) | | | | |
| | [`register(cb)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/register) | | Registers a callback to be called when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent_1) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent_2) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerEvent(eventRef)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerEvent) | | Registers an event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerInterval(id)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerInterval) | | Registers an interval (from setInterval) to be cancelled when unloading Use instead of to avoid TypeScript confusing between NodeJS vs Browser API<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`removeChild(component)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/removeChild) | | Removes a child component, unloading it<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`setEphemeralState(state)`](https://docs.obsidian.md/Reference/TypeScript+API/View/setEphemeralState) | | (Inherited from [View](https://docs.obsidian.md/Reference/TypeScript+API/View)) | | |
| | [`setState(state, result)`](https://docs.obsidian.md/Reference/TypeScript+API/FileView/setState) | | | | |
| | [`unload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/unload) | | Unload this component and its children<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| Links to this page | |
| [(constructor)](https://docs.obsidian.md/Reference/TypeScript+API/FileView/(constructor)) | |
| [allowNoFile](https://docs.obsidian.md/Reference/TypeScript+API/FileView/allowNoFile) | |
| [canAcceptExtension](https://docs.obsidian.md/Reference/TypeScript+API/FileView/canAcceptExtension) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [file](https://docs.obsidian.md/Reference/TypeScript+API/FileView/file) | |
| [getDisplayText](https://docs.obsidian.md/Reference/TypeScript+API/FileView/getDisplayText) | |
| [getState](https://docs.obsidian.md/Reference/TypeScript+API/FileView/getState) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [navigation](https://docs.obsidian.md/Reference/TypeScript+API/FileView/navigation) | |
| [onload](https://docs.obsidian.md/Reference/TypeScript+API/FileView/onload) | |
| [onLoadFile](https://docs.obsidian.md/Reference/TypeScript+API/FileView/onLoadFile) | |
| [onRename](https://docs.obsidian.md/Reference/TypeScript+API/FileView/onRename) | |
| [onUnloadFile](https://docs.obsidian.md/Reference/TypeScript+API/FileView/onUnloadFile) | |
| [setState](https://docs.obsidian.md/Reference/TypeScript+API/FileView/setState) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| FileView | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| FileView class | |
| Constructors | |
| Properties | |
| Methods | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Obsidian TypeScript API | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| AbstractInputSuggest | |
| AbstractTextComponent | |
| App | |
| BaseComponent | |
| BlockCache | |
| BlockSubpathResult | |
| ButtonComponent | |
| CachedMetadata | |
| CacheItem | |
| CapacitorAdapter | |
| CloseableComponent | |
| ColorComponent | |
| Command | |
| Component | |
| DataAdapter | |
| DataWriteOptions | |
| Debouncer | |
| DropdownComponent | |
| Editor | |
| EditorChange | |
| EditorPosition | |
| EditorRange | |
| EditorRangeOrCaret | |
| EditorScrollInfo | |
| EditorSelection | |
| EditorSelectionOrCaret | |
| EditorSuggest | |
| EditorSuggestContext | |
| EditorSuggestTriggerInfo | |
| EditorTransaction | |
| Events | |
| ExtraButtonComponent | |
| FileManager | |
| FileStats | |
| FileSystemAdapter | |
| FileView | |
| FootnoteCache | |
| FootnoteRefCache | |
| FootnoteSubpathResult | |
| FrontMatterInfo | |
| FrontmatterLinkCache | |
| FuzzyMatch | |
| FuzzySuggestModal | |
| HeadingCache | |
| HeadingSubpathResult | |
| Hotkey | |
| HoverLinkSource | |
| HoverParent | |
| HoverPopover | |
| HSL | |
| Instruction | |
| ISuggestOwner | |
| ItemView | |
| Keymap | |
| KeymapContext | |
| KeymapEventHandler | |
| KeymapInfo | |
| ListedFiles | |
| ListItemCache | |
| LivePreviewStateType | |
| Loc | |
| MarkdownEditView | |
| MarkdownFileInfo | |
| MarkdownPostProcessor | |
| MarkdownPostProcessorContext | |
| MarkdownPreviewRenderer | |
| MarkdownPreviewView | |
| MarkdownRenderChild | |
| MarkdownRenderer | |
| MarkdownSectionInformation | |
| MarkdownSubView | |
| MarkdownView | |
| Menu | |
| MenuItem | |
| MenuPositionDef | |
| MetadataCache | |
| Modal | |
| MomentFormatComponent | |
| Notice | |
| ObsidianProtocolData | |
| OpenViewState | |
| Plugin | |
| PluginManifest | |
| PluginSettingTab | |
| Point | |
| PopoverSuggest | |
| Pos | |
| ProgressBarComponent | |
| Reference | |
| ReferenceLinkCache | |
| RequestUrlParam | |
| RequestUrlResponse | |
| RequestUrlResponsePromise | |
| RGB | |
| Scope | |
| SearchComponent | |
| SearchResult | |
| SearchResultContainer | |
| SectionCache | |
| Setting | |
| SettingTab | |
| SliderComponent | |
| Stat | |
| SubpathResult | |
| SuggestModal | |
| TAbstractFile | |
| TagCache | |
| Tasks | |
| TextAreaComponent | |
| TextComponent | |
| TextFileView | |
| TFile | |
| TFolder | |
| ToggleComponent | |
| TooltipOptions | |
| ValueComponent | |
| Vault | |
| View | |
| ViewState | |
| ViewStateResult | |
| Workspace | |
| WorkspaceContainer | |
| WorkspaceFloating | |
| WorkspaceItem | |
| WorkspaceLeaf | |
| WorkspaceMobileDrawer | |
| WorkspaceRoot | |
| WorkspaceSidedock | |
| WorkspaceSplit | |
| WorkspaceTabs | |
| WorkspaceWindow | |
| WorkspaceWindowInitData | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) | |
| [addIcon](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) | |
| [apiVersion](https://docs.obsidian.md/Reference/TypeScript+API/apiVersion) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [arrayBufferToBase64](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToBase64) | |
| [arrayBufferToHex](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToHex) | |
| [base64ToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/base64ToArrayBuffer) | |
| [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent) | |
| [BlockCache](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) | |
| [BlockSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/BlockSubpathResult) | |
| [ButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ButtonComponent) | |
| [CachedMetadata](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| [CacheItem](https://docs.obsidian.md/Reference/TypeScript+API/CacheItem) | |
| [CapacitorAdapter](https://docs.obsidian.md/Reference/TypeScript+API/CapacitorAdapter) | |
| [CloseableComponent](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| [ColorComponent](https://docs.obsidian.md/Reference/TypeScript+API/ColorComponent) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| [Constructor](https://docs.obsidian.md/Reference/TypeScript+API/Constructor) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [DataWriteOptions](https://docs.obsidian.md/Reference/TypeScript+API/DataWriteOptions) | |
| [debounce](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| [Debouncer](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) | |
| [displayTooltip](https://docs.obsidian.md/Reference/TypeScript+API/displayTooltip) | |
| [DropdownComponent](https://docs.obsidian.md/Reference/TypeScript+API/DropdownComponent) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| [EditorChange](https://docs.obsidian.md/Reference/TypeScript+API/EditorChange) | |
| [EditorCommandName](https://docs.obsidian.md/Reference/TypeScript+API/EditorCommandName) | |
| [editorEditorField](https://docs.obsidian.md/Reference/TypeScript+API/editorEditorField) | |
| [editorInfoField](https://docs.obsidian.md/Reference/TypeScript+API/editorInfoField) | |
| [editorLivePreviewField](https://docs.obsidian.md/Reference/TypeScript+API/editorLivePreviewField) | |
| [EditorPosition](https://docs.obsidian.md/Reference/TypeScript+API/EditorPosition) | |
| [EditorRange](https://docs.obsidian.md/Reference/TypeScript+API/EditorRange) | |
| [EditorRangeOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorRangeOrCaret) | |
| [EditorScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorScrollInfo) | |
| [EditorSelection](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelection) | |
| [EditorSelectionOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelectionOrCaret) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [EditorSuggestTriggerInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestTriggerInfo) | |
| [EditorTransaction](https://docs.obsidian.md/Reference/TypeScript+API/EditorTransaction) | |
| [editorViewField](https://docs.obsidian.md/Reference/TypeScript+API/editorViewField) | |
| [EmbedCache](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) | |
| [EventRef](https://docs.obsidian.md/Reference/TypeScript+API/EventRef) | |
| [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| [ExtraButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ExtraButtonComponent) | |
| [FileManager](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | |
| [FileStats](https://docs.obsidian.md/Reference/TypeScript+API/FileStats) | |
| [FileSystemAdapter](https://docs.obsidian.md/Reference/TypeScript+API/FileSystemAdapter) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [finishRenderMath](https://docs.obsidian.md/Reference/TypeScript+API/finishRenderMath) | |
| [FootnoteCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) | |
| [FootnoteRefCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) | |
| [FootnoteSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteSubpathResult) | |
| [FrontMatterCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | |
| [FrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterInfo) | |
| [FrontmatterLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) | |
| [FuzzyMatch](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getBlobArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/getBlobArrayBuffer) | |
| [getFrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/getFrontMatterInfo) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/getIcon) | |
| [getIconIds](https://docs.obsidian.md/Reference/TypeScript+API/getIconIds) | |
| [getLanguage](https://docs.obsidian.md/Reference/TypeScript+API/getLanguage) | |
| [getLinkpath](https://docs.obsidian.md/Reference/TypeScript+API/getLinkpath) | |
| [HeadingCache](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) | |
| [HeadingSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/HeadingSubpathResult) | |
| [HexString](https://docs.obsidian.md/Reference/TypeScript+API/HexString) | |
| [hexToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/hexToArrayBuffer) | |
| [Hotkey](https://docs.obsidian.md/Reference/TypeScript+API/Hotkey) | |
| [HoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/HoverLinkSource) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [HSL](https://docs.obsidian.md/Reference/TypeScript+API/HSL) | |
| [htmlToMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/htmlToMarkdown) | |
| [IconName](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Instruction](https://docs.obsidian.md/Reference/TypeScript+API/Instruction) | |
| [ISuggestOwner](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [iterateRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateRefs) | |
| [Keymap](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | |
| [KeymapContext](https://docs.obsidian.md/Reference/TypeScript+API/KeymapContext) | |
| [KeymapEventHandler](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventHandler) | |
| [KeymapEventListener](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventListener) | |
| [KeymapInfo](https://docs.obsidian.md/Reference/TypeScript+API/KeymapInfo) | |
| [LinkCache](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) | |
| [ListedFiles](https://docs.obsidian.md/Reference/TypeScript+API/ListedFiles) | |
| [ListItemCache](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) | |
| [livePreviewState](https://docs.obsidian.md/Reference/TypeScript+API/livePreviewState) | |
| [LivePreviewStateType](https://docs.obsidian.md/Reference/TypeScript+API/LivePreviewStateType) | |
| [loadMathJax](https://docs.obsidian.md/Reference/TypeScript+API/loadMathJax) | |
| [loadMermaid](https://docs.obsidian.md/Reference/TypeScript+API/loadMermaid) | |
| [loadPdfJs](https://docs.obsidian.md/Reference/TypeScript+API/loadPdfJs) | |
| [loadPrism](https://docs.obsidian.md/Reference/TypeScript+API/loadPrism) | |
| [Loc](https://docs.obsidian.md/Reference/TypeScript+API/Loc) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessor) | |
| [MarkdownPostProcessorContext](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext) | |
| [MarkdownPreviewEvents](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents) | |
| [MarkdownPreviewRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewRenderer) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownSectionInformation](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSectionInformation) | |
| [MarkdownSubView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSubView) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [MarkdownViewModeType](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownViewModeType) | |
| [Menu](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| [MenuItem](https://docs.obsidian.md/Reference/TypeScript+API/MenuItem) | |
| [MenuPositionDef](https://docs.obsidian.md/Reference/TypeScript+API/MenuPositionDef) | |
| [MenuSeparator](https://docs.obsidian.md/Reference/TypeScript+API/MenuSeparator) | |
| [MetadataCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | |
| [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| [Modifier](https://docs.obsidian.md/Reference/TypeScript+API/Modifier) | |
| [moment](https://docs.obsidian.md/Reference/TypeScript+API/moment) | |
| [MomentFormatComponent](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent) | |
| [normalizePath](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath) | |
| [Notice](https://docs.obsidian.md/Reference/TypeScript+API/Notice) | |
| [ObsidianProtocolData](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolData) | |
| [ObsidianProtocolHandler](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolHandler) | |
| [OpenViewState](https://docs.obsidian.md/Reference/TypeScript+API/OpenViewState) | |
| [PaneType](https://docs.obsidian.md/Reference/TypeScript+API/PaneType) | |
| [parseFrontMatterAliases](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterAliases) | |
| [parseFrontMatterEntry](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterEntry) | |
| [parseFrontMatterStringArray](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterStringArray) | |
| [parseFrontMatterTags](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterTags) | |
| [parseLinktext](https://docs.obsidian.md/Reference/TypeScript+API/parseLinktext) | |
| [parseYaml](https://docs.obsidian.md/Reference/TypeScript+API/parseYaml) | |
| [Platform](https://docs.obsidian.md/Reference/TypeScript+API/Platform) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [PluginManifest](https://docs.obsidian.md/Reference/TypeScript+API/PluginManifest) | |
| [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab) | |
| [Point](https://docs.obsidian.md/Reference/TypeScript+API/Point) | |
| [PopoverState](https://docs.obsidian.md/Reference/TypeScript+API/PopoverState) | |
| [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) | |
| [Pos](https://docs.obsidian.md/Reference/TypeScript+API/Pos) | |
| [prepareFuzzySearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareFuzzySearch) | |
| [prepareSimpleSearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareSimpleSearch) | |
| [ProgressBarComponent](https://docs.obsidian.md/Reference/TypeScript+API/ProgressBarComponent) | |
| [Reference](https://docs.obsidian.md/Reference/TypeScript+API/Reference) | |
| [ReferenceCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceCache) | |
| [ReferenceLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceLinkCache) | |
| [removeIcon](https://docs.obsidian.md/Reference/TypeScript+API/removeIcon) | |
| [renderMatches](https://docs.obsidian.md/Reference/TypeScript+API/renderMatches) | |
| [renderMath](https://docs.obsidian.md/Reference/TypeScript+API/renderMath) | |
| [renderResults](https://docs.obsidian.md/Reference/TypeScript+API/renderResults) | |
| [request](https://docs.obsidian.md/Reference/TypeScript+API/request) | |
| [requestUrl](https://docs.obsidian.md/Reference/TypeScript+API/requestUrl) | |
| [RequestUrlParam](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlParam) | |
| [RequestUrlResponse](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponse) | |
| [RequestUrlResponsePromise](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponsePromise) | |
| [requireApiVersion](https://docs.obsidian.md/Reference/TypeScript+API/requireApiVersion) | |
| [resolveSubpath](https://docs.obsidian.md/Reference/TypeScript+API/resolveSubpath) | |
| [RGB](https://docs.obsidian.md/Reference/TypeScript+API/RGB) | |
| [sanitizeHTMLToDom](https://docs.obsidian.md/Reference/TypeScript+API/sanitizeHTMLToDom) | |
| [Scope](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | |
| [SearchComponent](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent) | |
| [SearchMatches](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatches) | |
| [SearchMatchPart](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatchPart) | |
| [SearchResult](https://docs.obsidian.md/Reference/TypeScript+API/SearchResult) | |
| [SearchResultContainer](https://docs.obsidian.md/Reference/TypeScript+API/SearchResultContainer) | |
| [SectionCache](https://docs.obsidian.md/Reference/TypeScript+API/SectionCache) | |
| [setIcon](https://docs.obsidian.md/Reference/TypeScript+API/setIcon) | |
| [Setting](https://docs.obsidian.md/Reference/TypeScript+API/Setting) | |
| [SettingTab](https://docs.obsidian.md/Reference/TypeScript+API/SettingTab) | |
| [setTooltip](https://docs.obsidian.md/Reference/TypeScript+API/setTooltip) | |
| [Side](https://docs.obsidian.md/Reference/TypeScript+API/Side) | |
| [SliderComponent](https://docs.obsidian.md/Reference/TypeScript+API/SliderComponent) | |
| [sortSearchResults](https://docs.obsidian.md/Reference/TypeScript+API/sortSearchResults) | |
| [SplitDirection](https://docs.obsidian.md/Reference/TypeScript+API/SplitDirection) | |
| [Stat](https://docs.obsidian.md/Reference/TypeScript+API/Stat) | |
| [stringifyYaml](https://docs.obsidian.md/Reference/TypeScript+API/stringifyYaml) | |
| [stripHeading](https://docs.obsidian.md/Reference/TypeScript+API/stripHeading) | |
| [stripHeadingForLink](https://docs.obsidian.md/Reference/TypeScript+API/stripHeadingForLink) | |
| [SubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/SubpathResult) | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) | |
| [TagCache](https://docs.obsidian.md/Reference/TypeScript+API/TagCache) | |
| [Tasks](https://docs.obsidian.md/Reference/TypeScript+API/Tasks) | |
| [TextAreaComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextAreaComponent) | |
| [TextComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [TFile](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | |
| [TFolder](https://docs.obsidian.md/Reference/TypeScript+API/TFolder) | |
| [ToggleComponent](https://docs.obsidian.md/Reference/TypeScript+API/ToggleComponent) | |
| [TooltipOptions](https://docs.obsidian.md/Reference/TypeScript+API/TooltipOptions) | |
| [TooltipPlacement](https://docs.obsidian.md/Reference/TypeScript+API/TooltipPlacement) | |
| [UserEvent](https://docs.obsidian.md/Reference/TypeScript+API/UserEvent) | |
| [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent) | |
| [Vault](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [ViewState](https://docs.obsidian.md/Reference/TypeScript+API/ViewState) | |
| [ViewStateResult](https://docs.obsidian.md/Reference/TypeScript+API/ViewStateResult) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| [WorkspaceContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| [WorkspaceFloating](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceFloating) | |
| [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| [WorkspaceMobileDrawer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | |
| [WorkspaceParent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | |
| [WorkspaceRibbon](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | |
| [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | |
| [WorkspaceSidedock](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) | |
| [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) | |
| [WorkspaceTabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) | |
| [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow) | |
| [WorkspaceWindowInitData](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindowInitData) | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # Plugin | |
| ```yaml is-loaded | |
| aliases: "Plugin" | |
| cssclasses: hide-title | |
| ``` | |
| [`Plugin`](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| ## Plugin class | |
| **Signature:** | |
| ```typescript is-loaded | |
| export abstract class Plugin extends Component | |
| ``` | |
| **Extends:** [`Component`](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| ## Constructors | |
| | Constructor | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`(constructor)(app, manifest)`](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/(constructor)) | | Constructs a new instance of the `Plugin` class | | |
| ## Properties | |
| | Property | Modifiers | Type | Description | | |
| | --- | --- | --- | --- | | |
| | [`app`](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/app) | | [`App`](https://docs.obsidian.md/Reference/TypeScript+API/App) | | | |
| | [`manifest`](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/manifest) | | [`PluginManifest`](https://docs.obsidian.md/Reference/TypeScript+API/PluginManifest) | | | |
| ## Methods | |
| | Method | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`addChild(component)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/addChild) | | Adds a child component, loading it if this component is loaded<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`addCommand(command)`](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/addCommand) | | Register a command globally. Registered commands will be available from the @{link [https://help.md/Plugins/Command+palette](https://help.md/Plugins/Command+palette) Command palette}. The command id and name will be automatically prefixed with this plugin's id and name. | | |
| | [`addRibbonIcon(icon, title, callback)`](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/addRibbonIcon) | | Adds a ribbon icon to the left bar. | | |
| | [`addSettingTab(settingTab)`](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/addSettingTab) | | Register a settings tab, which allows users to change settings. | | |
| | [`addStatusBarItem()`](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/addStatusBarItem) | | Adds a status bar item to the bottom of the app. Not available on mobile. | | |
| | [`load()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/load) | | Load this component and its children<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`loadData()`](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/loadData) | | Load settings data from disk. Data is stored in `data.json` in the plugin folder. | | |
| | [`onExternalSettingsChange()?`](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/onExternalSettingsChange) | | _(Optional)_ Called when the `data.json` file is modified on disk externally from Obsidian. This usually means that a Sync service or external program has modified the plugin settings.<br>Implement this method to reload plugin settings when they have changed externally. | | |
| | [`onload()`](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/onload) | | | | |
| | [`onunload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/onunload) | | Override this to unload your component<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`onUserEnable()`](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/onUserEnable) | | Perform any initial setup code. The user has explicitly interacted with the plugin so its safe to engage with the user. If your plugin registers a custom view, you can open it here. | | |
| | [`register(cb)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/register) | | Registers a callback to be called when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent_1) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent_2) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerEditorExtension(extension)`](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/registerEditorExtension) | | Registers a CodeMirror 6 extension. To reconfigure cm6 extensions for a plugin on the fly, an array should be passed in, and modified dynamically. Once this array is modified, calling [Workspace.updateOptions()](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/updateOptions) will apply the changes. | | |
| | [`registerEditorSuggest(editorSuggest)`](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/registerEditorSuggest) | | Register an EditorSuggest which can provide live suggestions while the user is typing. | | |
| | [`registerEvent(eventRef)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerEvent) | | Registers an event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerExtensions(extensions, viewType)`](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/registerExtensions) | | | | |
| | [`registerHoverLinkSource(id, info)`](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/registerHoverLinkSource) | | Registers a view with the 'Page preview' core plugin as an emitter of the 'hover-link' event. | | |
| | [`registerInterval(id)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerInterval) | | Registers an interval (from setInterval) to be cancelled when unloading Use instead of to avoid TypeScript confusing between NodeJS vs Browser API<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerMarkdownCodeBlockProcessor(language, handler, sortOrder)`](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/registerMarkdownCodeBlockProcessor) | | Register a special post processor that handles fenced code given a language and a handler. This special post processor takes care of removing the `<pre><code>` and create a `<div>` that will be passed to the handler, and is expected to be filled with custom elements. | | |
| | [`registerMarkdownPostProcessor(postProcessor, sortOrder)`](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/registerMarkdownPostProcessor) | | Registers a post processor, to change how the document looks in reading mode. | | |
| | [`registerObsidianProtocolHandler(action, handler)`](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/registerObsidianProtocolHandler) | | Register a handler for obsidian:// URLs. | | |
| | [`registerView(type, viewCreator)`](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/registerView) | | | | |
| | [`removeChild(component)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/removeChild) | | Removes a child component, unloading it<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`removeCommand(commandId)`](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/removeCommand) | | Manually remove a command from the list of global commands. This should not be needed unless your plugin registers commands dynamically. | | |
| | [`saveData(data)`](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/saveData) | | Write settings data to disk. Data is stored in `data.json` in the plugin folder. | | |
| | [`unload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/unload) | | Unload this component and its children<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| Links to this page | |
| [(constructor)](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/(constructor)) | |
| [(constructor)](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab/(constructor)) | |
| [addCommand](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/addCommand) | |
| [addRibbonIcon](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/addRibbonIcon) | |
| [addSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/addSettingTab) | |
| [addStatusBarItem](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/addStatusBarItem) | |
| [Anatomy of a plugin](https://docs.obsidian.md/Plugins/Getting+started/Anatomy+of+a+plugin) | |
| [app](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/app) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [loadData](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/loadData) | |
| [manifest](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/manifest) | |
| [onExternalSettingsChange](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/onExternalSettingsChange) | |
| [onload](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/onload) | |
| [onUserEnable](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/onUserEnable) | |
| [registerEditorExtension](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/registerEditorExtension) | |
| [registerEditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/registerEditorSuggest) | |
| [registerExtensions](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/registerExtensions) | |
| [registerHoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/registerHoverLinkSource) | |
| [registerMarkdownCodeBlockProcessor](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/registerMarkdownCodeBlockProcessor) | |
| [registerMarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/registerMarkdownPostProcessor) | |
| [registerObsidianProtocolHandler](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/registerObsidianProtocolHandler) | |
| [registerView](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/registerView) | |
| [removeCommand](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/removeCommand) | |
| [saveData](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/saveData) | |
| Plugin | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| Plugin class | |
| Constructors | |
| Properties | |
| Methods | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## TypeScript API Menu | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| AbstractInputSuggest | |
| AbstractTextComponent | |
| App | |
| BaseComponent | |
| BlockCache | |
| BlockSubpathResult | |
| ButtonComponent | |
| CachedMetadata | |
| CacheItem | |
| CapacitorAdapter | |
| CloseableComponent | |
| ColorComponent | |
| Command | |
| Component | |
| DataAdapter | |
| DataWriteOptions | |
| Debouncer | |
| DropdownComponent | |
| Editor | |
| EditorChange | |
| EditorPosition | |
| EditorRange | |
| EditorRangeOrCaret | |
| EditorScrollInfo | |
| EditorSelection | |
| EditorSelectionOrCaret | |
| EditorSuggest | |
| EditorSuggestContext | |
| EditorSuggestTriggerInfo | |
| EditorTransaction | |
| Events | |
| ExtraButtonComponent | |
| FileManager | |
| FileStats | |
| FileSystemAdapter | |
| FileView | |
| FootnoteCache | |
| FootnoteRefCache | |
| FootnoteSubpathResult | |
| FrontMatterInfo | |
| FrontmatterLinkCache | |
| FuzzyMatch | |
| FuzzySuggestModal | |
| HeadingCache | |
| HeadingSubpathResult | |
| Hotkey | |
| HoverLinkSource | |
| HoverParent | |
| HoverPopover | |
| HSL | |
| Instruction | |
| ISuggestOwner | |
| ItemView | |
| Keymap | |
| KeymapContext | |
| KeymapEventHandler | |
| KeymapInfo | |
| ListedFiles | |
| ListItemCache | |
| LivePreviewStateType | |
| Loc | |
| MarkdownEditView | |
| MarkdownFileInfo | |
| MarkdownPostProcessor | |
| MarkdownPostProcessorContext | |
| MarkdownPreviewRenderer | |
| MarkdownPreviewView | |
| MarkdownRenderChild | |
| MarkdownRenderer | |
| MarkdownSectionInformation | |
| MarkdownSubView | |
| MarkdownView | |
| Menu | |
| MenuItem | |
| MenuPositionDef | |
| MetadataCache | |
| Modal | |
| MomentFormatComponent | |
| Notice | |
| ObsidianProtocolData | |
| OpenViewState | |
| Plugin | |
| PluginManifest | |
| PluginSettingTab | |
| Point | |
| PopoverSuggest | |
| Pos | |
| ProgressBarComponent | |
| Reference | |
| ReferenceLinkCache | |
| RequestUrlParam | |
| RequestUrlResponse | |
| RequestUrlResponsePromise | |
| RGB | |
| Scope | |
| SearchComponent | |
| SearchResult | |
| SearchResultContainer | |
| SectionCache | |
| Setting | |
| SettingTab | |
| SliderComponent | |
| Stat | |
| SubpathResult | |
| SuggestModal | |
| TAbstractFile | |
| TagCache | |
| Tasks | |
| TextAreaComponent | |
| TextComponent | |
| TextFileView | |
| TFile | |
| TFolder | |
| ToggleComponent | |
| TooltipOptions | |
| ValueComponent | |
| Vault | |
| View | |
| ViewState | |
| ViewStateResult | |
| Workspace | |
| WorkspaceContainer | |
| WorkspaceFloating | |
| WorkspaceItem | |
| WorkspaceLeaf | |
| WorkspaceMobileDrawer | |
| WorkspaceRoot | |
| WorkspaceSidedock | |
| WorkspaceSplit | |
| WorkspaceTabs | |
| WorkspaceWindow | |
| WorkspaceWindowInitData | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) | |
| [addIcon](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) | |
| [apiVersion](https://docs.obsidian.md/Reference/TypeScript+API/apiVersion) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [arrayBufferToBase64](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToBase64) | |
| [arrayBufferToHex](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToHex) | |
| [base64ToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/base64ToArrayBuffer) | |
| [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent) | |
| [BlockCache](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) | |
| [BlockSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/BlockSubpathResult) | |
| [ButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ButtonComponent) | |
| [CachedMetadata](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| [CacheItem](https://docs.obsidian.md/Reference/TypeScript+API/CacheItem) | |
| [CapacitorAdapter](https://docs.obsidian.md/Reference/TypeScript+API/CapacitorAdapter) | |
| [CloseableComponent](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| [ColorComponent](https://docs.obsidian.md/Reference/TypeScript+API/ColorComponent) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| [Constructor](https://docs.obsidian.md/Reference/TypeScript+API/Constructor) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [DataWriteOptions](https://docs.obsidian.md/Reference/TypeScript+API/DataWriteOptions) | |
| [debounce](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| [Debouncer](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) | |
| [displayTooltip](https://docs.obsidian.md/Reference/TypeScript+API/displayTooltip) | |
| [DropdownComponent](https://docs.obsidian.md/Reference/TypeScript+API/DropdownComponent) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| [EditorChange](https://docs.obsidian.md/Reference/TypeScript+API/EditorChange) | |
| [EditorCommandName](https://docs.obsidian.md/Reference/TypeScript+API/EditorCommandName) | |
| [editorEditorField](https://docs.obsidian.md/Reference/TypeScript+API/editorEditorField) | |
| [editorInfoField](https://docs.obsidian.md/Reference/TypeScript+API/editorInfoField) | |
| [editorLivePreviewField](https://docs.obsidian.md/Reference/TypeScript+API/editorLivePreviewField) | |
| [EditorPosition](https://docs.obsidian.md/Reference/TypeScript+API/EditorPosition) | |
| [EditorRange](https://docs.obsidian.md/Reference/TypeScript+API/EditorRange) | |
| [EditorRangeOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorRangeOrCaret) | |
| [EditorScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorScrollInfo) | |
| [EditorSelection](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelection) | |
| [EditorSelectionOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelectionOrCaret) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [EditorSuggestTriggerInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestTriggerInfo) | |
| [EditorTransaction](https://docs.obsidian.md/Reference/TypeScript+API/EditorTransaction) | |
| [editorViewField](https://docs.obsidian.md/Reference/TypeScript+API/editorViewField) | |
| [EmbedCache](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) | |
| [EventRef](https://docs.obsidian.md/Reference/TypeScript+API/EventRef) | |
| [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| [ExtraButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ExtraButtonComponent) | |
| [FileManager](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | |
| [FileStats](https://docs.obsidian.md/Reference/TypeScript+API/FileStats) | |
| [FileSystemAdapter](https://docs.obsidian.md/Reference/TypeScript+API/FileSystemAdapter) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [finishRenderMath](https://docs.obsidian.md/Reference/TypeScript+API/finishRenderMath) | |
| [FootnoteCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) | |
| [FootnoteRefCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) | |
| [FootnoteSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteSubpathResult) | |
| [FrontMatterCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | |
| [FrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterInfo) | |
| [FrontmatterLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) | |
| [FuzzyMatch](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getBlobArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/getBlobArrayBuffer) | |
| [getFrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/getFrontMatterInfo) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/getIcon) | |
| [getIconIds](https://docs.obsidian.md/Reference/TypeScript+API/getIconIds) | |
| [getLanguage](https://docs.obsidian.md/Reference/TypeScript+API/getLanguage) | |
| [getLinkpath](https://docs.obsidian.md/Reference/TypeScript+API/getLinkpath) | |
| [HeadingCache](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) | |
| [HeadingSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/HeadingSubpathResult) | |
| [HexString](https://docs.obsidian.md/Reference/TypeScript+API/HexString) | |
| [hexToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/hexToArrayBuffer) | |
| [Hotkey](https://docs.obsidian.md/Reference/TypeScript+API/Hotkey) | |
| [HoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/HoverLinkSource) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [HSL](https://docs.obsidian.md/Reference/TypeScript+API/HSL) | |
| [htmlToMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/htmlToMarkdown) | |
| [IconName](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Instruction](https://docs.obsidian.md/Reference/TypeScript+API/Instruction) | |
| [ISuggestOwner](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [iterateRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateRefs) | |
| [Keymap](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | |
| [KeymapContext](https://docs.obsidian.md/Reference/TypeScript+API/KeymapContext) | |
| [KeymapEventHandler](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventHandler) | |
| [KeymapEventListener](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventListener) | |
| [KeymapInfo](https://docs.obsidian.md/Reference/TypeScript+API/KeymapInfo) | |
| [LinkCache](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) | |
| [ListedFiles](https://docs.obsidian.md/Reference/TypeScript+API/ListedFiles) | |
| [ListItemCache](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) | |
| [livePreviewState](https://docs.obsidian.md/Reference/TypeScript+API/livePreviewState) | |
| [LivePreviewStateType](https://docs.obsidian.md/Reference/TypeScript+API/LivePreviewStateType) | |
| [loadMathJax](https://docs.obsidian.md/Reference/TypeScript+API/loadMathJax) | |
| [loadMermaid](https://docs.obsidian.md/Reference/TypeScript+API/loadMermaid) | |
| [loadPdfJs](https://docs.obsidian.md/Reference/TypeScript+API/loadPdfJs) | |
| [loadPrism](https://docs.obsidian.md/Reference/TypeScript+API/loadPrism) | |
| [Loc](https://docs.obsidian.md/Reference/TypeScript+API/Loc) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessor) | |
| [MarkdownPostProcessorContext](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext) | |
| [MarkdownPreviewEvents](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents) | |
| [MarkdownPreviewRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewRenderer) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownSectionInformation](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSectionInformation) | |
| [MarkdownSubView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSubView) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [MarkdownViewModeType](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownViewModeType) | |
| [Menu](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| [MenuItem](https://docs.obsidian.md/Reference/TypeScript+API/MenuItem) | |
| [MenuPositionDef](https://docs.obsidian.md/Reference/TypeScript+API/MenuPositionDef) | |
| [MenuSeparator](https://docs.obsidian.md/Reference/TypeScript+API/MenuSeparator) | |
| [MetadataCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | |
| [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| [Modifier](https://docs.obsidian.md/Reference/TypeScript+API/Modifier) | |
| [moment](https://docs.obsidian.md/Reference/TypeScript+API/moment) | |
| [MomentFormatComponent](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent) | |
| [normalizePath](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath) | |
| [Notice](https://docs.obsidian.md/Reference/TypeScript+API/Notice) | |
| [ObsidianProtocolData](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolData) | |
| [ObsidianProtocolHandler](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolHandler) | |
| [OpenViewState](https://docs.obsidian.md/Reference/TypeScript+API/OpenViewState) | |
| [PaneType](https://docs.obsidian.md/Reference/TypeScript+API/PaneType) | |
| [parseFrontMatterAliases](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterAliases) | |
| [parseFrontMatterEntry](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterEntry) | |
| [parseFrontMatterStringArray](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterStringArray) | |
| [parseFrontMatterTags](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterTags) | |
| [parseLinktext](https://docs.obsidian.md/Reference/TypeScript+API/parseLinktext) | |
| [parseYaml](https://docs.obsidian.md/Reference/TypeScript+API/parseYaml) | |
| [Platform](https://docs.obsidian.md/Reference/TypeScript+API/Platform) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [PluginManifest](https://docs.obsidian.md/Reference/TypeScript+API/PluginManifest) | |
| [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab) | |
| [Point](https://docs.obsidian.md/Reference/TypeScript+API/Point) | |
| [PopoverState](https://docs.obsidian.md/Reference/TypeScript+API/PopoverState) | |
| [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) | |
| [Pos](https://docs.obsidian.md/Reference/TypeScript+API/Pos) | |
| [prepareFuzzySearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareFuzzySearch) | |
| [prepareSimpleSearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareSimpleSearch) | |
| [ProgressBarComponent](https://docs.obsidian.md/Reference/TypeScript+API/ProgressBarComponent) | |
| [Reference](https://docs.obsidian.md/Reference/TypeScript+API/Reference) | |
| [ReferenceCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceCache) | |
| [ReferenceLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceLinkCache) | |
| [removeIcon](https://docs.obsidian.md/Reference/TypeScript+API/removeIcon) | |
| [renderMatches](https://docs.obsidian.md/Reference/TypeScript+API/renderMatches) | |
| [renderMath](https://docs.obsidian.md/Reference/TypeScript+API/renderMath) | |
| [renderResults](https://docs.obsidian.md/Reference/TypeScript+API/renderResults) | |
| [request](https://docs.obsidian.md/Reference/TypeScript+API/request) | |
| [requestUrl](https://docs.obsidian.md/Reference/TypeScript+API/requestUrl) | |
| [RequestUrlParam](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlParam) | |
| [RequestUrlResponse](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponse) | |
| [RequestUrlResponsePromise](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponsePromise) | |
| [requireApiVersion](https://docs.obsidian.md/Reference/TypeScript+API/requireApiVersion) | |
| [resolveSubpath](https://docs.obsidian.md/Reference/TypeScript+API/resolveSubpath) | |
| [RGB](https://docs.obsidian.md/Reference/TypeScript+API/RGB) | |
| [sanitizeHTMLToDom](https://docs.obsidian.md/Reference/TypeScript+API/sanitizeHTMLToDom) | |
| [Scope](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | |
| [SearchComponent](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent) | |
| [SearchMatches](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatches) | |
| [SearchMatchPart](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatchPart) | |
| [SearchResult](https://docs.obsidian.md/Reference/TypeScript+API/SearchResult) | |
| [SearchResultContainer](https://docs.obsidian.md/Reference/TypeScript+API/SearchResultContainer) | |
| [SectionCache](https://docs.obsidian.md/Reference/TypeScript+API/SectionCache) | |
| [setIcon](https://docs.obsidian.md/Reference/TypeScript+API/setIcon) | |
| [Setting](https://docs.obsidian.md/Reference/TypeScript+API/Setting) | |
| [SettingTab](https://docs.obsidian.md/Reference/TypeScript+API/SettingTab) | |
| [setTooltip](https://docs.obsidian.md/Reference/TypeScript+API/setTooltip) | |
| [Side](https://docs.obsidian.md/Reference/TypeScript+API/Side) | |
| [SliderComponent](https://docs.obsidian.md/Reference/TypeScript+API/SliderComponent) | |
| [sortSearchResults](https://docs.obsidian.md/Reference/TypeScript+API/sortSearchResults) | |
| [SplitDirection](https://docs.obsidian.md/Reference/TypeScript+API/SplitDirection) | |
| [Stat](https://docs.obsidian.md/Reference/TypeScript+API/Stat) | |
| [stringifyYaml](https://docs.obsidian.md/Reference/TypeScript+API/stringifyYaml) | |
| [stripHeading](https://docs.obsidian.md/Reference/TypeScript+API/stripHeading) | |
| [stripHeadingForLink](https://docs.obsidian.md/Reference/TypeScript+API/stripHeadingForLink) | |
| [SubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/SubpathResult) | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) | |
| [TagCache](https://docs.obsidian.md/Reference/TypeScript+API/TagCache) | |
| [Tasks](https://docs.obsidian.md/Reference/TypeScript+API/Tasks) | |
| [TextAreaComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextAreaComponent) | |
| [TextComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [TFile](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | |
| [TFolder](https://docs.obsidian.md/Reference/TypeScript+API/TFolder) | |
| [ToggleComponent](https://docs.obsidian.md/Reference/TypeScript+API/ToggleComponent) | |
| [TooltipOptions](https://docs.obsidian.md/Reference/TypeScript+API/TooltipOptions) | |
| [TooltipPlacement](https://docs.obsidian.md/Reference/TypeScript+API/TooltipPlacement) | |
| [UserEvent](https://docs.obsidian.md/Reference/TypeScript+API/UserEvent) | |
| [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent) | |
| [Vault](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [ViewState](https://docs.obsidian.md/Reference/TypeScript+API/ViewState) | |
| [ViewStateResult](https://docs.obsidian.md/Reference/TypeScript+API/ViewStateResult) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| [WorkspaceContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| [WorkspaceFloating](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceFloating) | |
| [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| [WorkspaceMobileDrawer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | |
| [WorkspaceParent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | |
| [WorkspaceRibbon](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | |
| [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | |
| [WorkspaceSidedock](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) | |
| [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) | |
| [WorkspaceTabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) | |
| [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow) | |
| [WorkspaceWindowInitData](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindowInitData) | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # Menu | |
| ```yaml is-loaded | |
| aliases: "Menu" | |
| cssclasses: hide-title | |
| ``` | |
| [`Menu`](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| ## Menu class | |
| **Signature:** | |
| ```typescript is-loaded | |
| export class Menu extends Component implements CloseableComponent | |
| ``` | |
| **Extends:** [`Component`](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| **Implements:** [`CloseableComponent`](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| ## Constructors | |
| | Constructor | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`(constructor)()`](https://docs.obsidian.md/Reference/TypeScript+API/Menu/(constructor)) | | Constructs a new instance of the `Menu` class | | |
| ## Methods | |
| | Method | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`addChild(component)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/addChild) | | Adds a child component, loading it if this component is loaded<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`addItem(cb)`](https://docs.obsidian.md/Reference/TypeScript+API/Menu/addItem) | | Adds a menu item. Only works when menu is not shown yet. | | |
| | [`addSeparator()`](https://docs.obsidian.md/Reference/TypeScript+API/Menu/addSeparator) | | Adds a separator. Only works when menu is not shown yet. | | |
| | [`close()`](https://docs.obsidian.md/Reference/TypeScript+API/Menu/close) | | | | |
| | [`hide()`](https://docs.obsidian.md/Reference/TypeScript+API/Menu/hide) | | | | |
| | [`load()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/load) | | Load this component and its children<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`onHide(callback)`](https://docs.obsidian.md/Reference/TypeScript+API/Menu/onHide) | | | | |
| | [`onload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/onload) | | Override this to load your component<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`onunload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/onunload) | | Override this to unload your component<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`register(cb)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/register) | | Registers a callback to be called when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent_1) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent_2) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerEvent(eventRef)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerEvent) | | Registers an event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerInterval(id)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerInterval) | | Registers an interval (from setInterval) to be cancelled when unloading Use instead of to avoid TypeScript confusing between NodeJS vs Browser API<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`removeChild(component)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/removeChild) | | Removes a child component, unloading it<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`setNoIcon()`](https://docs.obsidian.md/Reference/TypeScript+API/Menu/setNoIcon) | | | | |
| | [`setUseNativeMenu(useNativeMenu)`](https://docs.obsidian.md/Reference/TypeScript+API/Menu/setUseNativeMenu) | | Force this menu to use native or DOM. (Only works on the desktop app) | | |
| | [`showAtMouseEvent(evt)`](https://docs.obsidian.md/Reference/TypeScript+API/Menu/showAtMouseEvent) | | | | |
| | [`showAtPosition(position, doc)`](https://docs.obsidian.md/Reference/TypeScript+API/Menu/showAtPosition) | | | | |
| | [`unload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/unload) | | Unload this component and its children<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| Links to this page | |
| [(constructor)](https://docs.obsidian.md/Reference/TypeScript+API/Menu/(constructor)) | |
| [addItem](https://docs.obsidian.md/Reference/TypeScript+API/Menu/addItem) | |
| [addSeparator](https://docs.obsidian.md/Reference/TypeScript+API/Menu/addSeparator) | |
| [close](https://docs.obsidian.md/Reference/TypeScript+API/Menu/close) | |
| [Context menus](https://docs.obsidian.md/Plugins/User+interface/Context+menus) | |
| [hide](https://docs.obsidian.md/Reference/TypeScript+API/Menu/hide) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [on('editor-menu')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('editor-menu')) | |
| [on('file-menu')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('file-menu')) | |
| [on('files-menu')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('files-menu')) | |
| [on('url-menu')](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/on('url-menu')) | |
| [onHide](https://docs.obsidian.md/Reference/TypeScript+API/Menu/onHide) | |
| [onPaneMenu](https://docs.obsidian.md/Reference/TypeScript+API/View/onPaneMenu) | |
| [setNoIcon](https://docs.obsidian.md/Reference/TypeScript+API/Menu/setNoIcon) | |
| [setUseNativeMenu](https://docs.obsidian.md/Reference/TypeScript+API/Menu/setUseNativeMenu) | |
| [showAtMouseEvent](https://docs.obsidian.md/Reference/TypeScript+API/Menu/showAtMouseEvent) | |
| [showAtPosition](https://docs.obsidian.md/Reference/TypeScript+API/Menu/showAtPosition) | |
| Menu | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| Menu class | |
| Constructors | |
| Methods | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Obsidian Modals Guide | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Getting started | |
| Guides | |
| User interface | |
| [About user interface](https://docs.obsidian.md/Plugins/User+interface/About+user+interface) | |
| [Commands](https://docs.obsidian.md/Plugins/User+interface/Commands) | |
| [Context menus](https://docs.obsidian.md/Plugins/User+interface/Context+menus) | |
| [HTML elements](https://docs.obsidian.md/Plugins/User+interface/HTML+elements) | |
| [Icons](https://docs.obsidian.md/Plugins/User+interface/Icons) | |
| [Modals](https://docs.obsidian.md/Plugins/User+interface/Modals) | |
| [Ribbon actions](https://docs.obsidian.md/Plugins/User+interface/Ribbon+actions) | |
| [Right-to-left](https://docs.obsidian.md/Plugins/User+interface/Right-to-left) | |
| [Settings](https://docs.obsidian.md/Plugins/User+interface/Settings) | |
| [Status bar](https://docs.obsidian.md/Plugins/User+interface/Status+bar) | |
| [Views](https://docs.obsidian.md/Plugins/User+interface/Views) | |
| [Workspace](https://docs.obsidian.md/Plugins/User+interface/Workspace) | |
| Editor | |
| Releasing | |
| [Events](https://docs.obsidian.md/Plugins/Events) | |
| [Vault](https://docs.obsidian.md/Plugins/Vault) | |
| Themes | |
| Reference | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # Modals | |
| Modals display information and accept input from the user. To create a modal, create a class that extends [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal): | |
| ```ts is-loaded | |
| import { App, Modal } from 'obsidian'; | |
| export class ExampleModal extends Modal { | |
| constructor(app: App) { | |
| super(app); | |
| this.setContent('Look at me, I\'m a modal! 👀') | |
| } | |
| } | |
| ``` | |
| To open a modal, create a new instance of `ExampleModal` and call [open()](https://docs.obsidian.md/Reference/TypeScript+API/Modal/open) on it: | |
| ```ts is-loaded | |
| import { Plugin } from 'obsidian'; | |
| import { ExampleModal } from './modal'; | |
| export default class ExamplePlugin extends Plugin { | |
| async onload() { | |
| this.addCommand({ | |
| id: 'display-modal', | |
| name: 'Display modal', | |
| callback: () => { | |
| new ExampleModal(this.app).open(); | |
| }, | |
| }); | |
| } | |
| } | |
| ``` | |
| ## Accept user input | |
| The modal in the previous example only displayed some text. Let's look at a little more complex example that handles input from the user. | |
|  | |
| ```ts is-loaded | |
| import { App, Modal, Setting } from 'obsidian'; | |
| export class ExampleModal extends Modal { | |
| constructor(app: App, onSubmit: (result: string) => void) { | |
| super(app); | |
| this.setTitle('What\'s your name?'); | |
| let name = ''; | |
| new Setting(this.contentEl) | |
| .setName('Name') | |
| .addText((text) => | |
| text.onChange((value) => { | |
| name = value; | |
| })); | |
| new Setting(this.contentEl) | |
| .addButton((btn) => | |
| btn | |
| .setButtonText('Submit') | |
| .setCta() | |
| .onClick(() => { | |
| this.close(); | |
| onSubmit(name); | |
| })); | |
| } | |
| } | |
| ``` | |
| The result is returned in the `onSubmit` callback when the user clicks **Submit**: | |
| ```ts is-loaded | |
| new ExampleModal(this.app, (result) => { | |
| new Notice(`Hello, ${result}!`); | |
| }).open(); | |
| ``` | |
| ## Select from list of suggestions | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) is a special modal that lets you display a list of suggestions to the user. | |
|  | |
| ```ts is-loaded | |
| import { App, Notice, SuggestModal } from 'obsidian'; | |
| interface Book { | |
| title: string; | |
| author: string; | |
| } | |
| const ALL_BOOKS = [\ | |
| {\ | |
| title: 'How to Take Smart Notes',\ | |
| author: 'Sönke Ahrens',\ | |
| },\ | |
| {\ | |
| title: 'Thinking, Fast and Slow',\ | |
| author: 'Daniel Kahneman',\ | |
| },\ | |
| {\ | |
| title: 'Deep Work',\ | |
| author: 'Cal Newport',\ | |
| },\ | |
| ]; | |
| export class ExampleModal extends SuggestModal<Book> { | |
| // Returns all available suggestions. | |
| getSuggestions(query: string): Book[] { | |
| return ALL_BOOKS.filter((book) => | |
| book.title.toLowerCase().includes(query.toLowerCase()) | |
| ); | |
| } | |
| // Renders each suggestion item. | |
| renderSuggestion(book: Book, el: HTMLElement) { | |
| el.createEl('div', { text: book.title }); | |
| el.createEl('small', { text: book.author }); | |
| } | |
| // Perform action on the selected suggestion. | |
| onChooseSuggestion(book: Book, evt: MouseEvent | KeyboardEvent) { | |
| new Notice(`Selected ${book.title}`); | |
| } | |
| } | |
| ``` | |
| In addition to `SuggestModal`, the Obsidian API provides an even more specialized type of modal for suggestions: the [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal). While it doesn't give you the same control of how each item is rendered, you get [fuzzy string search](https://en.wikipedia.org/wiki/Approximate_string_matching) out-of-the-box. | |
|  | |
| ```ts is-loaded | |
| export class ExampleModal extends FuzzySuggestModal<Book> { | |
| getItems(): Book[] { | |
| return ALL_BOOKS; | |
| } | |
| getItemText(book: Book): string { | |
| return book.title; | |
| } | |
| onChooseItem(book: Book, evt: MouseEvent | KeyboardEvent) { | |
| new Notice(`Selected ${book.title}`); | |
| } | |
| } | |
| ``` | |
| Modals | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| Accept user input | |
| Select from list of suggestions | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## FuzzySuggestModal Overview | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| AbstractInputSuggest | |
| AbstractTextComponent | |
| App | |
| BaseComponent | |
| BlockCache | |
| BlockSubpathResult | |
| ButtonComponent | |
| CachedMetadata | |
| CacheItem | |
| CapacitorAdapter | |
| CloseableComponent | |
| ColorComponent | |
| Command | |
| Component | |
| DataAdapter | |
| DataWriteOptions | |
| Debouncer | |
| DropdownComponent | |
| Editor | |
| EditorChange | |
| EditorPosition | |
| EditorRange | |
| EditorRangeOrCaret | |
| EditorScrollInfo | |
| EditorSelection | |
| EditorSelectionOrCaret | |
| EditorSuggest | |
| EditorSuggestContext | |
| EditorSuggestTriggerInfo | |
| EditorTransaction | |
| Events | |
| ExtraButtonComponent | |
| FileManager | |
| FileStats | |
| FileSystemAdapter | |
| FileView | |
| FootnoteCache | |
| FootnoteRefCache | |
| FootnoteSubpathResult | |
| FrontMatterInfo | |
| FrontmatterLinkCache | |
| FuzzyMatch | |
| FuzzySuggestModal | |
| HeadingCache | |
| HeadingSubpathResult | |
| Hotkey | |
| HoverLinkSource | |
| HoverParent | |
| HoverPopover | |
| HSL | |
| Instruction | |
| ISuggestOwner | |
| ItemView | |
| Keymap | |
| KeymapContext | |
| KeymapEventHandler | |
| KeymapInfo | |
| ListedFiles | |
| ListItemCache | |
| LivePreviewStateType | |
| Loc | |
| MarkdownEditView | |
| MarkdownFileInfo | |
| MarkdownPostProcessor | |
| MarkdownPostProcessorContext | |
| MarkdownPreviewRenderer | |
| MarkdownPreviewView | |
| MarkdownRenderChild | |
| MarkdownRenderer | |
| MarkdownSectionInformation | |
| MarkdownSubView | |
| MarkdownView | |
| Menu | |
| MenuItem | |
| MenuPositionDef | |
| MetadataCache | |
| Modal | |
| MomentFormatComponent | |
| Notice | |
| ObsidianProtocolData | |
| OpenViewState | |
| Plugin | |
| PluginManifest | |
| PluginSettingTab | |
| Point | |
| PopoverSuggest | |
| Pos | |
| ProgressBarComponent | |
| Reference | |
| ReferenceLinkCache | |
| RequestUrlParam | |
| RequestUrlResponse | |
| RequestUrlResponsePromise | |
| RGB | |
| Scope | |
| SearchComponent | |
| SearchResult | |
| SearchResultContainer | |
| SectionCache | |
| Setting | |
| SettingTab | |
| SliderComponent | |
| Stat | |
| SubpathResult | |
| SuggestModal | |
| TAbstractFile | |
| TagCache | |
| Tasks | |
| TextAreaComponent | |
| TextComponent | |
| TextFileView | |
| TFile | |
| TFolder | |
| ToggleComponent | |
| TooltipOptions | |
| ValueComponent | |
| Vault | |
| View | |
| ViewState | |
| ViewStateResult | |
| Workspace | |
| WorkspaceContainer | |
| WorkspaceFloating | |
| WorkspaceItem | |
| WorkspaceLeaf | |
| WorkspaceMobileDrawer | |
| WorkspaceRoot | |
| WorkspaceSidedock | |
| WorkspaceSplit | |
| WorkspaceTabs | |
| WorkspaceWindow | |
| WorkspaceWindowInitData | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) | |
| [addIcon](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) | |
| [apiVersion](https://docs.obsidian.md/Reference/TypeScript+API/apiVersion) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [arrayBufferToBase64](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToBase64) | |
| [arrayBufferToHex](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToHex) | |
| [base64ToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/base64ToArrayBuffer) | |
| [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent) | |
| [BlockCache](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) | |
| [BlockSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/BlockSubpathResult) | |
| [ButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ButtonComponent) | |
| [CachedMetadata](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| [CacheItem](https://docs.obsidian.md/Reference/TypeScript+API/CacheItem) | |
| [CapacitorAdapter](https://docs.obsidian.md/Reference/TypeScript+API/CapacitorAdapter) | |
| [CloseableComponent](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| [ColorComponent](https://docs.obsidian.md/Reference/TypeScript+API/ColorComponent) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| [Constructor](https://docs.obsidian.md/Reference/TypeScript+API/Constructor) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [DataWriteOptions](https://docs.obsidian.md/Reference/TypeScript+API/DataWriteOptions) | |
| [debounce](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| [Debouncer](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) | |
| [displayTooltip](https://docs.obsidian.md/Reference/TypeScript+API/displayTooltip) | |
| [DropdownComponent](https://docs.obsidian.md/Reference/TypeScript+API/DropdownComponent) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| [EditorChange](https://docs.obsidian.md/Reference/TypeScript+API/EditorChange) | |
| [EditorCommandName](https://docs.obsidian.md/Reference/TypeScript+API/EditorCommandName) | |
| [editorEditorField](https://docs.obsidian.md/Reference/TypeScript+API/editorEditorField) | |
| [editorInfoField](https://docs.obsidian.md/Reference/TypeScript+API/editorInfoField) | |
| [editorLivePreviewField](https://docs.obsidian.md/Reference/TypeScript+API/editorLivePreviewField) | |
| [EditorPosition](https://docs.obsidian.md/Reference/TypeScript+API/EditorPosition) | |
| [EditorRange](https://docs.obsidian.md/Reference/TypeScript+API/EditorRange) | |
| [EditorRangeOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorRangeOrCaret) | |
| [EditorScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorScrollInfo) | |
| [EditorSelection](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelection) | |
| [EditorSelectionOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelectionOrCaret) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [EditorSuggestTriggerInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestTriggerInfo) | |
| [EditorTransaction](https://docs.obsidian.md/Reference/TypeScript+API/EditorTransaction) | |
| [editorViewField](https://docs.obsidian.md/Reference/TypeScript+API/editorViewField) | |
| [EmbedCache](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) | |
| [EventRef](https://docs.obsidian.md/Reference/TypeScript+API/EventRef) | |
| [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| [ExtraButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ExtraButtonComponent) | |
| [FileManager](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | |
| [FileStats](https://docs.obsidian.md/Reference/TypeScript+API/FileStats) | |
| [FileSystemAdapter](https://docs.obsidian.md/Reference/TypeScript+API/FileSystemAdapter) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [finishRenderMath](https://docs.obsidian.md/Reference/TypeScript+API/finishRenderMath) | |
| [FootnoteCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) | |
| [FootnoteRefCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) | |
| [FootnoteSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteSubpathResult) | |
| [FrontMatterCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | |
| [FrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterInfo) | |
| [FrontmatterLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) | |
| [FuzzyMatch](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getBlobArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/getBlobArrayBuffer) | |
| [getFrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/getFrontMatterInfo) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/getIcon) | |
| [getIconIds](https://docs.obsidian.md/Reference/TypeScript+API/getIconIds) | |
| [getLanguage](https://docs.obsidian.md/Reference/TypeScript+API/getLanguage) | |
| [getLinkpath](https://docs.obsidian.md/Reference/TypeScript+API/getLinkpath) | |
| [HeadingCache](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) | |
| [HeadingSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/HeadingSubpathResult) | |
| [HexString](https://docs.obsidian.md/Reference/TypeScript+API/HexString) | |
| [hexToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/hexToArrayBuffer) | |
| [Hotkey](https://docs.obsidian.md/Reference/TypeScript+API/Hotkey) | |
| [HoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/HoverLinkSource) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [HSL](https://docs.obsidian.md/Reference/TypeScript+API/HSL) | |
| [htmlToMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/htmlToMarkdown) | |
| [IconName](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Instruction](https://docs.obsidian.md/Reference/TypeScript+API/Instruction) | |
| [ISuggestOwner](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [iterateRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateRefs) | |
| [Keymap](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | |
| [KeymapContext](https://docs.obsidian.md/Reference/TypeScript+API/KeymapContext) | |
| [KeymapEventHandler](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventHandler) | |
| [KeymapEventListener](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventListener) | |
| [KeymapInfo](https://docs.obsidian.md/Reference/TypeScript+API/KeymapInfo) | |
| [LinkCache](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) | |
| [ListedFiles](https://docs.obsidian.md/Reference/TypeScript+API/ListedFiles) | |
| [ListItemCache](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) | |
| [livePreviewState](https://docs.obsidian.md/Reference/TypeScript+API/livePreviewState) | |
| [LivePreviewStateType](https://docs.obsidian.md/Reference/TypeScript+API/LivePreviewStateType) | |
| [loadMathJax](https://docs.obsidian.md/Reference/TypeScript+API/loadMathJax) | |
| [loadMermaid](https://docs.obsidian.md/Reference/TypeScript+API/loadMermaid) | |
| [loadPdfJs](https://docs.obsidian.md/Reference/TypeScript+API/loadPdfJs) | |
| [loadPrism](https://docs.obsidian.md/Reference/TypeScript+API/loadPrism) | |
| [Loc](https://docs.obsidian.md/Reference/TypeScript+API/Loc) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessor) | |
| [MarkdownPostProcessorContext](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext) | |
| [MarkdownPreviewEvents](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents) | |
| [MarkdownPreviewRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewRenderer) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownSectionInformation](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSectionInformation) | |
| [MarkdownSubView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSubView) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [MarkdownViewModeType](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownViewModeType) | |
| [Menu](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| [MenuItem](https://docs.obsidian.md/Reference/TypeScript+API/MenuItem) | |
| [MenuPositionDef](https://docs.obsidian.md/Reference/TypeScript+API/MenuPositionDef) | |
| [MenuSeparator](https://docs.obsidian.md/Reference/TypeScript+API/MenuSeparator) | |
| [MetadataCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | |
| [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| [Modifier](https://docs.obsidian.md/Reference/TypeScript+API/Modifier) | |
| [moment](https://docs.obsidian.md/Reference/TypeScript+API/moment) | |
| [MomentFormatComponent](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent) | |
| [normalizePath](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath) | |
| [Notice](https://docs.obsidian.md/Reference/TypeScript+API/Notice) | |
| [ObsidianProtocolData](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolData) | |
| [ObsidianProtocolHandler](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolHandler) | |
| [OpenViewState](https://docs.obsidian.md/Reference/TypeScript+API/OpenViewState) | |
| [PaneType](https://docs.obsidian.md/Reference/TypeScript+API/PaneType) | |
| [parseFrontMatterAliases](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterAliases) | |
| [parseFrontMatterEntry](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterEntry) | |
| [parseFrontMatterStringArray](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterStringArray) | |
| [parseFrontMatterTags](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterTags) | |
| [parseLinktext](https://docs.obsidian.md/Reference/TypeScript+API/parseLinktext) | |
| [parseYaml](https://docs.obsidian.md/Reference/TypeScript+API/parseYaml) | |
| [Platform](https://docs.obsidian.md/Reference/TypeScript+API/Platform) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [PluginManifest](https://docs.obsidian.md/Reference/TypeScript+API/PluginManifest) | |
| [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab) | |
| [Point](https://docs.obsidian.md/Reference/TypeScript+API/Point) | |
| [PopoverState](https://docs.obsidian.md/Reference/TypeScript+API/PopoverState) | |
| [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) | |
| [Pos](https://docs.obsidian.md/Reference/TypeScript+API/Pos) | |
| [prepareFuzzySearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareFuzzySearch) | |
| [prepareSimpleSearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareSimpleSearch) | |
| [ProgressBarComponent](https://docs.obsidian.md/Reference/TypeScript+API/ProgressBarComponent) | |
| [Reference](https://docs.obsidian.md/Reference/TypeScript+API/Reference) | |
| [ReferenceCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceCache) | |
| [ReferenceLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceLinkCache) | |
| [removeIcon](https://docs.obsidian.md/Reference/TypeScript+API/removeIcon) | |
| [renderMatches](https://docs.obsidian.md/Reference/TypeScript+API/renderMatches) | |
| [renderMath](https://docs.obsidian.md/Reference/TypeScript+API/renderMath) | |
| [renderResults](https://docs.obsidian.md/Reference/TypeScript+API/renderResults) | |
| [request](https://docs.obsidian.md/Reference/TypeScript+API/request) | |
| [requestUrl](https://docs.obsidian.md/Reference/TypeScript+API/requestUrl) | |
| [RequestUrlParam](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlParam) | |
| [RequestUrlResponse](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponse) | |
| [RequestUrlResponsePromise](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponsePromise) | |
| [requireApiVersion](https://docs.obsidian.md/Reference/TypeScript+API/requireApiVersion) | |
| [resolveSubpath](https://docs.obsidian.md/Reference/TypeScript+API/resolveSubpath) | |
| [RGB](https://docs.obsidian.md/Reference/TypeScript+API/RGB) | |
| [sanitizeHTMLToDom](https://docs.obsidian.md/Reference/TypeScript+API/sanitizeHTMLToDom) | |
| [Scope](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | |
| [SearchComponent](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent) | |
| [SearchMatches](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatches) | |
| [SearchMatchPart](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatchPart) | |
| [SearchResult](https://docs.obsidian.md/Reference/TypeScript+API/SearchResult) | |
| [SearchResultContainer](https://docs.obsidian.md/Reference/TypeScript+API/SearchResultContainer) | |
| [SectionCache](https://docs.obsidian.md/Reference/TypeScript+API/SectionCache) | |
| [setIcon](https://docs.obsidian.md/Reference/TypeScript+API/setIcon) | |
| [Setting](https://docs.obsidian.md/Reference/TypeScript+API/Setting) | |
| [SettingTab](https://docs.obsidian.md/Reference/TypeScript+API/SettingTab) | |
| [setTooltip](https://docs.obsidian.md/Reference/TypeScript+API/setTooltip) | |
| [Side](https://docs.obsidian.md/Reference/TypeScript+API/Side) | |
| [SliderComponent](https://docs.obsidian.md/Reference/TypeScript+API/SliderComponent) | |
| [sortSearchResults](https://docs.obsidian.md/Reference/TypeScript+API/sortSearchResults) | |
| [SplitDirection](https://docs.obsidian.md/Reference/TypeScript+API/SplitDirection) | |
| [Stat](https://docs.obsidian.md/Reference/TypeScript+API/Stat) | |
| [stringifyYaml](https://docs.obsidian.md/Reference/TypeScript+API/stringifyYaml) | |
| [stripHeading](https://docs.obsidian.md/Reference/TypeScript+API/stripHeading) | |
| [stripHeadingForLink](https://docs.obsidian.md/Reference/TypeScript+API/stripHeadingForLink) | |
| [SubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/SubpathResult) | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) | |
| [TagCache](https://docs.obsidian.md/Reference/TypeScript+API/TagCache) | |
| [Tasks](https://docs.obsidian.md/Reference/TypeScript+API/Tasks) | |
| [TextAreaComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextAreaComponent) | |
| [TextComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [TFile](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | |
| [TFolder](https://docs.obsidian.md/Reference/TypeScript+API/TFolder) | |
| [ToggleComponent](https://docs.obsidian.md/Reference/TypeScript+API/ToggleComponent) | |
| [TooltipOptions](https://docs.obsidian.md/Reference/TypeScript+API/TooltipOptions) | |
| [TooltipPlacement](https://docs.obsidian.md/Reference/TypeScript+API/TooltipPlacement) | |
| [UserEvent](https://docs.obsidian.md/Reference/TypeScript+API/UserEvent) | |
| [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent) | |
| [Vault](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [ViewState](https://docs.obsidian.md/Reference/TypeScript+API/ViewState) | |
| [ViewStateResult](https://docs.obsidian.md/Reference/TypeScript+API/ViewStateResult) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| [WorkspaceContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| [WorkspaceFloating](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceFloating) | |
| [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| [WorkspaceMobileDrawer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | |
| [WorkspaceParent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | |
| [WorkspaceRibbon](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | |
| [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | |
| [WorkspaceSidedock](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) | |
| [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) | |
| [WorkspaceTabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) | |
| [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow) | |
| [WorkspaceWindowInitData](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindowInitData) | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # FuzzySuggestModal | |
| ```yaml is-loaded | |
| aliases: "FuzzySuggestModal" | |
| cssclasses: hide-title | |
| ``` | |
| [`FuzzySuggestModal`](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| ## FuzzySuggestModal class | |
| **Signature:** | |
| ```typescript is-loaded | |
| export abstract class FuzzySuggestModal<T> extends SuggestModal<FuzzyMatch<T>> | |
| ``` | |
| **Extends:** [`SuggestModal`](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) `<` [`FuzzyMatch`](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) `<T>>` | |
| ## Constructors | |
| | Constructor | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`(constructor)(app)`](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/(constructor)) | | Constructs a new instance of the `SuggestModal` class<br>(Inherited from [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal)) | | |
| ## Properties | |
| | Property | Modifiers | Type | Description | | |
| | --- | --- | --- | --- | | |
| | [`app`](https://docs.obsidian.md/Reference/TypeScript+API/Modal/app) | | [`App`](https://docs.obsidian.md/Reference/TypeScript+API/App) | (Inherited from [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal)) | | |
| | [`containerEl`](https://docs.obsidian.md/Reference/TypeScript+API/Modal/containerEl) | | `HTMLElement` | (Inherited from [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal)) | | |
| | [`contentEl`](https://docs.obsidian.md/Reference/TypeScript+API/Modal/contentEl) | | `HTMLElement` | (Inherited from [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal)) | | |
| | [`emptyStateText`](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/emptyStateText) | | `string` | (Inherited from [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal)) | | |
| | [`inputEl`](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/inputEl) | | `HTMLInputElement` | (Inherited from [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal)) | | |
| | [`limit`](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/limit) | | `number` | (Inherited from [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal)) | | |
| | [`modalEl`](https://docs.obsidian.md/Reference/TypeScript+API/Modal/modalEl) | | `HTMLElement` | (Inherited from [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal)) | | |
| | [`resultContainerEl`](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/resultContainerEl) | | `HTMLElement` | (Inherited from [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal)) | | |
| | [`scope`](https://docs.obsidian.md/Reference/TypeScript+API/Modal/scope) | | [`Scope`](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | (Inherited from [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal)) | | |
| | [`shouldRestoreSelection`](https://docs.obsidian.md/Reference/TypeScript+API/Modal/shouldRestoreSelection) | | `boolean` | (Inherited from [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal)) | | |
| | [`titleEl`](https://docs.obsidian.md/Reference/TypeScript+API/Modal/titleEl) | | `HTMLElement` | (Inherited from [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal)) | | |
| ## Methods | |
| | Method | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`close()`](https://docs.obsidian.md/Reference/TypeScript+API/Modal/close) | | Hide the modal.<br>(Inherited from [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal)) | | |
| | [`getItems()`](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal/getItems) | `abstract` | | | |
| | [`getItemText(item)`](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal/getItemText) | `abstract` | | | |
| | [`getSuggestions(query)`](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal/getSuggestions) | | | | |
| | [`onChooseItem(item, evt)`](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal/onChooseItem) | `abstract` | | | |
| | [`onChooseSuggestion(item, evt)`](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal/onChooseSuggestion) | | | | |
| | [`onClose()`](https://docs.obsidian.md/Reference/TypeScript+API/Modal/onClose) | | (Inherited from [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal)) | | |
| | [`onNoSuggestion()`](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/onNoSuggestion) | | (Inherited from [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal)) | | |
| | [`onOpen()`](https://docs.obsidian.md/Reference/TypeScript+API/Modal/onOpen) | | (Inherited from [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal)) | | |
| | [`open()`](https://docs.obsidian.md/Reference/TypeScript+API/Modal/open) | | Show the modal on the the active window. On mobile, the modal will animate on screen.<br>(Inherited from [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal)) | | |
| | [`renderSuggestion(item, el)`](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal/renderSuggestion) | | | | |
| | [`selectActiveSuggestion(evt)`](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/selectActiveSuggestion) | | (Inherited from [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal)) | | |
| | [`selectSuggestion(value, evt)`](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/selectSuggestion) | | (Inherited from [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal)) | | |
| | [`setContent(content)`](https://docs.obsidian.md/Reference/TypeScript+API/Modal/setContent) | | (Inherited from [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal)) | | |
| | [`setInstructions(instructions)`](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/setInstructions) | | (Inherited from [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal)) | | |
| | [`setPlaceholder(placeholder)`](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/setPlaceholder) | | (Inherited from [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal)) | | |
| | [`setTitle(title)`](https://docs.obsidian.md/Reference/TypeScript+API/Modal/setTitle) | | (Inherited from [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal)) | | |
| Links to this page | |
| [getItems](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal/getItems) | |
| [getItemText](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal/getItemText) | |
| [getSuggestions](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal/getSuggestions) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Modals](https://docs.obsidian.md/Plugins/User+interface/Modals) | |
| [onChooseItem](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal/onChooseItem) | |
| [onChooseSuggestion](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal/onChooseSuggestion) | |
| [renderSuggestion](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal/renderSuggestion) | |
| FuzzySuggestModal | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| FuzzySuggestModal class | |
| Constructors | |
| Properties | |
| Methods | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Obsidian Vault Class | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| AbstractInputSuggest | |
| AbstractTextComponent | |
| App | |
| BaseComponent | |
| BlockCache | |
| BlockSubpathResult | |
| ButtonComponent | |
| CachedMetadata | |
| CacheItem | |
| CapacitorAdapter | |
| CloseableComponent | |
| ColorComponent | |
| Command | |
| Component | |
| DataAdapter | |
| DataWriteOptions | |
| Debouncer | |
| DropdownComponent | |
| Editor | |
| EditorChange | |
| EditorPosition | |
| EditorRange | |
| EditorRangeOrCaret | |
| EditorScrollInfo | |
| EditorSelection | |
| EditorSelectionOrCaret | |
| EditorSuggest | |
| EditorSuggestContext | |
| EditorSuggestTriggerInfo | |
| EditorTransaction | |
| Events | |
| ExtraButtonComponent | |
| FileManager | |
| FileStats | |
| FileSystemAdapter | |
| FileView | |
| FootnoteCache | |
| FootnoteRefCache | |
| FootnoteSubpathResult | |
| FrontMatterInfo | |
| FrontmatterLinkCache | |
| FuzzyMatch | |
| FuzzySuggestModal | |
| HeadingCache | |
| HeadingSubpathResult | |
| Hotkey | |
| HoverLinkSource | |
| HoverParent | |
| HoverPopover | |
| HSL | |
| Instruction | |
| ISuggestOwner | |
| ItemView | |
| Keymap | |
| KeymapContext | |
| KeymapEventHandler | |
| KeymapInfo | |
| ListedFiles | |
| ListItemCache | |
| LivePreviewStateType | |
| Loc | |
| MarkdownEditView | |
| MarkdownFileInfo | |
| MarkdownPostProcessor | |
| MarkdownPostProcessorContext | |
| MarkdownPreviewRenderer | |
| MarkdownPreviewView | |
| MarkdownRenderChild | |
| MarkdownRenderer | |
| MarkdownSectionInformation | |
| MarkdownSubView | |
| MarkdownView | |
| Menu | |
| MenuItem | |
| MenuPositionDef | |
| MetadataCache | |
| Modal | |
| MomentFormatComponent | |
| Notice | |
| ObsidianProtocolData | |
| OpenViewState | |
| Plugin | |
| PluginManifest | |
| PluginSettingTab | |
| Point | |
| PopoverSuggest | |
| Pos | |
| ProgressBarComponent | |
| Reference | |
| ReferenceLinkCache | |
| RequestUrlParam | |
| RequestUrlResponse | |
| RequestUrlResponsePromise | |
| RGB | |
| Scope | |
| SearchComponent | |
| SearchResult | |
| SearchResultContainer | |
| SectionCache | |
| Setting | |
| SettingTab | |
| SliderComponent | |
| Stat | |
| SubpathResult | |
| SuggestModal | |
| TAbstractFile | |
| TagCache | |
| Tasks | |
| TextAreaComponent | |
| TextComponent | |
| TextFileView | |
| TFile | |
| TFolder | |
| ToggleComponent | |
| TooltipOptions | |
| ValueComponent | |
| Vault | |
| View | |
| ViewState | |
| ViewStateResult | |
| Workspace | |
| WorkspaceContainer | |
| WorkspaceFloating | |
| WorkspaceItem | |
| WorkspaceLeaf | |
| WorkspaceMobileDrawer | |
| WorkspaceRoot | |
| WorkspaceSidedock | |
| WorkspaceSplit | |
| WorkspaceTabs | |
| WorkspaceWindow | |
| WorkspaceWindowInitData | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) | |
| [addIcon](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) | |
| [apiVersion](https://docs.obsidian.md/Reference/TypeScript+API/apiVersion) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [arrayBufferToBase64](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToBase64) | |
| [arrayBufferToHex](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToHex) | |
| [base64ToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/base64ToArrayBuffer) | |
| [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent) | |
| [BlockCache](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) | |
| [BlockSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/BlockSubpathResult) | |
| [ButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ButtonComponent) | |
| [CachedMetadata](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| [CacheItem](https://docs.obsidian.md/Reference/TypeScript+API/CacheItem) | |
| [CapacitorAdapter](https://docs.obsidian.md/Reference/TypeScript+API/CapacitorAdapter) | |
| [CloseableComponent](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| [ColorComponent](https://docs.obsidian.md/Reference/TypeScript+API/ColorComponent) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| [Constructor](https://docs.obsidian.md/Reference/TypeScript+API/Constructor) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [DataWriteOptions](https://docs.obsidian.md/Reference/TypeScript+API/DataWriteOptions) | |
| [debounce](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| [Debouncer](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) | |
| [displayTooltip](https://docs.obsidian.md/Reference/TypeScript+API/displayTooltip) | |
| [DropdownComponent](https://docs.obsidian.md/Reference/TypeScript+API/DropdownComponent) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| [EditorChange](https://docs.obsidian.md/Reference/TypeScript+API/EditorChange) | |
| [EditorCommandName](https://docs.obsidian.md/Reference/TypeScript+API/EditorCommandName) | |
| [editorEditorField](https://docs.obsidian.md/Reference/TypeScript+API/editorEditorField) | |
| [editorInfoField](https://docs.obsidian.md/Reference/TypeScript+API/editorInfoField) | |
| [editorLivePreviewField](https://docs.obsidian.md/Reference/TypeScript+API/editorLivePreviewField) | |
| [EditorPosition](https://docs.obsidian.md/Reference/TypeScript+API/EditorPosition) | |
| [EditorRange](https://docs.obsidian.md/Reference/TypeScript+API/EditorRange) | |
| [EditorRangeOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorRangeOrCaret) | |
| [EditorScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorScrollInfo) | |
| [EditorSelection](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelection) | |
| [EditorSelectionOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelectionOrCaret) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [EditorSuggestTriggerInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestTriggerInfo) | |
| [EditorTransaction](https://docs.obsidian.md/Reference/TypeScript+API/EditorTransaction) | |
| [editorViewField](https://docs.obsidian.md/Reference/TypeScript+API/editorViewField) | |
| [EmbedCache](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) | |
| [EventRef](https://docs.obsidian.md/Reference/TypeScript+API/EventRef) | |
| [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| [ExtraButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ExtraButtonComponent) | |
| [FileManager](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | |
| [FileStats](https://docs.obsidian.md/Reference/TypeScript+API/FileStats) | |
| [FileSystemAdapter](https://docs.obsidian.md/Reference/TypeScript+API/FileSystemAdapter) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [finishRenderMath](https://docs.obsidian.md/Reference/TypeScript+API/finishRenderMath) | |
| [FootnoteCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) | |
| [FootnoteRefCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) | |
| [FootnoteSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteSubpathResult) | |
| [FrontMatterCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | |
| [FrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterInfo) | |
| [FrontmatterLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) | |
| [FuzzyMatch](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getBlobArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/getBlobArrayBuffer) | |
| [getFrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/getFrontMatterInfo) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/getIcon) | |
| [getIconIds](https://docs.obsidian.md/Reference/TypeScript+API/getIconIds) | |
| [getLanguage](https://docs.obsidian.md/Reference/TypeScript+API/getLanguage) | |
| [getLinkpath](https://docs.obsidian.md/Reference/TypeScript+API/getLinkpath) | |
| [HeadingCache](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) | |
| [HeadingSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/HeadingSubpathResult) | |
| [HexString](https://docs.obsidian.md/Reference/TypeScript+API/HexString) | |
| [hexToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/hexToArrayBuffer) | |
| [Hotkey](https://docs.obsidian.md/Reference/TypeScript+API/Hotkey) | |
| [HoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/HoverLinkSource) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [HSL](https://docs.obsidian.md/Reference/TypeScript+API/HSL) | |
| [htmlToMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/htmlToMarkdown) | |
| [IconName](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Instruction](https://docs.obsidian.md/Reference/TypeScript+API/Instruction) | |
| [ISuggestOwner](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [iterateRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateRefs) | |
| [Keymap](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | |
| [KeymapContext](https://docs.obsidian.md/Reference/TypeScript+API/KeymapContext) | |
| [KeymapEventHandler](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventHandler) | |
| [KeymapEventListener](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventListener) | |
| [KeymapInfo](https://docs.obsidian.md/Reference/TypeScript+API/KeymapInfo) | |
| [LinkCache](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) | |
| [ListedFiles](https://docs.obsidian.md/Reference/TypeScript+API/ListedFiles) | |
| [ListItemCache](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) | |
| [livePreviewState](https://docs.obsidian.md/Reference/TypeScript+API/livePreviewState) | |
| [LivePreviewStateType](https://docs.obsidian.md/Reference/TypeScript+API/LivePreviewStateType) | |
| [loadMathJax](https://docs.obsidian.md/Reference/TypeScript+API/loadMathJax) | |
| [loadMermaid](https://docs.obsidian.md/Reference/TypeScript+API/loadMermaid) | |
| [loadPdfJs](https://docs.obsidian.md/Reference/TypeScript+API/loadPdfJs) | |
| [loadPrism](https://docs.obsidian.md/Reference/TypeScript+API/loadPrism) | |
| [Loc](https://docs.obsidian.md/Reference/TypeScript+API/Loc) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessor) | |
| [MarkdownPostProcessorContext](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext) | |
| [MarkdownPreviewEvents](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents) | |
| [MarkdownPreviewRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewRenderer) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownSectionInformation](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSectionInformation) | |
| [MarkdownSubView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSubView) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [MarkdownViewModeType](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownViewModeType) | |
| [Menu](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| [MenuItem](https://docs.obsidian.md/Reference/TypeScript+API/MenuItem) | |
| [MenuPositionDef](https://docs.obsidian.md/Reference/TypeScript+API/MenuPositionDef) | |
| [MenuSeparator](https://docs.obsidian.md/Reference/TypeScript+API/MenuSeparator) | |
| [MetadataCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | |
| [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| [Modifier](https://docs.obsidian.md/Reference/TypeScript+API/Modifier) | |
| [moment](https://docs.obsidian.md/Reference/TypeScript+API/moment) | |
| [MomentFormatComponent](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent) | |
| [normalizePath](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath) | |
| [Notice](https://docs.obsidian.md/Reference/TypeScript+API/Notice) | |
| [ObsidianProtocolData](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolData) | |
| [ObsidianProtocolHandler](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolHandler) | |
| [OpenViewState](https://docs.obsidian.md/Reference/TypeScript+API/OpenViewState) | |
| [PaneType](https://docs.obsidian.md/Reference/TypeScript+API/PaneType) | |
| [parseFrontMatterAliases](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterAliases) | |
| [parseFrontMatterEntry](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterEntry) | |
| [parseFrontMatterStringArray](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterStringArray) | |
| [parseFrontMatterTags](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterTags) | |
| [parseLinktext](https://docs.obsidian.md/Reference/TypeScript+API/parseLinktext) | |
| [parseYaml](https://docs.obsidian.md/Reference/TypeScript+API/parseYaml) | |
| [Platform](https://docs.obsidian.md/Reference/TypeScript+API/Platform) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [PluginManifest](https://docs.obsidian.md/Reference/TypeScript+API/PluginManifest) | |
| [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab) | |
| [Point](https://docs.obsidian.md/Reference/TypeScript+API/Point) | |
| [PopoverState](https://docs.obsidian.md/Reference/TypeScript+API/PopoverState) | |
| [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) | |
| [Pos](https://docs.obsidian.md/Reference/TypeScript+API/Pos) | |
| [prepareFuzzySearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareFuzzySearch) | |
| [prepareSimpleSearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareSimpleSearch) | |
| [ProgressBarComponent](https://docs.obsidian.md/Reference/TypeScript+API/ProgressBarComponent) | |
| [Reference](https://docs.obsidian.md/Reference/TypeScript+API/Reference) | |
| [ReferenceCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceCache) | |
| [ReferenceLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceLinkCache) | |
| [removeIcon](https://docs.obsidian.md/Reference/TypeScript+API/removeIcon) | |
| [renderMatches](https://docs.obsidian.md/Reference/TypeScript+API/renderMatches) | |
| [renderMath](https://docs.obsidian.md/Reference/TypeScript+API/renderMath) | |
| [renderResults](https://docs.obsidian.md/Reference/TypeScript+API/renderResults) | |
| [request](https://docs.obsidian.md/Reference/TypeScript+API/request) | |
| [requestUrl](https://docs.obsidian.md/Reference/TypeScript+API/requestUrl) | |
| [RequestUrlParam](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlParam) | |
| [RequestUrlResponse](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponse) | |
| [RequestUrlResponsePromise](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponsePromise) | |
| [requireApiVersion](https://docs.obsidian.md/Reference/TypeScript+API/requireApiVersion) | |
| [resolveSubpath](https://docs.obsidian.md/Reference/TypeScript+API/resolveSubpath) | |
| [RGB](https://docs.obsidian.md/Reference/TypeScript+API/RGB) | |
| [sanitizeHTMLToDom](https://docs.obsidian.md/Reference/TypeScript+API/sanitizeHTMLToDom) | |
| [Scope](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | |
| [SearchComponent](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent) | |
| [SearchMatches](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatches) | |
| [SearchMatchPart](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatchPart) | |
| [SearchResult](https://docs.obsidian.md/Reference/TypeScript+API/SearchResult) | |
| [SearchResultContainer](https://docs.obsidian.md/Reference/TypeScript+API/SearchResultContainer) | |
| [SectionCache](https://docs.obsidian.md/Reference/TypeScript+API/SectionCache) | |
| [setIcon](https://docs.obsidian.md/Reference/TypeScript+API/setIcon) | |
| [Setting](https://docs.obsidian.md/Reference/TypeScript+API/Setting) | |
| [SettingTab](https://docs.obsidian.md/Reference/TypeScript+API/SettingTab) | |
| [setTooltip](https://docs.obsidian.md/Reference/TypeScript+API/setTooltip) | |
| [Side](https://docs.obsidian.md/Reference/TypeScript+API/Side) | |
| [SliderComponent](https://docs.obsidian.md/Reference/TypeScript+API/SliderComponent) | |
| [sortSearchResults](https://docs.obsidian.md/Reference/TypeScript+API/sortSearchResults) | |
| [SplitDirection](https://docs.obsidian.md/Reference/TypeScript+API/SplitDirection) | |
| [Stat](https://docs.obsidian.md/Reference/TypeScript+API/Stat) | |
| [stringifyYaml](https://docs.obsidian.md/Reference/TypeScript+API/stringifyYaml) | |
| [stripHeading](https://docs.obsidian.md/Reference/TypeScript+API/stripHeading) | |
| [stripHeadingForLink](https://docs.obsidian.md/Reference/TypeScript+API/stripHeadingForLink) | |
| [SubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/SubpathResult) | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) | |
| [TagCache](https://docs.obsidian.md/Reference/TypeScript+API/TagCache) | |
| [Tasks](https://docs.obsidian.md/Reference/TypeScript+API/Tasks) | |
| [TextAreaComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextAreaComponent) | |
| [TextComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [TFile](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | |
| [TFolder](https://docs.obsidian.md/Reference/TypeScript+API/TFolder) | |
| [ToggleComponent](https://docs.obsidian.md/Reference/TypeScript+API/ToggleComponent) | |
| [TooltipOptions](https://docs.obsidian.md/Reference/TypeScript+API/TooltipOptions) | |
| [TooltipPlacement](https://docs.obsidian.md/Reference/TypeScript+API/TooltipPlacement) | |
| [UserEvent](https://docs.obsidian.md/Reference/TypeScript+API/UserEvent) | |
| [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent) | |
| [Vault](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [ViewState](https://docs.obsidian.md/Reference/TypeScript+API/ViewState) | |
| [ViewStateResult](https://docs.obsidian.md/Reference/TypeScript+API/ViewStateResult) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| [WorkspaceContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| [WorkspaceFloating](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceFloating) | |
| [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| [WorkspaceMobileDrawer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | |
| [WorkspaceParent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | |
| [WorkspaceRibbon](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | |
| [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | |
| [WorkspaceSidedock](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) | |
| [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) | |
| [WorkspaceTabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) | |
| [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow) | |
| [WorkspaceWindowInitData](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindowInitData) | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # Vault | |
| ```yaml is-loaded | |
| aliases: "Vault" | |
| cssclasses: hide-title | |
| ``` | |
| [`Vault`](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | |
| ## Vault class | |
| Work with files and folders stored inside a vault. | |
| **Signature:** | |
| ```typescript is-loaded | |
| export class Vault extends Events | |
| ``` | |
| **Extends:** [`Events`](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| ## Properties | |
| | Property | Modifiers | Type | Description | | |
| | --- | --- | --- | --- | | |
| | [`adapter`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/adapter) | | [`DataAdapter`](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | | | |
| | [`configDir`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/configDir) | | `string` | Gets the path to the config folder. This value is typically `.obsidian` but it could be different. | | |
| ## Methods | |
| | Method | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`append(file, data, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/append) | | Add text to the end of a plaintext file inside the vault. | | |
| | [`cachedRead(file)`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/cachedRead) | | Read the content of a plaintext file stored inside the vault Use this if you only want to display the content to the user. If you want to modify the file content afterward use [Vault.read()](https://docs.obsidian.md/Reference/TypeScript+API/Vault/read) | | |
| | [`copy(file, newPath)`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/copy) | | Create a copy of a file or folder. | | |
| | [`create(path, data, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/create) | | Create a new plaintext file inside the vault. | | |
| | [`createBinary(path, data, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/createBinary) | | Create a new binary file inside the vault. | | |
| | [`createFolder(path)`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/createFolder) | | Create a new folder inside the vault. | | |
| | [`delete(file, force)`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/delete) | | Deletes the file completely. | | |
| | [`getAbstractFileByPath(path)`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/getAbstractFileByPath) | | Get a file or folder inside the vault at the given path. To check if the return type is a file, use `instanceof TFile`. To check if it is a folder, use `instanceof TFolder`. | | |
| | [`getAllFolders(includeRoot)`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/getAllFolders) | | Get all folders in the vault. | | |
| | [`getAllLoadedFiles()`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/getAllLoadedFiles) | | Get all files and folders in the vault. | | |
| | [`getFileByPath(path)`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/getFileByPath) | | Get a file inside the vault at the given path. Returns `null` if the file does not exist. | | |
| | [`getFiles()`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/getFiles) | | Get all files in the vault. | | |
| | [`getFolderByPath(path)`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/getFolderByPath) | | Get a folder inside the vault at the given path. Returns `null` if the folder does not exist. | | |
| | [`getMarkdownFiles()`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/getMarkdownFiles) | | Get all Markdown files in the vault. | | |
| | [`getName()`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/getName) | | Gets the name of the vault. | | |
| | [`getResourcePath(file)`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/getResourcePath) | | Returns an URI for the browser engine to use, for example to embed an image. | | |
| | [`getRoot()`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/getRoot) | | Get the root folder of the current vault. | | |
| | [`modify(file, data, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/modify) | | Modify the contents of a plaintext file. | | |
| | [`modifyBinary(file, data, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/modifyBinary) | | Modify the contents of a binary file. | | |
| | [`off(name, callback)`](https://docs.obsidian.md/Reference/TypeScript+API/Events/off) | | (Inherited from [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events)) | | |
| | [`offref(ref)`](https://docs.obsidian.md/Reference/TypeScript+API/Events/offref) | | (Inherited from [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events)) | | |
| | [`on(name: 'create', callback, ctx)`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/on('create')) | | Called when a file is created. This is also called when the vault is first loaded for each existing file If you do not wish to receive create events on vault load, register your event handler inside [Workspace.onLayoutReady()](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/onLayoutReady). | | |
| | [`on(name: 'modify', callback, ctx)`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/on('modify')) | | Called when a file is modified. | | |
| | [`on(name: 'delete', callback, ctx)`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/on('delete')) | | Called when a file is deleted. | | |
| | [`on(name: 'rename', callback, ctx)`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/on('rename')) | | Called when a file is renamed. | | |
| | [`process(file, fn, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/process) | | Atomically read, modify, and save the contents of a note. | | |
| | [`read(file)`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/read) | | Read a plaintext file that is stored inside the vault, directly from disk. Use this if you intend to modify the file content afterwards. Use [Vault.cachedRead()](https://docs.obsidian.md/Reference/TypeScript+API/Vault/cachedRead) otherwise for better performance. | | |
| | [`readBinary(file)`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/readBinary) | | Read the content of a binary file stored inside the vault. | | |
| | [`recurseChildren(root, cb)`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/recurseChildren) | `static` | | | |
| | [`rename(file, newPath)`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/rename) | | Rename or move a file. To ensure links are automatically renamed, use [FileManager.renameFile()](https://docs.obsidian.md/Reference/TypeScript+API/FileManager/renameFile) instead. | | |
| | [`trash(file, system)`](https://docs.obsidian.md/Reference/TypeScript+API/Vault/trash) | | Tries to move to system trash. If that isn't successful/allowed, use local trash | | |
| | [`trigger(name, data)`](https://docs.obsidian.md/Reference/TypeScript+API/Events/trigger) | | (Inherited from [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events)) | | |
| | [`tryTrigger(evt, args)`](https://docs.obsidian.md/Reference/TypeScript+API/Events/tryTrigger) | | (Inherited from [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events)) | | |
| Links to this page | |
| [adapter](https://docs.obsidian.md/Reference/TypeScript+API/Vault/adapter) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [append](https://docs.obsidian.md/Reference/TypeScript+API/Vault/append) | |
| [cachedRead](https://docs.obsidian.md/Reference/TypeScript+API/Vault/cachedRead) | |
| [configDir](https://docs.obsidian.md/Reference/TypeScript+API/Vault/configDir) | |
| [copy](https://docs.obsidian.md/Reference/TypeScript+API/Vault/copy) | |
| [create](https://docs.obsidian.md/Reference/TypeScript+API/Vault/create) | |
| [createBinary](https://docs.obsidian.md/Reference/TypeScript+API/Vault/createBinary) | |
| [createFolder](https://docs.obsidian.md/Reference/TypeScript+API/Vault/createFolder) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [delete](https://docs.obsidian.md/Reference/TypeScript+API/Vault/delete) | |
| [getAbstractFileByPath](https://docs.obsidian.md/Reference/TypeScript+API/Vault/getAbstractFileByPath) | |
| [getAllFolders](https://docs.obsidian.md/Reference/TypeScript+API/Vault/getAllFolders) | |
| [getAllLoadedFiles](https://docs.obsidian.md/Reference/TypeScript+API/Vault/getAllLoadedFiles) | |
| [getFileByPath](https://docs.obsidian.md/Reference/TypeScript+API/Vault/getFileByPath) | |
| [getFiles](https://docs.obsidian.md/Reference/TypeScript+API/Vault/getFiles) | |
| [getFolderByPath](https://docs.obsidian.md/Reference/TypeScript+API/Vault/getFolderByPath) | |
| [getMarkdownFiles](https://docs.obsidian.md/Reference/TypeScript+API/Vault/getMarkdownFiles) | |
| [getName](https://docs.obsidian.md/Reference/TypeScript+API/Vault/getName) | |
| [getResourcePath](https://docs.obsidian.md/Reference/TypeScript+API/Vault/getResourcePath) | |
| [getRoot](https://docs.obsidian.md/Reference/TypeScript+API/Vault/getRoot) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [modify](https://docs.obsidian.md/Reference/TypeScript+API/Vault/modify) | |
| [modifyBinary](https://docs.obsidian.md/Reference/TypeScript+API/Vault/modifyBinary) | |
| [on('create')](https://docs.obsidian.md/Reference/TypeScript+API/Vault/on('create')) | |
| [on('delete')](https://docs.obsidian.md/Reference/TypeScript+API/Vault/on('delete')) | |
| [on('modify')](https://docs.obsidian.md/Reference/TypeScript+API/Vault/on('modify')) | |
| [on('rename')](https://docs.obsidian.md/Reference/TypeScript+API/Vault/on('rename')) | |
| [process](https://docs.obsidian.md/Reference/TypeScript+API/Vault/process) | |
| [read](https://docs.obsidian.md/Reference/TypeScript+API/Vault/read) | |
| [readBinary](https://docs.obsidian.md/Reference/TypeScript+API/Vault/readBinary) | |
| [recurseChildren](https://docs.obsidian.md/Reference/TypeScript+API/Vault/recurseChildren) | |
| [rename](https://docs.obsidian.md/Reference/TypeScript+API/Vault/rename) | |
| [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) | |
| [TFile](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | |
| [TFolder](https://docs.obsidian.md/Reference/TypeScript+API/TFolder) | |
| [trash](https://docs.obsidian.md/Reference/TypeScript+API/Vault/trash) | |
| [Vault](https://docs.obsidian.md/Plugins/Vault) | |
| Vault | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| Vault class | |
| Properties | |
| Methods | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Obsidian Workspace | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Getting started | |
| Guides | |
| User interface | |
| [About user interface](https://docs.obsidian.md/Plugins/User+interface/About+user+interface) | |
| [Commands](https://docs.obsidian.md/Plugins/User+interface/Commands) | |
| [Context menus](https://docs.obsidian.md/Plugins/User+interface/Context+menus) | |
| [HTML elements](https://docs.obsidian.md/Plugins/User+interface/HTML+elements) | |
| [Icons](https://docs.obsidian.md/Plugins/User+interface/Icons) | |
| [Modals](https://docs.obsidian.md/Plugins/User+interface/Modals) | |
| [Ribbon actions](https://docs.obsidian.md/Plugins/User+interface/Ribbon+actions) | |
| [Right-to-left](https://docs.obsidian.md/Plugins/User+interface/Right-to-left) | |
| [Settings](https://docs.obsidian.md/Plugins/User+interface/Settings) | |
| [Status bar](https://docs.obsidian.md/Plugins/User+interface/Status+bar) | |
| [Views](https://docs.obsidian.md/Plugins/User+interface/Views) | |
| [Workspace](https://docs.obsidian.md/Plugins/User+interface/Workspace) | |
| Editor | |
| Releasing | |
| [Events](https://docs.obsidian.md/Plugins/Events) | |
| [Vault](https://docs.obsidian.md/Plugins/Vault) | |
| Themes | |
| Reference | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # Workspace | |
| Obsidian lets you configure what content is visible to you at any given time. Hide the file explorer when you don't need it, display multiple documents side by side, or show an outline of your document while you're working on it. The configuration of visible content within your application window is known as the _workspace_. | |
| The workspace is implemented as a [tree data structure](https://en.wikipedia.org/wiki/Tree_(data_structure)), where each node in the tree is referred to as a [workspace item](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem). There are two types of workspace items: [parents](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) and [leaves](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf). The main difference is that parent items can contain _child_ items, including other parent items, whereas leaf items can't contain any workspace items at all. | |
| There are two types of parent items, [splits](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) and [tabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs), which determine how the children are presented to the user: | |
| Split | |
| Leaf | |
| Leaf | |
| Leaf | |
| Tabs | |
| Leaf | |
| Leaf | |
| Leaf | |
| - A split item lays out its child items one after another along a vertical or horizontal direction. | |
| - A tabs item only displays one child item at a time and hides the others. | |
| The workspace has three special split items under it: _left_, _right_, and _root_. The following diagram shows a example of what a typical workspace could look like: | |
| Workspace | |
| Left split | |
| Root split | |
| Right split | |
| Tabs | |
| Leaf | |
| Leaf | |
| Split | |
| Leaf | |
| Leaf | |
| Leaf | |
| Tabs | |
| Leaf | |
| Leaf | |
| Leaf | |
| A leaf is a window that can display content in different ways. The type of leaf determines how content is displayed, and correspond to a specific _view_. For example, a leaf of type `graph` displays the [graph view](https://help.obsidian.md/Plugins/Graph+view). | |
| ## Splits | |
| By default, the direction of the root split is set to vertical. When you create a new leaf to it, Obsidian creates a new column in the user interface. When you split a leaf, the resulting leaves are added to a new split item. While there's no defined limit to the number of levels you can create under the root split, in practice their usefulness diminish for each level. | |
| Root split\\n(before) | |
| Leaf | |
| Leaf | |
| Root split\\n(after) | |
| Split | |
| Leaf | |
| Leaf | |
| Leaf | |
| The left and right splits work a little differently. When you split a leaf in the side docks, Obsidian generates a new tabs item and adds the new leaf under it. Effectively, this means they can only have three levels of workspace items at any time, and any direct children must be tabs items. | |
| Right split\\n(before) | |
| Tabs | |
| Leaf | |
| Leaf | |
| Right split\\n(after) | |
| Tabs | |
| Tabs | |
| Leaf | |
| Leaf | |
| Leaf | |
| ## Inspect the workspace | |
| You can access the workspace through the [App](https://docs.obsidian.md/Reference/TypeScript+API/App) object. The following example prints the type of every leaf in the workspace: | |
| ```ts is-loaded | |
| import { Plugin } from 'obsidian'; | |
| export default class ExamplePlugin extends Plugin { | |
| async onload() { | |
| this.addRibbonIcon('dice', 'Print leaf types', () => { | |
| this.app.workspace.iterateAllLeaves((leaf) => { | |
| console.log(leaf.getViewState().type); | |
| }); | |
| }); | |
| } | |
| } | |
| ``` | |
| ## Leaf lifecycle | |
| Plugins can add leaves of any type to the workspace, as well as define new leaf types through [custom views](https://docs.obsidian.md/Plugins/User+interface/Views). Here are a few ways to add a leaf to the workspace. For more ways, refer to [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace). | |
| - If you want to add a new leaf in the root split, use [getLeaf(true)](https://docs.obsidian.md/getLeaf). | |
| - If you want to add a new leaf in any of the side bars, use [getLeftLeaf()](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getLeftLeaf) and [getRightLeaf()](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/getRightLeaf). Both let you decide whether to add the leaf to a new split. | |
| You can also explicitly add the leaf in the split of your choice, using [createLeafInParent()](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/createLeafInParent). | |
| Unless explicitly removed, any leaves that a plugin add to the workspace remain even after the plugin is disabled. Plugins are responsible for removing any leaves they add to the workspace. | |
| To remove a leaf from the workspace, call [detach()](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/detach) on the leaf you want to remove. You can also remove all leaves of a certain type, by using [detachLeavesOfType()](https://docs.obsidian.md/Reference/TypeScript+API/Workspace/detachLeavesOfType). | |
| ## Leaf groups | |
| You can create [linked views](https://help.obsidian.md/User+interface/Tabs#Linked+views) by assigning multiple leaves to the same group, using [setGroup()](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf/setGroup). | |
| ```ts is-loaded | |
| leaves.forEach((leaf) => leaf.setGroup('group1'); | |
| ``` | |
| Workspace | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| Splits | |
| Inspect the workspace | |
| Leaf lifecycle | |
| Leaf groups | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## EditorSuggest Class Overview | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| AbstractInputSuggest | |
| AbstractTextComponent | |
| App | |
| BaseComponent | |
| BlockCache | |
| BlockSubpathResult | |
| ButtonComponent | |
| CachedMetadata | |
| CacheItem | |
| CapacitorAdapter | |
| CloseableComponent | |
| ColorComponent | |
| Command | |
| Component | |
| DataAdapter | |
| DataWriteOptions | |
| Debouncer | |
| DropdownComponent | |
| Editor | |
| EditorChange | |
| EditorPosition | |
| EditorRange | |
| EditorRangeOrCaret | |
| EditorScrollInfo | |
| EditorSelection | |
| EditorSelectionOrCaret | |
| EditorSuggest | |
| EditorSuggestContext | |
| EditorSuggestTriggerInfo | |
| EditorTransaction | |
| Events | |
| ExtraButtonComponent | |
| FileManager | |
| FileStats | |
| FileSystemAdapter | |
| FileView | |
| FootnoteCache | |
| FootnoteRefCache | |
| FootnoteSubpathResult | |
| FrontMatterInfo | |
| FrontmatterLinkCache | |
| FuzzyMatch | |
| FuzzySuggestModal | |
| HeadingCache | |
| HeadingSubpathResult | |
| Hotkey | |
| HoverLinkSource | |
| HoverParent | |
| HoverPopover | |
| HSL | |
| Instruction | |
| ISuggestOwner | |
| ItemView | |
| Keymap | |
| KeymapContext | |
| KeymapEventHandler | |
| KeymapInfo | |
| ListedFiles | |
| ListItemCache | |
| LivePreviewStateType | |
| Loc | |
| MarkdownEditView | |
| MarkdownFileInfo | |
| MarkdownPostProcessor | |
| MarkdownPostProcessorContext | |
| MarkdownPreviewRenderer | |
| MarkdownPreviewView | |
| MarkdownRenderChild | |
| MarkdownRenderer | |
| MarkdownSectionInformation | |
| MarkdownSubView | |
| MarkdownView | |
| Menu | |
| MenuItem | |
| MenuPositionDef | |
| MetadataCache | |
| Modal | |
| MomentFormatComponent | |
| Notice | |
| ObsidianProtocolData | |
| OpenViewState | |
| Plugin | |
| PluginManifest | |
| PluginSettingTab | |
| Point | |
| PopoverSuggest | |
| Pos | |
| ProgressBarComponent | |
| Reference | |
| ReferenceLinkCache | |
| RequestUrlParam | |
| RequestUrlResponse | |
| RequestUrlResponsePromise | |
| RGB | |
| Scope | |
| SearchComponent | |
| SearchResult | |
| SearchResultContainer | |
| SectionCache | |
| Setting | |
| SettingTab | |
| SliderComponent | |
| Stat | |
| SubpathResult | |
| SuggestModal | |
| TAbstractFile | |
| TagCache | |
| Tasks | |
| TextAreaComponent | |
| TextComponent | |
| TextFileView | |
| TFile | |
| TFolder | |
| ToggleComponent | |
| TooltipOptions | |
| ValueComponent | |
| Vault | |
| View | |
| ViewState | |
| ViewStateResult | |
| Workspace | |
| WorkspaceContainer | |
| WorkspaceFloating | |
| WorkspaceItem | |
| WorkspaceLeaf | |
| WorkspaceMobileDrawer | |
| WorkspaceRoot | |
| WorkspaceSidedock | |
| WorkspaceSplit | |
| WorkspaceTabs | |
| WorkspaceWindow | |
| WorkspaceWindowInitData | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) | |
| [addIcon](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) | |
| [apiVersion](https://docs.obsidian.md/Reference/TypeScript+API/apiVersion) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [arrayBufferToBase64](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToBase64) | |
| [arrayBufferToHex](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToHex) | |
| [base64ToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/base64ToArrayBuffer) | |
| [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent) | |
| [BlockCache](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) | |
| [BlockSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/BlockSubpathResult) | |
| [ButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ButtonComponent) | |
| [CachedMetadata](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| [CacheItem](https://docs.obsidian.md/Reference/TypeScript+API/CacheItem) | |
| [CapacitorAdapter](https://docs.obsidian.md/Reference/TypeScript+API/CapacitorAdapter) | |
| [CloseableComponent](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| [ColorComponent](https://docs.obsidian.md/Reference/TypeScript+API/ColorComponent) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| [Constructor](https://docs.obsidian.md/Reference/TypeScript+API/Constructor) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [DataWriteOptions](https://docs.obsidian.md/Reference/TypeScript+API/DataWriteOptions) | |
| [debounce](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| [Debouncer](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) | |
| [displayTooltip](https://docs.obsidian.md/Reference/TypeScript+API/displayTooltip) | |
| [DropdownComponent](https://docs.obsidian.md/Reference/TypeScript+API/DropdownComponent) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| [EditorChange](https://docs.obsidian.md/Reference/TypeScript+API/EditorChange) | |
| [EditorCommandName](https://docs.obsidian.md/Reference/TypeScript+API/EditorCommandName) | |
| [editorEditorField](https://docs.obsidian.md/Reference/TypeScript+API/editorEditorField) | |
| [editorInfoField](https://docs.obsidian.md/Reference/TypeScript+API/editorInfoField) | |
| [editorLivePreviewField](https://docs.obsidian.md/Reference/TypeScript+API/editorLivePreviewField) | |
| [EditorPosition](https://docs.obsidian.md/Reference/TypeScript+API/EditorPosition) | |
| [EditorRange](https://docs.obsidian.md/Reference/TypeScript+API/EditorRange) | |
| [EditorRangeOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorRangeOrCaret) | |
| [EditorScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorScrollInfo) | |
| [EditorSelection](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelection) | |
| [EditorSelectionOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelectionOrCaret) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [EditorSuggestTriggerInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestTriggerInfo) | |
| [EditorTransaction](https://docs.obsidian.md/Reference/TypeScript+API/EditorTransaction) | |
| [editorViewField](https://docs.obsidian.md/Reference/TypeScript+API/editorViewField) | |
| [EmbedCache](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) | |
| [EventRef](https://docs.obsidian.md/Reference/TypeScript+API/EventRef) | |
| [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| [ExtraButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ExtraButtonComponent) | |
| [FileManager](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | |
| [FileStats](https://docs.obsidian.md/Reference/TypeScript+API/FileStats) | |
| [FileSystemAdapter](https://docs.obsidian.md/Reference/TypeScript+API/FileSystemAdapter) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [finishRenderMath](https://docs.obsidian.md/Reference/TypeScript+API/finishRenderMath) | |
| [FootnoteCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) | |
| [FootnoteRefCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) | |
| [FootnoteSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteSubpathResult) | |
| [FrontMatterCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | |
| [FrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterInfo) | |
| [FrontmatterLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) | |
| [FuzzyMatch](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getBlobArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/getBlobArrayBuffer) | |
| [getFrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/getFrontMatterInfo) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/getIcon) | |
| [getIconIds](https://docs.obsidian.md/Reference/TypeScript+API/getIconIds) | |
| [getLanguage](https://docs.obsidian.md/Reference/TypeScript+API/getLanguage) | |
| [getLinkpath](https://docs.obsidian.md/Reference/TypeScript+API/getLinkpath) | |
| [HeadingCache](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) | |
| [HeadingSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/HeadingSubpathResult) | |
| [HexString](https://docs.obsidian.md/Reference/TypeScript+API/HexString) | |
| [hexToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/hexToArrayBuffer) | |
| [Hotkey](https://docs.obsidian.md/Reference/TypeScript+API/Hotkey) | |
| [HoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/HoverLinkSource) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [HSL](https://docs.obsidian.md/Reference/TypeScript+API/HSL) | |
| [htmlToMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/htmlToMarkdown) | |
| [IconName](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Instruction](https://docs.obsidian.md/Reference/TypeScript+API/Instruction) | |
| [ISuggestOwner](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [iterateRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateRefs) | |
| [Keymap](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | |
| [KeymapContext](https://docs.obsidian.md/Reference/TypeScript+API/KeymapContext) | |
| [KeymapEventHandler](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventHandler) | |
| [KeymapEventListener](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventListener) | |
| [KeymapInfo](https://docs.obsidian.md/Reference/TypeScript+API/KeymapInfo) | |
| [LinkCache](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) | |
| [ListedFiles](https://docs.obsidian.md/Reference/TypeScript+API/ListedFiles) | |
| [ListItemCache](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) | |
| [livePreviewState](https://docs.obsidian.md/Reference/TypeScript+API/livePreviewState) | |
| [LivePreviewStateType](https://docs.obsidian.md/Reference/TypeScript+API/LivePreviewStateType) | |
| [loadMathJax](https://docs.obsidian.md/Reference/TypeScript+API/loadMathJax) | |
| [loadMermaid](https://docs.obsidian.md/Reference/TypeScript+API/loadMermaid) | |
| [loadPdfJs](https://docs.obsidian.md/Reference/TypeScript+API/loadPdfJs) | |
| [loadPrism](https://docs.obsidian.md/Reference/TypeScript+API/loadPrism) | |
| [Loc](https://docs.obsidian.md/Reference/TypeScript+API/Loc) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessor) | |
| [MarkdownPostProcessorContext](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext) | |
| [MarkdownPreviewEvents](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents) | |
| [MarkdownPreviewRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewRenderer) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownSectionInformation](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSectionInformation) | |
| [MarkdownSubView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSubView) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [MarkdownViewModeType](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownViewModeType) | |
| [Menu](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| [MenuItem](https://docs.obsidian.md/Reference/TypeScript+API/MenuItem) | |
| [MenuPositionDef](https://docs.obsidian.md/Reference/TypeScript+API/MenuPositionDef) | |
| [MenuSeparator](https://docs.obsidian.md/Reference/TypeScript+API/MenuSeparator) | |
| [MetadataCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | |
| [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| [Modifier](https://docs.obsidian.md/Reference/TypeScript+API/Modifier) | |
| [moment](https://docs.obsidian.md/Reference/TypeScript+API/moment) | |
| [MomentFormatComponent](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent) | |
| [normalizePath](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath) | |
| [Notice](https://docs.obsidian.md/Reference/TypeScript+API/Notice) | |
| [ObsidianProtocolData](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolData) | |
| [ObsidianProtocolHandler](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolHandler) | |
| [OpenViewState](https://docs.obsidian.md/Reference/TypeScript+API/OpenViewState) | |
| [PaneType](https://docs.obsidian.md/Reference/TypeScript+API/PaneType) | |
| [parseFrontMatterAliases](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterAliases) | |
| [parseFrontMatterEntry](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterEntry) | |
| [parseFrontMatterStringArray](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterStringArray) | |
| [parseFrontMatterTags](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterTags) | |
| [parseLinktext](https://docs.obsidian.md/Reference/TypeScript+API/parseLinktext) | |
| [parseYaml](https://docs.obsidian.md/Reference/TypeScript+API/parseYaml) | |
| [Platform](https://docs.obsidian.md/Reference/TypeScript+API/Platform) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [PluginManifest](https://docs.obsidian.md/Reference/TypeScript+API/PluginManifest) | |
| [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab) | |
| [Point](https://docs.obsidian.md/Reference/TypeScript+API/Point) | |
| [PopoverState](https://docs.obsidian.md/Reference/TypeScript+API/PopoverState) | |
| [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) | |
| [Pos](https://docs.obsidian.md/Reference/TypeScript+API/Pos) | |
| [prepareFuzzySearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareFuzzySearch) | |
| [prepareSimpleSearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareSimpleSearch) | |
| [ProgressBarComponent](https://docs.obsidian.md/Reference/TypeScript+API/ProgressBarComponent) | |
| [Reference](https://docs.obsidian.md/Reference/TypeScript+API/Reference) | |
| [ReferenceCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceCache) | |
| [ReferenceLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceLinkCache) | |
| [removeIcon](https://docs.obsidian.md/Reference/TypeScript+API/removeIcon) | |
| [renderMatches](https://docs.obsidian.md/Reference/TypeScript+API/renderMatches) | |
| [renderMath](https://docs.obsidian.md/Reference/TypeScript+API/renderMath) | |
| [renderResults](https://docs.obsidian.md/Reference/TypeScript+API/renderResults) | |
| [request](https://docs.obsidian.md/Reference/TypeScript+API/request) | |
| [requestUrl](https://docs.obsidian.md/Reference/TypeScript+API/requestUrl) | |
| [RequestUrlParam](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlParam) | |
| [RequestUrlResponse](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponse) | |
| [RequestUrlResponsePromise](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponsePromise) | |
| [requireApiVersion](https://docs.obsidian.md/Reference/TypeScript+API/requireApiVersion) | |
| [resolveSubpath](https://docs.obsidian.md/Reference/TypeScript+API/resolveSubpath) | |
| [RGB](https://docs.obsidian.md/Reference/TypeScript+API/RGB) | |
| [sanitizeHTMLToDom](https://docs.obsidian.md/Reference/TypeScript+API/sanitizeHTMLToDom) | |
| [Scope](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | |
| [SearchComponent](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent) | |
| [SearchMatches](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatches) | |
| [SearchMatchPart](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatchPart) | |
| [SearchResult](https://docs.obsidian.md/Reference/TypeScript+API/SearchResult) | |
| [SearchResultContainer](https://docs.obsidian.md/Reference/TypeScript+API/SearchResultContainer) | |
| [SectionCache](https://docs.obsidian.md/Reference/TypeScript+API/SectionCache) | |
| [setIcon](https://docs.obsidian.md/Reference/TypeScript+API/setIcon) | |
| [Setting](https://docs.obsidian.md/Reference/TypeScript+API/Setting) | |
| [SettingTab](https://docs.obsidian.md/Reference/TypeScript+API/SettingTab) | |
| [setTooltip](https://docs.obsidian.md/Reference/TypeScript+API/setTooltip) | |
| [Side](https://docs.obsidian.md/Reference/TypeScript+API/Side) | |
| [SliderComponent](https://docs.obsidian.md/Reference/TypeScript+API/SliderComponent) | |
| [sortSearchResults](https://docs.obsidian.md/Reference/TypeScript+API/sortSearchResults) | |
| [SplitDirection](https://docs.obsidian.md/Reference/TypeScript+API/SplitDirection) | |
| [Stat](https://docs.obsidian.md/Reference/TypeScript+API/Stat) | |
| [stringifyYaml](https://docs.obsidian.md/Reference/TypeScript+API/stringifyYaml) | |
| [stripHeading](https://docs.obsidian.md/Reference/TypeScript+API/stripHeading) | |
| [stripHeadingForLink](https://docs.obsidian.md/Reference/TypeScript+API/stripHeadingForLink) | |
| [SubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/SubpathResult) | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) | |
| [TagCache](https://docs.obsidian.md/Reference/TypeScript+API/TagCache) | |
| [Tasks](https://docs.obsidian.md/Reference/TypeScript+API/Tasks) | |
| [TextAreaComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextAreaComponent) | |
| [TextComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [TFile](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | |
| [TFolder](https://docs.obsidian.md/Reference/TypeScript+API/TFolder) | |
| [ToggleComponent](https://docs.obsidian.md/Reference/TypeScript+API/ToggleComponent) | |
| [TooltipOptions](https://docs.obsidian.md/Reference/TypeScript+API/TooltipOptions) | |
| [TooltipPlacement](https://docs.obsidian.md/Reference/TypeScript+API/TooltipPlacement) | |
| [UserEvent](https://docs.obsidian.md/Reference/TypeScript+API/UserEvent) | |
| [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent) | |
| [Vault](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [ViewState](https://docs.obsidian.md/Reference/TypeScript+API/ViewState) | |
| [ViewStateResult](https://docs.obsidian.md/Reference/TypeScript+API/ViewStateResult) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| [WorkspaceContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| [WorkspaceFloating](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceFloating) | |
| [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| [WorkspaceMobileDrawer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | |
| [WorkspaceParent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | |
| [WorkspaceRibbon](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | |
| [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | |
| [WorkspaceSidedock](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) | |
| [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) | |
| [WorkspaceTabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) | |
| [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow) | |
| [WorkspaceWindowInitData](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindowInitData) | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # EditorSuggest | |
| ```yaml is-loaded | |
| aliases: "EditorSuggest" | |
| cssclasses: hide-title | |
| ``` | |
| [`EditorSuggest`](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| ## EditorSuggest class | |
| **Signature:** | |
| ```typescript is-loaded | |
| export abstract class EditorSuggest<T> extends PopoverSuggest<T> | |
| ``` | |
| **Extends:** [`PopoverSuggest`](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) `<T>` | |
| ## Constructors | |
| | Constructor | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`(constructor)(app)`](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest/(constructor)) | | Constructs a new instance of the `EditorSuggest` class | | |
| ## Properties | |
| | Property | Modifiers | Type | Description | | |
| | --- | --- | --- | --- | | |
| | [`app`](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest/app) | | [`App`](https://docs.obsidian.md/Reference/TypeScript+API/App) | (Inherited from [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest)) | | |
| | [`context`](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest/context) | | [`EditorSuggestContext`](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) ` | null` | Current suggestion context, containing the result of `onTrigger`. This will be null any time the EditorSuggest is not supposed to run. | | |
| | [`limit`](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest/limit) | | `number` | Override this to use a different limit for suggestion items | | |
| | [`scope`](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest/scope) | | [`Scope`](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | (Inherited from [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest)) | | |
| ## Methods | |
| | Method | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`close()`](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest/close) | | (Inherited from [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest)) | | |
| | [`getSuggestions(context)`](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest/getSuggestions) | `abstract` | Generate suggestion items based on this context. Can be async, but preferably sync. When generating async suggestions, you should pass the context along. | | |
| | [`onTrigger(cursor, editor, file)`](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest/onTrigger) | `abstract` | Based on the editor line and cursor position, determine if this EditorSuggest should be triggered at this moment. Typically, you would run a regular expression on the current line text before the cursor. Return null to indicate that this editor suggest is not supposed to be triggered.<br>Please be mindful of performance when implementing this function, as it will be triggered very often (on each keypress). Keep it simple, and return null as early as possible if you determine that it is not the right time. | | |
| | [`open()`](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest/open) | | (Inherited from [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest)) | | |
| | [`renderSuggestion(value, el)`](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest/renderSuggestion) | `abstract` | (Inherited from [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest)) | | |
| | [`selectSuggestion(value, evt)`](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest/selectSuggestion) | `abstract` | (Inherited from [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest)) | | |
| | [`setInstructions(instructions)`](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest/setInstructions) | | | | |
| Links to this page | |
| [(constructor)](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest/(constructor)) | |
| [context](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest/context) | |
| [getSuggestions](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest/getSuggestions) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [limit](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest/limit) | |
| [onTrigger](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest/onTrigger) | |
| [registerEditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/registerEditorSuggest) | |
| [setInstructions](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest/setInstructions) | |
| EditorSuggest | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| EditorSuggest class | |
| Constructors | |
| Properties | |
| Methods | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## TypeScript Editor API | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| AbstractInputSuggest | |
| AbstractTextComponent | |
| App | |
| BaseComponent | |
| BlockCache | |
| BlockSubpathResult | |
| ButtonComponent | |
| CachedMetadata | |
| CacheItem | |
| CapacitorAdapter | |
| CloseableComponent | |
| ColorComponent | |
| Command | |
| Component | |
| DataAdapter | |
| DataWriteOptions | |
| Debouncer | |
| DropdownComponent | |
| Editor | |
| EditorChange | |
| EditorPosition | |
| EditorRange | |
| EditorRangeOrCaret | |
| EditorScrollInfo | |
| EditorSelection | |
| EditorSelectionOrCaret | |
| EditorSuggest | |
| EditorSuggestContext | |
| EditorSuggestTriggerInfo | |
| EditorTransaction | |
| Events | |
| ExtraButtonComponent | |
| FileManager | |
| FileStats | |
| FileSystemAdapter | |
| FileView | |
| FootnoteCache | |
| FootnoteRefCache | |
| FootnoteSubpathResult | |
| FrontMatterInfo | |
| FrontmatterLinkCache | |
| FuzzyMatch | |
| FuzzySuggestModal | |
| HeadingCache | |
| HeadingSubpathResult | |
| Hotkey | |
| HoverLinkSource | |
| HoverParent | |
| HoverPopover | |
| HSL | |
| Instruction | |
| ISuggestOwner | |
| ItemView | |
| Keymap | |
| KeymapContext | |
| KeymapEventHandler | |
| KeymapInfo | |
| ListedFiles | |
| ListItemCache | |
| LivePreviewStateType | |
| Loc | |
| MarkdownEditView | |
| MarkdownFileInfo | |
| MarkdownPostProcessor | |
| MarkdownPostProcessorContext | |
| MarkdownPreviewRenderer | |
| MarkdownPreviewView | |
| MarkdownRenderChild | |
| MarkdownRenderer | |
| MarkdownSectionInformation | |
| MarkdownSubView | |
| MarkdownView | |
| Menu | |
| MenuItem | |
| MenuPositionDef | |
| MetadataCache | |
| Modal | |
| MomentFormatComponent | |
| Notice | |
| ObsidianProtocolData | |
| OpenViewState | |
| Plugin | |
| PluginManifest | |
| PluginSettingTab | |
| Point | |
| PopoverSuggest | |
| Pos | |
| ProgressBarComponent | |
| Reference | |
| ReferenceLinkCache | |
| RequestUrlParam | |
| RequestUrlResponse | |
| RequestUrlResponsePromise | |
| RGB | |
| Scope | |
| SearchComponent | |
| SearchResult | |
| SearchResultContainer | |
| SectionCache | |
| Setting | |
| SettingTab | |
| SliderComponent | |
| Stat | |
| SubpathResult | |
| SuggestModal | |
| TAbstractFile | |
| TagCache | |
| Tasks | |
| TextAreaComponent | |
| TextComponent | |
| TextFileView | |
| TFile | |
| TFolder | |
| ToggleComponent | |
| TooltipOptions | |
| ValueComponent | |
| Vault | |
| View | |
| ViewState | |
| ViewStateResult | |
| Workspace | |
| WorkspaceContainer | |
| WorkspaceFloating | |
| WorkspaceItem | |
| WorkspaceLeaf | |
| WorkspaceMobileDrawer | |
| WorkspaceRoot | |
| WorkspaceSidedock | |
| WorkspaceSplit | |
| WorkspaceTabs | |
| WorkspaceWindow | |
| WorkspaceWindowInitData | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) | |
| [addIcon](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) | |
| [apiVersion](https://docs.obsidian.md/Reference/TypeScript+API/apiVersion) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [arrayBufferToBase64](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToBase64) | |
| [arrayBufferToHex](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToHex) | |
| [base64ToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/base64ToArrayBuffer) | |
| [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent) | |
| [BlockCache](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) | |
| [BlockSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/BlockSubpathResult) | |
| [ButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ButtonComponent) | |
| [CachedMetadata](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| [CacheItem](https://docs.obsidian.md/Reference/TypeScript+API/CacheItem) | |
| [CapacitorAdapter](https://docs.obsidian.md/Reference/TypeScript+API/CapacitorAdapter) | |
| [CloseableComponent](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| [ColorComponent](https://docs.obsidian.md/Reference/TypeScript+API/ColorComponent) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| [Constructor](https://docs.obsidian.md/Reference/TypeScript+API/Constructor) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [DataWriteOptions](https://docs.obsidian.md/Reference/TypeScript+API/DataWriteOptions) | |
| [debounce](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| [Debouncer](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) | |
| [displayTooltip](https://docs.obsidian.md/Reference/TypeScript+API/displayTooltip) | |
| [DropdownComponent](https://docs.obsidian.md/Reference/TypeScript+API/DropdownComponent) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| [EditorChange](https://docs.obsidian.md/Reference/TypeScript+API/EditorChange) | |
| [EditorCommandName](https://docs.obsidian.md/Reference/TypeScript+API/EditorCommandName) | |
| [editorEditorField](https://docs.obsidian.md/Reference/TypeScript+API/editorEditorField) | |
| [editorInfoField](https://docs.obsidian.md/Reference/TypeScript+API/editorInfoField) | |
| [editorLivePreviewField](https://docs.obsidian.md/Reference/TypeScript+API/editorLivePreviewField) | |
| [EditorPosition](https://docs.obsidian.md/Reference/TypeScript+API/EditorPosition) | |
| [EditorRange](https://docs.obsidian.md/Reference/TypeScript+API/EditorRange) | |
| [EditorRangeOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorRangeOrCaret) | |
| [EditorScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorScrollInfo) | |
| [EditorSelection](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelection) | |
| [EditorSelectionOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelectionOrCaret) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [EditorSuggestTriggerInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestTriggerInfo) | |
| [EditorTransaction](https://docs.obsidian.md/Reference/TypeScript+API/EditorTransaction) | |
| [editorViewField](https://docs.obsidian.md/Reference/TypeScript+API/editorViewField) | |
| [EmbedCache](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) | |
| [EventRef](https://docs.obsidian.md/Reference/TypeScript+API/EventRef) | |
| [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| [ExtraButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ExtraButtonComponent) | |
| [FileManager](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | |
| [FileStats](https://docs.obsidian.md/Reference/TypeScript+API/FileStats) | |
| [FileSystemAdapter](https://docs.obsidian.md/Reference/TypeScript+API/FileSystemAdapter) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [finishRenderMath](https://docs.obsidian.md/Reference/TypeScript+API/finishRenderMath) | |
| [FootnoteCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) | |
| [FootnoteRefCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) | |
| [FootnoteSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteSubpathResult) | |
| [FrontMatterCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | |
| [FrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterInfo) | |
| [FrontmatterLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) | |
| [FuzzyMatch](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getBlobArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/getBlobArrayBuffer) | |
| [getFrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/getFrontMatterInfo) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/getIcon) | |
| [getIconIds](https://docs.obsidian.md/Reference/TypeScript+API/getIconIds) | |
| [getLanguage](https://docs.obsidian.md/Reference/TypeScript+API/getLanguage) | |
| [getLinkpath](https://docs.obsidian.md/Reference/TypeScript+API/getLinkpath) | |
| [HeadingCache](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) | |
| [HeadingSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/HeadingSubpathResult) | |
| [HexString](https://docs.obsidian.md/Reference/TypeScript+API/HexString) | |
| [hexToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/hexToArrayBuffer) | |
| [Hotkey](https://docs.obsidian.md/Reference/TypeScript+API/Hotkey) | |
| [HoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/HoverLinkSource) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [HSL](https://docs.obsidian.md/Reference/TypeScript+API/HSL) | |
| [htmlToMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/htmlToMarkdown) | |
| [IconName](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Instruction](https://docs.obsidian.md/Reference/TypeScript+API/Instruction) | |
| [ISuggestOwner](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [iterateRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateRefs) | |
| [Keymap](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | |
| [KeymapContext](https://docs.obsidian.md/Reference/TypeScript+API/KeymapContext) | |
| [KeymapEventHandler](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventHandler) | |
| [KeymapEventListener](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventListener) | |
| [KeymapInfo](https://docs.obsidian.md/Reference/TypeScript+API/KeymapInfo) | |
| [LinkCache](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) | |
| [ListedFiles](https://docs.obsidian.md/Reference/TypeScript+API/ListedFiles) | |
| [ListItemCache](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) | |
| [livePreviewState](https://docs.obsidian.md/Reference/TypeScript+API/livePreviewState) | |
| [LivePreviewStateType](https://docs.obsidian.md/Reference/TypeScript+API/LivePreviewStateType) | |
| [loadMathJax](https://docs.obsidian.md/Reference/TypeScript+API/loadMathJax) | |
| [loadMermaid](https://docs.obsidian.md/Reference/TypeScript+API/loadMermaid) | |
| [loadPdfJs](https://docs.obsidian.md/Reference/TypeScript+API/loadPdfJs) | |
| [loadPrism](https://docs.obsidian.md/Reference/TypeScript+API/loadPrism) | |
| [Loc](https://docs.obsidian.md/Reference/TypeScript+API/Loc) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessor) | |
| [MarkdownPostProcessorContext](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext) | |
| [MarkdownPreviewEvents](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents) | |
| [MarkdownPreviewRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewRenderer) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownSectionInformation](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSectionInformation) | |
| [MarkdownSubView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSubView) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [MarkdownViewModeType](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownViewModeType) | |
| [Menu](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| [MenuItem](https://docs.obsidian.md/Reference/TypeScript+API/MenuItem) | |
| [MenuPositionDef](https://docs.obsidian.md/Reference/TypeScript+API/MenuPositionDef) | |
| [MenuSeparator](https://docs.obsidian.md/Reference/TypeScript+API/MenuSeparator) | |
| [MetadataCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | |
| [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| [Modifier](https://docs.obsidian.md/Reference/TypeScript+API/Modifier) | |
| [moment](https://docs.obsidian.md/Reference/TypeScript+API/moment) | |
| [MomentFormatComponent](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent) | |
| [normalizePath](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath) | |
| [Notice](https://docs.obsidian.md/Reference/TypeScript+API/Notice) | |
| [ObsidianProtocolData](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolData) | |
| [ObsidianProtocolHandler](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolHandler) | |
| [OpenViewState](https://docs.obsidian.md/Reference/TypeScript+API/OpenViewState) | |
| [PaneType](https://docs.obsidian.md/Reference/TypeScript+API/PaneType) | |
| [parseFrontMatterAliases](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterAliases) | |
| [parseFrontMatterEntry](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterEntry) | |
| [parseFrontMatterStringArray](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterStringArray) | |
| [parseFrontMatterTags](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterTags) | |
| [parseLinktext](https://docs.obsidian.md/Reference/TypeScript+API/parseLinktext) | |
| [parseYaml](https://docs.obsidian.md/Reference/TypeScript+API/parseYaml) | |
| [Platform](https://docs.obsidian.md/Reference/TypeScript+API/Platform) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [PluginManifest](https://docs.obsidian.md/Reference/TypeScript+API/PluginManifest) | |
| [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab) | |
| [Point](https://docs.obsidian.md/Reference/TypeScript+API/Point) | |
| [PopoverState](https://docs.obsidian.md/Reference/TypeScript+API/PopoverState) | |
| [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) | |
| [Pos](https://docs.obsidian.md/Reference/TypeScript+API/Pos) | |
| [prepareFuzzySearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareFuzzySearch) | |
| [prepareSimpleSearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareSimpleSearch) | |
| [ProgressBarComponent](https://docs.obsidian.md/Reference/TypeScript+API/ProgressBarComponent) | |
| [Reference](https://docs.obsidian.md/Reference/TypeScript+API/Reference) | |
| [ReferenceCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceCache) | |
| [ReferenceLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceLinkCache) | |
| [removeIcon](https://docs.obsidian.md/Reference/TypeScript+API/removeIcon) | |
| [renderMatches](https://docs.obsidian.md/Reference/TypeScript+API/renderMatches) | |
| [renderMath](https://docs.obsidian.md/Reference/TypeScript+API/renderMath) | |
| [renderResults](https://docs.obsidian.md/Reference/TypeScript+API/renderResults) | |
| [request](https://docs.obsidian.md/Reference/TypeScript+API/request) | |
| [requestUrl](https://docs.obsidian.md/Reference/TypeScript+API/requestUrl) | |
| [RequestUrlParam](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlParam) | |
| [RequestUrlResponse](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponse) | |
| [RequestUrlResponsePromise](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponsePromise) | |
| [requireApiVersion](https://docs.obsidian.md/Reference/TypeScript+API/requireApiVersion) | |
| [resolveSubpath](https://docs.obsidian.md/Reference/TypeScript+API/resolveSubpath) | |
| [RGB](https://docs.obsidian.md/Reference/TypeScript+API/RGB) | |
| [sanitizeHTMLToDom](https://docs.obsidian.md/Reference/TypeScript+API/sanitizeHTMLToDom) | |
| [Scope](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | |
| [SearchComponent](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent) | |
| [SearchMatches](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatches) | |
| [SearchMatchPart](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatchPart) | |
| [SearchResult](https://docs.obsidian.md/Reference/TypeScript+API/SearchResult) | |
| [SearchResultContainer](https://docs.obsidian.md/Reference/TypeScript+API/SearchResultContainer) | |
| [SectionCache](https://docs.obsidian.md/Reference/TypeScript+API/SectionCache) | |
| [setIcon](https://docs.obsidian.md/Reference/TypeScript+API/setIcon) | |
| [Setting](https://docs.obsidian.md/Reference/TypeScript+API/Setting) | |
| [SettingTab](https://docs.obsidian.md/Reference/TypeScript+API/SettingTab) | |
| [setTooltip](https://docs.obsidian.md/Reference/TypeScript+API/setTooltip) | |
| [Side](https://docs.obsidian.md/Reference/TypeScript+API/Side) | |
| [SliderComponent](https://docs.obsidian.md/Reference/TypeScript+API/SliderComponent) | |
| [sortSearchResults](https://docs.obsidian.md/Reference/TypeScript+API/sortSearchResults) | |
| [SplitDirection](https://docs.obsidian.md/Reference/TypeScript+API/SplitDirection) | |
| [Stat](https://docs.obsidian.md/Reference/TypeScript+API/Stat) | |
| [stringifyYaml](https://docs.obsidian.md/Reference/TypeScript+API/stringifyYaml) | |
| [stripHeading](https://docs.obsidian.md/Reference/TypeScript+API/stripHeading) | |
| [stripHeadingForLink](https://docs.obsidian.md/Reference/TypeScript+API/stripHeadingForLink) | |
| [SubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/SubpathResult) | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) | |
| [TagCache](https://docs.obsidian.md/Reference/TypeScript+API/TagCache) | |
| [Tasks](https://docs.obsidian.md/Reference/TypeScript+API/Tasks) | |
| [TextAreaComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextAreaComponent) | |
| [TextComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [TFile](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | |
| [TFolder](https://docs.obsidian.md/Reference/TypeScript+API/TFolder) | |
| [ToggleComponent](https://docs.obsidian.md/Reference/TypeScript+API/ToggleComponent) | |
| [TooltipOptions](https://docs.obsidian.md/Reference/TypeScript+API/TooltipOptions) | |
| [TooltipPlacement](https://docs.obsidian.md/Reference/TypeScript+API/TooltipPlacement) | |
| [UserEvent](https://docs.obsidian.md/Reference/TypeScript+API/UserEvent) | |
| [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent) | |
| [Vault](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [ViewState](https://docs.obsidian.md/Reference/TypeScript+API/ViewState) | |
| [ViewStateResult](https://docs.obsidian.md/Reference/TypeScript+API/ViewStateResult) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| [WorkspaceContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| [WorkspaceFloating](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceFloating) | |
| [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| [WorkspaceMobileDrawer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | |
| [WorkspaceParent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | |
| [WorkspaceRibbon](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | |
| [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | |
| [WorkspaceSidedock](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) | |
| [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) | |
| [WorkspaceTabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) | |
| [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow) | |
| [WorkspaceWindowInitData](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindowInitData) | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # Editor | |
| ```yaml is-loaded | |
| aliases: "Editor" | |
| cssclasses: hide-title | |
| ``` | |
| [`Editor`](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| ## Editor class | |
| A common interface that bridges the gap between CodeMirror 5 and CodeMirror 6. | |
| **Signature:** | |
| ```typescript is-loaded | |
| export abstract class Editor | |
| ``` | |
| ## Methods | |
| | Method | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`blur()`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/blur) | `abstract` | | | |
| | [`exec(command)`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/exec) | `abstract` | | | |
| | [`focus()`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/focus) | `abstract` | | | |
| | [`getCursor(string)`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/getCursor) | `abstract` | | | |
| | [`getDoc()`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/getDoc) | | | | |
| | [`getLine(line)`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/getLine) | `abstract` | Get the text at line (0-indexed) | | |
| | [`getRange(from, to)`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/getRange) | `abstract` | | | |
| | [`getScrollInfo()`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/getScrollInfo) | `abstract` | | | |
| | [`getSelection()`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/getSelection) | `abstract` | | | |
| | [`getValue()`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/getValue) | `abstract` | | | |
| | [`hasFocus()`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/hasFocus) | `abstract` | | | |
| | [`lastLine()`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/lastLine) | `abstract` | | | |
| | [`lineCount()`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/lineCount) | `abstract` | Gets the number of lines in the document | | |
| | [`listSelections()`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/listSelections) | `abstract` | | | |
| | [`offsetToPos(offset)`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/offsetToPos) | `abstract` | | | |
| | [`posToOffset(pos)`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/posToOffset) | `abstract` | | | |
| | [`processLines(read, write, ignoreEmpty)`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/processLines) | | | | |
| | [`redo()`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/redo) | `abstract` | | | |
| | [`refresh()`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/refresh) | `abstract` | | | |
| | [`replaceRange(replacement, from, to, origin)`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/replaceRange) | `abstract` | | | |
| | [`replaceSelection(replacement, origin)`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/replaceSelection) | `abstract` | | | |
| | [`scrollIntoView(range, center)`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/scrollIntoView) | `abstract` | | | |
| | [`scrollTo(x, y)`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/scrollTo) | `abstract` | | | |
| | [`setCursor(pos, ch)`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/setCursor) | | | | |
| | [`setLine(n, text)`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/setLine) | | | | |
| | [`setSelection(anchor, head)`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/setSelection) | `abstract` | | | |
| | [`setSelections(ranges, main)`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/setSelections) | `abstract` | | | |
| | [`setValue(content)`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/setValue) | `abstract` | | | |
| | [`somethingSelected()`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/somethingSelected) | | | | |
| | [`transaction(tx, origin)`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/transaction) | `abstract` | | | |
| | [`undo()`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/undo) | `abstract` | | | |
| | [`wordAt(pos)`](https://docs.obsidian.md/Reference/TypeScript+API/Editor/wordAt) | `abstract` | | | |
| Links to this page | |
| [blur](https://docs.obsidian.md/Reference/TypeScript+API/Editor/blur) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Editor](https://docs.obsidian.md/Plugins/Editor/Editor) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [exec](https://docs.obsidian.md/Reference/TypeScript+API/Editor/exec) | |
| [focus](https://docs.obsidian.md/Reference/TypeScript+API/Editor/focus) | |
| [getCursor](https://docs.obsidian.md/Reference/TypeScript+API/Editor/getCursor) | |
| [getDoc](https://docs.obsidian.md/Reference/TypeScript+API/Editor/getDoc) | |
| [getLine](https://docs.obsidian.md/Reference/TypeScript+API/Editor/getLine) | |
| [getRange](https://docs.obsidian.md/Reference/TypeScript+API/Editor/getRange) | |
| [getScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/Editor/getScrollInfo) | |
| [getSelection](https://docs.obsidian.md/Reference/TypeScript+API/Editor/getSelection) | |
| [getValue](https://docs.obsidian.md/Reference/TypeScript+API/Editor/getValue) | |
| [hasFocus](https://docs.obsidian.md/Reference/TypeScript+API/Editor/hasFocus) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [lastLine](https://docs.obsidian.md/Reference/TypeScript+API/Editor/lastLine) | |
| [lineCount](https://docs.obsidian.md/Reference/TypeScript+API/Editor/lineCount) | |
| [listSelections](https://docs.obsidian.md/Reference/TypeScript+API/Editor/listSelections) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [offsetToPos](https://docs.obsidian.md/Reference/TypeScript+API/Editor/offsetToPos) | |
| [posToOffset](https://docs.obsidian.md/Reference/TypeScript+API/Editor/posToOffset) | |
| [processLines](https://docs.obsidian.md/Reference/TypeScript+API/Editor/processLines) | |
| [redo](https://docs.obsidian.md/Reference/TypeScript+API/Editor/redo) | |
| [refresh](https://docs.obsidian.md/Reference/TypeScript+API/Editor/refresh) | |
| [replaceRange](https://docs.obsidian.md/Reference/TypeScript+API/Editor/replaceRange) | |
| [replaceSelection](https://docs.obsidian.md/Reference/TypeScript+API/Editor/replaceSelection) | |
| [scrollIntoView](https://docs.obsidian.md/Reference/TypeScript+API/Editor/scrollIntoView) | |
| [scrollTo](https://docs.obsidian.md/Reference/TypeScript+API/Editor/scrollTo) | |
| [setCursor](https://docs.obsidian.md/Reference/TypeScript+API/Editor/setCursor) | |
| [setLine](https://docs.obsidian.md/Reference/TypeScript+API/Editor/setLine) | |
| [setSelection](https://docs.obsidian.md/Reference/TypeScript+API/Editor/setSelection) | |
| [setSelections](https://docs.obsidian.md/Reference/TypeScript+API/Editor/setSelections) | |
| [setValue](https://docs.obsidian.md/Reference/TypeScript+API/Editor/setValue) | |
| [somethingSelected](https://docs.obsidian.md/Reference/TypeScript+API/Editor/somethingSelected) | |
| [transaction](https://docs.obsidian.md/Reference/TypeScript+API/Editor/transaction) | |
| [undo](https://docs.obsidian.md/Reference/TypeScript+API/Editor/undo) | |
| [wordAt](https://docs.obsidian.md/Reference/TypeScript+API/Editor/wordAt) | |
| Editor | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| Editor class | |
| Methods | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Editor State Management | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Getting started | |
| Guides | |
| User interface | |
| Editor | |
| [Editor](https://docs.obsidian.md/Plugins/Editor/Editor) | |
| [Markdown post processing](https://docs.obsidian.md/Plugins/Editor/Markdown+post+processing) | |
| [Editor extensions](https://docs.obsidian.md/Plugins/Editor/Editor+extensions) | |
| [Decorations](https://docs.obsidian.md/Plugins/Editor/Decorations) | |
| [State fields](https://docs.obsidian.md/Plugins/Editor/State+fields) | |
| [State management](https://docs.obsidian.md/Plugins/Editor/State+management) | |
| [View plugins](https://docs.obsidian.md/Plugins/Editor/View+plugins) | |
| [Viewport](https://docs.obsidian.md/Plugins/Editor/Viewport) | |
| [Communicating with editor extensions](https://docs.obsidian.md/Plugins/Editor/Communicating+with+editor+extensions) | |
| Releasing | |
| [Events](https://docs.obsidian.md/Plugins/Events) | |
| [Vault](https://docs.obsidian.md/Plugins/Vault) | |
| Themes | |
| Reference | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # State management | |
| This page aims to give an introduction to state management for [editor extensions](https://docs.obsidian.md/Plugins/Editor/Editor+extensions). | |
| Note | |
| This page aims to distill the official CodeMirror 6 documentation for Obsidian plugin developers. For more detailed information on state management, refer to [State and Updates](https://codemirror.net/docs/guide/#state-and-updates). | |
| ## State changes | |
| In most applications, you would update state by assigning a new value to a property or variable. As a consequence, the old value is lost forever. | |
| ```ts is-loaded | |
| let note = ''; | |
| note = 'Heading' | |
| note = '# Heading' | |
| note = '## Heading' // How to undo this? | |
| ``` | |
| To support features like undoing and redoing changes to a user's workspace, applications like Obsidian instead keep a history of all changes that have been made. To undo a change, you can then go back to a point in time before the change was made. | |
| | | State | | |
| | --- | --- | | |
| | 0 | | | |
| | 1 | Heading | | |
| | 2 | \# Heading | | |
| | 3 | \## Heading | | |
| In TypeScript, you'd then end up with something like this: | |
| ```ts is-loaded | |
| const changes: ChangeSpec[] = []; | |
| changes.push({ from: 0, insert: 'Heading' }); | |
| changes.push({ from: 0, insert: '# ' }); | |
| changes.push({ from: 0, insert: '#' }); | |
| ``` | |
| ## Transactions | |
| Imagine a feature where you select some text and press the double quote, `"` to surround the selection with quotes on both sides. One way to implement the feature would be to: | |
| 1. Insert `"` at the start of the selection. | |
| 2. Insert `"` at the end of the selection. | |
| Notice that the implementation consists of _two_ state changes. If you added these to the undo history, the user would need to undo _twice_, once for each double quote. To avoid this, what if you could group these changes so that they appear as one? | |
| For editor extensions, a group of state changes that happen together is called a _transaction_. | |
| If you combine what you've learned so far—and if you allow transactions that contain only a single state change—then you can consider state as a _history of transactions_. | |
| Bringing it all together to implement the surround feature from before in an editor extension, here's how you'd add, or _dispatch_, a transaction to the editor view: | |
| ```ts is-loaded | |
| view.dispatch({ | |
| changes: [\ | |
| { from: selectionStart, insert: `"` },\ | |
| { from: selectionEnd, insert: `"` }\ | |
| ] | |
| }); | |
| ``` | |
| ## Next steps | |
| On this page, you've learned about modeling state as a series of state changes, and how to group them into transactions. | |
| To learn how to manage custom state in your editor, refer to [State fields](https://docs.obsidian.md/Plugins/Editor/State+fields). | |
| Links to this page | |
| [State fields](https://docs.obsidian.md/Plugins/Editor/State+fields) | |
| State management | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| State changes | |
| Transactions | |
| Next steps | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## MetadataCache Overview | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| AbstractInputSuggest | |
| AbstractTextComponent | |
| App | |
| BaseComponent | |
| BlockCache | |
| BlockSubpathResult | |
| ButtonComponent | |
| CachedMetadata | |
| CacheItem | |
| CapacitorAdapter | |
| CloseableComponent | |
| ColorComponent | |
| Command | |
| Component | |
| DataAdapter | |
| DataWriteOptions | |
| Debouncer | |
| DropdownComponent | |
| Editor | |
| EditorChange | |
| EditorPosition | |
| EditorRange | |
| EditorRangeOrCaret | |
| EditorScrollInfo | |
| EditorSelection | |
| EditorSelectionOrCaret | |
| EditorSuggest | |
| EditorSuggestContext | |
| EditorSuggestTriggerInfo | |
| EditorTransaction | |
| Events | |
| ExtraButtonComponent | |
| FileManager | |
| FileStats | |
| FileSystemAdapter | |
| FileView | |
| FootnoteCache | |
| FootnoteRefCache | |
| FootnoteSubpathResult | |
| FrontMatterInfo | |
| FrontmatterLinkCache | |
| FuzzyMatch | |
| FuzzySuggestModal | |
| HeadingCache | |
| HeadingSubpathResult | |
| Hotkey | |
| HoverLinkSource | |
| HoverParent | |
| HoverPopover | |
| HSL | |
| Instruction | |
| ISuggestOwner | |
| ItemView | |
| Keymap | |
| KeymapContext | |
| KeymapEventHandler | |
| KeymapInfo | |
| ListedFiles | |
| ListItemCache | |
| LivePreviewStateType | |
| Loc | |
| MarkdownEditView | |
| MarkdownFileInfo | |
| MarkdownPostProcessor | |
| MarkdownPostProcessorContext | |
| MarkdownPreviewRenderer | |
| MarkdownPreviewView | |
| MarkdownRenderChild | |
| MarkdownRenderer | |
| MarkdownSectionInformation | |
| MarkdownSubView | |
| MarkdownView | |
| Menu | |
| MenuItem | |
| MenuPositionDef | |
| MetadataCache | |
| Modal | |
| MomentFormatComponent | |
| Notice | |
| ObsidianProtocolData | |
| OpenViewState | |
| Plugin | |
| PluginManifest | |
| PluginSettingTab | |
| Point | |
| PopoverSuggest | |
| Pos | |
| ProgressBarComponent | |
| Reference | |
| ReferenceLinkCache | |
| RequestUrlParam | |
| RequestUrlResponse | |
| RequestUrlResponsePromise | |
| RGB | |
| Scope | |
| SearchComponent | |
| SearchResult | |
| SearchResultContainer | |
| SectionCache | |
| Setting | |
| SettingTab | |
| SliderComponent | |
| Stat | |
| SubpathResult | |
| SuggestModal | |
| TAbstractFile | |
| TagCache | |
| Tasks | |
| TextAreaComponent | |
| TextComponent | |
| TextFileView | |
| TFile | |
| TFolder | |
| ToggleComponent | |
| TooltipOptions | |
| ValueComponent | |
| Vault | |
| View | |
| ViewState | |
| ViewStateResult | |
| Workspace | |
| WorkspaceContainer | |
| WorkspaceFloating | |
| WorkspaceItem | |
| WorkspaceLeaf | |
| WorkspaceMobileDrawer | |
| WorkspaceRoot | |
| WorkspaceSidedock | |
| WorkspaceSplit | |
| WorkspaceTabs | |
| WorkspaceWindow | |
| WorkspaceWindowInitData | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) | |
| [addIcon](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) | |
| [apiVersion](https://docs.obsidian.md/Reference/TypeScript+API/apiVersion) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [arrayBufferToBase64](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToBase64) | |
| [arrayBufferToHex](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToHex) | |
| [base64ToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/base64ToArrayBuffer) | |
| [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent) | |
| [BlockCache](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) | |
| [BlockSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/BlockSubpathResult) | |
| [ButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ButtonComponent) | |
| [CachedMetadata](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| [CacheItem](https://docs.obsidian.md/Reference/TypeScript+API/CacheItem) | |
| [CapacitorAdapter](https://docs.obsidian.md/Reference/TypeScript+API/CapacitorAdapter) | |
| [CloseableComponent](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| [ColorComponent](https://docs.obsidian.md/Reference/TypeScript+API/ColorComponent) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| [Constructor](https://docs.obsidian.md/Reference/TypeScript+API/Constructor) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [DataWriteOptions](https://docs.obsidian.md/Reference/TypeScript+API/DataWriteOptions) | |
| [debounce](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| [Debouncer](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) | |
| [displayTooltip](https://docs.obsidian.md/Reference/TypeScript+API/displayTooltip) | |
| [DropdownComponent](https://docs.obsidian.md/Reference/TypeScript+API/DropdownComponent) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| [EditorChange](https://docs.obsidian.md/Reference/TypeScript+API/EditorChange) | |
| [EditorCommandName](https://docs.obsidian.md/Reference/TypeScript+API/EditorCommandName) | |
| [editorEditorField](https://docs.obsidian.md/Reference/TypeScript+API/editorEditorField) | |
| [editorInfoField](https://docs.obsidian.md/Reference/TypeScript+API/editorInfoField) | |
| [editorLivePreviewField](https://docs.obsidian.md/Reference/TypeScript+API/editorLivePreviewField) | |
| [EditorPosition](https://docs.obsidian.md/Reference/TypeScript+API/EditorPosition) | |
| [EditorRange](https://docs.obsidian.md/Reference/TypeScript+API/EditorRange) | |
| [EditorRangeOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorRangeOrCaret) | |
| [EditorScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorScrollInfo) | |
| [EditorSelection](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelection) | |
| [EditorSelectionOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelectionOrCaret) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [EditorSuggestTriggerInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestTriggerInfo) | |
| [EditorTransaction](https://docs.obsidian.md/Reference/TypeScript+API/EditorTransaction) | |
| [editorViewField](https://docs.obsidian.md/Reference/TypeScript+API/editorViewField) | |
| [EmbedCache](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) | |
| [EventRef](https://docs.obsidian.md/Reference/TypeScript+API/EventRef) | |
| [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| [ExtraButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ExtraButtonComponent) | |
| [FileManager](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | |
| [FileStats](https://docs.obsidian.md/Reference/TypeScript+API/FileStats) | |
| [FileSystemAdapter](https://docs.obsidian.md/Reference/TypeScript+API/FileSystemAdapter) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [finishRenderMath](https://docs.obsidian.md/Reference/TypeScript+API/finishRenderMath) | |
| [FootnoteCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) | |
| [FootnoteRefCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) | |
| [FootnoteSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteSubpathResult) | |
| [FrontMatterCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | |
| [FrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterInfo) | |
| [FrontmatterLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) | |
| [FuzzyMatch](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getBlobArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/getBlobArrayBuffer) | |
| [getFrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/getFrontMatterInfo) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/getIcon) | |
| [getIconIds](https://docs.obsidian.md/Reference/TypeScript+API/getIconIds) | |
| [getLanguage](https://docs.obsidian.md/Reference/TypeScript+API/getLanguage) | |
| [getLinkpath](https://docs.obsidian.md/Reference/TypeScript+API/getLinkpath) | |
| [HeadingCache](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) | |
| [HeadingSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/HeadingSubpathResult) | |
| [HexString](https://docs.obsidian.md/Reference/TypeScript+API/HexString) | |
| [hexToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/hexToArrayBuffer) | |
| [Hotkey](https://docs.obsidian.md/Reference/TypeScript+API/Hotkey) | |
| [HoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/HoverLinkSource) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [HSL](https://docs.obsidian.md/Reference/TypeScript+API/HSL) | |
| [htmlToMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/htmlToMarkdown) | |
| [IconName](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Instruction](https://docs.obsidian.md/Reference/TypeScript+API/Instruction) | |
| [ISuggestOwner](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [iterateRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateRefs) | |
| [Keymap](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | |
| [KeymapContext](https://docs.obsidian.md/Reference/TypeScript+API/KeymapContext) | |
| [KeymapEventHandler](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventHandler) | |
| [KeymapEventListener](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventListener) | |
| [KeymapInfo](https://docs.obsidian.md/Reference/TypeScript+API/KeymapInfo) | |
| [LinkCache](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) | |
| [ListedFiles](https://docs.obsidian.md/Reference/TypeScript+API/ListedFiles) | |
| [ListItemCache](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) | |
| [livePreviewState](https://docs.obsidian.md/Reference/TypeScript+API/livePreviewState) | |
| [LivePreviewStateType](https://docs.obsidian.md/Reference/TypeScript+API/LivePreviewStateType) | |
| [loadMathJax](https://docs.obsidian.md/Reference/TypeScript+API/loadMathJax) | |
| [loadMermaid](https://docs.obsidian.md/Reference/TypeScript+API/loadMermaid) | |
| [loadPdfJs](https://docs.obsidian.md/Reference/TypeScript+API/loadPdfJs) | |
| [loadPrism](https://docs.obsidian.md/Reference/TypeScript+API/loadPrism) | |
| [Loc](https://docs.obsidian.md/Reference/TypeScript+API/Loc) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessor) | |
| [MarkdownPostProcessorContext](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext) | |
| [MarkdownPreviewEvents](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents) | |
| [MarkdownPreviewRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewRenderer) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownSectionInformation](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSectionInformation) | |
| [MarkdownSubView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSubView) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [MarkdownViewModeType](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownViewModeType) | |
| [Menu](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| [MenuItem](https://docs.obsidian.md/Reference/TypeScript+API/MenuItem) | |
| [MenuPositionDef](https://docs.obsidian.md/Reference/TypeScript+API/MenuPositionDef) | |
| [MenuSeparator](https://docs.obsidian.md/Reference/TypeScript+API/MenuSeparator) | |
| [MetadataCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | |
| [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| [Modifier](https://docs.obsidian.md/Reference/TypeScript+API/Modifier) | |
| [moment](https://docs.obsidian.md/Reference/TypeScript+API/moment) | |
| [MomentFormatComponent](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent) | |
| [normalizePath](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath) | |
| [Notice](https://docs.obsidian.md/Reference/TypeScript+API/Notice) | |
| [ObsidianProtocolData](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolData) | |
| [ObsidianProtocolHandler](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolHandler) | |
| [OpenViewState](https://docs.obsidian.md/Reference/TypeScript+API/OpenViewState) | |
| [PaneType](https://docs.obsidian.md/Reference/TypeScript+API/PaneType) | |
| [parseFrontMatterAliases](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterAliases) | |
| [parseFrontMatterEntry](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterEntry) | |
| [parseFrontMatterStringArray](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterStringArray) | |
| [parseFrontMatterTags](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterTags) | |
| [parseLinktext](https://docs.obsidian.md/Reference/TypeScript+API/parseLinktext) | |
| [parseYaml](https://docs.obsidian.md/Reference/TypeScript+API/parseYaml) | |
| [Platform](https://docs.obsidian.md/Reference/TypeScript+API/Platform) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [PluginManifest](https://docs.obsidian.md/Reference/TypeScript+API/PluginManifest) | |
| [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab) | |
| [Point](https://docs.obsidian.md/Reference/TypeScript+API/Point) | |
| [PopoverState](https://docs.obsidian.md/Reference/TypeScript+API/PopoverState) | |
| [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) | |
| [Pos](https://docs.obsidian.md/Reference/TypeScript+API/Pos) | |
| [prepareFuzzySearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareFuzzySearch) | |
| [prepareSimpleSearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareSimpleSearch) | |
| [ProgressBarComponent](https://docs.obsidian.md/Reference/TypeScript+API/ProgressBarComponent) | |
| [Reference](https://docs.obsidian.md/Reference/TypeScript+API/Reference) | |
| [ReferenceCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceCache) | |
| [ReferenceLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceLinkCache) | |
| [removeIcon](https://docs.obsidian.md/Reference/TypeScript+API/removeIcon) | |
| [renderMatches](https://docs.obsidian.md/Reference/TypeScript+API/renderMatches) | |
| [renderMath](https://docs.obsidian.md/Reference/TypeScript+API/renderMath) | |
| [renderResults](https://docs.obsidian.md/Reference/TypeScript+API/renderResults) | |
| [request](https://docs.obsidian.md/Reference/TypeScript+API/request) | |
| [requestUrl](https://docs.obsidian.md/Reference/TypeScript+API/requestUrl) | |
| [RequestUrlParam](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlParam) | |
| [RequestUrlResponse](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponse) | |
| [RequestUrlResponsePromise](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponsePromise) | |
| [requireApiVersion](https://docs.obsidian.md/Reference/TypeScript+API/requireApiVersion) | |
| [resolveSubpath](https://docs.obsidian.md/Reference/TypeScript+API/resolveSubpath) | |
| [RGB](https://docs.obsidian.md/Reference/TypeScript+API/RGB) | |
| [sanitizeHTMLToDom](https://docs.obsidian.md/Reference/TypeScript+API/sanitizeHTMLToDom) | |
| [Scope](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | |
| [SearchComponent](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent) | |
| [SearchMatches](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatches) | |
| [SearchMatchPart](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatchPart) | |
| [SearchResult](https://docs.obsidian.md/Reference/TypeScript+API/SearchResult) | |
| [SearchResultContainer](https://docs.obsidian.md/Reference/TypeScript+API/SearchResultContainer) | |
| [SectionCache](https://docs.obsidian.md/Reference/TypeScript+API/SectionCache) | |
| [setIcon](https://docs.obsidian.md/Reference/TypeScript+API/setIcon) | |
| [Setting](https://docs.obsidian.md/Reference/TypeScript+API/Setting) | |
| [SettingTab](https://docs.obsidian.md/Reference/TypeScript+API/SettingTab) | |
| [setTooltip](https://docs.obsidian.md/Reference/TypeScript+API/setTooltip) | |
| [Side](https://docs.obsidian.md/Reference/TypeScript+API/Side) | |
| [SliderComponent](https://docs.obsidian.md/Reference/TypeScript+API/SliderComponent) | |
| [sortSearchResults](https://docs.obsidian.md/Reference/TypeScript+API/sortSearchResults) | |
| [SplitDirection](https://docs.obsidian.md/Reference/TypeScript+API/SplitDirection) | |
| [Stat](https://docs.obsidian.md/Reference/TypeScript+API/Stat) | |
| [stringifyYaml](https://docs.obsidian.md/Reference/TypeScript+API/stringifyYaml) | |
| [stripHeading](https://docs.obsidian.md/Reference/TypeScript+API/stripHeading) | |
| [stripHeadingForLink](https://docs.obsidian.md/Reference/TypeScript+API/stripHeadingForLink) | |
| [SubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/SubpathResult) | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) | |
| [TagCache](https://docs.obsidian.md/Reference/TypeScript+API/TagCache) | |
| [Tasks](https://docs.obsidian.md/Reference/TypeScript+API/Tasks) | |
| [TextAreaComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextAreaComponent) | |
| [TextComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [TFile](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | |
| [TFolder](https://docs.obsidian.md/Reference/TypeScript+API/TFolder) | |
| [ToggleComponent](https://docs.obsidian.md/Reference/TypeScript+API/ToggleComponent) | |
| [TooltipOptions](https://docs.obsidian.md/Reference/TypeScript+API/TooltipOptions) | |
| [TooltipPlacement](https://docs.obsidian.md/Reference/TypeScript+API/TooltipPlacement) | |
| [UserEvent](https://docs.obsidian.md/Reference/TypeScript+API/UserEvent) | |
| [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent) | |
| [Vault](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [ViewState](https://docs.obsidian.md/Reference/TypeScript+API/ViewState) | |
| [ViewStateResult](https://docs.obsidian.md/Reference/TypeScript+API/ViewStateResult) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| [WorkspaceContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| [WorkspaceFloating](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceFloating) | |
| [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| [WorkspaceMobileDrawer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | |
| [WorkspaceParent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | |
| [WorkspaceRibbon](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | |
| [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | |
| [WorkspaceSidedock](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) | |
| [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) | |
| [WorkspaceTabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) | |
| [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow) | |
| [WorkspaceWindowInitData](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindowInitData) | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # MetadataCache | |
| ```yaml is-loaded | |
| aliases: "MetadataCache" | |
| cssclasses: hide-title | |
| ``` | |
| [`MetadataCache`](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | |
| ## MetadataCache class | |
| Linktext is any internal link that is composed of a path and a subpath, such as 'My note#Heading' Linkpath (or path) is the path part of a linktext Subpath is the heading/block ID part of a linktext. | |
| **Signature:** | |
| ```typescript is-loaded | |
| export class MetadataCache extends Events | |
| ``` | |
| **Extends:** [`Events`](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| ## Properties | |
| | Property | Modifiers | Type | Description | | |
| | --- | --- | --- | --- | | |
| | [`resolvedLinks`](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache/resolvedLinks) | | `Record` `<string, ` `Record` `<string, number>>` | Contains all resolved links. This object maps each source file's path to an object of destination file paths with the link count. Source and destination paths are all vault absolute paths that comes from `TFile.path` and can be used with `Vault.getAbstractFileByPath(path)`. | | |
| | [`unresolvedLinks`](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache/unresolvedLinks) | | `Record` `<string, ` `Record` `<string, number>>` | Contains all unresolved links. This object maps each source file to an object of unknown destinations with count. Source paths are all vault absolute paths, similar to `resolvedLinks`. | | |
| ## Methods | |
| | Method | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`fileToLinktext(file, sourcePath, omitMdExtension)`](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache/fileToLinktext) | | Generates a linktext for a file.<br>If file name is unique, use the filename. If not unique, use full path. | | |
| | [`getCache(path)`](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache/getCache) | | | | |
| | [`getFileCache(file)`](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache/getFileCache) | | | | |
| | [`getFirstLinkpathDest(linkpath, sourcePath)`](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache/getFirstLinkpathDest) | | Get the best match for a linkpath. | | |
| | [`off(name, callback)`](https://docs.obsidian.md/Reference/TypeScript+API/Events/off) | | (Inherited from [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events)) | | |
| | [`offref(ref)`](https://docs.obsidian.md/Reference/TypeScript+API/Events/offref) | | (Inherited from [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events)) | | |
| | [`on(name: 'changed', callback, ctx)`](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache/on('changed')) | | Called when a file has been indexed, and its (updated) cache is now available.<br>Note: This is not called when a file is renamed for performance reasons. You must hook the vault rename event for those. | | |
| | [`on(name: 'deleted', callback, ctx)`](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache/on('deleted')) | | Called when a file has been deleted. A best-effort previous version of the cached metadata is presented, but it could be null in case the file was not successfully cached previously. | | |
| | [`on(name: 'resolve', callback, ctx)`](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache/on('resolve')) | | Called when a file has been resolved for `resolvedLinks` and `unresolvedLinks`. This happens sometimes after a file has been indexed. | | |
| | [`on(name: 'resolved', callback, ctx)`](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache/on('resolved')) | | Called when all files has been resolved. This will be fired each time files get modified after the initial load. | | |
| | [`trigger(name, data)`](https://docs.obsidian.md/Reference/TypeScript+API/Events/trigger) | | (Inherited from [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events)) | | |
| | [`tryTrigger(evt, args)`](https://docs.obsidian.md/Reference/TypeScript+API/Events/tryTrigger) | | (Inherited from [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events)) | | |
| Links to this page | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [fileToLinktext](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache/fileToLinktext) | |
| [getCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache/getCache) | |
| [getFileCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache/getFileCache) | |
| [getFirstLinkpathDest](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache/getFirstLinkpathDest) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [on('changed')](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache/on('changed')) | |
| [on('deleted')](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache/on('deleted')) | |
| [on('resolve')](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache/on('resolve')) | |
| [on('resolved')](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache/on('resolved')) | |
| [resolvedLinks](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache/resolvedLinks) | |
| [unresolvedLinks](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache/unresolvedLinks) | |
| MetadataCache | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| MetadataCache class | |
| Properties | |
| Methods | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Obsidian Component API | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| AbstractInputSuggest | |
| AbstractTextComponent | |
| App | |
| BaseComponent | |
| BlockCache | |
| BlockSubpathResult | |
| ButtonComponent | |
| CachedMetadata | |
| CacheItem | |
| CapacitorAdapter | |
| CloseableComponent | |
| ColorComponent | |
| Command | |
| Component | |
| DataAdapter | |
| DataWriteOptions | |
| Debouncer | |
| DropdownComponent | |
| Editor | |
| EditorChange | |
| EditorPosition | |
| EditorRange | |
| EditorRangeOrCaret | |
| EditorScrollInfo | |
| EditorSelection | |
| EditorSelectionOrCaret | |
| EditorSuggest | |
| EditorSuggestContext | |
| EditorSuggestTriggerInfo | |
| EditorTransaction | |
| Events | |
| ExtraButtonComponent | |
| FileManager | |
| FileStats | |
| FileSystemAdapter | |
| FileView | |
| FootnoteCache | |
| FootnoteRefCache | |
| FootnoteSubpathResult | |
| FrontMatterInfo | |
| FrontmatterLinkCache | |
| FuzzyMatch | |
| FuzzySuggestModal | |
| HeadingCache | |
| HeadingSubpathResult | |
| Hotkey | |
| HoverLinkSource | |
| HoverParent | |
| HoverPopover | |
| HSL | |
| Instruction | |
| ISuggestOwner | |
| ItemView | |
| Keymap | |
| KeymapContext | |
| KeymapEventHandler | |
| KeymapInfo | |
| ListedFiles | |
| ListItemCache | |
| LivePreviewStateType | |
| Loc | |
| MarkdownEditView | |
| MarkdownFileInfo | |
| MarkdownPostProcessor | |
| MarkdownPostProcessorContext | |
| MarkdownPreviewRenderer | |
| MarkdownPreviewView | |
| MarkdownRenderChild | |
| MarkdownRenderer | |
| MarkdownSectionInformation | |
| MarkdownSubView | |
| MarkdownView | |
| Menu | |
| MenuItem | |
| MenuPositionDef | |
| MetadataCache | |
| Modal | |
| MomentFormatComponent | |
| Notice | |
| ObsidianProtocolData | |
| OpenViewState | |
| Plugin | |
| PluginManifest | |
| PluginSettingTab | |
| Point | |
| PopoverSuggest | |
| Pos | |
| ProgressBarComponent | |
| Reference | |
| ReferenceLinkCache | |
| RequestUrlParam | |
| RequestUrlResponse | |
| RequestUrlResponsePromise | |
| RGB | |
| Scope | |
| SearchComponent | |
| SearchResult | |
| SearchResultContainer | |
| SectionCache | |
| Setting | |
| SettingTab | |
| SliderComponent | |
| Stat | |
| SubpathResult | |
| SuggestModal | |
| TAbstractFile | |
| TagCache | |
| Tasks | |
| TextAreaComponent | |
| TextComponent | |
| TextFileView | |
| TFile | |
| TFolder | |
| ToggleComponent | |
| TooltipOptions | |
| ValueComponent | |
| Vault | |
| View | |
| ViewState | |
| ViewStateResult | |
| Workspace | |
| WorkspaceContainer | |
| WorkspaceFloating | |
| WorkspaceItem | |
| WorkspaceLeaf | |
| WorkspaceMobileDrawer | |
| WorkspaceRoot | |
| WorkspaceSidedock | |
| WorkspaceSplit | |
| WorkspaceTabs | |
| WorkspaceWindow | |
| WorkspaceWindowInitData | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) | |
| [addIcon](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) | |
| [apiVersion](https://docs.obsidian.md/Reference/TypeScript+API/apiVersion) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [arrayBufferToBase64](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToBase64) | |
| [arrayBufferToHex](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToHex) | |
| [base64ToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/base64ToArrayBuffer) | |
| [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent) | |
| [BlockCache](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) | |
| [BlockSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/BlockSubpathResult) | |
| [ButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ButtonComponent) | |
| [CachedMetadata](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| [CacheItem](https://docs.obsidian.md/Reference/TypeScript+API/CacheItem) | |
| [CapacitorAdapter](https://docs.obsidian.md/Reference/TypeScript+API/CapacitorAdapter) | |
| [CloseableComponent](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| [ColorComponent](https://docs.obsidian.md/Reference/TypeScript+API/ColorComponent) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| [Constructor](https://docs.obsidian.md/Reference/TypeScript+API/Constructor) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [DataWriteOptions](https://docs.obsidian.md/Reference/TypeScript+API/DataWriteOptions) | |
| [debounce](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| [Debouncer](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) | |
| [displayTooltip](https://docs.obsidian.md/Reference/TypeScript+API/displayTooltip) | |
| [DropdownComponent](https://docs.obsidian.md/Reference/TypeScript+API/DropdownComponent) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| [EditorChange](https://docs.obsidian.md/Reference/TypeScript+API/EditorChange) | |
| [EditorCommandName](https://docs.obsidian.md/Reference/TypeScript+API/EditorCommandName) | |
| [editorEditorField](https://docs.obsidian.md/Reference/TypeScript+API/editorEditorField) | |
| [editorInfoField](https://docs.obsidian.md/Reference/TypeScript+API/editorInfoField) | |
| [editorLivePreviewField](https://docs.obsidian.md/Reference/TypeScript+API/editorLivePreviewField) | |
| [EditorPosition](https://docs.obsidian.md/Reference/TypeScript+API/EditorPosition) | |
| [EditorRange](https://docs.obsidian.md/Reference/TypeScript+API/EditorRange) | |
| [EditorRangeOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorRangeOrCaret) | |
| [EditorScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorScrollInfo) | |
| [EditorSelection](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelection) | |
| [EditorSelectionOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelectionOrCaret) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [EditorSuggestTriggerInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestTriggerInfo) | |
| [EditorTransaction](https://docs.obsidian.md/Reference/TypeScript+API/EditorTransaction) | |
| [editorViewField](https://docs.obsidian.md/Reference/TypeScript+API/editorViewField) | |
| [EmbedCache](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) | |
| [EventRef](https://docs.obsidian.md/Reference/TypeScript+API/EventRef) | |
| [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| [ExtraButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ExtraButtonComponent) | |
| [FileManager](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | |
| [FileStats](https://docs.obsidian.md/Reference/TypeScript+API/FileStats) | |
| [FileSystemAdapter](https://docs.obsidian.md/Reference/TypeScript+API/FileSystemAdapter) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [finishRenderMath](https://docs.obsidian.md/Reference/TypeScript+API/finishRenderMath) | |
| [FootnoteCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) | |
| [FootnoteRefCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) | |
| [FootnoteSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteSubpathResult) | |
| [FrontMatterCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | |
| [FrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterInfo) | |
| [FrontmatterLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) | |
| [FuzzyMatch](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getBlobArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/getBlobArrayBuffer) | |
| [getFrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/getFrontMatterInfo) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/getIcon) | |
| [getIconIds](https://docs.obsidian.md/Reference/TypeScript+API/getIconIds) | |
| [getLanguage](https://docs.obsidian.md/Reference/TypeScript+API/getLanguage) | |
| [getLinkpath](https://docs.obsidian.md/Reference/TypeScript+API/getLinkpath) | |
| [HeadingCache](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) | |
| [HeadingSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/HeadingSubpathResult) | |
| [HexString](https://docs.obsidian.md/Reference/TypeScript+API/HexString) | |
| [hexToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/hexToArrayBuffer) | |
| [Hotkey](https://docs.obsidian.md/Reference/TypeScript+API/Hotkey) | |
| [HoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/HoverLinkSource) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [HSL](https://docs.obsidian.md/Reference/TypeScript+API/HSL) | |
| [htmlToMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/htmlToMarkdown) | |
| [IconName](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Instruction](https://docs.obsidian.md/Reference/TypeScript+API/Instruction) | |
| [ISuggestOwner](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [iterateRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateRefs) | |
| [Keymap](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | |
| [KeymapContext](https://docs.obsidian.md/Reference/TypeScript+API/KeymapContext) | |
| [KeymapEventHandler](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventHandler) | |
| [KeymapEventListener](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventListener) | |
| [KeymapInfo](https://docs.obsidian.md/Reference/TypeScript+API/KeymapInfo) | |
| [LinkCache](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) | |
| [ListedFiles](https://docs.obsidian.md/Reference/TypeScript+API/ListedFiles) | |
| [ListItemCache](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) | |
| [livePreviewState](https://docs.obsidian.md/Reference/TypeScript+API/livePreviewState) | |
| [LivePreviewStateType](https://docs.obsidian.md/Reference/TypeScript+API/LivePreviewStateType) | |
| [loadMathJax](https://docs.obsidian.md/Reference/TypeScript+API/loadMathJax) | |
| [loadMermaid](https://docs.obsidian.md/Reference/TypeScript+API/loadMermaid) | |
| [loadPdfJs](https://docs.obsidian.md/Reference/TypeScript+API/loadPdfJs) | |
| [loadPrism](https://docs.obsidian.md/Reference/TypeScript+API/loadPrism) | |
| [Loc](https://docs.obsidian.md/Reference/TypeScript+API/Loc) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessor) | |
| [MarkdownPostProcessorContext](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext) | |
| [MarkdownPreviewEvents](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents) | |
| [MarkdownPreviewRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewRenderer) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownSectionInformation](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSectionInformation) | |
| [MarkdownSubView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSubView) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [MarkdownViewModeType](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownViewModeType) | |
| [Menu](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| [MenuItem](https://docs.obsidian.md/Reference/TypeScript+API/MenuItem) | |
| [MenuPositionDef](https://docs.obsidian.md/Reference/TypeScript+API/MenuPositionDef) | |
| [MenuSeparator](https://docs.obsidian.md/Reference/TypeScript+API/MenuSeparator) | |
| [MetadataCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | |
| [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| [Modifier](https://docs.obsidian.md/Reference/TypeScript+API/Modifier) | |
| [moment](https://docs.obsidian.md/Reference/TypeScript+API/moment) | |
| [MomentFormatComponent](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent) | |
| [normalizePath](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath) | |
| [Notice](https://docs.obsidian.md/Reference/TypeScript+API/Notice) | |
| [ObsidianProtocolData](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolData) | |
| [ObsidianProtocolHandler](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolHandler) | |
| [OpenViewState](https://docs.obsidian.md/Reference/TypeScript+API/OpenViewState) | |
| [PaneType](https://docs.obsidian.md/Reference/TypeScript+API/PaneType) | |
| [parseFrontMatterAliases](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterAliases) | |
| [parseFrontMatterEntry](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterEntry) | |
| [parseFrontMatterStringArray](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterStringArray) | |
| [parseFrontMatterTags](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterTags) | |
| [parseLinktext](https://docs.obsidian.md/Reference/TypeScript+API/parseLinktext) | |
| [parseYaml](https://docs.obsidian.md/Reference/TypeScript+API/parseYaml) | |
| [Platform](https://docs.obsidian.md/Reference/TypeScript+API/Platform) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [PluginManifest](https://docs.obsidian.md/Reference/TypeScript+API/PluginManifest) | |
| [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab) | |
| [Point](https://docs.obsidian.md/Reference/TypeScript+API/Point) | |
| [PopoverState](https://docs.obsidian.md/Reference/TypeScript+API/PopoverState) | |
| [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) | |
| [Pos](https://docs.obsidian.md/Reference/TypeScript+API/Pos) | |
| [prepareFuzzySearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareFuzzySearch) | |
| [prepareSimpleSearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareSimpleSearch) | |
| [ProgressBarComponent](https://docs.obsidian.md/Reference/TypeScript+API/ProgressBarComponent) | |
| [Reference](https://docs.obsidian.md/Reference/TypeScript+API/Reference) | |
| [ReferenceCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceCache) | |
| [ReferenceLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceLinkCache) | |
| [removeIcon](https://docs.obsidian.md/Reference/TypeScript+API/removeIcon) | |
| [renderMatches](https://docs.obsidian.md/Reference/TypeScript+API/renderMatches) | |
| [renderMath](https://docs.obsidian.md/Reference/TypeScript+API/renderMath) | |
| [renderResults](https://docs.obsidian.md/Reference/TypeScript+API/renderResults) | |
| [request](https://docs.obsidian.md/Reference/TypeScript+API/request) | |
| [requestUrl](https://docs.obsidian.md/Reference/TypeScript+API/requestUrl) | |
| [RequestUrlParam](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlParam) | |
| [RequestUrlResponse](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponse) | |
| [RequestUrlResponsePromise](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponsePromise) | |
| [requireApiVersion](https://docs.obsidian.md/Reference/TypeScript+API/requireApiVersion) | |
| [resolveSubpath](https://docs.obsidian.md/Reference/TypeScript+API/resolveSubpath) | |
| [RGB](https://docs.obsidian.md/Reference/TypeScript+API/RGB) | |
| [sanitizeHTMLToDom](https://docs.obsidian.md/Reference/TypeScript+API/sanitizeHTMLToDom) | |
| [Scope](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | |
| [SearchComponent](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent) | |
| [SearchMatches](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatches) | |
| [SearchMatchPart](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatchPart) | |
| [SearchResult](https://docs.obsidian.md/Reference/TypeScript+API/SearchResult) | |
| [SearchResultContainer](https://docs.obsidian.md/Reference/TypeScript+API/SearchResultContainer) | |
| [SectionCache](https://docs.obsidian.md/Reference/TypeScript+API/SectionCache) | |
| [setIcon](https://docs.obsidian.md/Reference/TypeScript+API/setIcon) | |
| [Setting](https://docs.obsidian.md/Reference/TypeScript+API/Setting) | |
| [SettingTab](https://docs.obsidian.md/Reference/TypeScript+API/SettingTab) | |
| [setTooltip](https://docs.obsidian.md/Reference/TypeScript+API/setTooltip) | |
| [Side](https://docs.obsidian.md/Reference/TypeScript+API/Side) | |
| [SliderComponent](https://docs.obsidian.md/Reference/TypeScript+API/SliderComponent) | |
| [sortSearchResults](https://docs.obsidian.md/Reference/TypeScript+API/sortSearchResults) | |
| [SplitDirection](https://docs.obsidian.md/Reference/TypeScript+API/SplitDirection) | |
| [Stat](https://docs.obsidian.md/Reference/TypeScript+API/Stat) | |
| [stringifyYaml](https://docs.obsidian.md/Reference/TypeScript+API/stringifyYaml) | |
| [stripHeading](https://docs.obsidian.md/Reference/TypeScript+API/stripHeading) | |
| [stripHeadingForLink](https://docs.obsidian.md/Reference/TypeScript+API/stripHeadingForLink) | |
| [SubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/SubpathResult) | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) | |
| [TagCache](https://docs.obsidian.md/Reference/TypeScript+API/TagCache) | |
| [Tasks](https://docs.obsidian.md/Reference/TypeScript+API/Tasks) | |
| [TextAreaComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextAreaComponent) | |
| [TextComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [TFile](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | |
| [TFolder](https://docs.obsidian.md/Reference/TypeScript+API/TFolder) | |
| [ToggleComponent](https://docs.obsidian.md/Reference/TypeScript+API/ToggleComponent) | |
| [TooltipOptions](https://docs.obsidian.md/Reference/TypeScript+API/TooltipOptions) | |
| [TooltipPlacement](https://docs.obsidian.md/Reference/TypeScript+API/TooltipPlacement) | |
| [UserEvent](https://docs.obsidian.md/Reference/TypeScript+API/UserEvent) | |
| [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent) | |
| [Vault](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [ViewState](https://docs.obsidian.md/Reference/TypeScript+API/ViewState) | |
| [ViewStateResult](https://docs.obsidian.md/Reference/TypeScript+API/ViewStateResult) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| [WorkspaceContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| [WorkspaceFloating](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceFloating) | |
| [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| [WorkspaceMobileDrawer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | |
| [WorkspaceParent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | |
| [WorkspaceRibbon](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | |
| [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | |
| [WorkspaceSidedock](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) | |
| [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) | |
| [WorkspaceTabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) | |
| [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow) | |
| [WorkspaceWindowInitData](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindowInitData) | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # Component | |
| ```yaml is-loaded | |
| aliases: "Component" | |
| cssclasses: hide-title | |
| ``` | |
| [`Component`](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| ## Component class | |
| **Signature:** | |
| ```typescript is-loaded | |
| export class Component | |
| ``` | |
| ## Methods | |
| | Method | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`addChild(component)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/addChild) | | Adds a child component, loading it if this component is loaded | | |
| | [`load()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/load) | | Load this component and its children | | |
| | [`onload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/onload) | | Override this to load your component | | |
| | [`onunload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/onunload) | | Override this to unload your component | | |
| | [`register(cb)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/register) | | Registers a callback to be called when unloading | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent) | | Registers an DOM event to be detached when unloading | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent_1) | | Registers an DOM event to be detached when unloading | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent_2) | | Registers an DOM event to be detached when unloading | | |
| | [`registerEvent(eventRef)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerEvent) | | Registers an event to be detached when unloading | | |
| | [`registerInterval(id)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerInterval) | | Registers an interval (from setInterval) to be cancelled when unloading Use instead of to avoid TypeScript confusing between NodeJS vs Browser API | | |
| | [`removeChild(component)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/removeChild) | | Removes a child component, unloading it | | |
| | [`unload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/unload) | | Unload this component and its children | | |
| Links to this page | |
| [addChild](https://docs.obsidian.md/Reference/TypeScript+API/Component/addChild) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [load](https://docs.obsidian.md/Reference/TypeScript+API/Component/load) | |
| [MarkdownPreviewEvents](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [Menu](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| [onload](https://docs.obsidian.md/Reference/TypeScript+API/Component/onload) | |
| [onunload](https://docs.obsidian.md/Reference/TypeScript+API/Component/onunload) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [register](https://docs.obsidian.md/Reference/TypeScript+API/Component/register) | |
| [registerDomEvent](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent) | |
| [registerDomEvent\_1](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent_1) | |
| [registerDomEvent\_2](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent_2) | |
| [registerEvent](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerEvent) | |
| [registerInterval](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerInterval) | |
| [removeChild](https://docs.obsidian.md/Reference/TypeScript+API/Component/removeChild) | |
| [render](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer/render) | |
| [renderMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer/renderMarkdown) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [unload](https://docs.obsidian.md/Reference/TypeScript+API/Component/unload) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| Component | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| Component class | |
| Methods | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## MomentFormatComponent Overview | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| AbstractInputSuggest | |
| AbstractTextComponent | |
| App | |
| BaseComponent | |
| BlockCache | |
| BlockSubpathResult | |
| ButtonComponent | |
| CachedMetadata | |
| CacheItem | |
| CapacitorAdapter | |
| CloseableComponent | |
| ColorComponent | |
| Command | |
| Component | |
| DataAdapter | |
| DataWriteOptions | |
| Debouncer | |
| DropdownComponent | |
| Editor | |
| EditorChange | |
| EditorPosition | |
| EditorRange | |
| EditorRangeOrCaret | |
| EditorScrollInfo | |
| EditorSelection | |
| EditorSelectionOrCaret | |
| EditorSuggest | |
| EditorSuggestContext | |
| EditorSuggestTriggerInfo | |
| EditorTransaction | |
| Events | |
| ExtraButtonComponent | |
| FileManager | |
| FileStats | |
| FileSystemAdapter | |
| FileView | |
| FootnoteCache | |
| FootnoteRefCache | |
| FootnoteSubpathResult | |
| FrontMatterInfo | |
| FrontmatterLinkCache | |
| FuzzyMatch | |
| FuzzySuggestModal | |
| HeadingCache | |
| HeadingSubpathResult | |
| Hotkey | |
| HoverLinkSource | |
| HoverParent | |
| HoverPopover | |
| HSL | |
| Instruction | |
| ISuggestOwner | |
| ItemView | |
| Keymap | |
| KeymapContext | |
| KeymapEventHandler | |
| KeymapInfo | |
| ListedFiles | |
| ListItemCache | |
| LivePreviewStateType | |
| Loc | |
| MarkdownEditView | |
| MarkdownFileInfo | |
| MarkdownPostProcessor | |
| MarkdownPostProcessorContext | |
| MarkdownPreviewRenderer | |
| MarkdownPreviewView | |
| MarkdownRenderChild | |
| MarkdownRenderer | |
| MarkdownSectionInformation | |
| MarkdownSubView | |
| MarkdownView | |
| Menu | |
| MenuItem | |
| MenuPositionDef | |
| MetadataCache | |
| Modal | |
| MomentFormatComponent | |
| Notice | |
| ObsidianProtocolData | |
| OpenViewState | |
| Plugin | |
| PluginManifest | |
| PluginSettingTab | |
| Point | |
| PopoverSuggest | |
| Pos | |
| ProgressBarComponent | |
| Reference | |
| ReferenceLinkCache | |
| RequestUrlParam | |
| RequestUrlResponse | |
| RequestUrlResponsePromise | |
| RGB | |
| Scope | |
| SearchComponent | |
| SearchResult | |
| SearchResultContainer | |
| SectionCache | |
| Setting | |
| SettingTab | |
| SliderComponent | |
| Stat | |
| SubpathResult | |
| SuggestModal | |
| TAbstractFile | |
| TagCache | |
| Tasks | |
| TextAreaComponent | |
| TextComponent | |
| TextFileView | |
| TFile | |
| TFolder | |
| ToggleComponent | |
| TooltipOptions | |
| ValueComponent | |
| Vault | |
| View | |
| ViewState | |
| ViewStateResult | |
| Workspace | |
| WorkspaceContainer | |
| WorkspaceFloating | |
| WorkspaceItem | |
| WorkspaceLeaf | |
| WorkspaceMobileDrawer | |
| WorkspaceRoot | |
| WorkspaceSidedock | |
| WorkspaceSplit | |
| WorkspaceTabs | |
| WorkspaceWindow | |
| WorkspaceWindowInitData | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) | |
| [addIcon](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) | |
| [apiVersion](https://docs.obsidian.md/Reference/TypeScript+API/apiVersion) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [arrayBufferToBase64](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToBase64) | |
| [arrayBufferToHex](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToHex) | |
| [base64ToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/base64ToArrayBuffer) | |
| [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent) | |
| [BlockCache](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) | |
| [BlockSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/BlockSubpathResult) | |
| [ButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ButtonComponent) | |
| [CachedMetadata](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| [CacheItem](https://docs.obsidian.md/Reference/TypeScript+API/CacheItem) | |
| [CapacitorAdapter](https://docs.obsidian.md/Reference/TypeScript+API/CapacitorAdapter) | |
| [CloseableComponent](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| [ColorComponent](https://docs.obsidian.md/Reference/TypeScript+API/ColorComponent) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| [Constructor](https://docs.obsidian.md/Reference/TypeScript+API/Constructor) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [DataWriteOptions](https://docs.obsidian.md/Reference/TypeScript+API/DataWriteOptions) | |
| [debounce](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| [Debouncer](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) | |
| [displayTooltip](https://docs.obsidian.md/Reference/TypeScript+API/displayTooltip) | |
| [DropdownComponent](https://docs.obsidian.md/Reference/TypeScript+API/DropdownComponent) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| [EditorChange](https://docs.obsidian.md/Reference/TypeScript+API/EditorChange) | |
| [EditorCommandName](https://docs.obsidian.md/Reference/TypeScript+API/EditorCommandName) | |
| [editorEditorField](https://docs.obsidian.md/Reference/TypeScript+API/editorEditorField) | |
| [editorInfoField](https://docs.obsidian.md/Reference/TypeScript+API/editorInfoField) | |
| [editorLivePreviewField](https://docs.obsidian.md/Reference/TypeScript+API/editorLivePreviewField) | |
| [EditorPosition](https://docs.obsidian.md/Reference/TypeScript+API/EditorPosition) | |
| [EditorRange](https://docs.obsidian.md/Reference/TypeScript+API/EditorRange) | |
| [EditorRangeOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorRangeOrCaret) | |
| [EditorScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorScrollInfo) | |
| [EditorSelection](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelection) | |
| [EditorSelectionOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelectionOrCaret) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [EditorSuggestTriggerInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestTriggerInfo) | |
| [EditorTransaction](https://docs.obsidian.md/Reference/TypeScript+API/EditorTransaction) | |
| [editorViewField](https://docs.obsidian.md/Reference/TypeScript+API/editorViewField) | |
| [EmbedCache](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) | |
| [EventRef](https://docs.obsidian.md/Reference/TypeScript+API/EventRef) | |
| [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| [ExtraButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ExtraButtonComponent) | |
| [FileManager](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | |
| [FileStats](https://docs.obsidian.md/Reference/TypeScript+API/FileStats) | |
| [FileSystemAdapter](https://docs.obsidian.md/Reference/TypeScript+API/FileSystemAdapter) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [finishRenderMath](https://docs.obsidian.md/Reference/TypeScript+API/finishRenderMath) | |
| [FootnoteCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) | |
| [FootnoteRefCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) | |
| [FootnoteSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteSubpathResult) | |
| [FrontMatterCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | |
| [FrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterInfo) | |
| [FrontmatterLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) | |
| [FuzzyMatch](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getBlobArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/getBlobArrayBuffer) | |
| [getFrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/getFrontMatterInfo) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/getIcon) | |
| [getIconIds](https://docs.obsidian.md/Reference/TypeScript+API/getIconIds) | |
| [getLanguage](https://docs.obsidian.md/Reference/TypeScript+API/getLanguage) | |
| [getLinkpath](https://docs.obsidian.md/Reference/TypeScript+API/getLinkpath) | |
| [HeadingCache](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) | |
| [HeadingSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/HeadingSubpathResult) | |
| [HexString](https://docs.obsidian.md/Reference/TypeScript+API/HexString) | |
| [hexToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/hexToArrayBuffer) | |
| [Hotkey](https://docs.obsidian.md/Reference/TypeScript+API/Hotkey) | |
| [HoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/HoverLinkSource) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [HSL](https://docs.obsidian.md/Reference/TypeScript+API/HSL) | |
| [htmlToMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/htmlToMarkdown) | |
| [IconName](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Instruction](https://docs.obsidian.md/Reference/TypeScript+API/Instruction) | |
| [ISuggestOwner](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [iterateRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateRefs) | |
| [Keymap](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | |
| [KeymapContext](https://docs.obsidian.md/Reference/TypeScript+API/KeymapContext) | |
| [KeymapEventHandler](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventHandler) | |
| [KeymapEventListener](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventListener) | |
| [KeymapInfo](https://docs.obsidian.md/Reference/TypeScript+API/KeymapInfo) | |
| [LinkCache](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) | |
| [ListedFiles](https://docs.obsidian.md/Reference/TypeScript+API/ListedFiles) | |
| [ListItemCache](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) | |
| [livePreviewState](https://docs.obsidian.md/Reference/TypeScript+API/livePreviewState) | |
| [LivePreviewStateType](https://docs.obsidian.md/Reference/TypeScript+API/LivePreviewStateType) | |
| [loadMathJax](https://docs.obsidian.md/Reference/TypeScript+API/loadMathJax) | |
| [loadMermaid](https://docs.obsidian.md/Reference/TypeScript+API/loadMermaid) | |
| [loadPdfJs](https://docs.obsidian.md/Reference/TypeScript+API/loadPdfJs) | |
| [loadPrism](https://docs.obsidian.md/Reference/TypeScript+API/loadPrism) | |
| [Loc](https://docs.obsidian.md/Reference/TypeScript+API/Loc) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessor) | |
| [MarkdownPostProcessorContext](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext) | |
| [MarkdownPreviewEvents](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents) | |
| [MarkdownPreviewRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewRenderer) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownSectionInformation](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSectionInformation) | |
| [MarkdownSubView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSubView) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [MarkdownViewModeType](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownViewModeType) | |
| [Menu](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| [MenuItem](https://docs.obsidian.md/Reference/TypeScript+API/MenuItem) | |
| [MenuPositionDef](https://docs.obsidian.md/Reference/TypeScript+API/MenuPositionDef) | |
| [MenuSeparator](https://docs.obsidian.md/Reference/TypeScript+API/MenuSeparator) | |
| [MetadataCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | |
| [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| [Modifier](https://docs.obsidian.md/Reference/TypeScript+API/Modifier) | |
| [moment](https://docs.obsidian.md/Reference/TypeScript+API/moment) | |
| [MomentFormatComponent](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent) | |
| [normalizePath](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath) | |
| [Notice](https://docs.obsidian.md/Reference/TypeScript+API/Notice) | |
| [ObsidianProtocolData](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolData) | |
| [ObsidianProtocolHandler](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolHandler) | |
| [OpenViewState](https://docs.obsidian.md/Reference/TypeScript+API/OpenViewState) | |
| [PaneType](https://docs.obsidian.md/Reference/TypeScript+API/PaneType) | |
| [parseFrontMatterAliases](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterAliases) | |
| [parseFrontMatterEntry](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterEntry) | |
| [parseFrontMatterStringArray](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterStringArray) | |
| [parseFrontMatterTags](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterTags) | |
| [parseLinktext](https://docs.obsidian.md/Reference/TypeScript+API/parseLinktext) | |
| [parseYaml](https://docs.obsidian.md/Reference/TypeScript+API/parseYaml) | |
| [Platform](https://docs.obsidian.md/Reference/TypeScript+API/Platform) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [PluginManifest](https://docs.obsidian.md/Reference/TypeScript+API/PluginManifest) | |
| [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab) | |
| [Point](https://docs.obsidian.md/Reference/TypeScript+API/Point) | |
| [PopoverState](https://docs.obsidian.md/Reference/TypeScript+API/PopoverState) | |
| [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) | |
| [Pos](https://docs.obsidian.md/Reference/TypeScript+API/Pos) | |
| [prepareFuzzySearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareFuzzySearch) | |
| [prepareSimpleSearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareSimpleSearch) | |
| [ProgressBarComponent](https://docs.obsidian.md/Reference/TypeScript+API/ProgressBarComponent) | |
| [Reference](https://docs.obsidian.md/Reference/TypeScript+API/Reference) | |
| [ReferenceCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceCache) | |
| [ReferenceLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceLinkCache) | |
| [removeIcon](https://docs.obsidian.md/Reference/TypeScript+API/removeIcon) | |
| [renderMatches](https://docs.obsidian.md/Reference/TypeScript+API/renderMatches) | |
| [renderMath](https://docs.obsidian.md/Reference/TypeScript+API/renderMath) | |
| [renderResults](https://docs.obsidian.md/Reference/TypeScript+API/renderResults) | |
| [request](https://docs.obsidian.md/Reference/TypeScript+API/request) | |
| [requestUrl](https://docs.obsidian.md/Reference/TypeScript+API/requestUrl) | |
| [RequestUrlParam](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlParam) | |
| [RequestUrlResponse](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponse) | |
| [RequestUrlResponsePromise](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponsePromise) | |
| [requireApiVersion](https://docs.obsidian.md/Reference/TypeScript+API/requireApiVersion) | |
| [resolveSubpath](https://docs.obsidian.md/Reference/TypeScript+API/resolveSubpath) | |
| [RGB](https://docs.obsidian.md/Reference/TypeScript+API/RGB) | |
| [sanitizeHTMLToDom](https://docs.obsidian.md/Reference/TypeScript+API/sanitizeHTMLToDom) | |
| [Scope](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | |
| [SearchComponent](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent) | |
| [SearchMatches](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatches) | |
| [SearchMatchPart](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatchPart) | |
| [SearchResult](https://docs.obsidian.md/Reference/TypeScript+API/SearchResult) | |
| [SearchResultContainer](https://docs.obsidian.md/Reference/TypeScript+API/SearchResultContainer) | |
| [SectionCache](https://docs.obsidian.md/Reference/TypeScript+API/SectionCache) | |
| [setIcon](https://docs.obsidian.md/Reference/TypeScript+API/setIcon) | |
| [Setting](https://docs.obsidian.md/Reference/TypeScript+API/Setting) | |
| [SettingTab](https://docs.obsidian.md/Reference/TypeScript+API/SettingTab) | |
| [setTooltip](https://docs.obsidian.md/Reference/TypeScript+API/setTooltip) | |
| [Side](https://docs.obsidian.md/Reference/TypeScript+API/Side) | |
| [SliderComponent](https://docs.obsidian.md/Reference/TypeScript+API/SliderComponent) | |
| [sortSearchResults](https://docs.obsidian.md/Reference/TypeScript+API/sortSearchResults) | |
| [SplitDirection](https://docs.obsidian.md/Reference/TypeScript+API/SplitDirection) | |
| [Stat](https://docs.obsidian.md/Reference/TypeScript+API/Stat) | |
| [stringifyYaml](https://docs.obsidian.md/Reference/TypeScript+API/stringifyYaml) | |
| [stripHeading](https://docs.obsidian.md/Reference/TypeScript+API/stripHeading) | |
| [stripHeadingForLink](https://docs.obsidian.md/Reference/TypeScript+API/stripHeadingForLink) | |
| [SubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/SubpathResult) | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) | |
| [TagCache](https://docs.obsidian.md/Reference/TypeScript+API/TagCache) | |
| [Tasks](https://docs.obsidian.md/Reference/TypeScript+API/Tasks) | |
| [TextAreaComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextAreaComponent) | |
| [TextComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [TFile](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | |
| [TFolder](https://docs.obsidian.md/Reference/TypeScript+API/TFolder) | |
| [ToggleComponent](https://docs.obsidian.md/Reference/TypeScript+API/ToggleComponent) | |
| [TooltipOptions](https://docs.obsidian.md/Reference/TypeScript+API/TooltipOptions) | |
| [TooltipPlacement](https://docs.obsidian.md/Reference/TypeScript+API/TooltipPlacement) | |
| [UserEvent](https://docs.obsidian.md/Reference/TypeScript+API/UserEvent) | |
| [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent) | |
| [Vault](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [ViewState](https://docs.obsidian.md/Reference/TypeScript+API/ViewState) | |
| [ViewStateResult](https://docs.obsidian.md/Reference/TypeScript+API/ViewStateResult) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| [WorkspaceContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| [WorkspaceFloating](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceFloating) | |
| [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| [WorkspaceMobileDrawer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | |
| [WorkspaceParent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | |
| [WorkspaceRibbon](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | |
| [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | |
| [WorkspaceSidedock](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) | |
| [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) | |
| [WorkspaceTabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) | |
| [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow) | |
| [WorkspaceWindowInitData](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindowInitData) | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # MomentFormatComponent | |
| ```yaml is-loaded | |
| aliases: "MomentFormatComponent" | |
| cssclasses: hide-title | |
| ``` | |
| [`MomentFormatComponent`](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent) | |
| ## MomentFormatComponent class | |
| **Signature:** | |
| ```typescript is-loaded | |
| export class MomentFormatComponent extends TextComponent | |
| ``` | |
| **Extends:** [`TextComponent`](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent) | |
| ## Constructors | |
| | Constructor | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`(constructor)(containerEl)`](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent/(constructor)) | | Constructs a new instance of the `TextComponent` class<br>(Inherited from [TextComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent)) | | |
| ## Properties | |
| | Property | Modifiers | Type | Description | | |
| | --- | --- | --- | --- | | |
| | [`disabled`](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent/disabled) | | `boolean` | (Inherited from [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent)) | | |
| | [`inputEl`](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent/inputEl) | | `T` | (Inherited from [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent)) | | |
| | [`sampleEl`](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent/sampleEl) | | `HTMLElement` | | | |
| ## Methods | |
| | Method | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`getValue()`](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent/getValue) | | (Inherited from [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent)) | | |
| | [`onChange(callback)`](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent/onChange) | | (Inherited from [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent)) | | |
| | [`onChanged()`](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent/onChanged) | | | | |
| | [`registerOptionListener(listeners, key)`](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent/registerOptionListener) | | (Inherited from [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent)) | | |
| | [`setDefaultFormat(defaultFormat)`](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent/setDefaultFormat) | | Sets the default format when input is cleared. Also used for placeholder. | | |
| | [`setDisabled(disabled)`](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent/setDisabled) | | (Inherited from [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent)) | | |
| | [`setPlaceholder(placeholder)`](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent/setPlaceholder) | | (Inherited from [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent)) | | |
| | [`setSampleEl(sampleEl)`](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent/setSampleEl) | | | | |
| | [`setValue(value)`](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent/setValue) | | | | |
| | [`then(cb)`](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent/then) | | Facilitates chaining<br>(Inherited from [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent)) | | |
| | [`updateSample()`](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent/updateSample) | | | | |
| Links to this page | |
| [addMomentFormat](https://docs.obsidian.md/Reference/TypeScript+API/Setting/addMomentFormat) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [onChanged](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent/onChanged) | |
| [sampleEl](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent/sampleEl) | |
| [setDefaultFormat](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent/setDefaultFormat) | |
| [setSampleEl](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent/setSampleEl) | |
| [setValue](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent/setValue) | |
| [updateSample](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent/updateSample) | |
| MomentFormatComponent | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| MomentFormatComponent class | |
| Constructors | |
| Properties | |
| Methods | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## AbstractInputSuggest Class | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| AbstractInputSuggest | |
| AbstractTextComponent | |
| App | |
| BaseComponent | |
| BlockCache | |
| BlockSubpathResult | |
| ButtonComponent | |
| CachedMetadata | |
| CacheItem | |
| CapacitorAdapter | |
| CloseableComponent | |
| ColorComponent | |
| Command | |
| Component | |
| DataAdapter | |
| DataWriteOptions | |
| Debouncer | |
| DropdownComponent | |
| Editor | |
| EditorChange | |
| EditorPosition | |
| EditorRange | |
| EditorRangeOrCaret | |
| EditorScrollInfo | |
| EditorSelection | |
| EditorSelectionOrCaret | |
| EditorSuggest | |
| EditorSuggestContext | |
| EditorSuggestTriggerInfo | |
| EditorTransaction | |
| Events | |
| ExtraButtonComponent | |
| FileManager | |
| FileStats | |
| FileSystemAdapter | |
| FileView | |
| FootnoteCache | |
| FootnoteRefCache | |
| FootnoteSubpathResult | |
| FrontMatterInfo | |
| FrontmatterLinkCache | |
| FuzzyMatch | |
| FuzzySuggestModal | |
| HeadingCache | |
| HeadingSubpathResult | |
| Hotkey | |
| HoverLinkSource | |
| HoverParent | |
| HoverPopover | |
| HSL | |
| Instruction | |
| ISuggestOwner | |
| ItemView | |
| Keymap | |
| KeymapContext | |
| KeymapEventHandler | |
| KeymapInfo | |
| ListedFiles | |
| ListItemCache | |
| LivePreviewStateType | |
| Loc | |
| MarkdownEditView | |
| MarkdownFileInfo | |
| MarkdownPostProcessor | |
| MarkdownPostProcessorContext | |
| MarkdownPreviewRenderer | |
| MarkdownPreviewView | |
| MarkdownRenderChild | |
| MarkdownRenderer | |
| MarkdownSectionInformation | |
| MarkdownSubView | |
| MarkdownView | |
| Menu | |
| MenuItem | |
| MenuPositionDef | |
| MetadataCache | |
| Modal | |
| MomentFormatComponent | |
| Notice | |
| ObsidianProtocolData | |
| OpenViewState | |
| Plugin | |
| PluginManifest | |
| PluginSettingTab | |
| Point | |
| PopoverSuggest | |
| Pos | |
| ProgressBarComponent | |
| Reference | |
| ReferenceLinkCache | |
| RequestUrlParam | |
| RequestUrlResponse | |
| RequestUrlResponsePromise | |
| RGB | |
| Scope | |
| SearchComponent | |
| SearchResult | |
| SearchResultContainer | |
| SectionCache | |
| Setting | |
| SettingTab | |
| SliderComponent | |
| Stat | |
| SubpathResult | |
| SuggestModal | |
| TAbstractFile | |
| TagCache | |
| Tasks | |
| TextAreaComponent | |
| TextComponent | |
| TextFileView | |
| TFile | |
| TFolder | |
| ToggleComponent | |
| TooltipOptions | |
| ValueComponent | |
| Vault | |
| View | |
| ViewState | |
| ViewStateResult | |
| Workspace | |
| WorkspaceContainer | |
| WorkspaceFloating | |
| WorkspaceItem | |
| WorkspaceLeaf | |
| WorkspaceMobileDrawer | |
| WorkspaceRoot | |
| WorkspaceSidedock | |
| WorkspaceSplit | |
| WorkspaceTabs | |
| WorkspaceWindow | |
| WorkspaceWindowInitData | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) | |
| [addIcon](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) | |
| [apiVersion](https://docs.obsidian.md/Reference/TypeScript+API/apiVersion) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [arrayBufferToBase64](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToBase64) | |
| [arrayBufferToHex](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToHex) | |
| [base64ToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/base64ToArrayBuffer) | |
| [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent) | |
| [BlockCache](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) | |
| [BlockSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/BlockSubpathResult) | |
| [ButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ButtonComponent) | |
| [CachedMetadata](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| [CacheItem](https://docs.obsidian.md/Reference/TypeScript+API/CacheItem) | |
| [CapacitorAdapter](https://docs.obsidian.md/Reference/TypeScript+API/CapacitorAdapter) | |
| [CloseableComponent](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| [ColorComponent](https://docs.obsidian.md/Reference/TypeScript+API/ColorComponent) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| [Constructor](https://docs.obsidian.md/Reference/TypeScript+API/Constructor) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [DataWriteOptions](https://docs.obsidian.md/Reference/TypeScript+API/DataWriteOptions) | |
| [debounce](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| [Debouncer](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) | |
| [displayTooltip](https://docs.obsidian.md/Reference/TypeScript+API/displayTooltip) | |
| [DropdownComponent](https://docs.obsidian.md/Reference/TypeScript+API/DropdownComponent) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| [EditorChange](https://docs.obsidian.md/Reference/TypeScript+API/EditorChange) | |
| [EditorCommandName](https://docs.obsidian.md/Reference/TypeScript+API/EditorCommandName) | |
| [editorEditorField](https://docs.obsidian.md/Reference/TypeScript+API/editorEditorField) | |
| [editorInfoField](https://docs.obsidian.md/Reference/TypeScript+API/editorInfoField) | |
| [editorLivePreviewField](https://docs.obsidian.md/Reference/TypeScript+API/editorLivePreviewField) | |
| [EditorPosition](https://docs.obsidian.md/Reference/TypeScript+API/EditorPosition) | |
| [EditorRange](https://docs.obsidian.md/Reference/TypeScript+API/EditorRange) | |
| [EditorRangeOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorRangeOrCaret) | |
| [EditorScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorScrollInfo) | |
| [EditorSelection](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelection) | |
| [EditorSelectionOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelectionOrCaret) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [EditorSuggestTriggerInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestTriggerInfo) | |
| [EditorTransaction](https://docs.obsidian.md/Reference/TypeScript+API/EditorTransaction) | |
| [editorViewField](https://docs.obsidian.md/Reference/TypeScript+API/editorViewField) | |
| [EmbedCache](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) | |
| [EventRef](https://docs.obsidian.md/Reference/TypeScript+API/EventRef) | |
| [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| [ExtraButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ExtraButtonComponent) | |
| [FileManager](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | |
| [FileStats](https://docs.obsidian.md/Reference/TypeScript+API/FileStats) | |
| [FileSystemAdapter](https://docs.obsidian.md/Reference/TypeScript+API/FileSystemAdapter) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [finishRenderMath](https://docs.obsidian.md/Reference/TypeScript+API/finishRenderMath) | |
| [FootnoteCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) | |
| [FootnoteRefCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) | |
| [FootnoteSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteSubpathResult) | |
| [FrontMatterCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | |
| [FrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterInfo) | |
| [FrontmatterLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) | |
| [FuzzyMatch](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getBlobArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/getBlobArrayBuffer) | |
| [getFrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/getFrontMatterInfo) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/getIcon) | |
| [getIconIds](https://docs.obsidian.md/Reference/TypeScript+API/getIconIds) | |
| [getLanguage](https://docs.obsidian.md/Reference/TypeScript+API/getLanguage) | |
| [getLinkpath](https://docs.obsidian.md/Reference/TypeScript+API/getLinkpath) | |
| [HeadingCache](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) | |
| [HeadingSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/HeadingSubpathResult) | |
| [HexString](https://docs.obsidian.md/Reference/TypeScript+API/HexString) | |
| [hexToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/hexToArrayBuffer) | |
| [Hotkey](https://docs.obsidian.md/Reference/TypeScript+API/Hotkey) | |
| [HoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/HoverLinkSource) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [HSL](https://docs.obsidian.md/Reference/TypeScript+API/HSL) | |
| [htmlToMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/htmlToMarkdown) | |
| [IconName](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Instruction](https://docs.obsidian.md/Reference/TypeScript+API/Instruction) | |
| [ISuggestOwner](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [iterateRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateRefs) | |
| [Keymap](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | |
| [KeymapContext](https://docs.obsidian.md/Reference/TypeScript+API/KeymapContext) | |
| [KeymapEventHandler](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventHandler) | |
| [KeymapEventListener](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventListener) | |
| [KeymapInfo](https://docs.obsidian.md/Reference/TypeScript+API/KeymapInfo) | |
| [LinkCache](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) | |
| [ListedFiles](https://docs.obsidian.md/Reference/TypeScript+API/ListedFiles) | |
| [ListItemCache](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) | |
| [livePreviewState](https://docs.obsidian.md/Reference/TypeScript+API/livePreviewState) | |
| [LivePreviewStateType](https://docs.obsidian.md/Reference/TypeScript+API/LivePreviewStateType) | |
| [loadMathJax](https://docs.obsidian.md/Reference/TypeScript+API/loadMathJax) | |
| [loadMermaid](https://docs.obsidian.md/Reference/TypeScript+API/loadMermaid) | |
| [loadPdfJs](https://docs.obsidian.md/Reference/TypeScript+API/loadPdfJs) | |
| [loadPrism](https://docs.obsidian.md/Reference/TypeScript+API/loadPrism) | |
| [Loc](https://docs.obsidian.md/Reference/TypeScript+API/Loc) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessor) | |
| [MarkdownPostProcessorContext](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext) | |
| [MarkdownPreviewEvents](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents) | |
| [MarkdownPreviewRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewRenderer) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownSectionInformation](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSectionInformation) | |
| [MarkdownSubView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSubView) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [MarkdownViewModeType](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownViewModeType) | |
| [Menu](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| [MenuItem](https://docs.obsidian.md/Reference/TypeScript+API/MenuItem) | |
| [MenuPositionDef](https://docs.obsidian.md/Reference/TypeScript+API/MenuPositionDef) | |
| [MenuSeparator](https://docs.obsidian.md/Reference/TypeScript+API/MenuSeparator) | |
| [MetadataCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | |
| [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| [Modifier](https://docs.obsidian.md/Reference/TypeScript+API/Modifier) | |
| [moment](https://docs.obsidian.md/Reference/TypeScript+API/moment) | |
| [MomentFormatComponent](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent) | |
| [normalizePath](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath) | |
| [Notice](https://docs.obsidian.md/Reference/TypeScript+API/Notice) | |
| [ObsidianProtocolData](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolData) | |
| [ObsidianProtocolHandler](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolHandler) | |
| [OpenViewState](https://docs.obsidian.md/Reference/TypeScript+API/OpenViewState) | |
| [PaneType](https://docs.obsidian.md/Reference/TypeScript+API/PaneType) | |
| [parseFrontMatterAliases](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterAliases) | |
| [parseFrontMatterEntry](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterEntry) | |
| [parseFrontMatterStringArray](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterStringArray) | |
| [parseFrontMatterTags](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterTags) | |
| [parseLinktext](https://docs.obsidian.md/Reference/TypeScript+API/parseLinktext) | |
| [parseYaml](https://docs.obsidian.md/Reference/TypeScript+API/parseYaml) | |
| [Platform](https://docs.obsidian.md/Reference/TypeScript+API/Platform) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [PluginManifest](https://docs.obsidian.md/Reference/TypeScript+API/PluginManifest) | |
| [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab) | |
| [Point](https://docs.obsidian.md/Reference/TypeScript+API/Point) | |
| [PopoverState](https://docs.obsidian.md/Reference/TypeScript+API/PopoverState) | |
| [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) | |
| [Pos](https://docs.obsidian.md/Reference/TypeScript+API/Pos) | |
| [prepareFuzzySearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareFuzzySearch) | |
| [prepareSimpleSearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareSimpleSearch) | |
| [ProgressBarComponent](https://docs.obsidian.md/Reference/TypeScript+API/ProgressBarComponent) | |
| [Reference](https://docs.obsidian.md/Reference/TypeScript+API/Reference) | |
| [ReferenceCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceCache) | |
| [ReferenceLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceLinkCache) | |
| [removeIcon](https://docs.obsidian.md/Reference/TypeScript+API/removeIcon) | |
| [renderMatches](https://docs.obsidian.md/Reference/TypeScript+API/renderMatches) | |
| [renderMath](https://docs.obsidian.md/Reference/TypeScript+API/renderMath) | |
| [renderResults](https://docs.obsidian.md/Reference/TypeScript+API/renderResults) | |
| [request](https://docs.obsidian.md/Reference/TypeScript+API/request) | |
| [requestUrl](https://docs.obsidian.md/Reference/TypeScript+API/requestUrl) | |
| [RequestUrlParam](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlParam) | |
| [RequestUrlResponse](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponse) | |
| [RequestUrlResponsePromise](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponsePromise) | |
| [requireApiVersion](https://docs.obsidian.md/Reference/TypeScript+API/requireApiVersion) | |
| [resolveSubpath](https://docs.obsidian.md/Reference/TypeScript+API/resolveSubpath) | |
| [RGB](https://docs.obsidian.md/Reference/TypeScript+API/RGB) | |
| [sanitizeHTMLToDom](https://docs.obsidian.md/Reference/TypeScript+API/sanitizeHTMLToDom) | |
| [Scope](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | |
| [SearchComponent](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent) | |
| [SearchMatches](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatches) | |
| [SearchMatchPart](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatchPart) | |
| [SearchResult](https://docs.obsidian.md/Reference/TypeScript+API/SearchResult) | |
| [SearchResultContainer](https://docs.obsidian.md/Reference/TypeScript+API/SearchResultContainer) | |
| [SectionCache](https://docs.obsidian.md/Reference/TypeScript+API/SectionCache) | |
| [setIcon](https://docs.obsidian.md/Reference/TypeScript+API/setIcon) | |
| [Setting](https://docs.obsidian.md/Reference/TypeScript+API/Setting) | |
| [SettingTab](https://docs.obsidian.md/Reference/TypeScript+API/SettingTab) | |
| [setTooltip](https://docs.obsidian.md/Reference/TypeScript+API/setTooltip) | |
| [Side](https://docs.obsidian.md/Reference/TypeScript+API/Side) | |
| [SliderComponent](https://docs.obsidian.md/Reference/TypeScript+API/SliderComponent) | |
| [sortSearchResults](https://docs.obsidian.md/Reference/TypeScript+API/sortSearchResults) | |
| [SplitDirection](https://docs.obsidian.md/Reference/TypeScript+API/SplitDirection) | |
| [Stat](https://docs.obsidian.md/Reference/TypeScript+API/Stat) | |
| [stringifyYaml](https://docs.obsidian.md/Reference/TypeScript+API/stringifyYaml) | |
| [stripHeading](https://docs.obsidian.md/Reference/TypeScript+API/stripHeading) | |
| [stripHeadingForLink](https://docs.obsidian.md/Reference/TypeScript+API/stripHeadingForLink) | |
| [SubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/SubpathResult) | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) | |
| [TagCache](https://docs.obsidian.md/Reference/TypeScript+API/TagCache) | |
| [Tasks](https://docs.obsidian.md/Reference/TypeScript+API/Tasks) | |
| [TextAreaComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextAreaComponent) | |
| [TextComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [TFile](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | |
| [TFolder](https://docs.obsidian.md/Reference/TypeScript+API/TFolder) | |
| [ToggleComponent](https://docs.obsidian.md/Reference/TypeScript+API/ToggleComponent) | |
| [TooltipOptions](https://docs.obsidian.md/Reference/TypeScript+API/TooltipOptions) | |
| [TooltipPlacement](https://docs.obsidian.md/Reference/TypeScript+API/TooltipPlacement) | |
| [UserEvent](https://docs.obsidian.md/Reference/TypeScript+API/UserEvent) | |
| [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent) | |
| [Vault](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [ViewState](https://docs.obsidian.md/Reference/TypeScript+API/ViewState) | |
| [ViewStateResult](https://docs.obsidian.md/Reference/TypeScript+API/ViewStateResult) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| [WorkspaceContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| [WorkspaceFloating](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceFloating) | |
| [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| [WorkspaceMobileDrawer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | |
| [WorkspaceParent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | |
| [WorkspaceRibbon](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | |
| [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | |
| [WorkspaceSidedock](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) | |
| [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) | |
| [WorkspaceTabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) | |
| [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow) | |
| [WorkspaceWindowInitData](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindowInitData) | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # AbstractInputSuggest | |
| ```yaml is-loaded | |
| aliases: "AbstractInputSuggest" | |
| cssclasses: hide-title | |
| ``` | |
| [`AbstractInputSuggest`](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| ## AbstractInputSuggest class | |
| Attach to an `<input>` element or a `<div contentEditable>` to add type-ahead support. | |
| **Signature:** | |
| ```typescript is-loaded | |
| export abstract class AbstractInputSuggest<T> extends PopoverSuggest<T> | |
| ``` | |
| **Extends:** [`PopoverSuggest`](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) `<T>` | |
| ## Constructors | |
| | Constructor | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`(constructor)(app, textInputEl)`](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest/(constructor)) | | Accepts an `<input>` text box or a contenteditable div. | | |
| ## Properties | |
| | Property | Modifiers | Type | Description | | |
| | --- | --- | --- | --- | | |
| | [`app`](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest/app) | | [`App`](https://docs.obsidian.md/Reference/TypeScript+API/App) | (Inherited from [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest)) | | |
| | [`limit`](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest/limit) | | `number` | Limit to the number of elements rendered at once. Set to 0 to disable. Defaults to 100. | | |
| | [`scope`](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest/scope) | | [`Scope`](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | (Inherited from [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest)) | | |
| ## Methods | |
| | Method | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`close()`](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest/close) | | (Inherited from [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest)) | | |
| | [`getSuggestions(query)`](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest/getSuggestions) | `protected`<br>`abstract` | | | |
| | [`getValue()`](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest/getValue) | | Gets the value from the input element. | | |
| | [`onSelect(callback)`](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest/onSelect) | | Registers a callback to handle when a suggestion is selected by the user. | | |
| | [`open()`](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest/open) | | (Inherited from [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest)) | | |
| | [`renderSuggestion(value, el)`](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest/renderSuggestion) | `abstract` | (Inherited from [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest)) | | |
| | [`selectSuggestion(value, evt)`](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest/selectSuggestion) | | | | |
| | [`setValue(value)`](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest/setValue) | | Sets the value into the input element. | | |
| Links to this page | |
| [(constructor)](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest/(constructor)) | |
| [getSuggestions](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest/getSuggestions) | |
| [getValue](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest/getValue) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [limit](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest/limit) | |
| [onSelect](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest/onSelect) | |
| [selectSuggestion](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest/selectSuggestion) | |
| [setValue](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest/setValue) | |
| AbstractInputSuggest | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| AbstractInputSuggest class | |
| Constructors | |
| Properties | |
| Methods | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Obsidian View Plugins | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Getting started | |
| Guides | |
| User interface | |
| Editor | |
| [Editor](https://docs.obsidian.md/Plugins/Editor/Editor) | |
| [Markdown post processing](https://docs.obsidian.md/Plugins/Editor/Markdown+post+processing) | |
| [Editor extensions](https://docs.obsidian.md/Plugins/Editor/Editor+extensions) | |
| [Decorations](https://docs.obsidian.md/Plugins/Editor/Decorations) | |
| [State fields](https://docs.obsidian.md/Plugins/Editor/State+fields) | |
| [State management](https://docs.obsidian.md/Plugins/Editor/State+management) | |
| [View plugins](https://docs.obsidian.md/Plugins/Editor/View+plugins) | |
| [Viewport](https://docs.obsidian.md/Plugins/Editor/Viewport) | |
| [Communicating with editor extensions](https://docs.obsidian.md/Plugins/Editor/Communicating+with+editor+extensions) | |
| Releasing | |
| [Events](https://docs.obsidian.md/Plugins/Events) | |
| [Vault](https://docs.obsidian.md/Plugins/Vault) | |
| Themes | |
| Reference | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # View plugins | |
| A view plugin is an [editor extension](https://docs.obsidian.md/Plugins/Editor/Editor+extensions) that gives you access to the editor [Viewport](https://docs.obsidian.md/Plugins/Editor/Viewport). | |
| Note | |
| This page aims to distill the official CodeMirror 6 documentation for Obsidian plugin developers. For more information on state management, refer to [Affecting the View](https://codemirror.net/docs/guide/#affecting-the-view). | |
| ## Prerequisites | |
| - Basic understanding of the [Viewport](https://docs.obsidian.md/Plugins/Editor/Viewport). | |
| ## Creating a view plugin | |
| View plugins are editor extensions that run _after_ the viewport has been recomputed. While this means that they can access the viewport, it also means that a view plugin can't make any changes that would impact the viewport. For example, by inserting blocks or line breaks into the document. | |
| Tip | |
| If you want to make changes that impact the vertical layout of the editor, by for example inserting blocks and line breaks, you need to use a [state field](https://docs.obsidian.md/Plugins/Editor/State+fields). | |
| To create a view plugin, create a class that implements [PluginValue](https://codemirror.net/docs/ref/#view.PluginValue) and pass it to the [ViewPlugin.fromClass()](https://codemirror.net/docs/ref/#view.ViewPlugin%5EfromClass) function. | |
| ```ts is-loaded | |
| import { | |
| ViewUpdate, | |
| PluginValue, | |
| EditorView, | |
| ViewPlugin, | |
| } from '@codemirror/view'; | |
| class ExamplePlugin implements PluginValue { | |
| constructor(view: EditorView) { | |
| // ... | |
| } | |
| update(update: ViewUpdate) { | |
| // ... | |
| } | |
| destroy() { | |
| // ... | |
| } | |
| } | |
| export const examplePlugin = ViewPlugin.fromClass(ExamplePlugin); | |
| ``` | |
| The three methods of the view plugin control its lifecycle: | |
| - `constructor()` initializes the plugin. | |
| - `update()` updates your plugin when something has changed, for example when the user entered or selected some text. | |
| - `destroy()` cleans up after the plugin. | |
| While the view plugin in the example works, it doesn't do much. If you want to better understand what causes the plugin to update, you can add a `console.log(update);` line to the `update()` method to print all updates to the console. | |
| ## Next steps | |
| Provide [Decorations](https://docs.obsidian.md/Plugins/Editor/Decorations) from your view plugin to change how to display the document. | |
| Links to this page | |
| [Communicating with editor extensions](https://docs.obsidian.md/Plugins/Editor/Communicating+with+editor+extensions) | |
| [Decorations](https://docs.obsidian.md/Plugins/Editor/Decorations) | |
| [Editor extensions](https://docs.obsidian.md/Plugins/Editor/Editor+extensions) | |
| [Viewport](https://docs.obsidian.md/Plugins/Editor/Viewport) | |
| View plugins | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| Prerequisites | |
| Creating a view plugin | |
| Next steps | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## WorkspaceRoot Class Overview | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| AbstractInputSuggest | |
| AbstractTextComponent | |
| App | |
| BaseComponent | |
| BlockCache | |
| BlockSubpathResult | |
| ButtonComponent | |
| CachedMetadata | |
| CacheItem | |
| CapacitorAdapter | |
| CloseableComponent | |
| ColorComponent | |
| Command | |
| Component | |
| DataAdapter | |
| DataWriteOptions | |
| Debouncer | |
| DropdownComponent | |
| Editor | |
| EditorChange | |
| EditorPosition | |
| EditorRange | |
| EditorRangeOrCaret | |
| EditorScrollInfo | |
| EditorSelection | |
| EditorSelectionOrCaret | |
| EditorSuggest | |
| EditorSuggestContext | |
| EditorSuggestTriggerInfo | |
| EditorTransaction | |
| Events | |
| ExtraButtonComponent | |
| FileManager | |
| FileStats | |
| FileSystemAdapter | |
| FileView | |
| FootnoteCache | |
| FootnoteRefCache | |
| FootnoteSubpathResult | |
| FrontMatterInfo | |
| FrontmatterLinkCache | |
| FuzzyMatch | |
| FuzzySuggestModal | |
| HeadingCache | |
| HeadingSubpathResult | |
| Hotkey | |
| HoverLinkSource | |
| HoverParent | |
| HoverPopover | |
| HSL | |
| Instruction | |
| ISuggestOwner | |
| ItemView | |
| Keymap | |
| KeymapContext | |
| KeymapEventHandler | |
| KeymapInfo | |
| ListedFiles | |
| ListItemCache | |
| LivePreviewStateType | |
| Loc | |
| MarkdownEditView | |
| MarkdownFileInfo | |
| MarkdownPostProcessor | |
| MarkdownPostProcessorContext | |
| MarkdownPreviewRenderer | |
| MarkdownPreviewView | |
| MarkdownRenderChild | |
| MarkdownRenderer | |
| MarkdownSectionInformation | |
| MarkdownSubView | |
| MarkdownView | |
| Menu | |
| MenuItem | |
| MenuPositionDef | |
| MetadataCache | |
| Modal | |
| MomentFormatComponent | |
| Notice | |
| ObsidianProtocolData | |
| OpenViewState | |
| Plugin | |
| PluginManifest | |
| PluginSettingTab | |
| Point | |
| PopoverSuggest | |
| Pos | |
| ProgressBarComponent | |
| Reference | |
| ReferenceLinkCache | |
| RequestUrlParam | |
| RequestUrlResponse | |
| RequestUrlResponsePromise | |
| RGB | |
| Scope | |
| SearchComponent | |
| SearchResult | |
| SearchResultContainer | |
| SectionCache | |
| Setting | |
| SettingTab | |
| SliderComponent | |
| Stat | |
| SubpathResult | |
| SuggestModal | |
| TAbstractFile | |
| TagCache | |
| Tasks | |
| TextAreaComponent | |
| TextComponent | |
| TextFileView | |
| TFile | |
| TFolder | |
| ToggleComponent | |
| TooltipOptions | |
| ValueComponent | |
| Vault | |
| View | |
| ViewState | |
| ViewStateResult | |
| Workspace | |
| WorkspaceContainer | |
| WorkspaceFloating | |
| WorkspaceItem | |
| WorkspaceLeaf | |
| WorkspaceMobileDrawer | |
| WorkspaceRoot | |
| WorkspaceSidedock | |
| WorkspaceSplit | |
| WorkspaceTabs | |
| WorkspaceWindow | |
| WorkspaceWindowInitData | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) | |
| [addIcon](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) | |
| [apiVersion](https://docs.obsidian.md/Reference/TypeScript+API/apiVersion) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [arrayBufferToBase64](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToBase64) | |
| [arrayBufferToHex](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToHex) | |
| [base64ToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/base64ToArrayBuffer) | |
| [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent) | |
| [BlockCache](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) | |
| [BlockSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/BlockSubpathResult) | |
| [ButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ButtonComponent) | |
| [CachedMetadata](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| [CacheItem](https://docs.obsidian.md/Reference/TypeScript+API/CacheItem) | |
| [CapacitorAdapter](https://docs.obsidian.md/Reference/TypeScript+API/CapacitorAdapter) | |
| [CloseableComponent](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| [ColorComponent](https://docs.obsidian.md/Reference/TypeScript+API/ColorComponent) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| [Constructor](https://docs.obsidian.md/Reference/TypeScript+API/Constructor) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [DataWriteOptions](https://docs.obsidian.md/Reference/TypeScript+API/DataWriteOptions) | |
| [debounce](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| [Debouncer](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) | |
| [displayTooltip](https://docs.obsidian.md/Reference/TypeScript+API/displayTooltip) | |
| [DropdownComponent](https://docs.obsidian.md/Reference/TypeScript+API/DropdownComponent) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| [EditorChange](https://docs.obsidian.md/Reference/TypeScript+API/EditorChange) | |
| [EditorCommandName](https://docs.obsidian.md/Reference/TypeScript+API/EditorCommandName) | |
| [editorEditorField](https://docs.obsidian.md/Reference/TypeScript+API/editorEditorField) | |
| [editorInfoField](https://docs.obsidian.md/Reference/TypeScript+API/editorInfoField) | |
| [editorLivePreviewField](https://docs.obsidian.md/Reference/TypeScript+API/editorLivePreviewField) | |
| [EditorPosition](https://docs.obsidian.md/Reference/TypeScript+API/EditorPosition) | |
| [EditorRange](https://docs.obsidian.md/Reference/TypeScript+API/EditorRange) | |
| [EditorRangeOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorRangeOrCaret) | |
| [EditorScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorScrollInfo) | |
| [EditorSelection](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelection) | |
| [EditorSelectionOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelectionOrCaret) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [EditorSuggestTriggerInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestTriggerInfo) | |
| [EditorTransaction](https://docs.obsidian.md/Reference/TypeScript+API/EditorTransaction) | |
| [editorViewField](https://docs.obsidian.md/Reference/TypeScript+API/editorViewField) | |
| [EmbedCache](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) | |
| [EventRef](https://docs.obsidian.md/Reference/TypeScript+API/EventRef) | |
| [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| [ExtraButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ExtraButtonComponent) | |
| [FileManager](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | |
| [FileStats](https://docs.obsidian.md/Reference/TypeScript+API/FileStats) | |
| [FileSystemAdapter](https://docs.obsidian.md/Reference/TypeScript+API/FileSystemAdapter) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [finishRenderMath](https://docs.obsidian.md/Reference/TypeScript+API/finishRenderMath) | |
| [FootnoteCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) | |
| [FootnoteRefCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) | |
| [FootnoteSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteSubpathResult) | |
| [FrontMatterCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | |
| [FrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterInfo) | |
| [FrontmatterLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) | |
| [FuzzyMatch](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getBlobArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/getBlobArrayBuffer) | |
| [getFrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/getFrontMatterInfo) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/getIcon) | |
| [getIconIds](https://docs.obsidian.md/Reference/TypeScript+API/getIconIds) | |
| [getLanguage](https://docs.obsidian.md/Reference/TypeScript+API/getLanguage) | |
| [getLinkpath](https://docs.obsidian.md/Reference/TypeScript+API/getLinkpath) | |
| [HeadingCache](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) | |
| [HeadingSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/HeadingSubpathResult) | |
| [HexString](https://docs.obsidian.md/Reference/TypeScript+API/HexString) | |
| [hexToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/hexToArrayBuffer) | |
| [Hotkey](https://docs.obsidian.md/Reference/TypeScript+API/Hotkey) | |
| [HoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/HoverLinkSource) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [HSL](https://docs.obsidian.md/Reference/TypeScript+API/HSL) | |
| [htmlToMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/htmlToMarkdown) | |
| [IconName](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Instruction](https://docs.obsidian.md/Reference/TypeScript+API/Instruction) | |
| [ISuggestOwner](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [iterateRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateRefs) | |
| [Keymap](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | |
| [KeymapContext](https://docs.obsidian.md/Reference/TypeScript+API/KeymapContext) | |
| [KeymapEventHandler](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventHandler) | |
| [KeymapEventListener](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventListener) | |
| [KeymapInfo](https://docs.obsidian.md/Reference/TypeScript+API/KeymapInfo) | |
| [LinkCache](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) | |
| [ListedFiles](https://docs.obsidian.md/Reference/TypeScript+API/ListedFiles) | |
| [ListItemCache](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) | |
| [livePreviewState](https://docs.obsidian.md/Reference/TypeScript+API/livePreviewState) | |
| [LivePreviewStateType](https://docs.obsidian.md/Reference/TypeScript+API/LivePreviewStateType) | |
| [loadMathJax](https://docs.obsidian.md/Reference/TypeScript+API/loadMathJax) | |
| [loadMermaid](https://docs.obsidian.md/Reference/TypeScript+API/loadMermaid) | |
| [loadPdfJs](https://docs.obsidian.md/Reference/TypeScript+API/loadPdfJs) | |
| [loadPrism](https://docs.obsidian.md/Reference/TypeScript+API/loadPrism) | |
| [Loc](https://docs.obsidian.md/Reference/TypeScript+API/Loc) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessor) | |
| [MarkdownPostProcessorContext](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext) | |
| [MarkdownPreviewEvents](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents) | |
| [MarkdownPreviewRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewRenderer) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownSectionInformation](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSectionInformation) | |
| [MarkdownSubView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSubView) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [MarkdownViewModeType](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownViewModeType) | |
| [Menu](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| [MenuItem](https://docs.obsidian.md/Reference/TypeScript+API/MenuItem) | |
| [MenuPositionDef](https://docs.obsidian.md/Reference/TypeScript+API/MenuPositionDef) | |
| [MenuSeparator](https://docs.obsidian.md/Reference/TypeScript+API/MenuSeparator) | |
| [MetadataCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | |
| [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| [Modifier](https://docs.obsidian.md/Reference/TypeScript+API/Modifier) | |
| [moment](https://docs.obsidian.md/Reference/TypeScript+API/moment) | |
| [MomentFormatComponent](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent) | |
| [normalizePath](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath) | |
| [Notice](https://docs.obsidian.md/Reference/TypeScript+API/Notice) | |
| [ObsidianProtocolData](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolData) | |
| [ObsidianProtocolHandler](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolHandler) | |
| [OpenViewState](https://docs.obsidian.md/Reference/TypeScript+API/OpenViewState) | |
| [PaneType](https://docs.obsidian.md/Reference/TypeScript+API/PaneType) | |
| [parseFrontMatterAliases](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterAliases) | |
| [parseFrontMatterEntry](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterEntry) | |
| [parseFrontMatterStringArray](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterStringArray) | |
| [parseFrontMatterTags](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterTags) | |
| [parseLinktext](https://docs.obsidian.md/Reference/TypeScript+API/parseLinktext) | |
| [parseYaml](https://docs.obsidian.md/Reference/TypeScript+API/parseYaml) | |
| [Platform](https://docs.obsidian.md/Reference/TypeScript+API/Platform) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [PluginManifest](https://docs.obsidian.md/Reference/TypeScript+API/PluginManifest) | |
| [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab) | |
| [Point](https://docs.obsidian.md/Reference/TypeScript+API/Point) | |
| [PopoverState](https://docs.obsidian.md/Reference/TypeScript+API/PopoverState) | |
| [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) | |
| [Pos](https://docs.obsidian.md/Reference/TypeScript+API/Pos) | |
| [prepareFuzzySearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareFuzzySearch) | |
| [prepareSimpleSearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareSimpleSearch) | |
| [ProgressBarComponent](https://docs.obsidian.md/Reference/TypeScript+API/ProgressBarComponent) | |
| [Reference](https://docs.obsidian.md/Reference/TypeScript+API/Reference) | |
| [ReferenceCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceCache) | |
| [ReferenceLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceLinkCache) | |
| [removeIcon](https://docs.obsidian.md/Reference/TypeScript+API/removeIcon) | |
| [renderMatches](https://docs.obsidian.md/Reference/TypeScript+API/renderMatches) | |
| [renderMath](https://docs.obsidian.md/Reference/TypeScript+API/renderMath) | |
| [renderResults](https://docs.obsidian.md/Reference/TypeScript+API/renderResults) | |
| [request](https://docs.obsidian.md/Reference/TypeScript+API/request) | |
| [requestUrl](https://docs.obsidian.md/Reference/TypeScript+API/requestUrl) | |
| [RequestUrlParam](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlParam) | |
| [RequestUrlResponse](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponse) | |
| [RequestUrlResponsePromise](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponsePromise) | |
| [requireApiVersion](https://docs.obsidian.md/Reference/TypeScript+API/requireApiVersion) | |
| [resolveSubpath](https://docs.obsidian.md/Reference/TypeScript+API/resolveSubpath) | |
| [RGB](https://docs.obsidian.md/Reference/TypeScript+API/RGB) | |
| [sanitizeHTMLToDom](https://docs.obsidian.md/Reference/TypeScript+API/sanitizeHTMLToDom) | |
| [Scope](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | |
| [SearchComponent](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent) | |
| [SearchMatches](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatches) | |
| [SearchMatchPart](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatchPart) | |
| [SearchResult](https://docs.obsidian.md/Reference/TypeScript+API/SearchResult) | |
| [SearchResultContainer](https://docs.obsidian.md/Reference/TypeScript+API/SearchResultContainer) | |
| [SectionCache](https://docs.obsidian.md/Reference/TypeScript+API/SectionCache) | |
| [setIcon](https://docs.obsidian.md/Reference/TypeScript+API/setIcon) | |
| [Setting](https://docs.obsidian.md/Reference/TypeScript+API/Setting) | |
| [SettingTab](https://docs.obsidian.md/Reference/TypeScript+API/SettingTab) | |
| [setTooltip](https://docs.obsidian.md/Reference/TypeScript+API/setTooltip) | |
| [Side](https://docs.obsidian.md/Reference/TypeScript+API/Side) | |
| [SliderComponent](https://docs.obsidian.md/Reference/TypeScript+API/SliderComponent) | |
| [sortSearchResults](https://docs.obsidian.md/Reference/TypeScript+API/sortSearchResults) | |
| [SplitDirection](https://docs.obsidian.md/Reference/TypeScript+API/SplitDirection) | |
| [Stat](https://docs.obsidian.md/Reference/TypeScript+API/Stat) | |
| [stringifyYaml](https://docs.obsidian.md/Reference/TypeScript+API/stringifyYaml) | |
| [stripHeading](https://docs.obsidian.md/Reference/TypeScript+API/stripHeading) | |
| [stripHeadingForLink](https://docs.obsidian.md/Reference/TypeScript+API/stripHeadingForLink) | |
| [SubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/SubpathResult) | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) | |
| [TagCache](https://docs.obsidian.md/Reference/TypeScript+API/TagCache) | |
| [Tasks](https://docs.obsidian.md/Reference/TypeScript+API/Tasks) | |
| [TextAreaComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextAreaComponent) | |
| [TextComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [TFile](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | |
| [TFolder](https://docs.obsidian.md/Reference/TypeScript+API/TFolder) | |
| [ToggleComponent](https://docs.obsidian.md/Reference/TypeScript+API/ToggleComponent) | |
| [TooltipOptions](https://docs.obsidian.md/Reference/TypeScript+API/TooltipOptions) | |
| [TooltipPlacement](https://docs.obsidian.md/Reference/TypeScript+API/TooltipPlacement) | |
| [UserEvent](https://docs.obsidian.md/Reference/TypeScript+API/UserEvent) | |
| [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent) | |
| [Vault](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [ViewState](https://docs.obsidian.md/Reference/TypeScript+API/ViewState) | |
| [ViewStateResult](https://docs.obsidian.md/Reference/TypeScript+API/ViewStateResult) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| [WorkspaceContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| [WorkspaceFloating](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceFloating) | |
| [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| [WorkspaceMobileDrawer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | |
| [WorkspaceParent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | |
| [WorkspaceRibbon](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | |
| [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | |
| [WorkspaceSidedock](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) | |
| [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) | |
| [WorkspaceTabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) | |
| [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow) | |
| [WorkspaceWindowInitData](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindowInitData) | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # WorkspaceRoot | |
| ```yaml is-loaded | |
| aliases: "WorkspaceRoot" | |
| cssclasses: hide-title | |
| ``` | |
| [`WorkspaceRoot`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | |
| ## WorkspaceRoot class | |
| **Signature:** | |
| ```typescript is-loaded | |
| export class WorkspaceRoot extends WorkspaceContainer | |
| ``` | |
| **Extends:** [`WorkspaceContainer`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| ## Properties | |
| | Property | Modifiers | Type | Description | | |
| | --- | --- | --- | --- | | |
| | [`doc`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot/doc) | | `Document` | | | |
| | [`parent`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit/parent) | | [`WorkspaceParent`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | (Inherited from [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit)) | | |
| | [`win`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot/win) | | `Window` | | | |
| ## Methods | |
| | Method | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`getContainer()`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem/getContainer) | | Get the root container parent item, which can be one of: - [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) \- [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow)<br>(Inherited from [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem)) | | |
| | [`getRoot()`](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem/getRoot) | | (Inherited from [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem)) | | |
| | [`off(name, callback)`](https://docs.obsidian.md/Reference/TypeScript+API/Events/off) | | (Inherited from [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events)) | | |
| | [`offref(ref)`](https://docs.obsidian.md/Reference/TypeScript+API/Events/offref) | | (Inherited from [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events)) | | |
| | [`on(name: string, callback, ctx)`](https://docs.obsidian.md/Reference/TypeScript+API/Events/on) | | (Inherited from [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events)) | | |
| | [`trigger(name, data)`](https://docs.obsidian.md/Reference/TypeScript+API/Events/trigger) | | (Inherited from [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events)) | | |
| | [`tryTrigger(evt, args)`](https://docs.obsidian.md/Reference/TypeScript+API/Events/tryTrigger) | | (Inherited from [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events)) | | |
| Links to this page | |
| [doc](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot/doc) | |
| [getContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem/getContainer) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [win](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot/win) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| [WorkspaceContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| [WorkspaceFloating](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceFloating) | |
| [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| [WorkspaceMobileDrawer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | |
| [WorkspaceParent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | |
| [WorkspaceSidedock](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) | |
| [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) | |
| [WorkspaceTabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) | |
| [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow) | |
| WorkspaceRoot | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| WorkspaceRoot class | |
| Properties | |
| Methods | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## SuggestModal Class | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| AbstractInputSuggest | |
| AbstractTextComponent | |
| App | |
| BaseComponent | |
| BlockCache | |
| BlockSubpathResult | |
| ButtonComponent | |
| CachedMetadata | |
| CacheItem | |
| CapacitorAdapter | |
| CloseableComponent | |
| ColorComponent | |
| Command | |
| Component | |
| DataAdapter | |
| DataWriteOptions | |
| Debouncer | |
| DropdownComponent | |
| Editor | |
| EditorChange | |
| EditorPosition | |
| EditorRange | |
| EditorRangeOrCaret | |
| EditorScrollInfo | |
| EditorSelection | |
| EditorSelectionOrCaret | |
| EditorSuggest | |
| EditorSuggestContext | |
| EditorSuggestTriggerInfo | |
| EditorTransaction | |
| Events | |
| ExtraButtonComponent | |
| FileManager | |
| FileStats | |
| FileSystemAdapter | |
| FileView | |
| FootnoteCache | |
| FootnoteRefCache | |
| FootnoteSubpathResult | |
| FrontMatterInfo | |
| FrontmatterLinkCache | |
| FuzzyMatch | |
| FuzzySuggestModal | |
| HeadingCache | |
| HeadingSubpathResult | |
| Hotkey | |
| HoverLinkSource | |
| HoverParent | |
| HoverPopover | |
| HSL | |
| Instruction | |
| ISuggestOwner | |
| ItemView | |
| Keymap | |
| KeymapContext | |
| KeymapEventHandler | |
| KeymapInfo | |
| ListedFiles | |
| ListItemCache | |
| LivePreviewStateType | |
| Loc | |
| MarkdownEditView | |
| MarkdownFileInfo | |
| MarkdownPostProcessor | |
| MarkdownPostProcessorContext | |
| MarkdownPreviewRenderer | |
| MarkdownPreviewView | |
| MarkdownRenderChild | |
| MarkdownRenderer | |
| MarkdownSectionInformation | |
| MarkdownSubView | |
| MarkdownView | |
| Menu | |
| MenuItem | |
| MenuPositionDef | |
| MetadataCache | |
| Modal | |
| MomentFormatComponent | |
| Notice | |
| ObsidianProtocolData | |
| OpenViewState | |
| Plugin | |
| PluginManifest | |
| PluginSettingTab | |
| Point | |
| PopoverSuggest | |
| Pos | |
| ProgressBarComponent | |
| Reference | |
| ReferenceLinkCache | |
| RequestUrlParam | |
| RequestUrlResponse | |
| RequestUrlResponsePromise | |
| RGB | |
| Scope | |
| SearchComponent | |
| SearchResult | |
| SearchResultContainer | |
| SectionCache | |
| Setting | |
| SettingTab | |
| SliderComponent | |
| Stat | |
| SubpathResult | |
| SuggestModal | |
| TAbstractFile | |
| TagCache | |
| Tasks | |
| TextAreaComponent | |
| TextComponent | |
| TextFileView | |
| TFile | |
| TFolder | |
| ToggleComponent | |
| TooltipOptions | |
| ValueComponent | |
| Vault | |
| View | |
| ViewState | |
| ViewStateResult | |
| Workspace | |
| WorkspaceContainer | |
| WorkspaceFloating | |
| WorkspaceItem | |
| WorkspaceLeaf | |
| WorkspaceMobileDrawer | |
| WorkspaceRoot | |
| WorkspaceSidedock | |
| WorkspaceSplit | |
| WorkspaceTabs | |
| WorkspaceWindow | |
| WorkspaceWindowInitData | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) | |
| [addIcon](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) | |
| [apiVersion](https://docs.obsidian.md/Reference/TypeScript+API/apiVersion) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [arrayBufferToBase64](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToBase64) | |
| [arrayBufferToHex](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToHex) | |
| [base64ToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/base64ToArrayBuffer) | |
| [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent) | |
| [BlockCache](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) | |
| [BlockSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/BlockSubpathResult) | |
| [ButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ButtonComponent) | |
| [CachedMetadata](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| [CacheItem](https://docs.obsidian.md/Reference/TypeScript+API/CacheItem) | |
| [CapacitorAdapter](https://docs.obsidian.md/Reference/TypeScript+API/CapacitorAdapter) | |
| [CloseableComponent](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| [ColorComponent](https://docs.obsidian.md/Reference/TypeScript+API/ColorComponent) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| [Constructor](https://docs.obsidian.md/Reference/TypeScript+API/Constructor) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [DataWriteOptions](https://docs.obsidian.md/Reference/TypeScript+API/DataWriteOptions) | |
| [debounce](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| [Debouncer](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) | |
| [displayTooltip](https://docs.obsidian.md/Reference/TypeScript+API/displayTooltip) | |
| [DropdownComponent](https://docs.obsidian.md/Reference/TypeScript+API/DropdownComponent) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| [EditorChange](https://docs.obsidian.md/Reference/TypeScript+API/EditorChange) | |
| [EditorCommandName](https://docs.obsidian.md/Reference/TypeScript+API/EditorCommandName) | |
| [editorEditorField](https://docs.obsidian.md/Reference/TypeScript+API/editorEditorField) | |
| [editorInfoField](https://docs.obsidian.md/Reference/TypeScript+API/editorInfoField) | |
| [editorLivePreviewField](https://docs.obsidian.md/Reference/TypeScript+API/editorLivePreviewField) | |
| [EditorPosition](https://docs.obsidian.md/Reference/TypeScript+API/EditorPosition) | |
| [EditorRange](https://docs.obsidian.md/Reference/TypeScript+API/EditorRange) | |
| [EditorRangeOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorRangeOrCaret) | |
| [EditorScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorScrollInfo) | |
| [EditorSelection](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelection) | |
| [EditorSelectionOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelectionOrCaret) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [EditorSuggestTriggerInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestTriggerInfo) | |
| [EditorTransaction](https://docs.obsidian.md/Reference/TypeScript+API/EditorTransaction) | |
| [editorViewField](https://docs.obsidian.md/Reference/TypeScript+API/editorViewField) | |
| [EmbedCache](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) | |
| [EventRef](https://docs.obsidian.md/Reference/TypeScript+API/EventRef) | |
| [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| [ExtraButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ExtraButtonComponent) | |
| [FileManager](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | |
| [FileStats](https://docs.obsidian.md/Reference/TypeScript+API/FileStats) | |
| [FileSystemAdapter](https://docs.obsidian.md/Reference/TypeScript+API/FileSystemAdapter) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [finishRenderMath](https://docs.obsidian.md/Reference/TypeScript+API/finishRenderMath) | |
| [FootnoteCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) | |
| [FootnoteRefCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) | |
| [FootnoteSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteSubpathResult) | |
| [FrontMatterCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | |
| [FrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterInfo) | |
| [FrontmatterLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) | |
| [FuzzyMatch](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getBlobArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/getBlobArrayBuffer) | |
| [getFrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/getFrontMatterInfo) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/getIcon) | |
| [getIconIds](https://docs.obsidian.md/Reference/TypeScript+API/getIconIds) | |
| [getLanguage](https://docs.obsidian.md/Reference/TypeScript+API/getLanguage) | |
| [getLinkpath](https://docs.obsidian.md/Reference/TypeScript+API/getLinkpath) | |
| [HeadingCache](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) | |
| [HeadingSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/HeadingSubpathResult) | |
| [HexString](https://docs.obsidian.md/Reference/TypeScript+API/HexString) | |
| [hexToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/hexToArrayBuffer) | |
| [Hotkey](https://docs.obsidian.md/Reference/TypeScript+API/Hotkey) | |
| [HoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/HoverLinkSource) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [HSL](https://docs.obsidian.md/Reference/TypeScript+API/HSL) | |
| [htmlToMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/htmlToMarkdown) | |
| [IconName](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Instruction](https://docs.obsidian.md/Reference/TypeScript+API/Instruction) | |
| [ISuggestOwner](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [iterateRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateRefs) | |
| [Keymap](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | |
| [KeymapContext](https://docs.obsidian.md/Reference/TypeScript+API/KeymapContext) | |
| [KeymapEventHandler](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventHandler) | |
| [KeymapEventListener](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventListener) | |
| [KeymapInfo](https://docs.obsidian.md/Reference/TypeScript+API/KeymapInfo) | |
| [LinkCache](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) | |
| [ListedFiles](https://docs.obsidian.md/Reference/TypeScript+API/ListedFiles) | |
| [ListItemCache](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) | |
| [livePreviewState](https://docs.obsidian.md/Reference/TypeScript+API/livePreviewState) | |
| [LivePreviewStateType](https://docs.obsidian.md/Reference/TypeScript+API/LivePreviewStateType) | |
| [loadMathJax](https://docs.obsidian.md/Reference/TypeScript+API/loadMathJax) | |
| [loadMermaid](https://docs.obsidian.md/Reference/TypeScript+API/loadMermaid) | |
| [loadPdfJs](https://docs.obsidian.md/Reference/TypeScript+API/loadPdfJs) | |
| [loadPrism](https://docs.obsidian.md/Reference/TypeScript+API/loadPrism) | |
| [Loc](https://docs.obsidian.md/Reference/TypeScript+API/Loc) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessor) | |
| [MarkdownPostProcessorContext](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext) | |
| [MarkdownPreviewEvents](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents) | |
| [MarkdownPreviewRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewRenderer) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownSectionInformation](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSectionInformation) | |
| [MarkdownSubView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSubView) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [MarkdownViewModeType](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownViewModeType) | |
| [Menu](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| [MenuItem](https://docs.obsidian.md/Reference/TypeScript+API/MenuItem) | |
| [MenuPositionDef](https://docs.obsidian.md/Reference/TypeScript+API/MenuPositionDef) | |
| [MenuSeparator](https://docs.obsidian.md/Reference/TypeScript+API/MenuSeparator) | |
| [MetadataCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | |
| [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| [Modifier](https://docs.obsidian.md/Reference/TypeScript+API/Modifier) | |
| [moment](https://docs.obsidian.md/Reference/TypeScript+API/moment) | |
| [MomentFormatComponent](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent) | |
| [normalizePath](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath) | |
| [Notice](https://docs.obsidian.md/Reference/TypeScript+API/Notice) | |
| [ObsidianProtocolData](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolData) | |
| [ObsidianProtocolHandler](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolHandler) | |
| [OpenViewState](https://docs.obsidian.md/Reference/TypeScript+API/OpenViewState) | |
| [PaneType](https://docs.obsidian.md/Reference/TypeScript+API/PaneType) | |
| [parseFrontMatterAliases](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterAliases) | |
| [parseFrontMatterEntry](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterEntry) | |
| [parseFrontMatterStringArray](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterStringArray) | |
| [parseFrontMatterTags](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterTags) | |
| [parseLinktext](https://docs.obsidian.md/Reference/TypeScript+API/parseLinktext) | |
| [parseYaml](https://docs.obsidian.md/Reference/TypeScript+API/parseYaml) | |
| [Platform](https://docs.obsidian.md/Reference/TypeScript+API/Platform) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [PluginManifest](https://docs.obsidian.md/Reference/TypeScript+API/PluginManifest) | |
| [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab) | |
| [Point](https://docs.obsidian.md/Reference/TypeScript+API/Point) | |
| [PopoverState](https://docs.obsidian.md/Reference/TypeScript+API/PopoverState) | |
| [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) | |
| [Pos](https://docs.obsidian.md/Reference/TypeScript+API/Pos) | |
| [prepareFuzzySearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareFuzzySearch) | |
| [prepareSimpleSearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareSimpleSearch) | |
| [ProgressBarComponent](https://docs.obsidian.md/Reference/TypeScript+API/ProgressBarComponent) | |
| [Reference](https://docs.obsidian.md/Reference/TypeScript+API/Reference) | |
| [ReferenceCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceCache) | |
| [ReferenceLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceLinkCache) | |
| [removeIcon](https://docs.obsidian.md/Reference/TypeScript+API/removeIcon) | |
| [renderMatches](https://docs.obsidian.md/Reference/TypeScript+API/renderMatches) | |
| [renderMath](https://docs.obsidian.md/Reference/TypeScript+API/renderMath) | |
| [renderResults](https://docs.obsidian.md/Reference/TypeScript+API/renderResults) | |
| [request](https://docs.obsidian.md/Reference/TypeScript+API/request) | |
| [requestUrl](https://docs.obsidian.md/Reference/TypeScript+API/requestUrl) | |
| [RequestUrlParam](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlParam) | |
| [RequestUrlResponse](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponse) | |
| [RequestUrlResponsePromise](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponsePromise) | |
| [requireApiVersion](https://docs.obsidian.md/Reference/TypeScript+API/requireApiVersion) | |
| [resolveSubpath](https://docs.obsidian.md/Reference/TypeScript+API/resolveSubpath) | |
| [RGB](https://docs.obsidian.md/Reference/TypeScript+API/RGB) | |
| [sanitizeHTMLToDom](https://docs.obsidian.md/Reference/TypeScript+API/sanitizeHTMLToDom) | |
| [Scope](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | |
| [SearchComponent](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent) | |
| [SearchMatches](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatches) | |
| [SearchMatchPart](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatchPart) | |
| [SearchResult](https://docs.obsidian.md/Reference/TypeScript+API/SearchResult) | |
| [SearchResultContainer](https://docs.obsidian.md/Reference/TypeScript+API/SearchResultContainer) | |
| [SectionCache](https://docs.obsidian.md/Reference/TypeScript+API/SectionCache) | |
| [setIcon](https://docs.obsidian.md/Reference/TypeScript+API/setIcon) | |
| [Setting](https://docs.obsidian.md/Reference/TypeScript+API/Setting) | |
| [SettingTab](https://docs.obsidian.md/Reference/TypeScript+API/SettingTab) | |
| [setTooltip](https://docs.obsidian.md/Reference/TypeScript+API/setTooltip) | |
| [Side](https://docs.obsidian.md/Reference/TypeScript+API/Side) | |
| [SliderComponent](https://docs.obsidian.md/Reference/TypeScript+API/SliderComponent) | |
| [sortSearchResults](https://docs.obsidian.md/Reference/TypeScript+API/sortSearchResults) | |
| [SplitDirection](https://docs.obsidian.md/Reference/TypeScript+API/SplitDirection) | |
| [Stat](https://docs.obsidian.md/Reference/TypeScript+API/Stat) | |
| [stringifyYaml](https://docs.obsidian.md/Reference/TypeScript+API/stringifyYaml) | |
| [stripHeading](https://docs.obsidian.md/Reference/TypeScript+API/stripHeading) | |
| [stripHeadingForLink](https://docs.obsidian.md/Reference/TypeScript+API/stripHeadingForLink) | |
| [SubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/SubpathResult) | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) | |
| [TagCache](https://docs.obsidian.md/Reference/TypeScript+API/TagCache) | |
| [Tasks](https://docs.obsidian.md/Reference/TypeScript+API/Tasks) | |
| [TextAreaComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextAreaComponent) | |
| [TextComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [TFile](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | |
| [TFolder](https://docs.obsidian.md/Reference/TypeScript+API/TFolder) | |
| [ToggleComponent](https://docs.obsidian.md/Reference/TypeScript+API/ToggleComponent) | |
| [TooltipOptions](https://docs.obsidian.md/Reference/TypeScript+API/TooltipOptions) | |
| [TooltipPlacement](https://docs.obsidian.md/Reference/TypeScript+API/TooltipPlacement) | |
| [UserEvent](https://docs.obsidian.md/Reference/TypeScript+API/UserEvent) | |
| [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent) | |
| [Vault](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [ViewState](https://docs.obsidian.md/Reference/TypeScript+API/ViewState) | |
| [ViewStateResult](https://docs.obsidian.md/Reference/TypeScript+API/ViewStateResult) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| [WorkspaceContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| [WorkspaceFloating](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceFloating) | |
| [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| [WorkspaceMobileDrawer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | |
| [WorkspaceParent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | |
| [WorkspaceRibbon](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | |
| [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | |
| [WorkspaceSidedock](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) | |
| [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) | |
| [WorkspaceTabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) | |
| [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow) | |
| [WorkspaceWindowInitData](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindowInitData) | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # SuggestModal | |
| ```yaml is-loaded | |
| aliases: "SuggestModal" | |
| cssclasses: hide-title | |
| ``` | |
| [`SuggestModal`](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| ## SuggestModal class | |
| **Signature:** | |
| ```typescript is-loaded | |
| export abstract class SuggestModal<T> extends Modal implements ISuggestOwner<T> | |
| ``` | |
| **Extends:** [`Modal`](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| **Implements:** [`ISuggestOwner`](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) `<T>` | |
| ## Constructors | |
| | Constructor | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`(constructor)(app)`](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/(constructor)) | | Constructs a new instance of the `SuggestModal` class | | |
| ## Properties | |
| | Property | Modifiers | Type | Description | | |
| | --- | --- | --- | --- | | |
| | [`app`](https://docs.obsidian.md/Reference/TypeScript+API/Modal/app) | | [`App`](https://docs.obsidian.md/Reference/TypeScript+API/App) | (Inherited from [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal)) | | |
| | [`containerEl`](https://docs.obsidian.md/Reference/TypeScript+API/Modal/containerEl) | | `HTMLElement` | (Inherited from [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal)) | | |
| | [`contentEl`](https://docs.obsidian.md/Reference/TypeScript+API/Modal/contentEl) | | `HTMLElement` | (Inherited from [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal)) | | |
| | [`emptyStateText`](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/emptyStateText) | | `string` | | | |
| | [`inputEl`](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/inputEl) | | `HTMLInputElement` | | | |
| | [`limit`](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/limit) | | `number` | | | |
| | [`modalEl`](https://docs.obsidian.md/Reference/TypeScript+API/Modal/modalEl) | | `HTMLElement` | (Inherited from [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal)) | | |
| | [`resultContainerEl`](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/resultContainerEl) | | `HTMLElement` | | | |
| | [`scope`](https://docs.obsidian.md/Reference/TypeScript+API/Modal/scope) | | [`Scope`](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | (Inherited from [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal)) | | |
| | [`shouldRestoreSelection`](https://docs.obsidian.md/Reference/TypeScript+API/Modal/shouldRestoreSelection) | | `boolean` | (Inherited from [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal)) | | |
| | [`titleEl`](https://docs.obsidian.md/Reference/TypeScript+API/Modal/titleEl) | | `HTMLElement` | (Inherited from [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal)) | | |
| ## Methods | |
| | Method | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`close()`](https://docs.obsidian.md/Reference/TypeScript+API/Modal/close) | | Hide the modal.<br>(Inherited from [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal)) | | |
| | [`getSuggestions(query)`](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/getSuggestions) | `abstract` | | | |
| | [`onChooseSuggestion(item, evt)`](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/onChooseSuggestion) | `abstract` | | | |
| | [`onClose()`](https://docs.obsidian.md/Reference/TypeScript+API/Modal/onClose) | | (Inherited from [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal)) | | |
| | [`onNoSuggestion()`](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/onNoSuggestion) | | | | |
| | [`onOpen()`](https://docs.obsidian.md/Reference/TypeScript+API/Modal/onOpen) | | (Inherited from [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal)) | | |
| | [`open()`](https://docs.obsidian.md/Reference/TypeScript+API/Modal/open) | | Show the modal on the the active window. On mobile, the modal will animate on screen.<br>(Inherited from [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal)) | | |
| | [`renderSuggestion(value, el)`](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/renderSuggestion) | `abstract` | | | |
| | [`selectActiveSuggestion(evt)`](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/selectActiveSuggestion) | | | | |
| | [`selectSuggestion(value, evt)`](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/selectSuggestion) | | | | |
| | [`setContent(content)`](https://docs.obsidian.md/Reference/TypeScript+API/Modal/setContent) | | (Inherited from [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal)) | | |
| | [`setInstructions(instructions)`](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/setInstructions) | | | | |
| | [`setPlaceholder(placeholder)`](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/setPlaceholder) | | | | |
| | [`setTitle(title)`](https://docs.obsidian.md/Reference/TypeScript+API/Modal/setTitle) | | (Inherited from [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal)) | | |
| Links to this page | |
| [(constructor)](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/(constructor)) | |
| [emptyStateText](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/emptyStateText) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getSuggestions](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/getSuggestions) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [inputEl](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/inputEl) | |
| [limit](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/limit) | |
| [Modals](https://docs.obsidian.md/Plugins/User+interface/Modals) | |
| [onChooseSuggestion](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/onChooseSuggestion) | |
| [onNoSuggestion](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/onNoSuggestion) | |
| [renderSuggestion](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/renderSuggestion) | |
| [resultContainerEl](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/resultContainerEl) | |
| [selectActiveSuggestion](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/selectActiveSuggestion) | |
| [selectSuggestion](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/selectSuggestion) | |
| [setInstructions](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/setInstructions) | |
| [setPlaceholder](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/setPlaceholder) | |
| SuggestModal | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| SuggestModal class | |
| Constructors | |
| Properties | |
| Methods | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## SearchComponent Overview | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| AbstractInputSuggest | |
| AbstractTextComponent | |
| App | |
| BaseComponent | |
| BlockCache | |
| BlockSubpathResult | |
| ButtonComponent | |
| CachedMetadata | |
| CacheItem | |
| CapacitorAdapter | |
| CloseableComponent | |
| ColorComponent | |
| Command | |
| Component | |
| DataAdapter | |
| DataWriteOptions | |
| Debouncer | |
| DropdownComponent | |
| Editor | |
| EditorChange | |
| EditorPosition | |
| EditorRange | |
| EditorRangeOrCaret | |
| EditorScrollInfo | |
| EditorSelection | |
| EditorSelectionOrCaret | |
| EditorSuggest | |
| EditorSuggestContext | |
| EditorSuggestTriggerInfo | |
| EditorTransaction | |
| Events | |
| ExtraButtonComponent | |
| FileManager | |
| FileStats | |
| FileSystemAdapter | |
| FileView | |
| FootnoteCache | |
| FootnoteRefCache | |
| FootnoteSubpathResult | |
| FrontMatterInfo | |
| FrontmatterLinkCache | |
| FuzzyMatch | |
| FuzzySuggestModal | |
| HeadingCache | |
| HeadingSubpathResult | |
| Hotkey | |
| HoverLinkSource | |
| HoverParent | |
| HoverPopover | |
| HSL | |
| Instruction | |
| ISuggestOwner | |
| ItemView | |
| Keymap | |
| KeymapContext | |
| KeymapEventHandler | |
| KeymapInfo | |
| ListedFiles | |
| ListItemCache | |
| LivePreviewStateType | |
| Loc | |
| MarkdownEditView | |
| MarkdownFileInfo | |
| MarkdownPostProcessor | |
| MarkdownPostProcessorContext | |
| MarkdownPreviewRenderer | |
| MarkdownPreviewView | |
| MarkdownRenderChild | |
| MarkdownRenderer | |
| MarkdownSectionInformation | |
| MarkdownSubView | |
| MarkdownView | |
| Menu | |
| MenuItem | |
| MenuPositionDef | |
| MetadataCache | |
| Modal | |
| MomentFormatComponent | |
| Notice | |
| ObsidianProtocolData | |
| OpenViewState | |
| Plugin | |
| PluginManifest | |
| PluginSettingTab | |
| Point | |
| PopoverSuggest | |
| Pos | |
| ProgressBarComponent | |
| Reference | |
| ReferenceLinkCache | |
| RequestUrlParam | |
| RequestUrlResponse | |
| RequestUrlResponsePromise | |
| RGB | |
| Scope | |
| SearchComponent | |
| SearchResult | |
| SearchResultContainer | |
| SectionCache | |
| Setting | |
| SettingTab | |
| SliderComponent | |
| Stat | |
| SubpathResult | |
| SuggestModal | |
| TAbstractFile | |
| TagCache | |
| Tasks | |
| TextAreaComponent | |
| TextComponent | |
| TextFileView | |
| TFile | |
| TFolder | |
| ToggleComponent | |
| TooltipOptions | |
| ValueComponent | |
| Vault | |
| View | |
| ViewState | |
| ViewStateResult | |
| Workspace | |
| WorkspaceContainer | |
| WorkspaceFloating | |
| WorkspaceItem | |
| WorkspaceLeaf | |
| WorkspaceMobileDrawer | |
| WorkspaceRoot | |
| WorkspaceSidedock | |
| WorkspaceSplit | |
| WorkspaceTabs | |
| WorkspaceWindow | |
| WorkspaceWindowInitData | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) | |
| [addIcon](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) | |
| [apiVersion](https://docs.obsidian.md/Reference/TypeScript+API/apiVersion) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [arrayBufferToBase64](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToBase64) | |
| [arrayBufferToHex](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToHex) | |
| [base64ToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/base64ToArrayBuffer) | |
| [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent) | |
| [BlockCache](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) | |
| [BlockSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/BlockSubpathResult) | |
| [ButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ButtonComponent) | |
| [CachedMetadata](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| [CacheItem](https://docs.obsidian.md/Reference/TypeScript+API/CacheItem) | |
| [CapacitorAdapter](https://docs.obsidian.md/Reference/TypeScript+API/CapacitorAdapter) | |
| [CloseableComponent](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| [ColorComponent](https://docs.obsidian.md/Reference/TypeScript+API/ColorComponent) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| [Constructor](https://docs.obsidian.md/Reference/TypeScript+API/Constructor) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [DataWriteOptions](https://docs.obsidian.md/Reference/TypeScript+API/DataWriteOptions) | |
| [debounce](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| [Debouncer](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) | |
| [displayTooltip](https://docs.obsidian.md/Reference/TypeScript+API/displayTooltip) | |
| [DropdownComponent](https://docs.obsidian.md/Reference/TypeScript+API/DropdownComponent) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| [EditorChange](https://docs.obsidian.md/Reference/TypeScript+API/EditorChange) | |
| [EditorCommandName](https://docs.obsidian.md/Reference/TypeScript+API/EditorCommandName) | |
| [editorEditorField](https://docs.obsidian.md/Reference/TypeScript+API/editorEditorField) | |
| [editorInfoField](https://docs.obsidian.md/Reference/TypeScript+API/editorInfoField) | |
| [editorLivePreviewField](https://docs.obsidian.md/Reference/TypeScript+API/editorLivePreviewField) | |
| [EditorPosition](https://docs.obsidian.md/Reference/TypeScript+API/EditorPosition) | |
| [EditorRange](https://docs.obsidian.md/Reference/TypeScript+API/EditorRange) | |
| [EditorRangeOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorRangeOrCaret) | |
| [EditorScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorScrollInfo) | |
| [EditorSelection](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelection) | |
| [EditorSelectionOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelectionOrCaret) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [EditorSuggestTriggerInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestTriggerInfo) | |
| [EditorTransaction](https://docs.obsidian.md/Reference/TypeScript+API/EditorTransaction) | |
| [editorViewField](https://docs.obsidian.md/Reference/TypeScript+API/editorViewField) | |
| [EmbedCache](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) | |
| [EventRef](https://docs.obsidian.md/Reference/TypeScript+API/EventRef) | |
| [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| [ExtraButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ExtraButtonComponent) | |
| [FileManager](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | |
| [FileStats](https://docs.obsidian.md/Reference/TypeScript+API/FileStats) | |
| [FileSystemAdapter](https://docs.obsidian.md/Reference/TypeScript+API/FileSystemAdapter) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [finishRenderMath](https://docs.obsidian.md/Reference/TypeScript+API/finishRenderMath) | |
| [FootnoteCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) | |
| [FootnoteRefCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) | |
| [FootnoteSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteSubpathResult) | |
| [FrontMatterCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | |
| [FrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterInfo) | |
| [FrontmatterLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) | |
| [FuzzyMatch](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getBlobArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/getBlobArrayBuffer) | |
| [getFrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/getFrontMatterInfo) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/getIcon) | |
| [getIconIds](https://docs.obsidian.md/Reference/TypeScript+API/getIconIds) | |
| [getLanguage](https://docs.obsidian.md/Reference/TypeScript+API/getLanguage) | |
| [getLinkpath](https://docs.obsidian.md/Reference/TypeScript+API/getLinkpath) | |
| [HeadingCache](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) | |
| [HeadingSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/HeadingSubpathResult) | |
| [HexString](https://docs.obsidian.md/Reference/TypeScript+API/HexString) | |
| [hexToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/hexToArrayBuffer) | |
| [Hotkey](https://docs.obsidian.md/Reference/TypeScript+API/Hotkey) | |
| [HoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/HoverLinkSource) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [HSL](https://docs.obsidian.md/Reference/TypeScript+API/HSL) | |
| [htmlToMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/htmlToMarkdown) | |
| [IconName](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Instruction](https://docs.obsidian.md/Reference/TypeScript+API/Instruction) | |
| [ISuggestOwner](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [iterateRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateRefs) | |
| [Keymap](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | |
| [KeymapContext](https://docs.obsidian.md/Reference/TypeScript+API/KeymapContext) | |
| [KeymapEventHandler](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventHandler) | |
| [KeymapEventListener](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventListener) | |
| [KeymapInfo](https://docs.obsidian.md/Reference/TypeScript+API/KeymapInfo) | |
| [LinkCache](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) | |
| [ListedFiles](https://docs.obsidian.md/Reference/TypeScript+API/ListedFiles) | |
| [ListItemCache](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) | |
| [livePreviewState](https://docs.obsidian.md/Reference/TypeScript+API/livePreviewState) | |
| [LivePreviewStateType](https://docs.obsidian.md/Reference/TypeScript+API/LivePreviewStateType) | |
| [loadMathJax](https://docs.obsidian.md/Reference/TypeScript+API/loadMathJax) | |
| [loadMermaid](https://docs.obsidian.md/Reference/TypeScript+API/loadMermaid) | |
| [loadPdfJs](https://docs.obsidian.md/Reference/TypeScript+API/loadPdfJs) | |
| [loadPrism](https://docs.obsidian.md/Reference/TypeScript+API/loadPrism) | |
| [Loc](https://docs.obsidian.md/Reference/TypeScript+API/Loc) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessor) | |
| [MarkdownPostProcessorContext](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext) | |
| [MarkdownPreviewEvents](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents) | |
| [MarkdownPreviewRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewRenderer) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownSectionInformation](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSectionInformation) | |
| [MarkdownSubView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSubView) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [MarkdownViewModeType](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownViewModeType) | |
| [Menu](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| [MenuItem](https://docs.obsidian.md/Reference/TypeScript+API/MenuItem) | |
| [MenuPositionDef](https://docs.obsidian.md/Reference/TypeScript+API/MenuPositionDef) | |
| [MenuSeparator](https://docs.obsidian.md/Reference/TypeScript+API/MenuSeparator) | |
| [MetadataCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | |
| [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| [Modifier](https://docs.obsidian.md/Reference/TypeScript+API/Modifier) | |
| [moment](https://docs.obsidian.md/Reference/TypeScript+API/moment) | |
| [MomentFormatComponent](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent) | |
| [normalizePath](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath) | |
| [Notice](https://docs.obsidian.md/Reference/TypeScript+API/Notice) | |
| [ObsidianProtocolData](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolData) | |
| [ObsidianProtocolHandler](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolHandler) | |
| [OpenViewState](https://docs.obsidian.md/Reference/TypeScript+API/OpenViewState) | |
| [PaneType](https://docs.obsidian.md/Reference/TypeScript+API/PaneType) | |
| [parseFrontMatterAliases](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterAliases) | |
| [parseFrontMatterEntry](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterEntry) | |
| [parseFrontMatterStringArray](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterStringArray) | |
| [parseFrontMatterTags](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterTags) | |
| [parseLinktext](https://docs.obsidian.md/Reference/TypeScript+API/parseLinktext) | |
| [parseYaml](https://docs.obsidian.md/Reference/TypeScript+API/parseYaml) | |
| [Platform](https://docs.obsidian.md/Reference/TypeScript+API/Platform) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [PluginManifest](https://docs.obsidian.md/Reference/TypeScript+API/PluginManifest) | |
| [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab) | |
| [Point](https://docs.obsidian.md/Reference/TypeScript+API/Point) | |
| [PopoverState](https://docs.obsidian.md/Reference/TypeScript+API/PopoverState) | |
| [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) | |
| [Pos](https://docs.obsidian.md/Reference/TypeScript+API/Pos) | |
| [prepareFuzzySearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareFuzzySearch) | |
| [prepareSimpleSearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareSimpleSearch) | |
| [ProgressBarComponent](https://docs.obsidian.md/Reference/TypeScript+API/ProgressBarComponent) | |
| [Reference](https://docs.obsidian.md/Reference/TypeScript+API/Reference) | |
| [ReferenceCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceCache) | |
| [ReferenceLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceLinkCache) | |
| [removeIcon](https://docs.obsidian.md/Reference/TypeScript+API/removeIcon) | |
| [renderMatches](https://docs.obsidian.md/Reference/TypeScript+API/renderMatches) | |
| [renderMath](https://docs.obsidian.md/Reference/TypeScript+API/renderMath) | |
| [renderResults](https://docs.obsidian.md/Reference/TypeScript+API/renderResults) | |
| [request](https://docs.obsidian.md/Reference/TypeScript+API/request) | |
| [requestUrl](https://docs.obsidian.md/Reference/TypeScript+API/requestUrl) | |
| [RequestUrlParam](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlParam) | |
| [RequestUrlResponse](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponse) | |
| [RequestUrlResponsePromise](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponsePromise) | |
| [requireApiVersion](https://docs.obsidian.md/Reference/TypeScript+API/requireApiVersion) | |
| [resolveSubpath](https://docs.obsidian.md/Reference/TypeScript+API/resolveSubpath) | |
| [RGB](https://docs.obsidian.md/Reference/TypeScript+API/RGB) | |
| [sanitizeHTMLToDom](https://docs.obsidian.md/Reference/TypeScript+API/sanitizeHTMLToDom) | |
| [Scope](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | |
| [SearchComponent](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent) | |
| [SearchMatches](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatches) | |
| [SearchMatchPart](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatchPart) | |
| [SearchResult](https://docs.obsidian.md/Reference/TypeScript+API/SearchResult) | |
| [SearchResultContainer](https://docs.obsidian.md/Reference/TypeScript+API/SearchResultContainer) | |
| [SectionCache](https://docs.obsidian.md/Reference/TypeScript+API/SectionCache) | |
| [setIcon](https://docs.obsidian.md/Reference/TypeScript+API/setIcon) | |
| [Setting](https://docs.obsidian.md/Reference/TypeScript+API/Setting) | |
| [SettingTab](https://docs.obsidian.md/Reference/TypeScript+API/SettingTab) | |
| [setTooltip](https://docs.obsidian.md/Reference/TypeScript+API/setTooltip) | |
| [Side](https://docs.obsidian.md/Reference/TypeScript+API/Side) | |
| [SliderComponent](https://docs.obsidian.md/Reference/TypeScript+API/SliderComponent) | |
| [sortSearchResults](https://docs.obsidian.md/Reference/TypeScript+API/sortSearchResults) | |
| [SplitDirection](https://docs.obsidian.md/Reference/TypeScript+API/SplitDirection) | |
| [Stat](https://docs.obsidian.md/Reference/TypeScript+API/Stat) | |
| [stringifyYaml](https://docs.obsidian.md/Reference/TypeScript+API/stringifyYaml) | |
| [stripHeading](https://docs.obsidian.md/Reference/TypeScript+API/stripHeading) | |
| [stripHeadingForLink](https://docs.obsidian.md/Reference/TypeScript+API/stripHeadingForLink) | |
| [SubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/SubpathResult) | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) | |
| [TagCache](https://docs.obsidian.md/Reference/TypeScript+API/TagCache) | |
| [Tasks](https://docs.obsidian.md/Reference/TypeScript+API/Tasks) | |
| [TextAreaComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextAreaComponent) | |
| [TextComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [TFile](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | |
| [TFolder](https://docs.obsidian.md/Reference/TypeScript+API/TFolder) | |
| [ToggleComponent](https://docs.obsidian.md/Reference/TypeScript+API/ToggleComponent) | |
| [TooltipOptions](https://docs.obsidian.md/Reference/TypeScript+API/TooltipOptions) | |
| [TooltipPlacement](https://docs.obsidian.md/Reference/TypeScript+API/TooltipPlacement) | |
| [UserEvent](https://docs.obsidian.md/Reference/TypeScript+API/UserEvent) | |
| [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent) | |
| [Vault](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [ViewState](https://docs.obsidian.md/Reference/TypeScript+API/ViewState) | |
| [ViewStateResult](https://docs.obsidian.md/Reference/TypeScript+API/ViewStateResult) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| [WorkspaceContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| [WorkspaceFloating](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceFloating) | |
| [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| [WorkspaceMobileDrawer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | |
| [WorkspaceParent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | |
| [WorkspaceRibbon](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | |
| [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | |
| [WorkspaceSidedock](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) | |
| [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) | |
| [WorkspaceTabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) | |
| [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow) | |
| [WorkspaceWindowInitData](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindowInitData) | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # SearchComponent | |
| ```yaml is-loaded | |
| aliases: "SearchComponent" | |
| cssclasses: hide-title | |
| ``` | |
| [`SearchComponent`](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent) | |
| ## SearchComponent class | |
| **Signature:** | |
| ```typescript is-loaded | |
| export class SearchComponent extends AbstractTextComponent<HTMLInputElement> | |
| ``` | |
| **Extends:** [`AbstractTextComponent`](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) ```<``HTMLInputElement``>``` | |
| ## Constructors | |
| | Constructor | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`(constructor)(containerEl)`](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent/(constructor)) | | Constructs a new instance of the `SearchComponent` class | | |
| ## Properties | |
| | Property | Modifiers | Type | Description | | |
| | --- | --- | --- | --- | | |
| | [`clearButtonEl`](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent/clearButtonEl) | | `HTMLElement` | | | |
| | [`disabled`](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent/disabled) | | `boolean` | (Inherited from [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent)) | | |
| | [`inputEl`](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent/inputEl) | | `T` | (Inherited from [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent)) | | |
| ## Methods | |
| | Method | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`getValue()`](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent/getValue) | | (Inherited from [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent)) | | |
| | [`onChange(callback)`](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent/onChange) | | (Inherited from [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent)) | | |
| | [`onChanged()`](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent/onChanged) | | | | |
| | [`registerOptionListener(listeners, key)`](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent/registerOptionListener) | | (Inherited from [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent)) | | |
| | [`setDisabled(disabled)`](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent/setDisabled) | | (Inherited from [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent)) | | |
| | [`setPlaceholder(placeholder)`](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent/setPlaceholder) | | (Inherited from [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent)) | | |
| | [`setValue(value)`](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent/setValue) | | (Inherited from [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent)) | | |
| | [`then(cb)`](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent/then) | | Facilitates chaining<br>(Inherited from [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent)) | | |
| Links to this page | |
| [(constructor)](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent/(constructor)) | |
| [addSearch](https://docs.obsidian.md/Reference/TypeScript+API/Setting/addSearch) | |
| [clearButtonEl](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent/clearButtonEl) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [onChanged](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent/onChanged) | |
| SearchComponent | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| SearchComponent class | |
| Constructors | |
| Properties | |
| Methods | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## MarkdownPostProcessorContext | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| AbstractInputSuggest | |
| AbstractTextComponent | |
| App | |
| BaseComponent | |
| BlockCache | |
| BlockSubpathResult | |
| ButtonComponent | |
| CachedMetadata | |
| CacheItem | |
| CapacitorAdapter | |
| CloseableComponent | |
| ColorComponent | |
| Command | |
| Component | |
| DataAdapter | |
| DataWriteOptions | |
| Debouncer | |
| DropdownComponent | |
| Editor | |
| EditorChange | |
| EditorPosition | |
| EditorRange | |
| EditorRangeOrCaret | |
| EditorScrollInfo | |
| EditorSelection | |
| EditorSelectionOrCaret | |
| EditorSuggest | |
| EditorSuggestContext | |
| EditorSuggestTriggerInfo | |
| EditorTransaction | |
| Events | |
| ExtraButtonComponent | |
| FileManager | |
| FileStats | |
| FileSystemAdapter | |
| FileView | |
| FootnoteCache | |
| FootnoteRefCache | |
| FootnoteSubpathResult | |
| FrontMatterInfo | |
| FrontmatterLinkCache | |
| FuzzyMatch | |
| FuzzySuggestModal | |
| HeadingCache | |
| HeadingSubpathResult | |
| Hotkey | |
| HoverLinkSource | |
| HoverParent | |
| HoverPopover | |
| HSL | |
| Instruction | |
| ISuggestOwner | |
| ItemView | |
| Keymap | |
| KeymapContext | |
| KeymapEventHandler | |
| KeymapInfo | |
| ListedFiles | |
| ListItemCache | |
| LivePreviewStateType | |
| Loc | |
| MarkdownEditView | |
| MarkdownFileInfo | |
| MarkdownPostProcessor | |
| MarkdownPostProcessorContext | |
| MarkdownPreviewRenderer | |
| MarkdownPreviewView | |
| MarkdownRenderChild | |
| MarkdownRenderer | |
| MarkdownSectionInformation | |
| MarkdownSubView | |
| MarkdownView | |
| Menu | |
| MenuItem | |
| MenuPositionDef | |
| MetadataCache | |
| Modal | |
| MomentFormatComponent | |
| Notice | |
| ObsidianProtocolData | |
| OpenViewState | |
| Plugin | |
| PluginManifest | |
| PluginSettingTab | |
| Point | |
| PopoverSuggest | |
| Pos | |
| ProgressBarComponent | |
| Reference | |
| ReferenceLinkCache | |
| RequestUrlParam | |
| RequestUrlResponse | |
| RequestUrlResponsePromise | |
| RGB | |
| Scope | |
| SearchComponent | |
| SearchResult | |
| SearchResultContainer | |
| SectionCache | |
| Setting | |
| SettingTab | |
| SliderComponent | |
| Stat | |
| SubpathResult | |
| SuggestModal | |
| TAbstractFile | |
| TagCache | |
| Tasks | |
| TextAreaComponent | |
| TextComponent | |
| TextFileView | |
| TFile | |
| TFolder | |
| ToggleComponent | |
| TooltipOptions | |
| ValueComponent | |
| Vault | |
| View | |
| ViewState | |
| ViewStateResult | |
| Workspace | |
| WorkspaceContainer | |
| WorkspaceFloating | |
| WorkspaceItem | |
| WorkspaceLeaf | |
| WorkspaceMobileDrawer | |
| WorkspaceRoot | |
| WorkspaceSidedock | |
| WorkspaceSplit | |
| WorkspaceTabs | |
| WorkspaceWindow | |
| WorkspaceWindowInitData | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) | |
| [addIcon](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) | |
| [apiVersion](https://docs.obsidian.md/Reference/TypeScript+API/apiVersion) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [arrayBufferToBase64](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToBase64) | |
| [arrayBufferToHex](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToHex) | |
| [base64ToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/base64ToArrayBuffer) | |
| [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent) | |
| [BlockCache](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) | |
| [BlockSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/BlockSubpathResult) | |
| [ButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ButtonComponent) | |
| [CachedMetadata](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| [CacheItem](https://docs.obsidian.md/Reference/TypeScript+API/CacheItem) | |
| [CapacitorAdapter](https://docs.obsidian.md/Reference/TypeScript+API/CapacitorAdapter) | |
| [CloseableComponent](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| [ColorComponent](https://docs.obsidian.md/Reference/TypeScript+API/ColorComponent) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| [Constructor](https://docs.obsidian.md/Reference/TypeScript+API/Constructor) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [DataWriteOptions](https://docs.obsidian.md/Reference/TypeScript+API/DataWriteOptions) | |
| [debounce](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| [Debouncer](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) | |
| [displayTooltip](https://docs.obsidian.md/Reference/TypeScript+API/displayTooltip) | |
| [DropdownComponent](https://docs.obsidian.md/Reference/TypeScript+API/DropdownComponent) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| [EditorChange](https://docs.obsidian.md/Reference/TypeScript+API/EditorChange) | |
| [EditorCommandName](https://docs.obsidian.md/Reference/TypeScript+API/EditorCommandName) | |
| [editorEditorField](https://docs.obsidian.md/Reference/TypeScript+API/editorEditorField) | |
| [editorInfoField](https://docs.obsidian.md/Reference/TypeScript+API/editorInfoField) | |
| [editorLivePreviewField](https://docs.obsidian.md/Reference/TypeScript+API/editorLivePreviewField) | |
| [EditorPosition](https://docs.obsidian.md/Reference/TypeScript+API/EditorPosition) | |
| [EditorRange](https://docs.obsidian.md/Reference/TypeScript+API/EditorRange) | |
| [EditorRangeOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorRangeOrCaret) | |
| [EditorScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorScrollInfo) | |
| [EditorSelection](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelection) | |
| [EditorSelectionOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelectionOrCaret) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [EditorSuggestTriggerInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestTriggerInfo) | |
| [EditorTransaction](https://docs.obsidian.md/Reference/TypeScript+API/EditorTransaction) | |
| [editorViewField](https://docs.obsidian.md/Reference/TypeScript+API/editorViewField) | |
| [EmbedCache](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) | |
| [EventRef](https://docs.obsidian.md/Reference/TypeScript+API/EventRef) | |
| [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| [ExtraButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ExtraButtonComponent) | |
| [FileManager](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | |
| [FileStats](https://docs.obsidian.md/Reference/TypeScript+API/FileStats) | |
| [FileSystemAdapter](https://docs.obsidian.md/Reference/TypeScript+API/FileSystemAdapter) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [finishRenderMath](https://docs.obsidian.md/Reference/TypeScript+API/finishRenderMath) | |
| [FootnoteCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) | |
| [FootnoteRefCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) | |
| [FootnoteSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteSubpathResult) | |
| [FrontMatterCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | |
| [FrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterInfo) | |
| [FrontmatterLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) | |
| [FuzzyMatch](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getBlobArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/getBlobArrayBuffer) | |
| [getFrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/getFrontMatterInfo) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/getIcon) | |
| [getIconIds](https://docs.obsidian.md/Reference/TypeScript+API/getIconIds) | |
| [getLanguage](https://docs.obsidian.md/Reference/TypeScript+API/getLanguage) | |
| [getLinkpath](https://docs.obsidian.md/Reference/TypeScript+API/getLinkpath) | |
| [HeadingCache](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) | |
| [HeadingSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/HeadingSubpathResult) | |
| [HexString](https://docs.obsidian.md/Reference/TypeScript+API/HexString) | |
| [hexToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/hexToArrayBuffer) | |
| [Hotkey](https://docs.obsidian.md/Reference/TypeScript+API/Hotkey) | |
| [HoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/HoverLinkSource) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [HSL](https://docs.obsidian.md/Reference/TypeScript+API/HSL) | |
| [htmlToMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/htmlToMarkdown) | |
| [IconName](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Instruction](https://docs.obsidian.md/Reference/TypeScript+API/Instruction) | |
| [ISuggestOwner](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [iterateRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateRefs) | |
| [Keymap](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | |
| [KeymapContext](https://docs.obsidian.md/Reference/TypeScript+API/KeymapContext) | |
| [KeymapEventHandler](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventHandler) | |
| [KeymapEventListener](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventListener) | |
| [KeymapInfo](https://docs.obsidian.md/Reference/TypeScript+API/KeymapInfo) | |
| [LinkCache](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) | |
| [ListedFiles](https://docs.obsidian.md/Reference/TypeScript+API/ListedFiles) | |
| [ListItemCache](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) | |
| [livePreviewState](https://docs.obsidian.md/Reference/TypeScript+API/livePreviewState) | |
| [LivePreviewStateType](https://docs.obsidian.md/Reference/TypeScript+API/LivePreviewStateType) | |
| [loadMathJax](https://docs.obsidian.md/Reference/TypeScript+API/loadMathJax) | |
| [loadMermaid](https://docs.obsidian.md/Reference/TypeScript+API/loadMermaid) | |
| [loadPdfJs](https://docs.obsidian.md/Reference/TypeScript+API/loadPdfJs) | |
| [loadPrism](https://docs.obsidian.md/Reference/TypeScript+API/loadPrism) | |
| [Loc](https://docs.obsidian.md/Reference/TypeScript+API/Loc) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessor) | |
| [MarkdownPostProcessorContext](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext) | |
| [MarkdownPreviewEvents](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents) | |
| [MarkdownPreviewRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewRenderer) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownSectionInformation](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSectionInformation) | |
| [MarkdownSubView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSubView) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [MarkdownViewModeType](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownViewModeType) | |
| [Menu](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| [MenuItem](https://docs.obsidian.md/Reference/TypeScript+API/MenuItem) | |
| [MenuPositionDef](https://docs.obsidian.md/Reference/TypeScript+API/MenuPositionDef) | |
| [MenuSeparator](https://docs.obsidian.md/Reference/TypeScript+API/MenuSeparator) | |
| [MetadataCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | |
| [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| [Modifier](https://docs.obsidian.md/Reference/TypeScript+API/Modifier) | |
| [moment](https://docs.obsidian.md/Reference/TypeScript+API/moment) | |
| [MomentFormatComponent](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent) | |
| [normalizePath](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath) | |
| [Notice](https://docs.obsidian.md/Reference/TypeScript+API/Notice) | |
| [ObsidianProtocolData](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolData) | |
| [ObsidianProtocolHandler](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolHandler) | |
| [OpenViewState](https://docs.obsidian.md/Reference/TypeScript+API/OpenViewState) | |
| [PaneType](https://docs.obsidian.md/Reference/TypeScript+API/PaneType) | |
| [parseFrontMatterAliases](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterAliases) | |
| [parseFrontMatterEntry](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterEntry) | |
| [parseFrontMatterStringArray](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterStringArray) | |
| [parseFrontMatterTags](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterTags) | |
| [parseLinktext](https://docs.obsidian.md/Reference/TypeScript+API/parseLinktext) | |
| [parseYaml](https://docs.obsidian.md/Reference/TypeScript+API/parseYaml) | |
| [Platform](https://docs.obsidian.md/Reference/TypeScript+API/Platform) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [PluginManifest](https://docs.obsidian.md/Reference/TypeScript+API/PluginManifest) | |
| [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab) | |
| [Point](https://docs.obsidian.md/Reference/TypeScript+API/Point) | |
| [PopoverState](https://docs.obsidian.md/Reference/TypeScript+API/PopoverState) | |
| [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) | |
| [Pos](https://docs.obsidian.md/Reference/TypeScript+API/Pos) | |
| [prepareFuzzySearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareFuzzySearch) | |
| [prepareSimpleSearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareSimpleSearch) | |
| [ProgressBarComponent](https://docs.obsidian.md/Reference/TypeScript+API/ProgressBarComponent) | |
| [Reference](https://docs.obsidian.md/Reference/TypeScript+API/Reference) | |
| [ReferenceCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceCache) | |
| [ReferenceLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceLinkCache) | |
| [removeIcon](https://docs.obsidian.md/Reference/TypeScript+API/removeIcon) | |
| [renderMatches](https://docs.obsidian.md/Reference/TypeScript+API/renderMatches) | |
| [renderMath](https://docs.obsidian.md/Reference/TypeScript+API/renderMath) | |
| [renderResults](https://docs.obsidian.md/Reference/TypeScript+API/renderResults) | |
| [request](https://docs.obsidian.md/Reference/TypeScript+API/request) | |
| [requestUrl](https://docs.obsidian.md/Reference/TypeScript+API/requestUrl) | |
| [RequestUrlParam](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlParam) | |
| [RequestUrlResponse](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponse) | |
| [RequestUrlResponsePromise](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponsePromise) | |
| [requireApiVersion](https://docs.obsidian.md/Reference/TypeScript+API/requireApiVersion) | |
| [resolveSubpath](https://docs.obsidian.md/Reference/TypeScript+API/resolveSubpath) | |
| [RGB](https://docs.obsidian.md/Reference/TypeScript+API/RGB) | |
| [sanitizeHTMLToDom](https://docs.obsidian.md/Reference/TypeScript+API/sanitizeHTMLToDom) | |
| [Scope](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | |
| [SearchComponent](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent) | |
| [SearchMatches](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatches) | |
| [SearchMatchPart](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatchPart) | |
| [SearchResult](https://docs.obsidian.md/Reference/TypeScript+API/SearchResult) | |
| [SearchResultContainer](https://docs.obsidian.md/Reference/TypeScript+API/SearchResultContainer) | |
| [SectionCache](https://docs.obsidian.md/Reference/TypeScript+API/SectionCache) | |
| [setIcon](https://docs.obsidian.md/Reference/TypeScript+API/setIcon) | |
| [Setting](https://docs.obsidian.md/Reference/TypeScript+API/Setting) | |
| [SettingTab](https://docs.obsidian.md/Reference/TypeScript+API/SettingTab) | |
| [setTooltip](https://docs.obsidian.md/Reference/TypeScript+API/setTooltip) | |
| [Side](https://docs.obsidian.md/Reference/TypeScript+API/Side) | |
| [SliderComponent](https://docs.obsidian.md/Reference/TypeScript+API/SliderComponent) | |
| [sortSearchResults](https://docs.obsidian.md/Reference/TypeScript+API/sortSearchResults) | |
| [SplitDirection](https://docs.obsidian.md/Reference/TypeScript+API/SplitDirection) | |
| [Stat](https://docs.obsidian.md/Reference/TypeScript+API/Stat) | |
| [stringifyYaml](https://docs.obsidian.md/Reference/TypeScript+API/stringifyYaml) | |
| [stripHeading](https://docs.obsidian.md/Reference/TypeScript+API/stripHeading) | |
| [stripHeadingForLink](https://docs.obsidian.md/Reference/TypeScript+API/stripHeadingForLink) | |
| [SubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/SubpathResult) | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) | |
| [TagCache](https://docs.obsidian.md/Reference/TypeScript+API/TagCache) | |
| [Tasks](https://docs.obsidian.md/Reference/TypeScript+API/Tasks) | |
| [TextAreaComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextAreaComponent) | |
| [TextComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [TFile](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | |
| [TFolder](https://docs.obsidian.md/Reference/TypeScript+API/TFolder) | |
| [ToggleComponent](https://docs.obsidian.md/Reference/TypeScript+API/ToggleComponent) | |
| [TooltipOptions](https://docs.obsidian.md/Reference/TypeScript+API/TooltipOptions) | |
| [TooltipPlacement](https://docs.obsidian.md/Reference/TypeScript+API/TooltipPlacement) | |
| [UserEvent](https://docs.obsidian.md/Reference/TypeScript+API/UserEvent) | |
| [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent) | |
| [Vault](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [ViewState](https://docs.obsidian.md/Reference/TypeScript+API/ViewState) | |
| [ViewStateResult](https://docs.obsidian.md/Reference/TypeScript+API/ViewStateResult) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| [WorkspaceContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| [WorkspaceFloating](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceFloating) | |
| [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| [WorkspaceMobileDrawer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | |
| [WorkspaceParent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | |
| [WorkspaceRibbon](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | |
| [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | |
| [WorkspaceSidedock](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) | |
| [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) | |
| [WorkspaceTabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) | |
| [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow) | |
| [WorkspaceWindowInitData](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindowInitData) | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # MarkdownPostProcessorContext | |
| ```yaml is-loaded | |
| aliases: "MarkdownPostProcessorContext" | |
| cssclasses: hide-title | |
| ``` | |
| [`MarkdownPostProcessorContext`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext) | |
| ## MarkdownPostProcessorContext interface | |
| **Signature:** | |
| ```typescript is-loaded | |
| export interface MarkdownPostProcessorContext | |
| ``` | |
| ## Properties | |
| | Property | Modifiers | Type | Description | | |
| | --- | --- | --- | --- | | |
| | [`docId`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext/docId) | | `string` | | | |
| | [`frontmatter`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext/frontmatter) | | `any | null | undefined` | | | |
| | [`sourcePath`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext/sourcePath) | | `string` | The path to the associated file. Any links are assumed to be relative to the `sourcePath`. | | |
| ## Methods | |
| | Method | Description | | |
| | --- | --- | | |
| | [`addChild(child)`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext/addChild) | Adds a child component that will have its lifecycle managed by the renderer.<br>Use this to add a dependent child to the renderer such that if the containerEl of the child is ever removed, the component's unload will be called. | | |
| | [`getSectionInfo(el)`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext/getSectionInfo) | Gets the section information of this element at this point in time. Only call this function right before you need this information to get the most up-to-date version. This function may also return null in many circumstances; if you use it, you must be prepared to deal with nulls. | | |
| Links to this page | |
| [addChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext/addChild) | |
| [createCodeBlockPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewRenderer/createCodeBlockPostProcessor) | |
| [docId](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext/docId) | |
| [frontmatter](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext/frontmatter) | |
| [getSectionInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext/getSectionInfo) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [registerMarkdownCodeBlockProcessor](https://docs.obsidian.md/Reference/TypeScript+API/Plugin/registerMarkdownCodeBlockProcessor) | |
| [sourcePath](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext/sourcePath) | |
| MarkdownPostProcessorContext | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| MarkdownPostProcessorContext interface | |
| Properties | |
| Methods | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Debounce Function | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| AbstractInputSuggest | |
| AbstractTextComponent | |
| App | |
| BaseComponent | |
| BlockCache | |
| BlockSubpathResult | |
| ButtonComponent | |
| CachedMetadata | |
| CacheItem | |
| CapacitorAdapter | |
| CloseableComponent | |
| ColorComponent | |
| Command | |
| Component | |
| DataAdapter | |
| DataWriteOptions | |
| Debouncer | |
| DropdownComponent | |
| Editor | |
| EditorChange | |
| EditorPosition | |
| EditorRange | |
| EditorRangeOrCaret | |
| EditorScrollInfo | |
| EditorSelection | |
| EditorSelectionOrCaret | |
| EditorSuggest | |
| EditorSuggestContext | |
| EditorSuggestTriggerInfo | |
| EditorTransaction | |
| Events | |
| ExtraButtonComponent | |
| FileManager | |
| FileStats | |
| FileSystemAdapter | |
| FileView | |
| FootnoteCache | |
| FootnoteRefCache | |
| FootnoteSubpathResult | |
| FrontMatterInfo | |
| FrontmatterLinkCache | |
| FuzzyMatch | |
| FuzzySuggestModal | |
| HeadingCache | |
| HeadingSubpathResult | |
| Hotkey | |
| HoverLinkSource | |
| HoverParent | |
| HoverPopover | |
| HSL | |
| Instruction | |
| ISuggestOwner | |
| ItemView | |
| Keymap | |
| KeymapContext | |
| KeymapEventHandler | |
| KeymapInfo | |
| ListedFiles | |
| ListItemCache | |
| LivePreviewStateType | |
| Loc | |
| MarkdownEditView | |
| MarkdownFileInfo | |
| MarkdownPostProcessor | |
| MarkdownPostProcessorContext | |
| MarkdownPreviewRenderer | |
| MarkdownPreviewView | |
| MarkdownRenderChild | |
| MarkdownRenderer | |
| MarkdownSectionInformation | |
| MarkdownSubView | |
| MarkdownView | |
| Menu | |
| MenuItem | |
| MenuPositionDef | |
| MetadataCache | |
| Modal | |
| MomentFormatComponent | |
| Notice | |
| ObsidianProtocolData | |
| OpenViewState | |
| Plugin | |
| PluginManifest | |
| PluginSettingTab | |
| Point | |
| PopoverSuggest | |
| Pos | |
| ProgressBarComponent | |
| Reference | |
| ReferenceLinkCache | |
| RequestUrlParam | |
| RequestUrlResponse | |
| RequestUrlResponsePromise | |
| RGB | |
| Scope | |
| SearchComponent | |
| SearchResult | |
| SearchResultContainer | |
| SectionCache | |
| Setting | |
| SettingTab | |
| SliderComponent | |
| Stat | |
| SubpathResult | |
| SuggestModal | |
| TAbstractFile | |
| TagCache | |
| Tasks | |
| TextAreaComponent | |
| TextComponent | |
| TextFileView | |
| TFile | |
| TFolder | |
| ToggleComponent | |
| TooltipOptions | |
| ValueComponent | |
| Vault | |
| View | |
| ViewState | |
| ViewStateResult | |
| Workspace | |
| WorkspaceContainer | |
| WorkspaceFloating | |
| WorkspaceItem | |
| WorkspaceLeaf | |
| WorkspaceMobileDrawer | |
| WorkspaceRoot | |
| WorkspaceSidedock | |
| WorkspaceSplit | |
| WorkspaceTabs | |
| WorkspaceWindow | |
| WorkspaceWindowInitData | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) | |
| [addIcon](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) | |
| [apiVersion](https://docs.obsidian.md/Reference/TypeScript+API/apiVersion) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [arrayBufferToBase64](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToBase64) | |
| [arrayBufferToHex](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToHex) | |
| [base64ToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/base64ToArrayBuffer) | |
| [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent) | |
| [BlockCache](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) | |
| [BlockSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/BlockSubpathResult) | |
| [ButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ButtonComponent) | |
| [CachedMetadata](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| [CacheItem](https://docs.obsidian.md/Reference/TypeScript+API/CacheItem) | |
| [CapacitorAdapter](https://docs.obsidian.md/Reference/TypeScript+API/CapacitorAdapter) | |
| [CloseableComponent](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| [ColorComponent](https://docs.obsidian.md/Reference/TypeScript+API/ColorComponent) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| [Constructor](https://docs.obsidian.md/Reference/TypeScript+API/Constructor) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [DataWriteOptions](https://docs.obsidian.md/Reference/TypeScript+API/DataWriteOptions) | |
| [debounce](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| [Debouncer](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) | |
| [displayTooltip](https://docs.obsidian.md/Reference/TypeScript+API/displayTooltip) | |
| [DropdownComponent](https://docs.obsidian.md/Reference/TypeScript+API/DropdownComponent) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| [EditorChange](https://docs.obsidian.md/Reference/TypeScript+API/EditorChange) | |
| [EditorCommandName](https://docs.obsidian.md/Reference/TypeScript+API/EditorCommandName) | |
| [editorEditorField](https://docs.obsidian.md/Reference/TypeScript+API/editorEditorField) | |
| [editorInfoField](https://docs.obsidian.md/Reference/TypeScript+API/editorInfoField) | |
| [editorLivePreviewField](https://docs.obsidian.md/Reference/TypeScript+API/editorLivePreviewField) | |
| [EditorPosition](https://docs.obsidian.md/Reference/TypeScript+API/EditorPosition) | |
| [EditorRange](https://docs.obsidian.md/Reference/TypeScript+API/EditorRange) | |
| [EditorRangeOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorRangeOrCaret) | |
| [EditorScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorScrollInfo) | |
| [EditorSelection](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelection) | |
| [EditorSelectionOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelectionOrCaret) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [EditorSuggestTriggerInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestTriggerInfo) | |
| [EditorTransaction](https://docs.obsidian.md/Reference/TypeScript+API/EditorTransaction) | |
| [editorViewField](https://docs.obsidian.md/Reference/TypeScript+API/editorViewField) | |
| [EmbedCache](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) | |
| [EventRef](https://docs.obsidian.md/Reference/TypeScript+API/EventRef) | |
| [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| [ExtraButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ExtraButtonComponent) | |
| [FileManager](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | |
| [FileStats](https://docs.obsidian.md/Reference/TypeScript+API/FileStats) | |
| [FileSystemAdapter](https://docs.obsidian.md/Reference/TypeScript+API/FileSystemAdapter) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [finishRenderMath](https://docs.obsidian.md/Reference/TypeScript+API/finishRenderMath) | |
| [FootnoteCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) | |
| [FootnoteRefCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) | |
| [FootnoteSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteSubpathResult) | |
| [FrontMatterCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | |
| [FrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterInfo) | |
| [FrontmatterLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) | |
| [FuzzyMatch](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getBlobArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/getBlobArrayBuffer) | |
| [getFrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/getFrontMatterInfo) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/getIcon) | |
| [getIconIds](https://docs.obsidian.md/Reference/TypeScript+API/getIconIds) | |
| [getLanguage](https://docs.obsidian.md/Reference/TypeScript+API/getLanguage) | |
| [getLinkpath](https://docs.obsidian.md/Reference/TypeScript+API/getLinkpath) | |
| [HeadingCache](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) | |
| [HeadingSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/HeadingSubpathResult) | |
| [HexString](https://docs.obsidian.md/Reference/TypeScript+API/HexString) | |
| [hexToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/hexToArrayBuffer) | |
| [Hotkey](https://docs.obsidian.md/Reference/TypeScript+API/Hotkey) | |
| [HoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/HoverLinkSource) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [HSL](https://docs.obsidian.md/Reference/TypeScript+API/HSL) | |
| [htmlToMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/htmlToMarkdown) | |
| [IconName](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Instruction](https://docs.obsidian.md/Reference/TypeScript+API/Instruction) | |
| [ISuggestOwner](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [iterateRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateRefs) | |
| [Keymap](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | |
| [KeymapContext](https://docs.obsidian.md/Reference/TypeScript+API/KeymapContext) | |
| [KeymapEventHandler](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventHandler) | |
| [KeymapEventListener](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventListener) | |
| [KeymapInfo](https://docs.obsidian.md/Reference/TypeScript+API/KeymapInfo) | |
| [LinkCache](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) | |
| [ListedFiles](https://docs.obsidian.md/Reference/TypeScript+API/ListedFiles) | |
| [ListItemCache](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) | |
| [livePreviewState](https://docs.obsidian.md/Reference/TypeScript+API/livePreviewState) | |
| [LivePreviewStateType](https://docs.obsidian.md/Reference/TypeScript+API/LivePreviewStateType) | |
| [loadMathJax](https://docs.obsidian.md/Reference/TypeScript+API/loadMathJax) | |
| [loadMermaid](https://docs.obsidian.md/Reference/TypeScript+API/loadMermaid) | |
| [loadPdfJs](https://docs.obsidian.md/Reference/TypeScript+API/loadPdfJs) | |
| [loadPrism](https://docs.obsidian.md/Reference/TypeScript+API/loadPrism) | |
| [Loc](https://docs.obsidian.md/Reference/TypeScript+API/Loc) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessor) | |
| [MarkdownPostProcessorContext](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext) | |
| [MarkdownPreviewEvents](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents) | |
| [MarkdownPreviewRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewRenderer) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownSectionInformation](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSectionInformation) | |
| [MarkdownSubView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSubView) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [MarkdownViewModeType](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownViewModeType) | |
| [Menu](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| [MenuItem](https://docs.obsidian.md/Reference/TypeScript+API/MenuItem) | |
| [MenuPositionDef](https://docs.obsidian.md/Reference/TypeScript+API/MenuPositionDef) | |
| [MenuSeparator](https://docs.obsidian.md/Reference/TypeScript+API/MenuSeparator) | |
| [MetadataCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | |
| [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| [Modifier](https://docs.obsidian.md/Reference/TypeScript+API/Modifier) | |
| [moment](https://docs.obsidian.md/Reference/TypeScript+API/moment) | |
| [MomentFormatComponent](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent) | |
| [normalizePath](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath) | |
| [Notice](https://docs.obsidian.md/Reference/TypeScript+API/Notice) | |
| [ObsidianProtocolData](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolData) | |
| [ObsidianProtocolHandler](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolHandler) | |
| [OpenViewState](https://docs.obsidian.md/Reference/TypeScript+API/OpenViewState) | |
| [PaneType](https://docs.obsidian.md/Reference/TypeScript+API/PaneType) | |
| [parseFrontMatterAliases](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterAliases) | |
| [parseFrontMatterEntry](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterEntry) | |
| [parseFrontMatterStringArray](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterStringArray) | |
| [parseFrontMatterTags](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterTags) | |
| [parseLinktext](https://docs.obsidian.md/Reference/TypeScript+API/parseLinktext) | |
| [parseYaml](https://docs.obsidian.md/Reference/TypeScript+API/parseYaml) | |
| [Platform](https://docs.obsidian.md/Reference/TypeScript+API/Platform) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [PluginManifest](https://docs.obsidian.md/Reference/TypeScript+API/PluginManifest) | |
| [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab) | |
| [Point](https://docs.obsidian.md/Reference/TypeScript+API/Point) | |
| [PopoverState](https://docs.obsidian.md/Reference/TypeScript+API/PopoverState) | |
| [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) | |
| [Pos](https://docs.obsidian.md/Reference/TypeScript+API/Pos) | |
| [prepareFuzzySearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareFuzzySearch) | |
| [prepareSimpleSearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareSimpleSearch) | |
| [ProgressBarComponent](https://docs.obsidian.md/Reference/TypeScript+API/ProgressBarComponent) | |
| [Reference](https://docs.obsidian.md/Reference/TypeScript+API/Reference) | |
| [ReferenceCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceCache) | |
| [ReferenceLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceLinkCache) | |
| [removeIcon](https://docs.obsidian.md/Reference/TypeScript+API/removeIcon) | |
| [renderMatches](https://docs.obsidian.md/Reference/TypeScript+API/renderMatches) | |
| [renderMath](https://docs.obsidian.md/Reference/TypeScript+API/renderMath) | |
| [renderResults](https://docs.obsidian.md/Reference/TypeScript+API/renderResults) | |
| [request](https://docs.obsidian.md/Reference/TypeScript+API/request) | |
| [requestUrl](https://docs.obsidian.md/Reference/TypeScript+API/requestUrl) | |
| [RequestUrlParam](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlParam) | |
| [RequestUrlResponse](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponse) | |
| [RequestUrlResponsePromise](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponsePromise) | |
| [requireApiVersion](https://docs.obsidian.md/Reference/TypeScript+API/requireApiVersion) | |
| [resolveSubpath](https://docs.obsidian.md/Reference/TypeScript+API/resolveSubpath) | |
| [RGB](https://docs.obsidian.md/Reference/TypeScript+API/RGB) | |
| [sanitizeHTMLToDom](https://docs.obsidian.md/Reference/TypeScript+API/sanitizeHTMLToDom) | |
| [Scope](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | |
| [SearchComponent](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent) | |
| [SearchMatches](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatches) | |
| [SearchMatchPart](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatchPart) | |
| [SearchResult](https://docs.obsidian.md/Reference/TypeScript+API/SearchResult) | |
| [SearchResultContainer](https://docs.obsidian.md/Reference/TypeScript+API/SearchResultContainer) | |
| [SectionCache](https://docs.obsidian.md/Reference/TypeScript+API/SectionCache) | |
| [setIcon](https://docs.obsidian.md/Reference/TypeScript+API/setIcon) | |
| [Setting](https://docs.obsidian.md/Reference/TypeScript+API/Setting) | |
| [SettingTab](https://docs.obsidian.md/Reference/TypeScript+API/SettingTab) | |
| [setTooltip](https://docs.obsidian.md/Reference/TypeScript+API/setTooltip) | |
| [Side](https://docs.obsidian.md/Reference/TypeScript+API/Side) | |
| [SliderComponent](https://docs.obsidian.md/Reference/TypeScript+API/SliderComponent) | |
| [sortSearchResults](https://docs.obsidian.md/Reference/TypeScript+API/sortSearchResults) | |
| [SplitDirection](https://docs.obsidian.md/Reference/TypeScript+API/SplitDirection) | |
| [Stat](https://docs.obsidian.md/Reference/TypeScript+API/Stat) | |
| [stringifyYaml](https://docs.obsidian.md/Reference/TypeScript+API/stringifyYaml) | |
| [stripHeading](https://docs.obsidian.md/Reference/TypeScript+API/stripHeading) | |
| [stripHeadingForLink](https://docs.obsidian.md/Reference/TypeScript+API/stripHeadingForLink) | |
| [SubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/SubpathResult) | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) | |
| [TagCache](https://docs.obsidian.md/Reference/TypeScript+API/TagCache) | |
| [Tasks](https://docs.obsidian.md/Reference/TypeScript+API/Tasks) | |
| [TextAreaComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextAreaComponent) | |
| [TextComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [TFile](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | |
| [TFolder](https://docs.obsidian.md/Reference/TypeScript+API/TFolder) | |
| [ToggleComponent](https://docs.obsidian.md/Reference/TypeScript+API/ToggleComponent) | |
| [TooltipOptions](https://docs.obsidian.md/Reference/TypeScript+API/TooltipOptions) | |
| [TooltipPlacement](https://docs.obsidian.md/Reference/TypeScript+API/TooltipPlacement) | |
| [UserEvent](https://docs.obsidian.md/Reference/TypeScript+API/UserEvent) | |
| [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent) | |
| [Vault](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [ViewState](https://docs.obsidian.md/Reference/TypeScript+API/ViewState) | |
| [ViewStateResult](https://docs.obsidian.md/Reference/TypeScript+API/ViewStateResult) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| [WorkspaceContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| [WorkspaceFloating](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceFloating) | |
| [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| [WorkspaceMobileDrawer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | |
| [WorkspaceParent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | |
| [WorkspaceRibbon](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | |
| [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | |
| [WorkspaceSidedock](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) | |
| [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) | |
| [WorkspaceTabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) | |
| [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow) | |
| [WorkspaceWindowInitData](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindowInitData) | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # debounce | |
| ```yaml is-loaded | |
| aliases: "debounce" | |
| cssclasses: hide-title | |
| ``` | |
| [`debounce`](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| ## debounce() function | |
| A standard debounce function. Use this to have a time-delayed function only be called once in a given timeframe. | |
| **Signature:** | |
| ```typescript is-loaded | |
| export function debounce<T extends unknown[], V>(cb: (...args: [...T]) => V, timeout?: number, resetTimer?: boolean): Debouncer<T, V>; | |
| ``` | |
| ## Parameters | |
| | Parameter | Type | Description | | |
| | --- | --- | --- | | |
| | `cb` | `(...args: [...T]) => V` | The function to call. | | |
| | `timeout` | `number` | _(Optional)_ The timeout to wait, in milliseconds | | |
| | `resetTimer` | `boolean` | _(Optional)_ Whether to reset the timeout when the debouncer is called again. | | |
| **Returns:** | |
| [`Debouncer`](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) `<T, V>` | |
| a debounced function that takes the same parameter as the original function. | |
| ## Example | |
| ```ts is-loaded | |
| const debounced = debounce((text: string) => { | |
| console.log(text); | |
| }, 1000, true); | |
| debounced('Hello world'); // this will not be printed | |
| await sleep(500); | |
| debounced('World, hello'); // this will be printed to the console. | |
| ``` | |
| Links to this page | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| debounce | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| debounce() function | |
| Parameters | |
| Example | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Markdown Render Child | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| AbstractInputSuggest | |
| AbstractTextComponent | |
| App | |
| BaseComponent | |
| BlockCache | |
| BlockSubpathResult | |
| ButtonComponent | |
| CachedMetadata | |
| CacheItem | |
| CapacitorAdapter | |
| CloseableComponent | |
| ColorComponent | |
| Command | |
| Component | |
| DataAdapter | |
| DataWriteOptions | |
| Debouncer | |
| DropdownComponent | |
| Editor | |
| EditorChange | |
| EditorPosition | |
| EditorRange | |
| EditorRangeOrCaret | |
| EditorScrollInfo | |
| EditorSelection | |
| EditorSelectionOrCaret | |
| EditorSuggest | |
| EditorSuggestContext | |
| EditorSuggestTriggerInfo | |
| EditorTransaction | |
| Events | |
| ExtraButtonComponent | |
| FileManager | |
| FileStats | |
| FileSystemAdapter | |
| FileView | |
| FootnoteCache | |
| FootnoteRefCache | |
| FootnoteSubpathResult | |
| FrontMatterInfo | |
| FrontmatterLinkCache | |
| FuzzyMatch | |
| FuzzySuggestModal | |
| HeadingCache | |
| HeadingSubpathResult | |
| Hotkey | |
| HoverLinkSource | |
| HoverParent | |
| HoverPopover | |
| HSL | |
| Instruction | |
| ISuggestOwner | |
| ItemView | |
| Keymap | |
| KeymapContext | |
| KeymapEventHandler | |
| KeymapInfo | |
| ListedFiles | |
| ListItemCache | |
| LivePreviewStateType | |
| Loc | |
| MarkdownEditView | |
| MarkdownFileInfo | |
| MarkdownPostProcessor | |
| MarkdownPostProcessorContext | |
| MarkdownPreviewRenderer | |
| MarkdownPreviewView | |
| MarkdownRenderChild | |
| MarkdownRenderer | |
| MarkdownSectionInformation | |
| MarkdownSubView | |
| MarkdownView | |
| Menu | |
| MenuItem | |
| MenuPositionDef | |
| MetadataCache | |
| Modal | |
| MomentFormatComponent | |
| Notice | |
| ObsidianProtocolData | |
| OpenViewState | |
| Plugin | |
| PluginManifest | |
| PluginSettingTab | |
| Point | |
| PopoverSuggest | |
| Pos | |
| ProgressBarComponent | |
| Reference | |
| ReferenceLinkCache | |
| RequestUrlParam | |
| RequestUrlResponse | |
| RequestUrlResponsePromise | |
| RGB | |
| Scope | |
| SearchComponent | |
| SearchResult | |
| SearchResultContainer | |
| SectionCache | |
| Setting | |
| SettingTab | |
| SliderComponent | |
| Stat | |
| SubpathResult | |
| SuggestModal | |
| TAbstractFile | |
| TagCache | |
| Tasks | |
| TextAreaComponent | |
| TextComponent | |
| TextFileView | |
| TFile | |
| TFolder | |
| ToggleComponent | |
| TooltipOptions | |
| ValueComponent | |
| Vault | |
| View | |
| ViewState | |
| ViewStateResult | |
| Workspace | |
| WorkspaceContainer | |
| WorkspaceFloating | |
| WorkspaceItem | |
| WorkspaceLeaf | |
| WorkspaceMobileDrawer | |
| WorkspaceRoot | |
| WorkspaceSidedock | |
| WorkspaceSplit | |
| WorkspaceTabs | |
| WorkspaceWindow | |
| WorkspaceWindowInitData | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) | |
| [addIcon](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) | |
| [apiVersion](https://docs.obsidian.md/Reference/TypeScript+API/apiVersion) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [arrayBufferToBase64](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToBase64) | |
| [arrayBufferToHex](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToHex) | |
| [base64ToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/base64ToArrayBuffer) | |
| [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent) | |
| [BlockCache](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) | |
| [BlockSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/BlockSubpathResult) | |
| [ButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ButtonComponent) | |
| [CachedMetadata](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| [CacheItem](https://docs.obsidian.md/Reference/TypeScript+API/CacheItem) | |
| [CapacitorAdapter](https://docs.obsidian.md/Reference/TypeScript+API/CapacitorAdapter) | |
| [CloseableComponent](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| [ColorComponent](https://docs.obsidian.md/Reference/TypeScript+API/ColorComponent) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| [Constructor](https://docs.obsidian.md/Reference/TypeScript+API/Constructor) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [DataWriteOptions](https://docs.obsidian.md/Reference/TypeScript+API/DataWriteOptions) | |
| [debounce](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| [Debouncer](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) | |
| [displayTooltip](https://docs.obsidian.md/Reference/TypeScript+API/displayTooltip) | |
| [DropdownComponent](https://docs.obsidian.md/Reference/TypeScript+API/DropdownComponent) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| [EditorChange](https://docs.obsidian.md/Reference/TypeScript+API/EditorChange) | |
| [EditorCommandName](https://docs.obsidian.md/Reference/TypeScript+API/EditorCommandName) | |
| [editorEditorField](https://docs.obsidian.md/Reference/TypeScript+API/editorEditorField) | |
| [editorInfoField](https://docs.obsidian.md/Reference/TypeScript+API/editorInfoField) | |
| [editorLivePreviewField](https://docs.obsidian.md/Reference/TypeScript+API/editorLivePreviewField) | |
| [EditorPosition](https://docs.obsidian.md/Reference/TypeScript+API/EditorPosition) | |
| [EditorRange](https://docs.obsidian.md/Reference/TypeScript+API/EditorRange) | |
| [EditorRangeOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorRangeOrCaret) | |
| [EditorScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorScrollInfo) | |
| [EditorSelection](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelection) | |
| [EditorSelectionOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelectionOrCaret) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [EditorSuggestTriggerInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestTriggerInfo) | |
| [EditorTransaction](https://docs.obsidian.md/Reference/TypeScript+API/EditorTransaction) | |
| [editorViewField](https://docs.obsidian.md/Reference/TypeScript+API/editorViewField) | |
| [EmbedCache](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) | |
| [EventRef](https://docs.obsidian.md/Reference/TypeScript+API/EventRef) | |
| [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| [ExtraButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ExtraButtonComponent) | |
| [FileManager](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | |
| [FileStats](https://docs.obsidian.md/Reference/TypeScript+API/FileStats) | |
| [FileSystemAdapter](https://docs.obsidian.md/Reference/TypeScript+API/FileSystemAdapter) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [finishRenderMath](https://docs.obsidian.md/Reference/TypeScript+API/finishRenderMath) | |
| [FootnoteCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) | |
| [FootnoteRefCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) | |
| [FootnoteSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteSubpathResult) | |
| [FrontMatterCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | |
| [FrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterInfo) | |
| [FrontmatterLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) | |
| [FuzzyMatch](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getBlobArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/getBlobArrayBuffer) | |
| [getFrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/getFrontMatterInfo) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/getIcon) | |
| [getIconIds](https://docs.obsidian.md/Reference/TypeScript+API/getIconIds) | |
| [getLanguage](https://docs.obsidian.md/Reference/TypeScript+API/getLanguage) | |
| [getLinkpath](https://docs.obsidian.md/Reference/TypeScript+API/getLinkpath) | |
| [HeadingCache](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) | |
| [HeadingSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/HeadingSubpathResult) | |
| [HexString](https://docs.obsidian.md/Reference/TypeScript+API/HexString) | |
| [hexToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/hexToArrayBuffer) | |
| [Hotkey](https://docs.obsidian.md/Reference/TypeScript+API/Hotkey) | |
| [HoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/HoverLinkSource) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [HSL](https://docs.obsidian.md/Reference/TypeScript+API/HSL) | |
| [htmlToMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/htmlToMarkdown) | |
| [IconName](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Instruction](https://docs.obsidian.md/Reference/TypeScript+API/Instruction) | |
| [ISuggestOwner](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [iterateRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateRefs) | |
| [Keymap](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | |
| [KeymapContext](https://docs.obsidian.md/Reference/TypeScript+API/KeymapContext) | |
| [KeymapEventHandler](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventHandler) | |
| [KeymapEventListener](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventListener) | |
| [KeymapInfo](https://docs.obsidian.md/Reference/TypeScript+API/KeymapInfo) | |
| [LinkCache](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) | |
| [ListedFiles](https://docs.obsidian.md/Reference/TypeScript+API/ListedFiles) | |
| [ListItemCache](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) | |
| [livePreviewState](https://docs.obsidian.md/Reference/TypeScript+API/livePreviewState) | |
| [LivePreviewStateType](https://docs.obsidian.md/Reference/TypeScript+API/LivePreviewStateType) | |
| [loadMathJax](https://docs.obsidian.md/Reference/TypeScript+API/loadMathJax) | |
| [loadMermaid](https://docs.obsidian.md/Reference/TypeScript+API/loadMermaid) | |
| [loadPdfJs](https://docs.obsidian.md/Reference/TypeScript+API/loadPdfJs) | |
| [loadPrism](https://docs.obsidian.md/Reference/TypeScript+API/loadPrism) | |
| [Loc](https://docs.obsidian.md/Reference/TypeScript+API/Loc) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessor) | |
| [MarkdownPostProcessorContext](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext) | |
| [MarkdownPreviewEvents](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents) | |
| [MarkdownPreviewRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewRenderer) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownSectionInformation](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSectionInformation) | |
| [MarkdownSubView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSubView) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [MarkdownViewModeType](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownViewModeType) | |
| [Menu](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| [MenuItem](https://docs.obsidian.md/Reference/TypeScript+API/MenuItem) | |
| [MenuPositionDef](https://docs.obsidian.md/Reference/TypeScript+API/MenuPositionDef) | |
| [MenuSeparator](https://docs.obsidian.md/Reference/TypeScript+API/MenuSeparator) | |
| [MetadataCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | |
| [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| [Modifier](https://docs.obsidian.md/Reference/TypeScript+API/Modifier) | |
| [moment](https://docs.obsidian.md/Reference/TypeScript+API/moment) | |
| [MomentFormatComponent](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent) | |
| [normalizePath](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath) | |
| [Notice](https://docs.obsidian.md/Reference/TypeScript+API/Notice) | |
| [ObsidianProtocolData](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolData) | |
| [ObsidianProtocolHandler](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolHandler) | |
| [OpenViewState](https://docs.obsidian.md/Reference/TypeScript+API/OpenViewState) | |
| [PaneType](https://docs.obsidian.md/Reference/TypeScript+API/PaneType) | |
| [parseFrontMatterAliases](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterAliases) | |
| [parseFrontMatterEntry](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterEntry) | |
| [parseFrontMatterStringArray](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterStringArray) | |
| [parseFrontMatterTags](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterTags) | |
| [parseLinktext](https://docs.obsidian.md/Reference/TypeScript+API/parseLinktext) | |
| [parseYaml](https://docs.obsidian.md/Reference/TypeScript+API/parseYaml) | |
| [Platform](https://docs.obsidian.md/Reference/TypeScript+API/Platform) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [PluginManifest](https://docs.obsidian.md/Reference/TypeScript+API/PluginManifest) | |
| [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab) | |
| [Point](https://docs.obsidian.md/Reference/TypeScript+API/Point) | |
| [PopoverState](https://docs.obsidian.md/Reference/TypeScript+API/PopoverState) | |
| [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) | |
| [Pos](https://docs.obsidian.md/Reference/TypeScript+API/Pos) | |
| [prepareFuzzySearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareFuzzySearch) | |
| [prepareSimpleSearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareSimpleSearch) | |
| [ProgressBarComponent](https://docs.obsidian.md/Reference/TypeScript+API/ProgressBarComponent) | |
| [Reference](https://docs.obsidian.md/Reference/TypeScript+API/Reference) | |
| [ReferenceCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceCache) | |
| [ReferenceLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceLinkCache) | |
| [removeIcon](https://docs.obsidian.md/Reference/TypeScript+API/removeIcon) | |
| [renderMatches](https://docs.obsidian.md/Reference/TypeScript+API/renderMatches) | |
| [renderMath](https://docs.obsidian.md/Reference/TypeScript+API/renderMath) | |
| [renderResults](https://docs.obsidian.md/Reference/TypeScript+API/renderResults) | |
| [request](https://docs.obsidian.md/Reference/TypeScript+API/request) | |
| [requestUrl](https://docs.obsidian.md/Reference/TypeScript+API/requestUrl) | |
| [RequestUrlParam](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlParam) | |
| [RequestUrlResponse](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponse) | |
| [RequestUrlResponsePromise](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponsePromise) | |
| [requireApiVersion](https://docs.obsidian.md/Reference/TypeScript+API/requireApiVersion) | |
| [resolveSubpath](https://docs.obsidian.md/Reference/TypeScript+API/resolveSubpath) | |
| [RGB](https://docs.obsidian.md/Reference/TypeScript+API/RGB) | |
| [sanitizeHTMLToDom](https://docs.obsidian.md/Reference/TypeScript+API/sanitizeHTMLToDom) | |
| [Scope](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | |
| [SearchComponent](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent) | |
| [SearchMatches](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatches) | |
| [SearchMatchPart](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatchPart) | |
| [SearchResult](https://docs.obsidian.md/Reference/TypeScript+API/SearchResult) | |
| [SearchResultContainer](https://docs.obsidian.md/Reference/TypeScript+API/SearchResultContainer) | |
| [SectionCache](https://docs.obsidian.md/Reference/TypeScript+API/SectionCache) | |
| [setIcon](https://docs.obsidian.md/Reference/TypeScript+API/setIcon) | |
| [Setting](https://docs.obsidian.md/Reference/TypeScript+API/Setting) | |
| [SettingTab](https://docs.obsidian.md/Reference/TypeScript+API/SettingTab) | |
| [setTooltip](https://docs.obsidian.md/Reference/TypeScript+API/setTooltip) | |
| [Side](https://docs.obsidian.md/Reference/TypeScript+API/Side) | |
| [SliderComponent](https://docs.obsidian.md/Reference/TypeScript+API/SliderComponent) | |
| [sortSearchResults](https://docs.obsidian.md/Reference/TypeScript+API/sortSearchResults) | |
| [SplitDirection](https://docs.obsidian.md/Reference/TypeScript+API/SplitDirection) | |
| [Stat](https://docs.obsidian.md/Reference/TypeScript+API/Stat) | |
| [stringifyYaml](https://docs.obsidian.md/Reference/TypeScript+API/stringifyYaml) | |
| [stripHeading](https://docs.obsidian.md/Reference/TypeScript+API/stripHeading) | |
| [stripHeadingForLink](https://docs.obsidian.md/Reference/TypeScript+API/stripHeadingForLink) | |
| [SubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/SubpathResult) | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) | |
| [TagCache](https://docs.obsidian.md/Reference/TypeScript+API/TagCache) | |
| [Tasks](https://docs.obsidian.md/Reference/TypeScript+API/Tasks) | |
| [TextAreaComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextAreaComponent) | |
| [TextComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [TFile](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | |
| [TFolder](https://docs.obsidian.md/Reference/TypeScript+API/TFolder) | |
| [ToggleComponent](https://docs.obsidian.md/Reference/TypeScript+API/ToggleComponent) | |
| [TooltipOptions](https://docs.obsidian.md/Reference/TypeScript+API/TooltipOptions) | |
| [TooltipPlacement](https://docs.obsidian.md/Reference/TypeScript+API/TooltipPlacement) | |
| [UserEvent](https://docs.obsidian.md/Reference/TypeScript+API/UserEvent) | |
| [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent) | |
| [Vault](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [ViewState](https://docs.obsidian.md/Reference/TypeScript+API/ViewState) | |
| [ViewStateResult](https://docs.obsidian.md/Reference/TypeScript+API/ViewStateResult) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| [WorkspaceContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| [WorkspaceFloating](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceFloating) | |
| [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| [WorkspaceMobileDrawer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | |
| [WorkspaceParent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | |
| [WorkspaceRibbon](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | |
| [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | |
| [WorkspaceSidedock](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) | |
| [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) | |
| [WorkspaceTabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) | |
| [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow) | |
| [WorkspaceWindowInitData](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindowInitData) | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # MarkdownRenderChild | |
| ```yaml is-loaded | |
| aliases: "MarkdownRenderChild" | |
| cssclasses: hide-title | |
| ``` | |
| [`MarkdownRenderChild`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| ## MarkdownRenderChild class | |
| **Signature:** | |
| ```typescript is-loaded | |
| export class MarkdownRenderChild extends Component | |
| ``` | |
| **Extends:** [`Component`](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| ## Constructors | |
| | Constructor | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`(constructor)(containerEl)`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild/(constructor)) | | Constructs a new instance of the `MarkdownRenderChild` class | | |
| ## Properties | |
| | Property | Modifiers | Type | Description | | |
| | --- | --- | --- | --- | | |
| | [`containerEl`](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild/containerEl) | | `HTMLElement` | | | |
| ## Methods | |
| | Method | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`addChild(component)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/addChild) | | Adds a child component, loading it if this component is loaded<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`load()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/load) | | Load this component and its children<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`onload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/onload) | | Override this to load your component<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`onunload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/onunload) | | Override this to unload your component<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`register(cb)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/register) | | Registers a callback to be called when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent_1) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent_2) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerEvent(eventRef)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerEvent) | | Registers an event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerInterval(id)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerInterval) | | Registers an interval (from setInterval) to be cancelled when unloading Use instead of to avoid TypeScript confusing between NodeJS vs Browser API<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`removeChild(component)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/removeChild) | | Removes a child component, unloading it<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`unload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/unload) | | Unload this component and its children<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| Links to this page | |
| [(constructor)](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild/(constructor)) | |
| [addChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext/addChild) | |
| [containerEl](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild/containerEl) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| MarkdownRenderChild | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| MarkdownRenderChild class | |
| Constructors | |
| Properties | |
| Methods | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## HoverPopover Class Overview | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| AbstractInputSuggest | |
| AbstractTextComponent | |
| App | |
| BaseComponent | |
| BlockCache | |
| BlockSubpathResult | |
| ButtonComponent | |
| CachedMetadata | |
| CacheItem | |
| CapacitorAdapter | |
| CloseableComponent | |
| ColorComponent | |
| Command | |
| Component | |
| DataAdapter | |
| DataWriteOptions | |
| Debouncer | |
| DropdownComponent | |
| Editor | |
| EditorChange | |
| EditorPosition | |
| EditorRange | |
| EditorRangeOrCaret | |
| EditorScrollInfo | |
| EditorSelection | |
| EditorSelectionOrCaret | |
| EditorSuggest | |
| EditorSuggestContext | |
| EditorSuggestTriggerInfo | |
| EditorTransaction | |
| Events | |
| ExtraButtonComponent | |
| FileManager | |
| FileStats | |
| FileSystemAdapter | |
| FileView | |
| FootnoteCache | |
| FootnoteRefCache | |
| FootnoteSubpathResult | |
| FrontMatterInfo | |
| FrontmatterLinkCache | |
| FuzzyMatch | |
| FuzzySuggestModal | |
| HeadingCache | |
| HeadingSubpathResult | |
| Hotkey | |
| HoverLinkSource | |
| HoverParent | |
| HoverPopover | |
| HSL | |
| Instruction | |
| ISuggestOwner | |
| ItemView | |
| Keymap | |
| KeymapContext | |
| KeymapEventHandler | |
| KeymapInfo | |
| ListedFiles | |
| ListItemCache | |
| LivePreviewStateType | |
| Loc | |
| MarkdownEditView | |
| MarkdownFileInfo | |
| MarkdownPostProcessor | |
| MarkdownPostProcessorContext | |
| MarkdownPreviewRenderer | |
| MarkdownPreviewView | |
| MarkdownRenderChild | |
| MarkdownRenderer | |
| MarkdownSectionInformation | |
| MarkdownSubView | |
| MarkdownView | |
| Menu | |
| MenuItem | |
| MenuPositionDef | |
| MetadataCache | |
| Modal | |
| MomentFormatComponent | |
| Notice | |
| ObsidianProtocolData | |
| OpenViewState | |
| Plugin | |
| PluginManifest | |
| PluginSettingTab | |
| Point | |
| PopoverSuggest | |
| Pos | |
| ProgressBarComponent | |
| Reference | |
| ReferenceLinkCache | |
| RequestUrlParam | |
| RequestUrlResponse | |
| RequestUrlResponsePromise | |
| RGB | |
| Scope | |
| SearchComponent | |
| SearchResult | |
| SearchResultContainer | |
| SectionCache | |
| Setting | |
| SettingTab | |
| SliderComponent | |
| Stat | |
| SubpathResult | |
| SuggestModal | |
| TAbstractFile | |
| TagCache | |
| Tasks | |
| TextAreaComponent | |
| TextComponent | |
| TextFileView | |
| TFile | |
| TFolder | |
| ToggleComponent | |
| TooltipOptions | |
| ValueComponent | |
| Vault | |
| View | |
| ViewState | |
| ViewStateResult | |
| Workspace | |
| WorkspaceContainer | |
| WorkspaceFloating | |
| WorkspaceItem | |
| WorkspaceLeaf | |
| WorkspaceMobileDrawer | |
| WorkspaceRoot | |
| WorkspaceSidedock | |
| WorkspaceSplit | |
| WorkspaceTabs | |
| WorkspaceWindow | |
| WorkspaceWindowInitData | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) | |
| [addIcon](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) | |
| [apiVersion](https://docs.obsidian.md/Reference/TypeScript+API/apiVersion) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [arrayBufferToBase64](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToBase64) | |
| [arrayBufferToHex](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToHex) | |
| [base64ToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/base64ToArrayBuffer) | |
| [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent) | |
| [BlockCache](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) | |
| [BlockSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/BlockSubpathResult) | |
| [ButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ButtonComponent) | |
| [CachedMetadata](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| [CacheItem](https://docs.obsidian.md/Reference/TypeScript+API/CacheItem) | |
| [CapacitorAdapter](https://docs.obsidian.md/Reference/TypeScript+API/CapacitorAdapter) | |
| [CloseableComponent](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| [ColorComponent](https://docs.obsidian.md/Reference/TypeScript+API/ColorComponent) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| [Constructor](https://docs.obsidian.md/Reference/TypeScript+API/Constructor) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [DataWriteOptions](https://docs.obsidian.md/Reference/TypeScript+API/DataWriteOptions) | |
| [debounce](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| [Debouncer](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) | |
| [displayTooltip](https://docs.obsidian.md/Reference/TypeScript+API/displayTooltip) | |
| [DropdownComponent](https://docs.obsidian.md/Reference/TypeScript+API/DropdownComponent) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| [EditorChange](https://docs.obsidian.md/Reference/TypeScript+API/EditorChange) | |
| [EditorCommandName](https://docs.obsidian.md/Reference/TypeScript+API/EditorCommandName) | |
| [editorEditorField](https://docs.obsidian.md/Reference/TypeScript+API/editorEditorField) | |
| [editorInfoField](https://docs.obsidian.md/Reference/TypeScript+API/editorInfoField) | |
| [editorLivePreviewField](https://docs.obsidian.md/Reference/TypeScript+API/editorLivePreviewField) | |
| [EditorPosition](https://docs.obsidian.md/Reference/TypeScript+API/EditorPosition) | |
| [EditorRange](https://docs.obsidian.md/Reference/TypeScript+API/EditorRange) | |
| [EditorRangeOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorRangeOrCaret) | |
| [EditorScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorScrollInfo) | |
| [EditorSelection](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelection) | |
| [EditorSelectionOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelectionOrCaret) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [EditorSuggestTriggerInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestTriggerInfo) | |
| [EditorTransaction](https://docs.obsidian.md/Reference/TypeScript+API/EditorTransaction) | |
| [editorViewField](https://docs.obsidian.md/Reference/TypeScript+API/editorViewField) | |
| [EmbedCache](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) | |
| [EventRef](https://docs.obsidian.md/Reference/TypeScript+API/EventRef) | |
| [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| [ExtraButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ExtraButtonComponent) | |
| [FileManager](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | |
| [FileStats](https://docs.obsidian.md/Reference/TypeScript+API/FileStats) | |
| [FileSystemAdapter](https://docs.obsidian.md/Reference/TypeScript+API/FileSystemAdapter) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [finishRenderMath](https://docs.obsidian.md/Reference/TypeScript+API/finishRenderMath) | |
| [FootnoteCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) | |
| [FootnoteRefCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) | |
| [FootnoteSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteSubpathResult) | |
| [FrontMatterCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | |
| [FrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterInfo) | |
| [FrontmatterLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) | |
| [FuzzyMatch](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getBlobArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/getBlobArrayBuffer) | |
| [getFrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/getFrontMatterInfo) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/getIcon) | |
| [getIconIds](https://docs.obsidian.md/Reference/TypeScript+API/getIconIds) | |
| [getLanguage](https://docs.obsidian.md/Reference/TypeScript+API/getLanguage) | |
| [getLinkpath](https://docs.obsidian.md/Reference/TypeScript+API/getLinkpath) | |
| [HeadingCache](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) | |
| [HeadingSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/HeadingSubpathResult) | |
| [HexString](https://docs.obsidian.md/Reference/TypeScript+API/HexString) | |
| [hexToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/hexToArrayBuffer) | |
| [Hotkey](https://docs.obsidian.md/Reference/TypeScript+API/Hotkey) | |
| [HoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/HoverLinkSource) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [HSL](https://docs.obsidian.md/Reference/TypeScript+API/HSL) | |
| [htmlToMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/htmlToMarkdown) | |
| [IconName](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Instruction](https://docs.obsidian.md/Reference/TypeScript+API/Instruction) | |
| [ISuggestOwner](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [iterateRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateRefs) | |
| [Keymap](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | |
| [KeymapContext](https://docs.obsidian.md/Reference/TypeScript+API/KeymapContext) | |
| [KeymapEventHandler](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventHandler) | |
| [KeymapEventListener](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventListener) | |
| [KeymapInfo](https://docs.obsidian.md/Reference/TypeScript+API/KeymapInfo) | |
| [LinkCache](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) | |
| [ListedFiles](https://docs.obsidian.md/Reference/TypeScript+API/ListedFiles) | |
| [ListItemCache](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) | |
| [livePreviewState](https://docs.obsidian.md/Reference/TypeScript+API/livePreviewState) | |
| [LivePreviewStateType](https://docs.obsidian.md/Reference/TypeScript+API/LivePreviewStateType) | |
| [loadMathJax](https://docs.obsidian.md/Reference/TypeScript+API/loadMathJax) | |
| [loadMermaid](https://docs.obsidian.md/Reference/TypeScript+API/loadMermaid) | |
| [loadPdfJs](https://docs.obsidian.md/Reference/TypeScript+API/loadPdfJs) | |
| [loadPrism](https://docs.obsidian.md/Reference/TypeScript+API/loadPrism) | |
| [Loc](https://docs.obsidian.md/Reference/TypeScript+API/Loc) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessor) | |
| [MarkdownPostProcessorContext](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext) | |
| [MarkdownPreviewEvents](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents) | |
| [MarkdownPreviewRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewRenderer) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownSectionInformation](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSectionInformation) | |
| [MarkdownSubView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSubView) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [MarkdownViewModeType](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownViewModeType) | |
| [Menu](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| [MenuItem](https://docs.obsidian.md/Reference/TypeScript+API/MenuItem) | |
| [MenuPositionDef](https://docs.obsidian.md/Reference/TypeScript+API/MenuPositionDef) | |
| [MenuSeparator](https://docs.obsidian.md/Reference/TypeScript+API/MenuSeparator) | |
| [MetadataCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | |
| [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| [Modifier](https://docs.obsidian.md/Reference/TypeScript+API/Modifier) | |
| [moment](https://docs.obsidian.md/Reference/TypeScript+API/moment) | |
| [MomentFormatComponent](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent) | |
| [normalizePath](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath) | |
| [Notice](https://docs.obsidian.md/Reference/TypeScript+API/Notice) | |
| [ObsidianProtocolData](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolData) | |
| [ObsidianProtocolHandler](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolHandler) | |
| [OpenViewState](https://docs.obsidian.md/Reference/TypeScript+API/OpenViewState) | |
| [PaneType](https://docs.obsidian.md/Reference/TypeScript+API/PaneType) | |
| [parseFrontMatterAliases](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterAliases) | |
| [parseFrontMatterEntry](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterEntry) | |
| [parseFrontMatterStringArray](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterStringArray) | |
| [parseFrontMatterTags](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterTags) | |
| [parseLinktext](https://docs.obsidian.md/Reference/TypeScript+API/parseLinktext) | |
| [parseYaml](https://docs.obsidian.md/Reference/TypeScript+API/parseYaml) | |
| [Platform](https://docs.obsidian.md/Reference/TypeScript+API/Platform) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [PluginManifest](https://docs.obsidian.md/Reference/TypeScript+API/PluginManifest) | |
| [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab) | |
| [Point](https://docs.obsidian.md/Reference/TypeScript+API/Point) | |
| [PopoverState](https://docs.obsidian.md/Reference/TypeScript+API/PopoverState) | |
| [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) | |
| [Pos](https://docs.obsidian.md/Reference/TypeScript+API/Pos) | |
| [prepareFuzzySearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareFuzzySearch) | |
| [prepareSimpleSearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareSimpleSearch) | |
| [ProgressBarComponent](https://docs.obsidian.md/Reference/TypeScript+API/ProgressBarComponent) | |
| [Reference](https://docs.obsidian.md/Reference/TypeScript+API/Reference) | |
| [ReferenceCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceCache) | |
| [ReferenceLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceLinkCache) | |
| [removeIcon](https://docs.obsidian.md/Reference/TypeScript+API/removeIcon) | |
| [renderMatches](https://docs.obsidian.md/Reference/TypeScript+API/renderMatches) | |
| [renderMath](https://docs.obsidian.md/Reference/TypeScript+API/renderMath) | |
| [renderResults](https://docs.obsidian.md/Reference/TypeScript+API/renderResults) | |
| [request](https://docs.obsidian.md/Reference/TypeScript+API/request) | |
| [requestUrl](https://docs.obsidian.md/Reference/TypeScript+API/requestUrl) | |
| [RequestUrlParam](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlParam) | |
| [RequestUrlResponse](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponse) | |
| [RequestUrlResponsePromise](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponsePromise) | |
| [requireApiVersion](https://docs.obsidian.md/Reference/TypeScript+API/requireApiVersion) | |
| [resolveSubpath](https://docs.obsidian.md/Reference/TypeScript+API/resolveSubpath) | |
| [RGB](https://docs.obsidian.md/Reference/TypeScript+API/RGB) | |
| [sanitizeHTMLToDom](https://docs.obsidian.md/Reference/TypeScript+API/sanitizeHTMLToDom) | |
| [Scope](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | |
| [SearchComponent](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent) | |
| [SearchMatches](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatches) | |
| [SearchMatchPart](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatchPart) | |
| [SearchResult](https://docs.obsidian.md/Reference/TypeScript+API/SearchResult) | |
| [SearchResultContainer](https://docs.obsidian.md/Reference/TypeScript+API/SearchResultContainer) | |
| [SectionCache](https://docs.obsidian.md/Reference/TypeScript+API/SectionCache) | |
| [setIcon](https://docs.obsidian.md/Reference/TypeScript+API/setIcon) | |
| [Setting](https://docs.obsidian.md/Reference/TypeScript+API/Setting) | |
| [SettingTab](https://docs.obsidian.md/Reference/TypeScript+API/SettingTab) | |
| [setTooltip](https://docs.obsidian.md/Reference/TypeScript+API/setTooltip) | |
| [Side](https://docs.obsidian.md/Reference/TypeScript+API/Side) | |
| [SliderComponent](https://docs.obsidian.md/Reference/TypeScript+API/SliderComponent) | |
| [sortSearchResults](https://docs.obsidian.md/Reference/TypeScript+API/sortSearchResults) | |
| [SplitDirection](https://docs.obsidian.md/Reference/TypeScript+API/SplitDirection) | |
| [Stat](https://docs.obsidian.md/Reference/TypeScript+API/Stat) | |
| [stringifyYaml](https://docs.obsidian.md/Reference/TypeScript+API/stringifyYaml) | |
| [stripHeading](https://docs.obsidian.md/Reference/TypeScript+API/stripHeading) | |
| [stripHeadingForLink](https://docs.obsidian.md/Reference/TypeScript+API/stripHeadingForLink) | |
| [SubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/SubpathResult) | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) | |
| [TagCache](https://docs.obsidian.md/Reference/TypeScript+API/TagCache) | |
| [Tasks](https://docs.obsidian.md/Reference/TypeScript+API/Tasks) | |
| [TextAreaComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextAreaComponent) | |
| [TextComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [TFile](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | |
| [TFolder](https://docs.obsidian.md/Reference/TypeScript+API/TFolder) | |
| [ToggleComponent](https://docs.obsidian.md/Reference/TypeScript+API/ToggleComponent) | |
| [TooltipOptions](https://docs.obsidian.md/Reference/TypeScript+API/TooltipOptions) | |
| [TooltipPlacement](https://docs.obsidian.md/Reference/TypeScript+API/TooltipPlacement) | |
| [UserEvent](https://docs.obsidian.md/Reference/TypeScript+API/UserEvent) | |
| [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent) | |
| [Vault](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [ViewState](https://docs.obsidian.md/Reference/TypeScript+API/ViewState) | |
| [ViewStateResult](https://docs.obsidian.md/Reference/TypeScript+API/ViewStateResult) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| [WorkspaceContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| [WorkspaceFloating](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceFloating) | |
| [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| [WorkspaceMobileDrawer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | |
| [WorkspaceParent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | |
| [WorkspaceRibbon](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | |
| [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | |
| [WorkspaceSidedock](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) | |
| [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) | |
| [WorkspaceTabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) | |
| [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow) | |
| [WorkspaceWindowInitData](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindowInitData) | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # HoverPopover | |
| ```yaml is-loaded | |
| aliases: "HoverPopover" | |
| cssclasses: hide-title | |
| ``` | |
| [`HoverPopover`](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| ## HoverPopover class | |
| **Signature:** | |
| ```typescript is-loaded | |
| export class HoverPopover extends Component | |
| ``` | |
| **Extends:** [`Component`](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| ## Constructors | |
| | Constructor | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`(constructor)(parent, targetEl, waitTime, staticPos)`](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover/(constructor)) | | Constructs a new instance of the `HoverPopover` class | | |
| ## Properties | |
| | Property | Modifiers | Type | Description | | |
| | --- | --- | --- | --- | | |
| | [`hoverEl`](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover/hoverEl) | | `HTMLElement` | | | |
| | [`state`](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover/state) | | [`PopoverState`](https://docs.obsidian.md/Reference/TypeScript+API/PopoverState) | | | |
| ## Methods | |
| | Method | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`addChild(component)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/addChild) | | Adds a child component, loading it if this component is loaded<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`load()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/load) | | Load this component and its children<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`onload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/onload) | | Override this to load your component<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`onunload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/onunload) | | Override this to unload your component<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`register(cb)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/register) | | Registers a callback to be called when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent_1) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerDomEvent(el, type, callback, options)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerDomEvent_2) | | Registers an DOM event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerEvent(eventRef)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerEvent) | | Registers an event to be detached when unloading<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`registerInterval(id)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/registerInterval) | | Registers an interval (from setInterval) to be cancelled when unloading Use instead of to avoid TypeScript confusing between NodeJS vs Browser API<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`removeChild(component)`](https://docs.obsidian.md/Reference/TypeScript+API/Component/removeChild) | | Removes a child component, unloading it<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| | [`unload()`](https://docs.obsidian.md/Reference/TypeScript+API/Component/unload) | | Unload this component and its children<br>(Inherited from [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component)) | | |
| Links to this page | |
| [(constructor)](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover/(constructor)) | |
| [hoverEl](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover/hoverEl) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [state](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover/state) | |
| HoverPopover | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| HoverPopover class | |
| Constructors | |
| Properties | |
| Methods | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## Obsidian App Class | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| AbstractInputSuggest | |
| AbstractTextComponent | |
| App | |
| BaseComponent | |
| BlockCache | |
| BlockSubpathResult | |
| ButtonComponent | |
| CachedMetadata | |
| CacheItem | |
| CapacitorAdapter | |
| CloseableComponent | |
| ColorComponent | |
| Command | |
| Component | |
| DataAdapter | |
| DataWriteOptions | |
| Debouncer | |
| DropdownComponent | |
| Editor | |
| EditorChange | |
| EditorPosition | |
| EditorRange | |
| EditorRangeOrCaret | |
| EditorScrollInfo | |
| EditorSelection | |
| EditorSelectionOrCaret | |
| EditorSuggest | |
| EditorSuggestContext | |
| EditorSuggestTriggerInfo | |
| EditorTransaction | |
| Events | |
| ExtraButtonComponent | |
| FileManager | |
| FileStats | |
| FileSystemAdapter | |
| FileView | |
| FootnoteCache | |
| FootnoteRefCache | |
| FootnoteSubpathResult | |
| FrontMatterInfo | |
| FrontmatterLinkCache | |
| FuzzyMatch | |
| FuzzySuggestModal | |
| HeadingCache | |
| HeadingSubpathResult | |
| Hotkey | |
| HoverLinkSource | |
| HoverParent | |
| HoverPopover | |
| HSL | |
| Instruction | |
| ISuggestOwner | |
| ItemView | |
| Keymap | |
| KeymapContext | |
| KeymapEventHandler | |
| KeymapInfo | |
| ListedFiles | |
| ListItemCache | |
| LivePreviewStateType | |
| Loc | |
| MarkdownEditView | |
| MarkdownFileInfo | |
| MarkdownPostProcessor | |
| MarkdownPostProcessorContext | |
| MarkdownPreviewRenderer | |
| MarkdownPreviewView | |
| MarkdownRenderChild | |
| MarkdownRenderer | |
| MarkdownSectionInformation | |
| MarkdownSubView | |
| MarkdownView | |
| Menu | |
| MenuItem | |
| MenuPositionDef | |
| MetadataCache | |
| Modal | |
| MomentFormatComponent | |
| Notice | |
| ObsidianProtocolData | |
| OpenViewState | |
| Plugin | |
| PluginManifest | |
| PluginSettingTab | |
| Point | |
| PopoverSuggest | |
| Pos | |
| ProgressBarComponent | |
| Reference | |
| ReferenceLinkCache | |
| RequestUrlParam | |
| RequestUrlResponse | |
| RequestUrlResponsePromise | |
| RGB | |
| Scope | |
| SearchComponent | |
| SearchResult | |
| SearchResultContainer | |
| SectionCache | |
| Setting | |
| SettingTab | |
| SliderComponent | |
| Stat | |
| SubpathResult | |
| SuggestModal | |
| TAbstractFile | |
| TagCache | |
| Tasks | |
| TextAreaComponent | |
| TextComponent | |
| TextFileView | |
| TFile | |
| TFolder | |
| ToggleComponent | |
| TooltipOptions | |
| ValueComponent | |
| Vault | |
| View | |
| ViewState | |
| ViewStateResult | |
| Workspace | |
| WorkspaceContainer | |
| WorkspaceFloating | |
| WorkspaceItem | |
| WorkspaceLeaf | |
| WorkspaceMobileDrawer | |
| WorkspaceRoot | |
| WorkspaceSidedock | |
| WorkspaceSplit | |
| WorkspaceTabs | |
| WorkspaceWindow | |
| WorkspaceWindowInitData | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) | |
| [addIcon](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) | |
| [apiVersion](https://docs.obsidian.md/Reference/TypeScript+API/apiVersion) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [arrayBufferToBase64](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToBase64) | |
| [arrayBufferToHex](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToHex) | |
| [base64ToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/base64ToArrayBuffer) | |
| [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent) | |
| [BlockCache](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) | |
| [BlockSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/BlockSubpathResult) | |
| [ButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ButtonComponent) | |
| [CachedMetadata](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| [CacheItem](https://docs.obsidian.md/Reference/TypeScript+API/CacheItem) | |
| [CapacitorAdapter](https://docs.obsidian.md/Reference/TypeScript+API/CapacitorAdapter) | |
| [CloseableComponent](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| [ColorComponent](https://docs.obsidian.md/Reference/TypeScript+API/ColorComponent) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| [Constructor](https://docs.obsidian.md/Reference/TypeScript+API/Constructor) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [DataWriteOptions](https://docs.obsidian.md/Reference/TypeScript+API/DataWriteOptions) | |
| [debounce](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| [Debouncer](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) | |
| [displayTooltip](https://docs.obsidian.md/Reference/TypeScript+API/displayTooltip) | |
| [DropdownComponent](https://docs.obsidian.md/Reference/TypeScript+API/DropdownComponent) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| [EditorChange](https://docs.obsidian.md/Reference/TypeScript+API/EditorChange) | |
| [EditorCommandName](https://docs.obsidian.md/Reference/TypeScript+API/EditorCommandName) | |
| [editorEditorField](https://docs.obsidian.md/Reference/TypeScript+API/editorEditorField) | |
| [editorInfoField](https://docs.obsidian.md/Reference/TypeScript+API/editorInfoField) | |
| [editorLivePreviewField](https://docs.obsidian.md/Reference/TypeScript+API/editorLivePreviewField) | |
| [EditorPosition](https://docs.obsidian.md/Reference/TypeScript+API/EditorPosition) | |
| [EditorRange](https://docs.obsidian.md/Reference/TypeScript+API/EditorRange) | |
| [EditorRangeOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorRangeOrCaret) | |
| [EditorScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorScrollInfo) | |
| [EditorSelection](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelection) | |
| [EditorSelectionOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelectionOrCaret) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [EditorSuggestTriggerInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestTriggerInfo) | |
| [EditorTransaction](https://docs.obsidian.md/Reference/TypeScript+API/EditorTransaction) | |
| [editorViewField](https://docs.obsidian.md/Reference/TypeScript+API/editorViewField) | |
| [EmbedCache](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) | |
| [EventRef](https://docs.obsidian.md/Reference/TypeScript+API/EventRef) | |
| [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| [ExtraButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ExtraButtonComponent) | |
| [FileManager](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | |
| [FileStats](https://docs.obsidian.md/Reference/TypeScript+API/FileStats) | |
| [FileSystemAdapter](https://docs.obsidian.md/Reference/TypeScript+API/FileSystemAdapter) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [finishRenderMath](https://docs.obsidian.md/Reference/TypeScript+API/finishRenderMath) | |
| [FootnoteCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) | |
| [FootnoteRefCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) | |
| [FootnoteSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteSubpathResult) | |
| [FrontMatterCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | |
| [FrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterInfo) | |
| [FrontmatterLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) | |
| [FuzzyMatch](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getBlobArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/getBlobArrayBuffer) | |
| [getFrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/getFrontMatterInfo) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/getIcon) | |
| [getIconIds](https://docs.obsidian.md/Reference/TypeScript+API/getIconIds) | |
| [getLanguage](https://docs.obsidian.md/Reference/TypeScript+API/getLanguage) | |
| [getLinkpath](https://docs.obsidian.md/Reference/TypeScript+API/getLinkpath) | |
| [HeadingCache](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) | |
| [HeadingSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/HeadingSubpathResult) | |
| [HexString](https://docs.obsidian.md/Reference/TypeScript+API/HexString) | |
| [hexToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/hexToArrayBuffer) | |
| [Hotkey](https://docs.obsidian.md/Reference/TypeScript+API/Hotkey) | |
| [HoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/HoverLinkSource) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [HSL](https://docs.obsidian.md/Reference/TypeScript+API/HSL) | |
| [htmlToMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/htmlToMarkdown) | |
| [IconName](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Instruction](https://docs.obsidian.md/Reference/TypeScript+API/Instruction) | |
| [ISuggestOwner](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [iterateRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateRefs) | |
| [Keymap](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | |
| [KeymapContext](https://docs.obsidian.md/Reference/TypeScript+API/KeymapContext) | |
| [KeymapEventHandler](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventHandler) | |
| [KeymapEventListener](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventListener) | |
| [KeymapInfo](https://docs.obsidian.md/Reference/TypeScript+API/KeymapInfo) | |
| [LinkCache](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) | |
| [ListedFiles](https://docs.obsidian.md/Reference/TypeScript+API/ListedFiles) | |
| [ListItemCache](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) | |
| [livePreviewState](https://docs.obsidian.md/Reference/TypeScript+API/livePreviewState) | |
| [LivePreviewStateType](https://docs.obsidian.md/Reference/TypeScript+API/LivePreviewStateType) | |
| [loadMathJax](https://docs.obsidian.md/Reference/TypeScript+API/loadMathJax) | |
| [loadMermaid](https://docs.obsidian.md/Reference/TypeScript+API/loadMermaid) | |
| [loadPdfJs](https://docs.obsidian.md/Reference/TypeScript+API/loadPdfJs) | |
| [loadPrism](https://docs.obsidian.md/Reference/TypeScript+API/loadPrism) | |
| [Loc](https://docs.obsidian.md/Reference/TypeScript+API/Loc) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessor) | |
| [MarkdownPostProcessorContext](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext) | |
| [MarkdownPreviewEvents](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents) | |
| [MarkdownPreviewRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewRenderer) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownSectionInformation](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSectionInformation) | |
| [MarkdownSubView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSubView) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [MarkdownViewModeType](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownViewModeType) | |
| [Menu](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| [MenuItem](https://docs.obsidian.md/Reference/TypeScript+API/MenuItem) | |
| [MenuPositionDef](https://docs.obsidian.md/Reference/TypeScript+API/MenuPositionDef) | |
| [MenuSeparator](https://docs.obsidian.md/Reference/TypeScript+API/MenuSeparator) | |
| [MetadataCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | |
| [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| [Modifier](https://docs.obsidian.md/Reference/TypeScript+API/Modifier) | |
| [moment](https://docs.obsidian.md/Reference/TypeScript+API/moment) | |
| [MomentFormatComponent](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent) | |
| [normalizePath](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath) | |
| [Notice](https://docs.obsidian.md/Reference/TypeScript+API/Notice) | |
| [ObsidianProtocolData](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolData) | |
| [ObsidianProtocolHandler](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolHandler) | |
| [OpenViewState](https://docs.obsidian.md/Reference/TypeScript+API/OpenViewState) | |
| [PaneType](https://docs.obsidian.md/Reference/TypeScript+API/PaneType) | |
| [parseFrontMatterAliases](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterAliases) | |
| [parseFrontMatterEntry](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterEntry) | |
| [parseFrontMatterStringArray](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterStringArray) | |
| [parseFrontMatterTags](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterTags) | |
| [parseLinktext](https://docs.obsidian.md/Reference/TypeScript+API/parseLinktext) | |
| [parseYaml](https://docs.obsidian.md/Reference/TypeScript+API/parseYaml) | |
| [Platform](https://docs.obsidian.md/Reference/TypeScript+API/Platform) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [PluginManifest](https://docs.obsidian.md/Reference/TypeScript+API/PluginManifest) | |
| [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab) | |
| [Point](https://docs.obsidian.md/Reference/TypeScript+API/Point) | |
| [PopoverState](https://docs.obsidian.md/Reference/TypeScript+API/PopoverState) | |
| [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) | |
| [Pos](https://docs.obsidian.md/Reference/TypeScript+API/Pos) | |
| [prepareFuzzySearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareFuzzySearch) | |
| [prepareSimpleSearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareSimpleSearch) | |
| [ProgressBarComponent](https://docs.obsidian.md/Reference/TypeScript+API/ProgressBarComponent) | |
| [Reference](https://docs.obsidian.md/Reference/TypeScript+API/Reference) | |
| [ReferenceCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceCache) | |
| [ReferenceLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceLinkCache) | |
| [removeIcon](https://docs.obsidian.md/Reference/TypeScript+API/removeIcon) | |
| [renderMatches](https://docs.obsidian.md/Reference/TypeScript+API/renderMatches) | |
| [renderMath](https://docs.obsidian.md/Reference/TypeScript+API/renderMath) | |
| [renderResults](https://docs.obsidian.md/Reference/TypeScript+API/renderResults) | |
| [request](https://docs.obsidian.md/Reference/TypeScript+API/request) | |
| [requestUrl](https://docs.obsidian.md/Reference/TypeScript+API/requestUrl) | |
| [RequestUrlParam](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlParam) | |
| [RequestUrlResponse](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponse) | |
| [RequestUrlResponsePromise](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponsePromise) | |
| [requireApiVersion](https://docs.obsidian.md/Reference/TypeScript+API/requireApiVersion) | |
| [resolveSubpath](https://docs.obsidian.md/Reference/TypeScript+API/resolveSubpath) | |
| [RGB](https://docs.obsidian.md/Reference/TypeScript+API/RGB) | |
| [sanitizeHTMLToDom](https://docs.obsidian.md/Reference/TypeScript+API/sanitizeHTMLToDom) | |
| [Scope](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | |
| [SearchComponent](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent) | |
| [SearchMatches](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatches) | |
| [SearchMatchPart](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatchPart) | |
| [SearchResult](https://docs.obsidian.md/Reference/TypeScript+API/SearchResult) | |
| [SearchResultContainer](https://docs.obsidian.md/Reference/TypeScript+API/SearchResultContainer) | |
| [SectionCache](https://docs.obsidian.md/Reference/TypeScript+API/SectionCache) | |
| [setIcon](https://docs.obsidian.md/Reference/TypeScript+API/setIcon) | |
| [Setting](https://docs.obsidian.md/Reference/TypeScript+API/Setting) | |
| [SettingTab](https://docs.obsidian.md/Reference/TypeScript+API/SettingTab) | |
| [setTooltip](https://docs.obsidian.md/Reference/TypeScript+API/setTooltip) | |
| [Side](https://docs.obsidian.md/Reference/TypeScript+API/Side) | |
| [SliderComponent](https://docs.obsidian.md/Reference/TypeScript+API/SliderComponent) | |
| [sortSearchResults](https://docs.obsidian.md/Reference/TypeScript+API/sortSearchResults) | |
| [SplitDirection](https://docs.obsidian.md/Reference/TypeScript+API/SplitDirection) | |
| [Stat](https://docs.obsidian.md/Reference/TypeScript+API/Stat) | |
| [stringifyYaml](https://docs.obsidian.md/Reference/TypeScript+API/stringifyYaml) | |
| [stripHeading](https://docs.obsidian.md/Reference/TypeScript+API/stripHeading) | |
| [stripHeadingForLink](https://docs.obsidian.md/Reference/TypeScript+API/stripHeadingForLink) | |
| [SubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/SubpathResult) | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) | |
| [TagCache](https://docs.obsidian.md/Reference/TypeScript+API/TagCache) | |
| [Tasks](https://docs.obsidian.md/Reference/TypeScript+API/Tasks) | |
| [TextAreaComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextAreaComponent) | |
| [TextComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [TFile](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | |
| [TFolder](https://docs.obsidian.md/Reference/TypeScript+API/TFolder) | |
| [ToggleComponent](https://docs.obsidian.md/Reference/TypeScript+API/ToggleComponent) | |
| [TooltipOptions](https://docs.obsidian.md/Reference/TypeScript+API/TooltipOptions) | |
| [TooltipPlacement](https://docs.obsidian.md/Reference/TypeScript+API/TooltipPlacement) | |
| [UserEvent](https://docs.obsidian.md/Reference/TypeScript+API/UserEvent) | |
| [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent) | |
| [Vault](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [ViewState](https://docs.obsidian.md/Reference/TypeScript+API/ViewState) | |
| [ViewStateResult](https://docs.obsidian.md/Reference/TypeScript+API/ViewStateResult) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| [WorkspaceContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| [WorkspaceFloating](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceFloating) | |
| [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| [WorkspaceMobileDrawer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | |
| [WorkspaceParent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | |
| [WorkspaceRibbon](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | |
| [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | |
| [WorkspaceSidedock](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) | |
| [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) | |
| [WorkspaceTabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) | |
| [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow) | |
| [WorkspaceWindowInitData](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindowInitData) | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # App | |
| ```yaml is-loaded | |
| aliases: "App" | |
| cssclasses: hide-title | |
| ``` | |
| [`App`](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| ## App class | |
| **Signature:** | |
| ```typescript is-loaded | |
| export class App | |
| ``` | |
| ## Properties | |
| | Property | Modifiers | Type | Description | | |
| | --- | --- | --- | --- | | |
| | [`fileManager`](https://docs.obsidian.md/Reference/TypeScript+API/App/fileManager) | | [`FileManager`](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | | | |
| | [`keymap`](https://docs.obsidian.md/Reference/TypeScript+API/App/keymap) | | [`Keymap`](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | | | |
| | [`lastEvent`](https://docs.obsidian.md/Reference/TypeScript+API/App/lastEvent) | | [`UserEvent`](https://docs.obsidian.md/Reference/TypeScript+API/UserEvent) ` | null` | The last known user interaction event, to help commands find out what modifier keys are pressed. | | |
| | [`metadataCache`](https://docs.obsidian.md/Reference/TypeScript+API/App/metadataCache) | | [`MetadataCache`](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | | | |
| | [`scope`](https://docs.obsidian.md/Reference/TypeScript+API/App/scope) | | [`Scope`](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | | | |
| | [`vault`](https://docs.obsidian.md/Reference/TypeScript+API/App/vault) | | [`Vault`](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | | | |
| | [`workspace`](https://docs.obsidian.md/Reference/TypeScript+API/App/workspace) | | [`Workspace`](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | | | |
| ## Methods | |
| | Method | Modifiers | Description | | |
| | --- | --- | --- | | |
| | [`loadLocalStorage(key)`](https://docs.obsidian.md/Reference/TypeScript+API/App/loadLocalStorage) | | Retrieve value from `localStorage` for this vault. | | |
| | [`saveLocalStorage(key, data)`](https://docs.obsidian.md/Reference/TypeScript+API/App/saveLocalStorage) | | Save vault-specific value to `localStorage`. If data is `null`, the entry will be cleared. | | |
| Links to this page | |
| [(constructor)](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal/(constructor)) | |
| [(constructor)](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab/(constructor)) | |
| [(constructor)](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest/(constructor)) | |
| [(constructor)](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest/(constructor)) | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [fileManager](https://docs.obsidian.md/Reference/TypeScript+API/App/fileManager) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [keymap](https://docs.obsidian.md/Reference/TypeScript+API/App/keymap) | |
| [lastEvent](https://docs.obsidian.md/Reference/TypeScript+API/App/lastEvent) | |
| [loadLocalStorage](https://docs.obsidian.md/Reference/TypeScript+API/App/loadLocalStorage) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [metadataCache](https://docs.obsidian.md/Reference/TypeScript+API/App/metadataCache) | |
| [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab) | |
| [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) | |
| [saveLocalStorage](https://docs.obsidian.md/Reference/TypeScript+API/App/saveLocalStorage) | |
| [scope](https://docs.obsidian.md/Reference/TypeScript+API/App/scope) | |
| [SettingTab](https://docs.obsidian.md/Reference/TypeScript+API/SettingTab) | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [Use React in your plugin](https://docs.obsidian.md/Plugins/Getting+started/Use+React+in+your+plugin) | |
| [vault](https://docs.obsidian.md/Reference/TypeScript+API/App/vault) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [Workspace](https://docs.obsidian.md/Plugins/User+interface/Workspace) | |
| [workspace](https://docs.obsidian.md/Reference/TypeScript+API/App/workspace) | |
| App | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| App class | |
| Properties | |
| Methods | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## CachedMetadata Interface | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| AbstractInputSuggest | |
| AbstractTextComponent | |
| App | |
| BaseComponent | |
| BlockCache | |
| BlockSubpathResult | |
| ButtonComponent | |
| CachedMetadata | |
| CacheItem | |
| CapacitorAdapter | |
| CloseableComponent | |
| ColorComponent | |
| Command | |
| Component | |
| DataAdapter | |
| DataWriteOptions | |
| Debouncer | |
| DropdownComponent | |
| Editor | |
| EditorChange | |
| EditorPosition | |
| EditorRange | |
| EditorRangeOrCaret | |
| EditorScrollInfo | |
| EditorSelection | |
| EditorSelectionOrCaret | |
| EditorSuggest | |
| EditorSuggestContext | |
| EditorSuggestTriggerInfo | |
| EditorTransaction | |
| Events | |
| ExtraButtonComponent | |
| FileManager | |
| FileStats | |
| FileSystemAdapter | |
| FileView | |
| FootnoteCache | |
| FootnoteRefCache | |
| FootnoteSubpathResult | |
| FrontMatterInfo | |
| FrontmatterLinkCache | |
| FuzzyMatch | |
| FuzzySuggestModal | |
| HeadingCache | |
| HeadingSubpathResult | |
| Hotkey | |
| HoverLinkSource | |
| HoverParent | |
| HoverPopover | |
| HSL | |
| Instruction | |
| ISuggestOwner | |
| ItemView | |
| Keymap | |
| KeymapContext | |
| KeymapEventHandler | |
| KeymapInfo | |
| ListedFiles | |
| ListItemCache | |
| LivePreviewStateType | |
| Loc | |
| MarkdownEditView | |
| MarkdownFileInfo | |
| MarkdownPostProcessor | |
| MarkdownPostProcessorContext | |
| MarkdownPreviewRenderer | |
| MarkdownPreviewView | |
| MarkdownRenderChild | |
| MarkdownRenderer | |
| MarkdownSectionInformation | |
| MarkdownSubView | |
| MarkdownView | |
| Menu | |
| MenuItem | |
| MenuPositionDef | |
| MetadataCache | |
| Modal | |
| MomentFormatComponent | |
| Notice | |
| ObsidianProtocolData | |
| OpenViewState | |
| Plugin | |
| PluginManifest | |
| PluginSettingTab | |
| Point | |
| PopoverSuggest | |
| Pos | |
| ProgressBarComponent | |
| Reference | |
| ReferenceLinkCache | |
| RequestUrlParam | |
| RequestUrlResponse | |
| RequestUrlResponsePromise | |
| RGB | |
| Scope | |
| SearchComponent | |
| SearchResult | |
| SearchResultContainer | |
| SectionCache | |
| Setting | |
| SettingTab | |
| SliderComponent | |
| Stat | |
| SubpathResult | |
| SuggestModal | |
| TAbstractFile | |
| TagCache | |
| Tasks | |
| TextAreaComponent | |
| TextComponent | |
| TextFileView | |
| TFile | |
| TFolder | |
| ToggleComponent | |
| TooltipOptions | |
| ValueComponent | |
| Vault | |
| View | |
| ViewState | |
| ViewStateResult | |
| Workspace | |
| WorkspaceContainer | |
| WorkspaceFloating | |
| WorkspaceItem | |
| WorkspaceLeaf | |
| WorkspaceMobileDrawer | |
| WorkspaceRoot | |
| WorkspaceSidedock | |
| WorkspaceSplit | |
| WorkspaceTabs | |
| WorkspaceWindow | |
| WorkspaceWindowInitData | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) | |
| [addIcon](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) | |
| [apiVersion](https://docs.obsidian.md/Reference/TypeScript+API/apiVersion) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [arrayBufferToBase64](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToBase64) | |
| [arrayBufferToHex](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToHex) | |
| [base64ToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/base64ToArrayBuffer) | |
| [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent) | |
| [BlockCache](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) | |
| [BlockSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/BlockSubpathResult) | |
| [ButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ButtonComponent) | |
| [CachedMetadata](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| [CacheItem](https://docs.obsidian.md/Reference/TypeScript+API/CacheItem) | |
| [CapacitorAdapter](https://docs.obsidian.md/Reference/TypeScript+API/CapacitorAdapter) | |
| [CloseableComponent](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| [ColorComponent](https://docs.obsidian.md/Reference/TypeScript+API/ColorComponent) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| [Constructor](https://docs.obsidian.md/Reference/TypeScript+API/Constructor) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [DataWriteOptions](https://docs.obsidian.md/Reference/TypeScript+API/DataWriteOptions) | |
| [debounce](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| [Debouncer](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) | |
| [displayTooltip](https://docs.obsidian.md/Reference/TypeScript+API/displayTooltip) | |
| [DropdownComponent](https://docs.obsidian.md/Reference/TypeScript+API/DropdownComponent) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| [EditorChange](https://docs.obsidian.md/Reference/TypeScript+API/EditorChange) | |
| [EditorCommandName](https://docs.obsidian.md/Reference/TypeScript+API/EditorCommandName) | |
| [editorEditorField](https://docs.obsidian.md/Reference/TypeScript+API/editorEditorField) | |
| [editorInfoField](https://docs.obsidian.md/Reference/TypeScript+API/editorInfoField) | |
| [editorLivePreviewField](https://docs.obsidian.md/Reference/TypeScript+API/editorLivePreviewField) | |
| [EditorPosition](https://docs.obsidian.md/Reference/TypeScript+API/EditorPosition) | |
| [EditorRange](https://docs.obsidian.md/Reference/TypeScript+API/EditorRange) | |
| [EditorRangeOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorRangeOrCaret) | |
| [EditorScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorScrollInfo) | |
| [EditorSelection](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelection) | |
| [EditorSelectionOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelectionOrCaret) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [EditorSuggestTriggerInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestTriggerInfo) | |
| [EditorTransaction](https://docs.obsidian.md/Reference/TypeScript+API/EditorTransaction) | |
| [editorViewField](https://docs.obsidian.md/Reference/TypeScript+API/editorViewField) | |
| [EmbedCache](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) | |
| [EventRef](https://docs.obsidian.md/Reference/TypeScript+API/EventRef) | |
| [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| [ExtraButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ExtraButtonComponent) | |
| [FileManager](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | |
| [FileStats](https://docs.obsidian.md/Reference/TypeScript+API/FileStats) | |
| [FileSystemAdapter](https://docs.obsidian.md/Reference/TypeScript+API/FileSystemAdapter) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [finishRenderMath](https://docs.obsidian.md/Reference/TypeScript+API/finishRenderMath) | |
| [FootnoteCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) | |
| [FootnoteRefCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) | |
| [FootnoteSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteSubpathResult) | |
| [FrontMatterCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | |
| [FrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterInfo) | |
| [FrontmatterLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) | |
| [FuzzyMatch](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getBlobArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/getBlobArrayBuffer) | |
| [getFrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/getFrontMatterInfo) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/getIcon) | |
| [getIconIds](https://docs.obsidian.md/Reference/TypeScript+API/getIconIds) | |
| [getLanguage](https://docs.obsidian.md/Reference/TypeScript+API/getLanguage) | |
| [getLinkpath](https://docs.obsidian.md/Reference/TypeScript+API/getLinkpath) | |
| [HeadingCache](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) | |
| [HeadingSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/HeadingSubpathResult) | |
| [HexString](https://docs.obsidian.md/Reference/TypeScript+API/HexString) | |
| [hexToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/hexToArrayBuffer) | |
| [Hotkey](https://docs.obsidian.md/Reference/TypeScript+API/Hotkey) | |
| [HoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/HoverLinkSource) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [HSL](https://docs.obsidian.md/Reference/TypeScript+API/HSL) | |
| [htmlToMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/htmlToMarkdown) | |
| [IconName](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Instruction](https://docs.obsidian.md/Reference/TypeScript+API/Instruction) | |
| [ISuggestOwner](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [iterateRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateRefs) | |
| [Keymap](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | |
| [KeymapContext](https://docs.obsidian.md/Reference/TypeScript+API/KeymapContext) | |
| [KeymapEventHandler](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventHandler) | |
| [KeymapEventListener](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventListener) | |
| [KeymapInfo](https://docs.obsidian.md/Reference/TypeScript+API/KeymapInfo) | |
| [LinkCache](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) | |
| [ListedFiles](https://docs.obsidian.md/Reference/TypeScript+API/ListedFiles) | |
| [ListItemCache](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) | |
| [livePreviewState](https://docs.obsidian.md/Reference/TypeScript+API/livePreviewState) | |
| [LivePreviewStateType](https://docs.obsidian.md/Reference/TypeScript+API/LivePreviewStateType) | |
| [loadMathJax](https://docs.obsidian.md/Reference/TypeScript+API/loadMathJax) | |
| [loadMermaid](https://docs.obsidian.md/Reference/TypeScript+API/loadMermaid) | |
| [loadPdfJs](https://docs.obsidian.md/Reference/TypeScript+API/loadPdfJs) | |
| [loadPrism](https://docs.obsidian.md/Reference/TypeScript+API/loadPrism) | |
| [Loc](https://docs.obsidian.md/Reference/TypeScript+API/Loc) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessor) | |
| [MarkdownPostProcessorContext](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessorContext) | |
| [MarkdownPreviewEvents](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewEvents) | |
| [MarkdownPreviewRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewRenderer) | |
| [MarkdownPreviewView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPreviewView) | |
| [MarkdownRenderChild](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderChild) | |
| [MarkdownRenderer](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownRenderer) | |
| [MarkdownSectionInformation](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSectionInformation) | |
| [MarkdownSubView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownSubView) | |
| [MarkdownView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownView) | |
| [MarkdownViewModeType](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownViewModeType) | |
| [Menu](https://docs.obsidian.md/Reference/TypeScript+API/Menu) | |
| [MenuItem](https://docs.obsidian.md/Reference/TypeScript+API/MenuItem) | |
| [MenuPositionDef](https://docs.obsidian.md/Reference/TypeScript+API/MenuPositionDef) | |
| [MenuSeparator](https://docs.obsidian.md/Reference/TypeScript+API/MenuSeparator) | |
| [MetadataCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache) | |
| [Modal](https://docs.obsidian.md/Reference/TypeScript+API/Modal) | |
| [Modifier](https://docs.obsidian.md/Reference/TypeScript+API/Modifier) | |
| [moment](https://docs.obsidian.md/Reference/TypeScript+API/moment) | |
| [MomentFormatComponent](https://docs.obsidian.md/Reference/TypeScript+API/MomentFormatComponent) | |
| [normalizePath](https://docs.obsidian.md/Reference/TypeScript+API/normalizePath) | |
| [Notice](https://docs.obsidian.md/Reference/TypeScript+API/Notice) | |
| [ObsidianProtocolData](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolData) | |
| [ObsidianProtocolHandler](https://docs.obsidian.md/Reference/TypeScript+API/ObsidianProtocolHandler) | |
| [OpenViewState](https://docs.obsidian.md/Reference/TypeScript+API/OpenViewState) | |
| [PaneType](https://docs.obsidian.md/Reference/TypeScript+API/PaneType) | |
| [parseFrontMatterAliases](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterAliases) | |
| [parseFrontMatterEntry](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterEntry) | |
| [parseFrontMatterStringArray](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterStringArray) | |
| [parseFrontMatterTags](https://docs.obsidian.md/Reference/TypeScript+API/parseFrontMatterTags) | |
| [parseLinktext](https://docs.obsidian.md/Reference/TypeScript+API/parseLinktext) | |
| [parseYaml](https://docs.obsidian.md/Reference/TypeScript+API/parseYaml) | |
| [Platform](https://docs.obsidian.md/Reference/TypeScript+API/Platform) | |
| [Plugin](https://docs.obsidian.md/Reference/TypeScript+API/Plugin) | |
| [PluginManifest](https://docs.obsidian.md/Reference/TypeScript+API/PluginManifest) | |
| [PluginSettingTab](https://docs.obsidian.md/Reference/TypeScript+API/PluginSettingTab) | |
| [Point](https://docs.obsidian.md/Reference/TypeScript+API/Point) | |
| [PopoverState](https://docs.obsidian.md/Reference/TypeScript+API/PopoverState) | |
| [PopoverSuggest](https://docs.obsidian.md/Reference/TypeScript+API/PopoverSuggest) | |
| [Pos](https://docs.obsidian.md/Reference/TypeScript+API/Pos) | |
| [prepareFuzzySearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareFuzzySearch) | |
| [prepareSimpleSearch](https://docs.obsidian.md/Reference/TypeScript+API/prepareSimpleSearch) | |
| [ProgressBarComponent](https://docs.obsidian.md/Reference/TypeScript+API/ProgressBarComponent) | |
| [Reference](https://docs.obsidian.md/Reference/TypeScript+API/Reference) | |
| [ReferenceCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceCache) | |
| [ReferenceLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceLinkCache) | |
| [removeIcon](https://docs.obsidian.md/Reference/TypeScript+API/removeIcon) | |
| [renderMatches](https://docs.obsidian.md/Reference/TypeScript+API/renderMatches) | |
| [renderMath](https://docs.obsidian.md/Reference/TypeScript+API/renderMath) | |
| [renderResults](https://docs.obsidian.md/Reference/TypeScript+API/renderResults) | |
| [request](https://docs.obsidian.md/Reference/TypeScript+API/request) | |
| [requestUrl](https://docs.obsidian.md/Reference/TypeScript+API/requestUrl) | |
| [RequestUrlParam](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlParam) | |
| [RequestUrlResponse](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponse) | |
| [RequestUrlResponsePromise](https://docs.obsidian.md/Reference/TypeScript+API/RequestUrlResponsePromise) | |
| [requireApiVersion](https://docs.obsidian.md/Reference/TypeScript+API/requireApiVersion) | |
| [resolveSubpath](https://docs.obsidian.md/Reference/TypeScript+API/resolveSubpath) | |
| [RGB](https://docs.obsidian.md/Reference/TypeScript+API/RGB) | |
| [sanitizeHTMLToDom](https://docs.obsidian.md/Reference/TypeScript+API/sanitizeHTMLToDom) | |
| [Scope](https://docs.obsidian.md/Reference/TypeScript+API/Scope) | |
| [SearchComponent](https://docs.obsidian.md/Reference/TypeScript+API/SearchComponent) | |
| [SearchMatches](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatches) | |
| [SearchMatchPart](https://docs.obsidian.md/Reference/TypeScript+API/SearchMatchPart) | |
| [SearchResult](https://docs.obsidian.md/Reference/TypeScript+API/SearchResult) | |
| [SearchResultContainer](https://docs.obsidian.md/Reference/TypeScript+API/SearchResultContainer) | |
| [SectionCache](https://docs.obsidian.md/Reference/TypeScript+API/SectionCache) | |
| [setIcon](https://docs.obsidian.md/Reference/TypeScript+API/setIcon) | |
| [Setting](https://docs.obsidian.md/Reference/TypeScript+API/Setting) | |
| [SettingTab](https://docs.obsidian.md/Reference/TypeScript+API/SettingTab) | |
| [setTooltip](https://docs.obsidian.md/Reference/TypeScript+API/setTooltip) | |
| [Side](https://docs.obsidian.md/Reference/TypeScript+API/Side) | |
| [SliderComponent](https://docs.obsidian.md/Reference/TypeScript+API/SliderComponent) | |
| [sortSearchResults](https://docs.obsidian.md/Reference/TypeScript+API/sortSearchResults) | |
| [SplitDirection](https://docs.obsidian.md/Reference/TypeScript+API/SplitDirection) | |
| [Stat](https://docs.obsidian.md/Reference/TypeScript+API/Stat) | |
| [stringifyYaml](https://docs.obsidian.md/Reference/TypeScript+API/stringifyYaml) | |
| [stripHeading](https://docs.obsidian.md/Reference/TypeScript+API/stripHeading) | |
| [stripHeadingForLink](https://docs.obsidian.md/Reference/TypeScript+API/stripHeadingForLink) | |
| [SubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/SubpathResult) | |
| [SuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/SuggestModal) | |
| [TAbstractFile](https://docs.obsidian.md/Reference/TypeScript+API/TAbstractFile) | |
| [TagCache](https://docs.obsidian.md/Reference/TypeScript+API/TagCache) | |
| [Tasks](https://docs.obsidian.md/Reference/TypeScript+API/Tasks) | |
| [TextAreaComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextAreaComponent) | |
| [TextComponent](https://docs.obsidian.md/Reference/TypeScript+API/TextComponent) | |
| [TextFileView](https://docs.obsidian.md/Reference/TypeScript+API/TextFileView) | |
| [TFile](https://docs.obsidian.md/Reference/TypeScript+API/TFile) | |
| [TFolder](https://docs.obsidian.md/Reference/TypeScript+API/TFolder) | |
| [ToggleComponent](https://docs.obsidian.md/Reference/TypeScript+API/ToggleComponent) | |
| [TooltipOptions](https://docs.obsidian.md/Reference/TypeScript+API/TooltipOptions) | |
| [TooltipPlacement](https://docs.obsidian.md/Reference/TypeScript+API/TooltipPlacement) | |
| [UserEvent](https://docs.obsidian.md/Reference/TypeScript+API/UserEvent) | |
| [ValueComponent](https://docs.obsidian.md/Reference/TypeScript+API/ValueComponent) | |
| [Vault](https://docs.obsidian.md/Reference/TypeScript+API/Vault) | |
| [View](https://docs.obsidian.md/Reference/TypeScript+API/View) | |
| [ViewCreator](https://docs.obsidian.md/Reference/TypeScript+API/ViewCreator) | |
| [ViewState](https://docs.obsidian.md/Reference/TypeScript+API/ViewState) | |
| [ViewStateResult](https://docs.obsidian.md/Reference/TypeScript+API/ViewStateResult) | |
| [Workspace](https://docs.obsidian.md/Reference/TypeScript+API/Workspace) | |
| [WorkspaceContainer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceContainer) | |
| [WorkspaceFloating](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceFloating) | |
| [WorkspaceItem](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceItem) | |
| [WorkspaceLeaf](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceLeaf) | |
| [WorkspaceMobileDrawer](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceMobileDrawer) | |
| [WorkspaceParent](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceParent) | |
| [WorkspaceRibbon](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRibbon) | |
| [WorkspaceRoot](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceRoot) | |
| [WorkspaceSidedock](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSidedock) | |
| [WorkspaceSplit](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceSplit) | |
| [WorkspaceTabs](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceTabs) | |
| [WorkspaceWindow](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindow) | |
| [WorkspaceWindowInitData](https://docs.obsidian.md/Reference/TypeScript+API/WorkspaceWindowInitData) | |
| [Manifest](https://docs.obsidian.md/Reference/Manifest) | |
| [Versions](https://docs.obsidian.md/Reference/Versions) | |
| [Developer policies](https://docs.obsidian.md/Developer+policies) | |
| [Home](https://docs.obsidian.md/Home) | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| # CachedMetadata | |
| ```yaml is-loaded | |
| aliases: "CachedMetadata" | |
| cssclasses: hide-title | |
| ``` | |
| [`CachedMetadata`](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| ## CachedMetadata interface | |
| **Signature:** | |
| ```typescript is-loaded | |
| export interface CachedMetadata | |
| ``` | |
| ## Properties | |
| | Property | Modifiers | Type | Description | | |
| | --- | --- | --- | --- | | |
| | [`blocks?`](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata/blocks) | | `Record` `<string, ` [`BlockCache`](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) `>` | _(Optional)_ | | |
| | [`embeds?`](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata/embeds) | | [`EmbedCache`](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) `[]` | _(Optional)_ | | |
| | [`footnoteRefs?`](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata/footnoteRefs) | | [`FootnoteRefCache`](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) `[]` | _(Optional)_ | | |
| | [`footnotes?`](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata/footnotes) | | [`FootnoteCache`](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) `[]` | _(Optional)_ | | |
| | [`frontmatter?`](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata/frontmatter) | | [`FrontMatterCache`](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | _(Optional)_ | | |
| | [`frontmatterLinks?`](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata/frontmatterLinks) | | [`FrontmatterLinkCache`](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) `[]` | _(Optional)_ | | |
| | [`frontmatterPosition?`](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata/frontmatterPosition) | | [`Pos`](https://docs.obsidian.md/Reference/TypeScript+API/Pos) | _(Optional)_ Position of the frontmatter in the file. | | |
| | [`headings?`](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata/headings) | | [`HeadingCache`](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) `[]` | _(Optional)_ | | |
| | [`links?`](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata/links) | | [`LinkCache`](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) `[]` | _(Optional)_ | | |
| | [`listItems?`](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata/listItems) | | [`ListItemCache`](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) `[]` | _(Optional)_ | | |
| | [`referenceLinks?`](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata/referenceLinks) | | [`ReferenceLinkCache`](https://docs.obsidian.md/Reference/TypeScript+API/ReferenceLinkCache) `[]` | _(Optional)_ | | |
| | [`sections?`](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata/sections) | | [`SectionCache`](https://docs.obsidian.md/Reference/TypeScript+API/SectionCache) `[]` | _(Optional)_ Sections are root level markdown blocks, which can be used to divide the document up. | | |
| | [`tags?`](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata/tags) | | [`TagCache`](https://docs.obsidian.md/Reference/TypeScript+API/TagCache) `[]` | _(Optional)_ | | |
| Links to this page | |
| [blocks](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata/blocks) | |
| [embeds](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata/embeds) | |
| [footnoteRefs](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata/footnoteRefs) | |
| [footnotes](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata/footnotes) | |
| [frontmatter](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata/frontmatter) | |
| [frontmatterLinks](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata/frontmatterLinks) | |
| [frontmatterPosition](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata/frontmatterPosition) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache/getCache) | |
| [getFileCache](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache/getFileCache) | |
| [headings](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata/headings) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [links](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata/links) | |
| [listItems](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata/listItems) | |
| [on('changed')](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache/on('changed')) | |
| [on('deleted')](https://docs.obsidian.md/Reference/TypeScript+API/MetadataCache/on('deleted')) | |
| [referenceLinks](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata/referenceLinks) | |
| [resolveSubpath](https://docs.obsidian.md/Reference/TypeScript+API/resolveSubpath) | |
| [sections](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata/sections) | |
| [tags](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata/tags) | |
| CachedMetadata | |
| Not found | |
| This page does not exist | |
| Interactive graph | |
| On this page | |
| CachedMetadata interface | |
| Properties | |
| [Powered by Obsidian Publish](https://publish.obsidian.md/) | |
| ## DataAdapter Interface | |
| [](https://docs.obsidian.md/Home)[Developer Documentation](https://docs.obsidian.md/Home) | |
| Plugins | |
| Themes | |
| Reference | |
| CSS variables | |
| TypeScript API | |
| AbstractInputSuggest | |
| AbstractTextComponent | |
| App | |
| BaseComponent | |
| BlockCache | |
| BlockSubpathResult | |
| ButtonComponent | |
| CachedMetadata | |
| CacheItem | |
| CapacitorAdapter | |
| CloseableComponent | |
| ColorComponent | |
| Command | |
| Component | |
| DataAdapter | |
| DataWriteOptions | |
| Debouncer | |
| DropdownComponent | |
| Editor | |
| EditorChange | |
| EditorPosition | |
| EditorRange | |
| EditorRangeOrCaret | |
| EditorScrollInfo | |
| EditorSelection | |
| EditorSelectionOrCaret | |
| EditorSuggest | |
| EditorSuggestContext | |
| EditorSuggestTriggerInfo | |
| EditorTransaction | |
| Events | |
| ExtraButtonComponent | |
| FileManager | |
| FileStats | |
| FileSystemAdapter | |
| FileView | |
| FootnoteCache | |
| FootnoteRefCache | |
| FootnoteSubpathResult | |
| FrontMatterInfo | |
| FrontmatterLinkCache | |
| FuzzyMatch | |
| FuzzySuggestModal | |
| HeadingCache | |
| HeadingSubpathResult | |
| Hotkey | |
| HoverLinkSource | |
| HoverParent | |
| HoverPopover | |
| HSL | |
| Instruction | |
| ISuggestOwner | |
| ItemView | |
| Keymap | |
| KeymapContext | |
| KeymapEventHandler | |
| KeymapInfo | |
| ListedFiles | |
| ListItemCache | |
| LivePreviewStateType | |
| Loc | |
| MarkdownEditView | |
| MarkdownFileInfo | |
| MarkdownPostProcessor | |
| MarkdownPostProcessorContext | |
| MarkdownPreviewRenderer | |
| MarkdownPreviewView | |
| MarkdownRenderChild | |
| MarkdownRenderer | |
| MarkdownSectionInformation | |
| MarkdownSubView | |
| MarkdownView | |
| Menu | |
| MenuItem | |
| MenuPositionDef | |
| MetadataCache | |
| Modal | |
| MomentFormatComponent | |
| Notice | |
| ObsidianProtocolData | |
| OpenViewState | |
| Plugin | |
| PluginManifest | |
| PluginSettingTab | |
| Point | |
| PopoverSuggest | |
| Pos | |
| ProgressBarComponent | |
| Reference | |
| ReferenceLinkCache | |
| RequestUrlParam | |
| RequestUrlResponse | |
| RequestUrlResponsePromise | |
| RGB | |
| Scope | |
| SearchComponent | |
| SearchResult | |
| SearchResultContainer | |
| SectionCache | |
| Setting | |
| SettingTab | |
| SliderComponent | |
| Stat | |
| SubpathResult | |
| SuggestModal | |
| TAbstractFile | |
| TagCache | |
| Tasks | |
| TextAreaComponent | |
| TextComponent | |
| TextFileView | |
| TFile | |
| TFolder | |
| ToggleComponent | |
| TooltipOptions | |
| ValueComponent | |
| Vault | |
| View | |
| ViewState | |
| ViewStateResult | |
| Workspace | |
| WorkspaceContainer | |
| WorkspaceFloating | |
| WorkspaceItem | |
| WorkspaceLeaf | |
| WorkspaceMobileDrawer | |
| WorkspaceRoot | |
| WorkspaceSidedock | |
| WorkspaceSplit | |
| WorkspaceTabs | |
| WorkspaceWindow | |
| WorkspaceWindowInitData | |
| [AbstractInputSuggest](https://docs.obsidian.md/Reference/TypeScript+API/AbstractInputSuggest) | |
| [AbstractTextComponent](https://docs.obsidian.md/Reference/TypeScript+API/AbstractTextComponent) | |
| [addIcon](https://docs.obsidian.md/Reference/TypeScript+API/addIcon) | |
| [apiVersion](https://docs.obsidian.md/Reference/TypeScript+API/apiVersion) | |
| [App](https://docs.obsidian.md/Reference/TypeScript+API/App) | |
| [arrayBufferToBase64](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToBase64) | |
| [arrayBufferToHex](https://docs.obsidian.md/Reference/TypeScript+API/arrayBufferToHex) | |
| [base64ToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/base64ToArrayBuffer) | |
| [BaseComponent](https://docs.obsidian.md/Reference/TypeScript+API/BaseComponent) | |
| [BlockCache](https://docs.obsidian.md/Reference/TypeScript+API/BlockCache) | |
| [BlockSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/BlockSubpathResult) | |
| [ButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ButtonComponent) | |
| [CachedMetadata](https://docs.obsidian.md/Reference/TypeScript+API/CachedMetadata) | |
| [CacheItem](https://docs.obsidian.md/Reference/TypeScript+API/CacheItem) | |
| [CapacitorAdapter](https://docs.obsidian.md/Reference/TypeScript+API/CapacitorAdapter) | |
| [CloseableComponent](https://docs.obsidian.md/Reference/TypeScript+API/CloseableComponent) | |
| [ColorComponent](https://docs.obsidian.md/Reference/TypeScript+API/ColorComponent) | |
| [Command](https://docs.obsidian.md/Reference/TypeScript+API/Command) | |
| [Component](https://docs.obsidian.md/Reference/TypeScript+API/Component) | |
| [Constructor](https://docs.obsidian.md/Reference/TypeScript+API/Constructor) | |
| [DataAdapter](https://docs.obsidian.md/Reference/TypeScript+API/DataAdapter) | |
| [DataWriteOptions](https://docs.obsidian.md/Reference/TypeScript+API/DataWriteOptions) | |
| [debounce](https://docs.obsidian.md/Reference/TypeScript+API/debounce) | |
| [Debouncer](https://docs.obsidian.md/Reference/TypeScript+API/Debouncer) | |
| [displayTooltip](https://docs.obsidian.md/Reference/TypeScript+API/displayTooltip) | |
| [DropdownComponent](https://docs.obsidian.md/Reference/TypeScript+API/DropdownComponent) | |
| [EditableFileView](https://docs.obsidian.md/Reference/TypeScript+API/EditableFileView) | |
| [Editor](https://docs.obsidian.md/Reference/TypeScript+API/Editor) | |
| [EditorChange](https://docs.obsidian.md/Reference/TypeScript+API/EditorChange) | |
| [EditorCommandName](https://docs.obsidian.md/Reference/TypeScript+API/EditorCommandName) | |
| [editorEditorField](https://docs.obsidian.md/Reference/TypeScript+API/editorEditorField) | |
| [editorInfoField](https://docs.obsidian.md/Reference/TypeScript+API/editorInfoField) | |
| [editorLivePreviewField](https://docs.obsidian.md/Reference/TypeScript+API/editorLivePreviewField) | |
| [EditorPosition](https://docs.obsidian.md/Reference/TypeScript+API/EditorPosition) | |
| [EditorRange](https://docs.obsidian.md/Reference/TypeScript+API/EditorRange) | |
| [EditorRangeOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorRangeOrCaret) | |
| [EditorScrollInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorScrollInfo) | |
| [EditorSelection](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelection) | |
| [EditorSelectionOrCaret](https://docs.obsidian.md/Reference/TypeScript+API/EditorSelectionOrCaret) | |
| [EditorSuggest](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggest) | |
| [EditorSuggestContext](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestContext) | |
| [EditorSuggestTriggerInfo](https://docs.obsidian.md/Reference/TypeScript+API/EditorSuggestTriggerInfo) | |
| [EditorTransaction](https://docs.obsidian.md/Reference/TypeScript+API/EditorTransaction) | |
| [editorViewField](https://docs.obsidian.md/Reference/TypeScript+API/editorViewField) | |
| [EmbedCache](https://docs.obsidian.md/Reference/TypeScript+API/EmbedCache) | |
| [EventRef](https://docs.obsidian.md/Reference/TypeScript+API/EventRef) | |
| [Events](https://docs.obsidian.md/Reference/TypeScript+API/Events) | |
| [ExtraButtonComponent](https://docs.obsidian.md/Reference/TypeScript+API/ExtraButtonComponent) | |
| [FileManager](https://docs.obsidian.md/Reference/TypeScript+API/FileManager) | |
| [FileStats](https://docs.obsidian.md/Reference/TypeScript+API/FileStats) | |
| [FileSystemAdapter](https://docs.obsidian.md/Reference/TypeScript+API/FileSystemAdapter) | |
| [FileView](https://docs.obsidian.md/Reference/TypeScript+API/FileView) | |
| [finishRenderMath](https://docs.obsidian.md/Reference/TypeScript+API/finishRenderMath) | |
| [FootnoteCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteCache) | |
| [FootnoteRefCache](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteRefCache) | |
| [FootnoteSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/FootnoteSubpathResult) | |
| [FrontMatterCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterCache) | |
| [FrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/FrontMatterInfo) | |
| [FrontmatterLinkCache](https://docs.obsidian.md/Reference/TypeScript+API/FrontmatterLinkCache) | |
| [FuzzyMatch](https://docs.obsidian.md/Reference/TypeScript+API/FuzzyMatch) | |
| [FuzzySuggestModal](https://docs.obsidian.md/Reference/TypeScript+API/FuzzySuggestModal) | |
| [getAllTags](https://docs.obsidian.md/Reference/TypeScript+API/getAllTags) | |
| [getBlobArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/getBlobArrayBuffer) | |
| [getFrontMatterInfo](https://docs.obsidian.md/Reference/TypeScript+API/getFrontMatterInfo) | |
| [getIcon](https://docs.obsidian.md/Reference/TypeScript+API/getIcon) | |
| [getIconIds](https://docs.obsidian.md/Reference/TypeScript+API/getIconIds) | |
| [getLanguage](https://docs.obsidian.md/Reference/TypeScript+API/getLanguage) | |
| [getLinkpath](https://docs.obsidian.md/Reference/TypeScript+API/getLinkpath) | |
| [HeadingCache](https://docs.obsidian.md/Reference/TypeScript+API/HeadingCache) | |
| [HeadingSubpathResult](https://docs.obsidian.md/Reference/TypeScript+API/HeadingSubpathResult) | |
| [HexString](https://docs.obsidian.md/Reference/TypeScript+API/HexString) | |
| [hexToArrayBuffer](https://docs.obsidian.md/Reference/TypeScript+API/hexToArrayBuffer) | |
| [Hotkey](https://docs.obsidian.md/Reference/TypeScript+API/Hotkey) | |
| [HoverLinkSource](https://docs.obsidian.md/Reference/TypeScript+API/HoverLinkSource) | |
| [HoverParent](https://docs.obsidian.md/Reference/TypeScript+API/HoverParent) | |
| [HoverPopover](https://docs.obsidian.md/Reference/TypeScript+API/HoverPopover) | |
| [HSL](https://docs.obsidian.md/Reference/TypeScript+API/HSL) | |
| [htmlToMarkdown](https://docs.obsidian.md/Reference/TypeScript+API/htmlToMarkdown) | |
| [IconName](https://docs.obsidian.md/Reference/TypeScript+API/IconName) | |
| [index](https://docs.obsidian.md/Reference/TypeScript+API/index) | |
| [Instruction](https://docs.obsidian.md/Reference/TypeScript+API/Instruction) | |
| [ISuggestOwner](https://docs.obsidian.md/Reference/TypeScript+API/ISuggestOwner) | |
| [ItemView](https://docs.obsidian.md/Reference/TypeScript+API/ItemView) | |
| [iterateCacheRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateCacheRefs) | |
| [iterateRefs](https://docs.obsidian.md/Reference/TypeScript+API/iterateRefs) | |
| [Keymap](https://docs.obsidian.md/Reference/TypeScript+API/Keymap) | |
| [KeymapContext](https://docs.obsidian.md/Reference/TypeScript+API/KeymapContext) | |
| [KeymapEventHandler](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventHandler) | |
| [KeymapEventListener](https://docs.obsidian.md/Reference/TypeScript+API/KeymapEventListener) | |
| [KeymapInfo](https://docs.obsidian.md/Reference/TypeScript+API/KeymapInfo) | |
| [LinkCache](https://docs.obsidian.md/Reference/TypeScript+API/LinkCache) | |
| [ListedFiles](https://docs.obsidian.md/Reference/TypeScript+API/ListedFiles) | |
| [ListItemCache](https://docs.obsidian.md/Reference/TypeScript+API/ListItemCache) | |
| [livePreviewState](https://docs.obsidian.md/Reference/TypeScript+API/livePreviewState) | |
| [LivePreviewStateType](https://docs.obsidian.md/Reference/TypeScript+API/LivePreviewStateType) | |
| [loadMathJax](https://docs.obsidian.md/Reference/TypeScript+API/loadMathJax) | |
| [loadMermaid](https://docs.obsidian.md/Reference/TypeScript+API/loadMermaid) | |
| [loadPdfJs](https://docs.obsidian.md/Reference/TypeScript+API/loadPdfJs) | |
| [loadPrism](https://docs.obsidian.md/Reference/TypeScript+API/loadPrism) | |
| [Loc](https://docs.obsidian.md/Reference/TypeScript+API/Loc) | |
| [MarkdownEditView](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownEditView) | |
| [MarkdownFileInfo](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownFileInfo) | |
| [MarkdownPostProcessor](https://docs.obsidian.md/Reference/TypeScript+API/MarkdownPostProcessor) | |
| [MarkdownPostProcessorContext](https://docs.obsidian.md/Refere |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment