3 ms·
Since no one's actually answering your question, focusing on useless pedantics instead, I'll do it: The reason Windows does not have a decent virtual console,
by tinco 13y ago
Since no one's actually answering your question, focusing on useless pedantics instead, I'll do it:
The reason Windows does not have a decent virtual console, like OSX and Linux do in the form if iTerm, xTerm, gnome-term etc has to do with the way the console works in Windows.
The Windows console is very tightly coupled with a win32 system library, both its functionality and the way it behaves graphically (to for example resizing) are defined in that single place.
This practically means that most attempts of making it better in some way proxy to a hidden view of the original console. I think ConEmu works like this.
To truly make a better console on Windows, the links to that system dll would have to be hijacked from the processes that are launched in your shell, and replaced with references to your better alternative. Obviously this could be a fragile thing, and for some reason I know of no project that's made any headway in this.
I have tried the latter route myself for a little while, but after uncovering how complicated it would really have to be I decided to go do something else.
- simoncion 13y agoPerhaps I missed something. What does the Windows console subsystem have to do with a program that interfaces bash with a VTxxx emulator? It's not hard to make a scrolling multi-line text field that also accepts and passes along keypresses to another program. If I read it correctly, OP isn't looking to replace CMD or the Windows Console. It seems that he's wondering why bash is so useful, but it isn't bundled with Windows.
- tinco 13y agoWell, if you take his comment literally then yes, but it would not be a very interesting question because it's quite easy to install bash on windows and use its nice features. And there's powershell which fits better in the Windows ecosystem. I read it as the question that has a much more interesting answer: Why doesn't Windows have a good terminal? And the answer is, it's no use making one because the Windows console subsystem, the one that is the de facto standard, is so badly designed that it's near impossible to write a good terminal for it.
- simoncion 13y ago> [Windows doesn't have a good terminal because the Console Subsystem] is so badly designed that it's near impossible to write a good terminal for it. Errm, Windows has a couple of decent terminals. PowerShell and Cygwin bash come to mind. The following I say with all the love in my heart, so please read it in that spirit: Saying that there aren't any good terminals for Windows because of the suckitude of the Console Subsystem is like saying "There aren't any good houses built on the ocean because a good, solid concrete foundation just sinks to the bottom!". There are plenty of fine ocean-going houses, they're just made out of steel, exotic or mundane fibers, or wood.
- tonyarkles 13y agoCan you resize Cygwin bash to be wider than 80 characters? Last time, admittedly a while ago, that I tried using unixy things on Windows, I ended up exceptionally frustrated by the fixed width. I suspect that's the "Console Subsystem" being referred to here.
- simoncion 13y agoIt seems that with a modern Cygwin (installed within the last six months) you can. Moreover, if you perform (say) an ls, resize the terminal to a really small width, perform another ls, then resize the terminal to its previous width, the text from the first ls is restored to the screen. (I also remember this behaviour from when I regularly used Cygwin four or five years ago.) It's been a while, so don't hold me to this, but I think there's a batch file that you get a shortcut to on your desktop and start menu. If you don't use that, you'll get the stupid unresizeable window. (Because, yanno, all of the Cygwin stuff was designed to work alongside CMD.exe, too.)