stecman/symfony-console-completion
Adds Bash and Zsh tab-completion to Symfony Console apps. Zero-config completion for command names and options, plus hooks to customize argument/option value suggestions. Install via Composer and register the CompletionCommand to enable shell completion.
No functional changes. Thanks to @W0rma for sorting out Symfony 8 support!
No functional changes. Updates version constraint and some type hints as required.
No functional changes. Updates version constraint and some type hints as required.
Bug fix release for return type incompatibility with Console >=6.3
Adds support for symfony/console 6.x versions, but removes older Symfony compatibility due to API changes upstream.
No changes have been made to the completion API.
For older versions of Symfony and PHP, you can continue to use version 0.11.0. If major new features are added, these may be back-ported and released separately.
Simple bump to requirements to enable use with symfony/console 5.x versions.
No changes are needed to upgrade from 0.10.x.
program -v cmdname) breaking the detection of the command that should be completed for (#83)Adds support for quoted and escaped multi-word completions. No changes are required to upgrade from 0.9.0.
BASH users will need to regenerate/reload their shell hook for multi-word completions to work.
To avoid conflicts with application-level options defined by the library user, CompletionCommand now ignores custom application options. Options from Symfony's base Application class are retained.
No action is needed to upgrade to this version unless your subclass of CompletionCommand has been modified to use global options defined by your application. In this case you will need to override CompletionCommand::filterApplicationOptions to whitelist your options.
Adds Symfony Console 4.x to the versions supported. No changes are required to update to this version from 0.7.0.
Other changes:
symfony-console >= 3.2) are excluded from completion results_completion command to auto-complete it's arguments or their values_completion command against the program being completed for at the shell function's runtime (--multiple)This release fixes the completion handler to honour Symfony Console's default handling of unambiguous namespaced command abbreviations. The following are now equivalent (previously only the first would return results):
program deploy:run TAB
program d:r TAB
program de:r TAB
program d:ru TAB
Completions of command names that are not "namespaced" using colons are not affected by this change.
Thanks to @aik099 for this.
This release adds the ability to make a command responsible for its own completions with CompletionAwareInterface, thanks to @aik099.
This release adds ShellPathCompletion - a class with a similar signature to Completion that exits and triggers the calling shell's built-in path completion functionality when run.
The new functionality in this version depends on an update to shell hooks, so you'll need to re-initialise any hook after upgrading to this version. Existing hooks will continue to work correctly except with the deferred path completion.
The minimum-stability setting in composer.json was previously set to "dev". The option has been removed from the file so that the default "stable" setting is used.
This release is a re-fix of #6 thanks to @pjcdawkins as the fix released in 0.4.1 didn't function correctly. This fix reintroduces the shell selection option from 0.4.0 as --shell-type, which doesn't conflict with the Symfony framework application.
User interface BC break from 0.4.0: The --shell option introduced yesterday in 0.4.0 has been removed in favour of an argument to the existing --generate-hook option. This was required as the default console application in Symfony Framework has a global --shell option which conflicts with the one in this command, causing a logic exception. Forcing a shell type is now done as follows:
$ myprogram _completion --generate-hook zsh
This release adds a hook for using the module under ZSH, and makes it easy to add hooks for other shells. The appropriate hook is determined automatically at runtime, so no user profile changes should be needed for existing setups in most cases (see second note below).
The recommended way of parsing the completion hook in a shell has changed, though the old method will continue working for existing installations:
# New method (works under BASH and ZSH)
myprogram _completion --generate-hook | source /dev/stdin
# Old method (only works under BASH)
eval $(myprogram _completion --generate-hook)
In order to generate a script that will work in the current shell, the SHELL environment variable is parsed. Since this is a setting rather than a representation of current state, the --shell option may need to be specified in some circumstances.
This release primarily adds support for colon characters in completions.
BC break: public methods on CompletionHandler that allowed reading of command-line contents have been moved to CompletionContext. A completion handler's context is accessible through CompletionHandler::getContext().
How can I help you explore Laravel packages today?