Tartalomjegyzék

< C

Slang

Bevezetés

Az slang egy többplatformos programozói könyvtárgyűjtemény. (Van ilyen programozási nyelv is). A konzol felhasználóbarát kezelését segíti elő, kurzor pozíciónálással, képernyőtörléssel, színezéssel, stb.

Funkciójában a ncurses és conio könyvtári függvényekkel egyező.

Telepítés

Debian GNU/Linux alatt a telepítés egyszerű:

apt-get install libslang2-dev

Windows alatt le kell tölteni a weblapjáról és telepíteni:

Helló Világ

prog01.c
#include <slang.h>
main()
{
 
 
    SLtt_get_terminfo();
    SLang_init_tty(-1, 0, 0);
    SLsmg_init_smg();
 
    SLsmg_write_string("Helló Világ!");
    SLsmg_refresh();
 
    SLsmg_reset_smg();
    SLang_reset_tty();
}

Az SLang használatához a slang.h fejállományok beillesztése szükséges.

Fordításhoz a következő parancssori kapcsoló szükséges:

-lslang

Várakozás billentyűnyomásra

prog01.c
#include <slang.h>
main()
{
 
 
        SLtt_get_terminfo ();
        SLang_init_tty (-1, 0, 0);
        SLsmg_init_smg ();
 
 
	SLsmg_write_string("Folytatáshoz nyomj egy billentyűt");
	SLsmg_refresh();
	SLang_getkey();
 
        SLsmg_reset_smg ();
        SLang_reset_tty ();
 
}

Képernyő és kurzor

prog01.c
#include <slang.h>
main()
{
        SLtt_get_terminfo ();
        SLang_init_tty (-1, 0, 0);
        SLsmg_init_smg ();
 
	SLsmg_write_string("Elso");
	SLsmg_refresh();
	SLang_getkey();
 
	SLsmg_cls(); // Képernyő törlés
	SLsmg_gotorc(0,0);  //Kurzor alaphelyzetbe
	SLsmg_write_string("Masodik");
	SLsmg_refresh();
	SLang_getkey();
 
        SLsmg_reset_smg ();
        SLang_reset_tty ();
}

UTF-8 használata

prog01.c
#include <slang.h>
main()
{
        SLtt_get_terminfo ();
        SLang_init_tty (-1, 0, 0);
        SLsmg_init_smg ();
 
	SLsmg_utf8_enable (1);
	SLtt_utf8_enable (1);
 
	SLsmg_write_string("Első");
	SLsmg_refresh();
	SLang_getkey();
 
	SLsmg_cls(); // Képernyő törlés
	SLsmg_gotorc(0,0);  //Kurzor alaphelyzetbe
	SLsmg_write_string("Második");
	SLsmg_refresh();
	SLang_getkey();
 
        SLsmg_reset_smg ();
        SLang_reset_tty ();
}

Sortörés kiíratásának bekapcsolása

prog01.c
#include <slang.h>
main()
{
        SLtt_get_terminfo ();
        SLang_init_tty (-1, 0, 0);
        SLsmg_init_smg ();
 
	SLsmg_utf8_enable (1);
	SLtt_utf8_enable (1);
 
	SLsmg_Newline_Behavior = SLSMG_NEWLINE_MOVES;
 
	SLtt_set_color(0,NULL, "green", "blue");
	SLsmg_write_string("Első\n");
 
 
	SLsmg_refresh();
	SLang_getkey();
 
	SLtt_set_color(0,NULL, "white", "red");
	SLsmg_write_string("Első\n");
	SLsmg_refresh();
	SLang_getkey();
 
 
        SLsmg_reset_smg ();
        SLang_reset_tty ();
}

Több info