Я разработчик графического интерфейса. Я использовал многие фреймворки с графическим интерфейсом, включая WindowsForms, Flash, HTML, AppKit, UIKit. Я могу сказать, что знаю, как кодировать GUI.
Внезапно я заинтересовался интерфейсом командной строки. Например, VI или Emacs. Поскольку я начал программировать с графическим интерфейсом, у меня нет опыта или знаний о CLI. Конечно, я использовал VI и unix-оболочки, однако я не знаю, как их реализовать. И я хочу это знать.
Для графических интерфейсов самая основная конструкция для всего графического материала - это метод рисования самого низкого уровня. Для программных реализаций это метод рисования на основе процессора. Для реализации с аппаратным ускорением это метод на основе OpenGL. Все материалы GUI построены поверх них. Что я могу ожидать от CLI? Как я могу рисовать текст на консоли и моргать кареткой?
Мне просто нужен первый шаг. Например, имя функции или имя библиотеки. Например, что-то вроде функции setPixel()
. Любая помощь будет оценена.
P.S. Я предпочитаю общую систему Unix. В первую очередь POSIX. И в настоящее время я использую Mac OS X. Конечно, язык C.