Для Pylint возможно ли иметь другой файл pylintrc для каждого проекта Eclipse?

Я увидел, что могу изменить его для каждого экземпляра Eclipse, используя это решение. Я хотел бы установить его для каждого проекта. Является ли это возможным?


person bandit    schedule 28.04.2013    source источник


Ответы (2)


Это не специфично для Eclipse, но в любом случае может помочь. Согласно параметрам командной строки pylint:

Вы можете указать файл конфигурации в командной строке, используя параметр --rcfile. В противном случае Pylint ищет файл конфигурации в следующем порядке и использует первый найденный файл:

  1. pylintrc в текущем рабочем каталоге
  2. .pylintrc в текущем рабочем каталоге
  3. Если текущий рабочий каталог находится в модуле Python, Pylint выполняет поиск по иерархии модулей Python, пока не найдет файл pylintrc. Это позволяет задавать стандарты кодирования для каждого модуля. Конечно, каталог считается модулем Python, если он содержит файл __init__.py.
  4. Файл, названный переменной среды PYLINTRC
  5. If you have a home directory which isn’t /root:
    1. .pylintrc in your home directory
    2. .config/pylintrc в вашем домашнем каталоге
  6. /etc/pylintrc

Пункты 1 или 3 выше могут помочь.

person sthenault    schedule 29.04.2013

Просто поместите файл конфигурации с именем pylintrc (без '.') в корневой каталог каждого проекта. Pylint запускается с каталогом проекта в качестве текущего рабочего каталога, и это первое место, где pylint ищет файл конфигурации.

В документации PyDev предлагается назвать файл .pylintrc, но это менее надежно, потому что ./.pylintrc находится почти последним в порядке поиска мест, которые будет искать pylint. В документации PyDev далее говорится, что это работает только для PyDev 2.8.0 и выше, но я использую PyDev 2.6.0, и у меня это работает.

Порядок поиска файла конфигурации в другом ответе не совсем правильный. Я только что представил расширение документации Pylint, которое правильно описывает порядок поиска файла конфигурации:

Вы можете указать файл конфигурации в командной строке, используя параметр --rcfile. В противном случае Pylint ищет файл конфигурации в следующем порядке и использует первый найденный файл:

  1. pylintrc в текущем рабочем каталоге
  2. Если текущий рабочий каталог находится в модуле Python, Pylint выполняет поиск в иерархии модулей Python, пока не найдет файл pylintrc. Это позволяет задавать стандарты кодирования для каждого модуля. Конечно, каталог считается модулем Python, если он содержит файл __init__.py.
  3. Файл, названный переменной среды PYLINTRC
  4. .pylintrc в вашем домашнем каталоге, если у вас нет домашнего каталога или ваш домашний каталог /root
  5. .pylintrc в текущем рабочем каталоге
  6. /etc/pylintrc

Обратите внимание, что файл конфигурации применяется только к файлам Python, которые находятся в модулях. Таким образом, Pylint по-прежнему использует правила по умолчанию при анализе файлов Python в каталоге без файла __init__.py. Возможно, именно эта проблема исправлена ​​в PyDev 2.8.0.

Например, у меня есть каталог bin/, содержащий приложения командной строки. Обычно этому каталогу не нужен файл __init__.py, потому что он никогда не импортируется. Мне пришлось добавить файл bin/__init__.py, чтобы заставить Pylint анализировать эти файлы Python, используя мой файл pylintrc.

person John McGehee    schedule 11.10.2013