Skip to content

Older Windows support #477

@YO4

Description

@YO4

I found mouse event handling to classic terminal works on Windows 8 RTM VM too, great!

However, there were a few areas that weren't working properly.

  • Cursor key input is disabled.
  • Setting ENABLE_VIRTUAL_TERMINAL_INPUT appears to disable Ruby escape sequence output processing.
  • Forced line breaks at the end of lines
  • Display misalignment occurs because borders are rendered with double column width in console code page CP932.

These can also be verified in Windows 10 conhost with legacy console enabled.
Is it worth considering operation on older operating systems?

On the legacy console, setting ENABLE_VIRTUAL_TERMINAL_PROCESSING for STD_OUTPUT_HANDLE appears to fail.
This can likely be used to distinguish between the legacy and classic consoles.
But it does introduce a bit of complexity.

Additionally, handling cursor keys requires interpreting scan codes.
Handling other keys is simpler and can be used even on the current console.
wasd or hjkl would be candidates, but differences in key layouts would have to be accepted.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions