forum.wfido.ru  

Вернуться   forum.wfido.ru > Прочие эхи > RU.GOLDED

Ответ
 
Опции темы Опции просмотра
  #51  
Старый 17.08.2016, 16:40
Serguei E. Leontiev
Guest
 
Сообщений: n/a
По умолчанию 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  
Старый 17.08.2016, 16:40
Michael Dukelsky
Guest
 
Сообщений: n/a
По умолчанию 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  
Старый 17.08.2016, 16:40
Max Vasilyev
Guest
 
Сообщений: n/a
По умолчанию 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  
Старый 17.08.2016, 16:40
Serguei E. Leontiev
Guest
 
Сообщений: n/a
По умолчанию 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  
Старый 17.08.2016, 16:40
Semen Panevin
Guest
 
Сообщений: n/a
По умолчанию 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  
Старый 17.08.2016, 16:40
Semen Panevin
Guest
 
Сообщений: n/a
По умолчанию 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  
Старый 17.08.2016, 16:40
Serguei E. Leontiev
Guest
 
Сообщений: n/a
По умолчанию 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  
Старый 17.08.2016, 16:40
Serguei E. Leontiev
Guest
 
Сообщений: n/a
По умолчанию 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  
Старый 17.08.2016, 16:40
Semen Panevin
Guest
 
Сообщений: n/a
По умолчанию 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  
Старый 17.08.2016, 16:40
Serguei E. Leontiev
Guest
 
Сообщений: n/a
По умолчанию 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
Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 03:31. Часовой пояс GMT +4.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc. Перевод: zCarot