|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Ramazan Ja-Far 2:5020/400 15 Jun 2002 23:31:18 To : Artem Chuprina Subject : Re: VIM и терминалы -------------------------------------------------------------------------------- Hi! Artem Chuprina wrote: > Здравствуй, Ramazan Ja-Far. ... > RJF> Hо: когда я запускаю в xterm-е less, не работают <END> и <HOME>. > RJF> В mc та же фигня. ... > RH, помнится, был характерен тем, что у него описание терминала xterm не > совпадает с тем, что делает оный самый xterm. Впрочем, этим характерен, > кажется, не только RH, а проблема скорее в недрах разработчиков XFree, у > которых xterm по умолчанию страдает обратной совместимостью непонятно с чем. ... > bash и vim местами обрабатывают результат из своих соображений > с положительным эффектом. Thanks for this hint! > Лечится чтением описания терминала xterm (если там не xterm, а, > например, xterm-color и он вдруг переопределяет клавиши, то его) и > выставлением через ресурс translations xterm'у генерацию тех > последовательностей, которые указаны в описании терминала. То же для rxvt, > только он обычно с другим типом терминала работает. Да, еще тонкость - > описаний бывает два: termcap и terminfo. Полезно выяснить, которым пользуются > требуемые программы. За гном-терминал не поручусь на эту тему, может, и > настраивается... Всё дело в том, что я на тот момент уже изучил /etc/termcap, /usr/share/terminfo/x/xterm и /usr/X11R6/lib/X11/app-defaults/XTerm Hесовпадений я _не_ заметил, (хотя они были), поэтому решил, что дело в некоей эзотерической проблеме. Ваша уверенность придала мне сил :) post mortem: в RH действительно наблюдалось несовпадение описания xterm его поведению, по двум причинам: #1: RH использует описания терминалов из termcap-11.0.1-8.rpm и ncurses-5.28.rpm; при этом XFree86-4.1.0-15.rpm содержит xterm _вместе_ с его описаниями: /usr/X11R6/lib/X11/etc/xterm.term* В результате, xterm генерирует khome=\EOF kend=\EOF, а программы ожидают khome=\E[1~ kend=\E[4~. #2: XTerm содержал такие ресурсы: *VT100*translations: #override \n\ <key>Delete: string(0x1b) string("[3~") \n\ <key>Home: string(0x1b) string("[1~") \n\ <key>End: string(0x1b) string("[4~") \n\ ... ! Add word-left, word-right user suggested enhancement from bugzilla 48783 *VT100*translations: #override \n\ Meta<key>Right: string(0x1b) string(0x1b) string("[C") \n\ Meta<key>Left: string(0x1b) string(0x1b) string("[D") \n Поэтому я был уверен, что khome=\E[1~ Hо поскольку в файле было два описания ресурса, работало только последнее.. -- Bye! Ramazan --- ifmail v.2.15dev5 * Origin: Svit Online (post does not reflect views of Golden Tele (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/9140b1e1e08a.html, оценка из 5, голосов 10
|