← Back to context

Comment by simgt

4 days ago

What is great about them is the constraints they impose on the UI designer. I spend so much time finding actions in apps like Zed, Obsidian or Slack because menus and rows of buttons are not cool anymore.

I'd really want explicit UIs from 2000, but in the mean time TUIs feel like an improvement.

I don't quite agree with this. Feature discovery is much easier in GUI when most commonly used features are either in the first layer of menu or in standard hotkeys. In the worst case, you would do a search in GUIs that provide them. In CLI / TUI, no such function is present and you would basically have to man and scroll through all possible commands to find it, though I guess grep helps.

  • You accept search in GUI, but don't in man pages? Scrolling through actions in a tree-like menu structure is ok, but through a tree-like structure in the --help output is not? Feels inconsistent.

    The whole benefit of text-based interface is that search, filter and transformation is always available and completely independent of the running program.

    I can see the visual discoverability aspect for GUIs, but for the visual layout GUIs and TUIs are on par, the difference is rather in the rendering mechanism: pixel vs. character-based.

    • >The whole benefit of text-based interface is that search, filter and transformation is always available

      That's the point about TUIs, they remove this benefit. You can't (practically) grep the output of btop or vim or whatever.

I agree about the constraints. My ideal solution would also impose harsh constraints, but would also add just enough structure. I’m also frustrated by each app reinventing the same thing slightly differently.

> because menus and rows of buttons are not cool anymore.

They are, which is why most desktop applications use them.

(And please help remind the GNOME people of this fact.)