2004-03-02

akovalenko: (Default)
2004-03-02 06:16 am

Разбиралки с xterm

Сколько я пользуюсь xfree86, столько и наблюдаю постоянные несоответствия поведения xterm и его terminfo (и termcap). У каждого дистрибутивщика и у upstream, ёлы-палы, своё мнение, какая клавиша что должна посылать и как это в terminfo зафиксировать. В результате появляются охренительные опции вроде "Delete is DEL" (вот сюрпрайз) и "Backarrow key is Erase".

Backspace по количеству приносимых неприятностей выходит на первое место. На вопрос "что такое Backspace?" можно ответить не двумя (как с прочими клавишами), а четырьмя способами:

  • То, что xterm посылает при нажатии на клавишу
  • То, что в terminfo записано
  • То, что является Erase для данного терминала.
  • Это символ 08, ибо такова традиция

Когда-нибудь все приложения будут пробовать terminfo query, и будет счастье. Вот только эта фича тоже оказалась поломанной именно на Backspace. Это судьба.