0.5.0 • Published 8 years ago

newid v0.5.0

Weekly downloads
2
License
MIT
Repository
github
Last release
8 years ago

newid

Newid is Welsh for 'change', but it is pretty fitting for giving a file a new name, too.

Installation

To use the API:

npm install --save newid

To use the CLI and make the command newid available on your system:

npm install -g newid

Usage

If there are any changes to be made, you'll get a list of the before and after. You'll have to confirm that you want to make all of the changes, unless you use the force flag.

Supported Options

  • force - Renames matching files without being prompted
  • insensitive - Ignore case when finding matching files
  • help - Display usage help and immediately exit
  • slugify - Slugifies the file name, converting it to lowercase, replacing all non-English characters, and collapsing whitespace and separators into a single dash. (e.g., this filè_010.jpg => this-file-010.jpg)

Supported placeholders

  • {basename} - The base name of the file
  • {extname} - The file extension excluding the .
  • {index} - The index the file will be processed in

Supported placeholders - Timestamps

All file timestamps can be formatted using valid Moment.js Formats. Use the | to separate the timestamp type from the format string. As an example, {atime | YYYY-MM-DD}

  • {atime} - The time at which the file was last accessed
  • {ctime} - The time at which the file was last changed, this can include file permission changes in addition to content changes.
  • {mtime} - Time time at which the file's contents were last modified
  • {birthtime} - The time at which the file was created

API

var newid = require('newid');
newid('**/*.js', function (file) {
	// Adds the 'old' extension to all JavaScript files
	return file + '.old';
}, {force: true});
// Using the included transformer that parses placeholders: {basename}, {extname}, and {index}
var newid = require('newid');
newid('**/*.js', newid.transformer('{index}.{extname}'));

CLI

# Rename all JS files to end with .old
newid "**/*.js" {basename}.{extname}.old

# Rename all matching files and inject their index into the new name using the {index} placeholder
newid "**/*.js" {basename}-{index}.{extname}

# Rename all matching files to include its modification time, formatted as YYYY-MM-DD
newid "**/*.js" {basename}-{mtime | YYYY-MM-DD}.{extname}

# Rename all matching files without being prompted (--force|-f)
newid "**/*.js" {basename}.{extname}.old --force

# Rename all matching files regardless of case (--insensitive|-i)
newid "**/*.js" {basename}.{extname}.old --insensitive

# Rename all matching files, converting them into slugs (--slugify|-s)
newid "**/*.js" "{basename} {extname}.old" --slugify
0.5.0

8 years ago

0.4.1

8 years ago

0.4.0

8 years ago

0.3.2

8 years ago

0.3.1

8 years ago

0.3.0

8 years ago

0.2.2

8 years ago

0.2.1

8 years ago

0.2.0

8 years ago

0.1.10

8 years ago

0.1.9

8 years ago

0.1.8

8 years ago

0.1.7

8 years ago

0.1.6

8 years ago

0.1.5

8 years ago

0.1.4

8 years ago

0.1.3

8 years ago

0.1.2

8 years ago

0.1.1

8 years ago

0.1.0

8 years ago

0.0.6

8 years ago

0.0.5

8 years ago

0.0.4

8 years ago

0.0.3

8 years ago

0.0.2

8 years ago

0.0.1

8 years ago