.. Irenicurse documentation master file, created by sphinx-quickstart on Sun Mar 11 19:10:32 2012. You can adapt this file completely to your liking, but it should at least contain the root `toctree` directive. Welcome to Irenicurse! ====================== Irenicurse is a project that have the aim to create an high level python framework to write ncurse applications. It is based on `urwid `_, a python ncurse library. .. Note:: You can find the project repository `here `_. .. Warning:: This project is still young. However it is pretty stable in term of bugs since it's an abstraction on top of Urwid and the code API big picture shouldn't change a lot (minors details are changing). What risk to limit you is that there isn't a lot of content (differents widgets) yet and you'll quickly need to build your own depending on what you want to do. Otherwise you can safely prototyping with it. Focus ----- * simplicity * allow to dev very fast, at least for most of the standard and simple use cases * promote re-usability as much as possible * if possible, be easy and fast to learn Approach -------- Build a collection of high level generic widgets and allowing the user to extends those widgets to match his needs. The transitions betweens widgets is very similar to the call/answer mechanism of the `smalltalk web framework seaside `_. In a nutshell, the current widget can "*call*" another widget and give him a callback, this widget will then be the current widget, it can then, if desired, "*answer*". This will the callback, with arguments if necessary and the focus will be given back to the first widget. Example: in a todo list manager, the main widget is a TodoListWidget that display the title of a list of todos. When the user press some key, the TodoListWidget will call a EditTodoWidget that will display a detail view of the todo with editing possibility. Then, the EditTodoWidget will answer by calling the callback with the modified todo, this callback will then save this modified todo. Installation ============ From source ----------- First, get the source:: git clone https://github.com/Psycojoker/irenicurse Then:: python setup.py install Using pip --------- Simply (no release are available yet on pypi).:: pip install git+git://github.com/Psycojoker/irenicurse.git Make sure that your version of pip is recent enough. If you get an error, simply update it with:: pip install -U pip .. toctree:: :maxdepth: 2 Indices and tables ================== * :ref:`genindex` * :ref:`modindex` * :ref:`search`