问题标签 [python-language-server]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 尝试安装 python-language-server 时出现“错误:命令‘gcc’失败,退出状态为 1”
我的系统中安装了以下 pip
我系统中安装的python版本是-
我正在尝试安装python-language-server
并遇到以下错误 -
为 ujson 运行 setup.py install ... 错误 ERROR: Command errored out with exit status 1: command: /usr/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-yoqmgayp/ujson/setup.py'"'"'; file ='"'"'/tmp/pip-install-yoqmgayp/ujson/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)( file ) ;code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(代码,文件,'"'"'exec'"'"'))' 安装 --record /tmp/pip-record-h4azsb93/install-record.
运行 build_ext
构建“ujson”扩展
创建构建
-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -D_GNU_SOURCE -fPIC -fwrapv -fPIC -I./ python -I./lib -I/usr/include/python3.8 -c ./python/ujson.c -o build/temp.linux-x86_64-3.8/./python/ujson.o -D_GNU_SOURCE 在包含的文件中./python/ujson.c:39: ./python/py_defines.h:39:10: 致命错误:Python.h: 没有这样的文件或目录 39 | #包括 | ^~~~~~~~~~ 编译终止。错误:命令“gcc”失败,退出状态为 1 c -o build/temp.linux-x86_64-3.8/./python/ujson.o -D_GNU_SOURCE 在 ./python/ujson.c:39 包含的文件中:./python/py_defines.h:39:10: 致命错误: Python.h: 没有这样的文件或目录 39 | #包括 | ^~~~~~~~~~ 编译终止。错误:命令“gcc”失败,退出状态为 1 c -o build/temp.linux-x86_64-3.8/./python/ujson.o -D_GNU_SOURCE 在 ./python/ujson.c:39 包含的文件中:./python/py_defines.h:39:10: 致命错误: Python.h: 没有这样的文件或目录 39 | #包括 | ^~~~~~~~~~ 编译终止。错误:命令“gcc”失败,退出状态为 1
错误:命令出错,退出状态为 1:/usr/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-yoqmgayp/ujson/setup.py'"'"'; file ='"'"'/tmp/pip-install-yoqmgayp/ujson/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)( file ) ;code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(代码,文件,'"'"'exec'"'"'))' 安装 --record /tmp/pip-record-h4azsb93/install-record.
以下是我的操作系统详细信息 -
我该如何解决这个错误?
language-server-protocol - 语言服务器是远程进程还是本地进程
许多 IDE 和插件都在谈论提供一些 IDE 功能(如自动完成、linting 和突出显示)的语言服务器。语言服务器只是一些也在我的机器上运行的本地进程,还是我的代码被发送到某处进行分析(如果我没有互联网,功能会停止工作)。此外,如果代码被发送到某个地方,那又如何安全?
c# - 嵌入式 IronPython 脚本的代码完成/语言服务器
我有一个应用程序将一些 c# 对象暴露给嵌入式 IronPython 解释器,如下所示:
实际上,python 源代码来自运行时加载的文本文件。
在 VSCode 或其他编辑器中编辑这样的源文件时,提供代码完成的语言服务器显然不知道什么是可用的。所以你没有代码完成和恼人的错误曲线无处不在。
是否有可能为常用的语言服务器之一编写某种插件/提示/linting 文件,以告诉他们导出的 C# API 以在编辑 python 源文件时完成工作代码?
visual-studio-code - 语言服务器协议:获取内部函数/类的符号信息
我想要的是
我正在 VSCode (a la vscode.commands.executeCommand(...)
) 中搜索返回函数/类的内部函数/类的符号信息 (大纲) 的命令。
例子
类似
vscode.commands.executeCommand('vscode.??', Range(2,6))
on的命令
innerfoo
应该返回一个带有and的数组innerfoo2
。
我发现了什么
该命令vscode.commands.executeCommand('vscode.executeDocumentSymbolProvider')
将为整个文档提供第一级符号信息。例如在
只有MyClass
被发现
python - VS Code 未显示有用的 Python 代码片段
Visual Studio Code 不再显示 Python 代码片段。我不知道这是来自 Python 语言服务器的错误(我已经尝试过 Jedi、Microsoft 和 Pylance)还是 VSCode 问题。
它用于显示类的有用代码片段,“if _ name _ = '_ main _'”和 def 语句。
不幸的是,我没有任何关于它过去的照片,但现在它不再向我展示这些片段了。
neovim - 尝试通过 nvim-lspconfig 配置 pyls
我正在尝试从vscode切换到neovim。我已经coc.nvim
配置了,pyright
但现在neovim
提供了对language-server
. 所以我尝试配置python-language-server
. 我已经安装pyls
了pip install python-language-server
。我浏览了lsp-quickstart
. 它说我只需要添加 neovim/nvim-lspconfig
到我的插件,然后添加lua require('lspconfig').pyls.setup{}
到我的init.vim
. 刷新后我收到错误:
我试着用谷歌搜索它,但没有找到任何相关的答案。如果您已配置它,请帮助我。
neovim - python-language-server 配置文件位置
我正在尝试flake8
用作在 neovim v0.5 上使用的默认 python python-language-server
linter。
python-lsp 文档说设置pylsp.configurationSources
为['flake8']
,但没有指定要编辑的文件。
这个配置文件在哪里?
neovim - Neovim 内置 LSP 显示没有可用于 Python 文件的代码操作
当我打开一个 python 文件时,诊断似乎工作正常。然后我导航到出现诊断错误的行,按快捷方式调用代码操作(在我的情况下为“<space>ca”),我收到一条消息“没有可用的代码操作”。我尝试针对不同的错误运行它,例如以下错误:
到目前为止,我已经尝试了两个 LSP 服务器:pyright 和 pylsp,它们都给了我相同的“没有可用的代码操作”
我看到了一个类似的问题,但是 JavaScript在这里问,它建议安装一个插件,但这对我不起作用。
language-server-protocol - python-language-server 不会将我的文件夹确认为项目
在 Odoo 模块上工作,我创建了一个项目文件夹,根据我在书中找到的指示进行布局
“Odoo 14 开发手册 - 第 4 版”
这是我的项目文件夹的布局
src/*
包含 odoo 代码本身和一堆 .pyi 文件,这些文件与 PyCharm 的 Odoo 模块一起分发
contrib/*
包含由 Odoo 社区协会 (OCA) 和意大利 Odoo 用户协会分发的 Odoo 模块(主要是本地化内容)
env
包含 PyCharm 使用的 virtualenv
.venv
包含 Poetry 使用的 virtualenv(我正在考虑切换到 Poetry)
local
包含我正在处理的实际模块
在基于诗歌的环境中,我安装了 python-language-server 作为开发依赖项
这是我pyproject.toml
文件中的一个片段
当我在 Emacs 中打开一个缓冲区时local/project_Im-working-on/models/some-model.py
,python-language-server 将一个.ropeproject
文件夹放在local/project_Im-working-on
这个可以吗 ?
根文件夹不是更合适吗?
我如何指示它找到我的contrib
和src
文件夹?
这是我的 Emacs 初始化文件中的一个片段
python - `pyright` LSP 可以导航到不同的模块吗?
pyright
goto 定义命令应该跳转到不同的模块吗?
我像这样导入python类from a.b.c import Foo
。
当我的光标打开a = Foo()
并且我调用lua vim.lsp.buf.definition()
nvim 时,它只会跳转到文件的顶部,但不会按照定义进入另一个模块。在顶部导入上执行相同的命令无济于事。
我在我的 init.vim 中使用以下脚本来设置root_dir