配置文件
.fecsrc
由于 fecs 集成用于代码检查的 eslint、csshint 和 htmlcs,用于代码格式化的 jformatter、esformatter、csscomb 和 htmlcs,所以配置文件 .fecsrc
的结构如下:
{ "files": ["glob1", "glob2"], "eslint": {}, "csshint": {}, "htmlcs": {}, "jformatter": {}, "esformatter": {}, "csscomb": {} }
或
files: - glob1 - glob2 eslint: csshint: htmlcs: jformatter: esformatter: csscomb:
其中 files 字段是个数组,每一项是一个 glob 表达式,支持以 !
开头的取反以忽略文件。files 数组匹配的文件主要用于在项目根目录直接执行不带文件或目录参数的 fecs 命令时的默认值。 其他字段的配置以字段名对应的模块的配置为准,以 eslint 为例,需要关闭 no-console
并且打开 es6 时配置如下:
{ "eslint": { "env": { "es6": true }, "rules": { "no-console": 0 } } }
或
eslint: env: es6: true rules: no-console: 0
fecs 支持的配置文件为 .fecsrc
,同时支持 package.json
中的 fecs 节点配置。
fecs 支持 YAML 和 JSON 格式的配置文件。建议使用表达能力更强而书写更简便的 YAML。
当项目未使用配置文件时,fecs 使用内置的默认配置。用户指定配置的优先级会高于默认配置,因此用户配置并无需全量配置,只需针对性添加或修改配置。
当同目录下同时出现 .fecsrc
与 package.json
时,以 package.json
中的 fecs 配置优先并 merge(注意并不是忽略 .fecsrc
中的配置)。
当被检查、格式化文件所在目录及上级目录同时出现配置文件时,配置文件离被检查、格式化文件越近,优先级越高。
对于代码检查,在文件内使用注释指令配置的规则,优先级最高。
当命令行参数指定 no-lookup
或 lookup=false
时,将忽略所有用户的文件配置。