You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
feat(shell): complete cd -jw with native shell candidates #40
Refine worktree Tab completion so the shell receives candidate paths instead of cj launching an interactive fzf process from inside completion.
Interaction
Type cd -jw or cd --jump-worktree.
Press Tab.
The generated integration asks cj for this repository's worktree paths.
The shell presents those candidates using its normal completion UI.
The chosen worktree safely replaces the jump token; Enter performs the directory change.
With fzf-tab or another completion frontend installed, that frontend can render the worktree candidates through fzf. Without fzf, native completion still works.
Acceptance criteria
included by cj init <shell> without --setup-key-binding
support Bash, Zsh, Nushell, and PowerShell
return only worktree path candidates for an exact current -jw or --jump-worktree token
do not launch a nested fzf process during Tab completion
preserve exact paths and shell-safe insertion for spaces, apostrophes, Unicode, leading dashes, platform-native separators, and non-UTF-8 Unix paths where the shell permits them
cancellation or an empty candidate set leaves the buffer and current directory unchanged
ordinary cd completion delegates to the existing shell-specific behavior
Zsh registration remains effective when compinit and fzf-tab/plugin frameworks initialize before or after the generated integration
cj -jw and cd -jw<Enter> remain explicit fzf picker paths and retain useful missing-fzf diagnostics
standalone cj completions behavior remains separate; wrapper completion stays in generated init
native, generated-source, external integration, and Windows CI tests are green
Scope note
This supersedes the original direct-fzf-on-Tab wording after interactive testing exposed nested/ordinary completion behavior. Reuse the existing shell hooks, quoting, and tests from PR #41 where they still fit.
Activity
feat(shell): add fzf-on-Tab worktree completion for cd wrappers
test(tests): normalize path identity in Windows completion checks
fix(src): register native PowerShell completion for cd
fix(powershell): intercept cd jump tokens in TabExpansion2
[-]feat(shell): complete cd -jw through fzf[/-][+]feat(shell): complete cd -jw with native shell candidates[/+]fix(completion): replace Tab picker with native worktree completion
feat(shell): add fzf-on-Tab worktree completion for cd wrappers
test(tests): normalize path identity in Windows completion checks
fix(src): register native PowerShell completion for cd
fix(powershell): intercept cd jump tokens in TabExpansion2
fix(completion): replace Tab picker with native worktree completion
feat(shell): add fzf-on-Tab worktree completion for cd wrappers
test(tests): normalize path identity in Windows completion checks
fix(src): register native PowerShell completion for cd
fix(powershell): intercept cd jump tokens in TabExpansion2
fix(completion): replace Tab picker with native worktree completion
chore(release): update version to 0.4.0 [skip ci]
ptah-bw-technical-app commentedon Sep 10, 2026
🎉 This issue has been resolved in version 0.4.0 🎉
The release is available on GitHub release
Your semantic-release bot 📦🚀