Editor de text: introducere

Scopul acestui laborator este familiarizarea studenților cu editorul de texte pe care îl vom folosi pe parcursul semestrului pentru a ilustra în mod practic diversele concepte abordate.

Cod editor

Descărcați scheletul de cod al editorului de text de aici.

Ncurses

Editorul este bazat pe ncurses – o bibliotecă lightweight care facilitează crearea de UIs în terminal. The Linux Documentation Project menține acest ghid, care poate servi atât ca introducere cât și ca referință rapidă pentru diverse funcții.

Cerințe

1. Rețineți textul sub forma unui array bidimensional; săgețile de la tastatură schimbă poziția cursorului în cadrul matricei. Alte taste (litere, cifre, simboluri speciale) înlocuiesc textul de sub cursor.

2. Implementați două moduri diferite de folosire: “view” și “write”, similare cu modurile “Normal” și “Insert” din vim. Modul “view” e default; apăsarea tastei “i” trece în “write”; de acolo, apăsarea tastei “<Esc>” trece în “view” (alternativ, puteți folosi orice alt shortcut vreți).

3. Adăugați un mod de a insera text fără suprascrie text (textul inserat “împinge spre dreapta” textul existent, în limita dimensiunii unui rând în matrice).