diff options
Diffstat (limited to 'autoload')
-rw-r--r-- | autoload/lsp_settings.vim | 6 | ||||
-rw-r--r-- | autoload/lsp_settings/utils.vim | 6 |
2 files changed, 10 insertions, 2 deletions
diff --git a/autoload/lsp_settings.vim b/autoload/lsp_settings.vim index 08d1d64..867c1ff 100644 --- a/autoload/lsp_settings.vim +++ b/autoload/lsp_settings.vim @@ -10,7 +10,11 @@ call remove(s:settings, '$schema') let s:ftmap = {} function! lsp_settings#servers_dir() abort - return get(g:, 'lsp_settings_servers_dir', s:servers_dir) + let l:path = fnamemodify(get(g:, 'lsp_settings_servers_dir', s:servers_dir), ':p') + if has('win32') + let l:path = substitute(l:path, '/', '\', 'g') + endif + return substitute(l:path, '[\/]$', '', '') endfunction function! lsp_settings#executable(cmd) abort diff --git a/autoload/lsp_settings/utils.vim b/autoload/lsp_settings/utils.vim index d342388..96feb0a 100644 --- a/autoload/lsp_settings/utils.vim +++ b/autoload/lsp_settings/utils.vim @@ -24,5 +24,9 @@ function! lsp_settings#utils#first_one(lines) abort if empty(a:lines) return '' endif - return fnamemodify(split(a:lines, "\n")[0], ':p') + let l:path = fnamemodify(split(a:lines, "\n")[0], ':p') + if has('win32') + let l:path = substitute(l:path, '/', '\', 'g') + endif + return l:path endfunction |