From: Junio C Hamano Date: Thu, 31 Dec 2009 19:47:42 GMT Subject: Re: [PATCH 3/6] run-command: optimize out useless shell calls Message-ID: <7v4on7x6w1.fsf@alter.siamese.dyndns.org> In-Reply-To: <4B3CD74D.7020605@kdbg.org> Johannes Sixt writes: > to help people set > > PAGER=C:\Program Files\cygwin\bin\less > > That is, we first try to run the program without the shell, then retry > wrapped in sh -c. > > Wouldn't it be possible to do the same here, assuming that we don't > have programs such as "editor -f" in the path? It is a cute idea that covers 70-80% of the cases, as you also have to assume that you don't have to specify your own pager on a path with IFS (e.g. "Program files" in your example) and give your parameter to the pager at the same time, e.g. PAGER="C:\Program Files\cygwin\bin\less -FRSX" Because it has its own LESS environment to set FRSX and you can get away with: PAGER="C:\Program Files\cygwin\bin\less" LESS=FRSX "less" is not a representative example for this issue. In real life I suspect that custom programs that we don't ship with git (or you don't ship with msysgit) would lack such a workaround, (and that is why I didn't say "98% of the cases").