Обсуждение возможных улучшений работы с консолью для TC7.5
Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер
-
DrShark
- Сообщения: 911
- Зарегистрирован: Сб окт 21, 2006 20:27
- Откуда: Kyiv, Ukraine
- Контактная информация:
Честно говоря, не вижу смысла Гислеру добавлять ещё один вид плагинов только для... консоли. Сейчас уже существуют 4 типа плагинов, каждый из которых педназначен для решения довольно широкого круга задач. Тем более, что консоль уже реализована двумя плагинами. Хотя встроить консоль не плагином, а как в проге Флинта он, думаю, может. Особенно если учесть, что на оф. форуме он предложил идею встроить в TC CD/DVD-писалку (имхо, во встроенном виде -абсолютно не нужная вещь - вот для этого куда лучше подходят плагины).
- CaptainFlint
- Сообщения: 6239
- Зарегистрирован: Вт дек 14, 2004 22:34
- Контактная информация:
Не знаю, у меня кракозяблов не наблюдалось... Возможно, это как-то связано с тем, что я программа у меня скомпилирована в ANSI-версии.VadiMGP писал(а):Тогда объясни мне, пожалуйста, почему когда я открываю консольное окно через Start->Run у меня в этом окне все в порядке, а в консольном окне твоей программы половина символов - кракозябры.
Иврит не установлен, проверить пока не могу. Подозреваю, что проблема примерно в том же самом, что и выше.VadiMGP писал(а):А также почему, в первом случае у меня курсор перемещается по экрану правильно (т.е. в соответствии с текущим выбранным языком), а в консольном окне твоей программы всегда ходит слева направо (и на английском, и на иврите)?
Так-с, если это правда, то приношу свои извинения. Видимо, я перепутал это предложение с каким-то другим, на которое Гислер отреагировал более резко. Как только найдётся время, поищу соответствующие обсуждения (сегодня уже не в состоянии). В таком случае, конечно, очень многое меняется, конкретнее смогу сказать только после того, как почитаю отзывы Гислера, а также смогу придумать хоть какой-нибудь эскиз API, позволяющий нормальную интеграцию консоли (если честно, пока что у меня это не получается: интегрировать-то плёвое дело, а вот организовать переброску туда команд, запущенных из командной строки Тотала - это задача уже нетривиальная, если пытаться рассматривать это именно как универсальный API-интерфейс, а не как заточку конкретно под встроенную консоль).VadiMGP писал(а):Я счиатю, что ты совершенно неправильно излагаешь точку зрения Гислера. <...>
Это никак не согласуется с твоим утверждением.
На последующие высказывания не отвечаю, т.к. мои предыдущие ответы были построены на неправильных (судя по всему) предпосылках и, следовательно, неактуальны.
Почему же, ё-моё, ты нигде не пишешь "ё"?
Все. Больше вопросов не имею.При чем тут умозаключения?
Ты не понял, кажется. Никто никогда не предлагал плагины только для консоли. Я предлагал плагины, для добавления дополнительных элементов в ТС. Это может быть консоль, тулбар, секундомер, CPU или ВТМ индикатор, все что угодно. Сейчас вот, на оффоруме носятся с этими "хлебными крошками" - это тоже вполне может быть плагин. Консоль - всего лишь пример, каким мог бы быть плагин такого типа.DrShark писал(а):не вижу смысла Гислеру добавлять ещё один вид плагинов только для... консоли.
И правильно. "вопросы" у тебя "странноватые".Все. Больше вопросов не имею.
Вот это уже что-то. Хоть что-то конкретное написал, список плагинов. Из него и надо исходить. Подумал бы, как расширить Листер API для охвата всех этих плагов.не предлагал плагины только для консоли. Я предлагал плагины, для добавления дополнительных элементов в ТС. Это может быть консоль, тулбар, секундомер, CPU или ВТМ индикатор, все что угодно. Сейчас вот, на оффоруме носятся с этими "хлебными крошками" - это тоже вполне может быть плагин.
Нет. Я подразумеваю нечто вроде отдельной проги.Если ты подразумеваешь под "создать интрфейс" в том числе и его реализацию в коде, то это, фактически, хакинг - насильственное вмешательство в алгоритмы работы ТС.
Скажем, интерфейс wdx-плагинов изначально реализован в TC. Но потом появилось несколько программ, в которых этот интерфейс был воспроизведён, и, соответственно, которые смогли работать с тоталовскими плагинами. Есть аналоги для других интерфейсов.
Вот и подразумевается нечто обратное: написать реализацию и предложить её Гислеру.
Хотя Alextp по большому счёту прав - для реализации наших идей достаточно лишь небольших, относительно, добавлений в WLX API...
Понятно, что это как-то связано с ивритом. так же, как и проблема движения курсора - там надо еще включать специальный режим клавиатуры, но подробностей я не помню. Причем (майкрософт, мать их за ногу) есть два разных режима клавы и как-то надо знать какой именно включать.Возможно, это как-то связано с тем, что я программа у меня скомпилирована в ANSI-версии.
А во время написания TConsolе я сдуру пообещал это китайцам - пришлось иметь продолжительный секс с DBCS, хотя мне еще было легко, потому что от многого спасал cmd. Мне даже страшно подумать, что может быть с языками вертикального написания
Но я развел весь этот антураж, только чтобы пояснить свою мысль, высказанную ранее - я боюсь, что необходимость возни со всей этой тарабарщиной может сильно напугать и оттолкнуть Гислера от реализации встроенной в ТС консоли. И это заставляет меня думать, что ему будет проще дать тебе API, чем самому возиться с консолью.
Еще хуже будет, если получится как с этими новыми деревьями - начнет делать, потом разочаруется - и все, не видать ни консоли ни плагинов.
Ты наверно, спутал это со спором про API для витруальных панелей. Там - да, там он встал на дыбы.Видимо, я перепутал это предложение с каким-то другим, на которое Гислер отреагировал более резко.
Только один намек - для этого нужно совсем небольшое расширение механизма, который используется пока только для FS-плагинов. Там, в зависимости от того где находится фокус, команды либо исполняются самим ТС либо передаются в плагин. Надеюсь, ты понял куда я клоню? Ну ведь, буквально, чуть-чуть надо улучшить этот маршрутизатор команд. Ну просто вечером, перед сном, за чашкой чая!а вот организовать переброску туда команд, запущенных из командной строки Тотала - это задача уже нетривиальная, если пытаться рассматривать это именно как универсальный API-интерфейс,
Смотри тему, которая называется Suggestion: New plugin type - Visual(Windowed)Как только найдётся время, поищу соответствующие обсуждения
В этом случае, конечно, ни о каком хакинге речи нет. Но мне кажется, что все равно, если речь идет о достаточно большом объеме кода, то Гислер не согласится взять его. Он чрезвычайно щепетилен в этих вопросах. Если какая-то мелочь - да, брал. А что-то крупное - я думаю не возьмет. Например, я несколько раз предлагал ему взять TCMenu и встроить ее функционал в ТC - ни в какую.D1P писал(а):Я подразумеваю нечто вроде отдельной проги.
А кстати, никто не знает, как обстоят дела с языками в ФАРе?
Последний раз редактировалось Alextp Вс июн 10, 2007 02:39, всего редактировалось 1 раз.
2CJ Flash
Туда ссылку не могу дать. Это на закрытом бетафоруме. А на оффоруме я упоминал это тут. Только это не голосование. Там, вообще-то, тема про деревья. Я просто уцепился за слова Гислера, как за возможность снова про плагины напомнить. Пара человек тоже поддержали, но и только.
Туда ссылку не могу дать. Это на закрытом бетафоруме. А на оффоруме я упоминал это тут. Только это не голосование. Там, вообще-то, тема про деревья. Я просто уцепился за слова Гислера, как за возможность снова про плагины напомнить. Пара человек тоже поддержали, но и только.
- CaptainFlint
- Сообщения: 6239
- Зарегистрирован: Вт дек 14, 2004 22:34
- Контактная информация:
Не катит. Я не хочу постоянно держать нужную мне панель активной и каждый раз перед выполнением команды перебрасывать туда фокус. Я хочу работать в точности, как работаю сейчас, только в дополнение иметь возможность, как в Фаре: выполнил любую команду, причём без необходимости каких-то предварительных действий, а потом по Ctrl+O просмотрел результаты. В Тотале же такое не получается: необходимо либо заранее запускать не по Enter, а по Shift+Enter, либо предварительно активировать плагин консоли, переводить туда фокус... Всё это очень неудобно. Основной use-case, для которого лично мне нужна встроенная консоль: я запустил прожку, с которой либо раньше не работал, либо уже забыл, делает она паузу после вывода или нет. Консоль мигнула и исчезла. Я хочу иметь простую и доступную возможность просмотреть результаты в этой уже исчезнувшей консоли без повторного запуска проги.VadiMGP писал(а):Только один намек - для этого нужно совсем небольшое расширение механизма, который используется пока только для FS-плагинов. Там, в зависимости от того где находится фокус, команды либо исполняются самим ТС либо передаются в плагин.
Почему же, ё-моё, ты нигде не пишешь "ё"?
Секундочку. Так для твоих потребностей ситуация еще на порядок проще. Тогда тебе вообще не нужно организовывать переброску никаких команд! ТС запускает, скажем, ipconfig так же как сегодня. ipconfig выплевывает вывод в консоль. Все, что осталось - это по шорткату Ctrl+O показать или скрыть окно консоли.Основной use-case, для которого лично мне нужна встроенная консоль: я запустил прожку, с которой либо раньше не работал, либо уже забыл, делает она паузу после вывода или нет. Консоль мигнула и исчезла. Я хочу иметь простую и доступную возможность просмотреть результаты в этой уже исчезнувшей консоли без повторного запуска проги.
- CaptainFlint
- Сообщения: 6239
- Зарегистрирован: Вт дек 14, 2004 22:34
- Контактная информация:
Проблема в том, что при текущем поведении Тотала консоль принадлежит чужому процессу, и после того, как она закрылась, а процесс завершился, вся информация утеряна, и вытащить её попросту неоткуда - по Ctrl+O фактически нечего показывать. Это в моей демо-прожке консоль лишь скрывается, но остаётся живой, и по Ctrl+O её можно было бы показать - думаешь, с чего я так к своему варианту прикипел-то?VadiMGP писал(а):Тогда тебе вообще не нужно организовывать переброску никаких команд! ТС запускает, скажем, ipconfig так же как сегодня. ipconfig выплевывает вывод в консоль. Все, что осталось - это по шорткату Ctrl+O показать или скрыть окно консоли.
Естественно, никто не мешает на новом API написать плагин типа TConsole, просто эти два варианта смогут сосуществовать, как, скажем, технически ничто не мешает создать FS-плагин для работы с FTP, дублирующий соответствующую функциональность самого Тотала.
Почему же, ё-моё, ты нигде не пишешь "ё"?
Ясно.VadiMGP писал(а):Туда ссылку не могу дать. Это на закрытом бетафоруме.
Ну, одним как раз был мой пост.VadiMGP писал(а):Пара человек тоже поддержали, но и только.
PS: Сорри за оффтопик.
The past was yesterday...
TC 8.51a x32, #116718 Personal licence
TC 8.51a x32, #116718 Personal licence
Я потерял нить... Мы же говорим о неком гипотетическом API. Поехали сначала.

На это я ответил что переброска команд тоже плевое дело так как
И тут ты говоришь -
Я правильно ключевые слова выделил? То есть, новый API условно разбит на две части - интеграция консоли (раз плюнуть) и переброска команд(не расплеваться).CaptainFlint писал(а):конкретнее смогу сказать только после того, как почитаю отзывы Гислера, а также смогу придумать хоть какой-нибудь эскиз API, позволяющий нормальную интеграцию консоли (если честно, пока что у меня это не получается: интегрировать-то плёвое дело, а вот организовать переброску туда команд, запущенных из командной строки Тотала - это задача уже нетривиальная,
На это я ответил что переброска команд тоже плевое дело так как
После твоего use-case я сделал усиляющее уточнение - для таких целей переброска команд вообще не нужна. Таким образом, я считал, что мы видим - API, удовлетворяющий твоим потребностям состоит из одной плевой части....для этого нужно совсем небольшое расширение механизма, который используется пока только для FS-плагинов.
И тут ты говоришь -
То есть, ты снимаешь свое утверждение, что интеграция - плевое дело?Проблема в том, что при текущем поведении Тотала консоль принадлежит чужому процессу,