TextMate 中 Cmd+/ 可一键注释/取消注释 PHP 代码,前提是启用 PHP Bundle、文档语法识别为 PHP(非 PHP (HTML)),且注释符依上下文自动匹配 // 或 #。
TextMate 默认不带 PHP 快速注释支持,

Cmd+/ 就能一键注释/取消注释 PHP 代码 —— 前提是当前文档语法识别为 PHP,且 Bundle 已激活。
TextMate 的注释功能由语言 Bundle 提供,PHP 注释逻辑藏在 PHP.tmbundle 中。若 Cmd+/ 无效,大概率是该 Bundle 被禁用或未加载:
TextMate → Preferences → Bundles
Web 分类(或直接搜索 PHP)PHP(注意不是 PHP (HTML),后者仅用于 .php 文件中混写 HTML 的场景)即使 Bundle 启用,如果 TextMate 把你的 .php 文件识别成 Plain Text 或 HTML,Cmd+/ 也不会触发 PHP 注释规则:
PHP
PHP(不是 PHP (HTML))Language → PHP,或保存为 .php 后缀(TextMate 默认按后缀绑定语法)TextMate 的 Cmd+/ 不是简单加 //,而是按上下文插入合适注释符:
# 当前行是 PHP 代码(以 当前行是 HTML 混写(如 ),且语法模式为 PHP (HTML) → 插入 HTML 注释选中多行 PHP 代码
// 每行前加 //
选中含换行的代码块(非纯空行)
/ ... / → 包裹为块注释(注意:只在选中内容完全在 PHP 区域时生效)
常见陷阱:
外写 PHP 代码(比如漏了开启标签),TextMate 视为 HTML,Cmd+/ 插入
PHP (HTML) 模式编辑纯 PHP 文件,注释逻辑会降级为 HTML 行为Cmd+/,可能触发「取消注释」而非添加 —— 这是正常行为,非 Bug若 Cmd+/ 仍无响应,可能是快捷键被覆盖或 Bundle 缺失关键命令:
Bundle → Comment → Toggle Line Comment
Bundles → Edit Commands…,筛选 PHP,确认存在 Toggle Line Comment 命令,且作用范围(Scope Selector)为 source.php
PHP.tmbundle(路径:~/Library/Application Support/TextMate/Bundles/)最易被忽略的一点:TextMate 对 PHP 的语法识别极度依赖文件后缀和显式语言设置,不靠内容分析。哪怕你写满 100 行 echo "hello";,只要没 .php 后缀或没手动设为 PHP 模式,它就永远不会调用 PHP 的注释逻辑。