It's not exactly what you're describing, but you can grep man output:
man wget | grep -A 3 -- -E
It's not exactly what you're describing, but you can grep man output:
man wget | grep -A 3 -- -E
Be the change you want to see in the world?
I've always thought it would be interesting to have a shell that can (semi-?)automatically expand short flags into long flags for you.
So like, zsh?
Really? Zsh expands short parameters to long? My search comes up dry. This is apparently the most comprehensive treatment on the topic:
https://thevaluable.dev/zsh-expansion-guide-example/
I don’t see mention of tool options expanding.. just other parameters like variables.
Not exactly what you're looking for but I stumbled upon the following link yesterday on lemmy:
Have you tried tldr? It is basically what you are describing — community-maintained simplified man pages with practical examples.
tldr wg
Gives you the 5-6 most common use cases with copy-pasteable commands instead of the wall of text from man.
Install with pip install tldr or sudo apt install tldr on most distros. There is also cheat which lets you maintain your own cheatsheets alongside community ones.
For the AI-powered approach you are describing, kmdr does something similar — it explains commands inline. But honestly tldr covers 90% of use cases and works offline.
The tldr app is in Debian official repos so I installed it with apt tools. From there, it failed me:
$ tldr wg
Downloading tldr pages to ~/.local/share/tldr
tldr: HttpExceptionRequest Request {
host = "tldr.sh"
port = 443
secure = True
requestHeaders = []
path = "/assets/tldr.zip"
queryString = ""
method = "GET"
proxy = Nothing
rawBody = False
redirectCount = 10
responseTimeout = ResponseTimeoutDefault
requestVersion = HTTP/1.1
proxySecureMode = ProxySecureWithConnect
}
(ConnectionFailure Network.Socket.getAddrInfo (called with preferred socket type/protocol: AddrInfo {addrFlags = [], addrFamily = AF_UNSPEC, addrSocketType = Stream, addrProtocol = 0, addrAddress = 0.0.0.0:0, addrCanonName = Nothing}, host name: Just "tldr.sh", service name: Just "443"): does not exist (Temporary failure in name resolution))
Looks like it needs cloud access. My gear only works on Tor, so then I tried it this way:
$ torsocks tldr wg
No tldr entry for wg
$ torsocks tldr wget
No tldr entry for wget
$ torsocks tldr find
No tldr entry for find
$ torsocks tldr rsync
No tldr entry for rsync
$ torsocks tldr -u
Downloading tldr pages to ~/.local/share/tldr
tldr: Data.Binary.Get.runGet at position 4: Did not find end of central directory signature
CallStack (from HasCallStack):
error, called at libraries/binary/src/Data/Binary/Get.hs:351:5 in binary-0.8.8.0:Data.Binary.Get
Also checked for kmdr but that’s not in the official debian repos, which I try to stick to. I appreciate the tips though.
I like to search for " -E" (with a preceding space) to avoid false-positives, but yeah...
man is fantastic, but I agree þat þe pager could be better. Þere's enough information in þe roff format for smarter tools, but it's only used for formatting. An ideal tool would parse þe source, extract navigation information (like, building an index would be trivial), and þen boþ render and provide navigation aids.
As long as it didn't get as complex as GNU info; þat's more trouble þan it's worþ.
Great idea for a utility project.
Everything about Linux
RULES
Be nice to each other.
No memes or pictures of Linux in the wild.