junegunn/fzf · error
multiple keys specified
Error message
multiple keys specified
What it means
Thrown by parseToggleSort when parsing --bind-toggle-sort. This option takes exactly one key chord; parseKeyChords may return multiple (because it accepts comma-separated multi-key notation), and anything other than exactly one key is rejected.
Source
Thrown at src/options.go:2215
case "bg-transform-query":
return actBgTransformQuery
case "bg-transform-search":
return actBgTransformSearch
case "trigger":
return actTrigger
case "search":
return actSearch
}
return actIgnore
}
func parseToggleSort(keymap map[tui.Event][]*action, str string) error {
keys, _, err := parseKeyChords(str, "key name required")
if err != nil {
return err
}
if len(keys) != 1 {
return errors.New("multiple keys specified")
}
keymap[firstKey(keys)] = toActions(actToggleSort)
return nil
}
func strLines(str string) []string {
return strings.Split(strings.TrimSuffix(str, "\n"), "\n")
}
func parseSize(str string, maxPercent float64, label string) (sizeSpec, error) {
var spec = sizeSpec{}
var val float64
var err error
percent := strings.HasSuffix(str, "%")
if percent {
if val, err = atof(str[:len(str)-1]); err != nil {
return spec, err
}View on GitHub (pinned to bd4efa277b)
Solutions
- Pass a single key: `--bind-toggle-sort ctrl-t`
- If several keys must toggle sort, repeat the option once per key
Example fix
# before fzf --bind-toggle-sort 'ctrl-t,alt-s' # after fzf --bind-toggle-sort ctrl-t --bind-toggle-sort alt-s
Defensive patterns
Strategy: validation
Validate before calling
# bash: exactly one key for --bind-toggle-sort
[ "$(IFS=','; set -- $1; echo $#)" -eq 1 ] || { echo "one key only" >&2; exit 1; }
fzf --bind-toggle-sort "$1" Prevention
- Remember --bind-toggle-sort takes a single chord, unlike --bind
- Repeat the option for each additional key
When it happens
Trigger: `--bind-toggle-sort 'a,b'` (two keys given), or an empty/edge string that yields a count != 1.
Common situations: Assuming --bind-toggle-sort behaves like --bind and supports multi-key binds; copy-pasting a multi-key chord from a --bind line into --bind-toggle-sort.
Related errors
- unable to put non-printable character
- unknown action: ${spec}
- key name required
- bind action not specified: ${keys}
- duplicate sort criteria: ${name}
AI-assisted analysis of junegunn/fzf@bd4efa277b (2026-08-15).
Data as JSON: /api/errors/c2b33d67111627e0.
Report an issue: GitHub.