使用Grunt和JSLint任务进行错误检查时,在构建源时遇到问题:


  L177:文件末尾应换行。
  警告:格式化检查失败。使用--force继续。
  由于警告而中止。


问题很明显,但是我还使用了来自以下位置的Beautify插件:https://github.com/drewhamlett/brackets-beautify,默认情况下会从文件末尾删除所有新行。

我在Gruntfile.js中对JSLint任务的配置:

jslint: {
            server: {
                src: [
                    '<%= config.PATH %>/src/**/*.js',
                ],
                directives: {
                    indent: 4,
                    plusplus: true,
                    unparam: true,
                    todo: true,
                    globals: [
                        'angular'
                    ]
                },
                options: {
                    edition: 'latest', // specify an edition of jslint or use 'dir/mycustom-jslint.js' for own path
                    errorsOnly: true, // only display errors
                    failOnError: true // defaults to true
                }
            }
        }


我的问题是,如何更改Gruntfile.js中的JSLint配置,以忽略EOF处的换行符或强制Beautify插件在文件末尾添加(或干脆不删除)新行?

最佳答案

根据Brackets Beautify Documentation,它在内部使用JS-Beautify。后者的文档中提到了以下参数:

-n, --end-with-newline
-p, --preserve-newlines


如果您可以强制Adobe Brackets将参数传递给js-beautify调用,那么我想其中之一应该可以解决问题。

更新

根据Github仓库,括号美化内部使用settings.json进行配置。新增中

"end_with_newline": true


可能比破解命令行调用更容易。

第二次更新

如果我正确理解README,则扩展名只是一个文件夹,因此应该可以使用:


找到扩展文件夹:菜单“帮助>显示扩展文件夹”
找到Beautify插件的子文件夹
在插件文件夹中更改settings.json
(可能)重新启动Adobe Brackets

07-24 17:21