4 ms·
You touch upon the problem. The space is actually bidimensional instead of unidimensional. On one axis we have graphical (raster mode) at one end and text at t
by alexvoda 6y ago
You touch upon the problem.
The space is actually bidimensional instead of unidimensional.
On one axis we have graphical (raster mode) at one end and text at the other.
On the other we have as you calld them action-oriented (WIMP) and line-oriented (I would call it command-oriented).
There are text mode action-oriented apps: ncurses/turbo vision/etc. based applications like *Commander, or the old Borland IDE, or Tilde, or the old FoxPro, or plenty others.
And there are graphical command-oriented apps like Jupyter or ReGIS or Sixel or iTerm or TermKit or Kui or the command palette in VSCode or Atom or others.
And you can have them mixed like in youtube-dl GUI or ffmpeg GUI where the changes you make in the GUI are reflected in different arguments for the command and you can see and edit the command before executing it. This is similar to getting keyboard shortcut suggestions in menus or tooltips.
We need more innovation in this space. Ways to achieve both discoverability and scriptability. We need more hybrids and less systems that stay in their lane.
Graphical text editors with command pallettes, PowerShell with its object oriented piping, Jupyter are moves in this direction.
This is a power user direction. And it is opposed both to the minimalist touch friendly trend and to the terminal-first mindset.
- ori_b 6y ago> There are text mode action-oriented apps: ncurses/turbo vision/etc. based applications like Commander, or the old Borland IDE, or Tilde, or the old FoxPro, or plenty others.* These are graphical programs, just with a substandard drawing api.
- alexvoda 6y agoYou did not get the point the parent (me) and grandparents made. They are not graphical programs. They are generally recognised as TUI programs. If these are graphical then so is Vi or the fancy powerline prompt. Our point was that you can also have command lines in graphical applications and WIMP in text mode applications. https://en.wikipedia.org/wiki/Text-based_user_interface https://en.wikipedia.org/wiki/Text-based_user_interface https://en.wikipedia.org/wiki/WIMP_(computing) https://en.wikipedia.org/wiki/WIMP_(computing)
- alexvoda 6y agoActually even this two axis classification is imprecise. CLI programs like the coreutils are actually sort of missing a user interface. They are just programs that receive arguments on launch. How should we classify the following? - Programs like coreutils that receive arguments and return a result - Programs that start a menu or wizard in text mode - Programs that start a interactive command line like various database CLI interfaces, shells - Programs like Vim that have a TUI and are command line driven. - Programs like Tilda that have a WIMP TUI I think the last four have graphical equivalents (eg. Windows installers, Jupyter, VSCode, Notepad++ respectively) and what is missing is a graphical interface for passing arguments to programs.
- ori_b 6y agoOf course vi is graphical. Vi is literally short for 'visual': it was created as a graphical extension of ex. The mark of a command line is a stream of commands and responses, not whether it does ascii art to emulate graphics.
- alexvoda 6y agoI understand your point and your definition of GUI is much more inclusive. I however disagree with your definition and I consider it is not that commonly accepted. I do agree with your definition of a command line interface as a stream of commands and responses.