5

在 Gedit 中,我可以在当前文档上添加一个“php -l”的外部工具,如果我安装了 PHP 命令行,它将对文档进行语法检查。有没有办法用 Sublime Text Editor 做到这一点?(注意,我有一台 Mac,它安装了 PHP CLI。)

我想我必须将代码片段粘贴到 Sublime 插件中,对吧?

4

1 回答 1

13

您所指的操作称为“linting”,并且有许多用于对 PHP 文件进行 lint 的 Sublime 插件。正如Len_D所提到PHP Syntax Checker的,是其中之一,但我实际上建议SublimeLinter使用 Sublime Text 2。(ST3 有一个不同的版本SublimeLinter,但它不向后兼容,并且与 ST2 版本具有完全不同的架构,不再官方支持。)

要安装,请先安装 Package Control (如果尚未安装),然后重新启动 Sublime。打开命令面板CtrlShiftP并键入pci以调出. 点击,然后输入,然后再次点击安装。安装完成后,再次重启ST2,祝好运。要配置,首先打开并复制其全部内容。然后,从同一个子菜单打开并将内容粘贴到其中。您现在可以关闭. 为了正确的语法高亮(告诉注释在哪里),从 Sublime 窗口右下角的选项列表中选择。Package Control: Install PackageEntersublimelinterEnterSublime Text 2 -> Preferences -> Package Settings -> SublimeLinter -> Settings-DefaultSettings-UserSettings-DefaultJavaScript -> JSON

向下滚动到字典中的第 36行,并在左大括号和右大括号"sublimelinter_executable_map"之间添加一个空行。通过打开终端并键入来查找系统上可执行文件的完整路径。复制路径并在您刚刚创建的空白行上添加一个条目。例如,如果路径是,则完整部分应如下所示:{}phpwhich php"php"/opt/local/bin/php

"sublimelinter_executable_map":
{
    "php": "/opt/local/bin/php"
},

向下滚动其余"sublimelinter_*"选项并修改它们以适合您的偏好。第 108 行之后的选项很可能与您无关,因为它们处理 JavaScript、CSS、Python 等的 linter。但是,如果您想SublimeLinter用于其他语言,请随时阅读它们。完成后,保存文件,一切准备就绪。SublimeLinter将根据"sublimelinter"(第 13 行)和"sublimelinter_delay"设置(第 67 行)显示其消息(增加值以增加停止输入和 linter 消息出现之间的延迟)。如果您不想要这种“实时”的 linting,请设置"sublimelinter"load-savesave-onlyfalse,具体取决于您的偏好。我个人觉得实时 linting 相当烦人......

就是这样。README中提供了完整的文档。请记住,如果/当您升级到Sublime Text 3(顺便说一下,我强烈推荐),您将需要 install 和 configure SublimeLinter3,这是将插件完全重写为更模块化的架构。因此,基础SublimeLinter包必须由特定语言的 linter 插件(如SublimeLinter-php. 请确保您阅读了完整的文档(是的,有很多,但这是值得的)以使一切顺利进行。

祝你好运!

于 2014-06-26T17:25:58.240 回答