Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »

select-shell

1.1.2 • Public • Published

select-shell

Item selection for commandline nodejs apps.
  • Easy to use.
  • Single / multiple item-select.
  • Optional cancel message.
  • Color/styling/spacing options.
  • Only depends on 'colors'!

select-shell example image

Installation

npm install select-shell

Usage

Simply navigate + make selection with the arrow keys...

Up and Down - Navigates on the options
Right - Check the option
Left - Uncheck the option
Enter/Return - confirms the options selected
Esc - Cancel/Exit

Code

'use strict';
 
var list = require('./index')(
  /* possible configs */
  {
    pointer: ' ▸ ',
    pointerColor: 'yellow',
    checked: ' ◉  ',
    unchecked:' ◎  ',
    checkedColor: 'blue',
    msgCancel: 'No selected options!',
    msgCancelColor: 'orange',
    multiSelect: true,
    inverse: true,
    prepend: true,
    disableInput: true
  }
);
 
var stream = process.stdin;
 
list.option(' One    ')
    .option(' Two    ')
    .option(' Three  ')
    .list();
 
list.on('select', function(options){
  console.log(options);
  process.exit(0);
});
 
list.on('cancel', function(options){
  console.log('Cancel list, '+ options.length +' options selected');
  process.exit(0);
});

Optional configs

var select = require('select-shell')(
  /* These are the default values */
  {
    pointer: '',
    pointerColor: 'white',
    checked: ' ✓',
    unchecked: '',
    checkedColor: 'green',
    msgCancel: 'No selected options!',
    msgCancelColor: 'red',
    multiSelect: true,
    inverse: false,
    prepend: false,
    disableInput: true
  }
);

And for coffee drinkers, please see sample.coffee.

list = require('.')
  pointer    : ' ► '
  checked    : ' ◉  '
  unchecked  : ' ◎  '
  prepend    : true

The scheme of color is equal to the module colors.

style color theme
bold yellow rainbow
italic cyan random
underline white zebra
inverse magenta
green
red
grey
blue

install

npm i select-shell

Downloadsweekly downloads

562

version

1.1.2

license

MIT

homepage

github.com

repository

Gitgithub

last publish

collaborators

  • avatar