I am looking to implement a remote client in golang which connects to Linux through
nc and starts
bash. So I need to tell
bash what features I can parse from the
stdout that it sends to me, and how I am going to send keycodes and other stuff to its
stdin, so that it could parse them too.
This is done with
TERM=something environment variable, which I need to set to some value. If I don't set it, then various programs start to complain:
$ mc The TERM environment variable is unset!
I found that I can set TERM to
dumb to say that my client is really limited. And still it seems that I am missing something.
$ export TERM=dumb $ mc Your terminal lacks the ability to clear the screen or position the cursor.
From here it looks like
dumb terminal don't have these two abilities, but what abilities it is still expected to have? Is there a specification or some de-facto standard about it?