Pregunta

Nos gustaría usar Rubocop para validar nuestro Ruby es sintaxaxicalismo correcto y seguir las pautas de código básico.

appart desde que tenemos esta regla: hemos enviado a través de las pestañas para permitir que cualquiera decidiera cómo quieren que sean prestados (mostrarlos como 2 o 4 espacios)

El problema es que Rubocop parece diseñado para rechazar las pestañas para la sangría en absoluto.

¿Cómo podemos anular todas las siguientes reglas para ser compatientes espaciales?

Editar: Estoy pensando en anular este módulo https://github.com/bbatsov/rubocop/blob/master/lib/rubocop/source_parser.rb Para reemplazar todas las pestañas de mis archivos por 2 espacios para crear la ilusión para la gema ...

¿Fue útil?

Solución 4

He sobrevivo este módulo https://github.com/BBATSOV / RUBOCOP / BLOB / MASTER / LIB / RUBOCOP / SOURTE_PARSER.RB Para reemplazar todas las pestañas de mis archivos por 2 espacios para crear la ilusión para la gema ...

Otros consejos

Añadir a su .rubocop.yml:

Style/Tab:
  Enabled: false

para deshabilitar la regla de las pestañas.

Puede escribir su propio COP personalizado para verificar la sangría adecuada.

Como un usuario de pestaña impenitente malvado, terminé hackeándolo así.Esta diferencia por 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}")

Ahora deberías mezclar perfectamente.Bwahahaha.

Para la última versión, agregue esto a su archivo .rubocop.yml:

Layout/Tab:
  Enabled: false

Puede encontrar todas las opciones predeterminadas enumeradas aquí:

https://github.com/rubocop-hq/rubocop/blob/master/config/default.yml

y, la regla se define aquí:

https:// github.com / Rubocop-HQ / Rubocop / Blob / Master / Lib / Rubocop / COP / Layout / TAB.RB

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top