Skip to content

Commit e21654c

Browse files
tsukkeemattn
authored andcommitted
fix and simplify the server setting
1 parent 2b489d4 commit e21654c

File tree

1 file changed

+13
-136
lines changed

1 file changed

+13
-136
lines changed

settings/volar-server.vim

Lines changed: 13 additions & 136 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
function! s:get_current_ts_path() abort
2-
let ts_path = '/node_modules/typescript/lib/tsserverlibrary.js'
2+
let ts_path = '/node_modules/typescript/lib'
33

44
let project_dir = lsp#utils#find_nearest_parent_file_directory(lsp#utils#get_buffer_path(), 'package.json')
55
let tsserverlibrary_path = project_dir . ts_path
@@ -9,8 +9,7 @@ function! s:get_current_ts_path() abort
99

1010
let path = filereadable(tsserverlibrary_path) ? tsserverlibrary_path : fallback_path
1111
return {
12-
\ 'serverPath': path,
13-
\ 'localizedPath': v:null,
12+
\ 'tsdk': path,
1413
\ }
1514
endfunction
1615

@@ -20,145 +19,23 @@ function! Vim_lsp_settings_volar_setup_ts_path(options) abort
2019
return initialization_options
2120
endfunction
2221

23-
" cf. https://github.com/johnsoncodehk/volar/blob/master/packages/shared/src/types.ts
22+
" cf. https://github.com/johnsoncodehk/volar/blob/master/packages/language-server/src/types.ts#L102
2423
let g:vim_lsp_settings_volar_options = {
2524
\ 'textDocumentSync': 2,
2625
\ 'typescript': {
27-
\ 'serverPath': '',
28-
\ 'localizedPath': v:null,
26+
\ 'tsdk': '',
2927
\ },
30-
\ 'languageFeatures': {
31-
\ 'references': v:true,
32-
\ 'implementation': v:true,
33-
\ 'definition': v:true,
34-
\ 'typeDefinition': v:true,
35-
\ 'callHierarchy': v:true,
36-
\ 'hover': v:true,
37-
\ 'rename': v:true,
38-
\ 'renameFileRefactoring': v:true,
39-
\ 'signatureHelp': v:true,
40-
\ 'completion': {
41-
\ 'getDocumentSelectionRequest': v:true,
42-
\ },
43-
\ 'documentHighlight': v:true,
44-
\ 'documentLink': v:true,
45-
\ 'workspaceSymbol': v:true,
46-
\ 'codeLens': { 'showReferencesNotification': v:true },
47-
\ 'semanticTokens': v:true,
48-
\ 'codeAction': v:true,
49-
\ 'inlayHints': v:true,
50-
\ 'diagnostics': v:true,
51-
\ 'schemaRequestService': { 'getDocumentContentRequest': v:true },
52-
\ },
53-
\ 'documentFeatures': {
54-
\ 'selectionRange': v:true,
55-
\ 'foldingRange': v:true,
56-
\ 'linkedEditingRange': v:true,
57-
\ 'documentSymbol': v:true,
58-
\ 'documentColor': v:true,
59-
\ 'documentFormatting': v:true,
60-
\ }
61-
\ }
62-
63-
let g:vim_lsp_settings_volar_main_options = {
64-
\ 'textDocumentSync': 2,
65-
\ 'typescript': {
66-
\ 'serverPath': '',
67-
\ 'localizedPath': v:null,
68-
\ },
69-
\ 'languageFeatures': {
70-
\ 'references': v:true,
71-
\ 'implementation': v:true,
72-
\ 'definition': v:true,
73-
\ 'typeDefinition': v:true,
74-
\ 'callHierarchy': v:true,
75-
\ 'hover': v:true,
76-
\ 'rename': v:true,
77-
\ 'renameFileRefactoring': v:true,
78-
\ 'signatureHelp': v:true,
79-
\ 'codeAction': v:true,
80-
\ 'workspaceSymbol': v:true,
81-
\ 'completion': {
82-
\ 'getDocumentSelectionRequest': v:true,
83-
\ },
84-
\ 'schemaRequestService': { 'getDocumentContentRequest': v:true },
85-
\ }
86-
\}
87-
88-
let g:vim_lsp_settings_volar_second_options = {
89-
\ 'textDocumentSync': 2,
90-
\ 'typescript': {
91-
\ 'serverPath': '',
92-
\ 'localizedPath': v:null,
93-
\ },
94-
\ 'languageFeatures': {
95-
\ 'documentHighlight': v:true,
96-
\ 'documentLink': v:true,
97-
\ 'codeLens': { 'showReferencesNotification': v:true },
98-
\ 'semanticTokens': v:true,
99-
\ 'inlayHints': v:true,
100-
\ 'diagnostics': v:true,
101-
\ 'schemaRequestService': { 'getDocumentContentRequest': v:true },
102-
\ }
103-
\}
104-
105-
let g:vim_lsp_settings_volar_document_options = {
106-
\ 'textDocumentSync': 2,
107-
\ 'typescript': {
108-
\ 'serverPath': '',
109-
\ 'localizedPath': v:null,
110-
\ },
111-
\ 'documentFeatures': {
112-
\ 'selectionRange': v:true,
113-
\ 'foldingRange': v:true,
114-
\ 'linkedEditingRange': v:true,
115-
\ 'documentSymbol': v:true,
116-
\ 'documentColor': v:true,
117-
\ 'documentFormatting': v:true
118-
\ }
11928
\ }
12029

12130
augroup vim_lsp_settings_volar_server
12231
au!
123-
if get(g:, 'vim_lsp_settings_volar_experimental_multiple_servers')
124-
LspRegisterServer {
125-
\ 'name': 'volar-server-main',
126-
\ 'cmd': {server_info->lsp_settings#get('volar-server', 'cmd', [lsp_settings#exec_path('volar-server')]+lsp_settings#get('volar-server', 'args', ['--stdio']))},
127-
\ 'root_uri':{server_info->lsp_settings#get('volar-server', 'root_uri', lsp_settings#root_uri('volar-server'))},
128-
\ 'initialization_options': lsp_settings#get('volar-server', 'initialization_options', Vim_lsp_settings_volar_setup_ts_path(g:vim_lsp_settings_volar_main_options)),
129-
\ 'allowlist': lsp_settings#get('volar-server', 'allowlist', ['vue']),
130-
\ 'blocklist': lsp_settings#get('volar-server', 'blocklist', []),
131-
\ 'config': lsp_settings#get('volar-server', 'config', lsp_settings#server_config('volar-server')),
132-
\ }
133-
134-
LspRegisterServer {
135-
\ 'name': 'volar-server-second',
136-
\ 'cmd': {server_info->lsp_settings#get('volar-server', 'cmd', [lsp_settings#exec_path('volar-server')]+lsp_settings#get('volar-server', 'args', ['--stdio']))},
137-
\ 'root_uri':{server_info->lsp_settings#get('volar-server', 'root_uri', lsp_settings#root_uri('volar-server'))},
138-
\ 'initialization_options': lsp_settings#get('volar-server', 'initialization_options', Vim_lsp_settings_volar_setup_ts_path(g:vim_lsp_settings_volar_second_options)),
139-
\ 'allowlist': lsp_settings#get('volar-server', 'allowlist', ['vue']),
140-
\ 'blocklist': lsp_settings#get('volar-server', 'blocklist', []),
141-
\ 'config': lsp_settings#get('volar-server', 'config', lsp_settings#server_config('volar-server')),
142-
\ }
143-
144-
LspRegisterServer {
145-
\ 'name': 'volar-server-document',
146-
\ 'cmd': {server_info->lsp_settings#get('volar-server', 'cmd', [lsp_settings#exec_path('volar-server')]+lsp_settings#get('volar-server', 'args', ['--stdio']))},
147-
\ 'root_uri':{server_info->lsp_settings#get('volar-server', 'root_uri', lsp_settings#root_uri('volar-server'))},
148-
\ 'initialization_options': lsp_settings#get('volar-server', 'initialization_options', Vim_lsp_settings_volar_setup_ts_path(g:vim_lsp_settings_volar_document_options)),
149-
\ 'allowlist': lsp_settings#get('volar-server', 'allowlist', ['vue']),
150-
\ 'blocklist': lsp_settings#get('volar-server', 'blocklist', []),
151-
\ 'config': lsp_settings#get('volar-server', 'config', lsp_settings#server_config('volar-server')),
152-
\ }
153-
else
154-
LspRegisterServer {
155-
\ 'name': 'volar-server',
156-
\ 'cmd': {server_info->lsp_settings#get('volar-server', 'cmd', [lsp_settings#exec_path('volar-server')]+lsp_settings#get('volar-server', 'args', ['--stdio']))},
157-
\ 'root_uri':{server_info->lsp_settings#get('volar-server', 'root_uri', lsp_settings#root_uri('volar-server'))},
158-
\ 'initialization_options': lsp_settings#get('volar-server', 'initialization_options', Vim_lsp_settings_volar_setup_ts_path(g:vim_lsp_settings_volar_options)),
159-
\ 'allowlist': lsp_settings#get('volar-server', 'allowlist', ['vue']),
160-
\ 'blocklist': lsp_settings#get('volar-server', 'blocklist', []),
161-
\ 'config': lsp_settings#get('volar-server', 'config', lsp_settings#server_config('volar-server')),
162-
\ }
163-
endif
32+
LspRegisterServer {
33+
\ 'name': 'volar-server',
34+
\ 'cmd': {server_info->lsp_settings#get('volar-server', 'cmd', [lsp_settings#exec_path('volar-server')]+lsp_settings#get('volar-server', 'args', ['--stdio']))},
35+
\ 'root_uri':{server_info->lsp_settings#get('volar-server', 'root_uri', lsp_settings#root_uri('volar-server'))},
36+
\ 'initialization_options': lsp_settings#get('volar-server', 'initialization_options', Vim_lsp_settings_volar_setup_ts_path(g:vim_lsp_settings_volar_options)),
37+
\ 'allowlist': lsp_settings#get('volar-server', 'allowlist', ['vue']),
38+
\ 'blocklist': lsp_settings#get('volar-server', 'blocklist', []),
39+
\ 'config': lsp_settings#get('volar-server', 'config', lsp_settings#server_config('volar-server')),
40+
\ }
16441
augroup END

0 commit comments

Comments
 (0)