我想在 Kate Editor 中使用它. language server plugin 的 Kate 文档建议配置示例,例如:
{
"servers": {
...
"python": {
"command": ["python3", "-m", "pyls", "--check-parent-process"],
"url": "https://github.com/palantir/python-language-server",
"highlightingModeRegex": "^Python$"
}
...
}
}
python 语言服务器开箱即用(确认插件一般没有问题)。
yaml 语言服务器建议命令:
docker run -it quay.io/redhat-developer/yaml-language-server:latest
当我从 bash 运行它时,我看到 docker 已启动:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
fac9a04e2bf0 quay.io/redhat-developer/yaml-language-server:latest "node ./out/server/s…" 12 seconds ago Up 11 seconds practical_euclid
(我将我的用户添加到一个 docker 组,这样我就可以在非 root 模式下运行 docker。Kate 也在我的用户下运行。所以我假设 LSP 也一样,并且也在我的用户下运行它的命令。)
我创建了 Kate LSP 插件配置:
...
"yaml": {
"command": ["docker", "run", "-it", "quay.io/redhat-developer/yaml-language-server:latest"],
"url": "https://github.com/redhat-developer/yaml-language-server",
"highlightingModeRegex": "^YAML$"
},
...
Kate 配置编辑器报告它是一个有效的 JSON。
当我在 Kate 中打开 yaml 文件时,我收到消息:
10:24:14 LSP Client Log Started server yaml@/home/i314691: /usr/bin/docker run -it quay.io/redhat-developer/yaml-language-server:latest
10:24:14 LSP Client Warning Server terminated unexpectedly ... NOT Restarting [/usr/bin/docker run -it quay.io/redhat-developer/yaml-language-server:latest] [homepage: https://github.com/redhat-developer/yaml-language-server]
确实docker会立即终止,所以我不知道如何使用docker log
,因为docker ps
没有显示。
language server plugin 的 Kate 文档建议在语言服务器中启用进一步调试。
不幸的是,我对 node.js 的了解非常有限。你能建议如何解决 node.js docker 问题吗?如何排查yaml语言服务器问题?对于语言服务器和 Kate 之间的故障排除还有其他建议吗?
Kate 编辑器版本信息:
||/ Name Version Architecture Description
+++-====================-===================================-============-============================================
ii kate 4:22.04.2-0ubuntu1~ubuntu22.04~ppa1 amd64 powerful text editor
ii kate5-data 4:22.04.2-0ubuntu1~ubuntu22.04~ppa1 all shared data files for Kate text editor
ii ktexteditor-katepart 5.94.0-0ubuntu1~ubuntu22.04~ppa1 amd64 provide advanced plain text editing services
最佳答案
出于某种原因,docker 无法正常工作,但是当我通过以下方式安装时
sudo snap install yaml-language-server
语言服务器在 Kate 中运行。
编辑:
sudo npm i -g yaml-language-server
也适用于我。
你只需要在 snap 和安装你不使用的 nodejs 之间选择较小的邪恶。 (我最近卸载了 snap,因为它与 Firefox 有冲突。)
关于node.js - 如何在 Kate 编辑器中启用 yaml 语言服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72572787/