{"record":{"id":"c2b33d67111627e0","repo":"junegunn/fzf","slug":"multiple-keys-specified","errorCode":null,"errorMessage":"multiple keys specified","messagePattern":"multiple keys specified","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/options.go","lineNumber":2215,"sourceCode":"\tcase \"bg-transform-query\":\n\t\treturn actBgTransformQuery\n\tcase \"bg-transform-search\":\n\t\treturn actBgTransformSearch\n\tcase \"trigger\":\n\t\treturn actTrigger\n\tcase \"search\":\n\t\treturn actSearch\n\t}\n\treturn actIgnore\n}\n\nfunc parseToggleSort(keymap map[tui.Event][]*action, str string) error {\n\tkeys, _, err := parseKeyChords(str, \"key name required\")\n\tif err != nil {\n\t\treturn err\n\t}\n\tif len(keys) != 1 {\n\t\treturn errors.New(\"multiple keys specified\")\n\t}\n\tkeymap[firstKey(keys)] = toActions(actToggleSort)\n\treturn nil\n}\n\nfunc strLines(str string) []string {\n\treturn strings.Split(strings.TrimSuffix(str, \"\\n\"), \"\\n\")\n}\n\nfunc parseSize(str string, maxPercent float64, label string) (sizeSpec, error) {\n\tvar spec = sizeSpec{}\n\tvar val float64\n\tvar err error\n\tpercent := strings.HasSuffix(str, \"%\")\n\tif percent {\n\t\tif val, err = atof(str[:len(str)-1]); err != nil {\n\t\t\treturn spec, err\n\t\t}","sourceCodeStart":2197,"sourceCodeEnd":2233,"githubUrl":"https://github.com/junegunn/fzf/blob/bd4efa277b49ef34ca4025bff9b1a288e1980eff/src/options.go#L2197-L2233","documentation":"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.","triggerScenarios":"`--bind-toggle-sort 'a,b'` (two keys given), or an empty/edge string that yields a count != 1.","commonSituations":"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.","solutions":["Pass a single key: `--bind-toggle-sort ctrl-t`","If several keys must toggle sort, repeat the option once per key"],"exampleFix":"# before\nfzf --bind-toggle-sort 'ctrl-t,alt-s'\n# after\nfzf --bind-toggle-sort ctrl-t --bind-toggle-sort alt-s","handlingStrategy":"validation","validationCode":"# bash: exactly one key for --bind-toggle-sort\n[ \"$(IFS=','; set -- $1; echo $#)\" -eq 1 ] || { echo \"one key only\" >&2; exit 1; }\nfzf --bind-toggle-sort \"$1\"","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Remember --bind-toggle-sort takes a single chord, unlike --bind","Repeat the option for each additional key"],"tags":["fzf","go","cli","keybinding","sorting"],"backgroundTag":null,"analyzedSha":"bd4efa277b49ef34ca4025bff9b1a288e1980eff","analyzedAt":"2026-08-15T06:11:46.983Z","schemaVersion":2},"datasetVersion":"2026-08-15T17:31:12.345Z"}