Skip to content

MarkdownBaseView

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:26

_children: Component[]

Defined in: src/obsidian/augmentations/Components/Component.d.ts:13

Child Components attached to current component, will be unloaded on unloading parent component.

Component._children


_events: EventRef[]

Defined in: src/obsidian/augmentations/Components/Component.d.ts:20

Events that are attached to the current component, will be detached on unloading parent component.

Component._events


_loaded: boolean

Defined in: src/obsidian/augmentations/Components/Component.d.ts:27

Whether the component and its children are loaded.

Component._loaded


app: App

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:30

Reference to the app.


cleanupLivePreview: null | () => void

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:35

Callback to clear all elements.


clipboardManager: ClipboardManager

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:40

Manager that handles pasting text, html and images into the editor.


cm: EditorView

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:45

Codemirror editor instance.


cmInit: boolean

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:50

Whether CodeMirror is initialized.


containerEl: HTMLElement

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:55

Container element of the editor view.


cursorPopupEl: null | HTMLElement

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:60

Popup element for internal link.


optional editor: Editor

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:67

Obsidian editor instance.

editorEl: HTMLElement

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:72

Element in which the CodeMirror editor resides.


editorSuggest: EditorSuggests

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:77

Editor suggester for autocompleting files, links, aliases, etc.


livePreviewPlugin: Extension[]

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:82

The CodeMirror plugins that handle the rendering of, and interaction with Obsidian’s Markdown.


localExtensions: Extension[]

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:87

Local (always active) extensions for the editor.


owner: MarkdownFileInfo

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:92

Controller of the editor view.


sourceMode: boolean

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:97

Whether live preview rendering is disabled.


tableCell: null | TableCellEditor

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:102

Reference to editor attached to table cell, if any.

get activeCM(): EditorView

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:107

Currently active CM instance (table cell CM or main CM).

EditorView


get file(): null | TFile

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:112

Returns attached file of the owner instance.

null | TFile


get path(): string

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:117

Returns path of the attached file.

string

addChild<T>(component): T

Defined in: obsidian.d.ts:911

Adds a child component, loading it if this component is loaded

T extends Component

T

T

Component.addChild

addChild<T>(component): T

Defined in: src/obsidian/augmentations/Components/Component.d.ts:41

Adds a child component, loading it if this component is loaded.

T extends Component

The type of the component to add.

T

The component to add.

T

The added component.

component.addChild(childComponent);

Component.addChild


applyFoldInfo(info): void

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:122

Apply fold history to editor.

FoldInfo

void


buildLocalExtensions(): Extension[]

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:129

Constructs local (always active) extensions for the editor.

Extension[]

clear(): void

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:134

Cleanup live preview, remove and then re-add all editor extensions.

void


destroy(): void

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:139

Clean up live preview, remove all extensions, destroy editor.

void


destroyTableCell(cell?): void

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:144

Removes specified tablecell.

TableCellEditor

void


editTableCell(cell, new_cell): TableCellEditor

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:149

Edit a specified table cell, creating a table cell editor.

TableEditor

TableCell

TableCellEditor


get(): string

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:154

Get the current editor document as a string.

string


getDynamicExtensions(): Extension[]

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:161

Constructs extensions for the editor based on user settings.

Extension[]

load(): void

Defined in: obsidian.d.ts:889

Load this component and its children

void

Component.load

load(): void

Defined in: src/obsidian/augmentations/Components/Component.d.ts:48

Load this component and its children.

void

Component.load


onContextMenu(event, x): Promise<void>

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:178

Creates menu on right mouse click.

PointerEvent

boolean

Promise<void>


onEditorClick(event, element?): void

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:183

Execute click functionality on token on mouse click.

MouseEvent

HTMLElement

void


onEditorDragStart(event): void

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:190

Execute drag functionality on drag start.

DragEvent

void

onEditorLinkMouseover(event, target): void

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:195

Execute hover functionality on mouse over event.

MouseEvent

HTMLElement

void


onload(): void

Defined in: obsidian.d.ts:895

Override this to load your component

void

Component.onload

onload(): void

Defined in: src/obsidian/augmentations/Components/Component.d.ts:64

Override this to load your component.

void

class MyComponent extends Component {
public override onload(): void {
console.log('MyComponent loaded');
}
}

Component.onload


onMenu(event): void

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:202

Execute context menu functionality on right mouse click.

MouseEvent

void


onResize(): void

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:207

Reposition suggest and scroll position on resize.

void


onunload(): void

Defined in: obsidian.d.ts:906

Override this to unload your component

void

Component.onunload


onUpdate(update, changed): void

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:212

Execute functionality on CM editor state update.

ViewUpdate

boolean

void


register(cb): void

Defined in: obsidian.d.ts:921

Registers a callback to be called when unloading

() => any

void

Component.register

register(cb): void

Defined in: src/obsidian/augmentations/Components/Component.d.ts:78

Registers a callback to be called when unloading.

() => any

The callback to be called when unloading.

void

component.register(() => {
console.log('MyComponent unloaded');
});

Component.register


registerDomEvent<K>(el, type, callback, options?): void

Defined in: obsidian.d.ts:931

Registers an DOM event to be detached when unloading

K extends keyof WindowEventMap

Window

K

(this, ev) => any

boolean | AddEventListenerOptions

void

Component.registerDomEvent

registerDomEvent<K>(el, type, callback, options?): void

Defined in: obsidian.d.ts:936

Registers an DOM event to be detached when unloading

K extends keyof DocumentEventMap

Document

K

(this, ev) => any

boolean | AddEventListenerOptions

void

Component.registerDomEvent

registerDomEvent<K>(el, type, callback, options?): void

Defined in: obsidian.d.ts:941

Registers an DOM event to be detached when unloading

K extends keyof HTMLElementEventMap

HTMLElement

K

(this, ev) => any

boolean | AddEventListenerOptions

void

Component.registerDomEvent

registerDomEvent<K>(el, type, callback, options?): void

Defined in: src/obsidian/augmentations/Components/Component.d.ts:96

Registers an DOM event to be detached when unloading.

K extends keyof DocumentEventMap

The type of the event to register.

Document

The element to register the event on.

K

The type of the event to register.

(this, ev) => any

The callback to be called when the event is triggered.

The options for the event.

boolean | AddEventListenerOptions

void

component.registerDomEvent(document, 'click', () => {
console.log('Document clicked');
});

Component.registerDomEvent

registerDomEvent<K>(el, type, callback, options?): void

Defined in: src/obsidian/augmentations/Components/Component.d.ts:119

Registers an DOM event to be detached when unloading.

K extends keyof HTMLElementEventMap

The type of the event to register.

HTMLElement

The element to register the event on.

K

The type of the event to register.

(this, ev) => any

The callback to be called when the event is triggered.

The options for the event.

boolean | AddEventListenerOptions

void

component.registerDomEvent(document.body, 'click', () => {
console.log('Body clicked');
});

Component.registerDomEvent

registerDomEvent<K>(el, type, callback, options?): void

Defined in: src/obsidian/augmentations/Components/Component.d.ts:142

Registers an DOM event to be detached when unloading.

K extends keyof WindowEventMap

The type of the event to register.

Window

The element to register the event on.

K

The type of the event to register.

(this, ev) => any

The callback to be called when the event is triggered.

The options for the event.

boolean | AddEventListenerOptions

void

component.registerDomEvent(window, 'click', () => {
console.log('Window clicked');
});

Component.registerDomEvent


registerEvent(eventRef): void

Defined in: obsidian.d.ts:926

Registers an event to be detached when unloading

EventRef

void

Component.registerEvent

registerEvent(eventRef): void

Defined in: src/obsidian/augmentations/Components/Component.d.ts:159

Registers an event to be detached when unloading.

EventRef

The event to be registered.

void

component.registerEvent(eventRef);

Component.registerEvent


registerInterval(id): number

Defined in: obsidian.d.ts:948

Registers an interval (from setInterval) to be cancelled when unloading Use setInterval instead of setInterval to avoid TypeScript confusing between NodeJS vs Browser API

number

number

Component.registerInterval

registerInterval(id): number

Defined in: src/obsidian/augmentations/Components/Component.d.ts:175

Registers an interval (from setInterval) to be cancelled when unloading. Use setInterval instead of setInterval to avoid TypeScript confusing between NodeJS vs Browser API

number

The id of the interval to register.

number

The id of the interval.

component.registerInterval(window.setInterval(() => {
console.log('Interval');
}, 1000));

Component.registerInterval


registerScopeEvent(keymapEventHandler): void

Defined in: src/obsidian/augmentations/Components/Component.d.ts:181

KeymapEventHandler

void

Component.registerScopeEvent


reinit(): void

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:217

Reinitialize the editor inside new container.

void


removeChild<T>(component): T

Defined in: obsidian.d.ts:916

Removes a child component, unloading it

T extends Component

T

T

Component.removeChild

removeChild<T>(component): T

Defined in: src/obsidian/augmentations/Components/Component.d.ts:195

Removes a child component, unloading it.

T extends Component

The type of the component to remove.

T

The component to remove.

T

The removed component.

component.removeChild(childComponent);

Component.removeChild


reparent(new_container): void

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:222

Move the editor into the new container.

HTMLElement

void


resetSyntaxHighlighting(): void

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:229

Bodge to reset the syntax highlighting.

void

saveHistory(): void

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:234

Save history of file and data (for caching, for faster reopening of same file in editor).

void


set(data, clear): void

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:239

Set the state of the editor.

string

boolean

void


toggleFoldFrontmatter(): void

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:244

Enables/disables frontmatter folding.

void


toggleSource(): void

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:249

Toggle source mode for editor and dispatch effect.

void


triggerClickableToken(token, new_leaf): void

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:254

Execute functionality of token (open external link, open internal link in leaf, …).

Token

boolean

void


unload(): void

Defined in: obsidian.d.ts:900

Unload this component and its children

void

Component.unload

unload(): void

Defined in: src/obsidian/augmentations/Components/Component.d.ts:211

Override this to unload your component.

void

class MyComponent extends Component {
public override onunload(): void {
console.log('MyComponent unloaded');
}
}

Component.unload


updateEvent(): (update) => void

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:259

Callback for onUpdate functionality added as an extension.

(update): void

ViewUpdate

void


updateLinkPopup(): void

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:264

In mobile, creates a popover link on clickable token, if exists.

void


updateOptions(): void

Defined in: src/obsidian/internals/MarkdownBaseView.d.ts:269

Reconfigure/re-add all the dynamic extensions.

void