help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Is it possible to run rgrep in emacs on Win32?


From: winterTTr
Subject: Re: Is it possible to run rgrep in emacs on Win32?
Date: Mon, 16 Apr 2012 22:47:32 -0700 (PDT)
User-agent: G2/1.0

On Thursday, April 12, 2012 5:21:41 PM UTC+8, Steinar Bang wrote:
> Platform: emacs 23.2.1,
>           GnuWin32 FindUtils 4.2.20-2
>           GnuWin32 Grep-2.5.4
> 
> Does anyone know of a way to make the emacs rgrep command work on
> windows?
> 
> I'm trying to run `M-x rgrep RET' on a windows emacs.  I have installed
> find and grep from GnuWin32 ( http://gnuwin32.sourceforge.net/ ) and put
> them early in the PATH.
> 
> When I try to run rgrep it exits with no match, and in the *grep* I see
> the following error message:
>  C:\ProgramFiles\GnuWin32\bin\find: invalid expression; I was expecting to 
> find a ')' somewhere but did not see one.
> 
> The command line is:
> C:\ProgramFiles\GnuWin32\bin\find . "(" -path "*/SCCS" -o -path "*/RCS" -o 
> -path "*/CVS" -o -path "*/MCVS" -o -path "*/.svn" -o -path "*/.git" -o -path 
> "*/.hg" -o -path "*/.bzr" -o -path "*/_MTN" -o -path "*/_darcs" -o -path 
> "*/{arch}" ")" -prune -o "(" -name ".#*" -o -name "*.o" -o -name "*~" -o 
> -name "*.bin" -o -name "*.bak" -o -name "*.obj" -o -name "*.map" -o -name 
> "*.ico" -o -name "*.pif" -o -name "*.lnk" -o -name "*.a" -o -name "*.ln" -o 
> -name "*.blg" -o -name "*.bbl" -o -name "*.dll" -o -name "*.drv" -o -name 
> "*.vxd" -o -name "*.386" -o -name "*.elc" -o -name "*.lof" -o -name "*.glo" 
> -o -name "*.idx" -o -name "*.lot" -o -name "*.fmt" -o -name "*.tfm" -o -name 
> "*.class" -o -name "*.fas" -o -name "*.lib" -o -name "*.mem" -o -name 
> "*.x86f" -o -name "*.sparcf" -o -name "*.fasl" -o -name "*.ufsl" -o -name 
> "*.fsl" -o -name "*.dxl" -o -name "*.pfsl" -o -name "*.dfsl" -o -name 
> "*.p64fsl" -o -name "*.d64fsl" -o -name "*.dx64fsl" -o -name "*.lo" -o -name 
> "*.la" -o -name "*.gmo" -o -name "*.mo" -o -name "*.toc" -o -name "*.aux" -o 
> -name "*.cp" -o -name "*.fn" -o -name "*.ky" -o -name "*.pg" -o -name "*.tp" 
> -o -name "*.vr" -o -name "*.cps" -o -name "*.fns" -o -name "*.kys" -o -name 
> "*.pgs" -o -name "*.tps" -o -name "*.vrs" -o -name "*.pyc" -o -name "*.pyo" 
> ")" -prune -o  -type f "(" -iname "*.csproj" ")" -print0 | xargs -0 -e grep 
> -i -nH -e "searchterm"
> 
> Parantheses seems to be balanced...?  I haven't installed xargs, I
> think... unless that's part of FindUtils...?

I suggest to not use the xargs style. Currently, I almost cannot find a good 
"find.exe" and "xrags.exe" to work well together.

What I currently used is, using the binary folder comes from msysgit, which 
should be the find.exe and grep.exe from msys sub system.

At the same time, do not use xargs style for rgrep.

(require 'grep)
(grep-apply-setting
 'grep-find-use-xargs 'exec)

use 'exec style, which you can get more information from grep-find-use-xargs 
documentation.

The currently problem is, this kind of combination is very slow if you use it 
to find deep directory tree. However, it at least can use without any problem.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]