Skip to content

fix(action): a user binding displaces the built-in on its key (#63) - #78

Merged
hammadmajid merged 4 commits into
mainfrom
fix/63-user-binding-wins
Oct 1, 2026
Merged

hammadmajid merged 4 commits into
mainfrom
fix/63-user-binding-wins

Conversation

@hammadmajid

Copy link
Copy Markdown
Contributor

What changed

  • action.Merge no longer rejects a user Action on a key a built-in holds by default. The user binding wins and the built-in is left unbound, as if its key were "". So [actions.code] key = "enter" alone now works.
  • A user rebinding one built-in onto another built-in's key displaces that one too ([actions.remote] key = "enter" unbinds jump).
  • Two user-bound Actions on one key (and two built-ins both on a default key) is still an error; esc and ctrl+c still can't be bound.
  • Reversed the feat: Actions — run a command on the selected Project with a key #62 test that asserted a built-in clash is an error; replaced the feat(picker): Enter is the remappable jump Action #63 test that required moving jump first.
  • README: remapping Enter alone is enough.

Verification

  • New tests: Enter displacement, built-in rebound onto a built-in's key (both orders), two user Actions on enter fail.
  • gofmt -l . empty, go vet ./... clean, go test ./... passes except the known fish cases of TestScriptExecution (no TTY here).
  • Loaded a config with only [actions.code] key = "enter" run = "true" through config.Load with a temporary XDG_CONFIG_HOME (throwaway test, not committed): jump unbound, code on enter. Binary builds.

Refs #63

@hammadmajid
hammadmajid merged commit 2e0c753 into main Oct 1, 2026
2 of 3 checks passed
@hammadmajid
hammadmajid deleted the fix/63-user-binding-wins branch October 1, 2026 20:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant