Drupal Code Sniffer and coder

Как установить coder и Code sniffer: https://www.drupal.org/node/1419988

Сам поставил через composer, для запуска composer global require пришлось запустить cmd под админом. Полезно знать, что все библиотеки composer,под Windows, скачивает в папку C:\Users\[USERNAME]\AppData\Roaming\Composer\vendor.

Подключение Code Sniffer к eclipse

Как подключить Code Sniffer к Eclipse: https://www.drupal.org/project/eclipse_code_valida...

UPDATE: После обновления Eclipse до Mars 2 оказалось что Code Sniffer больше не работает, а точнее не проводит валидацию на файлах с расширением, которое отличается от PHP (напимер: module). Оказалось дело в том, что PHP Tools Intergation в Eclipse используют старую внутренюю библиотеку PEAR Code Sniffer 1.3.2.

Для того, чтобы наладить работу, пришлось изменить файл phpcs.php, который храниться в папке плагинов Eclipse. Для поиска файла можно включить режим отладки Code Sniffer в настройках Eclipse и запустить валидацию. https://yadi.sk/i/K6aXkqduswE6R

В моем случае этот файл располагался по пути: eclipse_mars\eclipse\plugins\org.phpsrc.eclipse.pti.tools.codesniffer_1.3.0.R20111119000000\php\tools\phpcs.php

В сам файл phpcs.php(строка 29) добавил include CLI.php новой версии Code Sniffer:

if (is_file(dirname(__FILE__).'/../CodeSniffer/CLI.php') === true) {
    include_once dirname(__FILE__).'/../CodeSniffer/CLI.php';
} else if (is_file('C:\Users\Nikko\AppData\Roaming\Composer\vendor\squizlabs\php_codesniffer\CodeSniffer\CLI.php') === true) {
  include_once 'C:\Users\Nikko\AppData\Roaming\Composer\vendor\squizlabs\php_codesniffer\CodeSniffer\CLI.php';
} else {
    include_once 'PHP/CodeSniffer/CLI.php';
}

Code Standards

После вышеуказанных изменений в Window -> Preferences -> PHP CodeSniffer стандарта Drupal так и не появится. Поэтому его придется добавить вручную, нажав на кнопку New. В поле Path - указать абсолютный путь к AppData\Roaming\Composer\vendor\drupal\coder\coder_sniffer\Drupal.

Установить patch и diff под Windows

Drupal 7 Eclipse PHPCS Coder
comments powered by Disqus