0.325 2022-10-07 Released-By: PERLANCAR; Urgency: medium
- Support Perl scripts that use
CLI::MetaUtil::Getopt::Long{,::Complete}.
0.324 2022-08-11 Released-By: PERLANCAR; Urgency: low
- No functional changes.
- Update doc about other types of scripts that are supported
(Getopt::Long-based, Getopt::Long::EvenLess-based,
Getopt::Long::Descriptive-based, Getopt::Std-based).
0.323 2022-08-10 Released-By: PERLANCAR; Urgency: medium
- Adjust to Getopt::Long::Dump 0.110+ (spec returned is not hashref but
arrayref).
0.322 2020-04-03 Released-By: PERLANCAR; Urgency: medium
- Suggest putting sourcing in /etc/profile.d/shcompgen.sh instead
of /etc/bash.bashrc when /etc/profile.d/ exists, so we can be
loaded after bash_completion and our default completion handler
is set instead of being overriden by bash_completion.
- Remove the use of smartmatch.
0.321 2018-02-08 Released-By: PERLANCAR
- [Bugfix] Install default completion rule with -o bashdefault
option as well to enable e.g. shell variable and ~username
completion.
0.320 2017-08-10 Released-By: PERLANCAR
- Support Getopt::Long::EvenLess-based scripts.
0.31 2017-07-10 Released-By: PERLANCAR
- No functional changes.
- Replace Log::Any with Log::ger.
0.30 2016-12-03 Released-By: PERLANCAR
- Detect Getopt::Long::More-based scripts.
0.29 2016-11-03 Released-By: PERLANCAR
- Support Getopt::Std-based scripts.
- [Bugfix] Don't write to bash-completion's dir, use our own dir. In our
loader (_shcompgen_loader shell function installed as complete -D) we
detect whether bash-completion system is active, and if so then we
also search for completion scripts in bash-completion dirs
(/etc/bash_completion.d, /usr/share/bash-completion/completions) in
addition to our dir because there is only one default loader and we
want to support bash-completion. But we also put our completion
scripts into bash-completion dir by default. This means, when
bash-completion is not active, we don't load our own generated
completion scripts. So now, the default for global dir for bash is
/etc/bash/completions instead of /etc/bash_completion.d/ . Note that
this is not an issue in zsh or fish because they have their fpath
mechanism so we don't need to create our own default loader.
0.28 2016-10-28 Released-By: PERLANCAR
- Add shortcut options --zsh, --fish, --tcsh.
- Support Getopt::Long::Descriptive-based scripts.
- Add option --per-option to enable generating prettier completion
scripts when possible.
- Some bug fixes.
0.27 2016-10-26 Released-By: PERLANCAR
- fish: Use general form ('complete -c CMD -a (...)') instead of
defining per-option completion, so now all detectable scripts
work in fish, albeit without highlighted/description of each
option names.
0.26 2016-10-26 Released-By: PERLANCAR
- Re-upload.
0.25 2016-10-26 Released-By: PERLANCAR
- [Enhancement] Support completion for Getopt::Long scripts for all
shells (previously only for fish).
- [Bugfix] list: was empty when shell is not bash
- A couple of other tweaks and fixes.
0.24 2016-10-25 Released-By: PERLANCAR
- No functional changes.
- [doc] Document known issues (zsh, fish, tcsh).
0.23 2016-10-25 Released-By: PERLANCAR
- [Enhancement] Add tcsh support.
0.22 2016-10-25 Released-By: PERLANCAR
- [Enhancement] [Experimental] Add support for zsh.
- [doc] Restore note about 'init' and 'generate' being run during
distribution installation, because shell detection has been modified
(bash is forced).
0.21 2016-10-25 Released-By: PERLANCAR
- Use shell=bash when running under make (detected as bourne).
- [Bugfix] init: didn't create completion scripts dir on fish.
0.20 2016-10-21 Released-By: PERLANCAR
- [Enhancement] Add support for fish shell.
- [Enhancement] Add subcommands (for utility/testing): guess-shell,
detect-prog.
- [doc] Remove note about 'init' and 'generate' being run the first time
it's installed because it doesn't work usually because we detect shell
as 'bourne' under make and bail.
- generate: Add option --stdout.
0.19 2016-07-12 Released-By: PERLANCAR
- [Bugfix] Don't remove completion script we created in the same
run (this fixes e.g. 'shcompgen _hr hr' when hr changes from
Perinci::CmdLine::Lite to Perinci::CmdLine::Inline where
previously the completion script created by processing _hr would
be immediately deleted when hr results in negative).
0.18 2016-07-12 Released-By: PERLANCAR
- [Bugfix] Perinci::CmdLine::Inline-based scripts currently cannot
self-complete.
0.17 2016-04-30 Released-By: PERLANCAR
- Avoid perl undef warning.
0.16 2016-04-30 Released-By: PERLANCAR
- No functional changes.
- [doc] Update documentation: remove EARLY RELEASE label, document
about detecting Getopt::Long::Subcommand-based scripts, update
dzil plugin name in mention.
0.15 2016-02-29 Released-By: PERLANCAR
- generate: Add option --remove.
- Use Perinci::CmdLine::Util's detect_perinci_cmdline_script to be
able to handle # NO_PERINCI_CMDLINE_SCRIPT etc.
0.14 2016-01-29 Released-By: PERLANCAR
- Use command_args=... attribute in shcompgen-hint text fragment.
0.13 2015-09-17 Released-By: PERLANCAR
- Adjust to Complete::Util 0.36 (complete_file() &
complete_program() split to Complete-File & Complete-Program).
0.12 2015-09-03 Released-By: PERLANCAR
- No functional changes.
- [dist] Move spec prereqs from RuntimeRequires to
DevelopRecommends to reduce deps but still allow indicating spec
requirement.
0.11 2015-08-17 Released-By: PERLANCAR
- Make sure we add result for all programs being processed, so we
get the appropriate final status code (e.g. 207 partial success).
0.10 2015-08-17 Released-By: PERLANCAR
- No functional changes.
- Switch from Log::Any to Log::Any::IfLOG.
0.09 2015-02-11 Released-By: PERLANCAR
- Support Perinci::CmdLine::Classic and Getopt::Long::Subcommand.
0.08 2014-12-20 Released-By: PERLANCAR
- Simplify completion routine for remove(), adjust to periscomp
0.68+.
0.07 2014-12-17 Released-By: PERLANCAR
- Tweak/fix init script for bash: forgot to return 124 when
completion script exists (so user still needed extra tab), don't
use bash-completion scripts when bash-completion is not active.
0.06 2014-12-14 Released-By: PERLANCAR
- No functional changes.
- Rebuild with new version of DZP::shcompgen::InitOnInstall (show output
of init, though most users won't see this because they will install
using 'cpanm' without the -v option).
0.05 2014-12-14 Released-By: PERLANCAR
- Support multiple global/per-user dirs (e.g. bash has global completion
scripts dir in /usr/share/bash-completion/completions as well as
/etc/bash_completion.d).
- [ux] Run 'shcompgen init' and 'shcompgen generate --replace' during
install, for user's convenience.
- [Bugfix] Regression: File::Which *was* needed, but removed.
- [Bugfix] in shcompgen.bashrc: Return 124 instead of 0, otherwise we'll
need an extra Tab when completing a new command which is annoying
(UPDATE: but extra Tab is still needed?)
- Tweak completion routines.
0.04 2014-12-13 Released-By: PERLANCAR
- [Bugfix] Use the correct completee.
- Add completion for 'generate'.
- Add completion for 'remove'.
0.03 2014-12-13 Released-By: PERLANCAR
- [Bugfix] Fix typo that caused per-user completion directory not
created during init (despite the success message).
- Minor tweaks.
0.02 2014-12-13 Released-By: PERLANCAR
- Rename module/dist from App-ShellCompletionInstaller to App-shcompgen.
- [ux] Change interface to use subcommands.
- [Bugfix] Fix loader function for bash: forgot to pass argument to
_completion_loader.
- [ux] Add subcommand: 'init', to help ease initialization.
0.01 2014-12-12 Released-By: PERLANCAR
- First release, an evolution from App-BashCompletionProg and
App-BashCompletionF; this one supports multiple shells and works with
shells' standard completion scripts layout. Another advantage is the
completion scripts can be activated on the current shell (instead of
waiting to start a new shell) because we use on-demand loading (e.g.
'complete -D' on bash). Early release though, only supports bash.