OpenAutoComplete: Shell-agnostic, cross-platform autocomplete specification
21–27 of 27 posts
Re: OpenAutoComplete: Shell-agnostic, cross-platform autocomplete specification
#22Re: OpenAutoComplete: Shell-agnostic, cross-platform autocomplete specification
#23If we could get some standards defined and adopted, that would be amazing. There are so many CLI tools that could really benefit from auto-complete, but don't yet have it because it is a huge pain to write. Often times the auto-complete is significantly more work than the original tool was, in a couple cases I've written it was an order of magnitude more work to write the shell completion. I have tried writing auto-c…
Re: OpenAutoComplete: Shell-agnostic, cross-platform autocomplete specification
#24[1] https://github.com/alecthomas/kingpin#bashzsh-shell-completi...
Re: OpenAutoComplete: Shell-agnostic, cross-platform autocomplete specification
#25Earlier quoted context omitted.
> The problem I see is that Shellac is dynamic So OpenAutoComplete is purely static then? That makes it much less useful. Static completion is nice to have for tools you only use from time to time, or when fishing for that argument name, but if you don't know the name of an argument etc you will often have to use `man` anyway. The real benefit of completions are the dynamic ones, at least for me. If such a spec does…
Nope, it is not purely static. It is static-first (declarative), bot running a command and parsing its output or delegating the completion to some shell code is a planned feature.
More importantly, you should consider other metadata before you go to far; binaries could carry their own documentation, licensing, dependencies... What should be in and out of scope?
Re: OpenAutoComplete: Shell-agnostic, cross-platform autocomplete specification
#26Re: OpenAutoComplete: Shell-agnostic, cross-platform autocomplete specification
#27Can't you just parse --help in the background so we as developers don't need to write anything at all?
It actually invokes --help dynamically you hit `` and parses the output dynamically. Whereas other systems do it offline in a batch job, e.g. some fish completions.