You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I wonder if you would be interested in some form of cooperation with the picocli project. I believe JLine and picocli are a perfect match for users developing interactive shell applications with some set of commands, where each command may have options, positional parameters and subcommands.
As an example of what is possible, Picocli currently has these modules:
These modules have a PicocliJLineCompleter that show context-sensitive completion candidates for options, option parameters and subcommands of a set of picocli commands. (The readme of each module has an example.) Applications that use picocli to define their commands no longer need to hand-code Completers for their commands and options. (An early version of this is used in the Micronaut CLI.)
This is nice, but looking at #254 , I realize that much more is possible. I love that demo and I would love to hook it into what picocli can offer!
The picocli object model is quite rich. It can provide all the details displayed in the status bar. For example, it can generate a command synopsis, and provide descriptions for a command and its options, using ANSI colors. When the demo shows a dropdown with multiple subcommands or options, the status bar could query the picocli object model to show the description for all completion candidates, which would help users select the desired option.
But this is just one idea. I am sure there are many ways in which JLine and picocli can be combined to create interesting functionality.
Please let me know if this sounds interesting.
Remko
The text was updated successfully, but these errors were encountered:
This is certainly very interesting. Investigating picocli is actually on my todo list because I saw you already support Substrate VM (https://picocli.info/picocli-on-graalvm.html). That's definitely something I'd like to try with JLine 3, though not sure how well we can run on Substrate VM, since JLine does fancy things (using either external processes or jni...).
Fwiw, #254 is not JLine powered, but that would be a goal, if time permits.
Anyway, I don't have much free time atm, but that's definitely on my todo list !
Dear JLine maintainers,
I wonder if you would be interested in some form of cooperation with the picocli project. I believe JLine and picocli are a perfect match for users developing interactive shell applications with some set of commands, where each command may have options, positional parameters and subcommands.
As an example of what is possible, Picocli currently has these modules:
These modules have a
PicocliJLineCompleter
that show context-sensitive completion candidates for options, option parameters and subcommands of a set of picocli commands. (The readme of each module has an example.) Applications that use picocli to define their commands no longer need to hand-code Completers for their commands and options. (An early version of this is used in the Micronaut CLI.)This is nice, but looking at #254 , I realize that much more is possible. I love that demo and I would love to hook it into what picocli can offer!
The picocli object model is quite rich. It can provide all the details displayed in the status bar. For example, it can generate a command synopsis, and provide descriptions for a command and its options, using ANSI colors. When the demo shows a dropdown with multiple subcommands or options, the status bar could query the picocli object model to show the description for all completion candidates, which would help users select the desired option.
But this is just one idea. I am sure there are many ways in which JLine and picocli can be combined to create interesting functionality.
Please let me know if this sounds interesting.
Remko
The text was updated successfully, but these errors were encountered: