Denis 346b78aee1 first commit 2 lat temu
..
lib 346b78aee1 first commit 2 lat temu
CHANGELOG.md 346b78aee1 first commit 2 lat temu
LICENSE 346b78aee1 first commit 2 lat temu
README.md 346b78aee1 first commit 2 lat temu
index.js 346b78aee1 first commit 2 lat temu
package.json 346b78aee1 first commit 2 lat temu

README.md

strip-comments Donate NPM version NPM monthly downloads NPM total downloads Build Status

Strip line and/or block comments from a string. Blazing fast, and works with JavaScript, Sass, CSS, Less.js, and a number of other languages.

Please consider following this project's author, Jon Schlinkert, and consider starring the project to show your :heart: and support.

(TOC generated by verb using markdown-toc)

Install

Install with npm (requires Node.js >=10):

$ npm install --save strip-comments

What does this do?

Takes a string and returns a new string with comments removed. Works with line comments and/or block comments. Optionally removes the first comment only or ignores protected comments.

Works with:

  • ada
  • apl
  • applescript
  • c
  • csharp
  • css
  • hashbang
  • haskell
  • html
  • java
  • javascript
  • less
  • lua
  • matlab
  • ocaml
  • pascal
  • perl
  • php
  • python
  • ruby
  • sass
  • shebang
  • sql
  • swift
  • typscript
  • xml

Usage

By default all comments are stripped.

const strip = require('strip-comments');
const str = strip('const foo = "bar";// this is a comment\n /* me too *\/');
console.log(str);
// => 'const foo = "bar";\n'

For more use-cases see the tests

API

strip

Strip all code comments from the given input, including protected comments that start with !, unless disabled by setting options.keepProtected to true.

Params

  • input {String}: string from which to strip comments
  • options {Object}: optional options, passed to extract-comments

  • line {Boolean}: if false strip only block comments, default true

  • block {Boolean}: if false strip only line comments, default true

  • keepProtected {Boolean}: Keep ignored comments (e.g. /*! and //!)

  • preserveNewlines {Boolean}: Preserve newlines after comments are stripped

  • returns {String}: modified input

Example

const str = strip('const foo = "bar";// this is a comment\n /* me too */');
console.log(str);
// => 'const foo = "bar";'

.block

Strip only block comments.

Params

  • input {String}: string from which to strip comments
  • options {Object}: pass opts.keepProtected: true to keep ignored comments (e.g. /*!)
  • returns {String}: modified string

Example

const strip = require('..');
const str = strip.block('const foo = "bar";// this is a comment\n /* me too */');
console.log(str);
// => 'const foo = "bar";// this is a comment'

.line

Strip only line comments.

Params

  • input {String}: string from which to strip comments
  • options {Object}: pass opts.keepProtected: true to keep ignored comments (e.g. //!)
  • returns {String}: modified string

Example

const str = strip.line('const foo = "bar";// this is a comment\n /* me too */');
console.log(str);
// => 'const foo = "bar";\n/* me too */'

.first

Strip the first comment from the given input. Or, if opts.keepProtected is true, the first non-protected comment will be stripped.

Params

  • input {String}
  • options {Object}: pass opts.keepProtected: true to keep comments with !
  • returns {String}

Example

const output = strip.first(input, { keepProtected: true });
console.log(output);
// => '//! first comment\nfoo; '

.block

Parses a string and returns a basic CST (Concrete Syntax Tree).

Params

  • input {String}: string from which to strip comments
  • options {Object}: pass opts.keepProtected: true to keep ignored comments (e.g. /*!)
  • returns {String}: modified string

Example

const strip = require('..');
const str = strip.block('const foo = "bar";// this is a comment\n /* me too */');
console.log(str);
// => 'const foo = "bar";// this is a comment'

About

Contributing Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new).
Running Tests Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command: ```sh $ npm install && npm test ```
Building docs _(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_ To generate the readme, run the following command: ```sh $ npm install -g verbose/verb#dev verb-generate-readme && verb ```

Related projects

You might also be interested in these projects:

  • code-context: Parse a string of javascript to determine the context for functions, variables and comments based… more | homepage
  • extract-comments: Uses esprima to extract line and block comments from a string of JavaScript. Also optionally… more | homepage.")
  • parse-code-context: Fast and simple way to parse code context for use with documentation from code comments… more | homepage
  • parse-comments: Parse code comments from JavaScript or any language that uses the same format. | homepage

Contributors

| Commits | Contributor |
| --- | --- |
| 82 | jonschlinkert |
| 4 | tunnckoCore |
| 2 | mk-pmb |
| 1 | kgryte |
| 1 | briandipalma |
| 1 | epicoxymoron |
| 1 | XuluWarrior |

Author

Jon Schlinkert

License

Copyright © 2019, Jon Schlinkert. Released under the MIT License.


This file was generated by verb-generate-readme, v0.8.0, on November 13, 2019.