dart_nvim_api 0.2.2
dart_nvim_api: ^0.2.2 copied to clipboard

Dart native
Flutter Android iOS

A Neovim API for Dart allowing for communication between a Neovim instance and a Dart program. Can be used for creating Neovim plugins, Neovim frontend GUIs, etc.

Build Status Pub

Dart Nvim API #

Neovim API implementation for Dart, based on and inspired by neovim-lib. Still a WIP, so any feedback, contributions, etc. are greatly appreciated.

NOTE: Dart Nvim API is still in its early stages, so there are likely to be breaking API changes.

Example Usage #

import 'package:dart_nvim_api/dart_nvim_api.dart';

void main(List<String> args) async {
  // Start up Neovim instance, with optional `onNotify` and `onRequest`
  // callbacks.
  // See also Nvim.child()
  var nvim = await Nvim.spawn();

  // Run Neovim ex command.
  await nvim.command("echo 'hello'");

  // Get ex command output.

  assert(await nvim.exec('echo 1 + 1', true) == '2');

  // Buffer example:
  var buf = await nvim.createBuf(true, false);
  var bufNameWithoutPath = 'some name';
  await nvim.bufSetName(buf, bufNameWithoutPath);
  var bufName = await nvim.bufGetName(buf);
  assert(bufName.contains(bufNameWithoutPath));

  // Kill Neovim when done.
  nvim.kill();
}
1
likes
85
pub points
16%
popularity

A Neovim API for Dart allowing for communication between a Neovim instance and a Dart program. Can be used for creating Neovim plugins, Neovim frontend GUIs, etc.

Repository (GitHub)
View/report issues

Documentation

API reference

Uploader

smolck01@gmail.com

License

MIT (LICENSE)

Dependencies

meta, msgpack_dart

More

Packages that depend on dart_nvim_api