On 11/7/17 3:07 AM, Dennis Boone wrote:
I'm not
looking for code review, but the code is intended to replace
the tabs and backspaces with \t and \b respectively, but I haven't
been able to test it because I can't seem to make a backspace
character appear in input. In later unices, ^V followed by the
backspace would work, but that's not part of v7. Backspace itself is
my erase character, so anytime I just type it, it backspaces :).
This bit from the middle of sys/dev/tty.c seems to indicate that you
escape it with \:
} else {
mc = maptab[c];
if (c==tp->t_erase || c==tp->t_kill)
mc = c;
if (mc && (mc==c || (tp->t_flags&LCASE))) {
if (bp[-2] != '\\')
c = mc;
bp--;
}
}
On my test v7 system if I type backslash control-h:
# stty
speed 0 baud
erase = '^H'; kill = '^U'
even -nl echo -tabs
# echo \^H | od -c
0000000 \b \n
0000002
#
De
Thanks for the note. I thought about it and tried it out even though I
don't see the ^H (my cursor backs up a space).
After typing echo "\^H" | od -c, here's what it looks like:
$ echo "" | od -c
0000000 \b \n
0000002
So, sure enough there's a backspace in there and my code "sees" it too:
$ echo "" | 1-8
<<BACKSPACE>>
$
--
GPG Fingerprint: 68F4 B3BD 1730 555A 4462 7D45 3EAA 5B6D A982 BAAF