Greetings. On Thu, 10 Apr 2014 17:03:55 +0200 "Roberto E. Vargas Caballero" <k...@shike2.com> wrote: > No answer? Anyone have anything to say? It is a big change, and > if nobody say anything then I will change it.
Don't top post. > > Well, I am going to comment why I want to change the behaviour of > > this key. When ascii was defined in 1968 communication with computers > > were done using punched cards, or hardcopy terminals (basically a > > typewritter machine connected with the computer using a serial > > port). Due to this, ascii defines DELETE as 7F, because in the > > puched cards, it means all the holes of the card punched, so it is > > a kind of 'phisical delete'. In the same way, BACKSPACE key was a > > non destructive back space, as in typewriter machines. So, if you > > wanted to delete a character, you had to BACKSPACE and then DELETE. > > Other use of BACKSPACE was accented characters, for example 'a > > BACKSPACE `'. The VT100 had no BACKSPACE key, it was generated > > using the CONTROL key as another control character (CONTROL key sets > > to 0 b7 b6 b5, so it converts H (code 0x48) into BACKSPACE (code > > 0x08)), but it had a DELETE key in a similar position where BACKSPACE > > key is located today in common PC keyboards. All the terminal > > emulators emulated correctly the difference between these keys, and > > backspace key generated a BACKSPACE (^H) and delete key generated > > a DELETE (^?). > > > > But the problem arised when Linus Torvald wrote Linux, and he did > > that the virtual terminal (the terminal emulator integrated in the > > kernel) returns a DELETE when backspace was pressed, due to the > > fact of the key in that position in VT100 was a delete key. This > > created a lot of problems (you can see it in [1] and [2]), and how > > Linux became the king, a lot of terminal emulators today generate > > a DELETE when backspace key is pressed in order to avoid problems > > with linux. It causes that the only way of generating a BACKSPACE > > in these systems is using CONTROL + H. I also think that emacs had > > an important point here because CONTROL + H prefix is used in emacs > > in some commands (help commands). > > > > >From point of view of the kernel, you can change the key for deleting > > a previous character with stty erase. When you connect a real terminal > > into a machine you describe the type of terminal, so getty configure > > the correct value of stty erase for this terminal, but in the case of > > terminal emulators you don't have any getty that can set the correct > > value of stty erase, so you always get the default value. So it means > > that in case of changing the value of the backspace keyboard, you have > > to add a 'stty erase ^H' into your profile. Of course, other solution > > can be that st itself modify the value of stty erase. > > > > I have usually the inverse problem, when I connect with non Unix machines, > > and I have to press control + h to get a BACKSPACE, or the inverse, > > when a user connects to my unix machines from a different system with > > a correct backspace key. > > > > I would like listen the opinion of st users about this topic before > > of doing this kind of modifications. I don’t have any case which interferes with this. So apply it. Sincerely, Christoph Lohmann