github vespa-engine/vespa lsp-v2.4.1
Vespa Language Server 2.4.1

latest releases: lsp-v2.4.7, v8.575.21, lsp-v2.4.6...
4 months ago

The Language-server for Vespa schemas

Use the jar file to integration the language server into your favorite editor.

For Visual Studio Code and IntelliJ the language server should also be available in the marketplace for the editor.

Schema Language Server in Neovim

Requirements

Requires java to be excutable on the system.

Optional: lspconfig plugin for nvim.

Installation

Download schema-language-server-jar-with-dependencies.jar.

Using lspconfig

Register .sd and .profile as filetypes (in init.lua):

vim.filetype.add {
  extension = {
    profile = 'sd',
    sd = 'sd'
  }
}

Create a config for schema language server (in init.lua):

local lspconfig = require "lspconfig"
local configs = require "lspconfig.configs"

if not configs.schemals then
    configs.schemals = {
        default_config = {
            filetypes = { 'sd' },
            cmd = { 'java', '-jar', '/path/to/schema-language-server-jar-with-dependencies.jar' },
            root_dir = lspconfig.util.root_pattern('.')
        },
    }
end

lspconfig.schemals.setup{
    -- optional on_attach function for setting keybindings etc.
    on_attach = function(client, bufnr)
       	-- local opts = {buffer = bufnr, remap = false}
	    -- vim.keymap.set("n", "gd", function() vim.lsp.buf.definition() end, opts)
    end
}

Manual Installation

If you don't want to use lspconfig you can refer to the LSP documentation for Neovim for manually registering the server.

What's New

  • Added support for formatting Schema files and selections.
  • Added progress indication when indexing large workspaces.
  • Added basic support for completion in YQL files.
  • Minor bug fixes.

Don't miss a new vespa release

NewReleases is sending notifications on new releases.