

VimAck: A port of TextMate's Find-in-Project feature for MacVim.app - jtaby
https://github.com/jtaby/VimAck

======
spicycode
Just use ack.vim [1]. It works from any vim instance and is a standard vim
plugin.

[1] <http://www.vim.org/scripts/script.php?script_id=2572>

~~~
jtaby
The problem with a native vim window is that it doesn't give you much
affordance in terms of UI, you can't collapse files that have a lot of
matches, hard to remember options and syntax for regex/case sensitivity, etc.

~~~
smosher
The collapsing sounds like a valid complaint. The rest falls on deaf ears for
this vim user.

I would expect most vim users to feel the same since those complaints are
either considered features or the common barrier to entry that vim has anyway.
Am I wrong?

~~~
jtaby
You can consider it a matter of preference, I suppose. I prefer having a GUI
file browser over NERDTree for similar reasons as I outlined before. VimAck
has the same line of thinking behind it.

~~~
smosher
Yeah, I totally get that. I'm just assuming that the average vim user is going
to prefer things to work vim-native over anything else.

------
zefhous
This is a great start!

I have ack.vim installed, but I frequently open the project in TextMate to
search with TM's AckMate bundle. Project search one of the last things with
Vim that I haven't had a good solution to.

ack.vim works, but it blocks vim so you can't do anything while it's working,
and also the quickfix window is not ideal for a lot of uses.

------
beaumartinez
From the screencast[1] it looks like this doesn't support keyboard
navigation―why is the search an OS-native window and not a Vim window?

[1]
[https://github.com/jtaby/VimAck/raw/master/resources/vimack_...](https://github.com/jtaby/VimAck/raw/master/resources/vimack_demo.mov)

~~~
dchest
I use ack.vim, which outputs to vim's quickfix window:
<https://github.com/mileszs/ack.vim>

------
mrinterweb
This looks nice, but I prefer the functionality provided in vim. In your
.vimrc, you can set grepprg to ack, grep, or (my favorite super fast search)
git grep. Then if you want to display the results just type ":copen".

Example: "set grepprg=git\ grep\ -n"

------
fictorial
Nice work. I am using lusty juggler's buffer grep right now for something
similar.

~~~
askedrelic
Yea, I just found LustyBufferGrep and BufferJuggler this weekend and am
definitely digging it.

<http://www.vim.org/scripts/script.php?script_id=1890>

------
burgerbrain
I've used the following in Vim for years now:

    
    
      :nmap <C-f> :!ack <cword><CR>
    

No sense in being any more complex than that, as far as I can tell.

~~~
jtaby
Well, the reason I built this is that it's much nicer to browse the results
IMO. You can collapse files, you get bolded fonts, you get different colors,
and much better use of whitespace. It's also easier to define options like
regex and case-sensitivity vs. having to remember the flags in the command.

The benefit is one of UI/UX, it doesn't actually perform an action you
couldn't perform text-only.

------
shennyg
Nice work.

A few notes:

"Button" label should say search or go.

There is no "results not found"

It is hard to tell if it is doing anything, maybe add a animated icon showing
it is working.

~~~
jtaby
Thanks for the feedback, I'm going to prioritize those features for the next
release :)

------
jarin
That is pretty nice, although I found myself using 'git grep' even with
Textmate (before I switched to vim) because it was much faster than TM's Find
in Project.

------
gte910h
Thank you for this. This has definitely been a "missed feature" for awhile
now.

------
beatlevic
I would love to see this feature implemented in a similar way for Emacs.

~~~
jtaby
Adding support for other editors was something I am definitely mulling over,
maybe version 2

~~~
alnayyir
We (emacs) already have like 5-6 ack modes, I beg of you, don't add to the
list. Just find which one you like best and offer improvements.

~~~
beatlevic
That is true, but we don't have something like this peep open style, with a
nice mac feel to it. Or am I missing one? I like this polished style instead
of a fully integrated version in emacs.

~~~
alnayyir
Are you an Emacs user?

~~~
beatlevic
Yes, but features like ackMate, projectDrawer and visual style make me use
Textmate quite a lot (for Ruby dev), which is a pitty because I'm used to my
emacs shortcuts. I know most (all?) features are implemented in Emacs, but
often in a more spartan way.

~~~
alnayyir
You haven't really absorbed why Emacs does things the way it does. Spend more
time tinkering with Emacs Lisp and you'll see what I mean.

~~~
beatlevic
Trust me, I have been tinkering a lot with Emacs lisp, and I really miss some
nice visual features. Spend some time tinkering with Textmate and see what I
mean ;) I am all for leaving the mouse alone and efficiency, but working on a
mac makes me a sucker for eye candy as well. Take for instance again peep
open, which is in my opinion a nicely styled plugin, for which I would love to
see a 'find in project' equivalent.

~~~
alnayyir
I am an experienced TextMate user, and when I went back to using Emacs after a
hiatus with TextMate, one of the first things I did was import everything I
liked about TextMate into Emacs.

The functionality you mention exists for Emacs.

~~~
beatlevic
Instead of telling me it exists, please show me a visually appealing 'find in
project' plugin/package. Which got this whole discussion started in the first
place...

~~~
alnayyir
Visually appealing is relative, if you like the way TextMate et al looks and
value that sort of thing, Emacs isn't for you anyway.

