在 Gedit 中,我可以在当前文档上添加一个“php -l”的外部工具,如果我安装了 PHP 命令行,它会检查文档的语法。有没有办法用 Sublime Text Editor 做到这一点? (注意,我有一台 Mac,并且安装了 PHP CLI。)
我想我必须将代码片段粘贴到 Sublime 插件中,对吧?
最佳答案
您所指的操作称为“linting”,并且有许多 Sublime 插件可以对 PHP 文件进行 lint。作为mentioned通过 Len_D, PHP Syntax Checker
是一个,但我实际上会推荐 SublimeLinter
for Sublime Text 2反而。 (ST3 有一个不同版本的 SublimeLinter
,但它不向后兼容,并且与 ST2 版本具有完全不同的体系结构,后者不再受到官方支持。)
要安装,首先install Package Control如果还没有,请重新启动 Sublime。使用 CtrlShiftP 打开命令面板并键入 pci
调出 <b><i>P</i></b>ackage <b><i>C</i></b>ontrol: <b><i>I</i></b>nstall Package
.点击 Enter,然后输入 sublimelinter
,然后再次按 Enter 进行安装。安装完成后再次重启ST2,祝好运。要配置,首先打开 Sublime Text 2 -> Preferences -> Package Settings -> SublimeLinter -> Settings-Default
并复制其全部内容。然后,打开 Settings-User
从相同的子菜单并将内容粘贴到其中。您现在可以关闭 Settings-Default
强>。对于正确的语法突出显示(告诉注释在哪里),选择 JavaScript -> JSON
从 Sublime 窗口右下方的选项列表中。
向下滚动到 "sublimelinter_executable_map"
中的第 36 行dict 并在开头 {
之间添加一个空行和关闭 }
大括号。找到 php
的完整路径通过打开终端并输入 which 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 消息之间的延迟)。如果您不想要这种“实时”检查,请设置 "sublimelinter"
至 load-save
, save-only
, 或 false
,取决于您的喜好。我个人觉得 live linting 相当烦人......
仅此而已。 README 中提供了完整的文档.请记住,如果/当您升级到 Sublime Text 3 (顺便说一下,我强烈推荐),您需要安装和配置 SublimeLinter3
,这是将插件完全重写为更加模块化的架构。因此,基地 SublimeLinter
包必须由特定语言的 linter 插件补充,如 SublimeLinter-php
.请确保您阅读了 full documentation (是的,有很多,但这是值得的)让一切顺利运行。
祝你好运!
关于Sublime Text 编辑器中的 PHP 语法检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24433423/