0.7.0 • Published 8 years ago

fs-utils v0.7.0

Weekly downloads
13,248
License
MIT
Repository
github
Last release
8 years ago

fs-utils NPM version

fs extras and utilities to extend the node.js file system module. Used in Assemble and many other projects.

Install

Install with npm

$ npm i fs-utils --save

Usage

var fs = require('fs-utils');

API

.stripCR

Strip carriage returns from a string.

Params

  • str {String}
  • returns {String}

.stripBOM

Strip byte order marks from a string.

See BOM

Params

  • str {String}
  • returns {String}

.slashify

Normalize all slashes to forward slashes.

Params

  • str {String}
  • stripTrailing {Boolean}: False by default.
  • returns {String}

.isEmptyFile

Return true if the file exists and is empty.

Params

  • filepath {String}
  • returns {Boolean}

.isEmptyDir

Return true if the file exists and is empty.

Params

  • filepath {String}
  • returns {Boolean}

.isDir

Return true if the filepath is a directory.

Params

  • filepath {String}
  • returns {Boolean}

.isLink

True if the filepath is a symbolic link.

Params

  • filepath {String}
  • returns {Boolean}

.glob

Glob files using matched. Or glob files synchronously with glob.sync.

Params

  • patterns {String|Array}
  • returns {options}

.readFileSync

Read a file synchronously. Also strips any byte order marks.

Params

  • filepath {String}
  • returns {String}

readFile

Read a file asynchronously.

Params

  • filepath {String}
  • options {Object}
  • normalize {Boolean}: Strip carriage returns and BOM.
  • encoding {String}: Default is utf8
  • callback {Function}

.readYAML

Read a YAML file asynchronously and parse its contents as JSON.

Params

  • filepath {String}
  • returns {Object} options
  • returns {Function} cb: Callback function

.readYAMLSync

Read a YAML file synchronously and parse its contents as JSON

Params

  • filepath {String}
  • returns {Object}

.readJSON

Read JSON file asynchronously and parse contents as JSON

Params

  • filepath {String}
  • callback {Function}
  • returns {Object}

.readJSONSync

Read a file synchronously and parse contents as JSON. marks.

Params

  • filepath {String}
  • returns {Object}

.readData

Read JSON or YAML utils.async. Determins the reader automatically based on file extension.

Params

  • filepath {String}
  • options {Object}
  • callback {Function}
  • returns {String}

.readDataSync

Read JSON or utils.YAML. Determins the reader automatically based on file extension.

Params

  • filepath {String}
  • options {Object}
  • returns {String}

.writeFile

Asynchronously write a file to disk.

Params

  • dest {String}
  • content {String}
  • callback {Function}

.writeFileSync

Synchronously write files to disk, creating any intermediary directories if they don't exist.

Params

  • dest {String}
  • str {String}
  • options {Options}

.writeJSONSync

Synchronously write JSON to disk, creating any intermediary directories if they don't exist.

Params

  • dest {String}
  • str {String}
  • options {Options}

.writeJSON

Asynchronously write files to disk, creating any intermediary directories if they don't exist.

Params

  • dest {String}
  • str {String}
  • options {Options}

.writeYAMLSync

Synchronously write YAML to disk, creating any intermediary directories if they don't exist.

Params

  • dest {String}
  • str {String}
  • options {Options}

.writeYAML

Aynchronously write YAML to disk, creating any intermediary directories if they don't exist.

Params

  • dest {String}
  • str {String}
  • options {Options}

.writeDataSync

Synchronously write JSON or YAML to disk, creating any intermediary directories if they don't exist. Data type is determined by the dest file extension.

Params

  • dest {String}
  • str {String}
  • options {Options}

Example

writeDataSync('foo.yml', {foo: "bar"});

.writeData

Asynchronously write JSON or YAML to disk, creating any intermediary directories if they don't exist. Data type is determined by the dest file extension.

Params

  • dest {String}
  • data {String}
  • options {Options}
  • cb {Function}: Callback function

Example

writeData('foo.yml', {foo: "bar"});

.copyFileSync

Copy files synchronously;

Params

  • src {String}
  • dest {String}

.rmdir

Asynchronously remove dirs and child dirs that exist.

Params

  • dir {String}
  • {Function}: `cb
  • returns {Function}

.del

Delete folders and files recursively. Pass a callback as the last argument to use utils.async.

Params

  • patterns {String}: Glob patterns to use.
  • options {Object}: Options for matched.
  • cb {Function}

.ext

Return the file extension.

Params

  • filepath {String}
  • returns {String}

.dirname

Directory path excluding filename.

Params

  • filepath {String}
  • returns {String}

.last

The last n segments of a filepath. If a number isn't passed for n, the last segment is returned.

Params

  • filepath {String}
  • returns {String}

.first

The first n segments of a filepath. If a number isn't passed for n, the first segment is returned.

Params

  • filepath {String}
  • returns {String}

.lastChar

Returns the last character in filepath

Params

  • filepath {String}
  • returns {String}

Example

lastChar('foo/bar/baz/');
//=> '/'

.addSlash

Add a trailing slash to the filepath.

Note, this does not consult the file system to check if the filepath is file or a directory.

Params

  • filepath {String}
  • returns {String}

.normalizePath

Normalize a filepath and remove trailing slashes.

Params

  • filepath {String}
  • returns {String}

.relative

Resolve the relative path from a to `b.

Params

  • filepath {String}
  • returns {String}

.isAbsolute

Return true if the path is absolute.

Params

  • {type}: filepath
  • returns {Boolean}

.equivalent

Return true if path a is the same as path `b.

Params

  • filepath {String}
  • a {String}
  • b {String}
  • returns {Boolean}

.doesPathContain

True if descendant path(s) contained within ancestor path. Note: does not test if paths actually exist.

Sourced from Grunt.

Params

  • ancestor {String}: The starting path.
  • returns {Boolean}

.isPathCwd

True if a filepath is the CWD.

Sourced from Grunt.

Params

  • filepath {String}
  • returns {Boolean}

.isPathInCwd

True if a filepath is contained within the CWD.

Params

  • filepath {String}
  • returns {Boolean}

Related projects

Running tests

Install dev dependencies:

$ npm i -d && npm test

Contributing

Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.

Author

Jon Schlinkert

License

Copyright © 2015 Jon Schlinkert Released under the MIT license.


This file was generated by verb-cli on November 17, 2015.

0.7.0

8 years ago

0.6.5

8 years ago

0.6.4

8 years ago

0.6.3

8 years ago

0.6.2

8 years ago

0.6.1

8 years ago

0.6.0

10 years ago

0.5.1

10 years ago

0.5.0

10 years ago

0.4.3

10 years ago

0.4.2

10 years ago

0.4.1

10 years ago

0.4.0

10 years ago

0.3.10

10 years ago

0.3.9

10 years ago

0.3.8

10 years ago

0.3.7

10 years ago

0.3.6

10 years ago

0.3.5

10 years ago

0.3.4

10 years ago

0.3.3

10 years ago

0.3.2

10 years ago

0.3.1

10 years ago

0.3.0

10 years ago

0.2.3

10 years ago

0.2.1

10 years ago

0.2.0

10 years ago

0.1.11

10 years ago

0.1.10

10 years ago

0.1.9

10 years ago

0.1.8

10 years ago

0.1.7

10 years ago

0.1.6

10 years ago

0.1.5

10 years ago

0.1.4

10 years ago

0.1.3

10 years ago

0.1.1

10 years ago

0.1.0

10 years ago