1.0.4 • Published 5 years ago

trim-margin v1.0.4

Weekly downloads
16
License
MIT
Repository
github
Last release
5 years ago

trim-margin

Build Status

trimMargin like Kotlin and stripMargin like Scala.

NPM

Features

  • Indent in a string literal.
  • Selectable APIs: trimMargin or stripMargin.
  • Use as tagged template literals.
  • Inject to string type.

install

$ npm i -S trim-margin

Usage

const {
    trimMargin,
    tm,
    inject,
} = require("trim-margin");

console.log(trimMargin(`
	|trim
    | indent
        | spaces`));
// => "\ntrim\n indent\n spaces"

console.log(trimMargin(`
    #other
    # delimiter`, "#"));
// => "\nother\n delimiter"

const template = `    | template`;
const literal  = `    | literal`;
console.log(tm`\
    |tagged
    ${template}
    |${literal}`);
// => "tagged\n template\n    | literal"

inject();
console.log(`\
    |inject
 to | string`.trimMargin());
// => "inject\n to | string"

API

trimMargin(str: string, delimiter: string): string

Trim indent spaces.

More detail "spaces":

Matches a single character other than white space. Equivalent to [^ \f\n\r\t\v\u00a0\u1680\u180e\u2000-\u200a\u2028\u2029\u202f\u205f\u3000\ufeff].

From: MDN web docs

Expect, /\r?\n/

str: string

Indented string.

delimiter: string

Indent delimiter. This is used as an argument to a RegExp object. defalut: "\\|"

stripMargin(str: string, delimiter :string): string

Same trimMargin.

tm

Use as Tagged template literals. Same trimMargin(literal).

sm

Same tm.

inject: void

Inject to String: trimMargin and stripMargin. You can use it like method of string type.

injectTrimMargin: void

Inject to String: trimMargin. You can use it like method of string type.

injectStripMargin: void

Inject to String: stripMargin. You can use it like method of string type.

injectAt(methodName: string): void

Inject to String. You can use it like method of string type.

methodName: string

Method name injected into string type.

License

MIT © tee-talog

1.0.4

5 years ago

1.0.2

6 years ago

1.0.1

6 years ago

1.0.0

6 years ago

0.0.4

6 years ago

0.0.3

6 years ago

0.0.2

6 years ago

0.0.1

6 years ago