Comment Re:A command explodes into objects (Score 1) 123
Try a modern linux with bash completions installed. Type "ls --" and hit tab.
Why you'd want to "arrow through" a large list of commands is beyond me.
First, you wouldn't want to do that through a large list, only a small list. Also, a well designed interface would allow you to more powerful search tools that could be much faster (tree that expands as you type, giving you shortcuts to jump to or prune branches). I think that means you've missed the point.
The point is you're still thinking "text and only text" as the output from any command. Text based key completions (tab, arrow key, etc) are terribly old these days. I think you could find something like that on the old text-based Lotus 1-2-3, if not early word processor spelling checkers. "Modern" isn't a two decade old technology.
A lot of "words" on a command line have an implied object, the obvious example being the file names printed by "ls" - each file name implies there's a file. You can run "ls" again with a "-l" to see more attributes of the file, like size and permissions. You can use "more" to view the contents. And so on. By contrast, a GUI file manager shows you a representation of the file that you can manipulate, to list size and attributes, click to open, rename, and so on. The file appears on screen once, in a human readable form, you don't have to open a new view every time you want to see an attribute like you do with "ls".
So imagine a system where you could type "ls some_app/data" and get a huge list of files, but then decide to "select age > this month" to highlight only older files, then add more selects to add more criteria, sort by size, etc. Say you find the file you want, and want to view it, but don't know the name of the viewer command installed on this system (or if it has one), but you can click on the file to bring up a menu and select "view" to see your options.
To do something like that now you'd have to do your "ls" in a CLI, then open up a GUI file manager to the same directory to click on it. The question is, why can't "ls" output complete file objects to your window, instead of just one limited form (7 bit ASCII) of one single attribute (the name) of those objects? They don't need to look much different until you start clicking on them, you could keep doing things the CLI way until you need something more.
I hope that's clearer about why tab completion of text is insignificant compared to what could be done with CLI/GUI integration. That's one example, you should be able to imagine others (revision control system, system stats, debugging a crashed program).