В 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
. Пожалуйста, убедитесь, что вы прочитали полную документацию (да, есть много, но это того стоит), чтобы все работало бесперебойно.
Удачи!