Lazarus + Linux console
Модератор: Модераторы
Lazarus + Linux console
Как в Lazarus управляться с консолью?
Необходимы:
- очистка консоли,
- вывод по опеределнным координатам,
- установ атрибутов цвета,
- получение текущего разрешения консоли.
CRT не предлагать, так как убивает синглы и проч проч.
Должен быть какой то аналог GetStdHandle
Необходимы:
- очистка консоли,
- вывод по опеределнным координатам,
- установ атрибутов цвета,
- получение текущего разрешения консоли.
CRT не предлагать, так как убивает синглы и проч проч.
Должен быть какой то аналог GetStdHandle
still писал(а):Как в Lazarus управляться с консолью?
Неправильный вопрос. Судя по нижеприведённому Вами тексту, консолью должна управлять собственноручно Вами написанная программа, а вовсе не Lazarus.
still писал(а):CRT не предлагать
Тогда можно и вообще не начинать писать.
still писал(а):так как убивает синглы
Вы пишете песни?
Как же Вас понять, голубчик? Не могли бы Вы изъясняться по русски?
Vadim писал(а):Неправильный вопрос. Судя по нижеприведённому Вами тексту, консолью должна управлять собственноручно Вами написанная программа, а вовсе не Lazarus.
Извините что сократил басню.
У меня есть Linux, на котором установлен Lazarus, в котором мне необходимо написать код консольного приложения. Необходима библиотека, или код, который умеет:
- возвращать разрешение консоли;
- очищать консоль;
- устанавливать курсур по координатам,
- устанавливать атрибуты цвета,
Собственно вот. CRT.pas не предлагать, так как она перехватывает на себя управление сигналами LINUX для контроля за клавиатурой.
Esc последовательности работают не совсем корректно, например очистка экрана на некоторых виртуальных консолях выполняется выводом просто N числа пустых строк.
still,
Метод очистки зависит от того, какой тип установлен для VT (см. переменную окружения TERM). Если там указан терминал, не имеющий команды очистки, как еще его чистить, кроме как выводом пустых строк?
Метод очистки зависит от того, какой тип установлен для VT (см. переменную окружения TERM). Если там указан терминал, не имеющий команды очистки, как еще его чистить, кроме как выводом пустых строк?
bormant писал(а):Метод очистки зависит от того, какой тип установлен для VT (см. переменную окружения TERM). Если там указан терминал, не имеющий команды очистки, как еще его чистить, кроме как выводом пустых строк?
Да, действительно. Вы правы.
Консоль очищается путем добавления пустых строк даже командой clear.
Вопрос чуток изменю. Мне необходимо в консоли добиться вывода текста по аналогии с nano, vi и тд.
Наверняка есть способы для реализации подобного вывода.
Если описывать заботу целиком, мне необходимо иметь вомзожность просмотра постоянно обновляющегося файла с возможностью прокрутки до определенной позиции вверх вниз. tail, head не этого не решают. Готового решения не нашел.
- Снег Север
- долгожитель
- Сообщения: 3067
- Зарегистрирован: 27.11.2007 15:14:47
- Контактная информация:
still писал(а):Если описывать заботу целиком, мне необходимо иметь вомзожность просмотра постоянно обновляющегося файла с возможностью прокрутки до определенной позиции вверх вниз.
А вам принципиально делать это именно в окне консоли? Нормальное оконное приложение - никак?
Снег Север писал(а):А вам принципиально делать это именно в окне консоли? Нормальное оконное приложение - никак?
GUI? - никак. К сожалению. Необходима работа через SSH на серверах, у которых X не планируется.
Добавлено спустя 2 минуты 55 секунд:
Собственно, nano и etc как то подобное реализуют. У меня как тяжелый вариант - начинать разбираться с их исходниками, но пока пытаюсь более простым путем.
Почитать - спросить.
- Снег Север
- долгожитель
- Сообщения: 3067
- Зарегистрирован: 27.11.2007 15:14:47
- Контактная информация:
Каждый день благодарю го`спода, что не должен программировать под *nix'ы...
Тогда, наверное, Free_Vision, на которую дал выше ссылку hinst
Тогда, наверное, Free_Vision, на которую дал выше ссылку hinst
hinst писал(а):http://wiki.freepascal.org/Free_Vision
С этим кто нить работал? Я правильно понял, что это некий аналог турбовижена на fp?
Я сам dpk поставил ... sudo apt-get install fp-units-fv-2.6.4
Как его к Lazaras прикрутить?
still писал(а):Как его к Lazaras прикрутить?
Можно взять какую-нибудь книжку по TurboVision и прикручивать именно так, как там написано.
still писал(а):С этим кто нить работал?
На нём построена консольная IDE-шка FP.
Судя по этому продукту - всё не очень хорошо.
Однозначно, не поддерживается уникод в любой форме.
С символами за пределами ASCII - проблемы.
Код не только до конца не отлажен, но и некоторые компоненты полностью отсутствуют.
И, что самое своеобразное, это переделывалось из сишной версии Turbo Vision. Соответственно, архитектура и порядок наследования объектов отличается от того, что написано в книжках по паскалевскому TV.
imho, библиотека брошена и никто ей серьёзно не занимается
Alexx2000 писал(а):Еще в FPC есть интерфейс к библиотеке ncurses...
Я пробовал ncurses, делал по образцу и подобию СИ-шных исходников, однако практически ничего не заработало.
