A Vue language server based on the Language Server Protocol. This package provides an executable language server that can be integrated with any LSP-compatible editor.
npm install @vue/language-serverAfter installation, the vue-language-server command is available:
# Start in stdio mode
vue-language-server --stdio
# Check version
vue-language-server --version
# Specify TypeScript SDK path
vue-language-server --stdio --tsdk=/path/to/typescript/libThe --tsdk parameter is used to specify the path to the TypeScript SDK. This is useful when you need to use a specific version of TypeScript from your project instead of the globally installed version. The path should point to TypeScript's lib directory.
Simply install the Vue (Official) extension, which already includes this language server.
Configure via nvim-lspconfig:
require('lspconfig').volar.setup({})See sublimelsp/LSP-volar.
See lsp-mode for Vue support.
If you need to start the language server within your own program:
import { startServer } from '@vue/language-server/lib/server';
import * as ts from 'typescript';
// startServer creates an LSP connection and starts listening
// Requires communication with the client via stdio or other means
startServer(ts);Note:
startServercreates a stdio-based LSP connection and communicates with@vue/typescript-pluginthroughtsserver/requestandtsserver/responsenotifications.
This language server communicates with @vue/typescript-plugin through custom tsserver/request and tsserver/response notifications. This architecture allows the language server to leverage the capabilities of the TypeScript language service for complex type inference and code analysis.
@vue/language-core- Core module@vue/language-service- Language service plugins@vue/typescript-plugin- TypeScript plugin
MIT License