Fallback completions / scripted completers
For typo corrections, any-case match, ..
Completion groups
I want more completion flexibility, inspired from zsh's completion system but with a
lot more structure thanks to nushell's structural data flow and manipulations.
Example of groups:
- for many commands: options, dirs, files
- for
git checkout: modified files, local heads, remote heads, recent commit
- for
cd: local dirs, recent dirs (session), recent dirs (any shells)
- for
cd ~: named dirs, users
- for
man: 1 group per man sections
I want to be able to:
- Expose multiple completions groups
- Have keybinds to navigate in a completion menu through the completion groups
- Re-order the groups for some completions
IDEA: completion tags not groups
Completion items can have 1+ tags (?)
In results we can filter which results we want with #options, #path or !#git.untracked...
Notes
https://github.com/nushell/nu_scripts/blob/main/custom-completions/git/git-completions.nu has many
ideas, but AFAIK (NEED CONFIRMATION) it will put all results in the same list, and we can't see only
some completions
FIXME: export extern "git branch" [...] do not distinguish options & pos-param..
Results filtering: Fuzzy search / Search anywhere
TODO!
Results display: item format
To show some additional data about the item, e.g. as a prefix.
For example eza(-like) output with file size, number of changes hunk, ...
We could also show an icon before all local paths
compl_item_format: "<icon> <item><flex-align-spacing><description>"
Fallback completions / scripted completers
For typo corrections, any-case match, ..
Completion groups
I want more completion flexibility, inspired from
zsh's completion system but with alot more structure thanks to nushell's structural data flow and manipulations.
Example of groups:
git checkout: modified files, local heads, remote heads, recent commitcd: local dirs, recent dirs (session), recent dirs (any shells)cd ~: named dirs, usersman: 1 group per man sectionsI want to be able to:
IDEA: completion tags not groups
Completion items can have 1+ tags (?)
In results we can filter which results we want with
#options,#pathor!#git.untracked...Notes
https://github.com/nushell/nu_scripts/blob/main/custom-completions/git/git-completions.nu has many
ideas, but AFAIK (NEED CONFIRMATION) it will put all results in the same list, and we can't see only
some completions
FIXME:
export extern "git branch" [...]do not distinguish options & pos-param..Results filtering: Fuzzy search / Search anywhere
TODO!
Results display: item format
To show some additional data about the item, e.g. as a prefix.
For example
eza(-like) output with file size, number of changes hunk, ...We could also show an icon before all local paths
compl_item_format: "<icon> <item><flex-align-spacing><description>"