gulp-rename

Rename files easily

  • Owner: hparra/gulp-rename
  • Platform:
  • License:: MIT License
  • Category::
  • Topic:
  • Like:
    0
      Compare:

Github stars Tracking Chart

gulp-rename

gulp-rename is a gulp plugin to rename files easily.

NPM

build status
devDependency Status

Usage

gulp-rename provides simple file renaming methods.

var rename = require("gulp-rename");

// rename to a fixed value
gulp.src("./src/main/text/hello.txt")
  .pipe(rename("main/text/ciao/goodbye.md"))
  .pipe(gulp.dest("./dist")); // ./dist/main/text/ciao/goodbye.md

// rename via mutating function
gulp.src("./src/**/hello.txt")
  .pipe(rename(function (path) {
    // Updates the object in-place
    path.dirname += "/ciao";
    path.basename += "-goodbye";
    path.extname = ".md";
  }))
  .pipe(gulp.dest("./dist")); // ./dist/main/text/ciao/hello-goodbye.md

// rename via a map function
gulp.src("./src/**/hello.txt")
  .pipe(rename(function (path) {
    // Returns a completely new object, make sure you return all keys needed!
    return {
      dirname: path.dirname + "/ciao",
      basename: path.basename + "-goodbye",
      extname: ".md"
    };
  }))
  .pipe(gulp.dest("./dist")); // ./dist/main/text/ciao/hello-goodbye.md

// rename via a fixed object
gulp.src("./src/main/text/hello.txt", { base: process.cwd() })
  .pipe(rename({
    dirname: "main/text/ciao",
    basename: "aloha",
    prefix: "bonjour-",
    suffix: "-hola",
    extname: ".md"
  }))
  .pipe(gulp.dest("./dist")); // ./dist/main/text/ciao/bonjour-aloha-hola.md

See test/rename.spec.js for more examples and test/path-parsing.spec.js for hairy details.

Notes

  • dirname is the relative path from the base directory set by gulp.src to the filename.
    • gulp.src() uses glob-stream which sets the base to the parent of the first directory glob (*, **, [], or extglob). dirname is the remaining directories or ./ if none. glob-stream versions >= 3.1.0 (used by gulp >= 3.2.2) accept a base option, which can be used to explicitly set the base.
    • gulp.dest() renames the directories between process.cwd() and dirname (i.e. the base relative to CWD). Use dirname to rename the directories matched by the glob or descendents of the base of option.
  • basename is the filename without the extension like path.basename(filename, path.extname(filename)).
  • extname is the file extension including the . like path.extname(filename).
  • when using a function, a second file argument is provided with the whole context and original file value.
  • when using a function, if no Object is returned then the passed parameter object (along with any modifications) is re-used.

License

MIT License

Main metrics

Overview
Name With Ownerhparra/gulp-rename
Primary LanguageJavaScript
Program languageJavaScript (Language Count: 1)
Platform
License:MIT License
所有者活动
Created At2013-12-04 10:54:01
Pushed At2025-06-26 05:19:35
Last Commit At2025-06-25 22:19:17
Release Count10
Last Release Namev2.0.0 (Posted on )
First Release Namev0.1.0 (Posted on 2013-12-04 04:24:13)
用户参与
Stargazers Count688
Watchers Count15
Fork Count73
Commits Count99
Has Issues Enabled
Issues Count66
Issue Open Count8
Pull Requests Count27
Pull Requests Open Count1
Pull Requests Close Count12
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private