1 ==========================================
2 Emacs Interface to command-line tool ack
3 ==========================================
5 From http://betterthangrep.com/
7 ack is a tool like grep, designed for programmers with large trees
8 of heterogeneous source code.
10 ack is written purely in Perl, and takes advantage of the power of
11 Perl's regular expressions.
13 Feature requests and bug reports are welcome. Thanks.
18 - Neither ``--nogroup`` nor ``--noheading`` is required
19 - Handle colors using the standard library ``ansi-color.el``
20 - Completion for ack options while reading from the minibuffer
21 - Support both emacs 23 and 24
26 .. figure:: http://i.imgur.com/a72Ap.png
28 :target: http://i.imgur.com/a72Ap.png
29 :alt: ack-emacs23-1.png
31 ``ack --column 'ack is.*tool'``
33 .. figure:: http://i.imgur.com/U2vFz.png
35 :target: http://i.imgur.com/U2vFz.png
36 :alt: ack-emacs23-2.png
38 ``ack --column --nogroup --nocolor 'ack is.*tool'``
43 Place ``ack.el`` in the ``load-path`` and add to your init file::
49 (autoload 'ack "ack" nil t)
54 Place ``pcmpl-ack.el`` in the ``load-path`` and add::
56 (autoload 'pcomplete/ack "pcmpl-ack")
57 (autoload 'pcomplete/ack-grep "pcmpl-ack")
59 to your init file. After this you will be able complete ``ack``
60 options while ``M-x ack`` or in shell/eshell.
65 - ``M-x ack`` and provide a pattern to search.
66 - ``C-u M-x ack`` like ``M-x ack`` but allow you to select a
69 While reading ack command and args from the minibuffer, the following
70 key bindings may be useful:
72 - ``M-I`` => insert a template for case-insensitive file name search
73 - ``TAB`` => completion for ack options