Version 1.94 of ack, my source code searcher designed for programmers, has been released. This is the first release in almost
a year.
You can install it as [App::Ack](http://search.cpan.org/dist/ack) from the CPAN shell, or you can use one of the installation methods described at [http://betterthangrep.com/](http://betterthangrep.com/)
Here are the changes.
## Fixes
–man and –version now return with an exit code of 0. They
used to exit with a 1. Thanks to Bo Borgerson.
Fixed ack misbehavior when using –match or not specifying a regex:
ack –match Sue
cat foo | ack –perl
Fixed issue 74: analog to grep, ‘ack –count regex file’ now
only outputs the number of found matches, if only one file is
given.
Fixed issue 76: Giving both –line and a regex (with –match)
now leads to an error. The same is true for -f or -g in conjunction
with –match. (Torsten Blix)
Fixed issue 80: Piping into ack –count now works as expected.
ack always returned 0 when piped into, no matter how many matches
where found. (Torsten Blix)
Fixed issue 81: .ackrc now ignores leading/trailing whitespace.
(Torsten Blix)
## File type updates
Added –verilog, –vhdl and –clojure.
Files that match *.mk and *.mak as well as GNUmakefile are now included in
the ack filetype ‘make’ (issue 88).
Added RSpec’s .spec type to the –ruby list.
Added support for Go and Delphi.
Ignores Monotone’s _MTN directories.
Added .xsl to the list of –xml files.
## Enhancements
The –ignore-dir option now can ignore entire paths relative
to your current directory. Thanks to Nick Hooey. For example:
ack –ignore-dir=t/subsystem/test-data
Added –invert-file-match switch to negate the sense of the
-g/-G switches. Thanks, Lars Dieckow.
Updated the README to Markdown format. Thanks to Mark Szymanski
for the idea.
Added docs for -r, -R, –recurse options.
Added new switch –color-lineno and environment variable `ACK_COLOR_LINENO`,
which allow setting the line number color. (Marq Schneider)
Added option –show-types to output the types that ack considers
a file to have. (Torsten Blix)
`ack –count –no-filename regex` doesn’t output a list of numbers but a
sum of all occurences. This is NOT what grep does but is the more sensible
behavior.