Skip to content

lcurses/lcurses

 
 

Repository files navigation

lcurses

By the lcurses project

License travis-ci status Stories in Ready

lcurses is a curses binding for LuaJIT, Lua 5.1, 5.2 and 5.3; like many Lua modules it simply binds to the C APIs of the curses library, so it won't build unless you have the headers and libraries to compile and link against an installed curses library already on your system. However, in the past it has been tested against pdcurses, ncurses and a few proprietary curses implementations.

For a while, lcurses was shipped inside luaposix, but now it has its own repository and release schedule again.

Documentation is generated via LDoc and is available at:

http://lcurses.github.io/lcurses/

lcurses is released under the MIT license (the same license as Lua itself). There is no warranty.

Installation

The simplest and best way to install lcurses is with LuaRocks. To install the latest release (recommended):

    luarocks install lcurses

To install current git master (for testing):

    luarocks install https://raw.githubusercontent.com/lcurses/lcurses/master/lcurses-git-1.rockspec

To install without LuaRocks, check out the sources from the repository and run the following commands:

    cd lcurses
    ./bootstrap
    ./configure --prefix=INSTALLATION-ROOT-DIRECTORY
    make all check install

Dependencies are listed in the dependencies entry of the file rockspec.conf. You will also need Autoconf and Automake.

See the Automake generated INSTALL file for configure instructions, and use configure --help after a successful ./bootstrap for details of available command-line switches.

Bugs reports & patches

Bug reports and patches are most welcome. Please report bugs and make suggestions by opening an issue on the github tracker.

There is no strict coding style, but please bear in mind the following points when writing new code:

  1. Follow existing code. There are a lot of useful patterns and avoided traps there.

  2. 8-character indentation using TABs in C sources; 2-character indentation using SPACEs in Lua sources.