nushell/crates/nu-std/std
Wind 186c08467f
make std help more user friendly (#14347)
# Description
Fixes:  #13159

After the change, `std help` will no-longer print out "double error"
messages.

Actually I think it's tricky to make it right. To make `help <cmd>`
keeps paging feature from fallback `man` command. I have to split
`commands` into `scope-commands` and `external-commands`.

If we don't split it, simply call `let commands = (try { commands
$target_item --find $find })` in `help main` will cause us to lost
paging feature, which is not we want.

A comment from original issue:

> If there are no objections, I'd like to remove the man page fallback
code from std help for the moment. While it's probably fixable, it's
also platform specific and requires testing on all platforms. It also
seems like a low-value add here.

Actually I think it's a beautiful feature of `std help`, so I want to
keep it here.

# User-Facing Changes
### Before
```nushell
> help commands asdfadsf
Help pages from external command asdfadsf:
No manual entry for asdfadsf
Error:   × std::help::command_not_found
   ╭─[entry #11:1:15]
 1 │ help commands asdfadsf
   ·               ────┬───
   ·                   ╰── command not found
   ╰────
```

### After
```nushell
> help commands asdfasdf
Help pages from external command asdfasdf:
No manual entry for asdfasdf
```

# Tests + Formatting
Actually it's a little hard to add test because it required user input
(especially for fallback `man` command)
2024-11-27 09:29:25 +08:00
..
assert Virtual std module subdirectories (#14040) 2024-10-10 06:56:37 -05:00
bench Virtual std module subdirectories (#14040) 2024-10-10 06:56:37 -05:00
config Always load default env/config values (#14249) 2024-11-20 16:15:15 -06:00
core Respect use_ansi_coloring setting in banner (#14049) 2024-10-10 09:58:37 -05:00
dirs Fix small typos in std/dirs (#14422) 2024-11-23 16:04:27 -06:00
dt Virtual std module subdirectories (#14040) 2024-10-10 06:56:37 -05:00
formats Virtual std module subdirectories (#14040) 2024-10-10 06:56:37 -05:00
help make std help more user friendly (#14347) 2024-11-27 09:29:25 +08:00
input Virtual std module subdirectories (#14040) 2024-10-10 06:56:37 -05:00
iter Virtual std module subdirectories (#14040) 2024-10-10 06:56:37 -05:00
log Virtual std module subdirectories (#14040) 2024-10-10 06:56:37 -05:00
math Virtual std module subdirectories (#14040) 2024-10-10 06:56:37 -05:00
util Virtual std module subdirectories (#14040) 2024-10-10 06:56:37 -05:00
xml Virtual std module subdirectories (#14040) 2024-10-10 06:56:37 -05:00
mod.nu Always load default env/config values (#14249) 2024-11-20 16:15:15 -06:00