X-Recipient: archive-cygwin AT delorie DOT com X-SWARE-Spam-Status: No, hits=-1.9 required=5.0 tests=AWL,BAYES_00 X-Spam-Check-By: sourceware.org Message-ID: <4EEC34F4.9090409@bopp.net> Date: Sat, 17 Dec 2011 00:21:40 -0600 From: Jeremy Bopp User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:8.0) Gecko/20111124 Thunderbird/8.0 MIME-Version: 1.0 To: cygwin AT cygwin DOT com Subject: Re: Sorry "people" (NOT MY taxonomy!!), but igncr IS flawed References: <32989786 DOT post AT talk DOT nabble DOT com> In-Reply-To: <32989786.post@talk.nabble.com> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-IsSubscribed: yes Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com On 12/16/2011 11:13 PM, manu0507 wrote: > > Hi all, > > Notwithstanding the completely preposterous "reply" by Eric Blake (more of > an idiotic acrimony, actually) to my previous post (see > http://old.nabble.com/Igncr-ineffective--tt32983438.html ), there does seem > to be a problem in dealing with Win's CR/LF line endings in "unusual" lines, > at least on Win7-64 (or, to be really precise, on my Win7-64). > The lines where CR/LFs appear not to be properly converted to LFs seem to be > empty lines (except for the CR/LF, of course), as well as some other > "unusual" constructs (lines ending with ";;CR/LF" in particular). I don't have Cygwin available at the moment, so I can't try running scripts as you describe right now. However, the claim that a line consisting of only a CR/LF causing problems with the igncr option makes me pretty suspicious. "Empty" lines are pretty darn common in bash scripts, and I would expect to have seen many reports of problems with igncr reported here by now if that option didn't correctly handle those lines. Can you send a representative example script that elicits this problem for you? A simple test case would go a long way to addressing the issue. From the sound of things, no one else has reproduced your issue yet. Perhaps the lines that are giving you trouble are actually ended with CR/CR/LF. Have you examined the problematic scripts with a hex editor or simply "od -c" to verify the line endings? > To work around the problem, I'm writing an application that would convert > all CR/LF-ending text files into LF-ending ones... but it's not really > trivial, because telling binary files that should be left untouched from > text files that should be converted is difficult: even the very first file > in GDB's sources ("configure") contains a '\a', i.e. a "not-text" byte. While it's not a complete solution by itself, I hope you're using the dos2unix or d2u programs to handle the conversion. You may also be able to make use of the file program from the file package to help identify files that are appropriate for conversion. Given that the igncr option is only useful for bash and maybe sh, scripts for those are probably the only ones you want to convert, and the file program should be able to identify them for you. -Jeremy -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple