Используя приложение Rails 4, я бы хотел, чтобы Rubocop игнорировал строки с комментариями (просто комментарий или какой-то код с комментарием в конце строки) при проверке, является ли строка слишком длинной. Есть ли способ сделать это?
Есть способ игнорировать полицейских по очереди.
Также есть способ сделать это через файл конфигурации.
Бегать rubocop --auto-gen-config
и он сгенерирует файл, который вы можете использовать для отключения нарушений.
Команда также дает подсказку о том, что делать, чтобы загрузить эти параметры.
Построчно вы также можете включать и отключать копов.
# rubocop:disable RuleByName
This is a long line
# rubocop:enable RuleByName
Вы также можете использовать в коде более одного правила за раз.
# rubocop:disable BlockComments, AsciiComments
При использовании встроенной директивы директива становится действительной только для этой строки, и это будет выглядеть так:
# Thanks to @jnt30 for the comment!
method(argument) # rubocop:disable SomeRule, SomeOtherRule
Вы можете больше узнать о RuboCop в его официальном руководстве .
Чтобы найти все имена правил, стоит поискать их в файлах конфигурации rubocop.
cyberwiz говорит - «беги, rubocop -D
когда мне нужны имена правил, а не в документации». Обновление : теперь это поведение по умолчанию без флага.
#!/bin/env ruby
строка комментария - это комментарий, но код, и он семантически важен. Комментарии - это не всегда только «комментарии».Можно определить шаблоны регулярных выражений для автоматического игнорирования определенных строк
rubocop.yml
, поэтому вы можете игнорировать все строки, начинающиеся с#
символа:Это можно улучшить, чтобы строки комментариев с «отступом» (т.е. пробелы, за которыми следует
#
символ) также игнорировались, если вы этого хотите.Обратите внимание, что здесь не учитываются строки кода, заканчивающиеся комментарием:
источник
IgnorePatterns: ['(\A|\s)#']
IgnoredPatterns
вместо этого должна бытьIgnorePatterns
(отсутствует буква "d").Вы можете использовать следующий комментарий с rubocop, чтобы игнорировать определенное правило:
Вы также можете игнорировать целые файлы, добавив их в
.rubocop.yml
:источник
Я думаю, что основная идея здесь заключается в том, что вы хотите обеспечить длину строки, независимо от того, что находится после n символов. по умолчанию 80 символов - это какой-то культ груза для старых окон терминала, которые могли содержать только это количество символов. единственный вариант, который я видел в коде - это возможность разрешить URL-адреса, которые могут превышать лимит символов.
вы можете игнорировать целые файлы , я думаю, это не то, что вы ищете.
источник