杰瑞科技汇

sublime python 自动补全

下面我将为你提供一个详细的、从零开始的配置指南,让你在 Sublime Text 中拥有顶级的 Python 自动补全体验。

sublime python 自动补全-图1
(图片来源网络,侵删)

第一步:安装 Package Control

Package Control 是 Sublime Text 的插件管理器,安装其他插件都依赖于它,如果你已经安装,可以跳过这一步。

  1. 访问官网:打开浏览器,访问 https://packagecontrol.io/installation
  2. 获取代码:网站会自动检测你的操作系统和 Sublime Text 版本,并生成一段 Python 代码。请务必复制你专属的代码
  3. 执行代码
    • 打开 Sublime Text。
    • 通过菜单 View > Show Console (或者快捷键 `Ctrl+``) 打开控制台。
    • 将刚才复制的代码粘贴到控制台中,按回车键执行。
  4. 重启 Sublime Text:安装完成后,重启 Sublime Text。

你可以通过 Ctrl+Shift+P (Windows/Linux) 或 Cmd+Shift+P (Mac) 打开命令面板,输入 Package Control: Install Package,如果能出现这个选项,说明安装成功。


第二步:安装核心插件 SublimeJedi

SublimeJedi 是我们实现强大自动补全的核心。

  1. 打开命令面板:Ctrl+Shift+P (Win/Linux) 或 Cmd+Shift+P (Mac)。
  2. 输入 Package Control: Install Package 并回车。
  3. 在出现的列表中,输入 SublimeJedi 并选择它进行安装。
  4. 等待安装完成。

第三步:配置 Sublime Text (关键步骤)

为了确保 SublimeJedi 能正常工作,我们需要修改 Sublime Text 的配置文件。

sublime python 自动补全-图2
(图片来源网络,侵删)
  1. 打开用户配置文件

    • 通过菜单 Preferences > Settings 打开设置。
    • 你会看到两个标签页:Default (默认设置) 和 User (用户设置)。请务必在 User 标签页中进行修改,这样你的自定义设置不会被覆盖。
    • 你也可以直接通过菜单 Preferences > Settings - User 打开。
  2. 添加或修改配置: 在 User 设置文件中,添加或修改以下 JSON 配置,如果你已经有其他配置,请用逗号隔开。

{
    // 使用 SublimeJedi 作为 Python 的自动补全引擎
    "auto_complete_selector": "source.python, text.html",
    // 设置 Jedi 的路径(SublimeJedi 通常会自动找到,但显式设置更可靠)
    // "jedi_path": "C:/path/to/your/python/Scripts/jedi.exe", // Windows
    // "jedi_path": "/usr/local/bin/jedi", // macOS / Linux
    // 开启实时自动补全(输入时自动弹出提示)
    "auto_complete": true,
    // 设置自动补全的触发方式
    // "auto_complete_commit_on_tab": true, // 按 Tab 键接受补全建议
    // "auto_complete_delay": 50, // 延迟多少毫秒后弹出提示
    // 重要:让 SublimeJedi 处理文档字符串和悬停提示
    "popup_max_width": 800,
    "show_definitions": true,
    "show_in_symbols": true,
    "show_function_definition": true,
    // 可选:设置 Python 解释器路径,让 Sublime 知道使用哪个 Python 环境
    // "python_interpreter": "C:/path/to/your/python.exe"
}

配置说明

  • auto_complete_selector: 这是最重要的设置之一,它告诉 Sublime 在哪些文件类型下启用自动补全。source.python 确保了在 Python 文件中启用。
  • jedi_path: SublimeJedi 无法自动找到 jedi 库,你可以手动指定其路径,你可以通过在终端/命令行运行 python -m jedi --version 来找到 jedi 模块的位置。
  • python_interpreter: 如果你使用虚拟环境(如 venvconda),强烈建议设置此项,指向虚拟环境中的 python.exe (Windows) 或 python (macOS/Linux),这样 Sublime 就能正确分析你的项目依赖。

第四步:选择 Python 解释器 (强烈推荐)

如果你在项目中使用了虚拟环境(这是现代 Python 开发的标准做法),你必须告诉 Sublime Text 使用哪个环境的 Python 解释器,否则补全和代码检查都会基于全局的 Python 环境,导致找不到项目中的库。

sublime python 自动补全-图3
(图片来源网络,侵删)
  1. 安装 LSP 插件:LSP (Language Server Protocol) 是一个更现代的语言服务器框架,SublimeJedi 也可以通过它来工作,首先安装 LSP 插件:Ctrl+Shift+P -> Package Control: Install Package -> LSP
  2. 安装 LSP-jedi 插件:同样,Ctrl+Shift+P -> Package Control: Install Package -> LSP-jedi,这个插件将 Jedi 作为 LSP 服务器运行,提供更稳定的功能。
  3. 设置解释器
    • 打开你的 Python 项目。
    • 通过命令面板 (Ctrl+Shift+P) 输入 LSP: Select Interpreter
    • Sublime 会自动扫描并列出所有可用的 Python 解释器,包括你的虚拟环境,选择你的项目对应的那个即可。

第五步:享受强大的自动补全

完成以上配置后,你就可以享受以下功能了:

  1. 代码补全

    • 输入 import r,会自动提示 requests
    • 输入 my_list.,会提示所有列表的方法,如 append(), pop() 等。
    • 输入 my_dict.,会提示字典的方法。
    • 输入一个函数名后跟 ,会显示函数的参数列表和文档字符串。
  2. Go to Definition (跳转到定义)

    • 将光标放在一个变量、函数或类名上。
    • F12 (Windows/Linux) 或 F12 (Mac)。
    • Sublime 会直接跳转到该变量/函数/类的定义处。
  3. Find All References (查找所有引用)

    • 选中一个变量或函数名。
    • Shift+F12 (Windows/Linux) 或 Shift+F12 (Mac)。
    • Sublime 会在侧边栏显示所有引用了该名称的文件。
  4. 自动导入

    • 当你使用一个未导入的模块中的函数时,SublimeJedi 通常会自动在顶部添加 import 语句。

常见问题排查

  • 问题:自动补全不工作,或者提示不准确。

    • 排查
      1. 确认 SublimeJediLSP-jedi (如果使用) 已正确安装。
      2. 检查 Preferences > Settings - User 中的 auto_complete_selector 是否包含 source.python
      3. 最常见的原因:没有正确设置 Python 解释器,请确保你为项目选择了正确的虚拟环境解释器(通过 LSP: Select Interpreter)。
      4. 尝试重启 Sublime Text。
  • 问题jedi 模块找不到。

    • 排查
      1. 确认你的 Python 环境中安装了 jedi 库,在终端运行 python -m pip install jedi
      2. User 设置中手动指定 jedi_path
  • 问题:补全提示太慢。

    • 排查
      1. 对于非常大的项目,Jedi 的分析需要时间,这是正常现象。
      2. 可以尝试关闭一些不必要的插件。
      3. 检查你的电脑性能。

通过以上步骤,你就可以在 Sublime Text 中配置出一个功能媲美 VS Code 的 Python 开发环境了,祝你编码愉快!

分享:
扫描分享到社交APP
上一篇
下一篇