;;; lsp-vetur.el --- vls configuration -*- lexical-binding: t; -*- ;; Copyright (C) 2019 Ivan Yonchovski ;; Author: Ivan Yonchovski ;; Keywords: ;; This program is free software; you can redistribute it and/or modify ;; it under the terms of the GNU General Public License as published by ;; the Free Software Foundation, either version 3 of the License, or ;; (at your option) any later version. ;; This program is distributed in the hope that it will be useful, ;; but WITHOUT ANY WARRANTY; without even the implied warranty of ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;; GNU General Public License for more details. ;; You should have received a copy of the GNU General Public License ;; along with this program. If not, see . ;;; Commentary: ;; VLS configuration ;;; Code: (require 'lsp-mode) (require 'lsp-html) ;; vls shares the same format configurations with ts-ls. (require 'lsp-javascript) (defgroup lsp-vetur nil "LSP support for Vue, using the Vue Language Server." :group 'lsp-mode :link '(url-link "https://github.com/vuejs/vetur/tree/master/server") :package-version '(lsp-mode . "6.1")) (defcustom lsp-vetur-ignore-project-warning nil "Ignore projects without jsconfig.json or tsconfig.json warnings." :type 'boolean :group 'lsp-vetur :package-version '(lsp-mode . "8.0.1")) (defcustom lsp-vetur-use-workspace-dependencies nil "Use dependencies from workspace. Currently only for TypeScript." :type 'boolean :group 'lsp-vetur :package-version '(lsp-mode . "6.1")) (defcustom lsp-vetur-completion-auto-import t "Include completion for module export and auto import them" :type 'boolean :group 'lsp-vetur :package-version '(lsp-mode . "6.1")) (defcustom lsp-vetur-completion-scaffold-snippet-sources '((workspace . "(W)") (user . "(U)") (vetur . "(V)")) "Where Vetur source Scaffold Snippets from and how to indicate them. - workspace: /.vscode/vetur/snippets. - user: /User/snippets/vetur. - vetur: Bundled in Vetur. The source value can be a string \"(User)\" or an emoji \"✌\". Set a source to \"\" to disable it. " :type 'alist :group 'lsp-vetur :link '(url-link "https://vuejs.github.io/vetur/guide/snippet.html") :package-version '(lsp-mode. "8.0.1")) (defcustom lsp-vetur-completion-tag-casing "kebab" "Casing conversion for tag completion" :type '(choice (const "initial") (const "kebab")) :group 'lsp-vetur :package-version '(lsp-mode . "6.1")) (defcustom lsp-vetur-grammar-custom-blocks '((docs . "md") (i18n . "json")) "Mapping from custom block tag name to language name. Used for generating grammar to support syntax highlighting for custom blocks." :type 'alist :group 'lsp-vetur :package-version '(lsp-mode . "6.1")) (defcustom lsp-vetur-validation-template t "Validate vue-html in