Skip to content

Generate a single formatted list item, allowing you to easily generate lists with proper indentation, bullets, numbers or other leading characters.

License

Notifications You must be signed in to change notification settings

AndersDJohnson/list-item

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

list-item NPM version

Generate a single formatted list item, allowing you to easily generate lists with proper indentation, bullets, numbers or other leading characters.

Install with npm

npm i list-item --save

Usage

var listitem = require('list-item');

Examples

Basic list

Generate a list using default bullets and indentation:

var listitem = require('list-item');
var li = listitem();
var res = '';

['a', 'b', 'c', 'd', 'e'].forEach(function (ele, i) {
  res += li(i, ele) + '\n';
});

Results in:

- a
  * b
    + c
      ~ d
        - e

Roman numerals

Generate roman numerals in increments of 10.

var listitem = require('list-item');
var romanize = require('romanize');

// specify `chars` to be passed to expand-range (lib), 
// and use the callback to modify generated numerals
var li = listitem({chars: '1..100..10'}, function (ch) {
  return romanize(ch) + '.';
});

// generate a formatted list!
['a', 'b', 'c', 'd', 'e'].forEach(function (ele, i) {
  res += li(i, ele) + '\n';
});

Results in:

I. a
  XI. b
    XXI. c
      XXXI. d
        XLI. e

API

Returns a function to generate a plain-text/markdown list-item, allowing options to be cached for subsequent calls.

  • options {String}

    • nobullet {Boolean}: Pass true if you only want the list iten and identation, but no bullets.
    • indent {String}: The amount of leading indentation to use. default is .
    • chars {String|Array}: If a string is passed, expand-range will be used to generate an array of bullets (visit expand-range to see all options.) Or directly pass an array of bullets, numbers, letters or other characters to use for each list item. Default ['-', '*', '+', '~']
  • fn {Function}: pass a function expand-range to modify the bullet for an item as it's generated. See the [examples].

var li = listitem(options);

li(0, 'Level 0 list item');
//=> '- Level 0 list item'

li(1, 'Level 1 list item');
//=> '  * Level 1 list item'

li(2, 'Level 2 list item');
//=> '    + Level 2 list item'

Run 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 (c) 2015 Jon Schlinkert
Released under the license


This file was generated by verb on February 21, 2015.

About

Generate a single formatted list item, allowing you to easily generate lists with proper indentation, bullets, numbers or other leading characters.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 100.0%