1 | # [postcss][postcss]-discard-comments
|
---|
2 |
|
---|
3 | > Discard comments in your CSS files with PostCSS.
|
---|
4 |
|
---|
5 |
|
---|
6 | ## Install
|
---|
7 |
|
---|
8 | With [npm](https://npmjs.org/package/postcss-discard-comments) do:
|
---|
9 |
|
---|
10 | ```
|
---|
11 | npm install postcss-discard-comments --save
|
---|
12 | ```
|
---|
13 |
|
---|
14 |
|
---|
15 | ## Example
|
---|
16 |
|
---|
17 | ### Input
|
---|
18 |
|
---|
19 | ```css
|
---|
20 | h1/* heading */{
|
---|
21 | margin: 0 auto
|
---|
22 | }
|
---|
23 | ```
|
---|
24 |
|
---|
25 | ### Output
|
---|
26 |
|
---|
27 | ```css
|
---|
28 | h1 {
|
---|
29 | margin: 0 auto
|
---|
30 | }
|
---|
31 | ```
|
---|
32 |
|
---|
33 | This module discards comments from your CSS files; by default, it will remove
|
---|
34 | all regular comments (`/* comment */`) and preserve comments marked as important
|
---|
35 | (`/*! important */`).
|
---|
36 |
|
---|
37 | Note that this module does not handle source map comments because they are not
|
---|
38 | available to it; PostCSS handles this internally, so if they are removed then
|
---|
39 | you will have to [configure source maps in PostCSS][maps].
|
---|
40 |
|
---|
41 | [maps]: https://github.com/postcss/postcss/blob/master/docs/source-maps.md
|
---|
42 |
|
---|
43 |
|
---|
44 | ## API
|
---|
45 |
|
---|
46 | ### comments([options])
|
---|
47 |
|
---|
48 | #### options
|
---|
49 |
|
---|
50 | ##### remove(function)
|
---|
51 |
|
---|
52 | Type: `function`
|
---|
53 | Return: `boolean`
|
---|
54 | Variable: `comment` contains a comment without `/**/`
|
---|
55 |
|
---|
56 | For each comment, return true to remove, or false to keep the comment.
|
---|
57 |
|
---|
58 | ```js
|
---|
59 | function(comment) {}
|
---|
60 | ```
|
---|
61 |
|
---|
62 | ```js
|
---|
63 | var css = '/* headings *//*@ h1 */h1{margin:0 auto}/*@ h2 */h2{color:red}';
|
---|
64 | console.log(postcss(comments({
|
---|
65 | remove: function(comment) { return comment[0] == "@"; }
|
---|
66 | })).process(css).css);
|
---|
67 | //=> /* headings */h1{margin:0 auto}h2{color:red}
|
---|
68 | ```
|
---|
69 | **NOTE:** If you use the `remove` function other options will not be available.
|
---|
70 |
|
---|
71 | ##### removeAll
|
---|
72 |
|
---|
73 | Type: `boolean`
|
---|
74 | Default: `false`
|
---|
75 |
|
---|
76 | Remove all comments marked as important.
|
---|
77 |
|
---|
78 | ```js
|
---|
79 | var css = '/*! heading */h1{margin:0 auto}/*! heading 2 */h2{color:red}';
|
---|
80 | console.log(postcss(comments({removeAll: true})).process(css).css);
|
---|
81 | //=> h1{margin:0 auto}h2{color:red}
|
---|
82 | ```
|
---|
83 |
|
---|
84 | ##### removeAllButFirst
|
---|
85 |
|
---|
86 | Type: `boolean`
|
---|
87 | Default: `false`
|
---|
88 |
|
---|
89 | Remove all comments marked as important, but the first one.
|
---|
90 |
|
---|
91 | ```js
|
---|
92 | var css = '/*! heading */h1{margin:0 auto}/*! heading 2 */h2{color:red}';
|
---|
93 | console.log(postcss(comments({removeAllButFirst: true})).process(css).css);
|
---|
94 | //=> /*! heading */h1{margin:0 auto}h2{color:red}
|
---|
95 | ```
|
---|
96 |
|
---|
97 |
|
---|
98 | ## Usage
|
---|
99 |
|
---|
100 | See the [PostCSS documentation](https://github.com/postcss/postcss#usage) for
|
---|
101 | examples for your environment.
|
---|
102 |
|
---|
103 |
|
---|
104 | ## Contributors
|
---|
105 |
|
---|
106 | See [CONTRIBUTORS.md](https://github.com/cssnano/cssnano/blob/master/CONTRIBUTORS.md).
|
---|
107 |
|
---|
108 |
|
---|
109 | ## License
|
---|
110 |
|
---|
111 | MIT © [Ben Briggs](http://beneb.info)
|
---|
112 |
|
---|
113 |
|
---|
114 | [postcss]: https://github.com/postcss/postcss
|
---|