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
feat(fuzzy-finder): add UX defaults and CLI_FUZZY_FINDER_OPTIONS passthrough (#534)
Add sensible fzf UX defaults and CLI_FUZZY_FINDER_OPTIONS system variable.
Default fzf options (--select-1, --exit-0, --highlight-line, --cycle) are set
as CLI args in prepareFzfOptions so they can be overridden by users.
CLI_FUZZY_FINDER_OPTIONS allows arbitrary fzf flag passthrough with last-wins
semantics. Uses google/shlex for proper shell-style word splitting, supporting
quoted arguments like --header='My Header'.
Documents --tmux incompatibility (opts.Input Go channel vs external process).
Refines CLAUDE.md no-future-proofing guideline and adds merge-over-rebase policy.
Fixes#526
Copy file name to clipboardExpand all lines: CLAUDE.md
+2-1Lines changed: 2 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -142,13 +142,14 @@ For testing best practices (table-driven tests, coverage comparison, test organi
142
142
### Git Practices
143
143
-**CRITICAL**: Always use `git add <specific-files>` (never `git add .` or `git add -A`)
144
144
-**CRITICAL**: Never rewrite pushed commits without explicit permission
145
+
-**Conflict resolution**: Use `git merge origin/main` (not rebase). This repo uses squash merge, so commit history cleanliness doesn't matter — merge is safer and preserves context.
145
146
- Link PRs to issues: "Fixes #issue-number"
146
147
- Check `git status` before committing
147
148
148
149
## Important Notes
149
150
150
151
-**No backward compatibility required** - not used as an external library
151
-
-**No future-proofing** - only implement what's needed now
152
+
-**No future-proofing, but choose correct solutions** - don't build speculative features (plugin systems, unnecessary abstractions), but when a clearly correct solution exists at similar cost, prefer it over a known-incomplete alternative. When in doubt, present options to the user rather than automatically choosing the minimal path.
152
153
-**Issue management**: All fixes go through PRs - never close issues manually
153
154
-**License headers**: New files use "Copyright [year] apstndb"; files from spanner-cli keep "Copyright [year] Google LLC"
Copy file name to clipboardExpand all lines: README.md
+5Lines changed: 5 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -947,6 +947,7 @@ They have almost same semantics with [Spanner JDBC properties](https://cloud.goo
947
947
| CLI_STREAMING | READ_WRITE |`"AUTO"`|
948
948
| CLI_TABLE_PREVIEW_ROWS | READ_WRITE |`50`|
949
949
| CLI_FUZZY_FINDER_KEY | READ_WRITE |`"C_T"`|
950
+
| CLI_FUZZY_FINDER_OPTIONS | READ_WRITE |`""`|
950
951
951
952
> **Note**: `CLI_FORMAT` accepts the following values:
952
953
> -`TABLE` - ASCII table with borders (default for both interactive and batch modes)
@@ -967,6 +968,10 @@ They have almost same semantics with [Spanner JDBC properties](https://cloud.goo
967
968
>
968
969
> For Table formats with streaming enabled, `CLI_TABLE_PREVIEW_ROWS` (default: 50) controls how many rows are used to calculate column widths before streaming the rest.
969
970
971
+
> **Note**: `CLI_FUZZY_FINDER_OPTIONS` passes additional fzf options to the fuzzy finder. Options are appended after built-in defaults, so user options take precedence (last wins).
"Additional fzf options passed to the fuzzy finder. Appended after built-in defaults, so user options take precedence. Example: --color=dark --no-select-1"))
0 commit comments