Nearsighted Paramecium Multiverse

    gulp-rename
    DefinitelyTyped icon, indicating that this package has TypeScript declarations provided by the separate @types/gulp-rename package

    2.0.0 • Public • Published

    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

    Keywords

    Install

    npm i gulp-rename

    DownloadsWeekly Downloads

    680,169

    Version

    2.0.0

    License

    MIT

    Unpacked Size

    7.17 kB

    Total Files

    5

    Last publish

    Collaborators

    • hparra
    • fractal
    • shinnn
    • hgpa
    • yocontra