用python, ipython不确定。
是要把这行改成 python.exe 吗? 我修改了,还是不行呢
先解决json错误吧,这个跟lsp-mode有关。
无语了,是我的python环境有问题,python.exe直接调用了
~/AppData/Local/Micosoft/WindowsApps
里的python.exe,那个奇怪的文件只有0kb,链接到微软的商店,删除掉对应的 环境path变量值就好了。 另外,lsp-python-ms 每次启动 打开xxx.py文件都会索引,可不可以只索引一次?
;; Set up package.el to work with MELPA (require 'package) (package-initialize)
;; Download Evil (unless (package-installed-p 'evil) (package-install 'evil))
;; Enable Evil (require 'evil) (evil-mode 1) (provide 'init-evil) 然后在init.el增加一行require,就可以您的配置上使用evil了,亲测可用
6年过去了, 现在python的lsp哪个最好用?
在用 delance,观望 astral-sh/ty
基于 astrash 公司开发出了 uv 包/项目管理器的实力,我毫不怀疑 ty 一旦将 lsp 的核心功能(代码补全,定义查询)实现后,将会成为最好用的 python lsp。
但是目前来看,最好的 python lsp 应该还是 basedpyright。主要原因:1. 基于微软的 pyright 底子,代码底子基础比较完善。2. 完全社区开发,加入了很多微软为了推广 vscode 的目的不会在 pyright 中实现,只会在闭源 pylance lsp 里实现的功能。
顺便问一下你这个 delance 似乎是个新出来的项目。目前来看文档还比较欠缺,这个项目有什么有意思的点吗?
ty看来前途不错啊,basedpyright 项目大一点的话 diagnosticMode为workspace 会有明显卡顿
这几个能配合 eglot 使用吗?
就是你上面回复中的某个 server 的xx版
可以
(add-to-list 'eglot-server-programs
`((python-mode python-ts-mode) . ,(eglot-alternatives
'(("delance-langserver" "--stdio")
("ruff" "server" "--preview")
"pylsp" "pyls" ("basedpyright-langserver" "--stdio")
("pyright-langserver" "--stdio")
"jedi-language-server"))))