Skip to content

feat(flycomp): Implement man page parsing for building completions#682

Open
HalFrgrd wants to merge 1 commit into
masterfrom
man-page-parser-3099268086323963229
Open

feat(flycomp): Implement man page parsing for building completions#682
HalFrgrd wants to merge 1 commit into
masterfrom
man-page-parser-3099268086323963229

Conversation

@HalFrgrd
Copy link
Copy Markdown
Owner

Adds support for parsing man pages to generate command completion specifications. Before attempting to execute --help on a binary, flycomp will now try to run man -w <command>, decompress the output if necessary, and use a series of regex patterns to extract and format the OPTIONS and DESCRIPTION sections into Command struct parameters.


PR created automatically by Jules for task 3099268086323963229 started by @HalFrgrd

This implements a man page parser for `flycomp` to generate command
specifications by analyzing man pages before falling back to running `--help`.
It adds the `regex` crate for pattern matching to extract `OPTIONS` and
`DESCRIPTION` sections and parse short/long flags, replicating similar
heuristics from the fish shell man page parsing script. It also introduces
a test suite using ~20 uncompressed common man pages to verify option
extraction.
@google-labs-jules
Copy link
Copy Markdown
Contributor

👋 Jules, reporting for duty! I'm here to lend a hand with this pull request.

When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down.

I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job!

For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with @jules. You can find this option in the Pull Request section of your global Jules UI settings. You can always switch back!

New to Jules? Learn more at jules.google/docs.


For security, I will only act on instructions from the user who triggered this task.

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