#51
|
|||
|
|||
Re: curses, GoldEd, Shift, Ctr и современных терминалах
Serguei E. Leontiev написал(а) к Serguei E. Leontiev в Nov 15 17:19:15 по местному времени:
From: "Serguei E. Leontiev" <leo@sai.msu.ru> P.S. От 29 ноября 2015 г., 15:38:41 в fido7.ru.golded ты писал: SEL>>> 3. Попробуй запустить скрипт Python SEL>>> contrib/Unix/ged-vttest-lite.py SP>> $ ./ged-vttest-lite.py SP>> File "./ged-vttest-lite.py", line 55 SP>> key = mysc.getkey() SP>> ^ SP>> TabError: inconsistent use of tabs and spaces in indentation SL> Прогресс остановить нельзя. Исправил, проверил на Python 3.4. SL> MD5 (contrib/Unix/ged-vttest-lite.py) = SL> 38fc13c77a36c3ed1a291fc596efc739 MD5 SL> (contrib/Unix/README-utf8.txt) = SL> 1b8cfd78d3163940d2af69bb4f2ade20 В README-utf8.txt - исправил SL> опечатку, впрочем, наверное их там ещё много. Добавил в README-utf8.txt, что: Значение переменной окружения TERM можно настроить в настройках PuTTY Connection->Data->"Terminal-type string". MD5 (contrib/Unix/ged-vttest-lite.py) = 38fc13c77a36c3ed1a291fc596efc739 MD5 (contrib/Unix/README-utf8.txt) = b61d525570de64a41e18b003370d06cd -- Успехов, Сергей Леонтьев. E-mail: lse@CryptoPro.ru --- ifmail v.2.15dev5.4 |
#52
|
|||
|
|||
curses, GoldEd, Shift, Ctr и современных терминалах
Michael Dukelsky написал(а) к Serguei E. Leontiev в Nov 15 19:00:14 по местному времени:
Привет, Serguei! Я собрал голдед в CentOS 5. Запускаю его в CentOS 5.11 через screen и читаю через ssh в konsole, запущенной в openSUSE. SL> 1.1 Дополнительный код распознавания <Esc><Буква в КОИ8> как SL> комбинации <Alt>+<Буква латиницы> для Golded+; Работает. Большое спасибо! SL> 1.2 Реакция на коды curses getch() для <Shift>+<вверх/вниз>, Голдед спрашивает: "Drop this message? Yes/No" в ответ на обе комбинации. SL> <Shift>+<PgUp/PgDwn> Никакой реакции. SL> и <Alt/Ctrl/Shift>+Fn; Реакция на Alt+F5-F12: "Drop this message? Yes/No". Реакция на Ctrl+F5-F12: "Drop this message? Yes/No". В ответ на Shift+F2 меня выбросили из голдеда в терминал. Реакция на Shift+F5-F12: "Drop this message? Yes/No". SL> 1.3 Распознавание с помощью общеупотребительных определяемых SL> пользователем расширений terminfo/ncurses и иными способами SL> Esc-последовательностей отвечающих за <Ctrl>+<стрелка>; Ctrl+<влево> и Ctrl+<вправо> передвигают курсор на одно слово. Ctrl+<вверх> и Ctrl+<вниз> работают так же, как и без Ctrl. SL> 2.1 Исправлена ошибка распознавания <Alt>+<BackSpace> "Drop this message? Yes/No" SL> и <Alt>+<Enter> Никакой реакции. SL> 2.2 Исправлена обработка ошибки для не поддерживаемых символов SL> (клавиш) curses, раньше выскакивал 'Ъ'; Это не знаю, как проверить. Теперь, что говорит konsole через ssh без screen: [mike@fido ~]$ echo $TERM xterm [mike@fido ~]$ infocmp $TERM | egrep "^[^[:space:]]|k(LFT|RIT|ri|ind)=" # Reconstructed via infocmp from file: /usr/share/terminfo/x/xterm xterm|xterm terminal emulator (X Window System), kНOM=\E[1;2Н, kIC=\E[2;2~, kLFT=\E[1;2D, kNXT=\E[6;2~, kPRV=\E[5;2~, kRIT=\E[1;2C, kb2=\EOE, kbs=\177, kcbt=\E[Z, khome=\EOН, kich1=\E[2~, kind=\E[1;2B, kmous=\E[M, knp=\E[6~, kpp=\E[5~, kri=\E[1;2A, mc0=\E[i, mc4=\E[4i, [mike@fido ~]$ od -c ^[[1;2D^[[1;2C^[[1;2B^[[1;2A 0000000 ^ [ [ 1 ; 2 D ^ [ [ 1 ; 2 C ^ [ и дальше ждёт чего-то. А теперь с запущенным screen: [mike@fido ~]$ echo $TERM screen [mike@fido ~]$ infocmp $TERM | egrep "^[^[:space:]]|k(LFT|RIT|ri|ind)=" # Reconstructed via infocmp from file: /usr/share/terminfo/s/screen screen|VT 100/ANSI X3.64 virtual terminal, [mike@fido ~]$ od -c ^[[1;2D^[[1;2C^[[1;2B^[[1;2A 0000000 ^ [ [ 1 ; 2 D ^ [ [ 1 ; 2 C ^ [ Желаю успехов, Serguei! За сим откланиваюсь, Michael. ... node (at) f1042 (dot) ru --- GoldED+/LNX 1.1.5-b20151128 |
#53
|
|||
|
|||
curses, GoldEd, Shift, Ctr и современных терминалах
Max Vasilyev написал(а) к Semen Panevin в Nov 15 21:27:56 по местному времени:
Нello Semen! 28 Nov 15 12:39, you wrote to Serguei E. Leontiev: SP> зачем стока мусора в архиве? imho contrib\Unix\mygolded.h добавлять тоже не надо было - удали WBR, Max. piwamoto!писем-нет --- скучаю по FleetStreet'у :-((( |
#54
|
|||
|
|||
Re: curses, GoldEd, Shift, Ctr и современных терминалах
Serguei E. Leontiev написал(а) к Michael Dukelsky в Nov 15 22:00:55 по местному времени:
From: "Serguei E. Leontiev" <leo@sai.msu.ru> Привет Михаил, От 29 ноября 2015 г., 19:00:14 в fido7.ru.golded ты писал: MD> Я собрал голдед в CentOS 5. Запускаю его в CentOS 5.11 через MD> screen и читаю через ssh в konsole, запущенной в openSUSE. За screen ничего сказать не могу, а для konsole в terminfo есть отдельные терминалы, смотри комментарии в актуальной версии terminfo.src: <http://invisible-island.net/ncurses/...hich_terminfo> SL>> 1.1 Дополнительный код распознавания <Esc><Буква в SL>> КОИ8> как комбинации <Alt>+<Буква латиницы> SL>> для Golded+; MD> Работает. Большое спасибо! SL>> 1.2 Реакция на коды curses getch() для SL>> <Shift>+<вверх/вниз>, MD> Голдед спрашивает: "Drop this message? Yes/No" в ответ на обе MD> комбинации. Это намекает, что Esc-последовательность <Shift>+<вверх/вниз> не описана в terminfo для терминала заданного переменной TERM. Поэтому код Golded+ реагирует его начало "^[[..." как на Esc. Можешь попробовать взять скрипт на Python с Яндекс.Диска https://yadi.sk/d/fuLULT5qkoKZe быть может, с ним проще будет уточнить тип терминала. SL>> <Shift>+<PgUp/PgDwn> MD> Никакой реакции. В эмуляторах терминала часто используют <Shift>+<PgUp/PgDwn> для прокрутки экрана, для xterm это регулируется ресурсами (см. koi8rxterm-phonetic.sh), для konsole не знаю, можно начать с `man konsole'. SL>> и <Alt/Ctrl/Shift>+Fn; MD> Реакция на Alt+F5-F12: "Drop this message? Yes/No". MD> Реакция на Ctrl+F5-F12: "Drop this message? Yes/No". MD> В ответ на Shift+F2 меня выбросили из голдеда в терминал. Хм. Похоже Shift+F2 порождает "^[O..." - прикольно :) MD> Реакция на Shift+F5-F12: "Drop this message? Yes/No". SL>> 1.3 Распознавание с помощью общеупотребительных определяемых SL>> пользователем расширений terminfo/ncurses и иными способами SL>> Esc-последовательностей отвечающих за SL>> <Ctrl>+<стрелка>; MD> Ctrl+<влево> и Ctrl+<вправо> передвигают курсор на MD> одно слово. Ctrl+<вверх> и Ctrl+<влево> MD> Ctrl+<вниз> работают так же, как и без Ctrl. SL>> 2.1 Исправлена ошибка распознавания SL>> <Alt>+<BackSpace> MD> "Drop this message? Yes/No" Хм. А что у тебя генерит просто BackSpace? SL>> и <Alt>+<Enter> MD> Никакой реакции. SL>> 2.2 Исправлена обработка ошибки для не поддерживаемых SL>> символов (клавиш) curses, раньше выскакивал 'Ъ'; MD> Это не знаю, как проверить. MD> Теперь, что говорит konsole через ssh без screen: MD> [mike@fido ~]$ echo $TERM MD> xterm MD> [mike@fido ~]$ infocmp $TERM | egrep MD> "^[^[:space:]]|k(LFT|RIT|ri|ind)=" # Reconstructed via MD> infocmp from file: /usr/share/terminfo/x/xterm xterm|xterm MD> terminal emulator (X Window System), kНOM=\E[1;2Н, MD> kIC=\E[2;2~, kLFT=\E[1;2D, kNXT=\E[6;2~, kPRV=\E[5;2~, MD> kRIT=\E[1;2C, kb2=\EOE, kbs=\177, kcbt=\E[Z, MD> khome=\EOН, kich1=\E[2~, kind=\E[1;2B, kmous=\E[M, MD> knp=\E[6~, kpp=\E[5~, kri=\E[1;2A, mc0=\E[i, mc4=\E[4i, MD> [mike@fido ~]$ od -c ^[[1;2D^[[1;2C^[[1;2B^[[1;2A MD> 0000000 ^ [ [ 1 ; 2 D ^ [ [ 1 ; 2 C MD> ^ [ и дальше ждёт чего-то. Забыл добавить замечание, что полезно нажать <CR><Ctrl>+D, что бы od получил EOF и завершил свою работу. od -- octal, decimal, hex, ASCII dump Судя по выдаче, <Shift>+<стрелки> должны работать. MD> А теперь с запущенным screen: MD> [mike@fido ~]$ echo $TERM MD> screen MD> [mike@fido ~]$ infocmp $TERM | egrep MD> "^[^[:space:]]|k(LFT|RIT|ri|ind)=" # Reconstructed via MD> infocmp from file: /usr/share/terminfo/s/screen screen|VT MD> 100/ANSI X3.64 virtual terminal, [mike@fido ~]$ od -c MD> ^[[1;2D^[[1;2C^[[1;2B^[[1;2A MD> 0000000 ^ [ [ 1 ; 2 D ^ [ [ 1 ; 2 C MD> ^ [ Судя по выдаче, <Shift>+<стрелки> для терминала TERM=screen не описаны, а терминал передаёт Esc-последовательность характерную для xterm/vt420/DECFNK. Можно попробовать TERM=screen.xterm-256color Если такого терминала нет системном terminfo, то можно поставить актуальную версию в домашний каталог пользователя: 1. Скачать и распаковать актуальную версию terminfo.src: <http://invisible-island.net/ncurses/...hich_terminfo> 2. Поставить её: $ mkdir $НOME/.terminfo $ tic -x terminfo.src $ TERM=screen.xterm-256color; export TERM -- Успехов, Сергей Леонтьев. E-mail: lse@CryptoPro.ru --- ifmail v.2.15dev5.4 |
#55
|
|||
|
|||
Re: curses, GoldEd, Shift, Ctr и современных терминалах
Semen Panevin написал(а) к Serguei E. Leontiev в Nov 15 08:39:26 по местному времени:
Доброго здоровьица тебе, Serguei! Sunday November 29 2015 15:38, Serguei E. Leontiev писал Semen Panevin: SP>> ^ SP>> TabError: inconsistent use of tabs and spaces in indentation SEL> Прогресс остановить нельзя. Исправил, проверил на Python 3.4. Up: Ok: KEY_UP Shify+Up: опечатка в слове Shift Shift+PgUp скролит консоль, Alt+Tab переключает окна в винде. Кстати ещё один нюанс, Shift+Tab* vs Alt+*TAB - разный регистр, может лучше всё-же единообразно? Alt+Z: Ok: ^[z Alt+.: Fail: '^[e' Я не очень понял, там нужна была именно заглавная Z? я обычную нажал, без капслока... А справа вообще не понял что оно от меня хотело, там был какой-то уникодный символ, очень похожий на E с крышечкой или умлаут... Вот при пасте в голдед он как точка показался. Короч в правой колонке только Alt+Enter OK А после выхода в консоли всё равно какие-то эрроры server Unix # ./ged-vttest-lite.py Traceback (most recent call last): File "./ged-vttest-lite.py", line 129, in <module> traceback.print_exc() File "/usr/lib/python3.3/traceback.py", line 261, in print_exc print_exception(etype, value, tb, limit, file, chain) File "/usr/lib/python3.3/traceback.py", line 156, in print_exception for value, tb in values: File "/usr/lib/python3.3/traceback.py", line 122, in iterchain context = exc._context_ AttributeError: 'NoneType' object has no attribute '_context_' SEL> MD5 (contrib/Unix/ged-vttest-lite.py) = SEL> 38fc13c77a36c3ed1a291fc596efc739 MD5 (contrib/Unix/README-utf8.txt) = SEL> 1b8cfd78d3163940d2af69bb4f2ade20 SEL> В README-utf8.txt - исправил опечатку, впрочем, наверное их там ещё SEL> много. Щас вкоммичу... С наилучшими пожеланиями, Семён. ... Если человек родился, то это уж на всю жизнь... (c)... --- GoldED+/LNX 1.1.5-b20151128 (Linux 4.1.12-gentoo iF6M10) |
#56
|
|||
|
|||
Re: curses, GoldEd, Shift, Ctr и современных терминалах
Semen Panevin написал(а) к Max Vasilyev в Nov 15 09:12:58 по местному времени:
Доброго здоровьица тебе, Max! Sunday November 29 2015 21:27, Max Vasilyev писал Semen Panevin: SP>> зачем стока мусора в архиве? MV> imho contrib\Unix\mygolded.h добавлять тоже не надо было - удали Удалил... С наилучшими пожеланиями, Семён. ... Век живи, век лечись... --- GoldED+/LNX 1.1.5-b20151128 (Linux 4.1.12-gentoo iF6M10) |
#57
|
|||
|
|||
Re: curses, GoldEd, Shift, Ctr и современ ных терминалах
Serguei E. Leontiev написал(а) к Semen Panevin в Dec 15 02:54:46 по местному времени:
From: "Serguei E. Leontiev" <leo@sai.msu.ru> Привет Семён, От 30 ноября 2015 г., 22:46:44 в fido7.ru.golded ты писал: SP> lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq SP> ... SP> Как-то так. Вместо й по-прежнему какая-то фигня. Кстати обрати SP> внимание, в предпоследней строчке справа рамка не рисуется. А Здесь какая-то фигня, полная. Если бы UTF-8 был бы нормально настроен, то рамки бы были. Вместо "й" могла быть всякая фигня, в PuTTY обычно заштрихованное знакоместо, но может, зависит от шрифта. Однако, т.к. рамок нет, может есть какие-то третьи силы: screen, tmux и т.п.? -- Успехов, Сергей Леонтьев. E-mail: lse@CryptoPro.ru --- ifmail v.2.15dev5.4 |
#58
|
|||
|
|||
Re: curses, GoldEd, Shift, Ctr и современных терминалах
Serguei E. Leontiev написал(а) к Alexey Vissarionov в Dec 15 03:01:46 по местному времени:
From: "Serguei E. Leontiev" <leo@sai.msu.ru> Привет Алексей, От 1 декабря 2015 г., 0:24:24 в fido7.ru.golded ты писал: SP>> питон скрипт вкоммитил, патч ещё нет. AV> Откатывай. AV> И больше так не делай - только зависимости от питона нам не AV> хватало. Не гони волну, в contrib/Unix лежит каши не просит, зависимостей не требует. Если кому-то потребуется разбираться насколько и как криво у него terminfo настроено, может использовать, а может и не использовать, а разбираться по старинке, с помощью infocmp, od, cat и какой-то матери. P.S. contrib/Unix ещё и файлы *.terminal лежат, для исполнения которых целый Apple Terminal требуется :) -- Успехов, Сергей Леонтьев. E-mail: lse@CryptoPro.ru --- ifmail v.2.15dev5.4 |
#59
|
|||
|
|||
Re: curses, GoldEd, Shift, Ctr и современ ных терминалах
Semen Panevin написал(а) к Alexey Vissarionov в Dec 15 14:33:54 по местному времени:
Доброго здоровьица тебе, Alexey! Tuesday December 01 2015 13:29, Alexey Vissarionov писал Semen Panevin: SP>>>> Или это потому что из него уже давно ncurses выкинули? AV>>> Ничего из него не выкинули. Вот наоборот, с ncurses и без AV>>> slang, его собрать вполне реально. SP>> Я забыл зависимости, может быть действительно ncurses просто SP>> перестал быть опциональным. Но факт что его нет в use-flags. AV> Зато с большой вероятностью там есть slang, который требует ncurses. AV> Это в то время, как от slang массово отказываются ввиду его кривизны. Да, slang там есть, он таки опциональный :) т.е. без slang собрать можно. У меня кажется с ним собран. С наилучшими пожеланиями, Семён. ... От правды далеко не убежишь (с) Sage --- GoldED+/LNX 1.1.5-b20151130 (Linux 4.1.12-gentoo iF6M10) |
#60
|
|||
|
|||
Re: curses, GoldEd, Shift, Ctr и современ ных терминалах
Serguei E. Leontiev написал(а) к Semen Panevin в Dec 15 15:51:22 по местному времени:
From: "Serguei E. Leontiev" <leo@sai.msu.ru> Привет Семён, От 1 декабря 2015 г., 8:33:50 в fido7.ru.golded ты писал: SL>>> шрифта. Однако, т.к. рамок нет, может есть какие-то SL>>> третьи силы: screen, tmux и т.п.? SEL>> Прощу прощения, я соврал. SEL>> Это для стандартных типов терминала: putty, putty-sco, и, SEL>> соответственно, для типов терминала из putty-0-65.ti: SEL>> putty-xterm и sco-putty. При использовании UTF-8 в PuTTY SEL>> всё нормально, а при использовании xterm, да, такая хрень SEL>> наблюдается. SP> Я вдруг щас заметил, что сразу после запуска мне скрипт пишет SP> │ Fail: UTF-8 SP> Почему fail? Из того, что мне известно о Golded+ с curses следует, что он не способен работать в UTF-8, поэтому fail. Мало того, у меня есть существенные сомнения что он сможет хоть как-то функционировать в кодировке и/или с locale отличной от ru_RU.KOI8-R. Поэтому в ged-vttest-lite.py стоит проверка использования КОИ8 (KOI8-RU/KOI8-U/KOI8-R) и намеренно вшиты восьмеричные константы в КОИ8. SP> Попробовал putty-256color, нарисовались рамки но вместо F3 SP> распознался Ctrl+F3, т.е. наоборот от того что было в xterm, SP> дальше не пошёл. 2.1 putty и putty-256color описание терминала PuTTY при настройке "The Functions keys and keypad = ESC[n~" с возможностями ... Эти терминалы в последних версиях terminfo или ncurses нормальные, но они же для ESC[n~ А если хочется рамочек для "The Functions keys and keypad = Xterm R6", то либо отключай UTF-8, либо используй putty-xterm из putty-0-65.ti SP> ЗЫЖ в mc есть встроенный тест клавиатуры. Там SP> почти всё работает как часы. У них там что, собственные SP> настройки терминала? Или это потому что из него уже давно SP> ncurses выкинули? И то, и другое, и третье. -- Успехов, Сергей Леонтьев. E-mail: lse@CryptoPro.ru --- ifmail v.2.15dev5.4 |