-
Notifications
You must be signed in to change notification settings - Fork 542
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
app/system/vi: Fix broken VI editor #2769
Conversation
[Experimental Bot, please feedback here] The PR summary you provided lacks some key details to determine if it meets the NuttX requirements. Here's a breakdown and what needs improvement: Strengths:
Weaknesses:
To meet NuttX requirements, the PR needs these improvements:
By addressing these points, the PR will be much stronger and more likely to be accepted. |
OK thanks, i fix it. |
@bl4kraven please fix the following style error:
|
OK, It's already fixed. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Error: /home/runner/work/nuttx-apps/nuttx-apps/apps/system/termcurses/tcurses_vt100.c:1549:46: error: Dangling whitespace at the end of line
Error: Process completed with exit code 1.
The ICANON flag broken VI key input, so disable it. Signed-off-by: Leo Chung <[email protected]>
If VI exit without vi_release, that broken console. Signed-off-by: Leo Chung <[email protected]>
OK, It's already fixed. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Perfect! Thank you @bl4kraven :-)
Summary
Since Nuttx commit apache/nuttx@df5c876 , the serial driver enable ICANON flag as default. This broken the VI and all keystrokes inputs are buffered. So disable it in termcurses.
If the VI exits in an error condition it will break the console. This is because release_vi was not called to restore the console configuration, so fix it.
Impact
All VI-enabled boards.
Testing
Test in Ubuntu 24.20 use sim:nsh.