32 ms·
Windows gets a new terminal
- knd775 8y agoIt is about time that Windows got a better console. As someone who regularly jumps between macOS, Linux, and Windows, the current console is a uniquely poor experience
- segfaultbuserr 8y agoI've heard stdout and stderr are extremely slow on Windows console. If you port Unix-like programs to Windows, lots of fprintf() can even come to be a bottleneck, especially in debugging. Meanwhile macOS and Linux/BSD console can output thousands lines in the blink of an eye. Don't know if the new console is gonna solve that.
- mixmastamyk 8y agoIt draws to a VGA style character grid, like it was a DOS/VGA machine from the 80's. Oddly enough, Unix is older than that, and got it right (abstracted from hardware).
- oblio 8y agoIt's a mix of things. Some of them are legacy CP/M / MS-DOS carry-overs, some are strategic decisions. Windows was supposed to be user-friendly and everything would be done through the GUI. This not only de-emphasized CLIs, it was actively hostile to them. I believe that for a time trying to improve CLIs was frowned upon (I haven't worked at Microsoft, it's just based on a million blogs I read from Microsoft employees). Now that the cloud is the way to go, they're looking at this in a more holistic way, it seems.
- mixmastamyk 8y agoI like to call this the "Ballmer factor."
- int_19h 8y agoIt started a while ago, it just took off slowly. Powershell shipped in 2006, for example, and from there all products gradually started integrating with it for admin tasks. Windows Server 2012 already had a command-line-only mode.
- segfaultbuserr 8y ago> Oddly enough, Unix is older than that, and got it right. Perhaps it has something to do with Unix tty. Unix systems are mainframes or servers, the tty subsystem only cares about transmitting the text and control sequences, the actual rendering is done by a CRT terminal at a remote location. Meanwhile, the DOS family was designed for microcomputers and PCs, the text output is tightly-coupled with the system and hardware, including how to draw them. The Windows XP console can even switch to the genuine VGA textmode as used by DOS by pressing Control+Enter. I guess the Unix tty allowed flexibility. It doesn't matter if someone reimplemented it using VGA textmode, or 2D accelerated framebuffer (modern Linux kernel), fancy 3D OpenGL stack (kmscon, but sadly the project is dead), or a cairo-based graphical interface. Meanwhile, Microsoft haven't continue to develop and modernize the console subsystem in a long time (clarify: at least in 8 years of Windows XP era, until recently).
- zadjii 8y ago> Meanwhile, Microsoft haven't continue to develop and modernize the console subsystem in a long time. That's just provably false. We've been hard at work on the console for the last 4 years, culminating in today's Terminal announcement. See https://devblogs.microsoft.com/commandline/ https://devblogs.microsoft.com/commandline/ for a few examples of things we've been doing for the last few years. One in particular: Last year we added support for a pty-like interface in Windows with [ConPty](https://devblogs.microsoft.com/commandline/windows-command-line-introducing-the-windows-pseudo-console-conpty/ https://devblogs.microsoft.com/commandline/windows-command-l...)
- mixmastamyk 8y agoWhen you stop work for ~20 years, then get crackin' for a few it understandably takes a while for the news to get out. May not be obvious if you're 25.
- naikrovek 8y agoIt's not a secret. People need to do a minimum amount of homework before they spout off online.
- fulafel 8y agoWindows did come with a vt100 terminal too fairly early on. Possibly apps could have used it by registering a serial driver? https://guidebookgallery.org/pics/gui/applications/networking/terminal/win31.png https://guidebookgallery.org/pics/gui/applications/networkin...
- segfaultbuserr 8y agoCool. I should try it some day...
- zadjii 8y agoWe used to have ANSI.SYS, though that was removed long before I started at the company. We do however have a pretty solid VT100+ implementation nowadays. Case in point, it'd be pretty hard to run anything in the Windows Subsystem for Linux without a complete VT implementation.
- zadjii 8y agoThe new Terminal actually does _crazy_ well. The vintage console on windows, conhost.exe, uses GDI to draw to the window. Unfortunately, GDI is CPU-bound, so drawing the screen actually slows down our processing of the text. With the Windows Terminal, we've switched to a DX/DWrite based renderer, which no longer uses the CPU to draw text, and moves it to the GPU. Our preliminary testing has a insane perf improvement for applications writing lots of text, something like 10x faster :)
- segfaultbuserr 8y agoExcellent, well done! Developers never need to worry about running cat for a big file or using print() for lots of text again.
- bloopernova 8y agoIs there a place to download the new Terminal to try it out? (Thank you for responding to so many comments on this thread!)
- zadjii 8y agoNot quite yet - when the first preview builds are available, they'll be in the Microsoft Store. Also stay tuned for Rajesh Jha's keynote later today, with our official announcement. It'll have some other relevant information I don't think any of the articles have mentioned quite yet :P
- Schlaefer 8y agoCan you link the session, please?
- zadjii 8y agoI believe this https://mybuild.techcommunity.microsoft.com/home#top-anchor https://mybuild.techcommunity.microsoft.com/home#top-anchor is the link, but I honestly don't know. It's live now, and I think Windows is up soon, though I don't know where in the keynote we are.
- gdulli 8y agoMy take is that Windows is the best experience because the unsuitability of the built-in option for every day use drove me to a real solution. (In my case, SecureCRT.) One of the things I hate is when the default option is "good enough" so you have the danger of living with mediocrity. Or, worse, the platform doesn't spawn a rich ecosystem of competition. For example, when I was on OSX I couldn't find a music player I liked. iTunes was bad, but the fact that everyone uses it means there aren't as many alternatives as on Windows.
- knolax 8y agoIt's so bad it's good?
- majkinetor 8y agoGood music players on any platform: vlc, smplayer, clementine.... You can have everything now on all 3, everything important. I almost never use non-cross platform tools.
- AgentME 8y agoClementine is ridiculously laggy for me and uses a lot of CPU, even when idle. Maybe I have too big of a music collection for it? I'm baffled. I've never had performance issues from a music player before. SMPlayer's homepage says it's only on Windows and Linux. I only ever used VLC for playing one-off files. I never knew about VLC having media collection features, might have to look into that. Rhythmbox on Ubuntu has been great for me. I just want Rhythmbox on other platforms. I've been using Google Play Music instead. (It lets you upload your music collection into the cloud, which is super useful as I can now use it from devices it's not synced to, though it's not open source or an application I can run offline, and it's pretty limited in how it can sort and display songs. I can't sort songs by date added, etc.)
- majkinetor 8y agoCLementine can be faster if you disable everything that you dont use since it comes with bunch of plugins that are all loaded by default. If you want non-laggy, VLC is the best (both video and audio) but its interface sucks a lot although it is probably tolerable on the long run. SMplayer could probably be ported in a week or so on OS X given it uses mplayer or mpv which are both available on OSX (its just a fronted to those tools + open sub). I also used MPD with Cantata in x-platform manner its quite nice and fast.
- briffle 8y agoJust making copy/paste work the way it does in EVERY other ms application would exponentially increase the usability of the current command prompt.
- oblio 8y agoCopy/paste works: https://www.laptopmag.com/articles/how-to-windows-10-command-prompt-copy https://www.laptopmag.com/articles/how-to-windows-10-command...
- zadjii 8y agoThis is a hard problem for commandline applications unfortunately. Think about pasting text with Ctrl+V. Lots of existing commandline applications bind particular actions to Ctrl+V - should the terminal application always eat the Ctrl+V keypress to handle pasting? This is why we added support to optionally set Ctrl+Shift+V as the paste keybinding in conhost. Fortunately, the Windows Terminal doesn't have a lot of the legacy to maintain like conhost does, so it'll support setting paste to whatever keybinging you like :)
- amyjess 8y agoI don't even care about Ctrl+V. I just want the ability to right-click on selected text and bring up a menu with 'Copy', 'Paste', and maybe a few other operations on it. No Windows terminal I've ever seen has the ability to do this. Edit: Note that I haven't used the new terminal yet, so if it supports an actual right-click menu, than bravo!
- sixothree 8y agoI find the current Windows 10 terminal vastly superior to anything default on Mac or Linux... Take resizing the window for instance, Windows adjusts the content text, whereas Mac does not seem to handle this well. EDIT: It is possible you are on an outdated version of Windows, or have upgraded and still retain your old settings. Be sure QuickEdit Mode is enabled, as well as Ctrl key shortcuts.
- pfranz 8y agoDo you have a specific example on Mac? Reflowing of text always seems to be way better on Mac than Linux. I use Windows least often, but always felt the experience was significantly worse than the other two.
- ozim 8y agoBut article points out it will support emojis as main point... I need proper built in history, proper copy-paste as in linux and macOS, proper resizing so I can have longer lines without changing font as in windows. I just hope it will be there.
- joemi 8y agoIt's a techcruch article, not exactly quality reporting. I'm not really sure why so many people link to them when there's usually a better source for most stories (unless the story is merely rumor).
- zadjii 8y agoProper resizing has existed in the console as long as Windows 10 has been out, and we've been aggressivly improving our copy-paste story. Ctrl+C/V to copy in cmd has been around since Windows 10, and Ctrl+Shift+V to paste in WSL was added just last year.
- fxfan 8y agoWhy not just ship alacritty?
- fivesixzero 8y agoThere have been some good quality of life enhancements over the last few years[1] but this looks like it’ll be a big step in the huge shift required in the ancient “console” subsystem. I still miss iTerm2 immensely after moving from an all-macOS dev group to an all-Windows group. Hoping this will help me feel less homesick. [1] https://devblogs.microsoft.com/commandline/ https://devblogs.microsoft.com/commandline/
- zadjii 8y agoHaha, the day our PM Rich started on our team 3 years ago, he brought with him an entire presentation of ITerm2 features he wanted in the console. Thankfully now, we're finally getting to them!
- petters 8y agoThis is great! The article mentions a preview; where is that? In the store?
- jjuel 8y agoThis is what I am wondering. Hopefully it isn't just in the preview Windows build. Although that is what I am guessing.
- zadjii 8y agoYou will need the latest Windows builds (the May 2019 release), as we're depending on a piece of tech that wasn't available before that.
- zadjii 8y agoStay tuned - It'll be in the Store soon(tm)
- petters 8y agoGreat! Should I watch the blog for the announcement?
- zadjii 8y agoYea, that'll probably be where we announce when we do ship the first versions. I'd also pay attention to Rajesh Jha's keynote later today, when the Windows Terminal is officially announced. I think that'll have even more information you'll find relevant.
- zadjii 8y agoThe big annouce I mentioned above is that the source code is available open-source, at https://github.com/Microsoft/Terminal https://github.com/Microsoft/Terminal If you'd like to skip ahead before real previews are available, you could always compile from source :)
- mixmastamyk 8y agoInteresting, I once tried to promote the idea of a new terminal system/app for Windows, but their devs poo-poo'd it on github. Ya know with DirectX and (modern) Unicode front and center. One that bypasses the obsolete design decisions made in the original console, in favor of the Unix design. Instead they had been shoehorning stuff into the old one, which has been making old legacy users angry due to regressions. So, what does this announcement mean? They have changed course? Or is it more lipstick on a pig?
- MagicPropmaker 8y agoThis is a major internal architecture change. It simply wasn’t possible to write a proper console before. That’s why you weren’t met with enthusiasm for your idea.
- mixmastamyk 8y agoAnd that's exactly what I suggested. They've had a bridge to ssh for quite a while, for example.
- nnq 8y ago> a major internal architecture change. It simply wasn’t possible to write a proper console before. Really curious why this would be so. On Linux there's dozen's of terminals/consoles. On MacOS quite a few too. Why would the GUI (which was the biggest pain point) has to have anything to do with the terminal functionality, except maybe a few keybindings maybe being impossible to implement. There were 3rd party console alternatives since like ~2000 - only they all had horrible UI/X (but still better than the original one), but Microsoft could simply have adopted one of them, normalized it's weird quirks to follow sane conventions, and baked it in as Windows default. I never understood Microsoft's attitude of "mushing" these and other things together needlessly. As a Mac & Linux user now, I can only applaud the idea of keeping things separate at all levels. Desktop environment separate from os separate from shells separate from terminal apps etc.. Heck, you often even have the GUIs as separate applications from the main one in Linux land. Never going back to Windows! Dis-integration ftw!
- tapanjk 8y ago> because everything these days needs to support emojis Not the onion.
- iamcurious 8y agoEverything but hackernews it seems.
- oblio 8y agoHN doesn't? Are you sure? Let me test: Edit: Snap, it ate my thinking emoji :-( On a more serious note, I'm not sure we're losing much by not having them. I kind of resort to smileys, anyway.
- AnIdiotOnTheNet 8y ago> I'm not sure we're losing much by not having them A more rapid decline into reddit-like meaninglessness of communication?
- zadjii 8y agoAs much as you and I don't care for emoji, there's a non-zero population of developers that _do_ use emoji on a daily basis. In fact, it's one of our top 5 most requested features on our UserVoice page. I certainly don't care for them in my terminal output, but I live to serve :P
- aembleton 8y agolinuxbrew certainly uses them a lot in the terminal.
- michaelbuckbee 8y agoThis is really welcome news as getting a decent terminal has been a real sticking point in my move from OS X to Windows. I settled on Terminus [1] (defaulting into WSL) and that works ok, but still not to the level of OSX Terminal or iTerm. Another option people seem to like is Hyper [2], but I had mixed success and it felt sluggish. 1 - https://eugeny.github.io/terminus/ https://eugeny.github.io/terminus/ 2 - https://hyper.is/ https://hyper.is/
- Analemma_ 8y agoTerminus is promising, but the updates are driving me nuts, it seems like each new one breaks something. A February update made the latency unbearable, and then the most recent update fixed that but it broke tabs: when I switch tabs the new one is blank until I hit a keystroke and suddenly the whole history reappears. A modern terminal, with full support from Microsoft, is badly needed.
- masklinn 8y agoAlacritty is supposed to be fast and support windows, maybe that's an option?
- hbosch 8y agoHave you tried cmder? https://cmder.net/ https://cmder.net/ Cmder works great for me because from Windows, my main use cases are 1) git and 2) SSH into my linux server. I don't do almost anything local, besides some web stuff. Cmder has helped me with that, when I'm not on my Mac.
- mceachen 8y agoIf you find cmder not to your liking, realize it's just a repackaging of https://conemu.github.io/ https://conemu.github.io/ and Clink with a nice looking stylesheet. You might like vanilla ConEmu better (I did).
- sime2009 8y agoIf you like Terminus, you should try out Extraterm http://extraterm.org/ http://extraterm.org/
- mtw 8y agoI don't get it, does it support Unix commands as well as traditional Windows line commands in the same tab? Is there a description or product specifications?
- fivesixzero 8y agoThis is related to the underlying console/terminal system in Windows 10, which should be shell agnostic. The same infrastructure is used by PowerShell, the Windows command prompt, and WSL for instance - all are just different shells that use their own implementations of the console subsystem.
- LeicaLatte 8y agoGood step 0 from Microsoft. Now the community has to bring out a homebrew equivalent and then maybe I will consider moving to Windows.
- mikepurvis 8y agohttps://scoop.sh/ https://scoop.sh/ https://chocolatey.org/ https://chocolatey.org/
- CivBase 8y agoCan anyone speak to their experience with either of these? I used choco a few years ago, but eventually gave up because there was very little official support by the developers of most of the packages and choco package updates usually lagged behind official releases. I see choco more often now, though. Have things improved?
- mikepurvis 8y agoI just recently switched back to Windows after 13 years on Mac OS. I've been pretty happy with everything I've installed from choco: wsl wsl-ubuntu-1604 vlc sshfs virtualbox dropbox wireshark irfanview nvim 1password vcxsrv git slack itunes colortool musicbee utorrent vscode etcher steam goggalaxy epicgameslauncher uplay
- Sujan 8y agoI use scoop on my current installation, it works well enough. Autoupdates of e.g. Firefox will mess with version numbers a lot. Many apps can't handle being run from a shortcut to a `current` folder that symlinks to a version folder, which means if you want to pin any of those to your task bar you will have to update that shortcut with every update.
- cwyers 8y agoWhy do you need Homebrew? With WSL, you can just use a Linux package manager.
- deleted 8y ago[deleted]
- mey 8y agoBlog from this team https://devblogs.microsoft.com/commandline/ https://devblogs.microsoft.com/commandline/ This one covers the under the hood work that needed to be done https://devblogs.microsoft.com/commandline/windows-command-line-introducing-the-windows-pseudo-console-conpty/ https://devblogs.microsoft.com/commandline/windows-command-l...
- emehrkay 8y agoProper copy and paste?
- cannonedhamster 8y agoIt's nice to see them improving Windows. It's actually making useful contributions to my workflow. If they could tie in the Windows subsystem for linux it would be very nice. This seems to be Microsft looking at the software people are using and making native clones that are better integrated into the OS. I use ConEmu for this currently and this upgrade seems very similar.
- lsaferite 8y ago> Indeed, it seems like the Terminal will essentially become the default environment for PowerShell, Command Prompt and Windows Subsystem for Linux users going forward. From the second paragraph of the article.
- Theodores 8y agoDoes this fall under the category of: Those who do not understand UNIX are condemned to reinvent it, poorly. -- Henry Spencer, programmer I look forward to the day Windows is a wrapper around a linux sub-system. The convergence is what I hope for.
- zadjii 8y agoI wouldn't say so. I'd say that we understand well that the original Windows Console was sub-par, and we're working hard to provide solid enhancements to it, without breaking existing Windows commandline applications. You are familiar with the Windows Subsystem for Linux, right? It's really quite good for running linux tools on Windows, and they have other big announcements at the conference today.
- apetresc 8y agoI sure hope GPU access for things like OpenCL/CUDA are on that list :)
- zadjii 8y agoHey so I'm a developer on the Windows Console/Terminal team - I can answer any questions people might have :)
- symlinkk 8y agoDoes the new console still have that annoying "overscroll" behavior where you can scroll below the output? See: https://github.com/Microsoft/console/issues/122 https://github.com/Microsoft/console/issues/122
- zadjii 8y agoNope! Lol I should have updated that issue - in the most recent Windows release, we added a feature to conhost to actually disable the overscroll (under Properties... Terminal... Disable Scroll-Forward). See [this blog post](https://devblogs.microsoft.com/commandline/new-experimental-console-features/ https://devblogs.microsoft.com/commandline/new-experimental-...)
- ScottFree 8y agoIs there any hope that windows will create their own version of homebrew for native bash, zsh and/or other linux based command line apps?
- zadjii 8y agoI'd say if you're looking for linux commandline applications, I'd recommend the Windows Subsystem for Linux, which lets linux binaries run unmodified on Windows. As far as package managers are concerned, I've had lots of success with Chocolatey. If developers are willing to port their commandline applications to Windows, then I'm sure they'd be welcome additions to Chocolatey
- ScottFree 8y agoI just saw WSL 2 land and it addresses most of my complains about WSL. Well played. :)
- max76 8y agoIs anyone getting deja vu with the powershell announcement?
- pfranz 8y agoPowerShell is a huge step forward compared to Cmd.exe. I wouldn't mind another step forward even if that means there are now three binaries. What's your concern? The only one I see is that people still seem to mostly use Cmd.exe, but I feel like a lot of that is the execution behavior of PS1 files (in addition to familiarity and compatibility).
- zadjii 8y agoFortunately you'll be able to use the new Terminal with whatever shell you like - cmd.exe, Powershell, Powershell Core, or WSL (and whatever linux shell you prefer)>
- tootie 8y agoPowerShell has been more usable than Linux or OSX shells for quite a while. It has tab completion for not just commands, but flags and arguments. And the home and end keys work. And every dev I know that has to deal with Windows still uses CMD instead.
- sdegutis 8y ago`brew install bash-completion` gives you auto-completion for a huge many number of commands. Home = Ctrl-A End = Ctrl-E Map Caps Lock to Ctrl
- eropple 8y agoPowerShell having standardized tab completion of flags/arguments is really nice, but it's worth noting that both bash and zsh support pluggable completion. It's one's choice of tools, and the lack of completion therein, that's the real sticking point. Home/end work on every machine I own, though I know that some machines (some Macs, specifically) have issues unless they're configured in the terminal emulator. (I try to use PowerShell when on Windows. I genuinely like it--just kinda wish it was a little easier to write-on-the-fly, it's very verbose and typey and Tab is just far enough away to cause some wrist strain. ;) )
- timvisee 8y agoYet I still can't figure out where to put tab completion files for custom binaries
- eropple 8y agoYou can't? I've never done it but I'm pretty sure I know this: in bash, you can get it from pkg-config. If you aren't using pkg-config, you're kind of swimming upstream in the first place, but CentOS and Fedora (the only distro I use, but I think Ubuntu uses the same) look at /etc/bash_completion.d. In zsh, it's just $FPATH. Your canonical location can also be gotten from pkg-config. This seems very googleable. Doubly so if you're doing the right thing and...using pkg-config. (Please use pkg-config. Thank you for coming to my TED talk.)
- feihcsim 8y agounrelated but i couldnt help but notice - is that screencap (https://techcrunch.com/wp-content/uploads/2019/05/Screen-Shot-2019-05-03-at-5.58.24-PM.png https://techcrunch.com/wp-content/uploads/2019/05/Screen-Sho...) using the Windows Sets feature?
- zadjii 8y agoNope! The new Terminal supports tabs, all by itself :)
- RMPR 8y agoWhat will happen to cmd and powershell then ?
- reilly3000 8y agoSeeing as Windows 10 still ships with 5.25" floppy drivers, I have to imagine they will keep those in place for many, many years.
- dragonwriter 8y agoThis is a replacement for conhost which is a level down from cmd/ps, which will still be used on top of it
- zadjii 8y agoThis is the correct answer. Whatever shell you want to use, you can still use just the same in the new Terminal
- imeron 8y agoThe window header in the article's image shows the executable being `pwsh.exe`. This is powershell then.
- Damogran6 8y agoBecause soon your password must include Uppercase, Lowercase, a number, a symbol, and two emoji.
- deleted 8y ago[deleted]
- deleted 8y ago[deleted]
- wnevets 8y agoMaybe I'll finally stop using git bash/mintty for everything
- zenlot 8y agoA bit off topic, but how does one use Windows 10 now without sacrificing on speed / resources? Recently purchased Lenovo E480 and E585, they all come with stock Windows 10, so before getting Linux in, I've tested it and it is basically unusable: disk/cpu usage is constantly jumping between 80-95%, fans are always turned on producing a lot of noise. Is this common to all laptops with Windows or just Lenovo?
- dessant 8y agoThis is one of the best configuration scripts to make your Windows snappy, it's fully customizable and easy to use: https://github.com/Disassembler0/Win10-Initial-Setup-Script https://github.com/Disassembler0/Win10-Initial-Setup-Script
- eltoozero 8y agoAlso BlackViper: http://www.blackviper.com/service-configurations/black-vipers-windows-10-service-configurations/ http://www.blackviper.com/service-configurations/black-viper...
- koonsolo 8y agoI switched back to Linux for this very reason. I have an Asus with Windows 10, and after a day of use, it becomes unbearably slow. It seems there is a lot of activity on the HD. I tried to diagnose this, but was never able to pinpoint a specific process that was slowing it down. The only solution was to restart it. Web browsing always had a huge delay. Linux on the other hand: startup is fast, use is fast, runs for months without any restart.
- majkinetor 8y agoYou can fix windows. My media centar runs on 10 for months. Just disable updates (not easily done nowdays tho) and store service which is resource hog. Use some debloater to remove other stupid stuff. Then it will fly.
- chipperyman573 8y ago
- chrisdfrey 8y agoFrom https://venturebeat.com/2019/05/06/microsoft-windows-terminal-wsl-2-coming-june/ https://venturebeat.com/2019/05/06/microsoft-windows-termina... : "WSL 2 will also support running Linux Docker containers natively, so that VMs are no longer required." Great news!
- grumblez 8y agoFinally. Won't need to run a VM for Docker anymore
- phalangion 8y agoDoes that mean that Docker for Windows will no longer require Hyper-V? And therefore will be available for Windows home editions?
- decafbad 8y agoYes, it looks so. They will add a few syscalls that Docker needs to WSL and we will use it on Home Edition.
- rtempaccount1 8y agoIt'll be interesting to see details here, which I guess will come out over the next couple of days. They could either go the syscall emulation route (as in current WSL), or possibly the "thin hypervisor" route, the fact they're talking kernel versions makes me think that may be what they're planning...
- larrybud 8y agoI suspect it's the "thin hypervisor", aka LCOW + hyperv isolation. https://devblogs.microsoft.com/premier-developer/running-docker-windows-and-linux-containers-simultaneously/ https://devblogs.microsoft.com/premier-developer/running-doc... (I work at Microsoft but have no inside knowledge on this; just speculating.)
- arestifo 8y agoDoes anybody know the name of the font they are using in the new terminal? Looks sweet
- nixpulvis 8y agoThe Alacritty terminal (https://github.com/jwilm/alacritty/ https://github.com/jwilm/alacritty/) project landed Windows support somewhat recently, and is now generally the fastest, cross-platform terminal emulator out there. Written in Rust, and GPU accelerated. I'm not personally a heavy Windows user, but the advantage of a single terminal on all systems is really huge to me. The most notable feature listed in this article to me is that it too will have "GPU-accelerated text rending".
- timvisee 8y agoI'm really interested in performance comparisons between the two once the Microsoft's terminal releases.
- zamadatix 8y agoAlacritty's claims of performance (latency or throughput) are somewhat dubious. It'll be interesting to see the two compared. The Windows port is still (naturally) rough around the edges. I think it'll get smoothed out when they switch the backend to conpty though.
- 781 8y agoThere is a picture showing color theming: https://46c4ts1tskv22sdav81j9c69-wpengine.netdna-ssl.com/wp-content/uploads/prod/sites/3/2019/05/e49e64b0984af8dd8cb4ca45eaeb4e8a.png https://46c4ts1tskv22sdav81j9c69-wpengine.netdna-ssl.com/wp-...
- bassman9000 8y agoThe new terminal will feature faster GPU-accelerated text rending and “emoji-rich” fonts, because everything these days needs to support emojis, and those will sure help lighten up the command-line user experience. Wat
- zadjii 8y agoAs much as you and I don't care for emoji, there's a non-zero population of developers that _do_ use emoji on a daily basis. In fact, it's one of our top 5 most requested features on our UserVoice page.
- ChuckMcM 8y ago“elevate the command-line user experience on Windows.” If I were an engineer in Apple's OSX group I would see this as the horde amassing an army on the border. Bit by bit, Microsoft is going down the checklist of why someone would use a Macbook pro rather than a Windows laptop for their daily driver and erasing the advantage (or at least mitigating it to the best of their ability). This will never convert the die hard OSX fans to use Windows laptops, like the OSX features could never convince die hard Windows users to use Macbook Pros, but the real prize here is the large bulk of users who aren't die hard Apple or Windows fans and just want to get their job done on one laptop reliably. Apple's latest earnings report re-iterates that they aren't investing in the Macbook Pro or OSX in any meaningful way. Microsoft's success with the Surface Pro series against the Macbook Pro has shown that good electrical engineering can be bought and if the software is good enough, it can remove the last objections to the Windows laptops. I see Linux as a big loser here too as the opportunity for a Linux desktop, for the bulk of the users, recedes further into the distance with two capable, and supported, offerings from larger players to choose from. I've got one of everything it seems, and I had a Macbook Pro as my daily driver starting at Google in 2006 through my exit from IBM at 2015. I bought a SurfaceBook when they announced them for the drawing experience and laptop that had more capability than my Macbook Pro. I then tag teamed between them until I got the Surface Pro 4 with the same drawing experience, but lighter than a Macbook Air and with WSL and a third party X server a decent Linux/UNIX like development environment. I still haven't replaced my Macbook from 2015 with the various things that Apple has thrown out there, the keyboard issue, the track bar issue, the lack of drawing, the lack of any compelling reason to upgrade. I still use it for Xcode for the iPad app I am doing in my spare time but use it less and less. The new terminal will make it easier to not use the Macbook. If Microsoft starts bundling an Xserver for the occasional windows app it would make it even easier to stay on their platform. I can't tell if Apple sees this as a threat to their business, or just doesn't care anymore about that part of the business and so they are willing to cede it to Windows as the "portable" development environment supported by an enterprise vendor.
- jtr_47 8y agoI don't see this as a threat to any Unix like operating system. In my 20+ years in IT, Microsoft has had many years to perfect their command line experience, but never did. They have a long way to go in terms of Unix like features that are part of the command line ecosystem of Unix land. When I can do this in windows (unix command line): cat somefile.txt | sort | uniq > output.txt, then it'll become a threat. Otherwise, Microsoft should fork a version of GNU/Linux and port all of their apps and GUI. They need to stop trying, they had their chance but may never achieve equality when it comes to the Windows Vs. Unix/GNU-Linux command line. This is my opinion and observation. Peace
- ktpsns 8y agoSlightly OT: The linked Techcrunch article has a header image (https://techcrunch.com/wp-content/uploads/2019/05/GettyImages-985008060.jpg?w=1390&crop=1 https://techcrunch.com/wp-content/uploads/2019/05/GettyImage...) which exploits the ambiguity in the English word "terminal". This was probaly funny for the writer, but is almost never a good idea, since the image makes no more sense as soon as you switch languages. Here is an even more weird example for non-native speakers: Having a piece of wood as an icon for a log reader. "Log" in english also means a piece of wood. This vocabulary is probably largely unknown by most non-native-level speakers, so the icon creates only confusion. [Make a google image search for "log icon" to see examples w/o context]
- supercasio 8y ago> This was probaly funny for the writer, but is almost never a good idea, since the image makes no more sense as soon as you switch languages He is writing in English why should he be preoccupied if it does not make sense in other languages. There are many English expressions that have no exact translations. Should writers avoid using these expressions too? Also, as a curiosity, terminal has the same ambiguity in Brazilian Portuguese
- syn0byte 8y agounaffiliated plug for mintty https://mintty.github.io/ https://mintty.github.io/ Also; Cygwin, XWin and a real copy of XTerm/Gnome-Terminal/etc can give you the entire capabilities of a native terminal. Including weird hacks like w3m's image previews. https://blog.z3bra.org/2014/01/images-in-terminal.html https://blog.z3bra.org/2014/01/images-in-terminal.html The "downside" is native windows console apps will have a bad time with these terminal emulators.
- nickjj 8y agoIf anyone is curious what development is like on WSL v1 right now, it's actually not bad at all, but the changes proposed look great with v2. For example, right now (with v1) you can totally use a WSL terminal of choice and run your dev environment using tmux and terminal Vim (running in WSL) and have a fantastic experience. Then wire up Docker for Windows so that your Docker CLI in WSL connects seamlessly to it. I've been doing this for quite some time for full time development and it's rock solid. Really looking for v2 with native Docker support and better I/O performance.
- JoelMcCracken 8y agoDon’t get me wrong, I am very anti MS. But this is probably the only feature I have heard of that I remember being remotely excited about.
- hota_mazi 8y agoI've been developing on both MacBook Pro's and Windows laptops for 15+ years now, on a daily basis, and I can confidently say that Windows laptops are superior to MacBook Pro's for development in every way. Cost... well, not much to say there. You can get more powerful Windows laptops for 2/3rd, sometimes half the price of what a MBP costs. MBP's latest generation is a regression in keyboard and toolbar. Not just the keys and their travel, but even simple things such as where the arrow keys are located are a nightmare for me, even after two years of using a MBP on a daily basis. And of course, there are no keypads in the Apple world, which I really enjoy having to move around (page down/page up/line end/line beginning/etc...). Windows' many consoles and bash compatibility have caught up to MacOS. Even if you don't use the bash subsystem, you can download a console today and use bash + git + ssh in a matter of minutes. Even my dotfiles are now shared by Windows and MacOS with no problems. Connectors... oh boy. I have to carry a huge hub with my MBP at all times just so I can connect my laptop to screens, or phones for charging or development, or head phones, or... I could go on and on. Bottom line is I always dread having to use my MBP these days while I look forward to my Windows machine.
- majkinetor 8y agoExactly my experience. OS X is for me like returning to Windows 7, dev included. I tried to love it, used it more then a year for everything, but Windows is simply much better platform since last CEO.
- m_mueller 8y agoI've also switched but up to now Mac Terminal is still far superior to anything I can find on Windows, including much touted 3rd party emulators like cmder/conemu. Keybindings, scrolling, tabbing, drag and drop, copy/pasting and colors just work incredibly well out of the box on Mac, even in Linux land I don't know of a terminal emulator that good. I have high hopes in this new windows terminal. Other things that are still better on MacOS compared to Windows: Keybinding consistency, system settings, PDF handling, system/app config system, backups and restores, migration assistant, system search. Its file system is also better for many small files. But still, for me the tradeoff is worth it because I can't stand butterfly keyboards, they are that bad.
- diebir 8y agoI think in the US for the most part nobody cares much about Windows anymore. For the consumer Apple simply provides a better experience, for developers the Windows is in the past. Microsoft products are essentially the budget option, AKA "poor people use it". It could be different in other parts of the world where the "budget" part is essential. At my last 2 jobs (7+ years) I did not use or see any Windows machines around. Not even sure what it looks like these days anymore.
- zadjii 8y agohttp://gs.statcounter.com/os-market-share/desktop/united-states-of-america http://gs.statcounter.com/os-market-share/desktop/united-sta... Seems to suggest that ~70% of the US still uses Windows as their primary desktop environment, so you might have a very particular selection bias.
- majkinetor 8y agoToo bad microsoft didn't fix UAC yet to be more like sudo. UAC is serious BS, designers should be ashamed. Make sudo please.
- zadjii 8y agoActually we spent MONTHS debating the pros and cons of adding a sudo on Windows. Curiously, Windows is more secure than linux because it _doesn't_ have a sudo. In Windows, any application can set messages to another window at the same integrity level with SendMessage/PostMessage. If you had a `sudo` on windows, you could have a medium-IL terminal window which is talking to a high-IL process (running with the hypothetical sudo), and any other medium-il process could drive the console, effectively creating an escalation of privilege attack vector. Its very much by design.
- majkinetor 8y agoThere are solutions to that, like IPC with some systemic "sudo server". > Curiously, Windows is more secure than linux because it _doesn't_ have a sudo. Seriously, even if so, and I really much doubt it couldn't be fixed, its case where too much security is bad for your choices. Majority of Windows devs disable UAC, honestly. Like, almost all of them ? Because its unusable and that Windows sudoers file variant named compatibility something something is just unusable too. I keep telling my 100+ IT guys (mostly devs), do not disable UAC, its good to know that something requires elevation (even tho it sucks but there are bearable powershell sudo scripts) and you will certainly have to make it on the build server later anyway. But they hate it with passion. I learned to accept the terror. There are horde of people asking questions on how to disable startup UAC screen for many tools (one example: everything search engine). What I do now is use task scheduler (like many others) to overcome it.
- dazhbog 8y agoI switched from MacOS to Windows 10 recently and I have to say all my code and deploy scripts worked exactly the same way in WSL. Essentially I installed Dropbox and git, loaded the bashrc in WSL with some aliases and after that, the workflow was exactly the same as it was on my MacOS. Heck, even the node_modules synced from the Mac via Dropbox, so for most things I didn't have to even re-install with npm. The terminals right now in Win10 are crap (Cmder and the likes are not bad, but nowhere near iterm2 and the Linux options) so Microsoft is really stepping up their game here.
- majkinetor 8y agoConemu is awesome terminal, its like tmux but supports GUI too (not that I use it). Cmder uses it so you must know it. Don't miss linux terminals really with it, any of them.
- apetresc 8y agoHas the video of the Build talk been posted yet? I know it's only been a few hours, but I don't even know where to look to check. (YouTube? The Build site? Channel9?)
- basetop 8y agoIf you have to use windows, I'd suggest ConEmu.
- salutonmundo 8y agoFirst thought: maybe this one will be semi-usable?
- pizza 8y agoThe terminal appears to be here, btw: https://github.com/Microsoft/Terminal https://github.com/Microsoft/Terminal
- jackfoxy 8y agoThe full announcement from Microsoft https://devblogs.microsoft.com/commandline/introducing-windows-terminal/ https://devblogs.microsoft.com/commandline/introducing-windo...
- mtw 8y agoThe public repo is here https://github.com/microsoft/terminal https://github.com/microsoft/terminal for those who want to try
- jackewiehose 8y agoThanks to cygwin I have a great terminal (bash mintty) for years. Why is cygwin so unpopular? I know, sometimes it's too slow but besides that I don't understand the aversion I encountered.
- Someone1234 8y ago> Why is cygwin so unpopular? It is a very leaky abstraction. Instead of just running Linux on Windows, they instead opted to half-compile binaries and then require a bunch of Windows specific configuration changes as a direct result. The whole goal of Cygwin is where the problem starts: It is a POSIX layer for Windows that happens to reproduce Linux APIs. So now you aren't using it like Linux, or Windows, since it is neither and it is both. Devil's advocate: Cygwin made a lot of sense with less powerful hardware since it is more efficient. But with the benefit of 2019 hardware there's no need to settle, and instead you can just run a full Linux kernel alongside Windows and get "good enough" results to be productive.
- jackewiehose 8y agoHalf-recompiled binaries? They don't compile from source? > It is a POSIX layer for Windows that happens to reproduce Linux APIs. So now you aren't using it like Linux, or Windows, since it is neither and it is both. I don't know what you mean by "using it like linux or windows". The reason I'm using cygwin is that I can use windows-desktop (rudimentary) like I use linux-desktop. With a lot of GNU-Tools and a proper terminal emulator.
- Someone1234 8y agoCygwin executables are compiled to Windows binary (PE) format but target POSIX and UNIX kernel APIs. In other words they're half Windows and half UNIX, and can run on neither natively. That means configuration files and some tools need to specifically target Cygwin and often source code needs specific changes/patches/flags to be compiled into Cygwin's compatible format. Nobody said Cygwin didn't work. I am just explaining to you why it is unpopular and why it is a leaky abstraction.
- m0zg 8y agoMicrosoft, just take iTerm2 on macOS, and do the exact same thing. Splits, tabs, everything. And then use that for WSL as well. Here, you can fire your PMs, I told you exactly what you need to do.
- jasonvorhe 8y agoYou haven't even used their Terminal. How presumptuous to assume that iTerm2 will be better and that just copying it would work out. iTerm2 is okay for people who want to customize their tools, but in terms of usability and performance, Terminal.app is a much better option.
- m0zg 8y agoThis is Microsoft, so out of the gate the right assumption to make is that it will be much worse than iTerm2 which has matured to a very polished state over the past decade.
- ankitbko 8y agoAn official packag is not available but if someone needs to give it a try without going through pain of building it themselves, heres the link - https://www.reddit.com/r/programming/comments/bltm2e/the_new_windows_terminal_youtube_promo/emrljnz/?utm_medium=android_app&utm_source=share https://www.reddit.com/r/programming/comments/bltm2e/the_new...
- namelosw 8y agoMicrosoft is really changing fast, it seems. In developers experience perspective, this is really a good start. It's really painful to work with Windows+.Net stack currently. For example, most of the windows menus don't let you search for an entry, like searching for a table among hundreds in SQL server management studio, or just find an entry in group policy, etc. Or just copy pasting with PowerShell. Tools other than Visual Studio looks super blurred on high DPI screen.
- majkinetor 8y ago> most of the windows menus don't let you search for an entry, This has nothing to do with MS. I am surprised you mentioned this since it is the norm that apps do not have this on all mainstream OS'es. I hate it too, but that is how it is almost everywhere. That is one of the MAIN reasons I prefer Visual Studio Code - CTRL + P and type anything in the menu item name to get the fuzzy search (plus that item is now first on the CTRL+P list next time). Vim has this too, via plugins tho. > Like searching for a table among hundreds in SQL server management studio Yeah, the same thing. I recommend dbeaver which, again, has fuzzy search on table names. Windows+.NET stack is how you make it, the fact that people use MS stack mostly is not MS fault. I personally know .NET project manager and he doesn't use "the stack" but Vim and friends.