mattn / vim-lsp-settings Goto Github PK
View Code? Open in Web Editor NEWAuto configurations for Language Server for vim-lsp
License: MIT License
Auto configurations for Language Server for vim-lsp
License: MIT License
Please below mean text append to README.
If you use plugin manager that is plugin merging work(ex dein),
Please setting merging work stop (ex dein / merged = 0).
reason:
Server installed in ../servers directory at cache area.
But when rebuild cache timing, any merging plugin manager erase before installed files(include ../servers).
just updating the whitelist doesn't seem to work unlike typescript. is there some where else that I need to update?
\ 'whitelist': lsp_settings#get('css-languageserver', 'whitelist', ['css', 'less', 'sass']),
I open a .yaml
file and issue :LspInstallServer
but vim returns "Server not found" message.
The tsserver version used by the project often differs each.
The version of typescript used in create-react-app, angular-cli, etc. is different from the version installed by install-typescript-language-server.sh.
Need to be improved to find root_uri/node_modules/.bin/tsserver
.
Calling :LspInstallServer
, I got error messages.
flag provided but not defined: -upgolang.org/x/tools/gopls@latest
usage: go get [-d] [-m] [-u] [-v] [-insecure] [build flags] [packages]
Run 'go help get' for details.
$ vim --version
VIM - Vi IMproved 8.2 (2019 Dec 12, compiled Dec 12 2019 16:52:17)
macOS 版
Compiled by Homebrew
Huge 版 without GUI. 機能の一覧 有効(+)/無効(-)
+acl -farsi -mouse_sysmouse -tag_old_static
+arabic +file_in_path +mouse_urxvt -tag_any_white
+autocmd +find_in_path +mouse_xterm -tcl
+autochdir +float +multi_byte +termguicolors
-autoservername +folding +multi_lang +terminal
-balloon_eval -footer -mzscheme +terminfo
+balloon_eval_term +fork() +netbeans_intg +termresponse
-browse +gettext +num64 +textobjects
++builtin_terms -hangul_input +packages +textprop
+byte_offset +iconv +path_extra +timers
+channel +insert_expand +perl +title
+cindent +job +persistent_undo -toolbar
-clientserver +jumplist +popupwin +user_commands
+clipboard +keymap +postscript +vartabs
+cmdline_compl +lambda +printer +vertsplit
+cmdline_hist +langmap +profile +virtualedit
+cmdline_info +libcall -python +visual
+comments +linebreak +python3 +visualextra
+conceal +lispindent +quickfix +viminfo
+cryptv +listcmds +reltime +vreplace
+cscope +localmap +rightleft +wildignore
+cursorbind +lua +ruby +wildmenu
+cursorshape +menu +scrollbind +windows
+dialog_con +mksession +signs +writebackup
+diff +modify_fname +smartindent -X11
+digraphs +mouse -sound -xfontset
-dnd -mouseshape +spell -xim
-ebcdic +mouse_dec +startuptime -xpm
+emacs_tags -mouse_gpm +statusline -xsmp
+eval -mouse_jsbterm -sun_workshop -xterm_clipboard
+ex_extra +mouse_netterm +syntax -xterm_save
+extra_search +mouse_sgr +tag_binary
システム vimrc: "$VIM/vimrc"
ユーザー vimrc: "$HOME/.vimrc"
第2ユーザー vimrc: "~/.vim/vimrc"
ユーザー exrc: "$HOME/.exrc"
デフォルトファイル: "$VIMRUNTIME/defaults.vim"
省略時の $VIM: "/usr/local/share/vim"
コンパイル: clang -c -I. -Iproto -DHAVE_CONFIG_H -DMACOS_X -DMACOS_X_DARWIN -g -O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1
リンク: clang -L. -fstack-protector-strong -L/usr/local/lib -L/usr/local/opt/libyaml/lib -L/usr/local/opt/[email protected]/lib -L/usr/local/opt/readline/lib -L/usr/local/lib -o vim -lncurses -liconv -lintl -framework AppKit -L/usr/local/opt/lua/lib -llua5.3 -mmacosx-version-min=10.15 -fstack-protector-strong -L/usr/local/lib -L/usr/local/Cellar/perl/5.30.0/lib/perl5/5.30.0/darwin-thread-multi-2level/CORE -lperl -lm -lutil -lc -L/usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/lib/python3.7/config-3.7m-darwin -lpython3.7m -framework CoreFoundation -lruby.2.6
$ go env
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/kyoh86/Library/Caches/go-build"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/kyoh86/go"
GOPROXY=""
GORACE=""
GOROOT="/usr/local/go"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
GCCGO="gccgo"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/y8/4b8kv6r967jdyxxf8q797njr0000gn/T/go-build263071742=/tmp/go-build -gno-record-gcc-switches -fno-common"
$ go version
go version go1.12.14 darwin/amd64
I got the following error when I tried LspInstallServer
in a fresh environment with d7353a2
/home/hnakamur/.vim/plugged/vim-lsp-settings/settings/gopls.vim
Error detected while processing /home/hnakamur/.vim/plugged/vim-lsp-settings/settings/gopls.vim:
line 12:
E492: Not an editor command: LspRegisterServer { ...(snip)...
~/.vimrc
call plug#begin('~/.vim/plugged')
Plug 'prabirshrestha/async.vim'
Plug 'prabirshrestha/vim-lsp'
Plug 'mattn/vim-lsp-settings'
call plug#end()
Can it add a option, if there have not lsp server, run LspInstallServer
.
Or echo a message, not jump error.
Current version, When pyls
is not installed, vim test.py
, will jump a error.
Error detected while processing function lsp#enable[19]..<SNR>78_register_events[17]..<SNR>78_on_text_document_did_open[5]..<SNR>78_ensure_flush[1]..lsp#utils#step#start[1]..<SNR>99_next[9]..<lambda>5[1]..<SNR
>78_ensure_start[47]..<SNR>99_callback[1]..<SNR>99_next[9]..<lambda>6[1]..<SNR>78_ensure_init[57]..<SNR>78_send_request[7]..lsp#client#send_request[1]..<SNR>100_lsp_send[36]..async#job#send[1]..<SNR>101_job_se
nd:
line 6:
E631: ch_sendraw(): write failed
Using the below settings with the lsp4xml server does not seem to be working correctly. Looking at the logs it looks like the true/false values are wrapped in quotes (which is necessary in the vim setting) but the quotes should be removed when passed to the server. That is my guess at least.
let g:lsp_settings = {
\ 'lsp4xml':{
\ 'initialization_options':{
\ 'settings':{
\ 'format': {
\ 'splitAttributes': 'true',
\ 'spaceBeforeEmptyCloseTag':'false',
\ }
\ }
\ }
\ },
\}
I can't able to make clangd
install properly with :LspInstallServer
on c
sourcefile:
/usr/bin/lsb_release
Downloading clangd and LLVM...
hello
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 383M 100 383M 0 0 2965k 0 0:02:12 0:02:12 --:--:-- 3658k
./clangd: /usr/lib/libtinfo.so.6: no version information available (required by ./clangd)
clangd version 9.0.0 (https://github.com/llvm/llvm-project.git fe6dbadc0d53efdc34c096dd1695f23467ea6591)
ldd ./clangd
./clangd: /usr/lib/libtinfo.so.6: no version information available (required by ./clangd)
linux-vdso.so.1 (0x00007ffe347c4000)
libpthread.so.0 => /usr/lib/libpthread.so.0 (0x00007f6fcc9e8000)
libz.so.1 => /usr/lib/libz.so.1 (0x00007f6fcc9ce000)
librt.so.1 => /usr/lib/librt.so.1 (0x00007f6fcc9c3000)
libdl.so.2 => /usr/lib/libdl.so.2 (0x00007f6fcc9be000)
libtinfo.so.6 => /usr/lib/libtinfo.so.6 (0x00007f6fcc94f000)
libm.so.6 => /usr/lib/libm.so.6 (0x00007f6fcc809000)
libz3.so.4.8 => not found
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007f6fcc61d000)
libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007f6fcc603000)
libc.so.6 => /usr/lib/libc.so.6 (0x00007f6fcc43c000)
/lib64/ld-linux-x86-64.so.2 => /usr/lib64/ld-linux-x86-64.so.2 (0x00007f6fcca2c000)
pacman -Q | grep ncurses
ncurses 6.1-7
ls -l /usr/lib/libtinfo.so.6
lrwxrwxrwx 1 root root 16 Nov 13 17:53 /usr/lib/libtinfo.so.6 -> libncursesw.so.6*
This was working yesterday, but today, when I opened a java file, I cannot install the server anymore. Looks like a recent change broke the feature?
OS: linux
vim: version 8.0.1453
When I open other filetype like *.c, *.cpp, the function works.
Hi,
Some Language server installer scripts for unix-like environemt are using hard-coded /bin/bash
in shebang, but it's not working if bash does not exists /bin/bash
.
For examples, I'm using NixOS Linux and NixOS does not have executable binary on /bin
or /usr/bin
, that has executable binary on /run/current-system/sw/bin
.
I also think that another case, if vim-lsp-settings users does not installed bash, that case is also not working by /bin/bash
does not exists.
So I think that installer scripts should not use hard-coded /bin/bash
, I suggest shebang of installer scripts are changes to /usr/bin/env sh
or /bin/sh
.
Or another suggestion, it's configurable by vimrc about execute shell for installer scripts.
Struggle to make go language server work in my environment (Win10, latest vim/neovim).
gopls
with LspInstallServer
test.go
file with hello world:package main
import "fmt"
func main() {
fmt.Println("Hello World!)
}
LspStatus
shows nothing, No autocompletion, looks like server is not running.08.02.2020 18:51:45:["vim-lsp signs enabled"]
08.02.2020 18:51:45:["vim-lsp highlighting enabled (textprop)"]
08.02.2020 18:51:45:["s:on_text_document_did_open()",1,"txt","C:\\Users\\maksim.kim\\scoop\\apps\\vim-nightly\\current",""]
08.02.2020 18:51:49:["s:on_text_document_did_close()",3]
08.02.2020 18:51:49:["s:on_text_document_did_open()",1,"go","C:\\Users\\maksim.kim\\scoop\\apps\\vim-nightly\\current","file:///C:/Users/maksim.kim/projects/test.go"]
08.02.2020 18:51:53:["s:on_text_document_did_change()",3]
08.02.2020 18:51:53:["s:send_didchange_queue() will be triggered"]
08.02.2020 18:51:57:["s:send_event_queue()"]
08.02.2020 18:52:02:["s:on_text_document_did_close()",3]
Probably I miss something crucial?
PS,
After that I have also created root marker (.git
folder) and go.mod
file -- still nothing works.
vim-lsp-settings/plugin/lsp_settings.vim
Line 35 in 89443bb
It will return [].
Then
If you want to enable Language Server, please do :LspInstallServer
function <SNR>61_vimlsp_install_server の処理中にエラーが検出されました:
行 2:
E684: リストのインデックスが範囲外です: 1
Open GitHub action YAML file, suggest install server.
But plugin https://github.com/yasuhiroki/github-actions-yaml.vim is activating.
Filetype change to yaml.gha
Key search in s:vimlsp_installer
function! s:vimlsp_installer() abort
if !has_key(s:settings, &filetype)
return []
endif
This will return [].
Error occurred.
s:vimlsp_installer
return null list check process add.Occurs in Neovim.
:LspInstallServer
Error detected while processing function <SNR>47_vimlsp_install_server:
line 3:
E117: Unknown function: term_getjob
E15: Invalid expression: term_getjob(bufnr('%'))
vim-lsp-settings/plugin/lsp_settings.vim
Line 100 in b13a1e4
I have read the script and found it installed some local lsp servers under the servers
directroy.
So, is there any way LCN or COC can make use of them ?
Win10
vim8.2.119
I have tried to reinstall pyls (after all plugins cleanup) and I get the following error:
C:\Users\maksim.kim\AppData\Local\Programs\Python\Python38\python.exe
C:\Users\maksim.kim\AppData\Local\Programs\Python\Python37\python.exe
C:\Users\maksim.kim\AppData\Local\Microsoft\WindowsApps\python.exe
C:\Users\maksim.kim\vimfiles\pack\minpac\start\vim-lsp-settings\servers\pyls\venv\Scripts\pip3.exe
Collecting pip
Using cached https://files.pythonhosted.org/packages/00/b6/9cfa56b4081ad13874b0c6f96af8ce16cfbc1cb06bedf8e9164ce5551ec1/pip-19.3.1-py2.py3-none-
any.whl
Installing collected packages: pip
Found existing installation: pip 19.2.3
Uninstalling pip-19.2.3:
Successfully uninstalled pip-19.2.3
ERROR: Could not install packages due to an EnvironmentError: [WinError 5] Access is denied: 'C:\\Users\\maksim.kim\\AppData\\Local\\Temp\\pip-uni
nstall-u_s3s5le\\pip3.exe'
Consider using the `--user` option or check the permissions.
Collecting python-language-server
Using cached https://files.pythonhosted.org/packages/7a/4f/38e322cfcfb04ef4c8b3be731aed773bba2ea5980f6e9a06e698de342026/python-language-server-0
.31.4.tar.gz
Collecting jedi<0.16,>=0.14.1
Using cached https://files.pythonhosted.org/packages/e9/97/55e575a5b49e5c3df9eb3c116c61021d7badf556c816be13bbd7baf55234/jedi-0.15.2-py2.py3-none
-any.whl
Collecting python-jsonrpc-server>=0.3.2
Using cached https://files.pythonhosted.org/packages/44/18/8a34b201ea1c556fc17a297c216ae859d5eef664e914cc60d37c8f6f6d1b/python-jsonrpc-server-0.
3.2.tar.gz
Collecting pluggy
Using cached https://files.pythonhosted.org/packages/a0/28/85c7aa31b80d150b772fbe4a229487bc6644da9ccb7e427dd8cc60cb8a62/pluggy-0.13.1-py2.py3-no
ne-any.whl
Collecting parso>=0.5.2
Using cached https://files.pythonhosted.org/packages/9b/b0/90353a5ece0987279837835224dead0c424833a224195683e188d384e06b/parso-0.5.2-py2.py3-none
-any.whl
Collecting future>=0.14.0
Using cached https://files.pythonhosted.org/packages/45/0b/38b06fd9b92dc2b68d58b75f900e97884c45bedd2ff83203d933cf5851c9/future-0.18.2.tar.gz
Installing collected packages: parso, jedi, future, python-jsonrpc-server, pluggy, python-language-server
Running setup.py install for future ... done
Running setup.py install for python-jsonrpc-server ... done
Running setup.py install for python-language-server ... done
Successfully installed future-0.18.2 jedi-0.15.2 parso-0.5.2 pluggy-0.13.1 python-jsonrpc-server-0.3.2 python-language-server-0.31.4
NOTE: server itself works as far as I can see.
When I open .go
file, lsp throws an error.
Error detected while processing function lsp#enable[19]..<SNR>44_register_events[17]..<SNR>44_on_text_document_did_open[5]..<SNR>44_ensure_flush[1]..lsp#ut
ils#step#start[1]..<SNR>54_next[9]..<lambda>3[1]..<SNR>44_ensure_start[35]..lsp#client#start[1]..<SNR>55_lsp_start[5]..async#job#start[1]..<SNR>56_job_star
t:
line 62:
E474: Invalid argument
I thought it relate to #19, so I did :LspInstallServer
and it seems failed to setup gopls and :LspStatus
says
gopls: not running
the output of :LspInstallServer
1 go: finding golang.org/x/tools/gopls v0.2.2
2 go: finding golang.org/x/tools latest
3 go: finding golang.org/x/xerrors latest
4 go: finding golang.org/x/sync latest
5 go: finding github.com/BurntSushi/toml v0.3.1
6 go: finding honnef.co/go/tools v0.0.1-2019.2.3
7 go: finding github.com/sergi/go-diff v1.1.0
8 go: finding golang.org/x/mod v0.1.0
9 go: finding golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee
10 golang.org/x/tools/gopls/internal/hooks
11 # golang.org/x/tools/gopls/internal/hooks
12 pkg/mod/golang.org/x/tools/[email protected]/internal/hooks/analysis.go:17:30: first argument to append must be slice; have map[string]*analysis.Analyzer
13 pkg/mod/golang.org/x/tools/[email protected]/internal/hooks/analysis.go:20:30: first argument to append must be slice; have map[string]*analysis.Analyzer
14 pkg/mod/golang.org/x/tools/[email protected]/internal/hooks/analysis.go:23:30: first argument to append must be slice; have map[string]*analysis.Analyzer
However, gopls seems installed successfully because there is a gopls
directory on $HOME/.vim/plugged/vim-lsp-settings/servers
.
Vim version:
VIM - Vi IMproved 8.2 (2019 Dec 12, compiled Jan 6 2020 00:32:39)
macOS version
Included patches: 1-50
Compiled by Homebrew
gopls version:
golang.org/x/tools/gopls 0.2.2
golang.org/x/tools/[email protected] h1:ujGisyytgY1VGcmd66wIJ9+wVAfmodXj6daHM43HRXk=
After jumping to definition of Println
function of fmt
, gopls will shutdown. But If I jump to some definitions which belong to current project, gopls works well.
Dockerfile open, then type :LspInstallServer
and error occured.
function <SNR>61_vimlsp_install_server の処理中にエラーが検出されました:
行 2:
E684: リストのインデックスが範囲外です: 1
Currently, filetype check using settings.json
's filetype key name.
vimlsp_suggest_dockerfile FileType
dockerfile
call s:vimlsp_load_or_suggest( 'dockerfile' )
set filetype?
filetype=Dockerfile
Vim autocmd run and suggest, but :LspInstallServer
do not work above reason.
vim-lsp-settings/plugin/lsp_settings.vim
Lines 35 to 36 in 796a6b9
(do not keysetting use, use current filetype directly.)
Hi.
I read the article in Qiita: https://qiita.com/mattn/items/e62b9f16bc487a271a7f and just started to use this plugin.
Thank you for the plugin! It's completely useful to me.
When I installed vim-lsp-settings without installing vim-lsp, of course, running LspInstallServer failed.
User Autocommands for "lsp_setup" の処理中にエラーが検出されました:
E117: 未知の関数です: lsp#register_server
E117: 未知の関数です: lsp#register_server
I think some instructions for installing vim-lsp in README.md may be helpful.
works (only vim-lsp)
if executable('typescript-language-server')
au User lsp_setup call lsp#register_server({
\ 'name': 'typescript-language-server',
\ 'cmd': {server_info->[&shell, &shellcmdflag, 'typescript-language-server --stdio']},
\ 'root_uri':{server_info->lsp#utils#path_to_uri(lsp#utils#find_nearest_parent_file_directory(lsp#utils#get_buffer_path(), 'tsconfig.json'))},
\ 'whitelist': ['typescript', 'typescriptreact'],
\ })
endif
not works(LSP is installed by vim-lsp-settings)
let g:lsp_settings = {'typescript-language-server':{'whitelist': ['typescript', 'typescriptreact']}}
but after typescript file opened, LSP run successfully on typescriptreact file.
Seems like gopls
should support autoimport. Need to wait for this PR to land in vim-lsp. prabirshrestha/vim-lsp#637 (comment). It should also support auto format on save.
Related issues:
microsoft/vscode-go#2476 (comment)
golang/go#31977
golang/go#34115
The Go Language source tools.
Usage: gopls [flags] <command> [command-flags] [command-args]
gopls is a Go language server. It is typically used with an editor to provide
language features. When no command is specified, gopls will default to the 'serve'
command. The language features can also be accessed via the gopls command-line interface.
Available commands are:
main:
serve : run a server for Go code using the Language Server Protocol
version : print the gopls version information
bug : report a bug in gopls
features:
check : show diagnostic results for the specified file
folding_ranges : display selected file's folding ranges
format : format the code according to the go standard
highlight : display selected identifier's highlights
implementation : display selected identifier's implementation
imports : updates import statements
links : list links in a file
query : answer queries about go source code
references : display selected identifier's references
rename : rename selected identifier
signature : display selected identifier's signature
fix : apply suggested fixes
symbols : display selected file's symbols
gopls flags are:
-debug string
serve debug information on the supplied address
-listen string
address on which to listen for remote connections
-logfile string
filename to log to. if value is "auto", then logging to a default output file is enabled
-mode string
no effect
-ocagent string
the address of the ocagent, or off (default "off")
-port int
port on which to run gopls for debugging purposes
-profile.cpu string
write CPU profile to this file
-profile.mem string
write memory profile to this file
-profile.trace string
write trace log to this file
-remote string
*EXPERIMENTAL* - forward all commands to a remote lsp
-rpc.trace
print the full rpc trace in lsp inspector format
-v verbose output
I write this config in my vimrc.
let g:lsp_settings_servers_dir = expand('~/.cache/vim-lsp-settings/servers')
Despite of that, clangd installer tries to create directory under <this repository>/servers/clangd/
mkdir: cannot create directory ‘../servers/clangd’: No such file or directory
But installation succeeded.
The problem is that unnecessary mkdir and caused error above.
g:lsp_settings_servers_dir
was created but it was empty 😢
Outside of modifying g:lsp_settings_root_markers
which changes the root_uri
for all LSPs. It would be nice to be able to provide a lambda function or a list of root markers to dynamically find the root_uri
. Similar to what you can do with vanilla vim-lsp.
lambda
let g:lsp_settings = {
\ 'pyls-ms': {
\ 'root_uri': {server_info->lsp#utils#path_to_uri(
\ lsp#utils#find_nearest_parent_file_directory(
\ lsp#utils#get_buffer_path(), [
\ 'setup.py',
\ 'setup.cfg',
\ 'pyproject.toml',
\ 'requirements.txt',
\ '.git/'
\ ]))},
\ },
\}
array
In order, try to find the nearest parent file directory.
let g:lsp_settings = {
\ 'pyls-ms': {
\ 'root_uri': [
\ 'setup.py',
\ 'setup.cfg',
\ 'pyproject.toml',
\ 'requirements.txt',
\ '.git/'
\ ],
\ },
\}
Or maybe I'm just missing something?
Windows doesn't ship with unzip but it ships with tar.exe - https://docs.microsoft.com/en-us/virtualization/community/team-blog/2017/20171219-tar-and-curl-come-to-windows
Unfortunately omnisharp doesn't seem to have tar.
Might be good to have check for unzip
and if it doesn't exist using powershell to extract.
Powershell might requires signed scripts so it should still perfer unzip.exe over powershell unzip.
I have installed clangd with :LspInstallServer
but the diagnostic throws errors when I include any standard library files.
#include <string>
results in:
main.cpp|1 col 10| clang:Error:pp_file_not_found:In included file: 'string.h' file not found /Users/maciej/.vim/bundle/vim-lsp-settings/servers/clangd/bin/../include/c++/v1/string.h:60:15: note: error occurred here
I took a look at the string
in the .vim/bundle/vim-lsp-settings/servers/clangd/bin/../include/c++/v1/
and it fails at:
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
#pragma GCC system_header
#endif
#include_next <string.h>
with the diagnostics:
string.h|57 col 13| clang:Warning:-Wpragma-system-header-outside-header:#pragma system_header ignored in main file
string.h|57 col 13| clang:Warning:-Wpragma-system-header-outside-header:#pragma system_header ignored in main file
string.h|60 col 15| clang:Error:pp_including_mainfile_in_preamble:Main file cannot be included recursively when building a preamble
I am not sure whether it is my fault, something wrong with the vim-lip-settings or with the llvm code that is downloaded with the :LspInstallServer
, but the c++ diagnostics doesn't work out of the box.
Also it results in very superficial autocompletion of stl, because the clangd can't parse the library and does not complete methods/members of classes.
The Julia language also has a Language Server.
https://github.com/julia-vscode/LanguageServer.jl
Can I ask you the additional support (for Julia)?
Try latest settings in windows.
bash-language-server depends fsevents.
But fsevents only depend mac, also windows/linux OPTIONAL DEPENDENCY)
now windows occur error
Failed to initialize bash-language-server with error -32603: Request initialize failed with message: EPERM: operation not permitted, scandir 'C:\Users\MyName\Application Data'
Change to below:
vim-lsp-settings/installer/npm_install.sh
Line 17 in 53c8e43
npm install --no-optional
It do not install optional package
I try it, but not resolved... 😢
I test install libz3-dev
, but it can't work also.
:LspInstallServer
mkdir: cannot create directory ‘../servers/clangd’: No such file or directory
2 Downloading clangd and LLVM...
3 % Total % Received % Xferd Average Speed Time Time Time Current
4 Dload Upload Total Spent Left Speed
5 100 383M 100 383M 0 0 1222k 0 0:05:21 0:05:21 --:--:-- 1330k
6 Extracting archive...
7 ./clangd: error while loading shared libraries: libz3.so.4.8: cannot open shared object file: No such file or directory
Currently, vim-lsp-settings install servers into servers sub-directory. This is useful for me to check behavior of installers. But some users want to change the location. As you know, lsp_settings_servers_dir
can use to change the location of servers directory.
Now I'm going to change the default location to other. So I hope to hear anyone's opinion. My suggestion is:
On UNIX, the location is $HOME/.config/lsp-servers
, On Windows, %APPDATA%\lsp-servers
. What do you think?
Is there a way to set buffer local options only for buffers which have an lsp server running for them?
This is useful to set omnifunc, keywordprg, map keys, ... for lsp buffers, but fall back to default if the server is not installed.
At the moment, I'm using if executable(...) ...
, but of course, that won't work with LSP servers installed with vim-lsp-settings
.
Maybe we can add an autocmd that is run whenever a language server is registered for the current buffer?
Is it possible to setup gopls for fuzzy matching of completion candidates?
Looks like for govim it is enabled by default
vim-lsp-settings/settings.json
Lines 42 to 48 in 73153e8
Currently pyls requires "python3" command (check in
vim-lsp-settings/plugin/lsp_settings.vim
Lines 46 to 51 in 73153e8
But, windows python3 installed in python.exe, suggestion failed.
I wrongly installed javascript-typescript-langserver
, but for filetype=javasript
(and filetype=typescript
), I want to use typescript-language-server
.
I want to just remove javascript-typescript-langserver
server and config.
I have all required plugins installed, but when issue LspInstallServer
I got the error not an editor command
.
Archlinux / vim-git latest (via aur), install plugin using native vim8 method
but after install , pyls can work, Does this error have any effect ?
Running setup.py bdist_wheel for future ... error
Complete output from command /home/fcying/.vim/.cache/lsp_settings/pyls/venv/bin/python3 -u -c "import setuptools, tokenize;__file__='/tmp/pip-install-laf3r_xx/future/setup.py';f=getattr(tokenize, 'open', op
en)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" bdist_wheel -d /tmp/pip-wheel-3vshusay --python-tag cp37:
usage: -c [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
or: -c --help [cmd1 cmd2 ...]
or: -c --help-commands
or: -c cmd --help
error: invalid command 'bdist_wheel'
----------------------------------------
Failed building wheel for future
Running setup.py clean for future
Failed to build future
Installing collected packages: ujson, parso, jedi, more-itertools, zipp, importlib-metadata, pluggy, future, python-jsonrpc-server, python-language-server
Running setup.py install for future ... done
Successfully installed future-0.18.2 importlib-metadata-1.3.0 jedi-0.15.2 more-itertools-8.0.2 parso-0.5.2 pluggy-0.13.1 python-jsonrpc-server-0.3.2 python-language-server-0.31.4 ujson-1.35 zipp-0.6.0
There's a LSP server for ESLint:
https://www.npmjs.com/package/eslint-server
Is is possible to make it work with vim?
When I run :LspInstallServer typescript-language-server
, it responds with server not found
(I tried different ones: rls, vim, etc).
If I run :LspInstallServer
without arguments, then it goes and fetches efm-langserver and installs it.
Am I doing something wrong?
Thanks.
After :LspInstallServer
of clangd.
I run git status
on this plugin repository, it shows
Untracked files:
(use "git add <file>..." to include in what will be committed)
installer/bin/
installer/clangd
installer/include/
installer/lib/
installer/libexec/
installer/share/
I'm getting the following error when I try to install a language server that uses npm
'npm_install' is not recognized as an internal or external command,
operable program or batch file.
Seems like when using this plugin https://github.com/airblade/vim-rooter, the working directory is the same as vim instead so cd %~dp0
doesn't work as expected and cannot find npm_install
command.
eclipse.jdt.ls on mac is not working correctly. this is because the command in the the installer file is not correct.
the command in the installer file is (notice the linux config):
java -Declipse.application=org.eclipse.jdt.ls.core.id1 -Dosgi.bundles.defaultStartLevel=4 -Declipse.product=org.eclipse.jdt.ls.core.product -Dlog.protocol=true -Dlog.level=ALL -noverify -Xmx1G -javaagent:$DIR/lombok.jar -Xbootclasspath/a:$DIR/lombok.jar -jar $LAUNCHER -configuration $DIR/config_linux -data $DIR/data
in mac, the command should be
java -Declipse.application=org.eclipse.jdt.ls.core.id1 -Dosgi.bundles.defaultStartLevel=4 -Declipse.product=org.eclipse.jdt.ls.core.product -Dlog.protocol=true -Dlog.level=ALL -noverify -Xmx1G -javaagent:$DIR/lombok.jar -Xbootclasspath/a:$DIR/lombok.jar -jar $LAUNCHER -configuration $DIR/config_mac -data $DIR/data
My suggestion would be that this can be fixed by doing something like:
set -e
curl -o jdt-language-server-latest.tar.gz 'http://download.eclipse.org/jdtls/snapshots/jdt-language-server-latest.tar.gz'
curl -o lombok.jar 'https://projectlombok.org/downloads/lombok.jar'
tar xvf jdt-language-server-latest.tar.gz
rm jdt-language-server-latest.tar.gz
cat <<EOF > eclipse-jdt-ls
#!/bin/sh
osType="\$(uname -s)"
case "\${osType}" in
Darwin*) configDir=config_mac;;
Linux*) configDir=config_linux;;
*) configDir=config_linux
esac
DIR=\$(cd \$(dirname \$0); pwd)
LAUNCHER=\$(ls \$DIR/plugins/org.eclipse.equinox.launcher_*.jar)
java -Declipse.application=org.eclipse.jdt.ls.core.id1 -Dosgi.bundles.defaultStartLevel=4 -Declipse.product=org.eclipse.jdt.ls.core.product -Dlog.protocol=true -Dlog.level=ALL -noverify -Xmx1G -javaagent:\$DIR/lombok.jar -Xbootclasspath/a:\$DIR/lombok.jar -jar \$LAUNCHER -configuration \$DIR/\$configDir -data \$DIR/data
EOF
chmod +x eclipse-jdt-ls
Today I have updated plugin and suddenly pyls-ms doesn't start for the same file it worked yesterday #117 (comment).
Now LspStatus
doesn't show anything, and none of the commands work.
Two issues here:
Cannot read property 'dynamicRegistration' of undefined
error. Maybe something similar to this: sublimelsp/LSP#649invalid server name
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.