首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Rubocop缩进结构

Rubocop缩进结构
EN

Stack Overflow用户
提问于 2018-08-17 09:44:54
回答 1查看 2K关注 0票数 6

我希望警察总是缩进一次。另外,elsif和end根本不应该缩进。所以就像这样:

代码语言:javascript
复制
@shop = api
        .shop('de')['storefronts']
        .find_all do |front|
          front['name'] == 'WeeklyStorefront' ||
            front['name'] == 'DailyStorefront'
        end
        .map { |front|  font['catalogEntries'] }
        .flatten
        .map { |item| item['devName'] }

应该是这样的:

代码语言:javascript
复制
@shop = api
  .shop('de')['storefronts']
  .find_all do |front|
    front['name'] == 'WeeklyStorefront' ||
      front['name'] == 'DailyStorefront'
  end
  .map { |front|  font['catalogEntries'] }
  .flatten
  .map { |item| item['devName'] }

这是:

代码语言:javascript
复制
mode = if key.include? '_p2'
         'Solo'
       elsif key.include? '_p10'
         'Duo'
       else
         'Squad'
       end

应该是这样的:

代码语言:javascript
复制
mode = if key.include? '_p2'
  'Solo'
elsif key.include? '_p10'
  'Duo'
else
  'Squad'
end

我尝试了许多不同的配置选项,但我没有让它正常工作。

我试过:

代码语言:javascript
复制
Layout/MultilineMethodCallIndentation:
  EnforcedStyle: indented

产生:

代码语言:javascript
复制
@shop = api
  .shop('de')['storefronts']
  .find_all do |front|
          front['name'] == 'WeeklyStorefront' ||
            front['name'] == 'DailyStorefront'
        end
  .map { |front| front['catalogEntries'] }
  .flatten
  .map { |item| item['devName'] }

代码语言:javascript
复制
mode = if key.include? '_p2'
             'Solo'
           elsif key.include? '_p10'
             'Duo'
           else
             'Squad'
end

这更好,但还是不是我想要的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-17 10:06:47

在第一个示例中,您可以使用Layout/MultilineMethodCallIndentation文件中的选项.rubocop.yml对多行表达式强制执行不同的样式。

对于第二个示例,您可以配置Layout/MultilineAssignmentLayoutLayout/EndAlignment

代码语言:javascript
复制
Layout/MultilineMethodCallIndentation:
  EnforcedStyle: indented

Layout/MultilineAssignmentLayout:
  EnforcedStyle: same_line

Layout/EndAlignment:
  EnforcedStyleAlignWith: variable
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51892642

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档