programing

Rubocop 선 길이:댓글이 달린 줄을 무시하는 방법은?

i4 2023. 7. 10. 22:00
반응형

Rubocop 선 길이:댓글이 달린 줄을 무시하는 방법은?

나는 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 구성 파일에서 확인할 가치가 있습니다.

사이버위즈는 말한다 - "달려라.rubocop -D문서를 보는 것보다 규칙 이름이 필요할 때."업데이트:이제 플래그가 없는 기본 동작입니다.

-D이제 기본값이므로 지금 "무료"로 받을 수 있습니다.

정규식 패턴을 정의하여 자동으로 특정 행을 무시할 수 있습니다.rubocop.yml그래서 당신은 a로 시작하는 모든 라인을 무시하도록 선택할 수 있습니다.#문자:

Layout/LineLength:
  Max: 80
  AllowedPatterns: ['\A#']

또는:

Layout/LineLength:
  Max: 80
  AllowedPatterns:
    - !ruby/regexp /\A#/

이것은 "인덴트된" 주석 행(즉, 공백 뒤에 다음과 같은 행)이 있도록 개선될 수 있습니다.#문자) 또한 무시됩니다. 만약 그것이 당신이 원하는 것이라면, 예를 들어.

Layout/LineLength:
  Max: 80
  AllowedPatterns:
    - !ruby/regexp /\A *# /

주석으로 끝나는 코드 줄은 고려하지 않지만, 다음과 같습니다.

some_code(that_does_something) # This line would NOT be ignored by Rubocop.

다음 설명을 루보캅과 함께 사용하여 특정 규칙을 무시할 수 있습니다.

# rubocop:disable Layout/LineLength
def this_could_be_a_very_long_line_that_extends_forever_into_infinity
end
# rubocop:enable Layout/LineLength

전체 파일을 다음에 추가하여 무시할 수도 있습니다..rubocop.yml:

AllCops:
  Exclude:
    - path/to/file.rb

여기서 기본적인 아이디어는 n자 뒤에 무엇이 있든 간에 줄 길이를 적용하고 싶다는 것입니다.기본값은 80자로 그 수만큼의 문자만 저장할 수 있는 오래된 터미널 창에 대한 일부 화물 컬트입니다.내가 코드에서 본 유일한 옵션은 문자 제한을 초과할 수 있는 URL을 허용하는 옵션입니다.

당신은 전체 파일을 무시할 수 있습니다, 제 생각에 그것은 당신이 찾고 있는 것이 아닌 것 같습니다.

다음과 같은 구성이 가능했습니다.

Layout/LineLength:
  AllowedPatterns: ['^(\s*#)']

이 정규식은 전체 줄이 주석 처리된 경우에만 작동합니다.코드 뒤에 같은 줄에 긴 주석이 붙어 있어도 설계상 Rubocoplint 오류가 발생합니다.

언급URL : https://stackoverflow.com/questions/26342570/rubocop-line-length-how-to-ignore-lines-with-comments

반응형