-
Notifications
You must be signed in to change notification settings - Fork 588
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
Revert System.Console.OutputEncoding to not break the shell #1461
Comments
Changing back to |
Thanks for this! I noticed this several times in the past as well. In fact this is probably why I use git bash mostly (which doesn't seem to have this problem). I never managed to reproduce this or find the reason :) |
I use the Git Bash most of the time, too, but that doesn't make any difference to me. The only terminal I tried, which doesn't seem to have this problem, is Hyper. |
…ding-with-netcore [WIP] Restore the output encoding
Description
When using any external tool from a FAKE script (MSBuild, test runners, Paket, …), after FAKE exits, the terminal is broken. I tried different console emulators (Windows console, PowerShell, ConsoleZ) and different shells (
cmd.exe
, PowerShell, bash), and all show the same behavior.Repro steps
Open a
cmd.exe
window.Run FAKE with a target which invokes an external tool.
As I found out, the assignment of the output encoding before starting the process is the problem. The assigned value remains set after FAKE exits, which apparently breaks the input handling of the shell.
Actual behavior
After FAKE exits, I can't use the German Umlaut-characters. When I try to type an "Ä" for example, it doesn't appear on the screen, but now I'm able to delete already printed output from the console.
I reproduced this with
fsi
:Known workarounds
Use FAKE in its own terminal window.
Related information
The text was updated successfully, but these errors were encountered: