专栏文章:
0 前言
为什么要写这篇文章?
自从微软推出了 LSP 语言服务协议(Language Server Protocol)后,每种编程语言只需实现一个 Language Server 后端,就可以为任何支持 LSP 协议的 IDE/Editor 提供代码高亮、自动补全、导航重构等功能,而不必为每一个 IDE/Editor 重复开发上述组件。实际上,LSP 和 DAP 的出现正在让 IDE 和编辑器的界限越发模糊。
截止到 2022 年,开源社区已经涌现出一大批优秀的 Language Server 实现,它们在各自领域已经拥有了接近甚至超越商业化 IDE 的功能:
- Rust-Analyzer(Rust)
- Clangd(C/C++)
- Haskell-Language-Server(Haskell)
- Gopls(Go)
- Pylance(Python)
- TexLab(LaTeX)
- …
目前支持 LSP 协议的 IDE/Editor:
- Zed
- Visual Studio Code
- Clion(没错,jetbrains 开发的 Clion 也使用 clangd)
- Neovim
- Sublime Text
- Emacs
- Fleet
- Eclipse
- …
与 VSCode 官方文档配置 相比拥有的优势
- 使用 Pyenv 管理 Python版本
- 使用 venv 构建虚拟环境
- 配合 VSCode 进行开发
1 安装 Pyenv
Pyenv 是用来管理不同 Python 版本的工具,通过它你可以在操作系统中安装多个不同版本的 Python 并随意切换。