mirror of
https://github.com/l0ng-ai/openidea.git
synced 2026-11-07 10:16:03 -10:00
Plugin API 1.3 gains an optional hover-provider export (worlds plugin-hover and hover): hover(doc, at) returns Markdown and the range it describes. A plugin declares the hover kind under [[contributes.providers]] for any language; the host asks it with the language server, under the edit-path budget, and shows the server's hover first and each plugin's below a rule. Declaring the kind needs engines.openidea ^1.3. The Rust SDK gains openidea_plugin::hover and register_plugin!(T, hover); every shipped component is rebuilt for the WIT change.
20 lines
377 B
Plaintext
20 lines
377 B
Plaintext
package openidea:[email protected];
|
|
|
|
interface hover-provider {
|
|
use types.{position, range};
|
|
|
|
record document {
|
|
path: string,
|
|
language: string,
|
|
version: u64,
|
|
text: string,
|
|
}
|
|
|
|
record hover-content {
|
|
markdown: string,
|
|
range: option<range>,
|
|
}
|
|
|
|
hover: func(doc: document, at: position) -> option<hover-content>;
|
|
}
|