This is the mail archive of the cygwin@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Proposal for new cygwin flag: notextmode masks away O_TEXT


Chris,

You're right of course, and I will not push for this very hard, but such a flag would ensure compatible results across platforms:

file.txt:
i have crlf\r\n
and another one\r\n

solaris> sed 's/crlf$/nocr/' file.txt
i have crlf\r\n
and another one\r\n

cygwin> sed 's/crlf$/nocr/' file.txt
i have nocrlf\n
and another one\n

proposed:
cygwin-notextmode> sed 's/crlf$/nocrlf/' file.txt
i have crlf\r\n
and another one\r\n

Read also my comments below.

Quoting Christopher Faylor <cgf@redhat.com>:

> On Wed, Sep 04, 2002 at 11:57:15PM +0200, Dan Vasaru wrote:

> >way. All our mounts are binmode, yet the fact that some programs set the
> >O_TEXT flag, and cygwin doesn't ignore it, will at some point add a stray
> >carriage return (see various threads on CRLF) in various pipes and
> >redirects.
> 
> No, it won't add a stray CR unless the file is opened as O_TEXT for
> output, which no programs in the cygwin release should be doing.  O_TEXT
> for input specifically means that CRLFs are translated to LFs
> internally.

Mea culpa, it turns out the stray CR did happen on a text mount. 

> It will *interpret* a CRLF as a LF, however, which has its own
> ramifcations.

notextmode comes in handy here :).

[...]
> Why would you want to *add* a CR to input?  A program which uses O_TEXT
> for input will still consider lines ending only with LF to be properly
> terminated.

That would be for input to non-cygwin software that demands CR (notably notepad).
 
[...]
> I have a feeling that one of us still isn't getting something here.
> If you are willing to write a program which wraps every DOS program
> which outputs CRLF, then do that, mount everything with -b and you
> should be all set.
 
Point taken, and we shall do this. 

Thanks,
    dan.



--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]