Skip to content
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

perform console initialization in windows #2020

Closed
dankamongmen opened this issue Aug 3, 2021 · 7 comments
Closed

perform console initialization in windows #2020

dankamongmen opened this issue Aug 3, 2021 · 7 comments
Assignees
Labels
enhancement New feature or request mswindows microsoft windows
Milestone

Comments

@dankamongmen
Copy link
Owner

Elements of this are alluded to in #2014. There are a few termios-like functions we need to call in Windows during initialization.

it looks like we can disable line discipline events with ENABLE_PROCESSED_INPUT, enter cbreak mode with ENABLE_LINE_INPUT, and disable echo (see #2019) with ENABLE_ECHO_INPUT

@dankamongmen dankamongmen added enhancement New feature or request mswindows microsoft windows labels Aug 3, 2021
@dankamongmen dankamongmen added this to the 3.0.0 milestone Aug 3, 2021
@dankamongmen dankamongmen self-assigned this Aug 3, 2021
@WSLUser
Copy link

WSLUser commented Aug 4, 2021

Do try to do things the VT way as much as possible. Some of those things like GetConsoleScreenBufferInfo() are Win32 API, not VT. I'm sure a mix of sorts is needed in the case of a library like this but ideally there's a way to find the VT equivalent within the OpenConsole code over at https://github.com/microsoft/terminal. In theory, we shouldn't need win32 APis, especially if terminals are going through ConPTY but we'll see.

@WSLUser
Copy link

WSLUser commented Aug 4, 2021

I'd honestly take whatever you need from PDCurses. You could probably use much of what's there to even provide the ncurses shim you've file an issue for.

@dankamongmen
Copy link
Owner Author

i think that failure to enter cbreakesque mode is our main blocker now on Windows Terminal, as we hang up after sending queries, but progress if the user hits enter on the keyboard.

@WSLUser
Copy link

WSLUser commented Aug 9, 2021

as we hang up after sending queries, but progress if the user hits enter on the keyboard.

You should be able to simulate pressing that enter key. Typically simulating user actions are for tests but if that's what's needed until another method can be found, it's a quick work-around.

@dankamongmen
Copy link
Owner Author

alright, we're now advancing forward to creation of the initial plane, which breaks because we don't have good geometry on windows yet

@dankamongmen
Copy link
Owner Author

the scroll PoC now starts in a WIndows Terrminal when run from a directory containing all necessary DLLs

2021-08-13-165810_1629x1062_scrot

@dankamongmen
Copy link
Owner Author

closing this, and we'll pursue remaining windows issues in their own bugs

@dankamongmen dankamongmen modified the milestones: 3.0.0, 2.4.0 Aug 24, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request mswindows microsoft windows
Projects
None yet
Development

No branches or pull requests

2 participants