core functions of rbcurse
Switch branches/tags
Clone or download
Pull request Compare This branch is 177 commits behind rkumar:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Contains core widgets and infrastructure of rbcurse ncurses toolkit. rbcurse helps to easily build ncurses application for text terminals.

rbcurse-core contains basic widgets for constructing applications. These include:

  • field

  • buttons - checkbox, radio, toggle

  • list

  • textview

  • dialogs and popup

  • table

  • menu

  • tabbedpane

  • tree

  • application header

  • status line

Core intends to be :

  • stable,

  • have very few changes,

  • be backward compatible.

  • simple, maintainable code

I shall be standardizing core over the next one or two minor versions. I shall also be simplifying code as much as possible to make it maintainable and more bug-free.

Method names in some classes may change, and one or two widget names will change. rbasiclistbox will become listbox while the old listbox that has moved to extras will become something like editlistbox. Similarly the old table will become edittable in extras, whereas tabularwidget will becoming table in core. The new tabbedpane and messagebox will replace the old ones, while the old ones will move to /deprecated.

Color formatting needs to be standardized and a proper API firmed up for that, so user code does not get affected by internal changes. Similarly, work on textpad may get integrated into some widgets since it could simplify their code.

I have not yet begun working on extras and experimental as yet. This contains code that was working in rbcurse-1.5, but not tested or touched since then. I will only get around there after polishing the core a bit more. The code lies on github.


gem install rbcurse-core # just the core

To install more:

gem install rbcurse-extras # the core, and extra stuff

gem install rbcurse # the core, extra and experimental stuff

See also


Same as ruby license.

(c) copyright rkumar, 2008-2011.