|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Zahar Kiselev 2:5030/382.1 23 Jan 2001 05:17:44 To : Dmitry Morozhnikov Subject : using ncurses -------------------------------------------------------------------------------- At 23 Jan 01 04:05:13, Dmitry Morozhnikov wrote to Zahar Kiselev: ZK>> Проблема лишь в том, чтобы ZK>> _договориться_ о более-менее единообразном соответствии макросов ZK>> ncurses и клавишных комбинаций. Именно так - просто _договориться_, ZK>> чтобы у всех все было ZK>> более-менее одинаково. DM> То есть основная проблема, в том, что бы ctrl-f1 обозначало какое-то DM> конкретное метадействие для всех прог? Hет, договориться о том, что нажатие CTRL-F1 будет восприниматься программой как макроопределение KEY_F31 библиотеки ncurses. А что уж там программа будет делать получив такую клавишу от ncurses - ее дело. DM> зарекаться на ctrl-f1 -- бессмысленно -- это же элементарно правкой DM> terminfo DM> настраиваться при таком раскладе будет. Тот факт, что "будет элементарно настраиваться" не отменяет существующей ситуации с _ненастроенностью_ библиотеки ncurses. Почему-то многие стесняются это признать и говорят то об "отсутствии смысла", то о несовместимости с vt100, то еще о чем-то столь же актуальном. DM>>> Более того, подобная DM>>> стратегия не позволит получать информацию о том, что сначала была DM>>> нажата кнопочка ctrl, а затем к ней добавилась f1. ZK>> А оно так уж очень надо? Достаточно получить факт нажатия Ctrl-F1 как ZK>> F31 например. Опять же - достаточно для указанного класса применений, да ZK>> и для многих других тоже. Пльзователь нажал ctrl-f1, программа опознала это как KEY_F31 и выполнила приписанное к этой клавише действие. Что еще надо? DM> Оно может быть надо как раз для указанного класса применений. Догадайся DM> зачем. DM> :-) Пока не понял. Поясни пожалуйста. Зачем бухгалтерской программе может быть нужно _отдельно_ получать нажатие ctrl ? Вот для динамической игрушки - действительно может быть надо, но динамические игрушки в текстовом режиме почти никогда не работают и ncurses не пользуются. ZK>> По большей части да, потому что сейчас нет программ, которые ZK>> использовали бы ZK>> вышеупомянутый Ctrl-F1 или какой-нибудь Ctrl-HOME. Для эксперимента ZK>> можешь назанчить разные коды на HOME и Ctrl-HOME и убедиться, что ничего ZK>> из того что у ZK>> тебя есть - не "сломается". DM> Верно, таких прог нет. А когда будут? :-) Как только назначим макросы на кнопки - можно будет тут же пропатчить хотябы mc - во-первых чтобы клавишные комбинации в нем соответствовали _клону_ нортона, а во-вторых он тут же по телнету и через эмулятор терминала(telix for DOS например) заработает нормально. И еще есть "кандидаты", но это пока рано обсуждать. ZK>> Вот когда мы настроим наконец ZK>> ncurses и нам станет катастрофически не хватать его возможностей работы ZK>> с клавиатурой - тогда можно будет думать о каких-то других решениях. DM> Все что надо от ncurses -- способность понимать дополнительные определения DM> terminfo/termcap. Пока этого нет в либе, пока эта либа не придет в каждый DM> дом и не постучится -- смысла во всем этом нет. В _существующей_ библиотеке ncurses определений хватит на полторы клавиатуры. Почитай h-файл и посмотри какая часть из имеющегося сейчас используется. Так что библиотеку переделывать не надо. Hадо победить свою лень и ее настроить, желательно всем одинаково. Я хоть сегодня могу макросы ncurses на кнопки поназначать, но не уверен в том, что сделаю это с соблюдением всех имеющихся традиций и наиболее логично изобрету их расширения. Хотя прочитал по этой теме немало - существуют целые сайты, посвященные клавиатурам терминалов. Вот потому и пинаю общественность - чтобы все заинтересованные люди пошевелили мозгами. Zahar --- QDed alpha v3.57pl9.1e/Linux * Origin: (Empty...) (2:5030/382.1) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/3288e9b37d5a.html, оценка из 5, голосов 10
|