UNPKG

coc.nvim

Version:

LSP based intellisense engine for neovim & vim8.

45 lines (44 loc) 1.17 kB
import { Neovim } from '@chemzqm/neovim'; import { TaskOptions } from '../types'; import { Disposable, Event } from 'vscode-languageserver-protocol'; /** * Controls long running task started by vim. * Useful to keep the task running after CocRestart. * * @public */ export default class Task implements Disposable { private nvim; private id; private disposables; private readonly _onExit; private readonly _onStderr; private readonly _onStdout; readonly onExit: Event<number>; readonly onStdout: Event<string[]>; readonly onStderr: Event<string[]>; /** * @param {Neovim} nvim * @param {string} id unique id */ constructor(nvim: Neovim, id: string); /** * Start task, task will be restarted when already running. * * @param {TaskOptions} opts * @returns {Promise<boolean>} */ start(opts: TaskOptions): Promise<boolean>; /** * Stop task by SIGTERM or SIGKILL */ stop(): Promise<void>; /** * Check if the task is running. */ readonly running: Promise<boolean>; /** * Stop task and dispose all events. */ dispose(): void; }