Skip to content

Ruby API to create terminal-based menus, using curses.

License

Notifications You must be signed in to change notification settings

Muriel-Salvan/curses_menu

Repository files navigation

curses_menu

Ruby API to create terminal-based menus, using curses.

  • Easy navigation using arrows, page up/down, home, end, enter and escape keys.
  • Several actions per menu item.
  • Scrolling support.
  • Extensive formatting options with colors, alignments, decorations...
  • Easy support for sub-menus.
  • Automatic key presses for autmating tasks in the menu.
  • Ruby-like API.

Install

Via gem

$ gem install curses_menu

Via a Gemfile

$ gem 'curses_menu'

Usage

require 'curses_menu'

CursesMenu.new 'My awesome new menu!' do |menu|
  menu.item 'How\'s life?' do
    puts 'Couldn\'t be easier'
    :menu_exit
  end
end

Check the examples folder for more examples.

Change log

Please see CHANGELOG for more information on what has changed recently.

Testing

Automated tests are done using rspec.

Do execute them, first install development dependencies:

bundle install

Then execute rspec

bundle exec rspec

Contributing

Any contribution is welcome:

  • Fork the github project and create pull requests.
  • Report bugs by creating tickets.
  • Suggest improvements and new features by creating tickets.

Credits

  • [Muriel Salvan][link-author]

License

The BSD License. Please see License File for more information.

About

Ruby API to create terminal-based menus, using curses.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages