Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ruby文件中不遵守VSCode样式/PercentLiteralDelimiters规则_Ruby_Visual Studio Code_Chef Infra - Fatal编程技术网

ruby文件中不遵守VSCode样式/PercentLiteralDelimiters规则

ruby文件中不遵守VSCode样式/PercentLiteralDelimiters规则,ruby,visual-studio-code,chef-infra,Ruby,Visual Studio Code,Chef Infra,请帮帮我,我正被这根歪歪扭扭的线绳折磨着,我无法摆脱它。这里是上下文 在vscode 1.37.0中工作 在chef项目上(主要是ruby语法) 我已安装,并且chefdk已在我的路径中安装了可用的 就我的一生而言,我无法让Style/percentliteraldimiters的linting警告消失。当我使用[] 然后,如果我将建议更改为(),它希望我将其翻转到另一个方向 如果我在rubocp.yml中指定此规则,则会得到相同的结果 Style/PercentLiteralDelimit

请帮帮我,我正被这根歪歪扭扭的线绳折磨着,我无法摆脱它。这里是上下文

在vscode 1.37.0中工作

在chef项目上(主要是ruby语法)

我已安装,并且chefdk已在我的路径中安装了可用的

就我的一生而言,我无法让
Style/percentliteraldimiters
的linting警告消失。当我使用
[]

然后,如果我将建议更改为
()
,它希望我将其翻转到另一个方向

如果我在rubocp.yml中指定此规则,则会得到相同的结果

Style/PercentLiteralDelimiters:
    Enabled: true
    PreferredDelimiters:
        default: '[]'
我知道这是一个模糊的问题,如果有任何进一步的信息,将有助于我很乐意提供它,但为了我的理智,我真的想弄清楚这一点

更新 从命令行运行rubocp不会报告任何问题。我相信vscode正在使用chefdk的foodcritic。根据扩展名
,如果安装了ChefDK,Foodcritic应该在Windows上“正常工作”
。我的理解是foodcritic只是一个rubocop,有一个厨师风格惯例的特殊配置。但是,即使从命令行运行foodcritic,似乎也没有将这些报告为问题


我甚至尝试在vscode工作区设置中显式地设置,为rubocop和foodcritic设置configFile路径,但这并没有改变任何事情。似乎越来越像一个问题的延伸。发现了这个听起来相关的问题。可能只需要看这期

,多亏了Draco Alter的评论,我才能够找出我的问题所在

首先,我对Foodcritic缺乏了解,把它和烹饪风格混为一谈。在理解了这一点和德拉科的评论后

Cookstyle和Rubocop中的一些规则相互冲突,并且%w 是其中之一

我想我会喜欢cookstyle,因为我只为chef使用ruby。所以我确保rubocop不在了
gem卸载rubocop
,然后我只需要更新我的vscode工作区设置就可以了

{
    "ruby.lint": {
--        "rubocop": true
++        "cookstyle": true
    }
}

所以多亏了德拉科·奥尔特的评论,我才能够找出我的问题所在

首先,我对Foodcritic缺乏了解,把它和烹饪风格混为一谈。在理解了这一点和德拉科的评论后

Cookstyle和Rubocop中的一些规则相互冲突,并且%w 是其中之一

我想我会喜欢cookstyle,因为我只为chef使用ruby。所以我确保rubocop不在了
gem卸载rubocop
,然后我只需要更新我的vscode工作区设置就可以了

{
    "ruby.lint": {
--        "rubocop": true
++        "cookstyle": true
    }
}

当您直接使用命令行执行rubocop时会出现什么错误?Foodcritic和rubocop是不同的东西。Foodcritic检查您的资源,而不是像Rubocop那样的代码样式。然而,ChefDK确实有一个内置的“烹饪风格”,一个基于rubocop和厨师食谱预定义规则的宝石。Cookstyle和Rubocop中的一些规则相互冲突,%w是其中之一。我不使用vscode,因此我无法在这里进一步帮助您。当您直接使用命令行执行rubocop时会出现什么错误?Foodcritic和rubocop是不同的东西。Foodcritic检查您的资源,而不是像Rubocop那样的代码样式。然而,ChefDK确实有一个内置的“烹饪风格”,一个基于rubocop和厨师食谱预定义规则的宝石。Cookstyle和Rubocop中的一些规则相互冲突,%w是其中之一。我不使用vscode,所以我无法在这里进一步帮助您。