В настоящее время я планирую создать собственный Vim-подобный редактор. Он будет написан на C, и я хочу, чтобы он был настолько переносимым, насколько это возможно, как можно больше типов систем.Любой способ сделать переносные терминальные управляющие последовательности?
Я знаю, проклятий (Ncurses, я полагаю), команда tput, и как терминалы используют последовательность управления (Esc- [и характер CSI), чтобы изменить фон, перемещать курсор и т.д.
Из вышеперечисленных вариантов кажется, что ncurses будет наиболее рекомендуемым способом печати для редактора. НО у ncurses также есть много вещей, которые я бы скорее не использовал, и если это разумно выполнимо, я бы предпочел создать свою собственную систему. Я не против использования этого, но ... в любом случае.
Итак, мой вопрос: есть ли способ использовать контрольные последовательности в подавляющем большинстве терминалов без использования библиотеки? Через tput или другой метод?
Спасибо!
Это * * цель проклятий. Если вы не хотите его использовать, вы можете объяснить, почему более подробно. Тем не менее, да, вы должны иметь возможность получить такую же степень переносимости, используя terminfo или termcap напрямую (хотя это не «без использования библиотеки»). И, на практике, вы, вероятно, могли бы покрыть большинство терминалов набором последовательностей ESC с усиленным интерфейсом ... но я не рекомендую это делать. –