UNPKG

3.21 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/) ;
21- HTML : [html5-lint](//regseb.github.io/metalint/user/linters/html5-lint/),
22 [HTMLHint](//regseb.github.io/metalint/user/linters/htmlhint/) et
23 [htmllint](//regseb.github.io/metalint/user/linters/htmllint/) ;
24- JavaScript : [ESLint](//regseb.github.io/metalint/user/linters/eslint/),
25 [JSCS](//regseb.github.io/metalint/user/linters/jscs/),
26 [JSHint](//regseb.github.io/metalint/user/linters/jshint/) et
27 [JavaScript Standard
28 Style](//regseb.github.io/metalint/user/linters/standard) ;
29- JSON : [JSON-Lint](//regseb.github.io/metalint/user/linters/json-lint/) et
30 [JSONLint](//regseb.github.io/metalint/user/linters/jsonlint/) ;
31- Markdown :
32 [MarkdownLint](//regseb.github.io/metalint/user/linters/markdownlint/).
33
34## Installation
35
36Vous pouvez installer Metalint en utilisant
37[npm](//www.npmjs.com/package/metalint) :
38
39```shell
40npm install -g metalint
41```
42
43## Configuration
44
45Tous les fichiers de configuration sont à regrouper dans le répertoire
46`.metalint/` qui doit être placé à la racine du projet. Le fichier
47`metalint.json` contient un objet JSON indiquant les linters à utiliser pour
48chaque fichier. Les autres fichiers contiennent les options pour les linters.
49
50## Exemple
51
52Dans cet exemple du fichier de configuration `metalint.json`, Metalint vérifie
53les fichiers JavaScript (non-minifiés), HTML et CSS ; avec les linters ESLint,
54JSCS, HTMLHint et CSSLint.
55
56```JSON
57{
58 "patterns": ["!git/**", "!node_modules/**", "**"],
59 "checkers": [
60 {
61 "patterns": ["!**/*.min.js", "**/*.js"],
62 "linters": ["eslint", "jscs"]
63 }, {
64 "patterns": "**/*.html",
65 "linters": "htmlhlint"
66 }, {
67 "patterns": "**/*.css",
68 "linters": "csslint"
69 }
70 ]
71}
72```
73
74## Usage
75
76```shell
77metalint
78```
79
80[img-npm]:https://img.shields.io/npm/v/metalint.svg
81[img-build]:https://img.shields.io/travis/regseb/metalint.svg
82[img-dependencies]:https://img.shields.io/david/regseb/metalint.svg
83[img-codeclimate]:https://img.shields.io/codeclimate/github/regseb/metalint.svg
84[img-coverage]:https://img.shields.io/coveralls/regseb/metalint.svg
85[img-license]:https://img.shields.io/badge/license-EUPL-blue.svg
86
87[link-npm]://npmjs.com/package/metalint
88[link-build]://travis-ci.org/regseb/metalint
89[link-dependencies]://david-dm.org/regseb/metalint
90[link-codeclimate]://codeclimate.com/github/regseb/metalint
91[link-coverage]://coveralls.io/github/regseb/metalint
92[link-license]://joinup.ec.europa.eu/software/page/eupl/licence-eupl
93 "Licence Publique de l’Union européenne"