Вопрос

Мы хотели бы использовать Rubocop для проверки синтаксической правильности нашего Ruby и соблюдения основных правил кода.

Кроме того, у нас есть следующее правило:мы используем отступы с помощью табуляции, чтобы каждый мог решить, как они должны отображаться (отображать их как 2 или 4 пробела)

Проблема в том, что Rubocop, похоже, создан для того, чтобы ВООБЩЕ отказываться от вкладок для отступов.

Как мы можем обойти все эти правила, чтобы соответствовать требованиям космоса?

РЕДАКТИРОВАТЬ:Я думаю переопределить этот модуль https://github.com/bbatsov/rubocop/blob/master/lib/rubocop/source_parser.rb заменить все табуляции в моих файлах на 2 пробела, чтобы создать иллюзию драгоценного камня...

Это было полезно?

Решение 4

Я переопределил этот модуль https://github.com/bbatsov / rubocop / blob / master / lib / rubocop / source_parser.rb Чтобы заменить все вкладки из моих файлов на 2 пространства, чтобы создать иллюзию для GEM ...

Другие советы

Добавьте в свой .rubocop.yml:

Style/Tab:
  Enabled: false

чтобы отключить правило вкладок.

Вы можете написать свой собственный изготовленный на заказ полицейский чтобы проверить правильность отступов.

Как злая неразветляющая вкладка пользователя, я закончил взломать это так.Эта разница для 0,32.1:

--- processed_source.rb.orig    2015-07-28 05:53:52.199418557 +0100
+++ processed_source.rb 2015-07-28 05:54:04.750420458 +0100
@@ -13,7 +13,7 @@
                 :parser_error, :raw_source

     def self.from_file(path)
-      file = File.read(path)
+      file = File.read(path).gsub(/^(\t+)/) {|m| '  ' * m.size }
       new(file, path)
     rescue
       abort("#{Rainbow('rubocop: No such file or directory').red} -- #{path}")
.

Теперь вы должны сочетаться в идеально.Bwahahaha.

Для последней версии добавьте это в файл .rubocop.yml:

Layout/Tab:
  Enabled: false
.

Вы можете найти все параметры по умолчанию, перечисленные здесь:

https://github.com/rubocop-hq/рубокоп /blob/master/config/default.yml

И, правило определяется здесь:

https:// github.com / rubocop-hq / rubocop / blob / master / lib / rubocop / cop / layout / tab.rb

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top