The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.


App::Ack - A container for functions for the ack program


Version 1.66


If you want to know about the ack program, see the ack file itself.

No user-serviceable parts inside. ack is all that should use this.




Standard filter to pass as a File::Next descend_filter. It returns true if the directory is any of the ones we know we want to skip.

filetypes( $filename )

Returns a list of types that $filename could be. For example, a file foo.pod could be "perl" or "parrot".

The filetype will be undef if we can't determine it. This could be if the file doesn't exist, or it can't be read.

It will be 'skipped' if it's something that ack should always ignore, even under -a.

is_searchable( $filename )

Returns true if the filename is one that we can search, and false if it's one that we should ignore like a coredump or a backup file.

options_sanity_check( %opts )

Checks for sane command-line options. For example, -l doesn't make sense with -C.

warn( @_ )

Put out an ack-specific warning.

die( @_ )

Die in an ack-specific way.


Returns a list of all the types that we can detect.


Dumps the help page to the user.


Display the filetypes help subpage.

get_version_statement( $copyright )

Returns the version information for ack.

Prints the version information for ack.

Return the copyright for ack.


Set default colors, load Term::ANSIColor on non Windows platforms


File type filter, filtering based on the wanted file types


File filter for the -a option

Main search method


Apply the default options


True/False - are the filetypes set?


True/False - are the filetypes unset?

Prints all the files returned by the iterator. If $one is set, stop after the first.

Prints all the files returned by the iterator matching $regex. If $one is set, stop after the first.