Skip to content

Track upstream grouped/colorized just recipe completion; migrate _just completer when available #252

Description

@laurigates

What

Track upstream progress on grouped/colorized just <TAB> recipe completion, and migrate our local dot_zfunc/_just completer to the native engine once the upstream pieces land.

Why

We currently ship a hand-rolled zsh completer (dot_zfunc/_just) that parses just --dump --dump-format json and groups recipes by their [group('...')] attribute via _describe, rendered with fzf-tab. The native just completer can't do this yet — it dumps every recipe into one flat group, discarding group metadata.

The feature is blocked upstream, in this chain:

  • clapCompletionCandidate has only value + help(), no tag/group field. A per-candidate tag API is in clap-rs/clap#6334 (from #6320) — OPEN, not merged.
  • just — would consume that tag in candidate_recipes() (src/completer.rs), where Recipe::groups() (src/recipe.rs) already exposes the data. Tracked upstream at casey/just#2406. Also requires bumping just's clap_complete = "=4.6.5" pin once clap lands. (casey/just does not accept PRs.)

We posted the proposal + downstream use-case on both trackers:

How / acceptance

When the upstream chain lands (clap#6334 merged → released → just bumps the pin and tags recipe candidates by group), revisit:

  • clap#6334 merged and released
  • just ships grouped recipe completion (or exposes enough to drive it natively)
  • Migrate/retire dot_zfunc/_just + the .chezmoidata/completions.toml entry in favour of the native completer, if it covers the grouped/colorized UX
  • If native still falls short, keep the custom completer and note why

No action until then — this is a watch/migrate tracker.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or improvement

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions