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

Add setting to set the ENABLE_VIRTUAL_PROCESSING console mode #8

Closed
chrisant996 opened this issue Oct 12, 2020 · 2 comments
Closed
Labels
enhancement New feature or request

Comments

@chrisant996
Copy link
Owner

There doesn't seem to be a built in way in the Windows UI to enable VT processing in a specific console instance, only to turn ConsoleV2 on or off for all console instances (and ConsoleV2 controls more than just VT processing).

It would be useful and convenient to have a setting for Clink to enable VT processing in its console host.

@chrisant996 chrisant996 added the enhancement New feature or request label Oct 12, 2020
@chrisant996 chrisant996 self-assigned this Oct 12, 2020
chrisant996 added a commit that referenced this issue Oct 21, 2020
When terminal.emulate is off, all output is passed through directly to
the console.  So it makes sense to set the console flag to force console
VT emulation when emulate is 'off'.

This addresses issue #8.
@chrisant996
Copy link
Owner Author

chrisant996 commented Oct 21, 2020

Setting clink set terminal.emulate off now forces console VT emulation on a per-console basis, starting in the Proof of Concept 5 (pre-)release and later.

Update: forcing ENABLE_VIRTUAL_TERMINAL_PROCESSING seems to cause compatibility problems. I've had to revert that change. Maybe it will be feasible sometime in the future.

@chrisant996 chrisant996 reopened this Oct 21, 2020
@chrisant996 chrisant996 removed their assignment Nov 11, 2020
@chrisant996
Copy link
Owner Author

When Clink uses "native" terminal emulation mode (i.e. Clink expects the console itself to perform terminal emulation), Clink forces the ENABLE_VIRTUAL_TERMINAL_PROCESSING on when CMD.EXE calls it to show the command prompt.

There are problems with leaving the ENABLE_VIRTUAL_TERMINAL_PROCESSING flag set outside of Clink, though, so it also clears the flag before returning control back to CMD.EXE.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant