UNPKG

3.34 kBMarkdownView Raw
1# Metalint
2
3[![NPM][img-npm]][link-npm]
4[![Build][img-build]][link-build]
5[![Dependencies][img-dependencies]][link-dependencies]
6[![Code Climate][img-codeclimate]][link-codeclimate]
7[![Coverage][img-coverage]][link-coverage]
8[![License][img-license]][link-license]
9
10> *Un linter pour les gouverner tous.*
11
12[Site Internet](//regseb.github.io/metalint/)
13
14## Description
15
16**Metalint** est un outil pour vérifier tous les fichiers de votre projet. La
17vérification est déléguée à des outils d'analyse statique de code source
18(*linters*) selon le type de fichier :
19
20- CSS : [CSSLint](//regseb.github.io/metalint/user/linters/csslint/) et
21 [stylelint](//regseb.github.io/metalint/user/linters/stylelint/) ;
22- HTML : [html5-lint](//regseb.github.io/metalint/user/linters/html5-lint/),
23 [HTMLHint](//regseb.github.io/metalint/user/linters/htmlhint/) et
24 [htmllint](//regseb.github.io/metalint/user/linters/htmllint/) ;
25- JavaScript : [ESLint](//regseb.github.io/metalint/user/linters/eslint/),
26 [Flow](//regseb.github.io/metalint/user/linters/flow-bin/),
27 [JSCS](//regseb.github.io/metalint/user/linters/jscs/),
28 [JSHint](//regseb.github.io/metalint/user/linters/jshint/) et
29 [JavaScript Standard
30 Style](//regseb.github.io/metalint/user/linters/standard) ;
31- JSON : [JSON-Lint](//regseb.github.io/metalint/user/linters/json-lint/) et
32 [JSONLint](//regseb.github.io/metalint/user/linters/jsonlint/) ;
33- Markdown :
34 [MarkdownLint](//regseb.github.io/metalint/user/linters/markdownlint/).
35
36## Installation
37
38Vous pouvez installer Metalint en utilisant
39[npm](//www.npmjs.com/package/metalint) :
40
41```shell
42npm install -g metalint
43```
44
45## Configuration
46
47Tous les fichiers de configuration sont à regrouper dans le répertoire
48`.metalint/` qui doit être placé à la racine du projet. Le fichier
49`metalint.json` contient un objet JSON indiquant les linters à utiliser pour
50chaque fichier. Les autres fichiers contiennent les options pour les linters.
51
52## Exemple
53
54Dans cet exemple du fichier de configuration `metalint.json`, Metalint vérifie
55les fichiers JavaScript (non-minifiés), HTML et CSS ; avec les linters ESLint,
56JSCS, HTMLHint et CSSLint.
57
58```JSON
59{
60 "patterns": ["!git/**", "!node_modules/**", "**"],
61 "checkers": [
62 {
63 "patterns": ["!**/*.min.js", "**/*.js"],
64 "linters": ["eslint", "jscs"]
65 }, {
66 "patterns": "**/*.html",
67 "linters": "htmlhlint"
68 }, {
69 "patterns": "**/*.css",
70 "linters": "csslint"
71 }
72 ]
73}
74```
75
76## Usage
77
78```shell
79metalint
80```
81
82[img-npm]:https://img.shields.io/npm/v/metalint.svg
83[img-build]:https://img.shields.io/travis/regseb/metalint.svg
84[img-dependencies]:https://img.shields.io/david/regseb/metalint.svg
85[img-codeclimate]:https://img.shields.io/codeclimate/github/regseb/metalint.svg
86[img-coverage]:https://img.shields.io/coveralls/regseb/metalint.svg
87[img-license]:https://img.shields.io/badge/license-EUPL-blue.svg
88
89[link-npm]://npmjs.com/package/metalint
90[link-build]://travis-ci.org/regseb/metalint
91[link-dependencies]://david-dm.org/regseb/metalint
92[link-codeclimate]://codeclimate.com/github/regseb/metalint
93[link-coverage]://coveralls.io/github/regseb/metalint
94[link-license]://joinup.ec.europa.eu/software/page/eupl/licence-eupl
95 "Licence Publique de l’Union européenne"