Scinterm

Scinterm is a curses platform for Scintilla that supports ncurses, PDCurses, and X/Open Curses.

scinterm

It is highly recommended to run Scinterm in a UTF-8-aware terminal with a font that supports many UTF-8 characters (“DejaVu Sans Mono” is one of them), since Scinterm makes use of UTF-8 characters when drawing wrap symbols, some marker symbols, and call tip arrows.

Requirements

Download

Scinterm releases can be found here.

Compile

After downloading Scinterm, it is recommended to unzip it into the top-level directory of an instance of Scintilla, similar to other Scintilla platforms like gtk/ and win32/. After that, go into the Scinterm directory and run make patch followed by make to build the usual ../bin/scintilla.a.

You can optionally build the demo application, jinx, by going into jinx/ and running make. Pressing the q key quits the demo. Note that the demo assumes lexilla is a sibling to the ../../../scintilla directory, and that it has been built (i.e. ../../../lexilla/bin/liblexilla.so exists).

Usage

Scinterm’s Application Programming Interface (API) documentation is located in the project’s docs/ directory and covers how to create and interact with a Scintilla widget in a terminal application.

Colors

If your terminal emulator supports RGB colors, you may use them freely in Scintilla messages.

If you prefer to use your terminal emulator’s palette of up to 16 colors, you must use the colors from the following table, which are listed in Scintilla’s “0xBBGGRR” format.

0x000000 Black 0x404040 Light black
0x000080 Red 0x0000FF Light red
0x008000 Green 0x00FF00 Light green
0x800000 Blue 0xFF0000 Light blue
0x800080 Magenta 0xFF00FF Light magenta
0x808000 Cyan 0xFFFF00 Light cyan
0xC0C0C0 White 0xFFFFFF Light white

Your terminal will map these colors to its palette for display. In some terminals, you may need to set a style’s bold attribute in order to use the light color variant.

Curses Compatibility

Scinterm lacks some Scintilla features due to the terminal’s constraints:

Support

You can contact me personally at code att foicica.com.