junegunn / junegunn/fzf

Enhancement request: `--preview-json` to read previews from a simple key-value object instead of spawning an external process

Open
#4,601 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
83k
Forks
2.9k
Avg merge
17h 8m
Merged PRs (30d)
10

Description

PSFzf uses fzf to power tab-completion menus in PowerShell. Tab completions in PowerShell are rich objects generated in-memory with a few fields:
`CompletionText`, `ListItemText`, `ResultType`, `ToolTip`

`ToolTip` often contains useful metadata. For example, for commands, it contains usage information:
*Here is a screenshot of PSReadLine's `MenuCompletion` which shows completion entries as an interactive menu. No fuzzy matching though :( The ToolTip string is the multiline blue text*
Image

To expose these tooltips in the preview window, we need to provide a process that can look up each tooltip by name, but all the info is already in-memory. Could there be some way to pass this data structure to `fzf` either to stdin, or via a temp file referenced by `--preview-json-file` or similar?

Contributor guide

No contributing guide indexed for this repository

Research direction

No files, tests, or implementation entry points are named. Start by clarifying how fzf should accept the in-memory PowerShell completion fields, including whether stdin or a temporary file is intended; done means preview tooltips can be shown without spawning an external lookup process.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, powershell
Domain
cli
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.