Shell completion for fish, bash, zsh and PowerShell #44
Labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
jeff/zfj#44
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Shell completion for fish, bash, zsh and PowerShell.
Decisions
docs/adr/0007-completion-is-answered-by-zfj.md). A hiddenzfj __complete <words>is given every word afterzfj, the last being the partial word (possibly empty). It answers one candidate to a line asvalue<TAB>description, already prefix-matched, and then a directive line::files,:dirsor:none. Each shell's completion script only hands it the line and offers what comes back. A script reads a directive it doesn't know as:none, so the protocol can grow.__completewrites nothing to stderr and always exits 0.zfj op, and an operation's params.zfj completion <fish|bash|zsh|powershell>prints the script. The scripts are plain files insrc/cli/completions/, embedded with@embedFile, and installed as files without running zfj, since a cross build cannot run what it builds.__complete, and a flake check that loads each script in its real shell and completeszfj issandzfj issue list --st.Deferred
Completing values from the instance: issue, pull request and run numbers, labels, repositories, users.
Children
__complete,zfj completion, fishDone: shell completion for fish, bash, zsh and PowerShell is on main, and ships in v0.8.0.
__complete,zfj completion, fish:a86e19387c9ae6a38407dde4a027efed0aa00c098cEach script is checked in its real shell by the
completionflake check, PowerShell under both Standard and Legacy argument passing. Completing values from the instance (numbers, labels, repositories, users) is still deferred.