包python-language-server (Python支持)是Arch中凯特编辑器的一个新的可选依赖项。
下面是一些关于为什么这可能很有趣的背景介绍:
为什么是LSP?LSP创造了一个机会,可以减少m-times n复杂性问题,即在任何编辑器、IDE或客户端端点中为任何编程语言提供更高水平的支持,使之成为一个更简单的m+-n问题。
我决定试一试。因此,我在这里查看了更多的信息:
palantir/ Python -语言服务器:Python语言服务器协议的一种实现
我想使用YAPF,所以我注意到了以下信息:
可以使用附加语法安装可选提供程序。要安装YAPF格式,例如:
pip install 'python-language-server[yapf]'我想安装它使用的拱形回购,而不是pip。我的问题是,当从Arch repos安装‘python server’时,我如何获得相同的结果?这是否等同呢?
pacman -Syu python-language-server yapf可选背景:我为什么要使用YAPF:
大多数当前用于Python的格式化程序--例如autopep8和pep8ify --都是为了从代码中删除链接错误。这有一些明显的局限性。例如,符合PEP 8准则的代码可能不会重新格式化。但这并不意味着代码看起来很好。YAPF采取了不同的方法。它是以丹尼尔·贾斯珀( Daniel )开发的“clang格式”为基础的。本质上,该算法将代码重新格式化为符合样式指南的最佳格式,即使原始代码没有违反样式指南。这个想法也类似于Go编程语言的“gofmt”工具:结束关于格式的所有神圣战争--如果一个项目的整个代码基只要做了修改就简单地通过YAPF,那么整个项目的样式保持一致,在每个代码评审中争论样式都是没有意义的。最终目标是YAPF生成的代码与程序员按照样式指南编写的代码一样好。它消除了维护代码的一些苦差事。
发布于 2020-02-07 05:52:32
pacman -S python-language-server yapf将实现与pip install 'python-language-server[yapf]'相同的结果。您甚至可以通过使用pacman安装并尝试pip命令来证明这一点,它将告诉您已经满足了需求。
$ pip install 'python-language-server[yapf]'
Requirement already satisfied: python-language-server[yapf] in /usr/lib/python3.8/site-packages (0.31.7)
Requirement already satisfied: jedi<0.16,>=0.14.1 in /usr/lib/python3.8/site-packages (from python-language-server[yapf]) (0.15.1)
Requirement already satisfied: python-jsonrpc-server>=0.3.2 in /usr/lib/python3.8/site-packages (from python-language-server[yapf]) (0.3.4)
Requirement already satisfied: pluggy in /usr/lib/python3.8/site-packages (from python-language-server[yapf]) (0.13.1)
Requirement already satisfied: ujson<=1.35 in /usr/lib/python3.8/site-packages (from python-language-server[yapf]) (1.35)
Requirement already satisfied: yapf in /usr/lib/python3.8/site-packages (from python-language-server[yapf]) (0.29.0)
Requirement already satisfied: parso>=0.5.0 in /usr/lib/python3.8/site-packages (from jedi<0.16,>=0.14.1->python-language-server[yapf]) (0.6.1)https://unix.stackexchange.com/questions/566239
复制相似问题