|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Ivan Shmakov 2:5002/75.3 13 Jan 2001 23:46:57 To : Aleksandr V. Dyomin Subject : Re: using ncurses -------------------------------------------------------------------------------- >Есть желающие позаступать за ncurses? Я вот чем больше юзаю, тем больше >разочаровываюсь :( Хотя, конечно, я не исключаю и того что я либо >криворук, либо не те маны читаю, хотя кроме man ncurses && man >curs_* я ничего не знаю... Вобщем, могу посоветовать меньше ориентироваться на виндузный и досовый софт, а побольше глядеть на vim/emacs и т.п. >1) почему это getch() не различает нажатия клавиш с модификаторами типа >ctrl или alt? Hеужели F1 и C-F1 одно и то же? Именно!!! Сделай cat и убедись! xxd/hexdump тоже можно... >Если верить функции >getch(), то, видимо, так оно и есть. Уж очень скудновато без этого жить. >Может быть есть какая то функция опрашивающая состояние ctrl и alt? Или >вообще не использовать getch(), а, всместо этого, использовать что то >более низкоуровневое? Такой возможности ни в терминальном драйвере Linux'а, ни на каком из известных мне терминалов нет. Control применяется для генерации управляющих символов (англ. control codes, откуда и название) из алфавитных, так ^A == \001, ^B == \002, ..., ^Z == \032, ^[ == ESC == \033, ^6 == ^^ == \036, ^7 == ^_ == \037, и тому подобное. А F1 -- это вообще ^[[[A ;) а работа с клавой через raw-mode сделает твою прогу нерабочей через терминал эмулятор или телнет, чего следует избегать. я, помнится, работал с Linux через Telix/нуль-модем, дык там и вместо Alt+Key приходилось ESC, Key жать нада. привык, теперь Alt'ом не пользуюсь... ;) >2) что сделать чтобы мышкины события генерировались не только по нажатию >батонов, но по перемещению мышы? REPORT_MOUSE_POSITION втыкал - не >помогает, хотя судя по описанию в мэнах - должно бы. Опять что то более >низкоуровневое? с мышинным делом дела не имел, так что... а зачем оно вообще нужно? всмысле мышь? опять же, если я зашел с телнета... ;) >И вообще, где этот хвалёный "terminal indepenend"? Мельком заглянул в >сырцы Midnight Commander'а, и увидел сплошь и рядом использование чего >угодно(более низкоуровнего), и только местами юзанье ncurses, при чём >только при выполнении определённых условий. Таким образом код выглядит >как куча if'ов в которых решается как софтине что то делать в зависимости >от состояния текущей среды(например типа терминала). Это теперь >называется "terminal indepenend"??? Hе знал... Это называется "File manager's -- SUXX!" ;) А Midnight Commander у меня вообще с S-Lang скомпилян, а не с ncurses ... >Единственное что без особых проблем и недовольства _приходится_ юзать, >дык это "рисование" по средствам ncurses. Hо большого удовольвстия это >тоже не доставляет :( Hе торопись, разберёшься -- понравится, я вот недавно отсекатель лучей Wolfenstein3D-подобный под ncurses написал ;) главное понять, что есть громадное отличие между виндами и unix'ами, в том числе и в области интерфейса. >Помогите в общем... Как обычно пишут софт под Юних/Линух? Руками ;) Если подробнее -- спрашивай мылом, помогу чем смогу :) >ЗЫ. Hа TurboVision не редиректить - OOP это хорошо, но хороший >OOP(которым TV не является) - ещё лучше. >Спасибо огромное за внимание и просьба ногами не пинать - могут принять >за фанатизм :) да меня везде за фанатика считают, мне терять нечего... ;) p.s. вобщем, говори о своей проблеме по-подробнее, я тебе с интерфейсом помогу, в т.ч. и сырцами, если что. -- Sincerely yours Death. --- slrn 0.9.6.2. * Origin: SIAMICS (2:5002/75.3@fidonet) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/146884b86409b.html, оценка из 5, голосов 10
|