NAME
Complete::Module - Complete Perl module names
VERSION
This document describes version 0.02 of Complete::Module (from Perl distribution Complete-Module), released on 2014-06-24.
SYNOPSIS
use Complete::Module qw(complete_module);
my $res = complete_module(word => 'Te');
# -> ['Template', 'Template::', 'Test', 'Test::', 'Text::']
FUNCTIONS
complete_module(%args) -> any
Complete Perl module names.
For each directory in @INC
(coderefs are ignored), find Perl modules and module prefixes which have word
as prefix. So for example, given Te
as word
, will return e.g. [Template, Template::, Term::, Test, Test::, Text::]
. Given Text::
will return [Text::ASCIITable, Text::Abbrev, ...]
and so on.
This function has a bit of overlapping functionality with Module::List
, but this function is geared towards shell tab completion. Compared to Module::List
, here are some differences: 1) list modules where prefix is incomplete; 2) interface slightly different; 3) (currently) doesn't do recursing.
Arguments ('*' denotes required arguments):
find_pm => bool (default: 1)
Whether to find .pm files.
find_pmc => bool (default: 1)
Whether to find .pmc files.
find_pod => bool (default: 1)
Whether to find .pod files.
find_prefix => bool (default: 1)
Whether to find module prefixes.
separator => str (default: "::")
Instead of the default
::
, output separator as this character. Colon is problematic e.g. in bash when doing tab completion.word* => str
Return value:
HOMEPAGE
Please visit the project's homepage at https://metacpan.org/release/Complete-Module.
SOURCE
Source repository is at https://github.com/sharyanto/perl-Complete-Module.
BUGS
Please report any bugs or feature requests on the bugtracker website https://rt.cpan.org/Public/Dist/Display.html?Name=Complete-Module
When submitting a bug or request, please include a test-file or a patch to an existing test-file that illustrates the bug or desired feature.
AUTHOR
Steven Haryanto <stevenharyanto@gmail.com>
COPYRIGHT AND LICENSE
This software is copyright (c) 2014 by Steven Haryanto.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.