TextMate 本身并不像 VS Code 或 PyCharm 那样内置功能强大的“智能感知”(IntelliSense)自动补全,它的补全功能主要依赖于 bundles (包/束) 和 命令。

最主流、效果最好的方法是使用 LSP (Language Server Protocol),这就像为 TextMate 请了一位外部的“智能助手”,专门负责代码分析、自动补全、错误提示等。
下面我将为你介绍两种方法,强烈推荐第一种,因为它更现代、更强大。
使用 LSP (Language Server Protocol) - 推荐方法
这是目前 Textmate 社区推荐的、也是最强大的方式,它会给你带来类似 VS Code 的智能补全体验。
工作原理
LSP 是一个行业标准,它定义了一个协议,使得编辑器(如 TextMate)可以与一个语言服务器(如用于 Python 的 Pylance)进行通信,语言服务器在后台运行,分析你的代码,然后为编辑器提供实时的补全信息、错误检查、定义跳转等。

步骤 1: 安装 Homebrew (如果还没有)
LSP 和 Python 服务器通常通过包管理器安装,macOS 用户最常用的是 Homebrew。
打开终端,运行以下命令安装:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
步骤 2: 安装 Python 和 Pylance 服务器
我们需要安装一个 Python 语言服务器。python-lsp-server 是一个非常流行的选择,它本身集成了 Pylance(微软开发的、业界领先的 Python 语言服务器)作为补全后端。
-
安装 Python (如果你还没有的话) Homebrew 可以轻松安装 Python。
(图片来源网络,侵删)brew install python
-
安装 python-lsp-server 使用
pip(Python 的包管理器) 来安装服务器,推荐在虚拟环境中安装,但为了简单起见,我们直接全局安装。pip install python-lsp-server[all]
[all]会安装所有推荐的插件,包括 Pylance。
步骤 3: 在 TextMate 中安装 LSP Bundle
- 打开 TextMate。
- 进入菜单栏
Bundles->Bundle Editor->Install Bundles...。 - 在弹出的窗口中,搜索
LSP。 - 找到
LSPbundle,点击右侧的Install按钮。 - 安装完成后,重启 TextMate 以确保插件生效。
步骤 4: 配置 LSP 以连接 Python 服务器
- 再次进入
Bundle Editor->Edit Bundles...。 - 在左侧列表中找到并展开
LSP。 - 在 LSP 的子菜单中,你会看到一个
Language Servers列表。 - 找到
pylsp(这就是我们刚才安装的python-lsp-server),勾选它左边的复选框来启用它。
步骤 5: 验证和测试
- 创建一个新的
.py文件。 - 输入
import,然后按⌘ + Space(或通过菜单Edit->Completion),如果配置成功,你应该能看到一个包含模块、函数等的弹出列表。 - 尝试输入
import os,然后输入os.,你应该能看到os模块下的所有方法和属性(如path,environ,listdir等)的自动补全。
如果不起作用,请检查:
- 你的 Python 和
pip是否在系统PATH中,在终端里输入which python3和which pip确认路径。 python-lsp-server是否成功安装,在终端里输入pylsp --version检查。- 确保
pylsp在 TextMate 的 LSP 服务器列表中被勾选。 - 重启 TextMate。
使用传统的 TextMate Python Bundle (旧方法)
这种方法不依赖外部服务器,而是通过 TextMate 自带的 Bundle 来实现一些基础的补全,功能相对有限,但配置简单。
步骤 1: 确保已安装 Python Bundle
TextMate 默认就包含了 Python Bundle,但你可以检查一下。
- 进入
Bundles->Bundle Editor->Show Bundles。 - 在弹出的侧边栏中,确保能看到
Python图标,如果看不到,可能需要重新安装 bundles (参考方法一的步骤 3)。
步骤 2: 检查 Bundle Settings
- 进入
Bundles->Edit Bundles...。 - 在左侧列表中找到并展开
Python。 - 点击
Settings选项卡。 - 确保以下两个选项是勾选的:
Show completions: 这是启用自动补全功能的核心开关。Use /usr/bin/python: 确保它指向你系统上正确的 Python 解释器路径,如果你使用 Homebrew 安装的 Python,可能需要改为/usr/local/bin/python3或/opt/homebrew/bin/python3(对于 Apple Silicon Mac)。
步骤 3: 测试补全
- 创建一个
.py文件。 - 输入
import,然后按⌘ + Space。 - 你会看到一个包含 Python 内置模块和关键词的列表。
局限性:
- 静态补全:它主要基于 Python 的标准库和关键词,无法理解你项目中的自定义类、函数或变量。
- 无上下文感知:它不知道你在哪个函数里,也无法提供基于上下文的智能建议。
- 无错误提示:无法检测语法错误或类型错误。
总结与对比
| 特性 | 方法一: LSP (推荐) | 方法二: Python Bundle |
|---|---|---|
| 智能程度 | 非常高,类似 VS Code | 非常低,仅限标准库和关键词 |
| 上下文感知 | 是,能理解项目结构、类、函数、变量 | 否 |
| 错误检查 | 是,实时提示语法和类型错误 | 否 |
| 功能 | 自动补全、错误检查、跳转到定义、重命名、格式化等 | 仅限基础的单词/模块补全 |
| 配置复杂度 | 较高,需要安装外部依赖 | 非常简单,开箱即用 |
| 适用场景 | 任何严肃的 Python 开发 | 快速写脚本,对补全要求不高 |
最终建议:
如果你想在 TextMate 中获得现代化的 Python 开发体验,请毫不犹豫地选择方法一(LSP),虽然初始配置需要多几个步骤,但它带来的便利和效率提升是巨大的,方法二可以作为备选,或者在不方便安装 LSP 环境的应急情况下使用。
