LINUX.ORG.RU

Терминалы.


0

0

Можно ли сделать предположение, что на всех PC используется один и тот же тип терминала? Мне необходимо написать функции для отрисовки цветного текста + функции обработки ввода с клавиатуры. Использовать ncurses или slang принципиально не хочу, так как считаю что это костыли для допотопных терминалов. Моя программа должна работать на PC под управлением linux. Я совершенно плаваю в вопросе, гугл практически не дает об этом информации. Подскажите, чем мне грозит такой подход (вывод текста напрямую с помощью ESC-последовательностей)? Еще раз повторю, функционирование программы на машинах, отличных от x86 не требуется.

anonymous

>Подскажите, чем мне грозит такой подход (вывод текста напрямую с помощью ESC-последовательностей)?

если человек сделает tset с целью получить нормальный терминал то результаты поведения твоей проги непредсказуемы. ещё раз хорошо подумай.

>Использовать ncurses или slang принципиально не хочу, так как считаю что это костыли для допотопных терминалов.

глубочайшее заблуждение

можеш ещё попытатся поюзать termcap OR terminfo

cvv ★★★★★
()

> Использовать ncurses или slang принципиально не хочу, так как считаю что это костыли для допотопных терминалов. Моя программа должна работать на PC под управлением linux.

== "я не знаю как работать с [n]curses и не хочу этого знать?"

все-таки подумайте еще раз. или попробуйте голые ESC последовательности, наломайте дров а потом возвращайтесь к общепринятым методам работы с терминалом.

// wbr

klalafuda ★☆☆
()
Ответ на: комментарий от klalafuda

Я знаю как работать с ncurses и легче от этого не становится. Ncurses позволяет не заботиться от типе терминала. Даже есть возможность эмулировать функциональные клавиши через комбинацию с ESC. Но я например хочу _НОРМАЛЬНО_ задействовать ESC. Зачем мне городить огород с использованием notimeout если без ncurses все работает. Мой вопрос как раз и состоял в том - можно ли сделать предположение, что на всех PC терминал один и тот же? Вот этого то я и не понимаю как раз. Мне не нужна совместимость с экзотическими или древними машинами. Только x86.

anonymous
()

> Можно ли сделать предположение, что на всех PC используется один и тот же тип терминала?

Можно исходить из предположения, что везде и всюду можно получить vt100

Neksys ★★★
()
Ответ на: комментарий от anonymous

Нельзя, придурь.

screen - это допотопный терминал?

teraterm и прочие вендовые эмуляторы - допотопные?

Да и сами "допотопные", аппаратные, тоже много где применяются, урод. И ещё не забывай про мобильные терминалы, которые тоже далеко не обязательно VT100-compatible.

anonymous
()
Ответ на: комментарий от anonymous

> Да и сами "допотопные", аппаратные, тоже много где применяются, урод. И ещё не забывай про мобильные терминалы, которые тоже далеко не обязательно VT100-compatible.

О, как мы слюной забрызгали сразу. А теперь Листаем страницу вверх и учимся читать (базовая функция, которой нормальных людей учат в школе):

> не нужна совместимость с экзотическими или древними машинами. Только x86.

> Твоя программа дебильная пойдёт на хуй, если будет забивать на "допотопные" терминалы.

Моя программа "на хуй" не пойдет по той причине что она для внутреннего использования.

> screen - это допотопный терминал? > teraterm и прочие вендовые эмуляторы - допотопные? Вот я и спрашивал насчет терминалов, используемых на pc. А из Вас бьет фонтан фекалий вместо _НОРМАЛЬНОГО_ пояснения моих заблуждений.

anonymous
()
Ответ на: комментарий от cvv

> главная трабла состоит в том что ты непонимаеш что такое "терминал"

Совершенно согласен. Ткните меня носом в то место, где про это можно почитать.

anonymous
()
Ответ на: комментарий от cvv

то что на сегодня представляет из себя видеокарта+клава не имеет ничего общего с "терминалами" в твоём понимании.

на pc "терминал" всегда емулируется тоесть никаких нативных терминалов нету-у.

тип терминала который будет эмулироваться устанавливается в стартовых скриптах линука как параметр команды tput.

PS:хоть теперь ты что нить понял???

cvv ★★★★★
()
Ответ на: комментарий от anonymous

Тебе определение нужно? На примерах не понимаешь? screen - эмулятор терминала. Софтина, которая не работает корректно в screen, сразу идёт в жопу, потому как большинство вменяемых людей пользуют именно screen, а не тот эмулятор, который, например, в rxvt.

Далее. Доступные эмуляторы тоже все разные. Linux console отличается от xterm, оба они отличаются от rxvt. Про не-юниксовые и воовсе базару нет, ttpro например, и другие популярные вендовые терминалки.

anonymous
()
Ответ на: комментарий от anonymous

Вообще если ТОЛЬКО для внутреннего пользования - то можно как и прям в 0B800 писать.

mrco ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.