1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
---@brief
---
--- https://github.com/typed-ember/glint
--- https://typed-ember.gitbook.io/glint/
--- `glint-language-server` is installed when adding `@glint/core` to your project's devDependencies:
---
--- ```sh
--- npm install @glint/core --save-dev
--- yarn add -D @glint/core
---
--- This configuration uses the local installation of `glint-language-server`
--- (found in the `node_modules` directory of your project).
---
--- To use a global installation of `glint-language-server`,
--- set the `init_options.glint.useGlobal` to `true`.
---
--- vim.lsp.config('glint', {
--- init_options = {
--- glint = {
--- useGlobal = true,
--- },
--- },
--- })
---@type vim.lsp.Config
return {
cmd = function(dispatchers, config)
local cmd = (config.init_options.glint.useGlobal or not config.root_dir) and { 'glint-language-server' }
or { config.root_dir .. '/node_modules/.bin/glint-language-server' }
return vim.lsp.rpc.start(cmd, dispatchers)
end,
init_options = {
glint = {
useGlobal = false,
},
},
filetypes = {
'html.handlebars',
'handlebars',
'typescript',
'typescript.glimmer',
'javascript',
'javascript.glimmer',
},
root_markers = {
'.glintrc.yml',
'.glintrc',
'.glintrc.json',
'.glintrc.js',
'glint.config.js',
'package.json',
},
workspace_required = true,
}
|