easy-renamer
v0.3.1
Published
Easily rename files using custom rename functions that are automatically used against any filepaths that match the associated regex or glob patterns.
Downloads
32
Readme
easy-renamer
Easily rename files using custom rename functions that are automatically used against any filepaths that match the associated regex or glob patterns.
Install
Install with npm:
$ npm install easy-renamer --save
Examples
See examples. To run the examples, git clone the project then run the following from the root of the project:
$ npm i && node example
Usage
var Renamer = require('easy-renamer');
var renamer = new Renamer({destBase: 'foo/bar'});
renamer.matcher('*.md', function(file) {
return path.join(file.dirname, file.filename + '.html');
});
renamer.rename('a/b/c.md');
//=> 'a/b/c.html'
Example with multiple patterns
var Renamer = require('easy-renamer');
var renamer = new Renamer();
function extname(ext) {
return function(file) {
return path.join(file.dirname, file.filename + ext);
};
}
// use glob patterns...
renamer.matcher('**/*.md', extname('.html'));
// or regex
renamer.matcher(/foo\/.*\.less$/, extname('.css'));
glob('**/*', function(err, files) {
files.forEach(function(fp) {
fp = renamer.rename(fp);
//=> do something with fp...
});
});
Changelog
v0.3.0
- Renamed
.match()
method to.matcher()
(this is the last time, I promise!) file.name
property was renamed tofile.filename
v0.2.0
- Renamed
.pattern()
method to.match()
- Implements lazy-caching
Related projects
You might also be interested in these projects:
- map-files: Return an object for a glob of files. Pass a
rename
function for the keys,… more | homepage - micromatch: Glob matching for javascript/node.js. A drop-in replacement and faster alternative to minimatch and multimatch. Just… more | homepage
- parse-filepath: Pollyfill for node.js
path.parse
, parses a filepath into an object. | homepage
Contributing
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.
Building docs
Generate readme and API documentation with verb:
$ npm install verb && npm run docs
Or, if verb is installed globally:
$ verb
Running tests
Install dev dependencies:
$ npm install -d && npm test
Author
Jon Schlinkert
License
Copyright © 2016, Jon Schlinkert. Released under the MIT license.
This file was generated by verb, v, on April 02, 2016.