Revision history for Perinci-Sub-Complete
0.57 2014-07-19 (SHARYANTO)
- No functional changes.
- Adjust to Complete::Bash 0.06.
0.56 2014-07-18 (SHARYANTO)
- [Bugfix] Excluded the option we're trying to complete ('cmd --help^'
or 'cmd -h^' didn't work because we excluded that option from the
list!).
0.55 2014-07-18 (SHARYANTO)
- Adjust to Perinci::Sub::GetArgs::Argv 0.44, which makes it more
convenient for us to do completion (get_args_from_argv() returns the
result from gen_getopt_long_spec_from_meta(), which contains all
sorts of goodies ready for use, like func.opts_by_arg,
func.opts_by_common, etc.
[INCOMPATIBLE CHANGES]
- To make it easy to work with the new get_args_from_argv(),
'common_opts' has been changed to be in the same format that that
function expects, which is a hash of Getopt::Long opt spec &
handlers.
0.54 2014-07-18 (SHARYANTO)
- No functional changes.
- Adjust to Complete::Bash 0.04.
0.53 2014-07-02 (SHARYANTO)
[INCOMPATIBLE CHANGES]
- Rename function shell_complete_arg() to complete_cli_arg() for
consistency (all completion routine now uses /^complete_/).
0.52 2014-07-02 (SHARYANTO)
- No functional changes.
- Adjust to Complete::Util 0.12.
0.51 2014-07-01 (SHARYANTO)
- No functional changes.
- [Bugfix] Avoid Perl autovivification which cause an arg that has no
schema to have a schema of [].
0.50 2014-06-29 (SHARYANTO)
- No functional changes.
- Re-upload.
0.49 2014-06-29 (SHARYANTO)
- shell_complete_args() allows completion routines to return hash
(completion reply + metadata) instead of just array (completion
reply) (Rinci 1.1.52).
0.48 2014-06-27 (SHARYANTO)
[INCOMPATIBLE CHANGES]
- shell_complete_args() now returns hashref instead of plain arrayref,
to return extra metadata to give hints to formatter (like
Complete::Util's format_shell_completion()) on how to properly
display/escape special characters to the shell. For example, if we're
completing environment variables (type=>'env') we don't need to
escape the dollar sign.
0.47 2014-06-26 (SHARYANTO)
- No functional changes.
- [Bug fix] Remove perl undef warning when arg doesn't have schema.
0.46 2014-06-25 (SHARYANTO)
- [Bug fix] Forgot to remove complete_array() in
complete_arg_{val,elem}().
0.45 2014-06-25 (SHARYANTO)
[INCOMPATIBLE CHANGES]
- No longer filter completion routine with complete_array(), it's now
up to the routine to filter it, this allows case-insensitive matching
or spelling correction.
0.44 2014-06-25 (SHARYANTO)
- No functional changes.
- Use Complete::Util which replaces SHARYANTO::Complete::Util.
0.43 2014-06-19 (SHARYANTO)
[ENHANCEMENTS]
- [silly] complete_from_schema(): Do a digit-by-digit completion for
float.
0.42 2014-06-19 (SHARYANTO)
[ENHANCEMENTS]
- [tweak] Don't switch to complete arg name when word starts with '-'
but opt before word expects value. For example, '--bool -^' will
switch to completing arg name, but '--str -^' will still try to
complete str's value because it expects value.
- [silly] complete_from_schema(): Do a digit-by-digit completion for
int.
0.41 2014-06-19 (SHARYANTO)
[BUG FIXES]
- Fix completion of array argument's element ('--ary ^' not yet
completed as element).
0.40 2014-06-19 (SHARYANTO)
- Third attempt, only riap_server_url is needed, riap_uri is optional
because the former can contain the latter.
0.39 2014-06-18 (SHARYANTO)
- Second attempt, we also need riap_server_url.
0.38 2014-06-18 (SHARYANTO)
[ENHANCEMENTS]
- Add riap_client & riap_uri arguments to
shell_complete_args,complete_arg_{val,elem} to allow requesting to
server when completion/element_completion coderef has been cleansed
into string (currently no tests yet).
0.37 2014-06-18 (SHARYANTO)
[ENHANCEMENTS]
- Don't die if arg spec's completion is not a coderef, decline instead.
0.36 2013-11-14 (SHARYANTO)
[ENHANCEMENTS]
- Implement argument element completion (Rinci 1.1.42).
- Add functions: complete_arg_elem, complete_from_schema.
[BUG FIXES]
- complete_arg_val() now returns undef when it can't find completion
from schema, so shell_complete_arg() can fallback to files.
- Complete greedy argument names, always (allow us to complete e.g.
--file F1 --file F2 etc).
0.35 2013-11-08 (SHARYANTO)
[BUG FIXES]
- No functional changes. Avoid CT failure reports by forcing
Perinci::Sub::Wrapper version.
0.34 2013-11-05 (SHARYANTO)
[ENHANCEMENTS]
- shell_complete_arg(): Accept 'extra_completer_args' argument to pass
to custom completion routines.
- Pass 'parent_args' argument to all custom completion routines
(previously only 'custom_completer' gets it, now
'custom_arg_completer' and 'completion' arg spec also get it).
- complete_arg_val(): observe 'is' clause.
- complete_arg_val(): complete [0, 1] for bool type.
[BUG FIXES]
- A few bug fixes.
0.33 2013-11-04 (SHARYANTO)
[ENHANCEMENTS]
- Allow 'custom_arg_completer' to decline with undef, just like
'custom_completer'.
[INCOMPATIBLE CHANGES]
- 'custom_arg_completer' is now expected to return arrayref instead of
list, just like the other completion routines.
0.32 2013-11-04 (SHARYANTO)
[REFACTORING]
- Rename dist from Perinci-BashComplete to Perinci-Sub-Complete because
I want to extract non-Perinci-related routines to another module and
I want to support other shells (someday).
- Split generic (non-Rinci/Riap-related) functions to
SHARYANTO-Complete-Util.
- Rename some functions.
0.31 2013-09-08 (SHARYANTO)
- No functional changes. Remove references to Perinci::Access::InProcess.
0.30 2013-08-10 (SHARYANTO)
[ENHANCEMENTS]
- Allow other line parser to be used, e.g. one that doesn't call out to
bash (currently undocumented).
0.30 2013-08-10 (SHARYANTO)
[ENHANCEMENTS]
- Allow other line parser to be used, e.g. one that doesn't call out to
bash (currently undocumented).
0.29 2012-06-22 (SHARYANTO)
[ENHANCEMENTS]
- Support --dry-run for function which has dry_run feature
0.28 2012-03-22 (SHARYANTO)
- Support with.dot function arguments
- Normalize --foo_bar into --foo-bar
0.27 2012-03-16 (SHARYANTO)
[FIXES]
- file completion inserted "." on every file/dir on the current dir.
- file completion cut intermediate dirs ("dir/a" completed into ["aa",
"ab"] instead of ["dir/aa", "dir/ab"]
[ENHANCEMENTS]
- Add trick in dir completion so that a single "dir/" match won't cause
bash to insert space after the "/".
0.26 2012-03-07 (SHARYANTO)
- No functional changes. Deal with test failure reports from CT (change
'replace $HOME with ~' test in t/_line_to_argv.t into a warning, as I
don't know the workaround yet).
0.25 2012-03-04 (SHARYANTO)
[BUG FIXES]
- More fixes to complete_file() so it more closely resembles bash
(symlink traversal is still different though).
0.24 2012-03-04 (SHARYANTO)
[BUG FIXES]
- complete_file() now behaves more like bash (though not nearly
so, due to glob()'s quirks): First it works with files/dirs outside
curdir. When word is '' or ends with '/', it uses readdir() to
include dotfiles. Otherwise it treats word as wildcard and glob() it.
0.23 2012-03-03 (SHARYANTO)
- No functional changes. Change implementation of _line_to_argv() from
calling Perl binary and dumping @ARGV, to using bash's own "$@". On
my Atom N570 netbook, this shaves time from about 0.1s to 0.03s.
0.22 2012-02-28 (SHARYANTO)
- No functional changes. Fix to avoid numerous CT failure reports
(calling perl binary using $^X instead of the hardcoded "perl"). I
haven't quoted $^X, hope that won't cause much trouble though.
0.21 2012-02-28 (SHARYANTO)
- Handle argument name completion of one-letter args and cmdline_aliases.
0.20 2012-02-27 (SHARYANTO)
- No functional changes. Make _line_to_argv() report errors (lots of
failure reports from CPAN Testers with apparently undef result from
_line_to_argv()).
0.19 2012-02-23 (SHARYANTO)
- Rename distribution from Sub-Spec-BashComplete to Perinci-BashComplete.
Follow Rinci v1.1 specification.
0.18 2011-11-23 (SHARYANTO)
- No functional changes. _parse_schema() moved from Data::Sah::Util to
normalize_schema() in Data::Sah.
0.17 2011-10-31 (SHARYANTO)
- No functional changes. _parse_schema() is moved from Sub::Spec::Utils
to Data::Sah::Util.
0.16 2011-08-25 (SHARYANTO)
- No functional changes. Adjust to Sub::Spec 0.15.
0.15 2011-07-26 (SHARYANTO)
- No functional changes. Adjust to use the new Sub::Spec::GetArgs::Argv.
0.14 2011-05-31 (SHARYANTO)
- No functional changes. Skip tests on systems which don't have bash.
0.13 2011-02-23 (SHARYANTO)
- Add missing dependency: Log::Any [CT].
0.12 2011-02-23 (SHARYANTO)
- Add missing dependency: Sub::Spec::CmdLine [CT].
0.11 2011-02-22 (SHARYANTO)
- Use Sub::Spec::Utils.
0.10 2011-02-19 (SHARYANTO)
- Incompatible change: arg_complete & custom_completer now expected to
return arrayref instead of list.
- More fixes for remaining_words for custom_completer.
0.09 2011-02-18 (SHARYANTO)
- Handle backspaced whitespace.
- Don't escape output (let completer program do it) to avoid double
escaping.
- Fix cword & remaining_words for custom_completer.
0.08 2011-02-18 (SHARYANTO)
- Backslash-escape output.
- Spec: cmdline_aliases renamed to arg_aliases.
0.07 2011-02-17 (SHARYANTO)
- bash_complete_spec_arg(): Also add --nofoo completion for bool
cmdline_aliases.
0.06 2011-02-17 (SHARYANTO)
- bash_complete_spec_arg(): Add 'custom_completer' option, parse
'cmdline_aliases' in arg spec.
0.05 2011-02-17 (SHARYANTO)
- Fix cword counting.
0.04 2011-02-16 (SHARYANTO)
- Small fix on detecting arg name/value.
0.03 2011-02-16 (SHARYANTO)
- Complete arg name instead of value if user type '-' (indicates he/she
wants arg name).
0.02 2011-02-16 (SHARYANTO)
- Fix dependency version (requires Sub::Spec::CmdLine 0.10+).
0.01 2011-02-16 (SHARYANTO)
- First release.