Réponses:
Il existe un moyen d'ignorer les flics par ligne.
Il existe également un moyen de le faire via le fichier de configuration.
Courir rubocop --auto-gen-config
et il générera un fichier que vous pourrez utiliser pour désactiver les infractions.
La commande donne également un indice sur ce qu'il faut faire pour charger ces options.
Ligne par ligne, vous pouvez également activer et désactiver les flics.
# rubocop:disable RuleByName
This is a long line
# rubocop:enable RuleByName
Vous pouvez également appliquer plusieurs règles à la fois dans votre code.
# rubocop:disable BlockComments, AsciiComments
En utilisant une directive en ligne, la directive devient valide uniquement pour cette ligne, et cela ressemblerait à ceci:
# Thanks to @jnt30 for the comment!
method(argument) # rubocop:disable SomeRule, SomeOtherRule
Vous pouvez en savoir plus sur RuboCop dans son manuel officiel .
Pour trouver tous les noms de règles, il vaut la peine de regarder dans les fichiers de configuration de rubocop
cyberwiz dit - "exécutez rubocop -D
quand j'ai besoin des noms de règle plutôt que de regarder dans la documentation." Mise à jour : il s'agit désormais du comportement par défaut sans l'indicateur.
#!/bin/env ruby
ligne de commentaire est un commentaire, mais un code, et est sémantiquement importante. Les commentaires ne sont pas toujours uniquement des «commentaires».
Il est possible de définir des modèles d'expression régulière pour ignorer automatiquement certaines lignes rubocop.yml
, vous pouvez donc choisir d'ignorer toutes les lignes commençant par un #
caractère:
Metrics/LineLength:
Max: 80
IgnoredPatterns: ['\A#']
Cela pourrait être amélioré de sorte que les lignes de commentaires "indentées" (c'est-à-dire les espaces suivis d'un #
caractère) soient également ignorées, si c'est ce que vous voulez.
Notez que cela ne tient pas compte des lignes de code qui se terminent par un commentaire:
some_code(that_does_something) # This line would NOT be ignored by Rubocop.
IgnorePatterns: ['(\A|\s)#']
IgnoredPatterns
place IgnorePatterns
(il manque la lettre «d»).
Vous pouvez utiliser le commentaire suivant avec rubocop pour ignorer une règle spécifique:
# rubocop:disable Metrics/LineLength
def this_could_be_a_very_long_line_that_extends_forever_into_infinity
end
# rubocop:enable Metrics/LineLength
Vous pouvez également ignorer des fichiers entiers en les ajoutant à .rubocop.yml
:
AllCops:
Exclude:
- path/to/file.rb
Je pense que l'idée de base ici est que vous voulez appliquer la longueur de la ligne, peu importe ce qui se trouve après n caractères. la valeur par défaut à 80 caractères est un culte du fret pour les anciennes fenêtres de terminal qui ne pouvaient contenir que ce nombre de caractères. la seule option que j'ai vue dans le code est une option pour autoriser les URL qui pourraient dépasser la limite de caractères.
vous pouvez ignorer des fichiers entiers , je suppose que ce n'est pas ce que vous recherchez.