Live data from Hacker News

Ask HN: What do you love/hate about terminals? Would you change them?

news.ycombinator.com

101–110 of 204 posts

Re: Ask HN: What do you love/hate about terminals? Would you change them?

#101

I think that the autocomplete story is abysmal. Modern IDEs can tell me exactly what can follow after a certain piece of text, and even the best tab completion in terminals is limited, ugly, and text-mode for no good reason. Some protocol for a real dropdown rendered in the style of the OS, plus a standard data format that allows tool builders to specify options, their meanings and the kinds of allowed parameters in…

> If I type "git " I want to see "add" as an option, with docs in a tooltip as I navigate the options. When I "git add " I want to see a list of files that make sense to add, eg only files that can be staged right now With fish you can customize auto completion for individual commands with full color and tooltip support. As a long time emacs user I want to believe that much of the required functionality for menus can…

Are you referring to The NeXT Introduction - October 12, 1988[0]?

[0] https://www.youtube.com/watch?v=92NNyd3m79I

Re: Ask HN: What do you love/hate about terminals? Would you change them?

#104
I'm a Mac User, and honestly I think the Mac terminal is fine and there's very little room for improvement. But if I were to improve here's a few of the things that I would do:

- Make it easier to know what the current process is and kill it if it goes haywire. An out-of-control process can trap control C and ignore it. I really hate digging into activity monitor to kill a process when I just want to keep the same terminal window open.

- A better display of my current working directory, and my current git branch. These items should be displayed at the edge of the window, not inside the terminal itself.

- Better view and management of my previous commands in the shell.

- Do away with psuedo-gui terminal applications. My terminal already has a large scroll back buffer, so we don't need applications within the terminal to also implement scrolling and paging. I have plenty of graphical text editors on hand. We have protocols like VNC for remote desktop control.

- Try and see if there is a way to lower the learning curve of various terminal applications that I may use infrequently. Often I learn how to use terminal applications by Googling around for examples of what I am trying to do. Perhaps something like autocomplete that we have in our modern IDEs?

- Allow me to collapse the output of programs, just like we can collapse comments in hacker news.

Re: Ask HN: What do you love/hate about terminals? Would you change them?

#105
post #98

I often lose my place in a sea of similar outputs. It's infuriating that distinguishing which command belongs to which output at which time requires me to rely on my eyeballs. So for example it'd be nice if my output folded up after the following command is run. If `time` was run automatically. If I could switch on autodiffing between runs of the same command. There are probably other such ideas.

I hadn't thought about something like this but it sounds amazing. I wonder if there's some sort of existing terminal/shell combo that can do this, at least through plugins.

Ilya Sher's Next Generation Shell aims to allow running multiple commands in parallel, with each command's output collected and displayed below that command.

* https://github.com/ilyash/ngs

Re: Ask HN: What do you love/hate about terminals? Would you change them?

#106
post #103

I hate Bash and all of its relatives. No language where equality is tested with -eq should be in use in 2017; we can do so much better.

I actually kind of like it, powershell also has -eq, and there's no chance of mixing up assignment and equality operators.

Re: Ask HN: What do you love/hate about terminals? Would you change them?

#107
First, if I want to come up with a setup that includes a modern terminal emulator with lots of features, a decent number of extensions and plugins for things like zsh, etc..., I will INEVITABLY end up with a something that:

1) has way more input latency that it should have (iterm2, Ive had to just fall back to Terminal.app)

2) takes WAY too long to launch a new bash/zsh/whatever session if I split a window (cause parsing thousands of lines of autocomplete code written in bash, profiles, etc... is SLOW). Shit, just installing nvm and sourcing all its crap adds an easy 400ms to session start time.

3) works on one, maybe two platforms at best.

Second: I understand that using a terminal for everything is inevitably going to be less efficient that a UI in very specific scenarios, but this ends up being true way too often, and a large part of it is due to the CONSTANT need to parse/marshal/unmarshal output format of one program to get it right for input somewhere else. Some of that is the terminal's fault (along with the whole CLI ecosystem), but a lot of it is just cause there are 9000 different competing formats for human readable structured data. Powershell really tried to get this right, and I salute them for it.

Third: terminals have been around for a long time, and they've come up with their own conventions for keyboard shortcuts/etc... over the decades; I get it. But its time to just dump that baggage and default to whatever the standards for a particular OS are.

Re: Ask HN: What do you love/hate about terminals? Would you change them?

#108
post #8

Well it is obvious to me that terminal handling and indeed the shell itself should be absorbed into systemd.... On a more serious note, the terminal has to "just work", its role is to host shells, ncurses apps, and so on. It doesn't need to have any clever features, it just needs to be a blank canvas, one that is tolerant of its guests doing weird stuff and able to recover gracefully. All the "cleverness" should be i…

> Well it is obvious to me that terminal handling and indeed the shell itself should be absorbed into systemd....

systemd is like that emacs of process supervisors.

Re: Ask HN: What do you love/hate about terminals? Would you change them?

#109

Earlier quoted context omitted.

> If I type "git " I want to see "add" as an option, with docs in a tooltip as I navigate the options. When I "git add " I want to see a list of files that make sense to add, eg only files that can be staged right now With fish you can customize auto completion for individual commands with full color and tooltip support. As a long time emacs user I want to believe that much of the required functionality for menus can…

> Recently I stumbled upon Steve Jobs's presentation of Next computers and the initial UIkit. Jobs himself programmed without writing a single line of code, only using the built in interface builder. This was in the 80s, now the year is 2017 and we are still trying to remember the parameters for tar to extract files :) I watch it regularly. Every time I see even seasoned developers takes weeks or even months for buil…

> I wonder if we developers have a subconscious bias towards tougher way of building things instead of a much easier way.

That and the fact you we don't know everything that's possible and stick to what we know.

But, there is another side of the story: reusability is hard, plus similarity and equality are very different things. Generalizing a problem can be more or less productive depending of your situation. Also learning how to use something and bend it to your needs can be an mistake too on the long run.

Mix complexity, money, human factors in that and you get the average IT project.

Which is still awesome if you ask me. Current softwares have many warts, but they are so freaking amazing.

Re: Ask HN: What do you love/hate about terminals? Would you change them?

#110

First, if I want to come up with a setup that includes a modern terminal emulator with lots of features, a decent number of extensions and plugins for things like zsh, etc..., I will INEVITABLY end up with a something that: 1) has way more input latency that it should have (iterm2, Ive had to just fall back to Terminal.app) 2) takes WAY too long to launch a new bash/zsh/whatever session if I split a window (cause par…

At the risk of starting a quasi-religious argument, the object-orientation of Powershell is one of the things I really like about it.
Post reply on HN