Integrating with the Language Server Protocol

The implementation of certain language-specific features requires deep knowledge of the target language. I’m talking about features like jump to definition, auto-completion, and showing in-place contextual information such as function signatures or documentation. For want of a better term, I’m going to group these together and refer to them as “Rich Language” features.

To implement a useful “jump to definition” feature, you need to be able to identify the core constructs of that language, whether they’re called functions, methods, classes, modules, or whatever. You also need to be able to locate the file and line number where a construct is defined, which requires knowledge of how the target language ...

Get Modern Vim now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.