4.0.1 • Published 5 years ago

deglob v4.0.1

Weekly downloads
256,479
License
ISC
Repository
github
Last release
5 years ago

deglob travis npm downloads javascript style guide

Take a list of glob patterns and return an array of file locations, respecting .gitignore and allowing for ignore patterns via package.json.

Giant swaths of this code were extracted from standard. It seems useful outside of that tool, so I've attempted to extract it! :)

Install

npm install --save deglob

Usage

var deglob = require('deglob')

deglob(['**/*.js'], function(err, files) {
  files.forEach(function(file) {
    console.log('found file ' + file)
  })
})

// pass in some options to customize!

var path = require('path')
var opts = {
  cwd: path.join(__dirname, 'someDir'),
  useGitIgnore: false,
  usePackageJson: false
}

deglob(['**/*.js'], opts, function(err, files) {
  files.forEach(function(file) {
    console.log('found file ' + file)
  })
})

Ignoring files in package.json

deglob will look for a package.json file by default and use any ignore patterns defined.

To define patterns in package.json add somthing like this:

"config": {
  "ignore": ['**/*.bad']
}

If you do not fancy the config key, provide a different one using the configKey option.

Options

OptionDefaultDescription
useGitIgnoretrueTurn on/off allowing ignore patterns via .gitignore
usePackageJsontrueTurn on/off allowing ignore patterns via package.json config.
configKey'config'This is the parent key in package.json to look for the ignore attribute.
gitIgnoreFile'.gitignore'Name of the .gitignore file look for (probably best to leave it default)
ignore[]List of additional ignore patterns to use
cwdprocess.cwd()This is the working directory to start the deglobbing

Contributing

Contributions welcome! Please read the contributing guidelines first.

License

ISC