#lsp-client #protocols

lsp-client

A client for the Language Server Protocol

1 unstable release

0.1.0 Feb 15, 2025

#257 in Text editors

MIT license

10KB
148 lines

lsp-client

crates.io Documentation MIT licensed

A client for the Language Server Protocol.

Usage

Start a language server and create a client to communicate with it.

let mut child = Command::new("rust-analyzer")
    .stdin(Stdio::piped())
    .stdout(Stdio::piped())
    .spawn()
    .unwrap();

let stdin = child.stdin.take().unwrap();
let stdout = child.stdout.take()..unwrap();
let (tx, rx) = io_transport(stdin, stdout);
let client = LspClient::new(tx, rx);

See the examples directory for more usage examples.

Dependencies

~6–13MB
~139K SLoC