Проверка синтаксиса PHP в Sublime Text Editor

В Gedit я могу добавить внешний инструмент «php -l» в текущий документ, и если у меня установлена ​​PHP-команда, будет синтаксис проверки документа. Есть ли способ сделать это с помощью Sublime Text Editor? (Заметьте, у меня есть Mac, и у него установлен PHP CLI.)

Я предполагаю, что мне придется вставить фрагмент кода в Sublime-плагин, верно?

Действие, о котором вы говорите, называется «linting», и существует множество плагинов для Sublime, которые содержат файлы PHP. Как упоминалось Len_D, PHP Syntax Checker является одним, но я бы рекомендовал SublimeLinter для Sublime Text 2 . (Существует другая версия SublimeLinter для ST3, но она не поддерживает обратную совместимость и имеет совершенно другую архитектуру, чем версия ST2, которая больше не поддерживается официально).

Чтобы установить, сначала установите Package Control, если вы еще этого не сделали, затем перезапустите Sublime. Откройте командную палитру с помощью Ctrl Shift P и введите pci для вызова P ackage C ontrol: I nstall Package . Нажмите Enter , затем введите sublimelinter , затем нажмите Enter еще раз для установки. По завершении установки перезапустите ST2 еще раз для удачи. Чтобы настроить, сначала откройте Sublime Text 2 -> Preferences -> Package Settings -> SublimeLinter -> Settings-Default и скопируйте все его содержимое. Затем откройте « Settings-User из того же подменю и вставьте в него содержимое. Теперь вы можете закрыть Settings-Default . Для правильной подсветки синтаксиса (чтобы указать, где находятся комментарии) выберите JavaScript -> JSON из списка опций в правом нижнем углу окна Sublime.

Прокрутите вниз до строки 36 в "sublimelinter_executable_map" sublimelinter_executable_map» и добавьте пустую строку между скобками открытия и закрытия. Найдите полный путь к исполняемому файлу php в вашей системе, открыв терминал и набрав which 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-save , save-only или false , в зависимости от ваших предпочтений. Я лично считаю, что живая линта будет довольно раздражающей …

И это все. Полная документация доступна в README . Имейте в виду, что если / когда вы обновляетесь до Sublime Text 3 (кстати, я настоятельно рекомендую), вам нужно будет установить и настроить SublimeLinter3 , что является полной переписыванием плагина в более модульную архитектуру , Таким образом, базовый пакет SublimeLinter должен быть дополнен языковым SublimeLinter-php подобным SublimeLinter-php . Пожалуйста, убедитесь, что вы прочитали полную документацию (да, есть много, но это того стоит), чтобы все работало бесперебойно.

Удачи!