Skip to content
chris edited this page Jul 23, 2016 · 2 revisions

配置文件

由于 fecs 集成用于代码检查的 eslintcsshinthtmlcs,用于代码格式化的 jformatteresformattercsscombhtmlcs,所以配置文件 .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 支持 YAMLJSON 格式的配置文件。建议使用表达能力更强而书写更简便的 YAML

优先级

当项目未使用配置文件时,fecs 使用内置的默认配置。用户指定配置的优先级会高于默认配置,因此用户配置并无需全量配置,只需针对性添加或修改配置。

  • 当同目录下同时出现 .fecsrcpackage.json 时,以 package.json 中的 fecs 配置优先并 merge(注意并不是忽略 .fecsrc 中的配置)。

  • 当被检查、格式化文件所在目录及上级目录同时出现配置文件时,配置文件离被检查、格式化文件越近,优先级越高。

  • 对于代码检查,在文件内使用注释指令配置的规则,优先级最高。

  • 当命令行参数指定 no-lookuplookup=false 时,将忽略所有用户的文件配置。

参考