{"record":{"id":"6bea023d2409d31d","repo":"junegunn/fzf","slug":"unsupported-style-preset-s","errorCode":null,"errorMessage":"unsupported style preset: %s","messagePattern":"unsupported style preset: (.+?)","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/options.go","lineNumber":3577,"sourceCode":"\tcase \"minimal\":\n\t\topts.ListBorderShape = tui.BorderUndefined\n\t\topts.InputBorderShape = tui.BorderUndefined\n\t\topts.HeaderBorderShape = tui.BorderUndefined\n\t\topts.FooterBorderShape = tui.BorderLine\n\t\topts.Preview.border = tui.BorderLine\n\t\topts.Preview.info = false\n\t\topts.InfoStyle = infoDefault\n\t\topts.Theme.Gutter = tui.NewColorAttr()\n\t\tspace := \" \"\n\t\topts.Gutter = &space\n\t\tempty := \"\"\n\t\topts.Separator = &empty\n\t\topts.Scrollbar = &empty\n\t\topts.CursorLine = false\n\tdefault:\n\t\ttokens := strings.SplitN(preset, \":\", 2)\n\t\tif tokens[0] != \"full\" {\n\t\t\treturn errors.New(\"unsupported style preset: \" + preset)\n\t\t}\n\t\tif len(tokens) == 2 && len(tokens[1]) > 0 {\n\t\t\tvar err error\n\t\t\tdefaultBorderShape, err = parseBorder(tokens[1], false)\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t}\n\n\t\tif defaultBorderShape != tui.BorderLine {\n\t\t\topts.ListBorderShape = defaultBorderShape\n\t\t}\n\t\topts.InputBorderShape = defaultBorderShape\n\t\topts.HeaderBorderShape = defaultBorderShape\n\t\topts.FooterBorderShape = defaultBorderShape\n\t\topts.Preview.border = defaultBorderShape\n\t\tif defaultBorderShape == tui.BorderLine {\n\t\t\topts.BorderShape = defaultBorderShape","sourceCodeStart":3559,"sourceCodeEnd":3595,"githubUrl":"https://github.com/junegunn/fzf/blob/bd4efa277b49ef34ca4025bff9b1a288e1980eff/src/options.go#L3559-L3595","documentation":"applyPreset only accepts the built-in style preset names (default, minimal, etc.) or a composite 'full[:border]' value. Any other string falls into the default case, where a SplitN on ':' must yield tokens[0] == \"full\", otherwise 'unsupported style preset: <preset>' is returned at options.go:3577.","triggerScenarios":"Passing --style with an unknown name, e.g. --style=compact or --style=fullx, or misspelling 'full' (e.g. --style=ful:rounded). tokens[0] != \"full\" triggers the error.","commonSituations":"Typos in preset names; expecting presets from other tools or older/newer fzf versions; forgetting that the colon-border suffix only applies to the 'full' preset.","solutions":["Use a supported preset name or the 'full[:border]' form","Check fzf --help for the list of valid presets","Verify spelling and the colon separator (e.g. --style=full:rounded)"],"exampleFix":"# before\nfzf --style=compact\n# after\nfzf --style=full:rounded","handlingStrategy":"validation","validationCode":"// Shell: whitelist presets\npresets='default minimal full'\ncase \"$style\" in default|minimal|full|full:*) ;; *) style='default' ;; esac\nexec fzf --style=\"$style\"","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Only use documented preset names or the 'full[:border]' composite","Validate style strings against a whitelist in shared config loaders","Watch the colon syntax for border variants (--style=full:rounded)"],"tags":["fzf","cli","style","option-parsing"],"backgroundTag":null,"analyzedSha":"bd4efa277b49ef34ca4025bff9b1a288e1980eff","analyzedAt":"2026-08-15T06:11:46.983Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}