return { { "neovim/nvim-lspconfig", ---@class PluginLspOpts opts = { servers = { -- data/conf {{ if not .isServer -}} sqlls = {}, {{ end -}} taplo = {}, -- web html = { filetypes = { "html" {{ if not .isServer }}, "liquid"{{ end }} }, }, css_variables = { mason = false }, cssls = {}, {{ if not .isServer -}} denols = {}, volar = { filetypes = { "typescript", "javascript", "javascriptreact", "typescriptreact", "vue", "json", }, }, stylelint_lsp = { settings = { stylelintplus = { autoFixOnFormat = true, validateOnSave = true, validateOnType = false, }, }, }, {{ end -}} emmet_language_server = { filetypes = { "css", "eruby", "html", "javascriptreact", "less", "sass", "scss", "pug", "typescriptreact", "vue", "blade", }, -- Read more about this options in the [vscode docs](https://code.visualstudio.com/docs/editor/emmet#_emmet-configuration). -- **Note:** only the options listed in the table are supported. init_options = { ---@type table includeLanguages = {}, --- @type string[] excludeLanguages = {}, --- @type string[] extensionsPath = {}, --- @type table [Emmet Docs](https://docs.emmet.io/customization/preferences/) preferences = {}, --- @type boolean Defaults to `true` showAbbreviationSuggestions = true, --- @type "always" | "never" Defaults to `"always"` showExpandedAbbreviation = "always", --- @type boolean Defaults to `false` showSuggestionsAsSnippets = false, --- @type table [Emmet Docs](https://docs.emmet.io/customization/syntax-profiles/) syntaxProfiles = {}, --- @type table [Emmet Docs](https://docs.emmet.io/customization/snippets/#variables) variables = {}, }, }, {{ if not .isServer -}} -- php phpactor = { filetypes = { "php", "blade" }, }, {{ end -}} -- shell bashls = {}, pkgbuild_language_server = { mason = false }, }, }, }, }