Skip to main content
Module

x/denops_core/mod.ts>Denops

🐜 An ecosystem of Vim/Neovim which allows developers to write cross-platform plugins in Deno
Go to Latest
interface Denops
import { type Denops } from "https://deno.land/x/denops_core@v4.0.0/mod.ts";

Denpos is a facade instance visible from each denops plugins.

Properties

readonly
name: string

Denops instance name which uses to communicate with vim.

readonly
meta: Meta

Environment meta information.

readonly
context: Record<string | number | symbol, unknown>

Context object for plugins.

dispatcher: Dispatcher

User defined API name and method map which is used to dispatch API request

Methods

redraw(force?: boolean): Promise<void>

Redraw text and cursor on Vim.

It's not equivalent to redraw command on Vim script and does nothing on Neovim. Use denops.cmd('redraw') instead if you need to execute redraw command.

call(fn: string, ...args: unknown[]): Promise<unknown>

Call an arbitrary function of Vim/Neovim and return the result

batch(...calls: [string, ...unknown[]][]): Promise<unknown[]>

Call arbitrary functions of Vim/Neovim sequentially without redraw and return the results.

It throw a BatchError when one of a function fails. The results attribute of the error instance holds succeeded results of functions prior to the error.

cmd(cmd: string, ctx?: Context): Promise<void>

Execute an arbitrary command of Vim/Neovim under a given context.

eval(expr: string, ctx?: Context): Promise<unknown>

Evaluate an arbitrary expression of Vim/Neovim under a given context and return the result.

dispatch(
name: string,
fn: string,
...args: unknown[],
): Promise<unknown>

Dispatch an arbitrary function of an arbitrary plugin and return the result.