We have a potential solution now to be able to ship mintty as a default terminal for Julia on Windows. It would be great if users on Windows can try the solution outlined in the issue below, and report in that issue the issues they encounter.
MinTTY really shines on the modern terminal features like true colors or BiDirectional text support (for the latter it’s incomplete support, but better than nothing).
There is some embedded assumption on /bin/bash in there, so that it does not run for me.
I do have a bash, provide by Git. But obviously, not in /bin/bash.
The main advantage is that we can ship mintty bundled with Julia (adding only a few percent to the download size), so that we can use it by default on all supported Windows machines. It will be some time before we can rely on the new Windows Terminal being installed by default everywhere (at which point we can switch over). The goal is to have a good user experience out-of-the box on Windows.
The most persistent complaint that a new terminal addresses is better Unicode support, because the Windows console does not support fallback fonts.
(You can still use Julia with Windows Terminal if you have it installed.)
Thanks! Looks like a lot of discussion and workarounds, so I wasn’t sure exactly what to test. Can you link us to the exact directions you want us to start following to get the terminal and appropriate fonts installed (btw, I suspect you would need to get the fonts installed and setup to make it a better experience for new users)?
I second @jlperla. I had already installed a different terminal experience (Cmder) to use on my Windows machine because I hated the way the REPL functioned normally. I’d love to test this out but I’m a bit uncertain what I need to do.
Download binaries from the linked comment (from this repo).
cd to the folder
if julia is added to PATH, start julia with: mintty julia
You can specify the full path for both programs:
path-to-mintty\mintty path-to-julia\julia
I had some problems with using cd() in julia (described in my issue comment), and it did not work when I started from git bash, only from command prompt.
I kind of like the new Windows Terminal. But it bugs me that copy by Ctrl+c doesn’t work yet (or maybe I haven’t figured it out), while I can easily copy by Ctrl+c from the old Command Prompt app.
I guess so… but not in the Windows-world?? At least, Ctrl+c works in the Command-prompt app. Perhaps it is a result of Microsoft going cross-platform and making tools that work for Mac and Linux, too…
You shouldn’t have to change fonts to see big benefits in Unicode rendering, because mintty (unlike the Windows console) should use the system fallback fonts — if a glyph isn’t present in the current font, it looks in the next font from the list of fallbacks.
(Of course, using a font with decent Unicode coverage to start with will give a more consistent look, but no truetype font covers all of Unicode AFAIK.)
I confirmed this. This makes a huge difference for usability of DSL-style code. That is worth the trouble because otherwise many packages are unusable in a REPL.
As for the test, now that I have it working: I think hese are all know, but with the #master of the mintty-julia repo:
I needed to call it as .\mintty.exe julia from a new powershell after adding julia to the path.
It launched a second mintty window along with the julia one, which sounds to be a standard problem
cd crashed everything, as was discussed.
What might be helpful is instructions for creating the shortcut that would be emulate what would be done automatically for adding to the windows menu and toolbar.
mintty julia starts and unicode seems to work (although I think the font is too small and somewhat ugly, but that’s a matter of taste). Ctrl-c (during a Julia evaluation) closes the mintty window.
just issuing mintty gives the /bin/bash error message reported before.