A Windows software package providing an interface similar to a Unix pty-master for communicating with Windows console programs.
023e5f333f
upward. This commit gets the CMD/PowerShell CLS command working with the Agent. Previously, the CLS command was broken in the following test case: - User opens a window of height N and types CLS. The window now looks like: line0) line1) D:\rprichard\Scrape\TestNetServer-build-desktop> - User generates a bunch of output -- enough to scroll the window but not enough to create a sync marker. - User types CLS again. - The window scrolls back to the top and is cleared. - The agent thinks that lines [1..(N-1]] of the window (and screen buffer) have changed. It omits line 0 because line 0 is blank before and after the CLS. Therefore, it sends N-1 lines. The first line is at line 1. We've already output a "remote line" larger than N, though, so we first try to CursorUp by >>N lines. - After moving the cursor up, we're actually on line 0 of the terminal instead of line 1. I think the general rule is that it's safe to "reset the terminal," but we want to avoid resetting because it breaks history. For typical command-line sessions that don't involve full-screen programs, (but which *could* involve window resizing), I would like the history to be perfect. |
||
---|---|---|
Agent | ||
Console | ||
Misc | ||
Shared | ||
ShowConsoleInput | ||
TestNetClient | ||
TestNetServer | ||
.gitignore | ||
DebugServer.py | ||
Notes.txt |