On 3/10/2023 9:08 AM, Qi3 Huang 黄齐 wrote:
I think I should give a simple brief of questions mentioned:
1. How to handle so many vt100 commands ?
There aren't many vt100 commands actually used, current implementation can
meet nearly all requirment in apps (only pdcurse need test, I'll have a test
soon). If we really need to handle all vt100 command someday, we can add a line
driver on top of serial driver like linux does.
We do not want to break the capability of any future use either. It is
capability that can be used in must ways and must not be compromised.
2. Does CLE break?
CLE and termcurse (VI) works fine, but in pdcurse, console was set to raw mode
and ECHO restored after exit to nsh.
CLE meet a issue on specific hardware due to driver, but have a fix
https://github.com/apache/nuttx-apps/pull/1650 , it should works, wait for the
feedback.
Let's please resolve the bigger issues with the design before putting
bandaids all over the code to work around a poorly thought out solution.
3. TERMIOS
In my test now, only termcurse rely on raw mode (maybe another is pdcurse), so
the must set raw mode for them.
There has been no raw mode in the past. readline() simulated rawmode by
reading and writing directly to the serial driver. That worked because
the serial driver was basically always in raw mode. So raw mode was
there in a sense. You change breaks that behavior.