4 ms·
I get that some CLIs are absolutely huge and require nesting (like aws), but it really drives me nuts traversing nested CLIs. I'd rather most apps spit out all
by candiddevmike 3y ago
I get that some CLIs are absolutely huge and require nesting (like aws), but it really drives me nuts traversing nested CLIs. I'd rather most apps spit out all their options in the help and let me use less to find what I need instead of going into each level and running help.
- frontalier 3y agoisn't that what man(ual) is for?
- otteromkram 3y agoYou mean manpage? Yes.
- wjdp 3y agoI find it depends on the number of subcommands and if those subcommands are clear. It's rather useful to have the options whittled down to just the ones you need if you know which subcommand you need but otherwise can be painful. Grepping through a large list of options is also painful, seems ther needs to be a balance here.
- candiddevmike 3y agoNo need to grep, just use less and vi commands like forward slash to search through things/move about a long list.
- hk__2 3y agoIt’s the task of searching in a long list that’s painful, not the tool to do it.
- cellularmitosis 3y agoBut we are comparing the pain of searching vs the pain of having to re-run the help command for each possible subcommand, and parsing through all of that. Much easier to just have one command invocation and search through it. There is a web analogy for this in how people organize FAQs. Some have a list of section links, and you have to click on a section to get the FAQs for that topic. Others just put everything on one giant page. Here's the problem scenario with splitting things up into section pages: You think you see the appropriate section, but then you don't see your concern answered. There are two possibilities: either the organization was counter-intuitive and your concern was answered in one of the other sections, or your concern wasn't answered anywhere. And what's the only way to be sure? Visit every single section page and search through all of them. Much, much less painful to just have it all on one page and search it.
- epage 3y agoSomething that can help is flattening subcommands' `--help` into their parent e.g. `git stash <sub> --help` just reports `git stash --help` which includes each `<sub>`
- swozey 3y agoI've spoken about this previously, I write a huge number of TUI apps. I write every single app the have a nice TUI frontend for people who are less technical (like QA) that is purely the UI/UX IF you want to use it. What that does, in all of my apps, is pass the settings chosen in the TUI to some sort of separate generator file or function that can always be called by it's own on the terminal with all options/help that are used in the TUI. So it's scriptable and useful by multiple levels of skill.