PHP语法检查在崇高文本编辑器


PHP Syntax Check in Sublime Text Editor

在Gedit中,我可以在当前文档上添加一个"php -l"的外部工具,如果我安装了php命令行,它将对文档进行语法检查。崇高文本编辑器有办法做到这一点吗?(注意,我有一个Mac,它安装了PHP CLI。)

我想我必须粘贴一个代码片段到Sublime插件,对吗?

你所指的动作被称为"linting",有许多Sublime插件可以检测PHP文件。正如Len_D所提到的,PHP Syntax Checker是其中之一,但我实际上推荐SublimeLinter作为Sublime Text 2的替代。(有一个不同版本的SublimeLinter适用于ST3,但它不向后兼容,并且与ST2版本具有完全不同的架构,不再被官方支持。)

要安装,首先安装Package Control(如果还没有安装的话),然后重启Sublime。使用CtrlShiftP打开命令调色板,键入 pci 以调出Package Control: Install Package。按输入,然后输入 sublimelinter ,然后再按输入安装。安装完成后,请重新启动ST2以获得好运。要进行配置,首先打开 Sublime Text 2 -> Preferences -> Package Settings -> SublimeLinter -> Settings-Default 并复制其全部内容。然后,在同一子菜单中打开 Settings-User ,将内容粘贴到其中。现在可以关闭 Settings-Default 。为了正确的语法高亮显示(告诉注释在哪里),从Sublime窗口右下角的选项列表中选择 JavaScript -> JSON

向下滚动到"sublimelinter_executable_map"字典中的第36行,在开始的{和结束的}花括号之间添加一个空白行。打开Terminal并输入which php,找到系统上php可执行文件的完整路径。复制路径并在刚才创建的空白行中添加"php"条目。例如,如果路径是/opt/local/bin/php,那么完整的部分应该是这样的:

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

向下滚动其余的"sublimelinter_*"选项并修改它们以适应您的偏好。第108行之后的选项很可能与您无关,因为它们处理JavaScript, CSS, Python等的编译器。但是,如果您想在其他语言中使用SublimeLinter,请随意通读它们。一旦你完成了,保存文件,你应该都设置好了。SublimeLinter将根据"sublimelinter"(第13行)和"sublimelinter_delay"设置(第67行)显示其消息(增加该值以增加停止输入和linter消息出现之间的延迟)。如果您不想要这种"实时"检测,请根据您的偏好将"sublimelinter"设置为load-savesave-onlyfalse。我个人觉得直播很烦人…

就是这样。完整的文档可在README中获得。请记住,如果/当你升级到Sublime Text 3(我强烈推荐,顺便说一下),你需要安装和配置SublimeLinter3,这是一个完整的重写插件到一个更模块化的架构。因此,基本的SublimeLinter包必须由SublimeLinter-php等特定于语言的linter插件来补充。请确保你阅读了完整的文档(是的,有很多,但它是值得的),以使一切运行顺利。

祝你好运!